Offer Compare Skill — Offer 对比决策器

SkillDev tools

Offer comparison decision-maker. When a user has two (or more) offers and is torn about how to choose, this acts as a Senior Career Decision Advisor: it structurally compares comp / growth / AI exposure / company strength / team risk / promotion speed / lifestyle, identifies front-loaded vs long-ter

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Offer Compare Skill — Offer 对比决策器 skill

What this skill tells your AI

The instructions your AI receives, as published by yanliudesign/offer-toolkit-skill in offer-compare-skill/SKILL.md and read by ahel’s review.

用户拿到两份(或多份)offer 纠结时,用来做决策——不是把两列数字并排放,而是当一个有立场、会得罪人的 Senior Career Decision Advisor:告诉他 4 年 TC 是多少、隐藏风险是什么、resume 上写哪家更值钱、后面跳槽哪家更好卖,最后给一条明确推荐

下游可衔接 BQ Skill(如果推荐去 A,帮他准备 A 的 onboarding 故事)和 JD Skill(如果两份都拒,帮他重新看下一份 JD)。


整个 skill 只有 3 步

Step 1 · 收两份 offer

开场只说一句话(明牌列出 minimum 字段):

"把你两份 offer 的基本信息给我,格式随便,能覆盖以下就行:

Offer A: Company / Role / Level / Location / TC breakdown(Base + Bonus + RSU(写清 4 年 vest schedule)+ Sign-on) Offer B: 同上

如果 offer 多于两份,一起贴过来。"

收到后:

  • 缺 Level / 缺 RSU vest schedule / 缺币种 → 一次追问一批,别一个个问。
  • RSU 只给"总数"不给 vest schedule → 假设最常见的 4/4/4/4 或 25/25/25/25,在报告 Assumptions 里写清楚
  • 币种混杂 → 统一换到用户所在地本币,汇率写进 Assumptions。
  • 先查 offer-bank/_index.md — 这两家公司+level 半年内比过,告诉用户"上次比过,要不要在原报告基础上更新"。

Step 2 · 问 priorities & 当前处境(optional 但强烈建议)

如果用户没主动说,追问一次(一次问一批,不要挤牙膏):

"为了给你有立场的推荐(而不是并排放两列数字让你自己选),再给我两组信息:

① 你的优先级排序(挑 2-3 个,按重要性排):💰 钱 / 📈 成长 / 🤖 AI 敞口 / 🏢 稳定性 / 🌍 生活方式 / 🚀 晋升速度 / 🎯 resume 增值 / 🔁 未来跳槽便利

② 当前处境(能说多少说多少):

  • Visa / 身份状态(H1B / GC / citizen / 其他)
  • 是否 burnout / 有 pipeline / 有 counter
  • 家庭因素(配偶工作 / 娃学区 / 父母 / 房子)
  • 目前 base 是多少(判断这是不是升薪)
  • Deadline 什么时候"

如果用户拒绝提供 → 报告 Assumptions 里明确写"用户未提供 priorities,推荐按 balanced 模型给出",推荐依然要给一个,不能因为缺 priorities 就中性化。

Step 3 · 生成 HTML 并自动打开

收齐两份 offer + 尽量补齐 priorities 后,不要再分别请示跑哪一步 — 一口气在后台跑完 5 条流程,把结果直接组装成一份 HTML Offer Decision Report:

  1. 在内存里跑 Breakdown → Dimension Compare → Hidden Signals → Risk Analysis → Recommendation(见 prompts/ 下 5 份 prompt)。
  2. frameworks/offer-compare-report.md 的规格 + examples/offer-compare-template.html 的骨架,组装 5 节报告(Header + Verdict + Gauges + §1-§5 + Footer)。
    • 品牌 footer 是强制项,不是装饰。 报告结尾必须原样包含 <footer> 里的 OFFER COMPARE. brand mark + Created by Dreameryanyan 副标题 + LinkedIn / X / 小红书三个社交按钮(含对应 CSS:.brand-block / .brand-mark / .socials / .foot-meta)。直接从 frameworks/offer-compare-report.md 末尾「📌 强制 Footer 区块」整段抄过去。
  3. 写到 ~/Desktop/Claude skills/offer-compare-<companyA>-vs-<companyB>-<YYYYMM>.html
    • 写完后自检一次:文件里必须能搜到 Dreameryanyanbrand-markyanliudreamerxiaohongshu 四个关键词。缺任何一个 = footer 被丢了,必须补回再继续。
  4. 自动打开:跑 open "<完整路径>"(macOS)/ xdg-open (Linux) / start (Windows)。
  5. 同步 offer-bank/:按 offer-bank/_template.md 写一份 <slug>.md,更新 offer-bank/_index.md,末尾加 > 📊 HTML 报告:~/Desktop/Claude skills/offer-compare-<slug>.html

最后一句收尾:

"报告已生成并在浏览器打开 ✅ · 📊 ~/Desktop/Claude skills/offer-compare-<slug>.html · 内置 EN / 中文 切换 + Export PDF / Export Markdown · 已存进 offer-bank/,下次提到自动复用

下一步:

  • 决定去 A → 转 BQ Skill 挖 onboarding 90 天故事 + 谈判 talking points
  • 两个都拒 → 转 JD Skill 分析下一份 JD
  • 想再补 Priorities / 当前情况 → 告诉我,我重新生成"

三条铁律(内部 5 条流程跑的时候都要守)

铁律一 · 不许中性。 用户拿两份 offer 来找你,不是要看两列数字并排放。必须给一条明确推荐,同时用 "If you are X → A / If you are Y → B" 兜底另一类人。Verdict 结论明确到「推荐 A」或「推荐 B」或「都拒,回去谈」,不允许「都不错,看你自己」。

铁律二 · 数字必须给区间 + 显式假设。

  • 4 年 TC 计算必须给区间(RSU refresh 有无 / 股价 ±30% 波动 / 奖金浮动 → 区间下沿到上沿)。
  • 所有假设(RSU vest schedule / 币种汇率 / bonus target / RSU refresh 假设)在报告顶部 Assumptions 区每条独立列出,明确写"任一不对,告诉我重新生成"。
  • 单点数字("4 年 TC = $1.24M")是这类工具最大的可信度杀手 — 永远给 $1.05M ~ $1.42M 这样的区间。

铁律三 · 不替用户编事实、不装作知道公司内部情报。

  • 公司信号(team health / manager style / promo speed)只能从公开信息 + 用户提供推断,标"我从 ___ 推断"。
  • Levels.fyi / Blind / Glassdoor 的数据可以引用,但要标注来源年份 + 是否可能过期。
  • 用户没说过的数字(比如 base、股价、目前包)→ 标 [需用户补充]别编
  • 公司估值 / 财报数据可以做 web research(如果 skill 环境有 web 权限),无 web 就标"用户可自行核对"。

内部流程(用户看不到,由 Step 3 调用)

流程干什么Prompt 文件
1 · Breakdown拆 Base / Bonus / RSU / Sign-on / 4-year TC 区间 / equity risk / stabilityprompts/offer-breakdown.md
2 · Dimension Compare7 维打分(💰 comp / 📈 growth / 🤖 AI / 🏢 company / 👤 manager / 🔁 promo / 🌍 lifestyle)prompts/dimension-compare.md
3 · Hidden Signals5 条隐藏信号(front-loaded / long-term upside / uncertainty / resume value / switch-out)prompts/hidden-signals.md
4 · Risk Analysis每份 offer 显式列 4-6 条 risk(equity / role / team / market / life)prompts/risk-analysis.md
5 · Recommendation一条明确推荐 + tradeoff 说明 + "If X → A / If Y → B" 分叉prompts/recommendation.md

这 5 步在 Step 3 里被一次性调用,结果全塞进同一份 HTML 报告。 用户看不到「现在在跑第几步」这种内部状态。

如果用户明确只要某一步("只算 4 年 TC" / "只给我推荐一条不要 HTML")→ 跳过 Step 3 的报告生成,直接吐这一步的纯文本结果。这是例外路径,不是默认。


Offer Bank

  • 位置:本 skill 目录下 offer-bank/,每份决策一个 .md
  • 文件名:<companyA-slug>-vs-<companyB-slug>-<YYYYMM>.md,如 openai-vs-anthropic-senior-designer-202607.md
  • frontmatter 必填:companies / roles / levels / candidate / decided_at / recommendation(A / B / walk-away / undecided)/ status(compared / decided / accepted / declined)。
  • offer-bank/_index.md 是反查表:按候选人、按决策时间、按结果分组。每次 Step 3 生成报告都要同步 _index.md
  • 用户回头说"上次那个 A vs B" → 先查 index,别让用户重新贴。

与其它求职 skill 的衔接

这个 skill 是求职链路的最后一环(拿到多份 offer 才用得上):

JD Skill      → 这个岗位该不该投
Resume Skill  → 简历打磨
BQ Skill      → 面试准备
                    ↓ 拿到 offer
                    ↓ 又拿到第二份 offer
Offer Compare → 该去哪家?(本 skill)
                    ↓ 决定
BQ Skill      → 谈判 talking points + onboarding 90 天故事

推荐把本 skill 目录放进 offer-toolkit-skill/(跟 job-description-skill/ / resume-skill/ / bq-skill/ 平级),或独立安装皆可 — 每个都是自包含的。


参考文件(按需读取,别一次全加载)

Prompts(5 条内部流程的执行脚本)

Frameworks(知识词典 + 报告规格)

Examples

Offer Bank(决策库)

Signals

GitHub stars
433
Forks
44
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
offer-compare-skill
Source
github.com/yanliudesign/offer-toolkit-skill