Career-Ops を初めて知った方は Career-Ops とは何か? を先に読むのを推奨。30秒で全体像と設計思想を把握できる。本記事は完全な技術リファレンス。
2026年4月、Santiago Fernández de Valderrama 氏が Claude Code 製の AI求職システム Career-Ops をオープンソース化した。氏自身の求職活動で 740件のJD評価から1件の内定(Head of Applied AI) までを回した実装で、リポジトリは公開1週間で 43,800スター を突破した。2026年5月14日時点で 44,554スター / 9,353フォーク、派生実装も多数生まれている。
本記事は Career-Ops を Claude Code Skill 束 として公的にリファレンス化したもの。GitHub の README.md、AGENTS.md、著者の santifer.io ブログ、dev.to の深掘り記事、そして主要な派生3実装のソースを照合して整理した。14 skill modes 全カタログ、10評価軸(ブロックA〜G)、並列バッチ処理を支える マルチエージェント設計、主要派生3つの差分まで網羅する。
Claude Code Skill 束を設計する人、Career-Ops を自分の求職に使うか検討している人、派生実装を比較したい人のためのルックアップページとして使ってほしい。
Career-Ops とは
Career-Ops は Claude Code Skill 束で、求職活動を「JDを読む → CVを直す → フォーム入力 → トラッキング」の手作業から、エージェント駆動のパイプラインに変える。著者は GitHub README でこう書いている:“I spent months applying to jobs the hard way. So I engineered the system I wish I had.”(手作業の応募を何ヶ月もやった後、欲しかったシステムを自分で作った)。
著者の2026年3月の求職活動で記録された数値:
| 指標 | 値 |
|---|---|
| 評価したJD数 | 631 |
| プール全体で重複排除されたURL | 680 |
| 生成したカスタマイズPDF | 354 |
| 実応募数 | 66 |
| 開始した選考プロセス | 12 |
| 受諾オファー | 1(Head of Applied AI) |
この数字には3つ意味がある。まず 6.6:1 の評価-応募比 は意図設計。Career-Ops は数撃ち系ではなく「絞り込み装置」として設計されている。次に 重複排除 680件 が「同じ求人が3つのポータルに出てる問題」を吸収する最大のレバーで、著者は「スコアリング最適化より重複排除のほうが時間を節約した」と書いている。最後に、自動応募は一切しない — 人間レビューが応募ゲートになる。
GitHubリポジトリ:santifer/career-ops。デフォルトブランチ main、MITライセンス(コミュニティ利用に寛容な商標ポリシー付き)。
14 Skill Modes 完全カタログ
Career-Ops は 14 modes で構成され、それぞれが modes/ ディレクトリ配下の独立した Markdown ファイル。著者の設計ルールは dev.to の記事に明文化されている:「各モードは自分が必要なコンテキストだけをロードする。auto-pipeline は連絡先ルールをスキップする。apply はスコアリングロジックをスキップする」。1モード1責務の隔離が、システムを保守可能にしている核心設計。
2026年5月時点の14 modes:
| # | Mode | 役割 |
|---|---|---|
| 1 | Oferta | 単一JD評価。6ブロック A〜F スコア付きレポートを生成。 |
| 2 | JD別にキーワード注入された ATS最適化CV生成。 | |
| 3 | Scan | 45社以上のプリセット企業(Greenhouse, Ashby, Lever)に対する求人ポータルスキャナ。 |
| 4 | Batch | 多数JDの並列評価。ワーカーキュー方式。 |
| 5 | Tracker | 応募ステータス管理。templates/states.yml に正規ステータス定義。 |
| 6 | Apply | Playwright経由のフォーム自動入力。送信ボタン前で必ず承認待ち。 |
| 7 | Pipeline | 保留URLを処理しキューをオーケストレーション。 |
| 8 | Contacto | LinkedIn outreach メッセージ生成。 |
| 9 | Deep | 企業の深堀りリサーチドシエ。 |
| 10 | Training | キャリアゴール照合での研修・認定資格評価。 |
| 11 | Project | ポートフォリオプロジェクトのfit評価。 |
| 12 | Interview | STAR + Reflection 形式の行動面接準備とストーリーバンク。 |
| 13 | Negotiate | 報酬交渉のスクリプトフレームワーク。 |
| 14 | Dashboard | ターミナルUI(Go + Bubble Tea + Lipgloss、Catppuccin Mochaテーマ)。 |
公開当初の2026年4月時点では 12 modes で、後から Training と Project が追加された。著者の「modes はそれぞれ独立に進化させる」という思想と一致する変化。
10評価軸(ブロックA〜G)
Oferta モードは、ユーザーのCVとプロファイルに対してJDを構造化されたブロック群で評価する。公開されている AGENTS.md を読むと、評価系のルールは明示されている:
- スコアスケール:1〜5 を10軸の重み付き合計で、最終A〜F評価へ。
- 閾値:4.0/5未満は応募を 推奨しない(ユーザーが明示的にオーバーライドしない限り)。著者の言葉では「応募ひとつが採用担当の時間を奪う。読まれるに値するものだけ送れ」。
- ブロックG — Posting Legitimacy:求人が本当にアクティブか(幽霊求人やスクレイパー寄せ集めじゃないか)を T1〜T4 でティア分類。
- アーキタイプマッチング:ユーザーは
modes/_profile.mdに目標アーキタイプ(例:「Head of Applied AI」「Senior Backend Engineer」)を定義。各JDがこのアーキタイプ+ロケーション・報酬・カルチャー嗜好と照合される。
残りのブロックはロールフィット、報酬整合、成長軌道、カルチャー、ロケーション方針を評価する。具体的な配分は modes/oferta.md にエンコードされていて、ユーザーがローカルで調整できる — Career-Ops は評価ルーブリックをブラックボックスではなく ユーザー調整可能 な設計にしている。
マルチエージェント設計:Claude Code のどこを使っているか
Career-Ops は「Claude Code の上で動くワークフロー」ではない。Claude Code のエージェントシステムそのものとして構造化 されている。アーキテクチャは4層あり、それぞれが Claude Code のプリミティブに直接対応する。
Layer 1:AGENTS.md と CLAUDE.md
リポジトリには両方が同梱されている:
AGENTS.md— 正規のエージェント命令書。Claude Code, Codex CLI, Gemini CLI, OpenCode で共有。CLAUDE.md— Claude Code が標準パスで発見できるようAGENTS.mdをインポートする薄いラッパー。
このデュアルファイル方式は2026年に一般化しつつあるパターン。詳細は AGENTS.md vs CLAUDE.md ガイド で扱った。
Layer 2:Modes = Skill ファイル
14 modes は modes/ 配下の独立した Markdown ファイル。README に書かれた設計ルールが データ契約 になっている:
「ユーザーが何かをカスタマイズしたい時(アーキタイプ、ナラティブ、交渉スクリプト、proof points、ロケーションポリシー、希望年収)、必ず
modes/_profile.mdかconfig/profile.ymlに書く」
ユーザー層ファイル(cv.md、_profile.md、profile.yml、tracker レポート)とシステム層ファイル(shared modes、scripts、templates)が厳密に分離されている。これにより Career-Ops は アップデートでユーザーのパーソナライズを上書きしない。自前で Skill 束を作る人は真似する価値のあるパターン。
Layer 3:claude -p によるサブエージェント並列
Batch モードはスループット最適化を本気でやっている。コンダクタープロセスが独立したワーカープロセスを spawn し、各ワーカーは claude -p(Claude Code のヘッドレスプロンプトモード)で自己完結した batch-prompt.md を実行する。著者は dev.to でワーカーループを直接引用している:
「各ワーカー:1. キューからURLを取得(lock file で重複防止)。2. auto-pipelineを実行。3. 結果を batch-state.tsv に書き込む」
設計は 再開可能かつ耐障害的 — ワーカーがクラッシュすれば lock file が解放され、別のワーカーが拾う。Skill 作者の多くが Claude Code 内で並列処理を書くのを敬遠する中、Career-Ops は10ワーカー以上の並列で動くことを示している。
Layer 4:Ground Truth は Playwright
AGENTS.md で 最も意外な命令 がこれ:
「WebSearch / WebFetch を、求人がまだアクティブか確認するのに 絶対に信用するな 」
検証フローは強制:Playwright で URL を開き、ページをスナップショットし、JDと Apply ボタンの両方が存在することを確認する。Batch / ヘッドレスで Playwright が使えない時のみ WebFetch にフォールバックするが、その時はレポートに **Verification:** unconfirmed (batch mode) と明示マークされる。
インストール手順に npx playwright install chromium が含まれているのはこのため。Career-Ops が純粋な stdio MCP サーバーとして動かない理由もこれ — ブラウザが必要。
品質ガードレール:Career-Ops が自動応募を拒む理由
著者は README、AGENTS.md、dev.to、個人ブログのすべてで明示的かつ繰り返しこう書いている:システムは下書きと準備をするが、自動送信は絶対しない。AGENTS.md の原文:
「ユーザーのレビューなしに応募を送信することは 絶対にするな」
3層のガードレール:
- スコア閾値。4.0/5未満は応募を推奨しない。ただしユーザーがオーバーライドはできる。
- Applyモードは送信前で停止。フォーム入力は自動化するが、Submit ボタンは押さない。
- Tracker の正直さ。正規ステータス(
Evaluated,Applied,Responded,Interview,Offer,Rejected,Discarded,SKIP)で、人間がボトルネックなのかAIがボトルネックなのかが可視化される。
これが Santiago の繰り返す「Career-Ops は分析の自動化であって、意思決定の自動化ではない」線引きの実装。UX としては「承認プロンプト=設計上の意図的な摩擦」になっている。
インストールとオンボーディング
機能リストの長さに比べてセットアップは短い:
# 1. リポジトリをクローン
git clone https://github.com/santifer/career-ops.git
cd career-ops && npm install
# 2. Playwright を入れる(必須 — 上記の検証ルールがあるため)
npx playwright install chromium
# 3. 前提環境を検証
npm run doctor
# 4. プロファイルとポータルを設定
cp config/profile.example.yml config/profile.yml
cp templates/portals.example.yml portals.yml
# 5. CV を追加
# プロジェクトルートに cv.md を Markdown で作成
最初の評価実行までに4つのベースラインファイルが揃っている必要がある:
cv.md— Markdown 形式の CVconfig/profile.yml— 氏名、ロケーション、希望ロール、希望年収modes/_profile.md— ユーザー固有のスコアリング重みとナラティブportals.yml— 求人ポータル設定
どれかが欠けていればエージェントはガイド付きオンボーディングモードに入り、CV、プロファイル情報、ポータル設定、強み・モチベーション・絶対NGについて深堀り質問する。「エージェントが正しい質問をする」 お手本としても Skills エコシステムでよく仕上がっている例。
派生実装3つの比較
Career-Ops は2026年5月14日時点で 9,353フォーク あり、その中で実装的に意味のある派生は3つ。スコープ、ターゲットユーザー、対応CLIが異なる。
比較表
| プロジェクト | スコープ | Skills / Modes 数 | 対応CLI | 差別化ポイント |
|---|---|---|---|---|
| santifer/career-ops | フル自動パイプライン | 14 modes | Claude Code, Codex, Gemini CLI, OpenCode | 著者自身の求職で本番検証済み、最深スコープ |
| poferraz/career-ops | キャリアコーチング Skill | 10 reference modules | Claude Code, Codex, Gemini CLI, Cursor, Antigravity, Windsurf, OpenCode | ”NO SLOP. JUST STRATEGY.” の4ステージパイプライン + peer-reviewed sourcing、ローカルファースト |
| andrew-shwetzer/career-ops-plugin | Claude Cowork プラグイン | 9 AI skills | Claude Cowork | 業界横断(IT/ヘルスケア/リーガル/トレード)、プラグインアーキテクチャ |
| career-ops/career-ops | 軽量インストーラ | 14 modes(再配布) | Claude Code | 1コマンドインストーラ、本家santiferを追従 |
santifer/career-ops(オリジナル)
リファレンス実装。14 modes、Goダッシュボード、Playwrightベース検証、並列バッチワーカー。他のすべての派生がこれを基準に測られる。ターゲットは「Playwrightをセットアップして自前マシンでエージェントを回す技術職」。
poferraz/career-ops
コンセプトを エンドツーエンドパイプラインではなくキャリアコーチング Skill に再設計したフォーク。4ステージ:Motivational Interviewing → Smart Routing → Anti-Slop Quality Gate → Session Memory。Quality Gate は出力を 5次元(directness, rhythm, trust, authenticity, density)でスコアし、35/50未満は自動リライト。全アドバイスを T1〜T4 で査読付きソーシング — T4(未検証)は完全除外。
ローカルファースト設計:APIキー不要、MCPサーバー不要、クラウド依存なし。本家より広いCLI対応マトリクス(Cursor / Antigravity / Windsurf を追加)。
andrew-shwetzer/career-ops-plugin
Claude Cowork(Anthropic の会話型UI)向けに適応した実装。9 Skills:求人評価、レジュメ最適化、ポータルスキャン、パイプライントリアージ、応募トラッキング、フォーム入力支援、企業リサーチ、outreach 下書き、横並び比較。
README で明示的にクロス業界(テック / ヘルスケア / ファイナンス / リーガル / クリエイティブ / トレード)をカバーする。エンジニアじゃない人で「Go ダッシュボードのセットアップなしにワークフローだけ欲しい」人にはこっち。
選び方
- Claude Code をローカルで回せて、フルパイプラインが欲しい開発者:santifer/career-ops
- セットアップ無しでコーチング品質のレジュメ・面接対策が欲しい人:poferraz/career-ops
- Claude Cowork で使う人、非エンジニアの入り口:andrew-shwetzer/career-ops-plugin
- オリジナルを1コマンドインストールしたい人:career-ops/career-ops
ローカライズ:日本語対応について
オリジナルの Career-Ops は英語に加えて3言語のモードを同梱している:
- German(DACH) — DACH市場の慣習(Bewerbungsmappe、Ausbildung 等)
- French(Francophone) — フランス・ベルギー・ケベック市場
- Japanese(Japan) — 履歴書 / 職務経歴書 の慣習、敬語適切なカバーレター
日本語モードはユーザーがリクエストするか、JDの言語から自動検出される。履歴書と職務経歴書を別ドキュメントとして扱う日本の慣習 を尊重するテンプレが入っているのは、英語ファースト系の求職ツールでは珍しい設計。日本市場で使う場合は、modes/_profile.md に:
- 希望年収を JPY で(USD換算で扱われると面接時にミスマッチ)
- 「正社員 / 業務委託 / 副業」の区別
- 「リモート / フルリモート / ハイブリッド / 出社必須」の選好
- 「Aクラス・Bクラス・Cクラス企業」など日本独特のティアリング
を明示的に書き込むと、エージェントの評価精度が上がる。
よくある落とし穴とベストプラクティス
公開 AGENTS.md と著者の解説を注意深く読むと、新規ユーザーが躓きそうなポイントはこれら:
- Playwrightインストールをスキップする — そのまま走らせると検証ルールが WebFetch フォールバックに落ちて、検索結果が嘘をつく幽霊求人が紛れる。最初に
npx playwright install chromiumを実行。 _profile.mdではなくシステムファイルを編集する — データ契約ルールが存在する理由は、システムファイルがアップデートで上書きされるから。必ずmodes/_profile.mdかconfig/profile.ymlでパーソナライズ。- スコアを絶対視する — 4.0/5の閾値はシステムの推奨であって絶対基準ではない。フィルタとして使い、線を越えたJDは全部手で読む。
- 小規模なキューで Batch を回す — 並列ワーカーのオーバーヘッドが見合うのは真のバックログがある時だけ(著者のバッチは122URL同時実行)。
- 重複排除を忘れる — 680URLの重複排除は最大の時間節約レバー。切ると同じJDを3回評価する羽目になる。
- Apply モードで自動送信する — システムは Submit ボタン前で意図的に停止する。承認ゲートを潰さない。
FAQ
Career-Ops とは?
Santiago Fernández de Valderrama 製の Claude Code Skill 束。AIで求職をアシストする。14 skill modes でポータルスキャン、A〜F評価、ATS最適化CV生成、並列バッチ処理、応募トラッキング、面接準備をこなす。分析を自動化するが意思決定は自動化しない — 応募は必ず明示的な人間承認が必要。
Career-Ops の GitHub スター数は?
2026年5月14日時点で santifer/career-ops は 44,554スター / 9,353フォーク。公開1週間で43,800スターを突破した。
Claude Code 専用?
オリジナルの santifer/career-ops は AGENTS.md で Claude Code、Codex CLI、Gemini CLI、OpenCode に対応。コミュニティフォーク:poferraz/career-ops が Cursor / Antigravity / Windsurf を追加、andrew-shwetzer/career-ops-plugin は Claude Cowork 専用。
Career-Ops は応募を自動送信する?
しない。AGENTS.md と著者の文章で明示的に自動送信は禁止されている。フォーム入力を自動化する Apply モードでも、Submit ボタン前で停止しユーザー確認を要求する。設計原則は「分析の自動化、意思決定の自動化ではない」。
14 Skill Modes は?
Oferta(単一評価)、PDF(ATS最適化CV)、Scan(ポータルスキャナ)、Batch(並列処理)、Tracker(ステータス管理)、Apply(承認待ち付きフォーム入力)、Pipeline(キュー制御)、Contacto(LinkedIn outreach)、Deep(企業リサーチ)、Training(研修評価)、Project(ポートフォリオ評価)、Interview(STAR準備)、Negotiate(年収交渉スクリプト)、Dashboard(ターミナルUI)。公開当初は12 modes、後から Training と Project が追加され14になった。
並列バッチ処理の仕組みは?
コンダクタープロセスが複数ワーカーを spawn し、各ワーカーが claude -p で自己完結した batch-prompt.md を実行する。ワーカーは共有キューから URL を lock file 方式で取得(URL一つにつきワーカー一つを保証)、結果を batch-state.tsv に書き込む。再開可能かつ耐障害的 — クラッシュしたワーカーのロックは解放され、別ワーカーが拾う。
Playwright が必須なのはなぜ?
AGENTS.md がブラウザベースの検証を強制しているため:「求人がまだアクティブか WebSearch / WebFetch で 絶対に信用するな 」。Playwright で URL を開き、ページをスナップショットし、JD と Apply ボタンの両方が存在することを確認する。これがないと幽霊求人や stale な掲載がパイプラインに混入し評価サイクルを無駄にする。
日本市場で使える?
使える。日本語モードが同梱されており、履歴書 / 職務経歴書 / 敬語カバーレターの慣習が尊重されている。modes/_profile.md に希望年収をJPYで、雇用形態(正社員/業務委託/副業)の区別、リモート方針、ターゲット企業ティアリングを書き込めば、評価精度が上がる。
ユーザーデータはどこに保存される?プライバシーは?
ローカルファースト。CV(cv.md)、プロファイル(config/profile.yml)、トラッカーは全部ローカルリポジトリにある。プロンプトはユーザーが設定した AIプロバイダ(Anthropic / OpenAI / Google Gemini)に直接送られる — Career-Ops 側にクラウドサービスはない。poferraz/career-ops はさらに厳格:APIキー不要、MCPサーバー不要、クラウド依存なし。
関連記事
- AGENTS.md vs CLAUDE.md:2026年決定版比較
- 2026年インストールすべき Claude Code Skills ベスト15
- Claude Code Subagents ベストプラクティス 2026
- Claude Code ベストプラクティス完全ガイド
- CLAUDE.md の書き方ガイド
- 165以上のリアルなAIコーディングルールを見る
外部参考
- santifer/career-ops on GitHub — 公式リポジトリ
- Santiago のプロジェクト解説(santifer.io) — 著者本人の解説
- poferraz/career-ops — コーチング特化フォーク
- andrew-shwetzer/career-ops-plugin — Claude Cowork プラグイン版