Claude Code 的三大核心:Subagents、Commands、Skills
概述
我用 Claude Code 也開發一段時間了,想跟大家分享。其實 Claude Code 的整個生態系都是圍繞三個主題在進行擴充的,搞懂之後就會發現其他的設定都是他們的延伸。
三大核心概念
1. Subagents(獨立執行的代理人)
位置:.claude/agents/<name>.md
Subagent 是一個可以在獨立 context 裡運作的代理人,我們可以給他指定專屬的工具、權限、模型與記憶。
特色:
- 獨立運作的上下文環境
- 可指定專屬工具與權限
- 可選擇不同模型
- 支援記憶模組
使用場景:
- 隔離主線 context 避免污染
- 多工與平行處理任務
- 專門化的任務代理(如:code review、testing)
2. Commands(可重用的提示詞模板)
位置:.claude/commands/<name>.md
Commands 是可以讓我們主動呼叫的提示詞模板,它會把內容寫進當前的 context。
特色:
- 手動觸發的提示詞模板
- 常用工作流的封裝(如:
/commit、/review) - 可提煉的重複內容
使用場景:
- 封裝常用的工作流
- 重複性高的任務自動化
- 團隊共享的標準化流程
3. Skills(可設定的知識模組)
位置:.claude/skills/<name>/SKILL.md
雖然同樣是將內容寫入 context,但 Skill 不像 Command 只能手動觸發。Skill 支援自動觸發、預先載入、漸進式披露,也能放腳本、範例檔案、文件內容等,全部都可以按需讀取。
特色:
- 支援自動觸發與預先載入
- 漸進式披露內容
- 可包含腳本、範例檔案、文件
- 高度可客製化的領域知識封裝
使用場景:
- 特定領域知識封裝
- SOP 標準作業程序模組化
- 偏好設定與範本管理
生態系架構圖
┌─────────────────────────────────────────────────────────────┐
│ Claude Code 生態系 │
├─────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ Subagents │ │ Commands │ │ Skills │ │
│ │ (代理人) │ │ (模板) │ │ (知識模組) │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
│ │ │ │ │
│ └─────────────────┼─────────────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────────┐ │
│ │ 延伸功能 (Extensions) │ │
│ └─────────────────────┘ │
│ │ │
│ ┌──────────┬──────────┼──────────┬──────────┐ │
│ │ │ │ │ │ │
│ ▼ ▼ ▼ ▼ ▼ │
│ ┌────┐ ┌────┐ ┌────┐ ┌────┐ ┌────┐ ┌────┐ │
│ │Hooks│ │MCP │ │Plugins│ │Memory│ │Settings│ │Status│ │
│ │ │ │ │ │ │ │ │ │ │ │Line │ │
│ └────┘ └────┘ └────┘ └────┘ └────────┘ └────┘ │
│ │
│ ┌──────────┬──────────┐ │
│ │Check- │CLI │ │
│ │pointing │Flags │ │
│ └──────────┴──────────┘ │
└─────────────────────────────────────────────────────────────┘
延伸功能詳解
1. Hooks(鉤子)
位置:.claude/hooks/
將預先定義好的規則,讓 Claude Code 在特定的時間點自動觸發。
觸發時機範例:
- 使用者送出提示前
- 工具呼叫後
- Session 開始或結束時
2. MCP Servers(MCP 伺服器)
位置:.mcp.json
連接外部工具、資料庫、API 的標準協定。
用途:
- 整合第三方服務
- 資料庫連接
- 自定義工具擴展
3. Plugins(插件)
將 Skills、Subagents、Hooks、MCP 等打包成可以分享的套件。
優點:
- 便于分享與重用
- 統一的封裝格式
- 社群共享机制
4. Memory(記憶)
位置:CLAUDE.md + @path imports
每次開啟對話自動載入的專案規則與偏好設定,可拆成多個檔案引用。
功能:
- 專案規則自動載入
- 偏好設定持久化
- 多檔案引用管理
5. Settings(設定)
位置:.claude/settings.json
用來設定權限、預設模型、Sandbox、快捷鍵等功能。
設定範圍:
Global:全局適用Project:僅適用於當前專案
6. Status Line(狀態列)
顯示 context 用量、模型、成本的狀態列。
顯示資訊:
- Context 使用量
- 目前使用模型
- 成本追蹤
7. Checkpointing(檢查點)
自動為 Claude 的每次編輯建立快照,可隨時倒回先前狀態。
特色:
- 底層使用 Git 版控
- 獨立於專案版控
- 不影響專案歷史
8. CLI Flags(命令列參數)
在終端機啟動 Claude Code 時後面加的參數,可以控制 session 的行為。
實用範例:
# 跳過權限確認的大 BOSS 模式
claude --dangerously-skip-permissions
# 其他常用參數
claude --model <model-name>
claude --dangerously-skip-permissions --print
快速參考表
| 類型 | 位置 | 觸發方式 | 主要用途 |
|---|---|---|---|
| Subagent | .claude/agents/ | 程式呼叫 | 獨立任務代理 |
| Command | .claude/commands/ | 手動輸入 / | 提示詞模板 |
| Skill | .claude/skills/ | 自動/手動 | 知識模組 |
| Hook | .claude/hooks/ | 事件觸發 | 自動化規則 |
| MCP | .mcp.json | 啟動時載入 | 外部工具整合 |
| Plugin | .claude/plugins/ | 手動啟用 | 功能套件 |
| Memory | CLAUDE.md | 自動載入 | 專案規則 |
總結
掌握這三大核心概念(Subagents、Commands、Skills)及其延伸功能,能幫助你:
- 更有效地組織工作流程
- 建立可重用的知識庫
- 提升團隊協作效率
- 客製化符合需求的開發環境
建議從自己最常使用的功能開始,逐步探索其他擴展,逐步建構完整的個人化 Claude Code 開發環境。