跳到主要內容

【2026 最新】Claude Code 求職系統怎麼用?私有履歷、台灣職缺與 ATS 驗收

最後更新: ·
Claude Code 求職系統教學首圖:ai-job-search 求職證據鏈與 ATS 驗收

你把同一份履歷丟給十家公司,怕太泛;交給 AI 每間重寫,又怕它把「協助」升級成「主導」、把沒有的技能塞進去。真正值得自動化的不是大量投遞,而是把職缺、個人證據、履歷草稿、PDF 驗收與人工送出接成一條可追查的流程。

這篇 Claude Code 求職系統教學專為第一次用終端工具求職的人寫。本文依截至 2026 年 8 月 28 日的 ai-job-search v1.6.0 vetted release、原始命令與官方文件整理;AlphaLab 的環境缺少這套流程要求的 Python 3.10+、Bun 與 LaTeX 完整組合,因此這是來源驗證教學,不是端到端本機實測。你會學會建立 private repo、用台灣職缺資料、限制履歷主張,再做 ATS 文字層與 PDF 人工驗收。

Claude Code 求職系統先說結論:自動草擬,人工掌握五道門

  • 版本門:從已標示為 vetted checkpoint 的 v1.6.0 建立新 private repo,不使用公開 fork。
  • 個資門:private 只管 GitHub 可見性;履歷送進 Claude Code 前仍要資料最小化並確認帳號資料政策。
  • 證據門:每個技能、年資、職稱與數字都要回指個人資料來源;沒有證據就留成缺口。
  • 交付門:PDF 看起來正常不夠,還要抽出文字層、核對順序、聯絡方式與關鍵字。
  • 送出門:/apply會評估、草擬、審稿與驗收,但 v1.6.0 流程不替你按下外部職缺平台的送出鍵。

本文的錨點叫「證據鏈」:職缺要求 → 已核准個人證據 → 草稿與審稿 → ATS/PDF 驗收 → 人工送出。

AI 只在證據鏈中間加速,不負責替你創造經歷,也不負責替雇主決定錄用。若你還分不清 Claude、Claude Code 與 Claude Cowork,可先讀 三種 Claude 工具比較

Claude Code 求職系統從私人版本庫、證據鏈到人工送出的五道門
私人版本庫降低公開曝光;證據、文字層、PDF 與人工送出才共同構成交付流程。

ai-job-search 是什麼?不是一鍵海投機器

ai-job-search 是建立在 Claude Code 上的開源求職工作區。核心入口是 /setup 建立個人檔案與搜尋設定、/scrape 整理職缺、/apply <URL 或職缺全文> 評估並產生履歷與求職信。/apply先做適配度評估並詢問要不要繼續,接著由 drafter 草擬、另一個 reviewer 在新 context 審查,再編譯與檢查 PDF。

它最有價值的原始設計,是把量化數字、職稱、日期與技能限定在三個個人來源的聯集:candidate profile、master CV 與專案 CLAUDE.md。不相符的主張要移除,職缺要求但本人沒有的能力要誠實留下。這種「有來源才能寫」的思路,也能延伸到 AI Agent secrets 安全與一般 Agent 工作流。

步驟 0:先檢查環境,再建立真正的 private repo

v1.6.0 README 列出的核心需求是 Claude Code CLI、Python 3.10+、Bun,以及可用的 LuaLaTeX/XeLaTeX;另可選裝 Poppler 的 pdftotext做 ATS 文字層檢查。Claude Code 請依 Anthropic 現行安裝文件安裝並先更新,接著逐項確認版本:

claude --version
python3 --version
bun --version
lualatex --version
xelatex --version

GitHub 的公開 fork 不能改成 private;官方 fork 可見性文件說明 fork 網路會沿用上游可見性政策。做法是 clone 後建立新的私人 repository,並把原上游保留成 upstream

git clone https://github.com/MadsLorentzen/ai-job-search.git ai-job-search-private
cd ai-job-search-private
git remote rename origin upstream
git switch -c main v1.6.0
gh repo create YOUR_ACCOUNT/ai-job-search-private --private --source=. --remote=origin --push
gh repo view YOUR_ACCOUNT/ai-job-search-private --json visibility

