J'Blog

第 28 课 · 进阶

语义检索

基于 Chroma 向量库,与 Workspace 知识库分离。用自然语言描述你想查的内容。 非管理员每人每天可检索 5 次(消耗站点 AI 配额)。

创建插件

原文:Create plugins

一句话

创建自定义插件来扩展 Claude Code 的功能,包括技能、代理、钩子和 MCP 服务器。

什么时候翻这页

  1. 需要创建自定义技能、代理或钩子来扩展 Claude Code 功能
  2. 想要分享自定义功能给团队成员或社区
  3. 需要在多个项目中重用相同的技能/代理
  4. 希望通过版本控制和简单更新来管理扩展

核心概念

  • 插件(Plugins):可共享的自定义功能包,包含技能、代理、钩子和 MCP 服务器
  • 技能(Skills):模型调用的功能,Claude 根据任务上下文自动使用
  • 代理(Agents):自定义的 AI 助手,具有特定的系统提示和工具限制
  • 钩子(Hooks):事件处理器,在特定操作后自动执行命令
  • MCP 服务器:通过模型上下文协议(Model Context Protocol)连接的外部工具
  • LSP 服务器:语言服务器协议插件,提供实时代码智能
  • 后台监控(Monitors):在后台监控日志、文件或外部状态并通知 Claude
  • 插件清单(Plugin manifest):定义插件元数据的 JSON 文件(plugin.json)

怎么做

创建第一个插件

  1. 创建插件目录:mkdir my-first-plugin
  2. 创建插件清单目录:mkdir my-first-plugin/.claude-plugin
  3. 创建 plugin.json 文件,包含名称、描述和版本
  4. 添加技能:创建 skills/hello/ 目录和 SKILL.md 文件
  5. 使用 --plugin-dir 标志测试插件:claude --plugin-dir ./my-first-plugin
  6. 尝试使用技能:/my-first-plugin:hello

添加技能参数

  1. 在 SKILL.md 中使用 $ARGUMENTS 占位符捕获用户输入
  2. 运行 /reload-plugins 加载更改
  3. 测试带参数的技能:/my-first-plugin:hello Alex

开发更复杂的插件

  1. 添加 LSP 服务器:创建 .lsp.json 配置文件
  2. 添加后台监控:创建 monitors/monitors.json 文件
  3. 添加默认设置:创建 settings.json 文件
  4. 组织复杂插件:按功能组织目录结构

分享插件

  1. 添加文档:包含 README.md 文件
  2. 选择版本控制策略:设置显式版本或使用 git 提交 SHA
  3. 创建或使用插件市场
  4. 测试并分发插件

命令 / 配置速查

命令/配置用途
claude --plugin-dir <目录>加载本地插件进行测试
claude --plugin-url <URL>从 URL 加载插件 ZIP 文件
claude plugin init <名称>在技能目录中初始化插件
claude plugin validate验证插件配置
/reload-plugins重新加载插件而不重启 Claude Code
/plugin marketplace add <名称>添加插件市场
.claude-plugin/plugin.json插件清单文件
skills/<名称>/SKILL.md技能定义文件
.lsp.jsonLSP 服务器配置
monitors/monitors.json后台监控配置
settings.json插件默认设置

初学者易错点

  1. 目录结构错误:不要将 commands/、agents/、skills/ 或 hooks/ 放在 .claude-plugin/ 目录内,只有 plugin.json 应该放在那里
  2. 命名空间冲突:插件技能总是使用命名空间(如 /my-plugin:hello)以防止多个插件间的名称冲突
  3. 忘记重新加载:修改插件后需要运行 /reload-plugins 来加载更改,无需重启 Claude Code
  4. 技能描述缺失:技能应包含描述字段,以便 Claude 知道何时使用该技能
  5. LSP 服务器未安装:使用 LSP 插件时,用户必须在机器上安装相应的语言服务器二进制文件

相关词条

  • skills 技能开发指南
  • sub-agents 自定义代理配置
  • hooks 事件处理和自动化
  • mcp 外部工具集成
  • discover-plugins 发现和安装插件
  • plugin-marketplaces 创建和分发插件市场

官方原文:https://code.claude.com/docs/en/plugins