Claude Code 完整使用大全 — 架構, 自動化, 與團隊協作的全景指南
從三層架構到 Hooks 確定性自動化, 從 MCP 外部連接到 Plugin 團隊分發 — 一份涵蓋 Claude Code 所有進階功能的實戰指南。
Claude Code 完整使用大全 — 架構, 自動化, 與團隊協作的全景指南
大多數人只用了 Claude Code 的核心層, 導致 context 膨脹與成本飆升。進階用法是把探索與專項工作委派給下層, 核心層只負責協調與最終決策。
🔵 三層架構 — 先搞懂 Claude Code 在幹嘛
Claude Code 不是一個聊天視窗, 它是一個三層架構的 AI 開發環境。理解這點, 是所有進階用法的前提。
- 核心層 (Core): 主對話 context, 包含 Read, Edit, Bash, Glob, Grep 等基礎工具
- 委派層 (Delegation): 最多 10 個平行 Subagent, 各自隔離 context, 防止主對話汙染
- 擴充層 (Extension): MCP, Hooks, Skills, Plugins — 連接外部世界, 注入領域知識, 確定性自動化
從實作經驗來看, 80% 的效率提升來自「把事情從核心層移出去」。探索用 Subagent, 規則用 Hooks, 外部服務用 MCP。核心層只做最終決策。
⚪ 設定檔層級 — 搞清楚誰蓋過誰
優先順序由高到低:
| 層級 | 路徑 | 說明 |
|---|---|---|
| 全域用戶 | ~/.claude/settings.json | 所有專案共用 |
| 專案共享 | .claude/settings.json | 可 commit, 團隊共用 |
| 本機覆寫 | .claude/settings.local.json | 個人設定, 建議 .gitignore |
| MCP 全域 | ~/.claude/claude.json | 全域 MCP 連線 |
| MCP 專案 | .mcp.json | 專案 MCP, 可 commit |
🔵 CLAUDE.md — 代理的憲法
CLAUDE.md 是每次 session 自動載入的記憶檔。 寫好它比任何高級功能都重要 — 它讓 Claude 每次都知道「這個專案是什麼, 規則是什麼」, 不需要重複解釋。
一份好的 CLAUDE.md 應該包含:
- 技術棧: 明確列出框架, 語言, 資料庫
- 常用指令: Build, Lint, Test, Dev 的完整指令
- 程式碼規範: 具體到「不使用
any」「函式必須標注回傳型別」 - 目錄結構: 元件, 工具函式, 測試, API routes 的位置
- 架構原則: Server Components 為預設, 資料庫存取限制等
好壞對比
| ✗ 太籠統 | ✓ 具體可執行 |
|---|---|
Use TypeScript | 所有新程式碼使用 TypeScript strict mode; 不使用 any; 函式必須標注回傳型別 |
Write tests | 用 Jest + Testing Library; 覆蓋率目標 80%; 每個 API route 必須有整合測試 |
Follow our style | 遵循 .eslintrc.json; 縮排 2 空格; 字串用單引號 |
進階技巧
- 分層 CLAUDE.md: 根目錄放全域規則,
frontend/CLAUDE.md和backend/CLAUDE.md放各自覆寫 - 引用其他文件:
@docs/architecture.md讓 Claude 自動讀取 - 個人設定:
CLAUDE.local.md放個人偏好 (語言, 註解風格), 加入.gitignore
🟢 Prompt 技巧與斜線指令
CLI 裡的 prompt 跟一般聊天不同 — Claude 有工具可以直接動作。好的 prompt 要讓它知道邊界, 目標, 以及何時該停下來問你。
斜線指令
在 .claude/commands/ 建立 .md 檔, 名稱就是指令名:
# 專案級指令
echo "分析效能問題並給出優化建議:" > .claude/commands/optimize.md
# 帶參數的指令
echo 'Fix issue #$ARGUMENTS, 遵循程式碼規範' > .claude/commands/fix-issue.md
使用: /optimize, /fix-issue 123
高效 Prompt 模式
1⃣ 設定邊界: 重構 src/auth/login.ts, 只改邏輯層, 不動 UI。修改前先說明計畫。
2⃣ 分步確認: 先列計畫 → 等確認 → 逐檔修改 → 最後跑測試
3⃣ 指定探索範圍: 只讀取 src/auth/, 不修改任何檔案, 告訴我你看到了什麼。
Context 管理
- 超過 80%:
/compact - 切換任務:
/clear - 繼續上次:
claude --resume
🟢 Skills — 可重用的工作手冊
Skills 是 Markdown 格式的工作手冊, 放在 ~/.claude/skills/ (全域) 或 .claude/skills/ (專案)。Claude 讀懂後, 自然語言或斜線指令都能觸發。
Skills vs Slash Commands
| Slash Commands | Skills | |
|---|---|---|
| 觸發方式 | 手動 /命令名 | frontmatter description 描述條件, 自動觸發 |
| 適合情境 | 「我現在想做某件事」 | 「每次遇到某情況都要做」 |
| 工具限制 | 無 | 可在 frontmatter 指定 allowed-tools / disallowed-tools |
我認為 Skills 的核心價值不是「省打字」, 而是「把隱性知識顯性化」。一個 code review skill 定義了你團隊對品質的標準, 這比任何 wiki 文件都有效。
🔵 MCP — 連接外部世界
MCP (Model Context Protocol) 是 AI 工具的 USB-C 標準介面。沒有 MCP, Claude 只能讀寫本機檔案。有了 MCP, Claude 可以查資料庫, 建 GitHub PR, 讀 Jira ticket, 呼叫任何 API。
安裝方式
# stdio 方式
claude mcp add github -- npx -y @modelcontextprotocol/server-github
# HTTP 遠端伺服器
claude mcp add --transport http github https://mcp.github.com/mcp \
--header "Authorization: Bearer $GITHUB_TOKEN"
# 帶環境變數
claude mcp add postgres \
-e DATABASE_URL="postgresql://user:pass@localhost/db" \
-- npx -y @modelcontextprotocol/server-postgres
常用 MCP 伺服器
| 伺服器 | 功能 |
|---|---|
| GitHub | PR, issues, commits, code review |
| PostgreSQL | 查詢, 分析資料庫 |
| Jira / Linear | 讀寫 ticket, 更新狀態 |
| Slack | 發送訊息, 搜尋頻道 |
| Playwright | 瀏覽器自動化 |
注意: 每個 MCP 伺服器都會佔用 context。用
/context監控用量, 移除不用的伺服器。
🟡 Hooks — 確定性自動化
這是整份指南中我認為最被低估的功能。
Hooks 不靠 AI 判斷, 每次事件觸發就一定執行。 這是 Hooks 與 Skills/Prompt 的根本差異 — 它是保證, 不是請求。
Exit Code 語義
| Exit Code | 行為 |
|---|---|
0 | 允許繼續 |
1 | 非阻擋性錯誤, 執行繼續 |
2 | 阻擋操作, stderr 回傳為拒絕原因 |
安全閘門必須用
exit 2, 不是exit 1。這個細節搞錯, 你的防護等於沒有。
5 個必學 Hook
1⃣ 自動格式化 (PostToolUse): Edit/Write 後自動跑 Prettier
2⃣ 安全閘門 (PreToolUse): 阻擋 rm -rf /, DROP TABLE, 寫入 .env 等危險操作
3⃣ 完成後跑測試 (Stop): 任務結束自動 npm test
4⃣ 桌面通知 (Notification): Claude 等待輸入時通知你
5⃣ Session 啟動載入 git context (SessionStart): 自動注入當前 branch 和最近 commits
🔵 Agents — 平行化與隔離
當任務需要獨立探索, 或你不想讓重度計算汙染主對話 context, 就用 Subagents。最多 10 個平行執行, 每個有自己的隔離 context。
四種內建類型
| 類型 | 特性 | 適合任務 |
|---|---|---|
| Explore | 只讀 | 理解程式碼庫, 找問題根源 |
| Plan | 無工具 | 架構計畫, 任務分解 |
| General | 完整工具 | 通用任務執行 |
| Custom | 自定角色與工具 | 特定領域專項工作 |
平行任務範例
分別探索以下三個問題, 每個開一個子代理平行執行:
1. 找出所有 API 端點, 列出輸入/輸出型別
2. 找出所有資料庫查詢, 標記 N+1 問題
3. 找出所有 TODO/FIXME 註解, 按優先序排列
完成後彙整發現, 給出優先修復清單。
🟢 Plugins — 打包與共享
Plugin 是 commands + hooks + skills + metadata 的可發布套件, 讓整個團隊共享同一套工作流程。
# 從 Git 倉庫安裝
claude plugin install https://github.com/yourteam/claude-plugin
# 查看 / 更新 / 移除
claude plugin list
claude plugin update acme-dev-plugin
claude plugin uninstall acme-dev-plugin
從個人開發者到團隊協作, Plugin 是那個「最後一哩」。把散落在各處的 CLAUDE.md, Skills, Hooks 打包成一個 install 指令, 新人 onboarding 從「讀三天 wiki」變成「跑一行指令」。
🟡 工具選擇速查表
| 需求 | 用這個 | 原因 |
|---|---|---|
| 可重複工作流程 | Skills | 自然語言觸發, 自動套用 |
| 手動觸發特定流程 | Slash Commands | 明確, 可傳參數 |
| 連接外部服務 | MCP | 標準化工具協議 |
| 強制執行規則 | Hooks | 確定性, 每次都跑 |
| 平行執行 / 隔離 context | Agents | 防止 context 汙染 |
| 團隊標準化 / 分發 | Plugins | 一鍵部署給所有人 |
| 專案記憶 / 規則 | CLAUDE.md | 每次 session 自動載入 |
Claude Code 的真正價值不在於它能幫你寫程式碼 — 而在於你能用三層架構, 把一個 AI 助手變成一個有記憶, 有規則, 有自動化的開發環境。工具本身不複雜, 但把它們組合對了, 效果是指數級的。
