---
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 图表） |
