Don’t Build Agents, Build Skills Instead — 別再打造 Agent,改做 Skills 吧

Anthropic 的 Barry Zhang 和 Mahesh Murag 在 AI Engineer Code Summit 上分享了他們對 AI Agent 發展方向的最新思考。他們認為,與其為每個領域打造獨立的 Agent,不如建立可組合的「Skills」系統。Skills 本質上就是結構化的資料夾,包含程序性知識和腳本工具,讓 Agent 能快速獲得特定領域的專業能力,同時保持架構的簡潔和可擴展性。


原影片連結:https://www.youtube.com/watch?v=CEvIs9y1uog

影片重點

  • Agent 具備智慧與能力,但缺乏特定領域的專業知識(domain expertise)
  • 程式碼是通往數位世界的通用介面,Agent 的核心基礎架構可以精簡到只需要 Bash 和檔案系統
  • Skills 是包含程序性知識的結構化資料夾,設計上刻意保持簡單
  • Skills 採用漸進式載入(progressive disclosure),運行時只顯示 metadata,需要時才讀取完整內容
  • 生態系統已發展出基礎型、第三方整合型、企業內部型三類 Skills
  • Skills 與 MCP 互補:MCP 提供外部連接,Skills 提供領域專業知識
  • Skills 是邁向 Agent 持續學習的具體步驟
  • Agent 技術堆疊類似電腦發展史:模型如處理器、Agent Runtime 如作業系統、Skills 如應用程式

詳細內容

[00:21] 開場與背景回顧

Barry Zhang 開場提到,自上次演講以來,大家已經從「Agent 是什麼」的階段進展到每天都在使用 Agent 的階段。但他指出一個關鍵問題:Agent 擁有智慧和能力,卻不見得具備我們日常工作所需的專業知識。這就是他們創建 Agent Skills 的動機。

同時,生態系統也有了重大進展:MCP 成為 Agent 連接的標準協議、Claude Code 作為第一個編碼 Agent 正式發布、Claude Agent SDK 提供了生產級的 Agent 基礎架構。他們認為,Agent 的新典範在於模型與運行環境之間更緊密的耦合。

[01:15] 程式碼是通用介面

Barry 提出一個核心觀點:程式碼不只是一種使用場景,而是通往數位世界的通用介面。過去他們以為不同領域的 Agent 會長得很不一樣,各自需要專屬的工具和框架。但打造 Claude Code 之後,他們發現它其實是一個通用型 Agent。

舉例來說,生成一份財務報告的過程——呼叫 API 取得數據、在檔案系統中整理資料、用 Python 進行分析、以文件格式產出洞見——全部都可以透過程式碼完成。因此,Agent 的核心架構可以精簡到只需要 Bash 和檔案系統,這既優雅又具備良好的可擴展性。

[01:55] 領域專業知識的重要性

然而,這帶來了一個新問題:領域專業知識。Barry 用了一個生動的比喻——誰來幫你報稅?是擁有 300 IQ 的數學天才 Mahesh,還是經驗豐富的稅務專家 Barry?答案顯然是後者。我們不需要 Agent 從第一原理推導 2025 年的稅法,我們需要的是來自領域專家的一致性執行。

現今的 Agent 就像 Mahesh——聰明絕頂,但缺乏專業知識。它們在獲得充分指引後能做出驚人的成果,但往往缺少關鍵的前置脈絡,無法很好地吸收你的專業知識,而且不會隨時間學習。

[02:50] Skills 的定義與設計哲學

這就是 Agent Skills 誕生的原因。Skills 被定義為「包含可組合程序性知識的結構化檔案集合」。簡單來說,它們就是資料夾。

這種簡潔性是刻意的設計。他們希望任何人——無論是人類還是 Agent——只要有一台電腦就能創建和使用 Skills。Skills 也與現有工具無縫整合:可以用 Git 做版本控制、放在 Google Drive 分享、打包成 ZIP 發給團隊。

Skills 中可以包含腳本作為工具。傳統工具存在明顯問題:指令寫得不清楚、模型遇到困難時無法修改工具、工具始終佔用 context window。程式碼解決了這些問題——它自帶文件說明、可被修改、可以存放在檔案系統中等到真正需要時再載入。

