跳至主要內容
精選 演進史 MCP Agents Skills 架構

Claude Code 演進史:MCP、Slash Commands、Agents 與 Skills 的故事

視覺化呈現 Claude Code 9 個月的工具演進之旅。從 MCP 到 Slash Commands、Agents、Skills — 了解每個工具背後的設計哲學。

2026年1月15日 12 分鐘閱讀 作者:Claude World

你是否有想過,為什麼 Claude Code 有這麼多不同的工具?MCP、Slash Commands、Agents、Skills…它們看起來很相似,卻各有不同的用途。

這篇文章將追溯 2025年4月到2026年1月,9個月的演進旅程,展示每個工具如何誕生來解決特定問題 — 而它們都朝著同一個目標前進。

時間線一覽

MCP (基礎設施) → Slash Commands → Agents → Skills → Skills 2.0 → 合併
       ↓                  ↓              ↓          ↓            ↓
   Before 0.2.31      v0.2.31      v1.0.60     v2.0.20    v2.1.0/v2.1.3
   (開放標準)       (2025-04-02) (2025-07-24) (2025-10-16) (2026-01-07/09)
快速參考表
工具版本日期用途
MCPBefore v0.2.31-外部 API 整合(開放標準)
Slash Commandsv0.2.312025-04-02可重用的工作流程提示詞
Agentsv1.0.602025-07-24隔離的任務執行
Skillsv2.0.202025-10-16自動偵測的能力
Skills + Forkv2.1.02026-01-07Skills 支援隔離執行
合併v2.1.32026-01-09Commands 與 Skills 統一

核心問題:Context vs 知識

在深入了解每個工具之前,先理解它們共同解決的根本挑戰:

有限的 Context Window vs 無限的知識需求

Context Window 中的每個 token 都很珍貴。但 Claude 需要知道:

  • 如何使用 Google Drive API
  • 你的 Git commit 約定
  • 如何導航你的程式碼庫
  • 在你的專案中什麼是「好程式碼」

如果一切都在 Main Context 裡,你的實際問題就沒有空間了。

Claude Code 的每個工具都從不同角度解決這個問題。


MCP:把通用知識移出去

它是什麼

Model Context Protocol — 連接 AI 助手與外部系統和資料來源的開放標準。

為什麼創建

常見解釋:「統一架構,讓 Claude 能存取外部資料。」

真正的理由節省 Context

沒有 MCP 的話,每次你想用 Google Drive,Claude 都需要知道:

  • API endpoints
  • 認證流程
  • Request/response 格式
  • 錯誤代碼
  • Rate limiting 規則

這可能消耗 3000+ tokens 與你的具體問題無關的通用知識。

MCP 如何解決

❌ 沒有 MCP:
Main Context = 你的問題 + API 文檔

✅ 有 MCP:
Main Context = 你的問題
External Server = API 文檔(作為工具載入)

本質:把通用知識移出去,把 Context 留給你的問題。

關鍵洞察

MCP 是開放標準 — 不是 Claude Code 獨有。任何人都可以實作 MCP servers,創建可重用的整合生態系。


Slash Commands:按需載入細節

它是什麼

.claude/commands/ 目錄中的自訂 markdown 檔案,會將預定提示詞插入對話中。

為什麼創建

MCP 解決了外部工具,但開發流程細節呢?

考慮 Git commits:

  • Conventional Commits 格式
  • 什麼時用 --amend(以及絕對不要用的時候)
  • Pre-commit hook 處理
  • Force push 規則

把這些寫在 Main Context 很浪費空間。Slash Commands 解決了這個問題:

「不用就不讀,用時再載入」

運作方式

<!-- Main Context 只知道: -->
「當用戶輸入 /commit 時,執行 commit.md」

<!-- commit.md(觸發時才載入):-->
## Git Commit Workflow
1. 檢查 git status
2. 解析變更
3. Git Safety Protocol(詳細規則...)
4. 處理 pre-commit hooks

關鍵洞察

Slash Commands 實現了漸進式揭露 — 細節只在需要時出現。它們還能在模型不穩定時提供穩定性,確保工作流程按固定步驟執行。


Agents:分出去做,帶結果回來

它們是什麼

自主的子進程,獨立處理複雜的多步驟任務。

為什麼創建

隨著任務變得複雜,單一 Context 處理變得困難。

想像讓 Claude 分析一個大型專案:

  • 掃描數百個檔案
  • 每個檔案都有發現
  • 大量中間思考

問題

  1. Context 爆炸 — 中間過程佔滿 tokens
  2. 主對話汙染 — 分析細節混雜在主要對話中

Agents 如何解決

「分出去做,做完帶結果回來」

