我的 Anthropic Claude Code 學習筆記

(圖說:Claude Code 代表代理式程式設計工具 (Agentic Coding) 的新典範。拍攝於 Lac de Neuchatel 湖畔,瑞士。圖片來源:Ernest。)



tl;dr 重點摘要

這是一份使用 Claude Code 1 的筆記整理。Claude Code 是 Anthropic 推出的代理式程式設計助理 (Agentic Coding Assistant),它能夠:

  • 自主理解與規劃:以 Claude 4 Opus、Claude 4 Sonnet 模型為核心,能夠理解複雜的開發需求並制定執行計劃
  • 終端機原生操作:直接在終端機中工作,無需切換工具、無需人工複製貼上,能夠讀寫檔案、執行指令、git commit 程式碼
  • 獨特的 Subagents 功能:這是其最創新的特色,可以建立專門的子代理來處理特定任務,實現多代理協作 (build your agent team)
  • 完整的生態整合:透過 MCP (Model Context Protocol) 2 與各種開發工具深度整合

Claude Code 與其他 AI 程式設計工具的主要差異在於 SubagentsExtended Thinking 3 等其他工具較缺乏的獨特功能。在企業應用方面,橋水基金 4、Asana 5、Ramp 6 等公司的成功案例也很值得參考。


1. Claude Code 發展軌跡

Claude Code 各個版本發布的變更記錄 (Changelog) 7,可以觀察到 Claude Code 從基礎開發協助工具逐步逐步演化為智慧代理框架的過程。

基礎建設期:終端機體驗優化

早期版本專注於建立穩定的終端機操作環境:

  • 斜線指令系統:引入了 / 指令的模糊比對功能,讓使用者能更直觀地操作
  • 視覺體驗改善:加入 ANSI 顏色主題,提升終端機的相容性和可讀性
  • 安全性提升:將 API 金鑰儲存整合到 macOS Keychain,提高安全性

這些看似細微的改進,實際上為後續的複雜功能打下了穩固的基礎。

能力擴展期:從孤島到連接

v0.2.125 是一個重要的里程碑版本,帶來了 Amazon Bedrock ARN 處理和日誌系統的重大改進。

關鍵的能力擴展包括:

  • 網路指令支援:讓 Claude 能夠執行 curl 等網路操作 (雖然偶爾還是會產生一些不存在的 URL…)
  • 網路搜尋整合:WebSearch 應該是跟隨 Claude 主產品功能而來的能力升級

這些更新讓 Claude Code 從一個「孤島式」「單機版」的開發工具,變成能夠與整個網路世界互動的代理介面。

代理框架成熟期:進入 v1.0 時代

v1.0.0 正式發布,引入了 Claude 4 Opus、Claude 4 Sonnet 模型支援,Claude Code 進入成熟期。

v1.0.65 在 IDE 和 Windows (WSL2) 穩定性方面有了大幅提升。

重要的代理框架功能:

  • Hooks:允許在特定事件觸發時執行自訂命令。
  • Subagents 8:這是 Claude Code (於 2025-07) 最創新的功能,能夠建立專門的子代理 (Subagents) 處理特定任務。
  • MCP 伺服器整合:建立了標準化的工具整合通訊協定。

生態系統期:無縫整合開發環境

隨著核心功能穩定,Anthropic 開始推動生態系統整合:

  • IDE 擴充功能:推出 VS Code 和 JetBrains IDE 的測試版整合
  • SDK 開放 9:提供 TypeScript 和 Python SDK,讓開發者能夠程式化地使用 Claude Code 能力

個人觀察,這個發展軌跡顯示了 Anthropic 的戰略意圖:從單一開發工具演化為開發者生態系統的核心

2. Anthropic 的背景:安全優先的設計理念

了解 Claude Code 之前,值得簡單介紹一下 Anthropic 的設計理念。與其他 AI 公司不同,Anthropic 從創立之初就將「安全、可控、可信賴」作為核心價值,這也深刻影響了 Claude Code 的設計方向。

Anthropic 採用「憲法式 AI (Constitutional AI)10 框架,讓模型在訓練過程中就內建安全與倫理原則。這意味著 Claude Code 在執行程式設計任務時,天生就具備對安全性和最佳實踐的理解。

此外,Anthropic 選擇註冊為公共利益公司 (PBC) 11,法律上要求公司在追求商業利益的同時兼顧社會影響。這讓 Claude Code 能夠在 Amazon Bedrock 和 Google Vertex AI 等企業級平台上提供服務,滿足金融、醫療等高風險行業的嚴格要求。

這種「安全優先」的設計理念,讓 Claude Code 在企業環境中特別有優勢,尤其是需要高度可信賴的程式設計助理時。


3. Claude Code 的核心功能與特色

我在 Claude Code 工作坊或顧問指導時間,都會推薦客戶務必撥出時間閱讀 Claude Code 官方文件

  • 至少 Overview, Quickstart, Common workflows 要看完,
  • 對於喜歡在指令列操作的朋友,也請務必參閱 Terminal configuration 將 Shift+Enter 換行設定起來。
  • 除了基本設定之外,Claude Code 具有幾個獨特的功能,這些功能讓它在眾多 AI 程式設計工具中脫穎而出。
  • 另外推薦團隊成員,不論技術或非技術背景,都應該練習 git 基本觀念。
    • 不需要會操作,但要知道觀念,然後請 Claude Code 幫你操作。
    • 已經親眼看過許多身處行政部門的朋友和同事,都會簡單的 git commit、push/pull、branch 甚至開 issue、發 PR。

管理 Claude 場景與記憶

參閱官方文件 Manage Claude’s memory

  • 專案目錄 CLAUDE.md
    • ./CLAUDE.md
    • 放在專案目錄,作為以專案為基礎的記憶筆記。
    • 同一個專案的團隊可以共用。
    • 剛進到新的專案,使用 /init 建立的就是專案目錄的 CLAUDE.md。
  • 使用者 (操作者) 個人化 CLAUDE.md
    • ~/.claude/CLAUDE.md
    • 個人化的屬性設定,跨越所有專案。
    • 自己慣有的屬性,例如我會設定「- 中文字元和英文字元之間,請加上一個半形空白字元,以方便閱讀。」、「- 不要誇我,驗證過是對就去做、有疑慮就問,不要浪費時間誇我。」。
  • 專案目錄的個人化 CLAUDE.md
    • ./CLAUDE.local.md
    • 已經 deprecated。

Subagents:多代理協作的創新

參閱官方文件 Subagents