[03:55] Skills 的漸進式載入

Barry 舉了一個實際例子:他們反覆看到 Claude 寫同一段 Python 腳本來為投影片套用樣式,於是讓 Claude 把腳本保存為 Skill 中的工具,供未來的自己使用。這讓操作變得更加一致且高效。

由於 Skills 可以包含大量資訊,他們設計了漸進式載入(progressive disclosure)機制來保護 context window。在運行時,模型只會看到 Skill 的 metadata(表示它擁有這個技能)。當 Agent 需要使用某個 Skill 時,才會讀取完整的 skill.md 核心指令和目錄結構。其餘內容則按需存取。

[04:40] 快速成長的生態系統

自從五週前發布以來,這個簡潔的設計已轉化為數千個 Skills 的快速成長生態系統,主要分為三類:

基礎型 Skills:賦予 Agent 全新的通用或特定領域能力。Anthropic 自己打造了文件 Skills,讓 Claude 能創建和編輯專業品質的辦公文件。Cadence 則建立了科學研究 Skills,讓 Claude 在 EHR 數據分析和 Python 生物資訊學函式庫方面表現更佳。

第三方整合型 Skills:幫助 Claude 更好地使用合作夥伴的軟體和產品。例如 Browserbase 為其開源瀏覽器自動化工具 Stagehand 打造了 Skill,讓 Claude 能更有效地瀏覽網頁。Notion 推出了一系列 Skills,幫助 Claude 理解使用者的 Notion 工作空間並進行深度研究。

企業內部型 Skills:這是最受歡迎的類型。Fortune 100 大企業正在使用 Skills 教導 Agent 組織的最佳實務和獨特的內部軟體使用方式。大型開發者生產力團隊則用 Skills 來部署 Claude Code,教導它程式碼風格規範和內部開發流程。

[06:20] 趨勢觀察

隨著生態系統成長,他們觀察到幾個有趣的趨勢:

首先,Skills 變得越來越複雜。最基本的 Skill 仍然可以只是一個含有提示和指令的 markdown 檔案,但越來越多 Skills 開始打包軟體、可執行檔、二進位檔、程式碼、腳本和素材。未來 Skills 可能需要數週或數月來建構和維護,就像現在的軟體一樣。

其次,Skills 與 MCP 生態系統形成互補。開發者正在建構能串接多個 MCP 工具的 Skills 工作流程。在這種模式下,MCP 提供與外部世界的連接,Skills 則提供專業知識。

第三,也是最令人興奮的趨勢:非技術人員也開始建構 Skills。來自財務、招聘、會計、法務等領域的人正在使用 Skills 擴展通用 Agent 的能力,讓 Agent 更能服務他們的日常工作。

[07:55] 通用 Agent 的新興架構

將上述趨勢整合在一起,Mahesh 描繪了通用 Agent 的新興架構。這個架構包含幾個核心組件:

  1. Agent Loop:管理模型的內部 context,控制 token 的進出
  2. Runtime 環境:提供檔案系統以及讀寫程式碼的能力
  3. MCP 伺服器:來自外部世界的工具和數據
  4. Skills 庫:數百甚至數千個 Skills,Agent 在運行時按需載入

這意味著,要讓 Agent 在新領域獲得能力,可能只需要裝備正確的 MCP 伺服器和 Skills 庫。Anthropic 在推出 Skills 五週後就立刻在金融服務和生命科學領域推出新服務,每個都配備了一組 MCP 伺服器和 Skills。

[08:50] Skills 的未來發展方向

Anthropic 正在思考 Skills 未來的幾個發展重點:

  • 測試與評估:像對待軟體一樣對待 Skills,確保 Agent 在正確的時機載入正確的 Skill,並衡量配備 Skill 後的輸出品質
  • 版本控制:隨著 Skill 演進,Agent 行為的變化應該被清楚追蹤,建立明確的演變脈絡
  • 依賴管理:讓 Skills 能明確依賴其他 Skills、MCP 伺服器以及環境中的套件,提升 Agent 在不同運行環境中的可預測性

