MadsLorentzen/ai-job-search

The job search that runs on your machine. AI job application framework built on Claude Code: evaluate postings, tailor CVs, write cover letters, prep interviews. Fork it and own it.

AI Job Search – AI駆動の求人応募アシスタント

何であるか – Claude Code(Anthropicのコードアシスタントモデル)を推論エンジンとして使用し、自宅のマシン上で求人活動の全プロセスを実行できるコマンドラインフレームワーク。個人プロフィールを入力すると、以下のことが可能になります。

  1. スクレイピング – 現在、デンマークのポータルに加えてLinkedInとfreehire.meを対象に求人情報を収集し、適合スコアリング基準に基づいて順位付けします。
  2. 応募 – 選択した求人に応募:モデルが適合度を評価し、LaTeXでCVとカバーレターを草案作成。レビューエージェントを起動して草案を批判的に検討。PDFが厳格なレイアウトルールを満たすまで反復処理し、ATS読み取り性チェックを実行。
  3. 面接準備 – 企業情報を取り込み、予想される質問をSTAR例にマッピングし、準備用パックを生成する模擬面接フローを提供。
  4. 結果の追跡 – 面接ステージ、オファー、却下の記録を残し、丁寧なフォローアップ文書を自動生成。
  5. 同期 – パイプラインをNotionやGmailに同期、オフラインHTMLダッシュボードを生成、識別されたスキルギャップに基づいたアップスキル計画を提案可能。

なぜ重要か – 多くのAI駆動の履歴書ツールは一回限りの生成器に過ぎません。このプロジェクトは、検索 → 適合評価 → 草案作成 → レビュー → ATS検証 → 結果追跡というエンドツーエンドのワークフローを再現可能なCLIコマンドに統合しており、検証可能な出力(PDFコンパイルチェック、架空の主張なし)に強く注力しています。


クイックスタート概要(READMEから)

  1. フォーク&クローン – プライベートフォークを保持することで、個人データが公開リポジトリに残らないようにします。
  2. 求人検索ツールのインストール – 必要なポータルごとにBunベースのCLIスクレイパーをインストールします。
  3. Claude Code内で /setup を実行 – CV、LinkedInエクスポート、学位証明書などをインポートするか、面接形式の質問に回答。これにより、以降のすべてのコマンドで使用される構造化された CLAUDE.md プロフィールが作成されます。
  4. /scrape で検索 – バンドルされたポータルを照会し、重複を除外して適合スコア順に並べたリストを返します。
  5. /apply <job‑url>(または全文を貼り付け)で応募。システムは以下の処理を実行します:
    • 求人情報を解析
    • 適合度スコアを算出
    • LaTeXでCV+カバーレターを草案作成
    • レビューエージェントを実行
    • PDFがクリーン(2ページのCV、1ページのカバーレター)になるまで反復
    • ATSテキスト抽出チェックを実行
    • 最終的な文書とチェックリストを提示
  6. オプション機能/interview(模擬面接)、/outcome(結果記録)、/rank(一括スコアリング)、/upskill(学習計画提案)、/html-report(ローカルダッシュボード)、/notion-sync および /gmail-sync(リアルタイムビュー)

コアコンポーネント(ファイルツリーのハイライト)

  • .claude/commands/ – 各CLIコマンド(apply.mdsetup.mdinterview.mdなど)のMarkdown定義。Claude Codeがワークフローを実行するために読み込む。
  • .claude/skills/ – プロンプトライブラリ:
    • job-application-assistant/ には、候補者プロフィールスキーマ、ライティングスタイルガイド、スコアリング基準、LaTeXテンプレート仕様が含まれる。
    • job-scraper/ はポータルクエリをオーケストレーションする。
    • upskill/ はスキルギャップ分析を実行する。
  • .agents/skills/ – 各対応する求人ポータル用の小さなBunベーススクレイパー(例:jobindex-search)。bun installでインストール可能。
  • cv/ および cover_letters/ – LaTeXソースファイル(moderncvテンプレート、カスタム cover.cls)。フレームワークは各応募ごとにオンザフライでコンパイルする。
  • documents/ – 個人の資料(PDF CV、LinkedInエクスポート、学位証明書、過去の応募書類)。/setupはこのフォルダを自動的に読み込む。
  • job_search_tracker.csv – 応募履歴、ステータス、適合スコアを記録するシンプルなスプレッドシート。/html-reportおよび同期コマンドで使用される。
  • ユーティリティスクリプトsalary_lookup.pytools/*.pyなど) – サラリー比較、CIラインタグ、PDF検証、セキュリティチェックなどのヘルパー。

必要条件(リスト通り)

  • Claude Code CLI(唯一サポートされるLLMツール。他のエージェントは AGENTS.md を通じて可能)。
  • Python 3.10+
  • Bun(ポータルスクレイパーCLI用)。
  • 完全なLaTeXディストリビューション(CV用に lualatex、カバーレター用に xelatex)。SETUP.mdに記載された追加パッケージを追加すればTinyTeXも利用可能。
  • オプション:pypdf(またはシステムの poppler ユーティリティ) – ATSテキスト抽出ステップ用。

どの人が使うべきか

  • Claude Codeを使っている求職者で、Webサービスではなく、再現可能なローカル実行パイプラインを望む人。
  • CLIツールに慣れている開発者で、スクレイピングスキルやLaTeXテンプレートをカスタマイズしたい人。
  • 経験を架空に生成しない、透明性があり、監査に耐えるAIアシスタントを探している人。

制限と注意点(READMEより)

  • ワークフローはスクレイピングされた求人ページをサンドボックス化しない。応募前に取得したコンテンツを確認すること。
  • プロフィールデータは追跡可能なファイルに書き込まれる。情報が公開されたくない場合はフォークをプライベートに保つこと。
  • 現在のポータルスクレイパーはデンマーク市場向けに最適化されている。新しいポータルを追加するには /add-portal で新しいスキルを作成する必要がある。
  • システムはClaude Codeに依存している。使用料とレート制限はAnthropicアカウントの規約に従う。

まとめ

ai-job-search は、LLMプロンプティング、ウェブスクレイピング、LaTeXドキュメント生成、ワークフロー自動化を組み合わせた本格的なオープンソースプロジェクトであり、自己ホスト型のAI求人応募アシスタントを提供します。上記のすべての機能はリポジトリのREADMEから直接取り出されたものであり、追加機能は推測されていません。

これを取り上げた記事

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト