feat: 工资查询助手首版 v1.0.105

基于 skill-template 脚手架开发,包含:
- payroll_config(费率配置,可编辑)+ payslip_snapshots(解析历史,只读)2 张业务表
- 全国默认 + 北上广 4 套费率(社保/公积金/个税起征点/7 级税率表)
- 5 个业务 Action:calculate-payslip-simple / calculate-payslip-full / explain-term / view-config / edit-config
- 个税累计预扣法计算,支持多月历史累加
- 20 个薪资名词库(社保/公积金/个税/全勤/加班费等)
- 完整市场文档(README/TUTORIAL/DEMO/CHANGELOG)
- 296 测试全部通过
This commit is contained in:
skill-dev
2026-09-07 17:02:05 +08:00
commit 3db196e49d
205 changed files with 29927 additions and 0 deletions

226
assets/actions.json Normal file
View File

@@ -0,0 +1,226 @@
{
"schemaVersion": 1,
"skill": "query-payslip-default",
"actions": [
{
"id": "calculate-payslip-simple",
"label": "快速估算工资",
"description": "输入基本工资与工资期间,按费率估算社保/公积金/个税,得出应发/扣除/实发。结果仅供参考。",
"placements": ["agent", "toolbar"],
"executionProfile": "sync",
"interaction": "form",
"bind": {
"tables": ["payslip_snapshots"]
},
"entrypoint": {
"type": "cli",
"command": "calculate-simple",
"args": [
"--base-salary", "{{baseSalary}}",
"--period", "{{period}}",
"--reported-net", "{{reportedNet}}",
"--region", "{{region}}"
]
},
"inputSchema": {
"type": "object",
"properties": {
"baseSalary": {
"type": "number",
"title": "基本工资",
"description": "月度基本工资金额。"
},
"period": {
"type": "string",
"title": "工资期间",
"description": "格式 YYYY-MM,如 2026-08。",
"display_type": "date"
},
"reportedNet": {
"type": "number",
"title": "用户自报实发",
"description": "工资条上的实发金额,用于核对。可选。"
},
"region": {
"type": "string",
"title": "地区",
"description": "费率适用地区。",
"default": "default",
"enum": ["default", "beijing", "shanghai", "guangzhou"]
}
},
"required": ["baseSalary", "period"]
},
"hostEffects": {
"onSuccess": ["reloadTable"]
}
},
{
"id": "calculate-payslip-full",
"label": "精确核算工资",
"description": "输入全字段(应发项+扣除项+期间),精确核算应发/扣除/实发并核对差异。缺失的扣除项按费率估算。",
"placements": ["agent", "toolbar"],
"executionProfile": "sync",
"interaction": "form",
"bind": {
"tables": ["payslip_snapshots"]
},
"entrypoint": {
"type": "cli",
"command": "calculate-full",
"args": [
"--base-salary", "{{baseSalary}}",
"--performance", "{{performance}}",
"--full-attendance", "{{fullAttendance}}",
"--meal-allowance", "{{mealAllowance}}",
"--transport-allowance", "{{transportAllowance}}",
"--overtime-pay", "{{overtimePay}}",
"--other-gross", "{{otherGross}}",
"--social-personal", "{{socialPersonal}}",
"--housing-fund-personal", "{{housingFundPersonal}}",
"--tax", "{{tax}}",
"--leave-deduction", "{{leaveDeduction}}",
"--other-deduction", "{{otherDeduction}}",
"--period", "{{period}}",
"--reported-net", "{{reportedNet}}",
"--region", "{{region}}"
]
},
"inputSchema": {
"type": "object",
"properties": {
"baseSalary": {"type": "number", "title": "基本工资"},
"performance": {"type": "number", "title": "绩效", "default": 0},
"fullAttendance": {"type": "number", "title": "全勤", "default": 0},
"mealAllowance": {"type": "number", "title": "餐补", "default": 0},
"transportAllowance": {"type": "number", "title": "交通补", "default": 0},
"overtimePay": {"type": "number", "title": "加班费", "default": 0},
"otherGross": {"type": "number", "title": "其他应发", "default": 0},
"socialPersonal": {"type": "number", "title": "社保个人", "description": "留空则按费率估算"},
"housingFundPersonal": {"type": "number", "title": "公积金个人", "description": "留空则按费率估算"},
"tax": {"type": "number", "title": "个税", "description": "留空则按累计预扣估算"},
"leaveDeduction": {"type": "number", "title": "事假扣款", "default": 0},
"otherDeduction": {"type": "number", "title": "其他扣款", "default": 0},
"period": {"type": "string", "title": "工资期间", "display_type": "date"},
"reportedNet": {"type": "number", "title": "用户自报实发", "description": "用于核对"},
"region": {
"type": "string", "title": "地区", "default": "default",
"enum": ["default", "beijing", "shanghai", "guangzhou"]
}
},
"required": ["baseSalary", "period"]
},
"hostEffects": {
"onSuccess": ["reloadTable"]
}
},
{
"id": "explain-term",
"label": "名词解释",
"description": "查询工资条名词(社保/公积金/个税/全勤等)的通俗解释与示例。",
"placements": ["agent"],
"executionProfile": "sync",
"entrypoint": {
"type": "cli",
"command": "explain",
"args": ["--term", "{{term}}"]
},
"inputSchema": {
"type": "object",
"properties": {
"term": {
"type": "string",
"title": "名词",
"description": "如:养老保险、累计预扣、速算扣除数。"
}
},
"required": ["term"]
}
},
{
"id": "view-config",
"label": "查看费率配置",
"description": "查看社保/公积金/个税等费率配置,按地区区分。",
"placements": ["skill-detail", "agent"],
"executionProfile": "sync",
"entrypoint": {
"type": "cli",
"command": "view-config",
"args": ["--region", "{{region}}"]
},
"inputSchema": {
"type": "object",
"properties": {
"region": {
"type": "string", "title": "地区",
"enum": ["default", "beijing", "shanghai", "guangzhou"]
}
}
},
"bind": {
"tables": ["payroll_config"]
}
},
{
"id": "edit-config",
"label": "编辑费率",
"description": "修改费率配置数值(仅管理员)。",
"placements": ["row"],
"executionProfile": "sync",
"interaction": "form",
"bind": {
"tables": ["payroll_config"]
},
"entrypoint": {
"type": "cli",
"command": "edit-config",
"args": ["--config-key", "{{configKey}}", "--region", "{{region}}", "--config-value", "{{configValue}}"]
},
"inputSchema": {
"type": "object",
"properties": {
"configKey": {"type": "string", "title": "配置键"},
"region": {"type": "string", "title": "地区"},
"configValue": {"type": "number", "title": "新值"}
},
"required": ["configKey", "region", "configValue"]
}
},
{
"id": "health",
"label": "运行检查",
"description": "检查技能运行环境并返回结构化结果。",
"placements": ["skill-detail"],
"executionProfile": "sync",
"entrypoint": {
"type": "cli",
"command": "health",
"args": []
}
},
{
"id": "version",
"label": "查看版本",
"description": "返回技能版本和机器标识。",
"placements": ["skill-detail"],
"executionProfile": "sync",
"entrypoint": {
"type": "cli",
"command": "version",
"args": []
}
},
{
"id": "config-path",
"label": "查看配置位置",
"description": "返回技能配置文件位置。",
"placements": ["skill-detail"],
"executionProfile": "sync",
"entrypoint": {
"type": "cli",
"command": "config-path",
"args": []
}
}
]
}