[09:50] Skills 與知識共享的願景

Barry 和 Mahesh 對未來的願景是:企業內部建立起由人和 Agent 共同維護的、不斷演進的知識庫。Skills 就是實現這個願景的重要一步。當你與 Agent 互動並提供回饋和組織知識時,它會變得更好,而團隊和組織中的所有 Agent 也會隨之進步。

當新成員加入團隊開始使用 Claude 時,它已經了解團隊關心的事情、日常工作流程和最有效的工作方式。這種複合價值還會擴展到組織外部——就像別人建的 MCP 伺服器能讓你的 Agent 更實用一樣,社群中別人建立的 Skill 也能讓你的 Agent 更強大。

[10:40] Skills 與持續學習

當 Claude 開始自己創建 Skills 時,這個願景將變得更加強大。Skills 被特別設計為邁向持續學習的具體步驟。

這個標準化格式提供了一個重要保證:Claude 寫下的任何東西,都能被未來版本的自己高效使用,讓學習真正可轉移。Skills 讓「記憶」這個概念變得更具體——雖然不能捕捉所有類型的資訊,但能捕捉 Claude 在特定任務上可用的程序性知識。

隨著使用時間增長,Claude 能即時獲得新能力、按需演進、淘汰過時的技能。他們的目標是:Claude 在與你合作的第 30 天,會比第 1 天好上許多。

[11:35] Agent 技術堆疊類比電腦發展史

最後,演講者將 Agent 技術堆疊與電腦發展史做了一個精彩的類比:

  • 模型就像處理器:需要巨額投資,蘊含巨大潛力,但單獨使用價值有限
  • Agent Runtime 就像作業系統:透過協調程序、資源和數據,讓處理器變得更有價值
  • Skills 就像應用程式:少數公司打造處理器和作業系統,但數百萬開發者打造了封裝領域專業知識和獨特觀點的軟體

他們希望 Skills 能為每個人打開這一層,讓大家只需要把東西放進資料夾,就能發揮創意、解決具體問題。

我的想法

這場演講最讓我印象深刻的是 Skills 設計哲學中的「刻意簡潔」。在 AI 工具鏈日益複雜的今天,Anthropic 選擇用「資料夾」這個最原始的概念作為基礎單位,反而展現了對問題本質的深刻理解。真正的瓶頸不在於 Agent 的智慧程度,而在於如何有效傳遞和管理領域知識。

Skills 與 MCP 的互補關係也值得關注。MCP 解決的是「連接什麼」的問題,Skills 解決的是「怎麼做」的問題。這兩者結合,讓 Agent 既能存取外部資源,又知道如何在特定領域高效運作。

不過,Skills 體系在實際應用中仍有一些值得觀察的挑戰:Skills 的品質控制(社群貢獻的 Skill 品質參差不齊)、跨 Agent 平台的相容性(目前主要綁定 Claude Code 生態系統)、以及當 Skills 數量龐大時的檢索與匹配效率。演講中提到的測試、版本控制、依賴管理等方向,正是解決這些挑戰的關鍵。

將 Agent 堆疊類比為處理器→作業系統→應用程式的發展路徑非常有啟發性。如果這個類比成立,那麼未來可能會出現 Skills 的「App Store」,以及專門的 Skills 開發工具鏈和最佳實務。

進階測驗:Agent Skills 架構與應用

測驗目標:驗證你是否能在實際情境中應用 Agent Skills 的設計理念與架構知識。
共 5 題,包含情境題與錯誤診斷題。

1. 你正在為企業部署 Claude Code,需要讓它了解公司的程式碼風格規範和內部 API 使用慣例。根據 Anthropic 的 Agent Skills 架構,最佳做法是什麼? 情境題

