当前位置: 首页 > news >正文

Harness Marketplace 剖析系列 - 之 Claude Code:一个真实 Plugin 与 Skill 的完整拆解

前两篇中,我们已经分别分析了:

第一篇: Claude Code 的目录与配置结构 第二篇: Marketplace 如何发现、安装和落盘

经过前面的分析,一个 Marketplace 中的 Plugin 最终会被复制到 Claude Code 的本地版本化缓存中:

~/.claude/plugins/cache/ └── claude-plugins-official/ └── plugin-dev/ └── <version>/

但文件落盘只是开始。

接下来更关键的问题是:

一个安装完成的 Claude Code Plugin,究竟向 Harness 提供了什么?

它只是一个存放 Prompt 的目录,还是一个能够同时注册 Skill、Command、Subagent、Hook、MCP Server 等多种能力的扩展包?

这一篇,我们选择 Anthropic 官方 Marketplace 中的plugin-dev,沿着下面这条链路进行完整拆解:

marketplace.json ↓ Plugin Source ↓ 本地 Plugin 目录 ↓ plugin.json ↓ skills / commands / agents ↓ 组件之间的协作 ↓ Claude Code Harness 自动发现 ↓ 运行时能力注册

重点回答以下问题:

Marketplace Entry 负责什么? plugin.json 为什么非常精简? Skill、Command 和 Agent 分别解决什么问题? References、Examples 和 Scripts 如何参与执行? 没有 hooks、MCP 和 LSP 配置意味着什么? 这些文件最终如何变成 Harness 中的真实能力?

一、为什么选择plugin-dev

Anthropic 官方 Marketplace 中提供了多种不同类型的 Plugin,例如:

code-review commit-commands code-simplifier pr-review-toolkit skill-creator plugin-dev

其中,plugin-dev的定位是:

一套用于开发 Claude Code Plugin 的完整能力工具包。

它不是一个只解决单一任务的 Skill,而是围绕“Plugin 开发”这个领域,组织了一组相互关联的 Skill、Command、Agent、参考资料和验证脚本。

Marketplace 中对它的描述大致如下:

{"name":"plugin-dev","description":"Comprehensive toolkit for developing Claude Code plugins. Includes 7 expert skills covering hooks, MCP integration, commands, agents, and best practices. AI-assisted plugin creation and validation.","author":{"name":"Anthropic","email":"support@anthropic.com"},"source":"./plugins/plugin-dev","category":"development","homepage":"https://github.com/anthropics/claude-plugins-public/tree/main/plugins/plugin-dev"}

这条 Marketplace Entry 向 Claude Code 提供了几项关键信息:

Plugin 名称: plugin-dev 所属分类: development Plugin 来源: 当前 Marketplace 仓库中的 ./plugins/plugin-dev 维护者: Anthropic

选择plugin-dev作为案例,主要有三个原因。

1. 它的组件结构比较完整

plugin-dev包含:

7 个 Skills 1 个 Command 3 个 Agents 1 个 Plugin Manifest 多组 References、Examples 和 Scripts

通过它,可以同时观察 Claude Code 中 Skill、Command 和 Subagent 的组织方式。

2. 它本身就是一套 Plugin 开发规范

它所提供的七个 Skill 覆盖:

Plugin 目录结构 Skill 开发 Command 开发 Agent 开发 Hook 开发 MCP 集成 Plugin Settings

因此,它既是一个可以实际安装和使用的 Plugin,也是一份以 Skill 形式组织的 Claude Code Plugin 开发指南。

3. 它能帮助区分“开发知识”和“运行时能力”

plugin-dev中包含:

hook-development Skill mcp-integration Skill

但这不代表它自己注册了 Hook 或启动了 MCP Server。

必须区分:

教 Claude 如何开发 Hook ≠ Plugin 自身注册了 Hook 教 Claude 如何配置 MCP ≠ Plugin 自身启动了 MCP Server

这是理解 Claude Code Plugin 能力边界的关键。


二、从 Marketplace Entry 到本地 Plugin

在分析 Skill 和 Agent 之前,需要先看清plugin-dev是如何从 Marketplace 中的一条记录,变成 Claude Code 本地可以加载的 Plugin。

1.marketplace.json中的 Plugin Entry

plugin-dev首先存在于官方 Marketplace 的:

claude-plugins-official/ └── .claude-plugin/ └── marketplace.json

其中的 Plugin Entry 类似:

{"name":"plugin-dev","description":"Comprehensive toolkit for developing Claude Code plugins. Includes 7 expert skills covering hooks, MCP integration, commands, agents, and best practices. AI-assisted plugin creation and validation.","author":{"name":"Anthropic","email":"support@anthropic.com"},"source":"./plugins/plugin-dev","category":"development","homepage":"https://github.com/anthropics/claude-plugins-public/tree/main/plugins/plugin-dev"}

这一层主要用于:

Marketplace 浏览 Plugin 搜索 安装前信息展示 Plugin Source 定位 分类和作者识别

可以将它理解为:

Marketplace Entry = 安装前 Catalog Metadata

这里并没有详细列出:

Plugin 中有多少 Skill 有哪些 Command 有哪些 Agent 是否包含 Hook 或 MCP 每个组件具体放在哪里

因为 Marketplace 的主要职责是“发现和定位”,不是完整描述 Plugin 内部结构。


2. Marketplace 如何定位 Plugin Source

plugin-dev的 Source 是:

{"source":"./plugins/plugin-dev"}

它表示 Plugin 位于 Marketplace 仓库的相对目录中:

claude-plugins-official/ ├── .claude-plugin/ │ └── marketplace.json └── plugins/ └── plugin-dev/

安装时,Claude Code 会沿着这条路径完成定位:

读取 marketplace.json ↓ 找到 plugin-dev Entry ↓ 解析 source = ./plugins/plugin-dev ↓ 定位 Plugin Source ↓ 复制 Plugin 目录 ↓ 写入本地版本化 Cache

最终运行时使用的目录大致是:

~/.claude/plugins/cache/ └── claude-plugins-official/ └── plugin-dev/ └── <resolved-version>/

因此:

Marketplace Entry → 指向 Plugin 的原始 Source Plugin Cache → 保存 Harness 实际加载的 Plugin 副本

Claude Code 不会一直依赖 Marketplace 原始目录

http://www.jsqmd.com/news/1352150/

相关文章:

  • Python agenthub-tools-core 包详解:功能、语法与案例
  • MCBE快速T触发器:原理、设计与低延迟电路实现
  • Python agenthub-core 包详解:功能、安装、语法与案例
  • 如何让自己持续接近机会、创造价值、获得反馈、不断升级。
  • 电阻温度系数TCR:从原理到实战,精准选型与补偿策略
  • 从 Agent 到数字员工:技术栈全景与办公入口的工程实现(RAG+工作流引擎+MaaS)
  • 大模型移动端部署实战:llama.cpp量化与Android手机本地运行指南
  • AI Agent开发实践:从Hermes Agent与OpenClaw的架构困境到轻量级替代方案
  • 基于LLM的三阶段流水线架构:自动化生成结构化课程内容实践
  • 宣城网站建设jidela 揭秘:如何让本地中小企业的官网不再是“摆设”,真正带来业务增长?
  • Beyond Compare 5密钥生成器:3分钟解锁专业文件对比工具
  • Java动态字段序列化方案对比与安全实践
  • C++引用与指针本质区别:从语法到底层实现全面解析
  • 工业级稳定:C#实现PLC通信看门狗+自动重连,99.99%在线率不是梦
  • Git新手入门:从安装到团队协作的完整指南
  • 如何快速掌握Chrome文本批量替换神器:面向初学者的完整指南
  • 2026安徽初三往届生,成绩基础差,推荐——安徽建工技师学院,公办免学费! - 小张zc
  • LangChain Agent实战:从ReAct原理到生产级调优指南
  • 深度解析开源PUBG罗技鼠标宏压枪脚本:从技术原理到实战应用
  • Fluent 热辐射频谱设置问题小结
  • `glob` 模块用于文件路径匹配,以及 `pandas`(通常简写为 `pd`)用于数据处理
  • 脚本开发实战:从语言选型到工程化实践
  • Ubuntu新手入门:从图形界面到终端命令的完整使用指南
  • 循环赛日程编排:递归分治算法详解与C++实现
  • Unidbg实战:逆向TikTok X-Gorgon签名算法与风控对抗
  • 浏览器请求管理神器:5分钟掌握Header Editor的6大实用技巧
  • 染菌体系化作战(下):设备档案+预防性更换的实操手册
  • 线上投票总被刷票怎么解决?云众评选超强防刷功能+设置防刷教程 - 微信投票小程序
  • 3天搭建企业级AI盈利平台:技术选型与实战指南
  • Blender模型导入Unity方向错乱?FBX导出设置与坐标系转换全解析