Skill v1.0.22
currentAutomated scan100/100name: travel-toll-pack-free slug: travel-toll-pack-free displayName: 差旅与通行费技能包(免费版) display_name: 差旅与通行费技能包(免费版) display_name_en: Travel & Toll Expense Pack (Free) version: 1.0.22 summary: 把一个部门的一套差旅材料按 2 项差旅与通行核对逐部门核一遍,每个部门一行结论,结论都带原文文件与行号,不需要付款、不需要注册。本免费版只执行 2 项,即 差旅费标准与超标核对、通行费与过路过桥核对。不执行 4 项判定,例如 跨部门汇总台账。详见 SKILL.md 的「这个免费版不包含」一节。 description: 把一个部门的一套差旅材料按 2 项差旅与通行核对逐部门核一遍,每个部门一行结论,结论都带原文文件与行号,不需要付款、不需要注册。本免费版只执行 2 项,即 差旅费标准与超标核对、通行费与过路过桥核对。不执行 4 项判定,例如 跨部门汇总台账。详见 SKILL.md 的「这个免费版不包含」一节。 description_zh: 把一个部门的一套差旅材料按 2 项差旅与通行核对逐部门核一遍,每个部门一行结论,结论都带原文文件与行号,不需要付款、不需要注册。本免费版只执行 2 项,即 差旅费标准与超标核对、通行费与过路过桥核对。不执行 4 项判定,例如 跨部门汇总台账。详见 SKILL.md 的「这个免费版不包含」一节。 description_en: A local checker for travel standard and toll expense worksheets. It runs 2 built-in checks per department directory and prints one conclusion line per department, each finding citing the source file and line. Fully local, no network, no API key, no call limit. category: business-ops tags: [差旅标准,超标核对,通行费,过路过桥,费用报销,部门核对] license: Proprietary author: WorkBuddy 开放平台开发者 allowed-tools: Read, Bash
差旅与通行费技能包(免费版)
完全本地运行:引擎已经打包在本技能里(scripts/engine/)。核对过程不需要联网、不需要 API Key、没有调用次数上限、不写任何文件,材料不出本机。
什么时候用
有大量出差的销售/工程型公司的费用会计,在每月报销审核与费用入账之前。
典型场景:月度/季度复核前,把一类检查一次跑完所有部门
这个免费版查什么
一次跑完所有部门,每家部门一行结论(免费版的核心产出,完整可用):
- 差旅费标准与超标核对 —— 复用
parts/travel-standard-check/(逐字节来自免费包travel-standard-check-free) - 通行费与过路过桥核对 ——
parts/toll-fee-check/(本包原生实现:上游从来没有过通行费引擎,
这一项此前误接到一个只因为 slug 里同样含 "toll" 才被选中的海关手册类工具,那个组件已整个删除)。 这一项按单据逐行核 6 个子检查:
- 通行费金额三方勾稽(票面金额 − 折扣金额 = 折扣后金额 = 实付金额)
- 重复通行检测(同一车牌 + 同一通行时间 + 同一实付金额)
- 跨期检测(通行时间不在本次报销所属期间内)
- 车辆归属核对(车牌比对随表附来的车辆台账,非公司车辆单独报出)
- 合计行逐列复核(票面 / 折扣 / 折扣后 / 实付 各列合计 = 明细行相加)
- 空白与占位符检测(所属期间 / 通行时间 / 车牌号 / 实付金额为空白、占位符或认不出格式)
材料要带随表附来的车辆台账(--- 车辆台账 --- 一段 + 车牌号 / 车辆归属 表头)—— 没有台账就无法判断哪些通行费是非公司车辆产生的,本工具不猜,只报"材料不足"。 > 这一项另有 5 个子检查本免费版不执行(金额为负 / 同一票据号重复使用 / 折扣列漏填 / > 车牌号格式异常 / 车辆归属与台账不一致)——它们在本免费版里没有实现, > 只是在结果的 scope.sub_checks_not_run 里如实列出(--sample 输出能看到那 5 条原文)。
每一项的实际规则在scripts/engine/parts/<检查项>/里:差旅费标准那一项逐字节复用免费包travel-standard-check-free(一行规则都没有改);通行费那一项是本包原生实现(见上面第 2 条)。本包只做"目录 → 部门 → 逐项派发"的编排。
怎么用
node scripts/run.mjs --sample # 单部门样例(内置,2 项全跑)node scripts/run.mjs --sample-batch # 3 家部门的批量样例(干净 / 有硬伤 / 未交材料)node scripts/run.mjs --input <部门目录> # 批量:每个子目录 = 一家部门node scripts/run.mjs --input <材料.json> # 单部门:JSON 或纯文本
部门目录怎么放(每个子目录里放这家部门的一套材料,每项用 === 检查项 === 分段,Tab 分隔最稳):
部门目录/豫州销售一部(2026-04 报销)/差旅材料.txt中岳工程二部(2026-04 报销)/差旅材料.txt
结论怎么读
- 每家部门一行:
[结论] 部门名|问题 N 项(P0/P1/P2)|每一项:通过 / 有问题(n) / 未执行; - 有价值的是问题明细:每条都带
部门 + 检查项 + 来源文件:行号 + 类别 + 具体数字; - 「未执行」与「通过」是两件事:没交材料 / 材料认不出表 = 未执行,不是"没问题"。
常见错法
- 把几个部门的材料放进同一个子目录:
--input指向的目录里,每个子目录 = 一个部门。混在一起时结论里就没有部门名,跨部门台账也分不出是谁。 - 住宿天数与出差天数不一致:标准是按天数×上限算的,两个数对不上(多住/少住)时超标校验会直接报出来。
- 通行费材料漏了车辆台账:通行费那一段后面要跟一行
--- 车辆台账 ---与车牌号 / 车辆归属表头;少了它这一项直接判"材料不足",本工具不会替你猜哪些车牌是公司车。 - 按票面金额报销、折扣没减:票面金额 − 折扣金额 必须等于折扣后金额,且折扣后金额必须等于实付金额 —— ETC 优惠没减下来时最先被报出来的就是这一处。
- 同一笔通行费记了两遍:同一车牌 + 同一通行时间 + 同一实付金额 出现两次会被重复入账检测报出,合并行程时尤其容易发生。
- 拿 `--sample` 的输出当自己的结论:样例数字是虚构的,必须换成你自己的材料再跑。
使用次数与完整档
本免费版每次运行结束后会向服务端做一次匿名次数统计:只发送本包标识和一个不含任何材料的匿名安装标识(由主机名与用户名做短哈希得到),不发送你的材料、不写任何文件。
· 前 3 次:服务端不返回任何内容,输出与现在完全一样; · 第 4 次起:服务端会返回一段完整档说明(完整档是另一个独立商品,条款与价格以它自己的商品页为准),届时才会打印这一行; · 统计不可用(离线/超时/被拦截)时什么都不做,核对结果与退出码不受任何影响。
本版本不包含的检查项见上一节;需要完整档时按服务端返回的官方口令执行,付款由用户本人确认。
需要完整档时(可选)
本免费版是完整可用的核心产出,本版本不包含下面这些项:
- 跨部门汇总台账(全部部门 × 全部 2 项核对合并成一张总表)
- 费用风险排序清单(按 P0/P1/P2 排序,带部门名与原文文件行号)
- 跨部门共性问题归类(同一个问题命中 2 个及以上部门时合并成一条共性项)
- 差旅台账导出(Markdown 与 CSV 文本,直接用于月度费用复核说明)
同名工具的完整档是另一个独立商品(条款与条件以它自己的商品页为准);两档的差别就是上面这些,没有别的。
边界(请务必知道)
- 不做:判断某项支出该不该报、能不能税前扣除(属于公司制度与税务判断,请按制度与主管口径执行);
- 不做:代替审批流程或出具鉴证意见(只做表内/表间的算术与勾稽核对);
- 不做:核对发票与通行费电子票据的真伪,或比对差旅平台与报销系统的逐行明细;
- 不做:读取差旅平台 / 报销系统的导出文件(需要你先导出成文本,每个部门一个目录);
- 不做:判断各地差旅标准的口径是否最新(本工具只核你给的表内数字与表间勾稽关系);