financial-expense-automation

financial-expense-automation is a skill for Codex from DjangoPeng/agentic-ai. It costs 100 tokens per session (1,632 once invoked), scanned A, original, MIT.

An expense-receipt workflow that reads PDF and image attachments, extracts their details, checks whether they are valid expense receipts, and records them in Feishu Bitable, a cloud table service.

In plain words
What is it for?
Processing receipts such as hotel bills, train tickets, and plane tickets. It is for teams that need expense records written to Feishu Bitable and confirmed afterward.
Why use it?
It removes the need to enter receipt information by hand and prevents non-receipt files from being added to the table.

Skill for Codex

Written for Codex: agents/openai.yaml present. Also seen: built for openclaw.

Good fit Processing receipts such as hotel bills, train tickets, and plane tickets. It is for teams that need expense records written to Feishu Bitable and confirmed afterward.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/djangopeng/agentic-ai/financial-expense-automation
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add DjangoPeng/agentic-ai --skill financial-expense-automation
Clone the repo
git clone --depth 1 https://github.com/DjangoPeng/agentic-ai

Made for: Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for financial-expense-automation

README.md
[![agentmods](https://agentmods.dev/badge/skills/djangopeng/agentic-ai/financial-expense-automation/github.svg)](https://agentmods.dev/skills/djangopeng/agentic-ai/financial-expense-automation)
Your own site
<a href="https://agentmods.dev/skills/djangopeng/agentic-ai/financial-expense-automation"><img src="https://agentmods.dev/badge/skills/djangopeng/agentic-ai/financial-expense-automation/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for financial-expense-automation

Your own site · 80×15
<a href="https://agentmods.dev/skills/djangopeng/agentic-ai/financial-expense-automation"><img src="https://agentmods.dev/badge/skills/djangopeng/agentic-ai/financial-expense-automation.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 100 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,632 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00100 $0.01632
Opus 5 $0.00050 $0.00816
Sonnet 5 $0.00020 $0.00326
Haiku 4.5 $0.00010 $0.00163

Measured 11d ago against content hash d7105d4dc99f, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-11, from the pricing page.

Security

Grade A, and why

financial-expense-automation scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

claude-code/multi-file-refactor/financial-automation/skills/financial-expense-automation/SKILL.md · 200 lines

How it starts

The opening of the file, as written. The whole thing — 200 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Financial Expense Automation

目标

运行本地 Financial Automation 流水线,对用户上传的报销票据进行:

  • 识别
  • 结构化提取
  • 校验
  • 真实写入飞书多维表格

请始终记住:

  • bitable_write_plan 只是中间产物
  • 识别成功不等于任务完成
  • 只有真实调用 Feishu Bitable create/update 成功,并完成回读确认,才算完成

项目依赖

这个 skill 依赖完整项目仓库,不能只拷贝 SKILL.md 单独使用。

按以下顺序定位项目根目录:

  1. 环境变量 FINANCIAL_AUTOMATION_ROOT
  2. ~/projects/agentic-ai/financial-automation
  3. ~/.openclaw/workspace/financial-automation

若这些路径都不存在,应明确告诉用户:当前环境尚未部署完整项目仓库,请先完成部署。

主要入口与配置:

  • <repo_root>/src/skill_entry.py
  • <repo_root>/config/app_config.yaml

支持输入

附件输入格式:

[
    {"file_name": "hotel_invoice.pdf", "content_bytes": b"..."},
    {"file_name": "ticket.jpg", "source_path": "/path/to/ticket.jpg"},
]

支持文件类型:

  • .pdf
  • .jpg
  • .jpeg
  • .png

若过滤后没有可处理附件,应直接告知用户:没有收到可处理的报销附件。

非报销内容处理

识别完成后,若内容不是报销票据(如普通图片、截图、合同等),应:

  1. 告知用户:该附件不是可识别的报销票据
  2. 简述识别到的内容类型
  3. 终止流程,不继续写表

唯一入口

必须通过:

from src.skill_entry import run_skill_job
result = run_skill_job(attachments)

如有需要可显式传配置:

result = run_skill_job(
    attachments,
    config_path=f"{repo_root}/config/app_config.yaml",
)

不要手工拼接 ingest / OCR / validate / formatter 流程。

正式执行流程

  1. 定位 repo root
  2. 将用户上传文件整理成 run_skill_job(...) 所需的附件 payload
  3. 调用 run_skill_job(...)
  4. 使用返回的 skill_result 作为识别结果主对象
  5. 生成真实写表输入
  6. 若当前会话具备 Feishu Bitable 工具能力,继续执行真实写表
  7. 写入后回读确认,再向用户回复结果

写表强制规则

  1. bitable_write_plan 只是中间产物,不是最终结果
  2. 只要当前会话可用飞书多维表格工具,就必须继续真实写表
  3. 禁止停留在“建议写入 / 准备写入 / 可写入”状态
  4. 只有真正调用 create/update 成功,才算完成
  5. 如果没有真实写入成功,必须明确说明失败点
  6. 禁止把“已识别 / 已生成 plan / 已生成 handoff”描述成已经完成落表

目标表路由规则

  • transportation_fee交通报销表
  • 其他费用类票据 → 费用报销表

写入策略

默认采用:

  • update_first_blank_row_then_create

具体规则:

  1. 先查询目标表
  2. 若存在可复用空白行(优先判断 doc_id 为空),优先 update
  3. 若不存在可复用空白行,再 create
  4. 不要盲目追加新记录

附件写入规则

附件字段必须遵守以下规则:

  1. 禁止直接使用通用 Drive upload token 作为 Bitable 附件
  2. 必须先上传到当前 bitable attachment context
  3. 再将返回的合法 file_token 写入附件字段
  4. 图片走 bitable_image
  5. PDF/其他文件走 bitable_file

Read the full file on GitHub · 200 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 11d ago First seen · 200 lines · 100 tokens per session scan A d7105d4dc99f

Subscribe to this mod's changes

financial-expense-automation is a skill published in the GitHub repository DjangoPeng/agentic-ai (148 stars, last pushed 2mo ago), licensed MIT. It adds 100 tokens to every session and 1,632 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.