ClawKit Logo
ClawKitReliability Toolkit
Back to Registry
Official Verified

travel_subsidy

When the user uploads 发票.zip and 火车票.zip, use the included data tables to calculate eligible business-trip subsidy records, split related vs remaining files, create output workbooks, package two result zips, and report progress at every key step.

skill-install — Terminal

Install via CLI (Recommended)

clawhub install openclaw/skills/skills/attorneytao/travel-subsidy
Or

Travel Subsidy

Use this skill only when the user provides two zip archives named exactly:

  • 发票.zip
  • 火车票.zip

The archives contain:

  • invoice / ticket files (.pdf, .jpg, .jpeg, .png, .webp)
  • and at least one structured data table describing the corresponding files

This skill calculates which records can be used to support 出差补助 and produces two result zip packages.

Goal

Process the two archives as follows:

  1. Unzip both archives into a dedicated run directory.
  2. Read the included structured tables.
  3. Match each table row to its corresponding file by filename or stable file identifier.
  4. Do not OCR the files unless the table is obviously unusable or missing required fields.
  5. Build a chronological travel evidence set.
  6. Infer travel city / route information:
    • for train tickets: use the provided 始发站/到达站所在城市 fields directly
    • for invoices: infer city from 备注
      • if it is a lodging invoice, determine the hotel city from the hotel name
      • if it is an air-ticket-related invoice, extract route/city information from 备注
  7. Determine which records can support a valid 出差补助 claim.
  8. Put the records/files related to 出差补助 into one folder.
  9. Put all remaining records/files into another folder.
  10. Produce two zip outputs:
    • Zip 1: 出差补助计算表 + 出差补助相关文件
    • Zip 2: 剩余文件 + 剩余信息整理表
  11. Report progress to the user at every key node.

Mandatory progress updates

You must give the user a visible progress update at every key node.

At minimum, send these updates:

  1. 已收到发票.zip和火车票.zip,开始检查压缩包
  2. 压缩包检查完成,开始解压文件
  3. 解压完成,开始识别数据表和票据文件
  4. 已识别发票数据表与火车票数据表,开始读取结构化信息
  5. 结构化信息读取完成,开始建立文件与表格行的对应关系
  6. 对应关系建立完成,开始提取城市与行程信息
  7. 城市与行程信息提取完成,开始组装出差行程
  8. 出差行程组装完成,开始计算可报销出差补助
  9. 计算完成,开始拆分补助相关文件和剩余文件
  10. 拆分完成,开始生成出差补助计算表和剩余信息表
  11. 表格生成完成,开始打包输出文件
  12. 打包完成,准备回传结果
  13. 任务完成

If processing many rows/files, also emit periodic progress, for example:

  • 发票信息处理进度:X / N
  • 火车票信息处理进度:Y / M
  • 行程组装进度:K / T

If any fatal or partial failure occurs, immediately report:

  • which step failed
  • which file or row failed
  • whether partial outputs were still produced

Input validation rules

Only use this skill if both required archives are present.

Expected exact filenames:

  • 发票.zip
  • 火车票.zip

If one archive is missing, stop and tell the user clearly.

Do not guess if filenames are ambiguous unless the user explicitly says which file is which.

Working directory rules

Create a dedicated run directory under {baseDir}/runs/.

Example:

mkdir -p "{baseDir}/runs"
ts="$(date +%Y%m%d-%H%M%S)"
run_dir="{baseDir}/runs/travel-subsidy-${ts}"
mkdir -p "$run_dir/input" "$run_dir/invoice_zip" "$run_dir/train_zip" "$run_dir/work" "$run_dir/output"

Never modify the original uploaded archives in place.

Archive extraction rules

Metadata

Stars4473
Views0
Updated2026-05-01
View Author Profile
AI Skill Finder

Not sure this is the right skill?

Describe what you want to build — we'll match you to the best skill from 16,000+ options.

Find the right skill
Add to Configuration

Paste this into your clawhub.json to enable this plugin.

{
  "plugins": {
    "official-attorneytao-travel-subsidy": {
      "enabled": true,
      "auto_update": true
    }
  }
}
Safety NoteClawKit audits metadata but not runtime behavior. Use with caution.