AI Job Search: Transform Claude Code into a job search pipeline to evaluate jobs, customize resumes, write cover letters, prepare for interviewsAI Job Search:把 Claude Code 改造成一条求职流水线,评估岗位、定制简历、写求职信、备面试
This is a job search framework running in your native, built on Claude Code. The author himself is a graduate of the geophysical science class. After his post was cut at the end of 2025, he used this workflow to find himself a job: 69 custom applications, 20 scenes, and finally got an offer. In June 2026, he joined as an AI engineer - and then open-sourced it. After erasing the personal story, it is actually a very clear engineering process:/setup filing,/scrape job grabbing,/rank bulk grading,/apply custom application,/interview interview preparation. Licensed by mit, the number of stars has exceeded 46,000.
这是一个跑在你本机的求职框架,基于 Claude Code 构建。作者本人是地球物理学科班出身,2025 年底岗位被裁掉之后,他用这套工作流给自己找工作:69 份定制申请、20 场一面、最后拿到offer,2026 年 6 月入职成为一名 AI 工程师——然后把它开源了。抹掉个人故事之后它其实是一套很清晰的工程化流程:/setup 建档、/scrape 抓岗位、/rank 批量打分、/apply 定制申请、/interview 面试准备。MIT 许可,star 数已经超过 4.6 万。

. was all about:它到底是什么
In a nutshell: Turn Claude Code from a “coding tool” into a “resume partner,” and the whole process is structured and repeatable, rather than just asking and generating a cover letter.
The core is a pipeline of five slash commands:/setup builds a personal profile,/scrape searches and weighs jobs from multiple recruitment sites,/rank scores and sorts the captured jobs according to the matching degree,/apply produces customized materials for a certain job, and/interview prepares interviews for you.
The README specifically states one thing: the core workflows (self-portrait, fit assessment, draft-review application pipeline) are language- and country-independent, but the built-in job search skills are done by the Danish market (Jobindex, Jobnet, Akademikernes Jobbank, etc.).
However, this model is itself a product: those search skills are replaceable, just follow the same structure and connect with your local mainstream recruitment platform.
It is embedded with a set of career coaching methodologies: structured assessment criteria, a forward-looking cover letter narrative framework, and optional salary benchmarking.
一句话:把 Claude Code 从「写代码的工具」变成「投简历的搭档」,而且整个流程是结构化、可重复的,不是随手问一句生成一封求职信。
核心是五个斜杠命令串成的流水线:/setup 建立个人档案,/scrape 从多个招聘站点搜岗位并去重,/rank 把抓到的岗位按匹配度批量打分排序,/apply 针对某一个岗位产出定制材料,/interview 帮你准备面试。
README 特别说明了一件事:核心工作流(自我画像、匹配度评估、起草—审阅申请管线)是语言和国家无关的,但内置的岗位搜索技能是按丹麦市场做的(Jobindex、Jobnet、Akademikernes Jobbank 等)。
不过这个模式本身就是产品:那些搜索技能是可替换的,照同样的结构接你本地的主流招聘平台即可。
它内嵌的是一套职业指导方法论:结构化的评估标准、向前看的求职信叙述框架,以及可选的薪资基准比对。
How does the pipeline run?流水线是怎么跑的
Step 1: Fill in the file:/setup provides three paths - read your documents/directory (put the CV PDF, LinkedIn export, degree certificate, recommendation letter, past application materials), paste a resume into the conversation to import, or ask the information in a question-and-answer manner. It will automatically recognize what materials you have and then decide which one to go, and the mode of reading the catalog is idempotent, and you can add things to the catalog repeatedly.
Step 2 Grab Jobs:/scrape searches multiple hiring sites for jobs that match your profile, and sorts them by match after deduplication. If there are too many positions you don't want to look at one at a time, you can run/rank to get a short list.
Step 3 Application:/apply will go through the entire process - assessing matches, drafting resumes and cover letters, reviewing the agent for faults, revising, outputting final drafts. Some recruitment sites block automated access, and you can glue the entire job description in when you can't catch the link.
Resumes and cover letters are generated in LaTeX and compiled into PDFs: resumes are compiled in lualatex (pdflatex on modern MiKTeX is often wrong due to fontawesome5 fonts), and cover letters are compiled in xelatex (because the template relies on fontspec).
Another practical detail:/apply comes with an ATS parsability check. Use pypdf or Poppler's pdftotext to determine whether your PDF can be parsed properly by the resume screening system. When both are missing, it will be relegated to a keyword visual check.
第一步填档案:/setup 提供三条路径——读你的 documents/ 目录(放 CV 的 PDF、LinkedIn 导出、学位证书、推荐信、过往申请材料)、粘贴一份简历到对话里导入、或者用一问一答的方式把信息问出来。它会自动识别你手上有什么材料再决定走哪条,而且读目录这个模式是幂等的,后续往目录里加东西可以反复重跑。
第二步抓岗位:/scrape 会在多个招聘站点里搜索符合你档案的职位,去重后按匹配度排序展示。如果一次抓回来的岗位多到你不想逐个看,可以先跑 /rank 批量打分,拿一份排好序的短名单。
第三步申请:/apply <岗位链接> 会跑完整个流程——评估匹配度、起草简历和求职信、再由审阅智能体挑毛病、修订、输出定稿。有些招聘站点会拦自动化访问,抓不到链接时直接把岗位描述整段粘进去也可以。
简历和求职信是用 LaTeX 生成并编译成 PDF 的:简历用 lualatex 编译(现代 MiKTeX 上 pdflatex 常因 fontawesome5 字体展开报错),求职信用 xelatex 编译(因为模板依赖 fontspec)。
还有一个很务实的细节:/apply 里带一个 ATS 可解析性检查,用 pypdf 或 Poppler 的 pdftotext 判断你的 PDF 能不能被简历筛选系统正常解析出来;两者都缺时会降级成关键词目视检查。

