开源项目

career-ops

career-ops

AI驱动的求职搜索系统,基于 Claude Code 将岗位筛选、简历生成、应用跟踪全流程自动化。亮点在于 14 种评估模式、Go 终端仪表盘和批量并行处理,作者靠它 740+ 岗位筛选后成功拿下Head of Applied AI职位。注意 AI 评估建议需人工复核,切勿自动投递,使用前务必阅读免责声明。

README

Career-Ops

English | Español | Português (Brasil) | 한국어 | 日本語 | Українська | Русский | 繁體中文

Career-Ops — 多智能体求职系统

我花了几个月用传统方式投递简历。所以我亲手打造了当初希望拥有的系统。
公司用 AI 筛选候选人。 我只是给候选人一方 AI,让 TA 们去选择公司。
现在它开源了。

Claude Code OpenCode Gemini CLI Codex Node.js Go Playwright MIT 商标政策 Discord
EN ES DE FR PT-BR KO JA ZH-CN ZH-TW


Career-Ops 演示

评估 740+ 个职位 · 生成 100+ 份定制简历 · 拿下 1 个理想岗位

Discord

这是什么

Career-Ops(career-ops.org,也叫做 careerops)将任何 AI 编程 CLI 转变为一个完整的求职指挥中心。你不再需要手动在电子表格中跟踪投递情况,而是获得一个 AI 驱动的流水线,它可以:

  • 评估 offer — 使用结构化的 A-F 评分系统(10 个加权维度)
  • 生成定制 PDF — 针对每个职位描述优化的 ATS(申请人跟踪系统)友好简历
  • 自动扫描招聘门户 — 支持 Greenhouse、Ashby、Lever、公司招聘页面
  • 批量处理 — 通过子智能体并行评估 10+ 个 offer
  • 跟踪一切 — 在单一可信源中记录,并包含完整性检查

重要提示:这并非“广撒网”式工具。 Career-ops 是一道过滤器 — 它帮你从数百个机会中找到少数几个值得投入时间的 offer。系统强烈不建议对评分低于 4.0/5 的职位进行投递。你的时间很宝贵,招聘者的时间也一样。在提交前务必人工审查。

Career-ops 是自主的:Claude Code 用 Playwright 浏览招聘页面,通过推理你的简历与职位描述(而非关键词匹配)来评估匹配度,并根据每个职位调整你的简历。

友情提醒:最初的评估效果可能不佳。 系统还不了解你。请向它输入背景信息——你的简历、职业故事、成就亮点、偏好、擅长什么、想避开什么。你投入越多,它表现越好。把它想象成入职一位新招聘人员:第一周需要了解你,之后他们就会变得不可或缺。

本工具由一位用户打造,他用它评估了 740+ 个职位机会,生成了 100+ 份定制简历,最终获得了一份应用 AI 负责人的职位。阅读完整案例研究。

功能

功能 描述
自动流水线 粘贴一个 URL,获得完整的评估 + PDF + 跟踪条目
六维度评估 角色概要、简历匹配、级别策略、薪酬调研、个性化定制、面试准备(STAR+R)
面试故事库 在多次评估中累积 STAR+反思故事 — 5-10 个能回答任何行为问题的核心故事
谈判脚本 薪资谈判框架、地域折扣应对策略、竞品 offer 筹码
ATS PDF 生成 使用 Space Grotesk + DM Sans 字体,注入关键词的简历
门户扫描器 预配置 45+ 家公司(Anthropic、OpenAI、ElevenLabs、Retool、n8n…)+ 跨 Ashby、Greenhouse、Lever、Wellfound 的自定义查询
批量处理 使用 claude -p 工作进程并行评估
仪表盘 TUI 终端 UI,用于浏览、筛选和排序你的流水线
人在回路中 AI 评估并推荐,你决策并行动。系统绝不自动投递——你始终拥有最终决定权
流水线完整性 自动合并、去重、状态规范化、健康检查

快速开始

# 1. 克隆并安装
git clone https://github.com/santifer/career-ops.git
cd career-ops && npm install
npx playwright install chromium   # PDF 生成所需

# 2. 检查设置
npm run doctor                     # 验证所有前置条件

# 3. 配置
cp config/profile.example.yml config/profile.yml  # 编辑你的信息
cp templates/portals.example.yml portals.yml       # 自定义公司列表

# 4. 添加简历
# 在项目根目录创建 cv.md,用 markdown 格式写下你的简历

# 5. 通过 Claude 进行个性化
claude   # 在此目录下打开 Claude Code

# 然后让 Claude 将系统适配到你:
# "将职位形态改为后端工程方向"
# "将模式翻译为英文"
# "在 portals.yml 中添加以下 5 家公司"
# "用我粘贴的简历更新我的个人资料"