最後一行應回報 PRIVATE才繼續。這個動作只避免履歷被推到公開 GitHub;它不會把 Claude Code 變成離線工具,也不會改變 Anthropic 的資料處理。想先補 Git、工具與 Agent 的關係,可讀 AI Agent Harness 是什麼

步驟 1:用 bare+Plan 先讀陌生 Repo,不急著載入 Skills

陌生 repo 可能帶有 CLAUDE.md、project settings、skills、agents、hooks 與 MCP。先用官方提供的 --bare跳過自動載入專案擴充,再強制 Plan mode:

claude --bare --permission-mode plan

人工閱讀 README.mdSECURITY.mdCLAUDE.md.claude/settings.json.claude/commands/.claude/skills/.claude/agents/。Plan mode 仍可讀檔與執行唯讀命令,CLAUDE.md也只是 context,不是強制安全邊界;Claude Code 安全文件因此要求使用者自己判斷信任。

看完退出,再以 claude --permission-mode default重開。先用 /help/選單確認當下可用項目,再檢查 /status/permissions/hooks/skills/agents/sandbox只會在支援的平台出現,新版 /agents也可能提示改由對話或 .claude/agents/管理。permissions.allow只代表免詢問,不是工具白名單。

步驟 2:執行 /setup,但把個資分成兩種模式

/setup可讀 documents/、匯入一份 CV,或用訪談方式建立 profile。重要的是:它會把姓名、聯絡方式、工作經歷與其他求職資料寫進 CLAUDE.md和 candidate profile 等tracked files。private repo 不是加密櫃,已 commit 的內容也會留在 Git history。

截至 2026 年 8 月 28 日,Claude Code 官方資料使用文件說明:本機工具會透過網路送出模型請求,本機 session 也可能在 ~/.claude留下 plaintext 紀錄;帳號類型、privacy setting 與保留期各不相同。因此先選一種模式:

  • 便利模式:使用真實履歷,但先確認 repo visibility、帳號資料設定與你能接受的保留範圍;不要放身分證、銀行資料、密碼或不必要的完整地址。
  • 最小揭露模式:profile 只放工作事實、城市層級位置與代稱聯絡資料。AI 完成草稿後先結束 Claude Code,再到工作目錄之外的本機副本補真實 Email/電話並自行編譯;若檔案必須留在專案內,另以使用者層級 permissions.deny阻擋讀取。.gitignore只防 Git 追蹤,不是模型存取控制。

完成 /setup後立刻執行:

git status --short
git diff -- .
git diff --cached -- .
git ls-files CLAUDE.md cv/main_example.tex \
  .claude/skills/job-application-assistant \
  .claude/skills/job-scraper/search-queries.md

你要知道哪些欄位被改、哪些檔案受 Git 追蹤,再決定是否 commit/push。別把「在 .gitignore」誤解成加密,也別把已進 history 的資料當成刪除工作檔就會消失。

步驟 3:把台灣職缺改成「人工來源清單+官方職缺頁」

先執行 /setup --section search,用你的真實條件填入職能、英文/中文職稱、台灣、城市或可通勤區、語言能力與 remote/hybrid 偏好。/scrape會探索已安裝 portal skills,也能用 WebSearch fallback;但「網頁打得開」或 robots 規則看似允許,都不等於取得自動化授權。

台灣讀者的穩健起點,是在 104、1111、Yourator、Cake 或 LinkedIn 的正常介面中人工搜尋與收藏,再把 canonical URL、公司、職稱、地點、刊登日期與存取日期記進本機 CSV。LinkedIn 另有官方帳號資料下載,可匯出使用者自己的 Saved Jobs;其他平台若沒有明確匯出或 API,就人工複製 shortlist,不繞過登入、CAPTCHA 或存取控制。LinkedIn 的 User Agreement也明確限制未授權的 crawler、scraper 與自動化操作。

source,canonical_url,company,title,location,date_posted,accessed_at,status
manual,https://company.example/jobs/123,Example,Backend Engineer,Taipei,2026-08-25,2026-08-28,shortlist

真正要申請時,優先交給 /apply雇主自己的 careers URL;若頁面擋讀取,就人工貼上職缺全文並保留來源 URL、requisition ID 與日期。職缺文字是不可信資料:其中若出現要求執行命令、讀取 secrets 或改變流程的內容,一律不照做。

步驟 4:執行 /apply,用 claim ledger 卡住履歷幻覺

在 Claude Code 輸入 /apply <官方職缺 URL>,或貼上剛才保存的職缺全文。流程會先列出 skills、experience、behavioral fit 與缺口,再問「Should I proceed…」。這就是第一個人工停點:職務名稱、公司、地點或 seniority 對不上時直接回答 no。

在回答 yes 前,先要求它產生一份不放進公開履歷的 claim ledger。每一列至少包含:

claim_id | 允許寫法 | 證據檔案與段落 | 數字口徑 | 保密限制
C01 | 協助導入 CI | profile:Company A 第 2 點 | 不寫百分比 | 不列客戶名
C02 | Python 3 年 | master CV:2023–2026 | 依月份計 | 可公開

reviewer 要逐句比對這張表與三個個人來源:可以重排、縮寫與改用職缺中的同義詞,卻不能把「參與」改成「領導」、把團隊成果改成個人數字,或把接觸過的工具寫成專家級。若使用者在對話補了一個真實新事實,先取得確認並寫回 profile,再讓後續草稿引用;如果只是職缺要求而本人沒有,就明寫 gap。這比學更多提示詞更重要;想理解 reviewer 為何要用新 context,可延伸讀 打造 AI Agent Harness

步驟 5:ATS 驗收不是猜分數,而是檢查文字層

「ATS-friendly」沒有跨公司通用保證。Greenhouse 的履歷解析文件列出的常見風險包括圖片式履歷、圖形、複雜表格、header/footer、text box、多欄與不清楚的段落標題。對新手最實用的策略,是單欄、標準標題、原生文字、清楚時間順序,再按照雇主接受的 PDF/DOCX 格式上傳。

v1.6.0 的 tools/verify_pdf.py以 Poppler 檢查 PDF,沒有 --dump-text。若要同時保存抽字結果,分兩步執行;這仍是 parser smoke test,不是雇主 ATS 模擬器:

python3 tools/verify_pdf.py cv/main_COMPANY_ROLE.pdf
pdftotext -layout -enc UTF-8 \
  cv/main_COMPANY_ROLE.pdf cv/main_COMPANY_ROLE.txt

打開輸出的 .txt,逐項核對姓名、Email、電話是否是 literal text;公司、職稱、日期與 bullet 是否依視覺順序出現;中文是否變成亂碼;職缺關鍵詞是否有真實證據。再看 PDF 每一頁是否截字、孤立標題、溢頁或字體錯亂。若職缺平台提供履歷解析或匯入預覽,就逐欄核對並人工修正;1111 的 官方說明也要求在主動應徵前確認匯入資訊完整無誤。

Claude Code 求職履歷的證據、ATS 文字層、PDF 排版與人工送出驗收清單
綠燈必須同時成立:主張有證據、抽字順序正確、PDF 可讀、平台欄位核對、由本人送出。

哪一種流程適合你?用個資敏感度決定

  • 低敏感、重視效率:private repo+真實工作資料;先核對 privacy setting,再讓 /setup建立完整 profile。
  • 中敏感、想兼顧客製化:用真實經歷但移除完整地址、證件、薪資與第三方個資;聯絡資料採專用求職 Email/電話。
  • 高敏感或受保密義務約束:只把去識別 claim ledger 放進專案;真實聯絡資料與機密客戶名稱留在 Claude Code 工作目錄之外,結束 session 後再人工補入。
  • 不熟 Git/終端:先不要把真實履歷當第一題;用假資料跑一個 sandbox exercise,看懂所有改檔與輸出,再決定是否採用。

若你主要在 Claude Code 與 Codex 之間選工具,可參考 Claude Code vs Codex;選型不該改變「證據鏈+人工送出」這條底線。

