Skip to main content
Glama

job-resume-agent

エビデンスに基づく履歴書調整システムです。ブラウザで検出された求人情報と、ユーザーが厳選した構造化された経験バンクを入力として、ATSで読み取り可能なLaTeX/PDFの履歴書を生成します。すべての箇条書きは、ユーザーが提供したエビデンスに遡って追跡可能です。モデルが推測、一般化、または言い換えた表現はすべて明示的にフラグが付けられ、エクスポート前にユーザーの承認が必要です。

このプロダクトは捏造を拒否します。必要なスキルや実績がエビデンスに裏付けられていない場合、それをでっち上げるのではなく、その旨を明示します。

ステータス: 概念実証。 このリポジトリには、決定論的なMCPサーバー、エビデンスリンカー、安全なLaTeXレンダラー、CLI、テストが含まれています。Chrome拡張機能と外部LLMプロバイダーアダプターはまだ含まれていません。

クイックスタート

Python 3.11以上が必要です。

python -m pip install -e ".[dev]"
resume-agent tailor --bank docs/example-experience-bank.yaml --jd path/to/job-description.txt --json
resume-agent tailor --bank docs/example-experience-bank.yaml --jd path/to/job-description.txt --export --out ./out

stdioでMCPサーバーを実行するには:

resume-agent serve

プライベート利用の場合は、RESUME_AGENT_BANK_PATH を自分の情報を含むローカルバンクに設定してください。完成した履歴書とプライベートバンクは .private/ ディレクトリに置いてください。このディレクトリはGitで無視されます。コミットされたサンプルバンクはプレースホルダーの連絡先情報を使用しており、公開しても安全です。


なぜこれが存在するのか

ほとんどの「AI履歴書調整」ツールは、キーワードマッチと段落の流暢さを最適化することを優先し、事実の整合性を犠牲にしています。ユーザーが「10人のチームを率いた」や「レイテンシを40%改善した」と主張していないのに、平気で追加します。これはユーザーにとってキャリア上のリスクであり、受け取る側にとっては信頼の問題です。

このプロジェクトは逆の立場を取ります。モデルはユーザー自身のエビデンスに対する検索・書き換えエンジンであり、実績の生成器ではありません。調整とは選択、並べ替え、言い換えであり、発明ではありません。これを運用可能にする受け入れ基準は docs/product-requirements.md を参照してください。

プロダクトの構成

疎結合の3つのコンポーネント:

  1. Chrome拡張機能。 アクティブなタブが対応サイト(LinkedIn、Greenhouse、Lever、Ashby、Workday、プレーンテキスト)の求人情報であることを検出します。調整済み履歴書を生成アクションを提供します。JDをローカルバックエンドに送信し、ドラフトが準備できたらレビューUIを開きます。

  2. ローカルバックエンド+Webアプリ。 経験バンク、調整パイプライン、エビデンスマトリックス、LaTeX/PDFレンダラーを所有します。デフォルトでは localhost で実行されます。レビューUIを提供します: ベース履歴書とのサイドバイサイド差分、箇条書きごとのエビデンスリンク、キーワードカバレッジヒートマップ、未サポートの主張の警告、箇条書きごとの承認/拒否/編集。

  3. プロバイダーアダプター(BYOアカウント)。 ユーザーは自分のOpenAI、Anthropic、またはローカル(Ollama)アカウントを接続します。当社のサーバーを介してプロキシすることはなく、ローカルファーストモードではプロバイダーキーをホスト型DBに保存しません。詳細は docs/security-and-privacy.md を参照してください。

公開リファレンスLaTeXテンプレートは templates/resume.template.tex にあり、レンダラーの視覚的/構造的ターゲットとして使用されます。個人識別子(名前、メール、リンク、電話、市民権)はテンプレート内でマクロとして宣言されているため、プライベートオーバーレイで上書きできます。メンテナー自身の履歴書ソース(実際のPIIを含む)は .private/alan-resume-source.tex にあり、gitで無視されます。これは、テンプレートに記入した場合の正規の実例として扱ってください。リポジトリに同梱されるファイルではありません。そのプライベートソースから派生した最小限の経験バンクは docs/example-experience-bank.yaml にあります。