Drafter + Reviewer: The most copyworthy layer of the process起草者 + 审阅者:这套流程里最值得抄的一层
The overwhelming majority of people use AI to write cover letters when the question is “once in a while,” and you can use whatever the model writes. This frame breaks it into two characters.
The drafting role is responsible for generating the first version based on the job description and the real experience in your profile; the review role then intervenes and selects the questions according to a clear set of criteria before they are revised and finalized.
This is the same idea as code review in software engineering: generating and reviewing are separated to steadily push quality up.
The same idea applies to interview preparation -/interview generates the questions and responses you need to prepare for a specific role, rather than giving a generic interview eight strands.
If you only take one trick from this article, take this one: let the AI write it again, the cost is very low, and the effect is much worse.
绝大多数人用 AI 写求职信的问题是「一次成型」,模型写什么你就用什么。这套框架把它拆成两个角色。
起草角色负责根据岗位描述和你档案里的真实经历生成第一版;审阅角色随后介入,按一套明确的标准去挑问题,然后才修订成定稿。
这跟软件工程里的 code review 是同一个思路:生成和审查分离,才能稳定地把质量往上推。
同样的思路也用在面试准备上——/interview 会针对具体岗位生成需要准备的问题和你的应答素材,而不是给一份通用的面试八股。
如果你只从这篇文章里带走一个技巧,那就带这一条:让 AI 写完自己再批一遍,成本很低,效果差很多。
What environment to prepare for需要准备什么环境
Claude Code (CLI) - Note that it does not have a free file, you need a Claude Pro/Max/Team subscription or Anthropic's API credits (pay as you go, it's usually cheaper to use occasionally).
If you are using other agent tools (Codex, Gemini CLI, Antigravity, etc.), you can start with the repository's agents.md: the portal search class skill is ready to use out of the box, and the community fork is adapted to the full workflow.
Python 3.10 + and Bun (job search CLI relies on it).
A set of LaTeX distributions with lualatex and xelatex: TeX Live, MacTeX, TinyTeX or MiKTeX. With a lite distribution like TinyTeX/BasicTeX, you need to refill the extra macro packages with SETUP.md.
Optional: pip install pypdf for the ATS parsing check mentioned above.
Claude Code(CLI)——注意它没有免费档,你需要 Claude Pro/Max/Team 订阅或者 Anthropic 的 API 额度(按量付费,偶尔使用通常更便宜)。
如果你用的是别的智能体工具(Codex、Gemini CLI、Antigravity 等),可以从仓库的 AGENTS.md 入手:门户搜索类技能开箱即用,社区 fork 则适配了完整工作流。
Python 3.10+ 和 Bun(岗位搜索 CLI 依赖它)。
一套带 lualatex 和 xelatex 的 LaTeX 发行版:TeX Live、MacTeX、TinyTeX 或 MiKTeX。用 TinyTeX/BasicTeX 这类精简发行版的话,需要按 SETUP.md 补装额外宏包。
可选:pip install pypdf 用于上文提到的 ATS 解析检查。
Data Security: A Pit That Must Be Alerted数据安全:一个必须提醒的坑
/setup writes your personal data - name, contact details, resume, expected salary - to a file in the warehouse that is tracked by git.
GitHub does not allow private forks to be created for public repositories: the repository you fork out is always public.
So if you are using it for your own use and not to contribute to the upstream, the right thing to do is to create a new private warehouse, add this project as an upstream remote, and then write your file to the private warehouse. Section 8 of SETUP.md gives steps that take two minutes to complete.
The fork path should only be taken if you intend to contribute changes upstream.
/setup 会把你的个人数据——姓名、联系方式、履历、期望薪资——写入仓库里被 git 跟踪的文件。
而 GitHub 不允许对公开仓库创建私有 fork:你 fork 出来的这个仓库永远是公开的。
所以如果你是自用而不是为了给上游提贡献,正确做法是:新建一个私有仓库,把这个项目加为 upstream 远程,然后再往私有仓库里写你的档案。SETUP.md 第 8 节给了两分钟就能做完的步骤。
只有当你打算向上游贡献改动时,才应该走 fork 这条路。
Use reminder使用提醒
This site organizes resources from the GitHub open source repository MadsLorentzen/ai-job-search (mit license), for learning exchanges only. The project is an independent open source project and is not affiliated with Anthropic. Please note when using: Do not push the warehouse containing your resume to a public location; please make sure to read and submit the generated materials yourself, and the resume and cover letter represent you. The process in this article is organized from the project public README and SETUP.md. The specific commands may evolve with the version. Please refer to the latest documents of the warehouse.
本站整理的资源来自 GitHub 开源仓库 MadsLorentzen/ai-job-search(MIT 许可),仅供学习交流。该项目是一个独立开源项目,与 Anthropic 无隶属关系。使用时请注意:不要把包含个人履历的仓库推到公开位置;生成的材料请务必自己通读一遍再投递,简历与求职信代表的是你本人。文中流程整理自项目公开 README 与 SETUP.md,具体命令可能随版本演进,请以仓库最新文档为准。
⬇ Download · 点击下载:AI Job Search 源码包(1.47MB)
取自 MadsLorentzen/ai-job-search master 分支,MIT 许可,含 /setup /scrape /rank /apply /interview 全套技能、LaTeX 简历模板与岗位搜索 CLI
阅读与点赞数据保存在你的浏览器本地,欢迎留下你的想法。
今日正能量学一点,用一点;今天种下的种子,会长成明天的能力。去免费下载专区 →广告
评论 文明发言,让讨论更有价值