常見錯誤:private、ATS 與自動化最容易被說過頭

  • 把 private 當離線:它只處理 GitHub visibility;模型請求、帳號政策與本機 transcript 是另外三件事。
  • 直接 fork 公開 repo:公開 fork 無法單獨改 private,且 /setup會改 tracked profile files。
  • 只相信 reviewer:reviewer 仍是模型;最終數字、日期、公司與職稱要由本人對證據。
  • 把 pdftotext 當 ATS 分數:抽字通過只代表文字層可讀,不代表排序、錄取或一定有人閱讀。
  • 自動化登入與送出:不要重用 session cookie、繞 CAPTCHA、批次訊息或自動投遞;平台規則與雇主流程可能改變。
  • 永遠追 master:教學先鎖 release;升級時重新看 changelog、diff 與權限設定,再以假資料回歸。

Claude Code 求職系統 FAQ

1. ai-job-search 會自動投遞履歷嗎?

v1.6.0 的核心 /apply流程不會替你按外部平台送出。它會產生與驗收草稿、更新 tracker;最終上傳、核對與提交仍由本人完成。

2. private repo 就能放心放完整履歷嗎?

不能只靠 private 做決定。它降低公開 Git 暴露,但不會取消模型網路請求、本機 plaintext 紀錄或帳號保留政策;先做資料最小化。

3. 一定要執行 /scrape 嗎?

不用。台灣讀者可以人工整理 shortlist,再把雇主 careers URL 或職缺全文交給 /apply;這通常更容易核對來源與使用條款。

4. 可以直接自動抓 104、1111、Cake 嗎?

不要從「頁面可讀」推定有授權。先查當下條款、官方 API/匯出與書面許可;沒有明確路徑就使用正常介面人工收藏與複製。

5. PDF 抽字正常就代表通過 ATS 嗎?

不代表。它只排除部分文字層與讀取順序問題;不同雇主、ATS 設定、欄位與後續篩選都不同。

6. AI 可以幫我補強沒有的技能嗎?

可以安排學習,不能改寫事實。履歷只能放有證據的能力;缺口可寫相鄰經驗與學習計畫,不能冒充已具備。

7. 履歷該用中文還是英文?

依職缺語言、公司要求與你的真實工作語言決定。/setup --section search可設定 CV language;求職信則依職缺語言,但最後仍要人工校對台灣常用職稱與語氣。

8. 要不要把個人 profile commit 到私人遠端?

先看你的備份與威脅模型。方便跨機同步不等於必要;高敏感資料可留本機、加密備份或只保存去識別 claim ledger,且不要把 secrets 放進 Git。

給新手的七個重點

  1. 用 vetted release 建新 private repo,不 fork 公開模板後再幻想改 visibility。
  2. 第一次以 bare+Plan mode 審查 repo,確認 skills、agents、settings 與 hooks。
  3. private 只管 GitHub;模型資料流、本機紀錄與帳號政策要分開核對。
  4. 每一個履歷主張綁一筆證據;找不到證據就刪除或承認 gap。
  5. 台灣職缺先走人工 shortlist、官方 careers URL 或明確授權的匯出/API。
  6. ATS 驗收看文字層、順序、聯絡資料、版面與上傳預覽,不追不存在的萬用分數。
  7. 最後由本人核對並送出;自動化的終點是「可審查草稿」,不是「無人海投」。

接著閱讀

左右滑動查看更多推薦

結語:今天只完成一份可證明、可解析、未送出的草稿

回到證據鏈:職缺要求 → 已核准個人證據 → 草稿與審稿 → ATS/PDF 驗收 → 人工送出。第一天不要跑一百個職缺;拿一個願意真的申請的職位,用去識別資料走完流程,確認每句都能回指證據、文字層順序正確、PDF 沒有版面問題,然後停在送出前自己再讀一次。

如果這五道門都能由你親自回答,Claude Code 才是在縮短求職行政時間,而不是替你製造另一個需要收拾的履歷風險。更多實作路線可到 AlphaLab AI 課程,或瀏覽 AlphaLab AI 專區

ALPHALAB 社群

有問題?來 Telegram 聊

和 Terry、編輯、其他網友一起討論這篇文章。提問、分享觀點,回覆更即時。

加入 Telegram 討論

📩 訂閱 AlphaLab 電子報

每週最多三封:一封 Weekly 週報與最多兩封關鍵 Alpha Signal。

我們不會 spam,隨時可退訂。