關鍵洞察:Sub-agent Context 永遠不會流回主對話。

  • 獨立的對話歷史
  • 專門的系統提示詞
  • 限制的工具集(例如 Explore agent:只能 Read/Grep/Glob)
  • 只回傳「答案」,不回傳「過程」

這就是 Fork — 分支出去,獨立執行,合併結果。


Skills:可重用的工作流

它是什麼

擴展 Claude 能力的模組化套件。Claude 自動偵測何時使用它們。

為什麼創建(v2.0.20 - 2025-10-16)

最初,Skills 提供:

  • 可重用的工作流程定義
  • 自動偵測(相對於手動 slash commands)
  • 綁定的資源(scripts、references、assets)

限制:Skills 在 Main Context 中執行,使用預設 agent。


重大升級:Skills + Fork(v2.1.0 - 2026-01-07)

Skills 推出僅3個月後,迎來了改變遊戲規則的更新:

新增的兩大超能力

  1. context: fork — 在隔離的 sub-agent context 中執行
  2. agent 欄位 — 指定由哪個 agent 執行 skill

有什麼改變

v2.1.0 之前v2.1.0 之後
在 Main Context 中執行在 forked context 中執行
使用預設 agent使用指定的 agent
執行過程汙染 Main ContextMain Context 保持乾淨

演進時間線

Skills 2.0.20 (2025-10-16)
❌ 無 fork context
❌ 無 agent 指定

├── 3 個月 →


Skills 2.1.0 (2026-01-07) ⚡ 重大升級
✅ context: fork
✅ agent: Explore | general-purpose | custom

├── 2 天 →


Skills 2.1.3 (2026-01-09)
Slash Commands 與 Skills 合併
(現在 Slash Command = Skill + user-invocable: true)

完整的漸進式揭露

有了 v2.1.0,Skills 達成了完整的漸進式揭露

  1. 定義層 → SKILL.md frontmatter
  2. 觸發層 → description 決定何時使用
  3. 執行層 → 指定專門的 agent
  4. 隔離層 → fork context 保持乾淨

合併(v2.1.3 - 2026-01-09)

v2.1.0 推出僅兩天後,slash commands 和 skills 合併了:

“Merged slash commands and skills, simplifying the mental model with no change in behavior”

現在:Slash Commands 就是 Skills — 只是多了 user-invocable: true

這統一了心智模型,同時保留了所有功能。


統一架構

所有四個工具從不同角度解決同一個核心問題:

┌─────────────────────────────────────────────────┐
│              Main Context                        │
│         (當前任務 + 專案配置)                     │
└───────────────────┬─────────────────────────────┘

    ┌───────────────┼───────────────┬─────────────┐
    │               │               │             │
    ▼               ▼               ▼             ▼
┌───────┐     ┌───────┐      ┌──────┐    ┌───────┐
│  MCP  │     │Skills │     │Agents│    │Command│
└───────┘     └───────┘      └──────┘    └───────┘
    │              │              │            │
 外部工具        工作流程知識   專家執行     快速觸發

【把通用知識移出去】【按需載入細節】【隔離執行環境】

解決方案矩陣

工具解決問題做法
MCP外部 API 的通用知識把 API 文檔移到外部 server
Commands開發流程細節不用就不載入
Agents複雜任務的執行Fork 出去,獨立完成
Skills可重用的工作流結合以上三者

目標:Main Context 只保留「當前問題 + 專案配置」,其他一切按需載入、隔離執行、用完即走。


本質:都是提示詞

剝掉花俏的名稱,剩下什麼?

MCP Server       = 外部系統的提示詞封裝
Agent            = 特定角色的提示詞封裝
Skill            = 可重用工作流的提示詞封裝
Slash Command   = 使用者觸發的提示詞封裝

工具名稱只是為了在不同階段使用而命名。

  • 說「連接 MCP」比「載入外部提示詞包」更容易理解
  • 說「用 Explore agent」比「用探索型提示詞」更清楚
  • 說「執行 /commit」比「觸發 commit 提示詞」更簡單

設計哲學

「把對的提示詞,放在對的地方,在對的時機載入」

這就是漸進式揭露。 這就是 Context 節省。 這就是 Claude Code 的架構之美。


總結:9 個月的演進

日期版本里程碑
Before 0.2.31-MCP 基礎設施
2025-04-02v0.2.31Slash Commands
2025-07-24v1.0.60Custom Subagents
2025-10-16v2.0.20Skills 引入
2026-01-07v2.1.0Skills + Fork + Agent(重大升級)
2026-01-09v2.1.3Commands 與 Skills 合併

九個月的迭代改進,每個工具都建立在上一個工具的基礎上 — 全都朝著同一個願景。


想深入探索嗎?

查看 /evolution 的互動式時間線視覺化,或深入閱讀:


本文基於官方 Claude Code CHANGELOG 和 git commit 歷史。