# 6. 开始使用
# 粘贴一个职位 URL,或者运行 /career-ops

系统设计为由 Claude 自身进行定制。 模式、职位形态、评分权重、谈判脚本——直接让 Claude 去修改它们。它能够读取自己使用的文件,因此清楚地知道要编辑什么。

完整设置指南参见 docs/SETUP.md。

Gemini CLI 集成

Career-ops 原生支持 Gemini CLI — 支持方式与 Claude Code 和 OpenCode 相同。所有 15 个斜杠命令均可使用,共享同一套 modes/*.md 评估逻辑。

选项 A — 原生 Gemini CLI(推荐)

# 1. 安装 Gemini CLI
npm install -g @google/gemini-cli
# 或:npx @google/gemini-cli --version

# 2. 认证(免费 — 使用你的 Google 账号)
gemini auth

# 3. 在 career-ops 目录下运行
cd career-ops
gemini

# 4. 像使用 Claude Code 一样使用斜杠命令
/career-ops "Senior AI Engineer at Anthropic..."
/career-ops-evaluate --file ./jds/openai.txt
/career-ops-scan
/career-ops-pdf
/career-ops-tracker

GEMINI.md 文件会自动加载为上下文。所有 15 条命令定义在 .gemini/commands/*.toml 中。

选项 B — 独立 API 脚本(无需安装 CLI)

# 1. 在 https://aistudio.google.com/apikey 获取免费 API 密钥
cp .env.example .env
# 编辑 .env → 设置 GEMINI_API_KEY=你的密钥

# 2. 安装依赖
npm install

# 3. 评估职位描述
node gemini-eval.mjs "我们正在寻找一名资深 AI 工程师..."
node gemini-eval.mjs --file ./jds/my-job.txt
npm run gemini:eval -- "职位描述文本"

免费层: 两种选项均可免费使用,无需计费。原生 CLI 使用 Google OAuth;API 脚本使用 gemini-2.5-flash(15 RPM,每天 100 万 token 免费)。

使用方法

Career-ops 是一个包含多种模式的斜杠命令:

/career-ops                → 显示所有可用命令
/career-ops {粘贴职位描述}  → 完整自动流水线(评估 + PDF + 跟踪)
/career-ops scan           → 扫描招聘门户获取新机会
/career-ops pdf            → 生成 ATS 友好简历
/career-ops batch          → 批量评估多个 offer
/career-ops tracker        → 查看投递状态
/career-ops apply          → 用 AI 填写申请表单
/career-ops pipeline       → 处理待处理 URL
/career-ops contacto       → LinkedIn 求职消息
/career-ops deep           → 深度公司调研
/career-ops training       → 评估一门课程/证书
/career-ops project        → 评估一个作品集项目

或者直接粘贴一个职位 URL 或描述 — Career-ops 会自动识别并运行完整流水线。

工作原理

你粘贴一个职位 URL 或描述
        │
        ▼
┌──────────────────┐
│  职位形态         │  分类:LLMOps(大语言模型运维)/ Agentic(智能体)/
│  检测             │  PM(产品经理)/ SA(解决方案架构师)/ FDE(全栈数据工程师)/ Transformation(转型)
└────────┬─────────┘
         │
┌────────▼─────────┐
│  A-F 评估        │  匹配度、差距分析、薪酬调研、STAR 故事
│  (读取 cv.md)    │
└────────┬─────────┘
         │
    ┌────┼────┐
    ▼    ▼    ▼
 评估报告 PDF  跟踪文件
  .md   .pdf   .tsv

预配置的门户

扫描器已为 45+ 家公司 配置好待扫描,并在主要求职平台上配置了 19 个搜索查询。将 templates/portals.example.yml 复制为 portals.yml 并添加你自己的:

AI 实验室: Anthropic、OpenAI、Mistral、Cohere、LangChain、Pinecone 语音 AI: ElevenLabs、PolyAI、Parloa、Hume AI、Deepgram、Vapi、Bland AI AI 平台: Retool、Airtable、Vercel、Temporal、Glean、Arize AI 联络中心: Ada、LivePerson、Sierra、Decagon、Talkdesk、Genesys 企业级: Salesforce、Twilio、Gong、Dialpad LLMOps(大语言模型运维): Langfuse、Weights & Biases、Lindy、Cognigy、Speechmatics 自动化: n8n、Zapier、Make.com 欧洲: Factorial、Attio、Tinybird、Clarity AI、Travelperk

被搜索的求职平台: Ashby、Greenhouse、Lever、Wellfound、Workable、RemoteFront

默认情况下,node scan.mjs(即 npm run scan)信任每个 ATS(申请人跟踪系统)源返回的内容。有些公司即使在职位关闭后仍会在其公开 API 中保留过时信息,因此这些过期条目可能泄露到 pipeline.md 中。传递 --verify 参数可在 API 扫描后启动 Playwright,在过期条目进入流水线之前将其剔除:

node scan.mjs --verify          # 零 token 发现 + Playwright 存活检查

验证是串行的,仅针对新 offer(去重后),因此成本可控。

仪表盘 TUI

内置的终端仪表盘让你以可视化方式浏览流水线:

cd dashboard
go build -o career-dashboard .
./career-dashboard --path ..

特性:6 个过滤标签、4 种排序模式、分组/扁平视图、惰性加载预览、内联状态更改。

项目结构

career-ops/
├── AGENTS.md                    # 规范化的智能体指令(所有 CLI 共享)
├── CLAUDE.md                    # Claude Code 封装器(导入 AGENTS.md)
├── cv.md                        # 你的简历(需创建)
├── article-digest.md            # 你的成就亮点(可选)
├── config/
│   └── profile.example.yml      # 个人资料模板
├── modes/                       # 14 个技能模式
│   ├── _shared.md               # 共享上下文(自定义此项)
│   ├── oferta.md                # 单次评估
│   ├── pdf.md                   # PDF 生成
│   ├── scan.md                  # 门户扫描器
│   ├── batch.md                 # 批量处理
│   └── ...
├── templates/
│   ├── cv-template.html         # ATS 友好简历模板
│   ├── portals.example.yml      # 扫描器配置模板
│   └── states.yml               # 规范化的状态
├── batch/
│   ├── batch-prompt.md          # 自包含的工作进程提示
│   └── batch-runner.sh          # 编排脚本
├── dashboard/                   # Go TUI 流水线查看器
├── data/                        # 你的跟踪数据(已 gitignore)
├── reports/                     # 评估报告(已 gitignore)
├── output/                      # 生成的 PDF(已 gitignore)
├── fonts/                       # Space Grotesk + DM Sans 字体
├── docs/                        # 设置、自定义、架构
└── examples/                    # 示例简历、报告、成就亮点

技术栈

Claude Code Node.js Playwright Go Bubble Tea

  • 智能体:Claude Code,带有自定义技能和模式
  • PDF:Playwright/Puppeteer + HTML 模板
  • 扫描器:Playwright + Greenhouse API + WebSearch
  • 仪表盘:Go + Bubble Tea + Lipgloss(Catppuccin Mocha 主题)
  • 数据:Markdown 表格 + YAML 配置 + TSV 批处理文件

其他开源项目

  • cv-santiago — 个人作品集网站(santifer.io),包含 AI 聊天机器人、LLMOps(大语言模型运维)仪表盘和案例分析。如果你需要一个与求职搭配的作品集网站,可以 fork 它并改造成你自己的。

关于作者

我是 Santiago — 应用 AI 负责人,前创业者(曾创立并出售一家企业,至今仍以我的名字运营)。我构建 Career-ops 来管理自己的求职过程。它成功了:我用它拿到了现在这个职位。

我的作品集和其他开源项目 → santifer.io

Star 历史

Star 历史图表

免责声明

career-ops 是一个本地开源工具 — 而非托管服务。 使用本软件即表示你确认:

  1. 你控制自己的数据。 你的简历、联系信息和个人数据保留在你的机器上,并直接发送给你选择的 AI 提供商(Anthropic、OpenAI 等)。我们不会收集、存储或访问你的任何数据。
  2. 你控制 AI。 默认提示词指示 AI 不要自动提交申请,但 AI 模型可能表现出不可预测的行为。如果你修改提示词或使用不同模型,风险自负。在提交前,务必核实 AI 生成的内容是否准确。
  3. 你遵守第三方服务条款。 你必须按照你交互的招聘门户网站(Greenhouse、Lever、Workday、LinkedIn 等)的服务条款使用本工具。不要使用本工具骚扰雇主或使 ATS(申请人跟踪系统)过载。
  4. 无任何保证。 评估结果是推荐,而非真理。AI 模型可能虚构技能或经验。作者不对求职结果、申请被拒、账号限制或任何其他后果承担责任。

完整条款参见 LEGAL_DISCLAIMER.md。本软件按“现状”提供,依据 MIT 许可证 授权,不提供任何形式的明示或默示保证。

贡献者

通过 Career-ops 找到工作了吗?分享你的故事!

许可与商标

代码使用 MIT 许可证授权。"career-ops" 名称和品牌受 商标政策 约束 — 社区用途宽松,商业产品命名和背书用途保留。

保持联系

网站 LinkedIn X Discord 邮箱

开源项目santifer2026-06-06原文

相关内容