工资审核 AI 技能。基于审核月份、区域范围、特殊情况,一次性自动生成完整的工资审核报告。 覆盖 10 项核心审核要素(人员范围/入离职/异常检查/考勤/绩效/奖金/社保/个税/人才房/计算逻辑),支持国内和海外员工审核。 三路输出:Markdown 审核报告 + 飞书文档 + HTML 可视化报告(含图表、审核...
---
name: payroll-audit
version: 4.0.0
label: 工资审核助手
description: >
工资审核 AI 技能。基于审核月份、区域范围、特殊情况,一次性自动生成完整的工资审核报告。
覆盖 10 项核心审核要素(人员范围/入离职/异常检查/考勤/绩效/奖金/社保/个税/人才房/计算逻辑),支持国内和海外员工审核。
三路输出:Markdown 审核报告 + 飞书文档 + HTML 可视化报告(含图表、审核状态追踪、差异对比)。
全流程自动执行,无需人工介入。数据校验采用交叉验证机制。
Use when user asks to 工资审核、薪资审核、月度工资审核、生成工资审核清单、
工资审核报告、本月工资核对、发薪前审核、工资表审核.
不适用于薪酬计算、薪酬对标、调薪方案设计、社保缴纳咨询.
---
# 工资审核助手
## 概述
基于《工资审核要点》构建的薪酬审核 AI 技能。**全自动一次性审核流程**,无需人工介入。按"基础数据校验→数据一致性→合规性检查"三优先级,交叉验证 10 项核心审核要素,三路输出审核报告(Markdown + 飞书文档 + HTML 可视化报告)。
### 核心能力
- **10 项核心审核要素**:人员范围 / 入离职 / 异常检查 / 考勤 / 绩效 / 奖金 / 社保 / 个税 / 人才房 / 计算逻辑
- **区域差异化审核**:国内(全维度) / 海外(基数 + 人员准确性)
- **材料清单自动匹配**:按审核范围和场景自动列出需索取的材料
- **交叉验证引擎**:每项审核至少 2 个数据源交叉校验,自动标记不一致项(内置 `scripts/cross_validate.py` 脚本,确定性执行)
- **三路输出**:Markdown 审核报告 + 飞书文档 + HTML 可视化报告(内联 SVG 图表,内置 `scripts/generate_html_report.py` 脚本,确定性渲染)
- **全自动执行**:用户输入→自动审核→三路输出,零人工介入
### 复杂度路由
| 用户场景 | 级别 | 处理路径 |
|----------|------|---------|
| "本月有 3 个人离职,帮我生成本月审核清单" | S 级 | 全自动 10 项审核→交叉验证→生成 Markdown + 飞书文档 + HTML 可视化报告 |
| "海外员工本月工资怎么审" | A 级 | 海外专项审核(5 项核心要素)→交叉验证→三路输出 |
| "帮我检查社保公积金对不对" | B 级 | 单项交叉验证审核→生成审核步骤报告 |
---
## 使用
### 场景 1:全量月度工资审核(推荐)
用户提供审核月份、范围(domestic/overseas/all)、特殊情况,一键生成完整审核报告。
**输入**:
```
审核月份: 2026-05
审核范围: all(国内 + 海外)
特殊情况: 本月有 15 人入离职,2 人基数调整
```
**处理**:全自动执行 10 项审核→交叉验证→风险定级→三路输出。
**输出**:
1. **Markdown 审核报告** → 写入 `templates/audit-report.md`
2. **飞书文档** → 通过飞书 API 发送到用户飞书聊天
3. **HTML 可视化报告** → 生成到 `/tmp/payroll-audit-{month}.html`,同步发送到飞书
### 场景 2:区域专项审核
**输入**:`"帮我生成海外员工本月工资审核清单"`
**处理**:海外专项 5 项审核→交叉验证→三路输出。
### 场景 3:单项审核检查
**输入**:`"本月社保公积金怎么审?"`
**处理**:单项交叉验证→生成审核步骤报告。
---
## 审核规则速查
### 三优先级审核清单
| 优先级 | 审核项 | 核心操作 | 规则文件 |
|--------|--------|---------|---------|
| P0(基础数据) | 1. 人员范围 | 入离职表 vs 上月工资表交叉核对 | `rules/core-checks.md` #1 |
| P0(基础数据) | 2. 入离职管理 | 核对起止日期 + 审批流程 | `rules/core-checks.md` #2 |
| P0(基础数据) | 10. 计算逻辑 | 公式/小计/应发实发检查 | `rules/core-checks.md` #10 |
| P1(一致性) | 4. 考勤数据 | 工资表 vs 考勤系统对账 | `rules/core-checks.md` #4 |
| P1(一致性) | 5. 绩效核算 | 绩效汇总表核对 | `rules/core-checks.md` #5 |
| P1(一致性) | 6. 奖金发放 | 奖金明细表逐项核对 | `rules/core-checks.md` #6 |
| P1(一致性) | 3. 异常检查 | 异动表 vs 上月基数对比 | `rules/core-checks.md` #3 |
| P2(合规性) | 7. 社保公积金 | 官方账单核对 | `rules/core-checks.md` #7 |
| P2(合规性) | 8. 个税 | 个税系统导出数据核对 | `rules/core-checks.md` #8 |
| P2(合规性) | 9. 人才房 | 住宿扣款 vs 上月比对 | `rules/core-checks.md` #9 |
完整规则 → `rules/core-checks.md` | 区域差异 → `rules/regional-rules.md` | 材料清单 → `rules/materials-list.md`
### 区域差异化要点
| 区域 | 数据源 | 核心审核点 | 处理办法 |
|------|--------|-----------|---------|
| **国内** | 考勤/绩效/社保/奖金汇总表完整 | 全维度数据一致性 | 工资表与各数据源逐项核对 |
| **海外** | 仅主体工资表,无考勤表,基数凭经验台账 | 基数合规 + 人员准确性 | 入离职表/异动表/上月工资表比对 |
完整区域规则 → `rules/regional-rules.md`
### 需索取材料清单
**必须索取**(每次):
- 集团层面表格
- 当月人员异动表格和入离人员表格
- 各类奖金表格(包房奖金、渠道佣金、季度奖、DMO 营销奖金)
**按场景补充**:
- 考勤系统导出数据(国内)/ 绩效汇总表(国内)/ 社保公积金官方账单
- 个税系统导出数据 / 人才房住宿扣款明细
- 离职补偿金审批文件(如有离职)/ 基数调整审批文件(如有调整)
完整材料清单 → `rules/materials-list.md`
---
## 补充说明
### 全自动审核流程(零人工介入)
1. **读取用户输入**(月份/范围/特殊情况)
2. **匹配区域规则**(国内→全维度 / 海外→基数 + 人员 / 全部→两者结合)
3. **自动生成优先级审核清单**(P0→P1→P2)
4. **自动匹配需索取材料**(按范围自动筛选)
5. **自动识别风险点**(入离职人数多→重点入离职管理;基数调整→重点异常检查)
6. **自动交叉验证**(每项审核至少 2 个数据源交叉校验)
7. **自动风险定级**(🔴高/🟠中/🟢低)
8. **三路输出**(Markdown + 飞书文档 + HTML 可视化报告)
### 交叉验证机制(核心新增)
**每项审核至少需要 2 个独立数据源交叉校验。不一致项自动标记为 ⚠️存疑。**
| 审核项 | 数据源 A | 数据源 B | 数据源 C(如有) | 验证规则 |
|--------|---------|---------|----------------|---------|
| 1. 人员范围 | 入离职表 | 上月工资表 | 当月花名册 | A ∩ B = 应发薪人员,差异标记存疑 |
| 2. 入离职管理 | 入离职表 | 工资表异动项 | 审批记录 | 日期一致?补偿金有审批? |
| 3. 异常检查 | 当月异动表 | 上月基数 | 审批文件 | 基数调整有据?差异有因? |
| 4. 考勤数据 | 工资表出勤天数 | 考勤系统导出 | 请假审批 | 三者一致?差异溯源? |
| 5. 绩效核算 | 工资表绩效金额 | 绩效汇总表 | 绩效审批记录 | 分值→系数→金额链条完整? |
| 6. 奖金发放 | 工资表奖金 | 奖金明细表 | 奖金审批 | 金额一致?发放期正确? |
| 7. 社保公积金 | 工资表扣款 | 社保官方账单 | 公积金官方账单 | 个人+公司合计一致?基数正确? |
| 8. 个税 | 工资表个税 | 个税系统导出 | 累计预扣计算 | 税额一致?累计预扣正确? |
| 9. 人才房 | 工资表扣款 | 住宿扣款明细 | 上月扣款 | 扣款一致?异动有审批? |
| 10. 计算逻辑 | 工资表公式 | 人工复算 | 上月工资表 | 应发=Σ各项?实发=应发-扣款? |
**验证结果自动标记**:
- ✅ 一致:所有数据源核对一致
- ⚠️ 存疑:数据源间存在差异,需人工核实
- ❌ 异常:发现明显错误或违规
### 风险提示规则
| 触发条件 | 风险项 | 建议动作 |
|---------|--------|---------|
| 当月入离职 > 5 人 | 入离职薪资核算错误风险 | 自动重点核对起止日期和补偿金审批 |
| 有基数调整 | 基数调整合规性风险 | 自动检查审批文件,核对个人承担部分 |
| 海外员工 | 基数凭经验台账,缺乏官方数据 | 自动加强交叉核对,标记存疑项 |
| 奖金发放月 | 奖金金额/发放期错误风险 | 自动逐项核对奖金明细表 |
| 交叉验证差异 > 3 项 | 数据质量风险 | 自动标记"数据质量存疑",建议重新提交数据 |
### 数据处理流程(全自动)
**工资审核涉及大量数据核对。全流程自动执行,无需人工介入:**
#### Phase 1:理解(自动)
| 步骤 | 操作 |
|------|------|
| 1. 数据画像 | 自动读 10 条样本,识别字段含义和格式 |
| 2. 制定映射表 | 自动生成源字段→目标字段映射规则 |
| 3. 自动验证 | AI 自校验字段理解,自动标记不确定字段 |
#### Phase 2:验证(自动)
| 步骤 | 操作 |
|------|------|
| 4. 自动备份 | 自动导出数据快照(含时间戳) |
| 5. 自动试跑 | 自动处理 5 条样本,自动验证结果 |
| 6. 自动小批量 | 自动处理 50 条,自动随机抽查 10 条 |
#### Phase 3:执行(自动)
| 步骤 | 操作 |
|------|------|
| 7. 全量分批 | 自动每批 100 条分批执行 |
| 8. 幂等性检查 | 自动确保重复执行不产生重复数据 |
#### Phase 4:验收(自动)
| 步骤 | 操作 |
|------|------|
| 9. 差异报告 | 自动对比备份数据,生成差异报告 |
| 10. 下游验证 | 自动检查关联数据完整性 |
### 关键设计原则
| 原则 | 含义 | 在工资审核中的应用 |
|------|------|-------------------|
| **幂等性** | 同一个操作执行 N 次结果一样 | 自动用 upsert 而不是 insert;重新核对不会产生重复记录 |
| **可回滚** | 每次操作前自动备份 | 自动审核前导出工资表快照;发现错误时自动用备份恢复 |
| **原子性** | 一批数据要么全成功,要么全失败 | 自动确保不能一半成功一半失败;大批数据自动分拆处理 |
| **可观测性** | 自动记录每一步的输入输出 | 自动每步核对记录操作日志(时间/操作/结果/差异) |
### 三路输出规范(v3.0 核心新增)
**每次全量月度工资审核(S 级)必须同时输出三种格式:**
#### 输出 1:Markdown 审核报告
- 格式:见 `templates/audit-report.md`
- 用途:存档、版本控制、快速阅读
- 输出路径:`/tmp/payroll-audit-{month}.md`
#### 输出 2:飞书文档
- 格式:通过飞书 API 创建富文本文档
- 用途:团队协同、评论、@相关人员
- 发送方式:调用 `feishu-file-operations` skill 或 `feishu-upload-file.py` 脚本
#### 输出 3:HTML 可视化报告
- 格式:使用 `scripts/generate_html_report.py` 脚本确定性渲染
- 用途:设计精良的图表展示、打印、二次审核
- 输出路径:`/tmp/payroll-audit-{month}.html`
- 同步发送:通过飞书文件发送到用户飞书聊天
### 脚本使用说明(v4.0 核心新增)
**以下脚本随 skill 一起发布,用户下载 skill 后可直接使用。**
#### 脚本 1:交叉验证引擎
```bash
python scripts/cross_validate.py \
--audit-item "人员范围" \
--source-a 入离职表.csv \
--source-b 上月工资表.csv \
--key employee_id \
--output-format markdown \
--output-file cross_validation_result.md
```
**参数说明:**
- `--audit-item`:审核项名称(人员范围/入离职管理/异常检查/考勤数据/绩效核算/奖金发放/社保公积金/个税/人才房/计算逻辑)
- `--source-a`:数据源 A 路径(CSV)
- `--source-b`:数据源 B 路径(CSV)
- `--source-c`:数据源 C 路径(CSV,可选)
- `--key`:关联键字段名(默认 employee_id)
- `--output-format`:输出格式(markdown/json)
- `--output-file`:输出文件路径
#### 脚本 2:HTML 报告生成器
```bash
python scripts/generate_html_report.py \
--data audit_results.json \
--output /tmp/payroll-audit-2026-05.html \
--month 2026-05 \
--region all
```
**输入 JSON 格式:**
```json
{
"audit_results": [
{"audit_item": "人员范围", "status": "pass", "summary": "✅ 一致", "details": [], "counts": {"total_unique": 100, "in_both": 100}},
{"audit_item": "考勤数据", "status": "warning", "summary": "⚠️ 存疑", "details": ["❌ E001: 出勤天数不一致"], "counts": {"total_unique": 100, "in_both": 99}}
],
"materials_required": ["集团层面表格", "当月人员异动表格"],
"materials_scenario": ["考勤系统导出数据(国内)", "社保公积金官方账单"],
"risk_alerts": [
{"level": "high", "title": "入离职薪资核算错误风险", "action": "重点核对起止日期和补偿金审批"}
],
"data_log": {
"Phase 1:理解": ["数据画像完成", "映射表生成"],
"Phase 2:验证": ["备份完成", "试跑 5 条通过"],
"Phase 3:执行": ["全量分批完成"],
"Phase 4:验收": ["差异报告生成"]
}
}
```
### HTML 可视化报告生成规范
#### 报告结构
1. **顶部概览仪表盘**:审核月份、审核范围、风险等级(🔴高/🟠中/🟢低)、审核进度(X/10 完成)
2. **审核项状态卡片**:10 个审核项,每个卡片显示:审核项名称、状态(✅一致/⚠️存疑/❌异常)、风险等级、核心发现、交叉验证结果
3. **风险趋势图**:用内联 SVG 柱状图展示本月 vs 上月各维度风险对比
4. **交叉验证结果表**:每项审核的数据源 A/B/C 对比结果,差异高亮
5. **需索取材料清单**:按"必须/按场景"分组,带复选框(可打印)
6. **风险提示区域**:按严重程度排序,每个风险项附带建议动作
7. **数据处理记录**:4 阶段自动执行情况记录
#### 设计规范
- **配色**:风险等级用 🔴红色(高)/ 🟠橙色(中)/ 🟢绿色(低)
- **布局**:响应式,适配桌面和移动端
- **图表**:使用内联 SVG,不依赖外部 JS 库
- **内联样式**:所有 CSS 使用内联 style,确保独立文件可正常渲染
- **交互**:审核项卡片支持折叠/展开(使用 `<details>` 标签)
### 已知坑点
1. **海外员工缺乏独立考勤表**:无法逐项对账,只能靠入离职表/异动表/上月工资表交叉核对
2. **基数调整当月易出错**:个人承担部分调整常遗漏,需重点核对社保/公积金官方账单
3. **离职补偿金必须有审批**:无完整审批流程的离职补偿金不能发,标记为高风险
4. **奖金表格种类多**:包房奖/渠道佣金/季度奖/DMO 营销奖,每种都要独立核对
5. **公式检查不能跳过**:P0 优先级的计算逻辑审核是最基础的,必须先过再进入后续审核
6. **HTML 报告图表不依赖外部库**:必须使用内联 SVG,否则飞书/本地打开时图表不显示
7. **交叉验证差异超过 3 项时**:自动标记"数据质量存疑",建议重新提交数据源
### 降级方案
- **没有当月入离职表** → 用上月工资表反推,自动标记"需补充入离职表验证"
- **没有绩效汇总表** → 先核对考勤和奖金,绩效项自动标注"待补充数据"
- **没有社保官方账单** → 用上月基数预估,自动标记"需补充官方账单验证"
- **无法生成 HTML 报告** → 自动退回 Markdown 报告,标注"HTML 渲染失败"
- **飞书 API 不可用** → 自动保存本地文件,标注"飞书发送失败,文件已保存本地"
## 参考文件
| 文件 | 用途 |
|------|------|
| `rules/core-checks.md` | 10 项核心审核要素(审核内容 + 处理办法) |
| `rules/regional-rules.md` | 国内/海外区域审核规则 |
| `rules/materials-list.md` | 需索取材料清单(必须 + 按场景) |
| `templates/audit-report.md` | Markdown 审核报告模板 |
| `templates/html-report-template.html` | HTML 可视化报告模板(备用) |
| `scripts/cross_validate.py` | 交叉验证引擎脚本(确定性执行,支持 CSV 数据源 A/B/C 对比) |
| `scripts/generate_html_report.py` | HTML 报告生成器脚本(确定性渲染,内联 SVG 图表) |
don't have the plugin yet? install it then click "run inline in claude" again.