Subagents 8 是 Claude Code (於 2025-07) 最創新的功能。簡單來說,你可以建立專門的「子代理 (subagent」來處理特定類型的任務,每個 Subagent 都有自己的專長和上下文 (context)。

什麼是 Subagents?

Subagents 本質上是可以被主代理呼叫的專門化 AI 助理。每個 Subagent 都有:

  • 獨立的系統提示:定義其角色和專長
  • 專屬的上下文視窗:避免干擾主對話 (不干擾主線任務,自己去旁邊玩沙畫圈圈,乖)
  • 特定的工具權限:只能使用完成任務所需的最小權限

使用場景範例

  • 專案經理:整理訪談、撰寫使用情境、撰寫 PRD。
  • 程式碼審查專家:建立一個專門審查安全漏洞的 Subagent,遵循 OWASP Top 10 標準。
  • 測試專家:建立專門編寫單元測試的 Subagent,熟悉特定框架的最佳實踐。
  • 文件專家:專門負責撰寫和維護 API 文件的 Subagent。

如何建立 Subagents

Claude Code 提供兩種方式建立 Subagents:

  1. 互動式介面:使用 /agents 指令打開管理介面
  2. 檔案定義:在 .claude/agents/ 目錄下建立 Markdown 檔案

個人偏好檔案定義的方式,可以將 Subagent 設定納入版本控制,或與團隊成員共享。

Extended Thinking:深度思考模式

Extended Thinking 3 是 Claude 3.7 12 模型開始的創新功能,讓 AI 能夠進行更深入的思考和規劃。

與傳統的「立即回應」不同,Extended Thinking 模式會:

  • 給予模型更多計算時間和資源
  • 在回答前進行多步驟的內部思考和推理
  • 甚至可以呼叫外部工具來輔助思考

在處理複雜的程式設計任務時,可以使用 “think”, “think hard”, “ultrathink” 等關鍵詞來觸發這個模式。適用場景:

  • 大型程式碼重構的規劃
  • 複雜系統架構設計
  • 除錯複雜問題的根因分析 (root cause finding)

但如果在過程中操作者能夠識別出來同一次任務有不同維度可能形成邏輯衝突,建議拆開。拆成多次處理,或是拆解成更小粒度的小任務、todo items。或者,同一件事情,乾淨重跑 3~5 次 (符合 土炮工作法的嘔吐法 邏輯) 。

Model Context Protocol (MCP):生態系統的核心

MCP 2 是 Claude 生態系統的秘密武器,後來其他大廠也陸續跟進。MCP 定義了一套標準通訊協定,讓外部工具能夠將自己的「能力」和「上下文」注入到 Claude 的推理過程中。

MCP 解決的問題

傳統 AI 助理的問題是缺乏對環境的真實感知。MCP 打通之後讓 Claude 能夠:

  • 「看到」整個專案的檔案結構、或團隊共用的專案工具 e.g. JIRA tickets。
  • 「使用」本地安裝的 linter 或測試工具。
  • 「理解」專案的建置系統和依賴關係。

實際整合範例

透過 MCP,Claude Code 可以整合:

  • 開發工具:ESLint、Prettier、Jest 等。
  • 版本控制:Git 操作和歷史分析。
  • 專案管理:JIRA、GitHub Issues。
  • 部署工具:Docker、Kubernetes。

MCP 的優勢在於,它讓 Claude Code 不再是一個孤立的工具,而是能夠深度整合到現有開發工作流程中。

平行工具使用:效率的倍增器

Claude 4 模型支援平行工具使用 (Parallel Tool Use),這意味著它可以同時:

  • 發起網路搜尋
  • 讀取本地檔案
  • 執行程式碼片段

這種並行處理能力讓 Claude Code 的行為更接近熟練的人類開發者,大幅提升了任務執行效率。

企業級記憶管理

Claude 4 Opus 具備建立和維護「記憶檔案 (Memory Files)」的能力,用來記錄:

  • 關鍵資訊和中間結論
  • 使用者偏好和習慣
  • 專案特定的上下文

這讓長時間的程式設計工作能夠保持一致性,避免重複解釋相同的需求。但 Claude 4 Sonnet 和 Claude 3.7 Sonnet 在適當描述切分好的小任務已經能妥善解決任務,這一點也就不是那麼必要。但的確能夠節省一部分人時消耗。


4. 與其他 AI 程式設計工具的比較

在評估 Claude Code 時,也需要同時認識其他主要的 AI 程式設計工具。有助於理解 Claude Code 以及各個工具之間,個別的獨特優勢。

當前主要競爭者 (2025-08)

目前主要的 AI 程式設計 CLI 工具包括:

  • Anthropic Claude Code:2025-02 開始公開,企業級 (有企業用戶表明導入 Claude Code 在自家工作流程當中) 、代理優先設計。
  • AWS Q CLI:2025-03 升級為 Amazon Q Developer CLI agent,當時搭配 Claude 3.7 Sonnet 模型,後來也可使用 Claude 4 Sonnet。
  • OpenAI Codex CLI:2025-04 推出,可以使用模型 o3, o4-mini, GPT-4.1。
  • Google Gemini CLI:2025-06 推出,CLI 本體開源 (Apache 2.0),免費使用。 (在 gemini-cli git repo issues 有看到 request count 與 pricing page 不一致的情況,繼續觀察。)

CLI 工具比較表

功能面向Claude CodeGemini CLIOpenAI Codex CLIAWS Q CLI
Subagents✓ 支援自定義子代理,多代理協作✗ 單代理 (ReAct loop)✗ 單代理,任務隔離沙箱✗ 無子代理概念
MCP 整合✓ 內建,生態成熟✓ 支援 MCP 伺服器◑ 實驗性 MCP (需手動啟用)✓ 支援 MCP 伺服器
企業級部署Bedrock/Vertex AI/IAM/日誌審計Vertex AI Standard/Enterprise依賴 OpenAI 公共或自管 APIBedrock / AWS IAM
上下文容量200 K tokens (Claude 4 Opus/Claude 4 Sonnet)1 M tokens (Gemini 2.5 Pro)192 K tokens (codex-1)200 K tokens (Claude 4 Opus/Claude 4 Sonnet)
定價/免費層整合 Pro $20, Max $100, $200 訂閱 / API 按量計費個人免費;標準/企業版 訂閱ChatGPT Plus 或 API 按量計費Free/Pro $19 訂閱
典型場景企業級大型專案、複雜流程、安全合規個人/小團隊、Google 生態、開源專案本地沙箱實驗、快速原型、多任務雲代理AWS 生態、雲原生 DevOps、基礎架構整合

5. 底層技術簡介

從使用者角度來看,Claude Code 的強大表現來自於 Claude 4 模型家族 (Claude 4 Opus 和 Claude 4 Sonnet) 以及精心設計的代理框架。

Claude 4 的核心能力

混合推理模式:Claude 4 提供兩種運作模式 — 快速回應模式和 Extended Thinking 深度思考模式。這讓它既能快速回答簡單問題,也能深入分析複雜的程式設計挑戰。

平行工具使用:Claude 4 可以同時使用多個工具,例如同時搜尋網路、讀取檔案和執行程式碼,大幅提升效率。

記憶管理:Claude 4 能夠建立「記憶檔案」來記錄關鍵資訊和用戶偏好,讓長時間的開發工作保持一致性。

基準測試表現

根據公開的基準測試,Claude 4 在程式設計任務上表現優異:

  • SWE-bench 13:Claude 4 Opus 和 Claude 4 Sonnet 分別達到 72.5% 和 72.7% 的成績 14
  • Terminal-bench 15:Claude Code 使用 Claude 4 Opus 和 Claude 4 Sonnet 分別達到 43.2% 和 35.5% 的成績 14

這些資料顯示 Claude Code 的代理框架設計確實能夠有助於軟體開發任務。

生態系統與整合

SDK 支援:Anthropic 提供 TypeScript、Python 和命令列的 Claude Code SDK 9,讓開發者能夠將 Claude Code 整合到 CI/CD 流程、GitHub Actions 或自動化腳本中。

MCP 通訊協定:透過 Model Context Protocol 16,Claude Code 能夠與各種開發工具深度整合,從 linter 到測試框架都能無縫配合。

版本穩定性:Anthropic 使用帶有日期的模型版本 (如 claude-sonnet-4-20250514) 來保證生產環境的穩定性,這對企業用戶非常重要。


6. 實際使用體驗與案例分享

在理論功能之外,Claude Code 在真實開發場景中的表現值得關注。透過研究 Anthropic 內部團隊的使用實踐和一些企業案例,體現了其實際價值所在。

Anthropic 內部應用實例

程式碼理解與新人入職

新員工剛到職的改變。過去新工程師需要花幾天時間摸索程式碼庫,現在他們直接問 Claude Code 就能快速定位相關檔案。資料團隊甚至讓 Claude Code 自動讀取專案的 CLAUDE.md 文件,解釋複雜的資料管線依賴關係 17

測試與程式碼審查

測試一直是最麻煩的工作之一,但 Claude Code 讓這變得容易許多。產品團隊用它自動生成測試案例,甚至透過 GitHub Actions 自動化 PR 審查。安全團隊改變了工作流程,從過去的「先寫程式再補測試」轉變為先讓 Claude 生成偽代碼,然後完成完整的測試驅動開發 (TDD) 流程。

特別值得一提的是跨語言能力:當團隊需要為不熟悉的程式語言 (如 Rust) 寫測試時,只需要用自然語言描述需求,Claude 就能生成符合該語言慣例的測試程式碼。

  • 延伸參考資料:Kent Beck 的 CLAUDE.md 內容
    • You are a senior software engineer who follows Kent Beck's Test-Driven Development (TDD) and Tidy First principles. Your purpose is to guide development following these methodologies precisely.

故障排除的神奇表現

重要的案例是故障排除。安全團隊會將錯誤的堆疊追蹤 (Stack Traces) 直接給 Claude Code 分析,原本需要 10-15 分鐘才能定位的問題,現在速度提升了近三倍。

有個特別有趣的案例:資料團隊遇到 Kubernetes 叢集停止調度 Pods 的緊急狀況,他們直接上傳 Google Cloud 儀表板的截圖給 Claude,Claude 像資深專家一樣一步步引導排查,最終發現是 Pod IP 位址耗盡,還提供了解決的確切指令,為團隊節省了 20 分鐘寶貴時間。

非技術團隊的驚喜應用

Claude Code 不只限於程式設計工作。設計團隊會將 Figma 設計稿交給 Claude,讓它自動編寫前端程式碼並不斷修正到符合設計目標。甚至在設計階段就能預先找出系統可能的錯誤狀態,避免後期除錯。

值得關注的是,連法律團隊都用 Claude Code 建立了一個「電話樹 (Phone Tree)」系統原型,幫助員工快速找到對應的法律顧問。這說明非技術團隊也能利用它建立客製化工具,而不需要傳統的開發資源。

企業實戰案例

除了 Anthropic 內部使用,一些知名企業的應用案例也很有參考價值。

橋水基金:AI 投資分析師助理

全球最大對沖基金橋水基金在 Amazon Bedrock 上使用 Claude 作為「投資分析師助理」。據他們 AI/ML 技術長描述,Claude 能像初級分析師一樣理解投資分析指令,自主生成 Python 程式碼執行分析、處理錯誤並輸出圖表。這讓人類分析師從繁瑣的程式設計工作中解放,專注於策略思考 4

Ramp:工程團隊的顯著效果

美國新創獨角獸 Ramp 的數據也很具有說服力:30 天內產生超過 100 萬行 AI 建議程式碼,約半數工程師每週持續使用,事故調查時間減少了 80%

特別值得注意的是,他們的工程師會同時啟動多個 Claude Code 會話並行處理不同任務,以平行方式開發多個模組,大幅提高開發效率 6


7. Ernest’s Claude Code 工作流程建議

痛過才知道…

返璞歸真「PDCA」流程

  • 不要直接要求 Claude 寫程式碼,而是:
    • 讓它先閱讀相關文件、截圖或程式碼,使用 @ 指定參考檔案(們)
    • 要求制定詳細計畫、待辦清單 (shift+tab 切換到 plan mode)
    • 使用 “think harder” 或 “ultrathink” 觸發深度思考(這個可以寫到 CLAUDE.md)
    • 審閱 Claude Code 產生的計畫後再授權執行(它會出現 1, 2, 3 快速鍵可以直接按 1 讓它走,或是 3 跟他討論)

SDLC 軟體開發工作流程

  • 參考我在香港的演講內容與投影片:AWS Summit Hong Kong 2025 Dev Lounge: Reinventing Programming - How AI Transforms Our Enterprise Coding Approach
  • 事情不會消失,該做的還是要做。 18
  • 試著將已經形成共識的團隊工作流程寫下來、文件化、文字化。
    • 還沒形成共識的… 請再努力看看… 最難搞定的是人,不是技術。
    • 技術可以砸錢砸時間,人則要帶心、建立信任。
    • 我協助過的團隊,有傳產團隊、有高科技團隊、有非技術團隊,單看 Claude Code 本身安裝和執行都可以飛快,但是將團隊共識文件化融入 Claude Code 開發流程,則各有快慢。有機會再來詳聊。
    • 總之記得下面這句:
  • 事情不會消失,該做的還是要做。 18

抓大放小

  • 不同維度或是不同層次的需求,請切分成不同任務或對話。
    • 不然很容易產生邏輯互相衝突。
    • 切分成小任務或小文件,有助於依照不同任務載入不同文件檔案,節省 token 消耗。

說出心裡話

  • 你不說,Claude Code 它就不知道。
    • 它不知道,它就會亂猜。
      • 你可以請它猜至少三種版本給你選擇或是討論。
    • 你不知道,可以請他做研究或是跟你討論,找出知識領域或關鍵字,才能縮小範圍。
    • 土炮工作法:「不討論不知道的事情」

CLAUDE.md 專案記憶

  • 在專案根目錄和個人目錄建立 CLAUDE.md 文件,記錄程式碼風格、測試指令、核心架構等資訊。
  • Claude Code 會自動讀取這些文件,讓產出更符合專案需求 19

Subagents

  • (實測觀察中)

其他

  • (未來逐漸補充)

Bottomline

從這些案例中,Claude Code 的主要價值在於:

  1. 降低技術門檻:非專業工程師也能完成複雜的開發任務,大力推薦產品經理們動手玩 Claude Code。目前有看到 Stable Progress 有舉辦給產品經理互相支持前進的活動。
  2. 提升工作效率:特別是在測試、除錯和程式碼審查方面
  3. 跨語言能力:不熟悉的程式語言也能快速上手
  4. 視覺化理解:甚至能分析截圖和設計稿進行開發