研究日期
2026-01-28(整合自 2025-01-17 與 2026-01-28 版本)
第一部分:Claude Code 官方工具
什麼是 Claude Code?
Claude Code 是由 Anthropic 開發的進階代理式命令列介面(CLI)工具。它將 Claude(特別是 Claude 3.7 Sonnet 等模型)的能力直接整合到您的開發環境中,允許它自主地規劃、撰寫、除錯和執行程式碼,以及管理終端機操作。
與典型的聊天介面或 IDE 擴充功能(只提供程式碼片段建議)不同,Claude Code 充當半自主的開發者。它允許您將複雜的多步驟工程任務(例如「重構此模組」、「修復此失敗的測試」或「分析此儲存庫」)委派給它,然後透過執行終端機命令、編輯檔案和管理 git 操作來完成這些任務。
主要特性
1. 代理式工作流程(Agentic Workflow)
- 作為代理運作,能夠將高層次請求分解為計畫並逐步執行,無需持續人工干預
- 可以自主處理複雜的多步驟任務
2. 深度情境感知
- 管理自己的上下文視窗
- 自動摘要對話和檔案內容以保持在限制內,同時保留必要資訊
- 自動管理 token 使用,避免超出限制
3. 檔案系統與工具存取
- 對檔案系統有直接讀寫存取權限
- 可執行 shell 命令
- 支援標準開發工具(grep、git、npm/pip 等)
4. 研究與推理
- 在進行變更之前,可以掃描您的程式碼庫以了解架構和相依性
- 能夠自主分析和理解程式碼結構
5. 無頭模式(Headless Mode)
- 支援非互動模式,適合 CI/CD 管線、pre-commit hooks 和自動化腳本
- 可在無人干預的情況下執行任務
6. 安全性
- 通常採用基於權限的模型
- 在執行影響重大的 shell 命令或檔案編輯之前,會要求確認
- 設計為高自主性但可控
工作原理
當您在終端機中執行 claude 時:
步驟 1:輸入(Input)
您提供自然語言提示(例如:“找出登入邏輯中的錯誤並修復它”)
步驟 2:規劃(Planning)
模型分析請求,搜尋程式碼庫(使用 ls、grep 或內部搜尋等工具)以建立情境,並制定計畫
步驟 3:執行(Execution)
透過執行終端機命令來編輯檔案、執行測試或管理 git 提交,從而執行計畫
步驟 4:驗證(Verification)
可以透過執行建置/測試命令來驗證其變更,並在發生錯誤時迭代修正
主要使用案例
1. 新手上線與探索
- 透過提出高層次問題快速理解新程式碼庫
- 例如:「如何處理驗證?」、「API 路由定義在哪裡?」
2. 重構與維護
- 將繁瑣的重構任務或跨多個檔案的相依性更新委派給 Claude Code
- 自動化維護任務
3. 錯誤修復
- 讓代理追蹤程式碼路徑並執行重現腳本,從而識別根本原因
- 快速診斷和修復 bug
4. Git 操作
- 自動化提交訊息
- 解決簡單的合併衝突
- 摘要 PR 中的變更
5. 自動化
- 撰寫並執行一次性腳本來操作資料或設定檔
- 建立自動化工作流程
安裝與設定
前置需求
- Node.js: 版本 18 或更高
- 帳號: 通用 Claude API 帳號(Console)或 Claude Pro/Team 工作區
- 需要設定帳單/額度
安裝步驟
1. 透過 npm 安裝
|
|
2. 驗證
首次執行工具以啟動互動式 OAuth 流程:
|
|
這將開啟您的瀏覽器以使用 Anthropic 進行驗證
3. 更新(如需要)
|
|
最佳實踐
1. 清楚表達意圖
雖然它是「代理式的」,但提供清楚的接受準則(例如:「修復必須通過 auth.test.ts 測試套件」)能改善結果
2. 審查關鍵變更
雖然它可以自動執行命令,但應始終對邏輯繁重的變更(特別是程式碼庫的敏感部分)審查檔案差異
3. 在 Git 儲存庫中使用
始終在 git 儲存庫內工作。這允許您輕鬆使用 git checkout . 來復原變更,如果代理偏離了軌道
4. 善用情境
- 您可以明確將檔案新增至其情境
- 或讓它自行探索檔案
- 對於專注任務,在提示中明確命名相關檔案有幫助
5. 監控 Token 使用
代理循環可能會消耗大量 token
- 在 Anthropic Console 中密切注意您的使用量限制
- 留意長時間執行的任務
6. 工作流程建議
快速聊天:
|
|
規劃模式(僅規劃,不修改):
|
|
互動式開發:
|
|
7. 安全性考量
- 始終在 git 儲存庫中使用(可以輕鬆復原)
- 審查生產環境中的重要變更
- 注意代理執行的命令
- 監控 token 使用量
進階功能
1. 上下文管理
Claude Code 自動管理其上下文視窗:
- 摘要對話歷史
- 摘要已讀取的檔案
- 保留相關資訊,棄用不重要的內容
2. 自動工具使用
- 自動選擇適當的工具(grep、ls、cat 等)
- 基於任務需求決定最佳方法
3. 迭代改進
- 執行測試以驗證變更
- 發現錯誤時自動重試
- 學習最佳方法
與其他工具的整合
1. CI/CD 管線
- 在無頭模式下執行自動化檢查
- 自動生成測試或程式碼
2. Pre-commit Hooks
- 自動格式化或 lint
- 在提交前執行檢查
3. 腳本自動化
- 整合到現有腳本中
- 自動化重複性任務
常見問題解答
Q: Claude Code 與 Claude Chat 有何不同?
A: Claude Code 是命令列工具,可以直接執行命令和編輯檔案。Claude Chat 是網頁介面,主要用於對話和建議。
Q: 它支援哪些程式語言?
A: Claude Code 理論上支援所有程式語言,因為它可以讀取和編輯任何文本檔案。
Q: 如何限制 Claude Code 的權限?
A: 使用 --permission-mode 標誌來控制權限級別,或在互動中明確認可每個操作。
Q: 可以在 Docker 容器中使用嗎?
A: 可以,只需確保容器內有 Node.js 和必要的權限。
第二部分:affaan-m/everything-claude-code 增強套件
什麼是 affaan-m/everything-claude-code?
affaan-m/everything-claude-code 是一個全面、經過實戰驗證的 Claude Code 配置套件,包含 agents、skills、hooks、commands、rules 和 MCPs(Multi-Context Plugins)。由 Affaan Mustafa 及其團隊開發,此專案在 Anthropic Claude Code 黑客松中獲獎,並經過超過 10 個月的每日實際使用優化。這個儲存庫已經是生產就緒的狀態,專門幫助開發者高效且可擴展地建立複雜的 AI 工作流程。
這個專案將 Claude Code 配置包裝成 plugin marketplace + plugin,同時提供可手動複製的資料夾(agents、skills、commands、hooks、rules、MCP configs、scripts、examples)。其設計理念是將「工作流程作為可重複使用的原語」,透過規則 + commands + agents + hooks +(可選)MCP servers 來實現。
主要特性
- 完整配置集合:包含 agents、skills、hooks、commands、rules、MCPs 等所有 Claude Code 配置
- 模組化與實戰驗證:透過真實世界使用演進的設定
- 詳細指南:提供縮寫和長格式指南,解釋基礎和進階設定
- 記憶持久化 hooks:管理跨 sessions 的 context
- 可重複使用的工作流程:強調 token 經濟、驗證和平行化
- 外部工具整合:透過 MCPs 整合常見 CLI(GitHub、Supabase、Vercel、Railway)
- 跨平台 Node.js 腳本:hooks/scripts 使用跨平台 Node.js 而非僅限 bash
- 安全處理敏感功能:如認證和支付
工作原理
架構基於以下核心原則:
- 模組化與關注點分離:獨立但可互操作的元件
- 可擴展性:支援平行 sessions 和多 agent 工作流程
- 可維護性:組織化的配置方便更新
- 安全性:專用 skills/hooks 處理敏感操作
- 效能:優化的 token 使用和 context 管理
層級架構:
- Skills:封裝可重複使用的邏輯
- Commands:提供可呼叫的動作
- Hooks:處理生命週期事件,如記憶持久化和 session 管理
- Agents:專門化的 AI 實例處理特定任務
- MCPs:整合外部工具,同時管理 Claude 的 context window 限制
記憶管理:
- 使用
hooks/機制實現記憶持久化 - 支援 session 存儲和動態系統提示注入
- 優化 token 使用以維持高效工作流程
主要使用案例
- 應用現代化:透過 AI 自動化更新舊有應用程式
- DevSecOps 和 DevOps 自動化:自動化部署、監控和安全檢查
- CI/CD 管線自動化:自動化建置、測試和部署流程
- 行業特定解決方案:醫療保健、金融、製造、政府領域的自動化
- 自動化內容創建:新聞信、報告等內容的自動生成
- 開發者工具增強:代碼審查、調試和測試自動化
- 多 agent 平行工作流程:同時處理多個相關任務以提高效率
安裝與設定
前置需求
- Node.js:用於執行 hooks 和腳本
- Anthropic Claude Code:已安裝並設定 API 存取權限(無免費方案)
- Git:用於克隆儲存庫
安裝步驟
方法 1:作為 Plugin 安裝(推薦)
在 Claude Code 中執行:
|
|
或透過 ~/.claude/settings.json 啟用:
|
|
方法 2:手動安裝
|
|
⚠️ 重要限制:Claude Code plugins 不會自動分發 rules/ 資料夾(上游限制),必須手動複製。
設定 Package Manager
|
|
偵測順序:環境變數 → 專案 .claude/package-manager.json → package.json → lockfiles → 全局配置
設定 MCP Servers(可選)
儲存庫提供入門列表在 mcp-configs/mcp-servers.json(GitHub、Supabase、Vercel、Railway 等),但你必須替換佔位符。
專案層級配置(.mcp.json):
|
|
或透過 CLI:
|
|
💡 提示:MCP 支援環境變數擴展(如 ${API_KEY}),若缺少必需變數會導致解析失敗。
最佳實踐
層級配置管理
將 Claude Code 配置視為分層結構:
- 全局預設:
~/.claude/settings.json - 團隊/專案預設:
.claude/settings.json - 機密/個人覆寫:
.claude/settings.local.json(git-ignored)
MCP 使用選擇性
- 儲存庫建議:雖配置很多,但每個專案啟用 <10 個以保留 context window
- 長期考慮:偏好「CLI + skills/commands 包裝器」而非總是開啟的 MCPs,以提升 token/context 效率
Hooks 作為 Guardrails
- 從提醒/格式化工具開始,逐步加入阻擋器
- 在安全的儲存庫中先測試 hooks
- Claude 在啟動時會 snapshot hooks,在
/hooks中需要審查後才生效
Token 經濟與 Context 管理
- 使用記憶持久化 hooks 管理跨 sessions 的 context
- 優先使用 lightweight commands 而非 always-on MCPs
- 善用多 agent 平行工作流程以提升效率
Plugin 維護與驗證
- 使用
claude plugin validate .claude-plugin/plugin.json驗證 manifests - 儲存庫記錄了「validator quirks」,注意陣列與字串、明確 agent 路徑、必需的
version欄位
進階功能
提供的 Hooks
儲存庫包含多個 hooks:
- TMux 相關:阻止在 tmux 外執行 dev servers(保留 logs/session 連續性)
- 提醒:提醒對長時間任務使用 tmux
- 格式化:編輯後自動使用 Prettier 格式化 JS/TS
- TypeScript 檢查:編輯後執行 TS 檢查
- Console.log 警告:偵測並提醒 console.log 使用
- 記憶管理:戰略性壓縮建議、pre-compact/session start hooks
⚠️ 注意:多數 hooks 呼叫 node "${CLAUDE_PLUGIN_ROOT}/scripts/...",若未安裝為 plugin 會失效。
Statusline 配置
範例 statusLine 顯示:user/path/branch/context/model/time/todos:
|
|
複製 examples/statusline.json 到 ~/.claude/settings.json。
CLAUDE.md 記憶管理
專案層級:將 CLAUDE.md 放在儲存庫根目錄,包含具體規則(不可變性、無 console.log、TDD、安全基礎等)。
用戶層級:將 ~/.claude/CLAUDE.md 放在用戶目錄,定義全局哲學並指向 ~/.claude/rules/ 下的模組化規則檔案。
多 Agent 平行工作流程
- 利用
agents/目錄中的專門化 agents - 平行執行相關任務以提高效率
- 使用
sessions_spawn或相關指令啟動 sub-agents
常見問題解答
Q: Plugin 安裝後 rules 不生效?
A: Claude Code plugins 不會自動分發 rules/ 資料夾(上游限制)。必須手動複製:
|
|
Q: 複製 hooks 後無法運作?
A: 許多 hooks 使用 ${CLAUDE_PLUGIN_ROOT} 變數引用 scripts。若未安裝為 plugin,必須重寫路徑或確保正確設定此環境變數。建議直接安裝為 plugin。
Q: Hook 修改後不生效?
A: Claude 會在啟動時 snapshot hooks,修改後需要在 /hooks 進行審查才會生效。
Q: MCP 配置失敗?
A:
- 檢查是否替換了所有
YOUR_*_HERE佔位符 - 確認
${API_KEY}等環境變數已設定 - MCP 解析失敗若缺少必需變數
Q: Sessions 變慢或 context 減少?
A: 可能啟用了太多 MCP servers。建議每個專案啟用 <10 個以保持效能。
Q: Plugin manifest 驗證失敗?
A: 驗證器很嚴格。檢查:
- 陣列與字串的區別
- 明確的 agent 路徑
- 必需的
version欄位 - 参考
.claude-plugin/PLUGIN_SCHEMA_NOTES.md
Q: 如何選擇 package manager?
A: 使用偵測工具查看會選擇哪個:
|
|
偵測順序:環境變數 → 專案設定 → package.json → lockfiles → 全局配置
總結
Claude Code 官方工具
Claude Code 是一個強大的 AI 驅動開發工具,結合了:
- 代理式工作流程
- 深度情境感知
- 直接檔案系統存取
- 自動化執行能力
它特別適合:
- 繁重的重構任務
- 錯誤診斷與修復
- 程式碼庫探索
- 自動化腳本編寫
affaan-m/everything-claude-code 增強套件
affaan-m/everything-claude-code 是一個高度模組化、可擴展且生產就緒的 Claude Code 配置套件,賦能開發者高效建立複雜的 AI 工作流程。
關鍵優勢:
- 提高開發效率
- 減少重複性工作
- 自動化複雜任務
- 智能化程式碼分析
使用建議:
- 始終在 git 儲存庫中使用
- 審查重要變更
- 監控 token 使用量
- 提供清楚、具體的請求
套件配置要點:
- 作為 plugin 安裝最簡單,但 rules 需手動複製
- Hooks/scripts 使用跨平台 Node.js,需注意
${CLAUDE_PLUGIN_ROOT}路徑 - MCP 啟用 <10 個以維持效能
- 使用層級配置管理(全局 → 團隊 → 個人)
- Hooks 作為 guardrails 而非魔法,先測試再啟用
透過適當的配置和最佳實踐,Claude Code 加上 affaan-m/everything-claude-code 可以大幅提升開發工作效率和可擴展性。
資源連結
Claude Code 官方
- 官方文件:docs.anthropic.com
- 產品頁面:claude.com/product/claude-code
- GitHub 儲存庫:github.com/anthropics/claude-code
- 安裝:
npm install -g @anthropic-ai/claude-code