by kevin333353
針對台灣求職市場的開源多代理 AI 求職 co-pilot:自動找職缺、履歷健檢、一鍵產生客製投遞包(履歷・求職信・面試準備・公司情報)與模擬面試。本機 Claude Code/Codex CLI 免 API key,也可自備金鑰接 OpenAI 相容模型。
# Add to your Claude Code skills
git clone https://github.com/kevin333353/jobsmithjobsmith is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by kevin333353. 針對台灣求職市場的開源多代理 AI 求職 co-pilot:自動找職缺、履歷健檢、一鍵產生客製投遞包(履歷・求職信・面試準備・公司情報)與模擬面試。本機 Claude Code/Codex CLI 免 API key,也可自備金鑰接 OpenAI 相容模型。. It has 57 GitHub stars.
jobsmith's catalog security scan is still queued. You can run an instant dependency and prompt-injection check now with the "Scan for vulnerabilities" button above.
Clone the repository with "git clone https://github.com/kevin333353/jobsmith" and add it to your Claude Code skills directory (see the Installation section above).
jobsmith is primarily written in Python. It is open-source under kevin333353 on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh jobsmith against similar tools.
No comments yet. Be the first to share your thoughts!
Unlocks once the catalog security scan passes (runs nightly).
The deep catalog scan for this skill is still queued. Run an instant dependency check now instead.
針對台灣求職市場的開源多代理(multi-agent)AI 求職 co-pilot。
找職缺、履歷健檢、產生客製投遞包(履歷・求職信・面試準備・公司情報)、模擬面試。產生投遞包是背景工作(離開頁面或重新整理都不中斷,還能多個職缺平行跑);看完多 agent 即時編排,再到「我的投遞包」逐一核可。
預設用你本機的 Claude Code / Codex CLI 訂閱當 AI 引擎(免自行申請 API key),也能自備金鑰接任何 OpenAI 相容模型。
English · 下載(Windows) · 快速開始 · 系統架構 · 隱私
應用程式介面為繁體中文,貼合台灣求職生態(104 / Cake / Yourator / LinkedIn)。資料以本機保存為主;執行 AI 功能時,履歷與 prompt 會交給你選擇的 CLI 或 BYOK 後端處理。詳見 隱私與資料處理。
⬇ 下載 Jobsmith for Windows(64 位元) — 單一 .exe,免裝 Python / Node.js。
Jobsmith.exe。claude)或 Codex CLI(codex),或base_url + api_key + model 接任何 OpenAI 相容端點(OpenAI、DeepSeek、Gemini、Groq、OpenRouter、Ollama、LM Studio、vLLM…)。需求: Windows 10/11(64 位元;WebView2 為 Windows 11 內建)。歷史、設定、
.env都存在 exe 旁邊;Jobsmith 不營運 hosted backend,AI 請求只會送到你選擇的後端。
環境需求: Python 3.11+、Node.js 18+,以及 PATH 上已登入的 Claude Code(
claude)或 Codex CLI(codex)(或一組 BYOK 金鑰)。
git clone https://github.com/kevin333353/jobsmith.git
cd jobsmith
setup.bat # Windows — 一鍵安裝(venv + 相依 + 前端建置)
# ./setup.sh # macOS / Linux / Git Bash
desktop.bat # 以原生桌面視窗啟動(推薦)
# run.bat # 或網頁版 → http://localhost:8000
| 模式 | 指令 | 說明 |
|---|---|---|
| 桌面 App | desktop.bat(或 python desktop.py) |
原生視窗;第一次會有後端選擇。 |
| 網頁版 | run.bat(或 python -m uvicorn app.server:app --port 8000) |
開 http://localhost:8000。 |
| CLI(單一 JD) | python -m app.cli data/demo_jobs/ai_engineer.txt |
無介面、單一 JD 跑一次。 |
自己打包 .exe:pip install pyinstaller && pyinstaller jobsmith.spec --noconfirm → dist/Jobsmith.exe。
從右上角控制台選你的 AI 引擎——本機 CLI 訂閱(免 API key)或 BYOK(任何 OpenAI 相容端點)。選了即生效;「測試」只是選用的連線檢查、非門檻。本機 CLI 可重新掃描、並可自選模型:
| 後端 | 認證方式 | 說明 |
|---|---|---|
claude_cli |
Claude Code 訂閱 | 預設。 免 API key;會移除 ANTHROPIC_* 環境變數。模型可自選(預設自動分層)。 |
codex_cli |
Codex 訂閱 | 免 API key。模型可自選;預設沿用你的 Codex 設定。 |
openai |
BYOK——任何 OpenAI 相容端點 | base_url + api_key + model。可接 OpenAI、DeepSeek、Gemini、Groq、OpenRouter、Ollama、LM Studio、vLLM… |
CLI 後端會透過你機器上已登入的 CLI 呼叫對應 provider;BYOK 會呼叫你設定的 OpenAI-compatible endpoint。Jobsmith 不提供 hosted backend,也不把資料送到專案作者的伺服器。BYOK 金鑰只寫進你本機的 .env。另有 API key 後端(anthropic)供自架或 CI 使用。
Jobsmith 會在本機保存履歷記憶、偏好、搜尋紀錄、投遞包、.env 與錯誤紀錄。你可以在 設定 → 清除個人資料 清掉履歷記憶、搜尋紀錄與投遞包;AI 後端設定會保留,避免重填 API key。
執行 AI 功能時,履歷、職缺描述與 prompt 會送到你選擇的 AI 後端。請先閱讀 隱私與資料處理。
React SPA (Vite) ──HTTP · SSE · 輪詢──► FastAPI
│
┌───────────────────────┼───────────────────────┐
▼ ▼ ▼
LangGraph StateGraph 職缺來源 App SQLite
(每個背景產生一個、各自 104 / Yourator / (投遞包+狀態
記憶體 checkpointer、可平行) LinkedIn / Cake 進行中→待審→已核可、
│ 記憶、搜尋)
▼
可切換的 LLM 後端
claude_cli · codex_cli · openai (BYOK)
StateGraph +私有記憶體 checkpointer,丟到小型執行緒池跑——所以可平行、且不受瀏覽器斷線(重新整理/切頁)影響;前端輪詢 /api/run/events 看即時進度,跑完寫進應用層資料庫。關掉分頁也不會中斷。interrupt() / Command(resume=…)。)Supervisor 反思迴圈(Critic → 重寫未過文件 → 再評)到底有沒有提升品質?用 5 組職缺/履歷的 golden set,分別在反思關(不重寫)與開兩種設定下跑,比較 Critic 分數:
| 反思 | Critic 通過率 | 平均品質分數 |
|---|---|---|
| 關 | 60%(3/5) | 85.6 |
| 開 | 100%(5/5) | 87.5 |
反思讓 Critic 通過率提升 +40 個百分點(60% → 100%)、平均品質 +1.9(85.6 → 87.5)。關閉反思時的兩個失敗案例,都是求職信出現未經查證的公司事實或履歷未支持的經歷宣稱——正是 Critic → 重寫迴圈會抓出來的問題。(單次 harness 執行;LLM 呼叫非確定性,實際數字每次略有不同。)
python -m app.evals.harness # 對每個 golden 案例跑整張 graph,寫入 app/evals/results.json
彙整用的 summarize() 是純函式、有獨立單元測試,因此聚合邏輯不受(非確定性的)LLM 呼叫影響、可單獨驗證。
| 層級 | 技術 |
|---|---|
| 後端 | Python、FastAPI、LangGraph、LangChain、Pydantic v2、SQLite、BeautifulSoup |
| 前端 | React 19、TypeScript、Vite、Tailwind CSS、lucide-react |
| LLM | Claude Code CLI / Codex CLI(本機)· 任何 OpenAI 相容端點(BYOK) |
| 桌面 | pywebview(原生視窗)· PyInstaller(單檔 .exe) |
app/
agents/ # 履歷健檢、職缺搜尋、公司情報、文件對話、面試模擬…
sources/ # 104 / Yourator / LinkedIn / Cake 搜尋 + registry + 縣市對應
store/ # 應用層 SQLite:歷史、記憶、搜尋紀錄
intake/ # 履歷/JD 解析與抓取
export/ # Word(.docx)匯出
graph.py # LangGraph StateGraph(代理 + 人工核可)
server.py # FastAPI + SSE 端點
llm.py # 可切換 LLM 後端
frontend/ # Vite + React + TS + Tailwind 前端
tests/ # pytest 測試
desktop.py # 原生視窗啟動器 jobsmith.spec # PyInstaller 打包
pytest # 單元/整合測試(預設略過 live API 測試)
pytest -m live # 含真打 API 的測試
cd frontend && npm run lint # 前端 lint
cd frontend && npm run build # 型別檢查 + 正式建置
歡迎 issue 與 pull request。較大的變更請先開 issue 討論方向。提交前請跑 pytest、npm run lint 與 npm run build。發佈 Windows .exe 前請照 Release Checklist 做一次乾淨環境 smoke test。
本專案僅供個人、教育與研究用途,以低頻方式查詢 104 / Yourator / LinkedIn / Cake 的公開職缺,協助個別求職者。使用者需自行遵守各網站的服務條款與 robots.txt,請勿用於大量爬取或商業性資料蒐集。軟體按「現狀」提供,不附任何擔保。AI 生成內容(履歷、求職信、公司情報)可能有誤,使用前請務必自行檢視。