我用 Claude Code 构建了一个多代理求职系统 — 631 次评估,12 种模式

发布: (2026年3月17日 GMT+8 18:07)
7 分钟阅读
原文: Dev.to

Source: Dev.to

请提供您希望翻译的正文内容,我将按照要求保留源链接并翻译文本。

我构建的内容

一个拥有 12 种运行模式的多代理系统,每种模式都是一个拥有独立上下文和规则的 Claude Code 技能文件。不是单一脚本——而是一个能够对问题域进行推理的代理。

关键架构选择: 使用模式而非一个长提示

career-ops/
├── modes/
│   ├── _shared.md          # 北极星原型,证明点
│   ├── auto-pipeline.md    # 完整流水线:JD → 评估 → PDF → 跟踪器
│   ├── oferta.md           # 单一报价评估(A‑F)
│   ├── batch.md            # 使用工作者的并行处理
│   ├── pdf.md              # 针对每个报价的 ATS 优化简历
│   ├── scan.md             # 门户发现
│   ├── apply.md            # Playwright 表单填写
│   └── ... (共 12 个)
├── reports/                # 631 个评估文件
├── output/                 # 生成的 PDF
├── applications.md         # 中央跟踪器
└── scan-history.tsv        # 680 条去重 URL

为什么使用模式? 每个模式只加载它所需的上下文。auto‑pipeline 跳过联系规则,apply 跳过评分逻辑。上下文越少 → LLM 做出更好的决策。

10 维度评分

每个 offer 都会通过加权评估框架进行评估。

DimensionWhat It MeasuresWeight
Role MatchAlignment with CV proof pointsGate‑pass
Skills AlignmentTech stack overlapGate‑pass
SeniorityStretch levelHigh
CompensationMarket rate vs targetHigh
GeographicRemote/hybrid feasibilityMedium
Company StageStartup/growth/enterprise fitMedium
Product‑Market FitProblem domain resonanceMedium
Growth TrajectoryCareer ladder visibilityMedium
Interview LikelihoodCallback probabilityHigh
TimelineHiring urgencyLow

Role MatchSkills Alignment 为 gate‑pass 维度——如果未通过,最终得分会下降,无论其他得分如何。 74 % 的评估 offer 得分低于 4.0。

管道

auto‑pipeline 是旗舰模式。一个 URL 输入,输出如下:

  1. 提取 JD – Playwright 导航到该 URL,提取结构化内容。
  2. 评估 10D – Claude 阅读 JD + CV + 作品集,生成评分。
  3. 生成报告 – Markdown 包含六个块:摘要、简历匹配、级别、薪酬、个性化、面试概率。
  4. 生成 PDF – HTML 模板 + 关键字注入 + Puppeteer 渲染。
  5. 注册跟踪器 – 通过 Node.js 脚本自动合并 TSV。
  6. 去重 – 检查 scan-history.tsv 中的 680 个 URL。零次重新评估。

批处理

对于大批量,批处理模式 会启动一个指挥者来协调并行工作者。

# conductor spawns N workers, each an independent Claude Code process
./batch-runner.sh --input batch/batch-input.tsv --workers 4

# Each worker:
# 1. Claims a URL from the queue (lock file prevents doubles)
# 2. Runs auto-pipeline
# 3. Writes result to batch-state.tsv
# 4. Picks next URL
  • 并行处理 122 个 URL。
  • 容错:单个工作者的失败不会阻塞其他工作者。
  • 可恢复:读取状态并跳过已完成的项目。

AI 简历生成器

通用 PDF 往往失效。Career‑Ops 为每个职位生成不同的 ATS‑优化简历:

  • 从职位描述(JD)中提取 15‑20 个关键词。
  • 检测语言(例如,英文 JD → 英文简历)。
  • 检测地区(美国 → Letter 纸张,欧洲 → A4 纸张)。
  • 检测原型(6 种预设:AI 平台、Agentic、PM、SA、FDE、Transformation)。
  • 按相关性挑选 3‑4 个项目。
  • 重新排序要点——最相关的经验排在前面。
  • 渲染 PDF——使用 Puppeteer、自托管字体、单栏 ATS 安全格式。

同一份简历,六种不同的呈现方式。全部真实——关键词会被重新表述,绝不捏造。

结果

两个月的生产(真实数据,非演示):

  • 631 份报告已生成
  • 68 份申请已发送
  • 354 份 PDF 已生成
  • 680 个 URL 已去重
  • 0 次重新评估

What I Learned

  • 自动化分析,而非决策。 Career‑Ops 评估了 631 份报价;我决定哪些值得投入我的时间。人类在环是设计特性,而不是限制。
  • 模式胜过冗长提示。 十二种专注模式的效果优于单一的 10 k token 系统提示。我的早期尝试使用一个巨大的提示,质量非常糟糕。
  • 去重比评分更有价值。 680 条去重后的 URL 节省了 680 次不必要的评估——这是回报率最高的枯燥基础设施。
  • 简历是论点,而非文档。 针对原型定制论据和表述的效果远胜于千篇一律的 PDF。
  • 系统即作品集。 构建一个多代理求职系统本身就是对多代理角色能力的直接证明。

技术栈

  • Claude Code – LLM 代理:推理、评估、内容生成
  • Playwright – 浏览器自动化:门户扫描和表单填写
  • Puppeteer – 从 HTML 模板渲染 PDF
  • Node.js – 实用脚本:merge‑tracker、cv‑sync‑check
  • tmux – 并行会话:批量的指挥者 + 工作者

完整案例研究

https://santifer.io/career-ops-system

0 浏览
Back to Blog

相关文章

阅读更多 »