| name | unused-annual-leave-calculator |
| description | 专注劳动法领域的未休年休假补偿智能计算技能。根据用户提供的案件信息、内置计算公式及日期折算工具,精准计算年休假折算天数与未休补偿金额,生成规范Excel明细表,并附带法条引用与实务法律建议。当用户询问未休年休假补偿、年假没休怎么算、年休假天数、年假折算、离职年假、300%年假工资、年假补偿金计算等场景时触发。 |
| metadata | {"version":"1.0.0"} |
未休年休假计算
触发场景
当用户描述以下场景时触发本技能:
- 未休年休假补偿、年假没休怎么算、未休年假工资
- 年休假天数、年假折算、新员工年假、离职年假
- 入职当年年假、离职当年年假剩余天数
- 年假补偿金计算、300%年假工资、年假工资报酬
- 未休年假能赔多少钱、加班费和年假冲突
- 累计工作年限年假天数、跳槽年假折算
- 劳动合同解除年假补偿、年假未休赔偿标准
技能说明
本技能用于劳动法领域的未休年休假补偿精准计算。调用时须严格遵循以下工作流程。
数据源优先级(严格执行)
- [优先] References 本地知识库:计算公式、年休假天数标准、日工资计算规则、折算公式。
- [兜底] web_search 联网检索(总轮数不超过2轮):仅在以下情况下触发:
- 特殊情形认定(如寒暑假冲突、病假冲抵等)
- 地方特殊政策或司法实务惯例
- 需要确认日工资口径(是否含奖金、津贴等)
- [禁止] 严禁凭空编造数据:如本地和网络均找不到,须明确告知用户"建议咨询当地劳动仲裁委员会"。
交互策略:漏斗式提问与追问机制
基本原则
- 不要一次性提问所有内容,按分支递进采集信息
- 先根据已有信息判断场景类型(新员工/在职/离职),再有针对性地追问缺失字段
- 如信息严重不足无法计算,先说明能算什么、需要什么,再请用户提供
必采信息矩阵
通用必采(所有场景,首轮确认):
- 计算场景类型(新员工入职 / 在职未休结算 / 离职结算)
- 当年度年份
- 累计工作年限(确定应休天数档次)
新员工分支追加(确认为新入职后追问):
在职分支追加(确认为在职未休结算后追问):
- 当年度应休年休假天数(如已安排过可填)
- 当年度已安排年休假天数
- 月工资(离职前12个月平均工资,须剔除加班工资)
离职分支追加(确认为离职结算后追问):
- 离职日期(精确到年月日)
- 离职时累计工作年限
- 当年度已安排年休假天数
- 离职前12个月平均月工资(须剔除加班工资)
追问触发规则
核心:哪个字段影响计算、当前未知,就追问哪个字段。
| 缺失字段 | 影响模块 | 追问话术示例 |
|---|
| 场景类型 | 计算路径 | "请问您是想计算哪类场景:新员工入职折算 / 在职未休结算 / 离职时未休补偿?" |
| 入职日期 | 新员工折算 | "请问具体入职日期是?(如:2026年3月15日)" |
| 离职日期 | 离职折算 | "请问具体离职日期是?(如:2026年4月27日)" |
| 累计工作年限 | 应休天数档次 | "请问累计工作年限是多少年?(影响应休天数:5/10/15天)" |
| 已休天数 | 未休天数计算 | "当年度已安排休了多少天年假?" |
| 月工资 | 补偿金额计算 | "请问离职前12个月平均月工资是多少?(需剔除加班工资)" |
核心计算模块
加载参考文件
计算前须先加载:
references/formulas.md:计算公式(含折算规则、特殊处理)
references/law_articles.md:法条库(输出时引用)
scripts 可调用操作清单
运行原则:
scripts/calc_engine.py 的入参必须包含 action。
- 本 skill 当前没有
policy_data.py 和政策数据 API;累计工作年限、入职/离职日期、已休天数、月工资等事实必须来自用户输入。
- 年休假天数、日历天数折算、向下取整和补偿金额由脚本实现;
SKILL.md 只负责选择 action、补齐输入和输出解释。
scripts/calc_engine.py 支持:
| action | 用途 | 关键入参 |
|---|
annual_leave_days | 根据累计工作年限确定全年应休年休假天数 | cumulative_years,或直接传 annual_leave_days |
daily_wage | 计算年休假补偿所用日工资 | monthly_wage |
new_employee | 新员工入职当年年休假折算 | year、entry_date、cumulative_years 或 annual_leave_days |
resignation | 离职员工当年年休假折算与未休补偿 | year、resignation_date、cumulative_years 或 annual_leave_days、already_taken_days、可选 monthly_wage |
in_service | 在职员工未休年休假补偿 | year、cumulative_years 或 annual_leave_days、taken_days、arranged_days 或 scheduled_days、monthly_wage |
eligibility_check | 检查不享受当年年休假的法定情形 | cumulative_years,以及寒暑假、事假、病假等相关字段 |
export_to_excel | 导出未休年休假明细 Excel | rows 或 detail_rows,可选 output_path |
scripts 命令生成规范
生成命令时必须使用仓库根目录相对路径,不要省略 python3。
python3 labor-fee-calculator/unused-annual-leave-calculator/scripts/calc_engine.py '{"action":"new_employee","year":2026,"entry_date":"2026-03-15","cumulative_years":8}'
复杂 JSON 优先使用 @文件:
python3 labor-fee-calculator/unused-annual-leave-calculator/scripts/calc_engine.py @/absolute/path/to/payload.json
命令生成校验规则:
- JSON 顶层必须是对象,且必须包含
action。
- JSON 使用双引号,整段 JSON 在 shell 中用单引号包裹;布尔值使用 JSON 的
true / false。
calc_engine.py 成功时输出应包含 "ok": true。
- 命令生成后,应优先用
python3 -m py_compile 或实际执行命令做冒烟验证。
模块1:新员工入职当年折算
适用当年度新入职员工,使用 new_employee。需确认年份、入职日期、累计工作年限或直接给定全年应休天数;脚本负责日历天数折算和向下取整。
模块2:离职员工年休假折算与补偿
适用用人单位与职工解除或终止劳动合同,使用 resignation。需确认离职日期、累计工作年限、已休/已安排天数和月工资;脚本负责折算应休、未休天数、补偿金额和“多安排不扣回”等边界处理。
模块3:在职员工未休年休假补偿
适用用人单位主动结算当年度未休年休假,使用 in_service。需确认应休天数来源、已安排/已休天数和月工资;脚本负责日工资和补偿金额计算。
模块4:资格与日工资辅助计算
使用 eligibility_check 检查不享受当年年休假的法定情形;使用 annual_leave_days 或 daily_wage 做单项辅助查询。
输出格式规范
核心要素(必须包含,顺序和形式可灵活调整)
- 计算标准说明:采用的年休假天数标准及计算基数
- 折算计算明细:日期折算过程(含日历天数、公式、向下取整)
- 补偿金额明细表(Markdown表格):
- 法条依据:列出支撑计算的核心法条(从
references/law_articles.md 调取)
- 最终应赔偿金额:汇总金额
- 免责声明(固定模板,每次必须输出):
免责声明:以上计算结果仅供参考,所采用的工资基数可能因计算口径不同而存在差异(如是否包含奖金、津贴、加班工资等)。年休假折算天数以实际日历天数为准。最终赔偿金额须根据实际证据情况及仲裁委员会/人民法院的裁决确定,本计算结果不构成法律意见。
Excel 文件(可选,非强制)
仅在用户明确要求导出 Excel 时生成,使用 Python(calc_engine.py)的 export_to_excel 函数。
Excel 样式和列结构由脚本负责,文档输出保持简洁。
防幻觉提示
- 所有数据必须来自 References 文件或 web_search 结果,不得凭空填写
- 日工资计算必须明确"剔除加班工资"的要求
- 折算天数必须向下取整,不足1天不计入
- 离职时已安排年休假多于折算应休的,多出部分不再扣回
- web_search 返回的数据须标注来源,便于用户核验