你有多久没认真找过工作了?
投递 100 份简历,回复 5 封,面试 2 家,最终 0 offer——这不是你的问题。
传统求职的效率太低了。你需要在几十个招聘网站反复搜索,需要针对每个岗位手动改简历,需要写一封又一封石沉大海的求职信,需要在面试前突击准备却不知道从哪下手。
你真正该花时间的,是和人聊、是判断机会、是谈判薪资。 而不是做信息搬运和文本排版。
如果有一个工具,能帮你把这些机械劳动全部自动化——
- 自动扫遍各大招聘网站,按你的标准筛选岗位
- 自动评估每个岗位和你的匹配度,告诉你投不投
- 自动生成定制化的简历和求职信,不是模板套话
- 自动做 ATS 兼容性检测,确保你的简历不会被系统过滤
- 自动准备面试问题和你的 STAR 案例,甚至陪你模拟面试
你愿意试试吗?
它叫 ai-job-search。一个在 GitHub 上狂飙 18k+ Star 的项目,把 Claude Code 变成了你的全职求职助理。
---
这不是另一个「AI 写简历」的玩具
市面上的 AI 求职工具很多,但大多停留在「把你的经历润色一下」的层面。ai-job-search 不一样——它是一个完整的求职操作系统。
核心工作流
/setup → /scrape → /rank → /apply → /interview → /outcome
│ │ │ │ │ │
▼ ▼ ▼ ▼ ▼ ▼
建档 搜岗 排序 投递 面试准备 追踪复盘
每一步都是一个 slash command,在 Claude Code 里直接敲命令就行。就像你用 Claude Code 写代码一样自然——只不过这次,它帮你找工作。
和普通 AI 工具有什么不一样
| 维度 | 普通 AI 简历工具 | ai-job-search |
|---|---|---|
| 工作方式 | 一次性生成模板化内容 | 完整的多智能体工作流 |
| 定制程度 | 浅度关键词替换 | 基于完整档案的深度定制 |
| 质量控制 | 生成即交付 | 起草-审阅双智能体 + PDF 验证 + ATS 检测 |
| 覆盖范围 | 简历 + 求职信 | 搜岗、评估、简历、求职信、面试、技能提升、追踪 |
| 诚实原则 | 可能夸大甚至编造 | 严格禁止虚构经历,缺口如实标注 |
| 可控性 | 黑箱生成 | 所有档案、模板、规则都在你本地,Fork 即私有 |
最关键的区别:它不是替你找工作,它是帮你把找工作的效率提升 10 倍。 决策权永远在你手上。---
快速上手:四步启动你的 AI 求职助理
前置条件
在开始之前,你需要:
| 工具 | 用途 | 必需性 |
|---|---|---|
| Claude Code | 核心运行环境 | ✅ 必需 |
| Python 3.10+ | 薪资查询工具 | ⚠️ 可选 |
| Bun | 招聘网站搜索 CLI | ⚠️ 可选(不用搜岗可跳过) |
| LaTeX | 编译简历和求职信 PDF | ✅ 必需 |
| poppler / pdftotext | ATS 文本层检测 | ⚠️ 可选 |
最简单的起步方式:装好 Claude Code + LaTeX,先从 /setup 建档开始,搜岗和薪资功能以后再加。
第一步:Fork 并克隆
bash
gh repo fork MadsLorentzen/ai-job-search --clone
cd ai-job-search
为什么要 Fork? 因为你需要一个私有的仓库来存放你的个人资料——简历、学历证明、推荐信,这些都是敏感信息。Fork 之后,这就是你的私有求职工作空间。
第二步:安装搜索工具(可选)
如果你想用自动搜岗功能,需要安装各招聘门户的 CLI 工具:
bash
for tool in jobbank-search jobdanmark-search jobindex-search jobnet-search linkedin-search freehire-search; do
cd .agents/skills/$tool/cli && bun install && cd ../../../..
done
内置了 6 个搜索源:4 个丹麦本土招聘网站 + LinkedIn + freehire.dev(全球技术岗位聚合)。
不在丹麦?没关系——用/add-portal命令,AI 会帮你为本地招聘网站生成搜索技能。项目的核心框架完全不依赖特定国家或语言。
第三步:建立你的个人档案
bash
claude
进入 Claude Code 后输入:
/setup
/setup 提供了三种建档方式,你选最适合自己的:
| 方式 | 适合场景 | 说明 |
|---|---|---|
| Path A:文档文件夹 | 你有现成的 CV、LinkedIn 导出、证书、推荐信 | 把文件放到 documents/ 目录,AI 自动读取并交叉验证 |
| Path B:单份 CV 导入 | 你只有一份简历 | 粘贴或 @ 引用简历文件,AI 提取信息并补充追问 |
| Path C:访谈模式 | 你想从零开始,或者想重新梳理自己 | 结构化问答,一步步建立完整档案 |
AI 会帮你建立这些档案文件:
01-candidate-profile.md— 教育背景、工作经历、技能栈02-behavioral-profile.md— 行为特质评估(PI/DISC 等)03-writing-style.md— 写作风格、语气、禁忌04-job-evaluation.md— 岗位匹配度评分框架05-cv-templates.md— 简历模板和个人陈述模板06-cover-letter-templates.md— 求职信模板07-interview-prep.md— STAR 案例库和面试框架
档案越详实,后续的定制申请质量越高。强烈建议至少准备一份完整的简历再开始。
第四步:投出你的第一份申请
找到一个你感兴趣的岗位,然后:
/apply https://www.linkedin.com/jobs/view/xxxxxx
或者直接粘贴职位描述:
/apply [粘贴职位描述全文]
然后,AI 会自动执行完整的申请流水线。接下来这一章,我们详细拆解 /apply 到底做了什么。
---
/apply 深度解析:双智能体 + 七步流水线
这是整个项目最核心的部分。你以为 /apply 只是「帮你写封求职信」?Too naive。
它运行的是一套起草-审阅双智能体工作流,加上 PDF 验证和 ATS 检测,整整七个步骤。
第一步:解析职位描述
AI 读取岗位 JD,提取关键信息:
- 岗位名称、公司、地点
- 必备技能、加分技能
- 职责描述、团队规模、业务方向
- 薪资范围(如果有)
- 申请截止日期
第二步:匹配度评估
用你在 04-job-evaluation.md 中定义的评分框架,从五个维度打分:
| 维度 | 评估内容 |
|---|---|
| 技能匹配 | 技术栈、工具、领域经验 |
| 经验匹配 | 工作年限、职级、项目规模 |
| 文化匹配 | 公司价值观、工作方式、团队氛围 |
| 地点匹配 | 城市、远程/混合/到岗 |
| 职业发展 | 成长空间、薪资水平、行业前景 |
然后 AI 会告诉你:这个岗位值不值得投,你的优势在哪,差距在哪。
遇到硬伤(比如要求 5 年经验你只有 2 年),AI 会明确标记为「否决项」,不会浪费你的时间。
第三步:起草定制化简历和求职信
这是第一个智能体——起草者(Drafter) 的工作。
它不是简单地把你的经历复制粘贴。它会:
- 重新排序:把和岗位最相关的经历放到最前面
- 调整措辞:用岗位描述中的关键词来描述你的经历(但不编造)
- 裁剪内容:和岗位无关的经历简化或移除,确保简历精准匹配
- 定制个人陈述:针对岗位需求重写 Summary
- 撰写求职信:向前看的叙事框架——不是「我做过什么」,而是「我能为你做什么」
简历和求职信都是 LaTeX 格式,排版质量直接拉满。
第四步:审阅智能体 critique
这是最体现专业度的一步。
AI 会生成第二个独立的智能体——审阅者(Reviewer),它的任务是:
- 调研公司背景、产品、行业地位
- 以招聘经理的视角 critique 你的简历和求职信
- 指出问题:信息缺失、逻辑漏洞、措辞不当、关键词不足
- 给出具体的修改建议
相当于你有一个免费的职业顾问,在你投递之前帮你把一道关。
第五步:修订
起草者智能体根据审阅者的反馈,对简历和求职信进行修订。这一轮迭代后,质量通常会上一个台阶。
第六步:PDF 编译 + 视觉验证
这一步超级重要,也是大多数 AI 简历工具缺失的。
AI 会:
- 用
lualatex编译简历 PDF - 用
xelatex编译求职信 PDF - 视觉检查 PDF 渲染效果:
- 自动修复版式问题(
\needspace、\enlargethispage等)
为什么这很重要?因为 90% 的 LaTeX 简历模板,在你改了内容之后,排版都会崩——标题孤立、溢出、字体错乱。但你可能根本没注意到,就那样发出去了。
ai-job-search 自动帮你把这些坑都填上。
第七步:ATS 兼容性检测
最后一步,用 pdftotext 提取 PDF 的文本层,模拟 ATS(申请人追踪系统)读取简历的方式,检查:
- 联系方式是否以纯文本形式存在(不是图标 glyph)
- 阅读顺序是否正常(不是乱序的)
- 关键词覆盖率如何——缺什么关键词
- 需不需要补充
关键词的补充原则:你的经历里真的有的才加,真没有的如实标注,绝不硬塞。
---
不止投递:完整的求职生命周期
/setup、/scrape、/apply 是核心三件套。但项目还提供了 7 个进阶命令,覆盖了求职的每一个环节。
/scrape:全网搜岗
/scrape
自动搜索所有已配置的招聘网站,去重后按匹配度排序展示给你。
不想一条条看?继续看 /rank。
/rank:批量打分排序
/rank
对刚搜到的所有岗位,用并行智能体批量打分,给出一个排序后的候选清单。每个岗位都标注了:
- 匹配度评分
- 你的优势和差距
- 是否有硬伤否决项
- 截止日期和紧急程度
选一个编号,直接进入 /apply。
/interview:面试准备
收到面试邀请了?
/interview
AI 会:
- 从档案里调出你投这个岗位时用的 exact 版本的简历和求职信(面试官看的就是这个版本!)
- 调研公司和面试官背景(遵循「验证后使用」原则)
- 预测可能的面试问题,映射到你的 STAR 案例
- 为你的短板准备诚实的「桥梁答案」——绝不编造经历
- 陪你进行模拟面试(角色扮演模式)
最贴心的设计:它用的是你当时投递的那个版本的材料,而不是最新版本。因为面试官手里拿的就是当时的版本,你准备的也应该是同一个版本。
/outcome:结果追踪
/outcome
记录申请结果——面试了几轮、拿到 offer 了吗、被拒了吗、还是石沉大海了。
AI 会:
- 把所有材料归档到
documents/applications/<公司>_<职位>/ - 更新追踪表格
- 当有了足够多的结果后,引导你回到
/setup重新校准匹配框架——用真实的面试反馈来优化你的搜索方向
这才是真正的「数据驱动求职」。不是凭感觉投,而是根据实际结果不断迭代你的策略。
/expand:能力挖掘
/expand
扫描你档案里提到的公开链接(GitHub、作品集、Kaggle、Google Scholar),以及课程和证书的大纲,从中发现更多你可能没意识到的技能点,补充到你的档案里。
很多技能你自己都忘了你会。AI 帮你挖出来。
/upskill:技能差距分析
/upskill
或者针对某个特定岗位:
/upskill https://job-url...
AI 会分析你的档案和目标岗位(或目标方向)之间的差距,生成:
- 技能差距热力图(优先级排序)
- 学习计划(带时间估算)
- 网络搜索到的学习资源
求职不是目的,成长才是。就算暂时没拿到 offer,你也知道接下来该补什么。
/add-template:自定义模板
想用自己的 LaTeX 简历模板?
/add-template
AI 会:
- 记录你的模板信息(编译引擎、字体、样式规则、页数限制)
- 跑一次测试编译确保没问题
- 把模板接入到
/apply工作流中
/add-portal:添加本地招聘网站
/add-portal
AI 会帮你为任何一个公开招聘网站生成搜索 CLI 技能——分析搜索 URL 模式、结果结构、访问规则,然后搭脚手架、跑一次真实查询测试,最后注册到系统中。
这就是为什么这个项目不局限于丹麦市场——你可以给任何国家的任何招聘网站做适配。---
为什么它敢说「不编造」
这是 ai-job-search 最让我敬佩的一点:它从设计上就杜绝了造假。
所有出现在简历和求职信里的内容,必须能在你的档案里找到依据。AI 不会:
- ❌ 编造你没有的技能或经验
- ❌ 夸大你的职位或职责
- ❌ 硬塞关键词来蒙混 ATS
- ❌ 给你准备假的面试答案
遇到差距怎么办?如实标注。
诚实不是一种道德选择,而是一种策略。靠造假拿到的面试,最终也会在面试中露馅。不如把时间花在真正提升自己上。---
适合谁?不适合谁?
✅ 强烈推荐
- 正在找工作的开发者和知识工作者 — 尤其是技术岗,和 Claude Code 的契合度最高
- 投递了很多但回音很少的人 — 可能不是你不够好,是简历没优化到位
- 想系统规划职业发展的人 — 不只是找一份工作,而是想清楚下一步怎么走
- 重视效率、喜欢自动化的人 — 如果你已经在用 Claude Code 写代码,上手零成本
- 隐私敏感的人 — 所有数据在你自己的 Fork 里,完全私有
⚠️ 需要考虑
- 完全不会用命令行的人 — 虽然 Claude Code 已经很友好了,但还是需要一点终端基础
- 对 LaTeX 有恐惧的人 — 不过你不需要懂 LaTeX,AI 会帮你搞定一切
- 期望值管理 — AI 能帮你提升效率和质量,但不能替你拿到 offer
❌ 不适合
- 想靠 AI 编造简历、一步登天的人
- 不愿意花时间完善自己档案的人(垃圾进,垃圾出)
- 期待 AI 帮你直接找到工作的人(工具是放大器,不是替代品)
---
一些真实的声音
「这个项目最厉害的不是技术,而是它把职业咨询的方法论编码进了系统。结构化评估、诚实原则、PDF 版式迭代、ATS 关键词核对——这些都是专业职业顾问会做的事,现在 AI 帮你做了。」
— GitHub Trending 评论
「Fork 即用的产品形态太聪明了。每个人 fork 之后就是自己的私有工作空间,招聘门户可以扩展到任何市场。在 AI 辅助就业这个话题下,这是我见过最完整的开源方案。」
— 社区用户
「我最喜欢的是 /outcome 命令。大多数人投简历就像买彩票,投出去就忘了。但这个工具帮你追踪每一个结果,然后用真实数据校准你的策略——这才是正确的求职方式。」---
— 独立开发者
写在最后
找工作这件事,本质上是一个匹配问题。
你有你的技能、经验、诉求;公司有它的需求、文化、预算。两边对上了,offer 自然就来了。
但大多数人找不到好工作,不是因为他们不匹配,而是因为——
- 他们不知道有哪些岗位在招人
- 他们的简历没能准确传达自己的价值
- 他们在不匹配的岗位上浪费了太多时间
- 他们没有从每次面试中学习和迭代
ai-job-search 解决的就是这些问题。它不能替你面试,不能替你做决定,但它能把你从机械劳动中解放出来,让你把时间花在真正重要的事情上。
就像 Claude Code 让编码效率提升了 10 倍一样,ai-job-search 能让你的求职效率提升 10 倍。
试一下吧。你可能会惊讶——原来找工作可以这么高效。
---
快速开始(再放一次)
bash
1. Fork 并克隆
gh repo fork MadsLorentzen/ai-job-search --clone
cd ai-job-search
2. 启动 Claude Code
claude
3. 建立你的档案
/setup
4. 投出第一份申请
/apply <职位链接或描述>
祝你好运。
---
参考资料
[1] ai-job-search GitHub 仓库:https://github.com/MadsLorentzen/ai-job-search
[2] 官方设置指南(SETUP.md):https://github.com/MadsLorentzen/ai-job-search/blob/master/SETUP.md
[3] Claude Code 官方文档:https://docs.anthropic.com/en/docs/claude-code
[4] freehire.dev — 全球技术岗位聚合:https://freehire.dev/
[5] moderncv — LaTeX 简历模板:https://www.ctan.org/pkg/moderncv