- Skills:Claude 自主調用的功能。您也可以使用
/plugin-name:skill-name直接調用 plugin skill。 - Agents:用於特定任務的專門子 agents
- Hooks:響應工具使用和其他事件的事件處理程序
- MCP servers:通過 Model Context Protocol 的外部工具集成
加載 plugins
通過在選項設定中提供本地檔案系統路徑來加載 plugins。type 欄位必須是 "local",這是 SDK 接受的唯一值。SDK 支援從不同位置加載多個 plugins。
若要使用通過 marketplace 或遠端存儲庫分發的 plugin,請先下載它並提供本地目錄路徑。有關 plugin 需要的目錄佈局,請參閱下面的 Plugin 結構參考。
路徑規範
Plugin 路徑可以是:- 相對路徑:相對於
cwd選項解析(例如,"./plugins/my-plugin") - 絕對路徑:完整檔案系統路徑(例如,
"/home/user/plugins/my-plugin")
路徑應指向 plugin 的根目錄:
skills/、agents/、hooks/、commands/ 或 .claude-plugin/ 的父目錄。驗證 plugin 安裝
當 plugins 成功加載時,它們會出現在系統初始化消息中。您可以驗證您的 plugins 是否可用:使用 plugin skills
來自 plugins 的 skills 會自動使用 plugin 名稱進行命名空間化,以避免衝突。若要直接調用,請在提示中發送/plugin-name:skill-name。
如果您通過 CLI 安裝了 plugin(例如,
/plugin install my-plugin@marketplace),您仍然可以通過提供其安裝路徑在 SDK 中使用它。檢查 ~/.claude/plugins/ 以查找 CLI 安裝的 plugins。完整示例
以下是演示 plugin 加載和使用的完整示例:Plugin 結構參考
Plugin 目錄通常包含.claude-plugin/plugin.json 清單文件。清單是可選的。省略時,Claude Code 會從目錄佈局自動發現組件。目錄可以包括:
commands/ 目錄保存 skills 作為平面 Markdown 文件。對於新 plugins,請使用 skills/。Claude Code 支持兩個位置。多個 plugin 來源
結合來自不同位置的 plugins:SDK 不會展開波浪號路徑,例如
~/plugins。如果 plugin 路徑不存在,SDK 會跳過該 plugin,會話會繼續,因此請檢查初始化消息中的 plugins 列表以確認每個 plugin 已加載。故障排除
Plugin 未加載
如果您的 plugin 未出現在初始化消息的plugins 列表中,請檢查其 plugin_errors 欄位以了解原因,然後進行以下檢查:
- 檢查路徑:確保路徑指向 plugin 根目錄,即
skills/、agents/、hooks/、commands/或.claude-plugin/的父目錄 - 驗證 plugin.json:如果您的 plugin 包含清單,請確保它具有有效的 JSON 語法
- 檢查文件權限:確保 plugin 目錄可讀
- 確認目錄存在:SDK 會跳過不存在的路徑,plugin 不會出現在初始化消息的
plugins列表中
Skills 未出現
如果 plugin skills 不起作用:- 使用命名空間:以
/plugin-name:skill-name的方式調用 plugin skills - 檢查初始化消息:驗證 skill 是否以正確的命名空間出現在
skills列表中 - 驗證 skill 文件:確保每個 skill 在
skills/下的自己的子目錄中都有SKILL.md文件,例如skills/my-skill/SKILL.md
另請參閱
- Plugins - 完整的 plugin 開發指南
- Plugins reference - 技術規範
- Commands - 在 SDK 中分派命令
- Subagents - 使用專門的 agents
- Skills - 使用 Agent Skills