by kevin333353
針對台灣求職市場的開源多代理 AI 求職 co-pilot:自動找職缺、履歷健檢、一鍵產生客製投遞包(履歷・求職信・面試準備・公司情報)與模擬面試。本機 Claude Code/Codex CLI 免 API key,也可自備金鑰接 OpenAI 相容模型。
# Add to your Claude Code skills
git clone https://github.com/kevin333353/jobsmithLast scanned: 6/28/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-06-28T07:52:44.893Z",
"npmAuditRan": true,
"pipAuditRan": false,
"promptInjectionRan": true
}jobsmith 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 123 GitHub stars.
Yes. jobsmith passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
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!
針對台灣求職市場的開源多代理(multi-agent)AI 求職 co-pilot。
找職缺、履歷健檢、產生客製投遞包(履歷・求職信・面試準備・公司情報)、模擬面試。產生投遞包是背景工作(離開頁面或重新整理都不中斷,還能多個職缺平行跑);看完多 agent 即時編排,再到「我的投遞包」逐一核可。
預設用你本機的 Claude Code / Codex CLI 訂閱當 AI 引擎(免自行申請 API key),也能改用 Ollama / llama.cpp 本機模型,或自備金鑰接任何 OpenAI 相容模型。
如果這個工具對你找工作或研究 AI Agent 有幫助,歡迎按 Star 支持開源。
English · 下載(Windows / macOS unsigned) · 快速開始 · 系統架構 · 隱私
應用程式介面為繁體中文,貼合台灣求職生態(104 / Cake / Yourator / LinkedIn)。資料以本機保存為主;執行 AI 功能時,履歷與 prompt 會交給你選擇的 CLI、本機模型或 BYOK 後端處理。詳見 隱私與資料處理。
Windows
⬇ 下載 Jobsmith for Windows(64 位元) — 單一 .exe,免裝 Python / Node.js。
Jobsmith.exe。claude)或 Codex CLI(codex),或http://127.0.0.1:11434/v1)或 llama.cpp server(預設 http://127.0.0.1:8080/v1),或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 請求只會送到你選擇的後端。
macOS
macOS 目前是 unsigned .dmg,尚未做 Apple Developer ID 簽章與 notarization。第一次開啟可能被 Gatekeeper 擋下,請打開 DMG 後將 Jobsmith.app 拖到 Applications,再右鍵 Jobsmith.app →「打開」,或到系統設定允許。
macOS 版資料與 .env 會存在 ~/Library/Application Support/Jobsmith。
開發者可到 GitHub Actions → Build unsigned macOS DMG 手動重打 macOS 發佈檔;workflow 提供 publish_release=true 選項,可把 DMG 覆蓋到指定 release tag。
環境需求: Python 3.11+、Node.js 20.19+ / 22.13+ / 24+,以及 PATH 上已登入的 Claude Code(
claude)或 Codex CLI(codex)、本機 Ollama/llama.cpp server,或一組 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 跑一次。 |
自己打包 Windows .exe:pip install pyinstaller && pyinstaller jobsmith.spec --noconfirm → dist/Jobsmith.exe。
macOS unsigned .app 請在 macOS 上先建置前端,再執行:python -m PyInstaller jobsmith-macos.spec --noconfirm --clean → dist/Jobsmith.app。
從右上角控制台選你的 AI 引擎——本機 CLI 訂閱(免 API key)、本機模型(Ollama / llama.cpp)或 BYOK(任何 OpenAI 相容端點)。選了即生效;「測試」只是選用的連線檢查、非門檻。本機 CLI 可重新掃描、並可自選模型:
| 後端 | 認證方式 | 說明 |
|---|---|---|
claude_cli |
Claude Code 訂閱 | 預設。 免 API key;會移除 ANTHROPIC_* 環境變數。模型可自選(預設自動分層)。 |
codex_cli |
Codex 訂閱 | 免 API key。模型可自選;預設沿用你的 Codex 設定。 |
ollama |
本機模型 | 預設支援 Ollama;也可切到 llama.cpp server 或自訂本機 OpenAI-compatible endpoint。可重新偵測本機模型並以下拉選擇;品質與速度取決於本機硬體與模型。 |
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 · ollama (local) · 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(本機)· Ollama / llama.cpp 本機模型 · 任何 OpenAI 相容端點(BYOK) |
| 桌面 | pywebview(原生視窗)· PyInstaller(單檔 .exe / unsigned .app,macOS 以 .dmg 發佈) |
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 / jobsmith-macos.spec # PyInstaller 打包
pytest # 單元/整合測試(預設略過 live API 測試)
pytest -m live # 含真打 API 的測試
cd frontend && npm run lint # 前端 lint
cd frontend && npm run build # 型別檢查 + 正式建置
.dmg GitHub Actions build歡迎 issue 與 pull request。較大的變更請先開 issue 討論方向。提交前請跑 pytest、npm run lint 與 npm run build。發佈 Windows .exe 前請照 Release Checklist 做一次乾淨環境 smoke test。
本