非目標(v1)

  • 捏造支援はしない。 「やったかもしれない箇条書きを提案」や「もっともらしい指標を埋める」はありません。

  • ホスト型マルチテナントSaaSはない。 MVPはローカルファーストです。クラウド同期は延期(ロードマップ参照)。

  • 自動応募はしない。 応募の提出、リクルーターへのメッセージ送信、カバーレター作成は行いません。対象外です。

  • ゲート付き求人ボードのスクレイピングはしない。 拡張機能はユーザー自身のブラウザセッションで現在開いているページを読み取るだけで、クロールはしません。

  • v1ではプロバイダーAPIキーのサーバーサイド保存はしない。 キーはOSキーチェーンまたは拡張機能のローカルストレージに保存されます。

  • 履歴書「スコア」はない。 ATSがループにない数値スコアは疑似科学です。グレードではなく、キーワードカバレッジとエビデンスカバレッジを表示します。

  • 経験バンクのシードにLinkedInスクレイピングはしない。 インポートは手動またはユーザーがアップロードしたPDF/LaTeXのみです。

ドキュメントマップ

ファイル

目的

docs/product-requirements.md

ユーザーストーリー、受け入れ基準、非目標、UX原則

docs/technical-architecture.md

システム図、コンポーネント、プロバイダーアダプターインターフェース、LaTeX検証

docs/data-model.md

経験バンクスキーマ、エビデンスリンク、調整済み履歴書アーティファクトスキーマ

docs/security-and-privacy.md

脅威モデル、拡張機能の権限の根拠、キーストレージ、データフロー

docs/roadmap.md

M0(スケルトン)からM5(マルチユーザークラウド)までの段階的ビルドプラン

docs/adr/001-local-first-provider-agnostic.md

基盤となるアーキテクチャ決定記録

docs/example-experience-bank.yaml

メンテナーのプライベート .private/alan-resume-source.tex のみから派生したサンプルバンク

CONTRIBUTING.md

開発原則、コーディング標準、レビューの姿勢

リポジトリレイアウト(目標)

job-resume-agent/
├── templates/
│   └── resume.template.tex       # public, PII-free reference LaTeX template
├── .private/                     # git-ignored; maintainer's real resume source lives here
├── README.md
├── CONTRIBUTING.md
├── docs/                         # (this repo, today)
├── apps/
│   ├── extension/                # Chrome MV3 extension (TS)
│   ├── backend/                  # FastAPI (Python) + SQLite
│   └── web/                      # React review UI
├── packages/
│   ├── providers/                # provider adapter interface + impls
│   ├── tailoring/                # retrieval, rewrite, evidence-matrix builder
│   ├── latex/                    # renderer, validator, PDF pipeline
│   └── schema/                   # shared Zod/Pydantic schemas
└── tests/
    └── fixtures/                 # JD samples, expected evidence matrices

現在、追跡ツリーに存在するのは templates/resume.template.texREADME.mdCONTRIBUTING.mddocs/ のみです。.private/ はメンテナーのローカルチェックアウトに存在しますが、gitで無視され、同梱されません。残りはフェーズM1の目標です(ロードマップ参照)。

記録上の前提

これらは、ユーザーに尋ねずにこの設計が行う合理的な前提です。変更する場合はADRを開いてください。

  1. ローカルファースト、シングルユーザーMVP。 クラウド/マルチユーザーはv2の関心事です。docs/adr/001-local-first-provider-agnostic.md を参照してください。

  2. BYOプロバイダーアカウント。 LLMをサービスとして提供することはありません。ユーザーがOpenAI、Anthropic、またはOllamaを選択し、その資格情報で呼び出します。

  3. LaTeXは調整済みアーティファクトのソース・オブ・トゥルースです。 PDFはビルド成果物です。ユーザーのベーステンプレート(templates/resume.template.tex、必要に応じて .private/alan-resume-source.tex などのプライベートファイルでオーバーレイ)がレイアウトの枠組みを定義します。

  4. Pythonバックエンド、TypeScript拡張機能+Web UI。 バックエンドのML/LaTeXエコシステムとフロントエンドのブラウザプラットフォームに一致します。

  5. Chrome優先。 サーフェスが安定したら、MV3互換性を介してFirefox/Safariも対応可能です。

  6. バンクはユーザー所有です。 ユーザーはいつでもバンク全体をYAMLとしてエクスポートでき、1つのコマンドでローカルDBを削除できます。

  7. 生成されたすべての箇条書きには来歴があります。 調整済み履歴書アーティファクトに少なくとも1つの evidence_id 参照がなければ、PDFに到達する箇条書きはありません。

未解決の質問

docs/roadmap.md#open-questions で追跡されています。

-
license - not tested
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • Tailor resumes, generate cover letters, render CVs as PDF, and browse 22+ templates.

  • Turn a description into a shareable, editable PDF — invoices, certificates, reports, resumes.

  • A personal RAG database you build from chat, so AI creates work that sounds like you.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Bao-and-Banh-Mi/job-resume-agent'

If you have feedback or need assistance with the MCP directory API, please join our Discord server