Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add yanliudesign/offer-toolkit-skill --skill job-search-skillgit clone --depth 1 https://github.com/yanliudesign/offer-toolkit-skillWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/yanliudesign/offer-toolkit-skill/job-search-skill)<a href="https://agentmods.dev/skills/yanliudesign/offer-toolkit-skill/job-search-skill"><img src="https://agentmods.dev/badge/skills/yanliudesign/offer-toolkit-skill/job-search-skill/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/yanliudesign/offer-toolkit-skill/job-search-skill"><img src="https://agentmods.dev/badge/skills/yanliudesign/offer-toolkit-skill/job-search-skill.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00136 | $0.01966 |
| Opus 5.5 | $0.00054 | $0.00786 |
| Sonnet 5.5 | $0.00027 | $0.00393 |
| Haiku 4.5 | $0.00014 | $0.00197 |
Grade A, and why
linkedin-job-search-skill scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 178 lines — stays where its author put it; the contents beside it link to each section on GitHub.
LinkedIn Job Search Skill
把「一份我喜欢的 JD + 我的简历」转成一份有证据、可行动的 LinkedIn 岗位 shortlist。
这个 skill 是 Offer Toolkit 的第 0 步:
种子 JD + 简历 → 搜索画像 → LinkedIn 候选池 → 匹配排序 → shortlist
↓
Job Description Skill 深度解码
边界
- 只做岗位搜索、读取公开职位信息、去重、匹配排序和推荐。
- 永远不自动点击 Apply,不填写申请表,不发送消息,不代表用户投递。
- 永远不索取或处理 LinkedIn 密码、验证码、Cookie 或 session token。
- 遇到登录墙、验证码、频率限制或 robots 限制就停止该路径,不尝试绕过;改用公开搜索结果或输出可点击的 LinkedIn 查询链接。
- 岗位是否仍开放只能按搜索当时页面判断;报告必须写明搜索时间。
输入流程
Step 1 · 收集种子 JD
先要一份用户真正感兴趣的 JD 链接或全文。它不是唯一目标,而是用来提取岗位语义:title、level、scope、domain、核心能力和排除项。
若用户没有种子 JD,接受 2-3 个目标 title + 一句方向描述作为降级输入,并标注「无种子 JD,搜索画像置信度较低」。
Step 2 · 收集简历
接受 PDF、Word、纯文本或已结构化简历。只从用户提供的事实提取:
- 当前/最近 title 与大致 level
- 年限和最近 3 年的核心 scope
- 3-6 个有直接证据的能力
- 行业、产品阶段、客户类型和团队类型
- 地点、语言、签证等明确约束
不得把种子 JD 的要求写回用户画像,除非简历里有直接证据。
Step 3 · 补齐硬筛选条件
只追问会显著改变结果集的缺失条件,并且一次只问一个:
- 工作地点,以及是否接受 remote / hybrid / relocation
- 目标 level 或可接受的上下浮动
- 时间范围:24 小时 / 7 天 / 30 天
- 必须排除的公司、行业、合同类型或签证条件
默认值:最近 7 天、full-time、目标 level 上下浮动一级。默认值必须在最终报告显式列出,不能静默假设。
搜索执行
Step 4 · 生成搜索画像
先在内存中形成这份结构:
target_titles: [] # 2-5 个,不堆同义词
level: ""
locations: []
workplace: [] # remote / hybrid / on-site
date_posted: "7d"
employment_types: []
core_capabilities: [] # 3-6 个,必须有简历证据
domains: [] # 0-3 个
company_preferences: []
exclusions: []
seed_signals: [] # 从种子 JD 提取,但不等同于简历能力
回显一段不超过 8 行的搜索画像供用户快速纠错。用户没有纠正就继续,不要求第二次确认。
Step 5 · 构造查询矩阵
生成 6-10 组互补查询,而不是把所有词塞进一个 query:
- Exact title:目标 title + 地点
- Adjacent title:相邻 title + 地点
- Capability-led:title + 1 个核心能力
- Domain-led:title + 目标 domain
- Scope-led:title + 0→1 / platform / enterprise / growth 等 scope 信号
每组查询只放 1-2 个判别词。过长查询会漏掉用词不同但实际匹配的岗位。
LinkedIn 查询 URL 使用公开 Jobs Search 参数;优先设置 keywords、location、date posted、workplace 和 employment type。记录每组实际执行的 query 与 URL。
Step 6 · 采集候选池
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 178 lines · 136 tokens per session scan A 6afd8d8ad250
linkedin-job-search-skill is a skill published in the GitHub repository yanliudesign/offer-toolkit-skill (542 stars, last pushed yesterday), licensed MIT. It adds 136 tokens to every session and 1,966 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
vitaecontext-wiki-maintenance
Maintainer-only skill for refreshing VitaeContext wiki knowledge from official sources. Use only from a local repository clone when a maintainer asks to refresh one module, audit all module wiki entries, or audit module source lists.
vitaecontext-vitaegraph
Build, deepen, validate, index, and maintain a private hierarchical career knowledge graph from supplied career materials. Use when the user asks to create or update a VitaeGraph, model education with nested courses or thesis work, enrich projects from Git repositories, or supply deep selected career context to…
vitaecontext-build
Build, normalize, and maintain the user's Career Context file so downstream platform outputs stay factual and consistent. Use when the user wants an agent to consolidate CV data, LinkedIn exports, GitHub history, project summaries, bio facts, achievements, or positioning into one professional source of truth before…
vitaecontext
Route broad or ambiguous VitaeContext work to the right module while keeping context scoped. Use when a request spans the Career Context file and VitaeGraph, involves provider or install architecture, needs agent-context planning, or the correct VitaeContext skill is unclear.
resume-jd-optimizer-cn
A Chinese résumé-editing workflow that matches a résumé to a job description using only confirmed experience and evidence.
hatch-pet
Create, repair, validate, visually QA, and package Codex-compatible v2 animated pets from character art, generated images, company or prospect brand cues, or visual references. Use for any new Codex pet, custom mascot, non-pixel pet style, brand-inspired pet, existing-pet repair, desktop idle-stutter or choppy-blink…