Install
openclaw skills install @chenqg618/payroll-hr-pack-free把薪酬社保与人力材料按 14 项检查(工资表发放前核对、应付职工薪酬勾稽、工资代发与银行回单、代扣个税社保与申报、个税累计预扣、社保缴纳明细、社保缴费基数、住房公积金缴存、加班费、计件工资、年终奖与奖金池、提成与底薪、销售阶梯提成、农民工工资专户)逐客户核一遍,每个客户一行结论,结论都带原文文件与行号。完全本地运行,核对过程不需要联网、不需要 API Key、没有次数上限。
openclaw skills install @chenqg618/payroll-hr-pack-free完全本地运行:引擎已经打包在本技能里(
scripts/engine/)。 核对过程不需要联网、不需要 API Key、没有调用次数上限、不写任何文件。
谁会在什么时候用:企业薪酬岗、人事、代账公司的工资社保岗,在每月发薪与社保申报之前。 薪酬底稿从来不是一张表:工资表发放前核对、应付职工薪酬勾稽、工资代发与银行回单核对、 代扣个税社保与申报核对、个税累计预扣核对、社保缴纳明细核对、社保缴费基数核对、 住房公积金缴存核对、加班费核对、计件工资核对、年终奖(奖金池)核对、提成与底薪核对、 销售阶梯提成核对、农民工工资专户核对 —— 每一张都有自己的勾稽关系,逐张手核既慢又容易漏, 而发错钱、漏报社保的后果比多花半小时严重得多。
这个包做的事只有一件:--input <客户目录>(每个子目录 = 一个客户 / 一套材料),
一次跑完所有客户,每个客户一行结论。
下面 14 项,每个客户都跑一遍(检查项名字与引擎 CHECKS_GIVEN 逐条一致):
引擎里的 CHECKS_WITHHELD(本免费版不执行的项)会逐条打印出来,例如
「跨客户汇总台账」「薪酬与社保风险排序清单」「跨客户共性问题归类」「薪酬社保台账导出」——
它们是"未执行的检查项"的说明文本,不是实现。
另外,每个成员检查包自己没做的子检查(SUB_CHECKS_WITHHELD,本包合计 66 项)也在结果里
scope.sub_checks_not_run 如实列出 —— 两个档位都没实现它们,不会因为「买了完整档」就让买家以为这些项被跑了。
node scripts/run.mjs --sample # 单客户样例(内置)
node scripts/run.mjs --sample-batch # 3 个客户的批量样例(干净 / 有硬伤 / 没交材料)
node scripts/run.mjs --input 客户目录 # 批量:每个子目录 = 一个客户
node scripts/run.mjs --input 客户目录 --json # 机器可读
客户目录怎么放(每个子目录里放该客户的一套薪酬社保材料,每项用 === 检查项 === 分段,Tab 分隔最稳):
客户目录/
豫州制造有限公司/薪酬社保材料.txt
中岳建设有限公司/薪酬社保材料.txt
也可以把 14 张表拆成 14 个文件放进同一个子目录 —— 引擎会自己认表头找对应的那一项。
templates/sample.json 是引擎自己的样例,可以直接 --input 它先跑通一遍。
退出码:0 已执行检查 / 1 缺少入参 / 3 材料不足 / 4 入参读不到或无法解析 / 9 未预期错误。 材料不足(一个客户的材料都没有、材料为空或只有几行、认不出任何一张表)时, 本工具不做任何认定、也不给任何结论,打印缺什么并以退出码 3 结束 —— 不会把"没查"说成"通过"。
[结论] 客户名|问题 N 项(P0/P1/P2)|每一项:通过 / 有问题(n) / 未执行;客户 + 检查项 + 来源文件:行号 + 类别 + 具体数字,
第三方可以拿同一份材料复算;--sample 用的是修好后的干净样例(改完自证 0 条发现),
想看它报问题请用 --sample-batch(第二个客户就是那种稿子)。=== 检查项 === 分段找每一项的表;
不分段时只有第一段能被认出,其余 13 项会如实标成「未执行」并报一条「材料只覆盖了一部分」,
不是"查过了没问题"。--input 指向的目录里,每个子目录 = 一个客户。
把所有客户的工资表放进同一个子目录,会被当成一个客户,跨客户的差异与汇总也就无从谈起。--sample 的输出当自己的结论:样例只是让你确认「跑得通、格式对」,
真正的结论必须来自你自己的材料。本免费版是完整可用的核心产出,本版本不包含下面这些项:
同名工具的完整档是另一个独立商品(条款与条件以它自己的商品页为准);两档的差别就是上面这些,没有别的。