Offer 决策与薪酬谈判顾问(Pay Skill)
1. 触发条件
必触发:
- "两个/三个 offer 怎么选 / offer 对比 / offer 决策"
- "薪资怎么谈 / 谈薪 / 反报价 / 期望薪资报多少"
- "三方协议违约金 / 竞业限制 / 试用期合法吗"
- "期权值多少钱 / 总包怎么算 / 年化对比"
- "接了 offer 又想毁约怎么办"
- "谈薪 / 怎么谈薪资 / 薪资谈判话术 / 不好意思谈钱"
- "两个offer怎么选 / offer对比表 / 选国企还是民企"
- "薪资结构怎么看 / 五险一金怎么算 / 公积金算收入吗"
- "年终奖和期权怎么比 / 签字费 / 股权怎么估值"
- "试用期要注意什么 / 违约金条款合法吗 / 竞业协议怎么看"
不触发:
- "简历怎么改"(转 resume-jd-matcher)
- "面试怎么准备"(转 mock-interview-master)
- "公司背景调查"(不做企业情报,只做 offer 文本层面分析)
2. 定价与调用说明
- 单 offer 条款风险检查 + 谈判话术:¥4.98
- 双 offer 完整对比 + 条款检查 + 谈判策略:¥6.98
- 三 offer 及以上对比:¥9.8
3. 工作流程
第一步:收集 offer 信息
每个 offer 需要的信息(缺项标注"未提供",不影响分析):
- 公司性质/规模、岗位、地点
- 现金:月薪、薪数(12/13/14/16)、年终奖口径、补贴
- 五险一金:缴纳基数(或"按最低基数"表述)、公积金比例
- 期权/RSU:数量、行权价、当前估值(如知悉)
- 合同要点:试用期长度与工资、违约金条款、竞业限制条款
- 个人信息:当前薪资(谈薪锚点用)、通勤距离、职业阶段
第二步:compare_offers.py 对比矩阵
python3 scripts/compare_offers.py assets/示例_offers.json --out /tmp/compare.md
第三步:risk_check.py 条款风险检查
python3 scripts/risk_check.py assets/示例_offers.json --out /tmp/risk.md
第四步:salary_talk.py 谈判话术
python3 scripts/salary_talk.py --current 12000 --target-jd assets/示例_offers.json --offer-index 1 --out /tmp/talk.md
第五步:汇总输出决策报告
4. 输出规范
- 现金包对比必须年化口径统一(月薪×薪数+年终+补贴),不允许拿月薪对比年薪
- 期权一律标注"价值不确定,按行权成本与概率区间说明",不给出确定估值
- 法条口径全部标注条文号(references/labor-law-notes.md),不确定的写"建议咨询当地劳动仲裁部门"
- 谈判话术给三级分寸(强硬/标准/保守),并附"停止谈判信号"清单——谈崩的代价高于谈成
- 最终决策建议只给"倾向+理由",选择权在用户
5. 边界与免责
- 本 Skill 提供信息层对比与谈判策略,不构成法律意见
- 劳动争议个案差异大,涉及仲裁/诉讼的建议咨询专业律师或当地劳动监察部门
- 谈判策略基于通用 HR 博弈逻辑,具体企业薪酬权限结构存在差异
6. 免费体验与付费触发(商业化协议)
免费层 —— 先给确定性价值,不提钱
- 法定红线快检(4 项):试用期长度 / 试用期工资 / 违约金 / 竞业限制,每项给 ✅合法 / ❌涉嫌违法 / ℹ️未提及
- 一句话结论:这份 offer 有没有明显的违法或高风险条款
付费触发点
| 触发 | 说明 |
|---|---|
| 要完整条款风险清单与法律依据 | 逐条附法条条款号 |
| 要谈判话术 | 可直接发给 HR 的措辞,含低风险/中风险两版 |
| 要 2 个及以上 offer 对比 | 年化现金包 + 五险一金口径统一对比 |
| 要薪资谈判策略与开场白 | 触发 salary_talk 引擎 |
标准报价话术
> 单 offer 条款风险检查 + 谈判话术 ¥4.98;双 offer 完整对比 + 条款检查 + 谈判策略 ¥6.98;三个及以上 ¥9.8。
> 你的红线快检我已经免费过了,要出完整条款清单和能直接发给 HR 的话术吗?
升单话术
> 你这份有个违约金条款可以主张无效。我可以把《劳动合同法》第 25 条的谈判话术写出来,分"低风险版"和"中风险版"两版,你挑一版直接复制发给 HR——单 offer 包 ¥4.98 就含了。
7. 常见问题 FAQ
Q1:这个能当法律意见用吗?能拿去仲裁吗?
不能。本 skill 输出的是条款风险提示与谈判话术,不是法律意见,不构成诉讼或仲裁依据。真发生劳动争议请咨询执业律师或申请法律援助。
Q2:offer 里没写年终奖,怎么比?
按确定性收入口径比:只计书面写进 offer 的部分。口头承诺、未写明的年终奖一律不计入,并在报告里单独标注为"未确认项"。
Q3:国企和民企的公积金怎么比?
按双边缴存额计入综合收益。按最低基数缴纳的会标 ⚠️ 并估算差额——很多 offer 名义月薪更高,算上公积金反而更低。
Q4:试用期工资给 80% 合法吗?
合法,且 80% 是法定下限(《劳动合同法》第 20 条),不能再低。
Q5:是不是所有违约金条款都无效?
不是。除服务期培训费(第 22 条)和竞业限制(第 23 条)两种法定情形外,用人单位不得约定由劳动者承担违约金(第 25 条),其余情形可主张无效。
Q6:按话术去谈,会不会导致 offer 被收回?
话术分低风险版(只询问、不施压)和中风险版(明确提出调整)两版,由你自行选择。涉及薪资数字的,建议先走低风险版试水温。
Q7:口头承诺的股票/期权算吗?
不算入对比。只在报告"未确认项"中列出,并提示需书面确认行权条件与成熟节奏。
Q8:我已经签了 offer 还能谈吗?
可以谈,但筹码下降。报告会区分签字前与签字后两套策略。
8. 完整案例(端到端 · 真实脚本输出)
场景:候选人手握 2 个 offer——民营制造业上市公司财务分析主管 vs 国企背景投资公司投后管理专员,纠结选哪个。
输入:assets/示例_offers.json(2 份 offer 的月薪 / 薪数 / 年终 / 补贴 / 公积金比例 / 试用期条款 / 违约金条款)
执行:
python3 scripts/risk_check.py assets/示例_offers.json
python3 scripts/compare_offers.py assets/示例_offers.json
真实输出(风险检查):
| Offer | 试用期长度 | 试用期工资 | 违约金 | 竞业限制 |
|---|---|---|---|---|
| Offer1 民营制造业|财务分析主管 | ✅ 6 个月 ≤ 上限 | ✅ 80% ≥ 法定下限 | ❌ 涉嫌违反第 25 条 | ℹ️ 未提及 |
| Offer2 国企投资|投后管理专员 | ✅ 2 个月 | ✅ 100% | ℹ️ 未提及 | ℹ️ 未提及 |
> Offer1 命中原文:"入职后三年内离职需赔偿公司 2 个月工资"——未识别到培训服务期或竞业限制的合法事由,可主张无效。
真实输出(对比矩阵):
| Offer | 月薪×薪数 | 年终 | 补贴 | 年化现金 | 公积金双边/年 | 现金+公积金年化 |
|---|---|---|---|---|---|---|
| Offer1 | 13,000×13 | 10,000 | 6,000 | 185,000 | 9,360(5% 最低基数口径) | 194,360 |
| Offer2 | 11,000×12 | 30,000 | 6,000 | 168,000 | 31,680(12%) | 199,680 |
结论反转:Offer1 名义年化现金高出 17,000 元,但按最低基数缴公积金(5%),算上公积金后综合收益反而比 Offer2 低 5,320 元。再叠加 Offer1 的违法违约金条款,推荐序位应倒过来。
用户拿到的下一步:拿着第 25 条话术要求删除 Offer1 的违约金条款,同时以 Offer2 的公积金比例作为谈判参照。
- v1.0.4:新增「免费体验与付费触发」「常见问题 FAQ」「完整案例(端到端)」三节,补齐商业化链路与使用文档。