需求: – 讓 Claude Code 遵守公司的命名規範(camelCase) – 了解內部 REST API 的認證流程 – 使用公司特定的錯誤處理模式 – 多個開發團隊都要套用相同的規範
  • A. 為每個團隊各打造一個專用的 Agent,在程式碼中寫死這些規範
  • B. 建立包含程式碼風格和 API 慣例的 Skills 資料夾,讓所有團隊共用並以 Git 做版本控制
  • C. 在每次對話中手動告訴 Claude Code 這些規範
  • D. 建立一個 MCP 伺服器來即時查詢公司規範文件

2. 你的 Agent 已經裝備了 200 個 Skills,涵蓋多個業務領域。使用者要求 Agent 完成一項財務分析任務。根據 Skills 的漸進式載入(progressive disclosure)機制,Agent 在運行時會如何處理這些 Skills? 情境題

Agent 配備的 Skills 包括: – 財務分析相關 Skills x 15 – 程式碼審查相關 Skills x 30 – 文件生成相關 Skills x 25 – 其他領域 Skills x 130
  • A. 將全部 200 個 Skills 的完整內容一次載入到 context window 中
  • B. 只載入財務分析相關的 15 個 Skills 的完整內容,忽略其餘 Skills
  • C. 所有 200 個 Skills 僅顯示 metadata,Agent 在判斷需要使用特定 Skill 時才讀取其完整的 skill.md 和相關檔案
  • D. 由使用者手動選擇要載入哪些 Skills,Agent 不參與選擇過程

3. 你的團隊想讓 Claude 能自動查詢公司 CRM 系統的客戶資料,並根據查詢結果產生符合公司格式的業務報告。根據 Anthropic 描述的 Skills 與 MCP 互補架構,最佳的實作方式是什麼? 情境題

任務拆解: 1. 連接 CRM 系統讀取客戶資料 2. 根據公司的報告模板格式化內容 3. 套用業務分析邏輯和評分標準 4. 產出最終報告文件
  • A. 全部用 Skills 實作,包含 CRM 連接邏輯和報告生成流程
  • B. 全部用 MCP 伺服器實作,包含資料查詢和報告格式化
  • C. 用 Skills 處理 CRM 連接,用 MCP 處理報告格式化
  • D. 用 MCP 伺服器處理 CRM 資料連接,用 Skills 提供報告格式模板和業務分析的領域知識

4. 某團隊為 Claude 建立了一個 Skill,但發現 Agent 在處理大量任務時 context window 經常溢出,導致回應品質下降。以下是他們的 Skill 結構,最可能的問題是什麼? 錯誤診斷

skill/ ├── skill.md (50,000 字的完整操作手冊) ├── templates/ │ ├── report.py (報告生成腳本) │ └── format.py (格式化腳本) └── data/ └── reference.json (參考數據) 設定方式:Agent 啟動時將 skill.md 的全部內容 載入到 system prompt 中
  • A. 腳本檔案太多,應該減少 templates 目錄的檔案數量
  • B. 沒有採用漸進式載入機制,不應在啟動時載入全部 skill.md 內容,而應先只顯示 metadata 摘要,需要時再讀取詳細指令
  • C. JSON 參考數據檔案過大,應改為使用資料庫
  • D. 應該把 Skill 改寫成 MCP 伺服器來避免 context window 問題

5. 某公司嘗試用 Agent Skills 架構改造內部工作流程,但效果不佳。以下是他們的做法,根據演講中的觀點,核心問題最可能是什麼? 錯誤診斷

公司的做法: – 為客服部門打造了一個專用的客服 Agent(獨立程式碼庫) – 為財務部門打造了另一個專用的財務 Agent(獨立程式碼庫) – 為法務部門打造了第三個專用的法務 Agent(獨立程式碼庫) – 每個 Agent 都有自己的框架、工具鏈和部署流程 – 三個團隊之間沒有共用任何元件 結果:維護成本高、功能重複、無法共享知識
  • A. 問題在於沒有使用 MCP 伺服器連接外部資料來源
  • B. 問題在於沒有為每個 Agent 配備足夠多的工具
  • C. 問題在於為每個領域打造獨立 Agent,而非使用一個通用 Agent 搭配不同領域的 Skills 來獲得專業能力
  • D. 問題在於三個部門的 Agent 應該合併為一個超大型 Agent
0

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *