Issue #74

ClaudeCode三种扩展方式的区别AI 主写

近 30 天0 次浏览0 位访客统计截至 2026-10-19 · GA4

ClaudeCode 三种扩展方式的区别

核心结论

其实 Claude Code 有三种扩展方式,但它们的本质区别是:Skills 是面对场景时的解决方案,Commands 是用户主动调用的快捷操作,Plugins 则是完整的扩展功能包。

简单来说:

  • Skills 告诉 AI 遇到某个问题时应该怎么工作
  • Commands 提供一键完成的快捷操作
  • Plugins 安装别人写好的完整功能

三种方式的本质区别

Skills:场景解决方案

Skills 的核心是告诉 AI 遇到特定场景时应该怎么工作。或者说,它是 AI 的 " 工作指南 "。

当你开始写测试时,AI 读取到 TDD Skill,就知道应该建议你先写失败的测试,然后写最小实现,最后重构。整个过程是 AI 主动触发的,不需要你输入任何命令。

Skills 可以做的事情很多:

  • 配合你完成某个任务
  • 调度其他 AI 协作(比如 subagent)
  • 按照流程独立处理信息
  • 或者说 AI 在某些场景下应该采取什么行动

Commands:快捷操作

Commands 是你主动调用的快捷操作。通过 /command 触发,执行一个预定义的任务。

比如你输入 /commit,AI 就按照规范化提交的流程帮你整理提交信息。Commands 更像是 " 脚本 " 或 " 快捷方式 ",你什么时候用就什么时候调。

和 Skills 的区别是:Commands 需要你主动触发,Skills 是 AI 自动判断。

Plugins:完整的扩展功能包

Plugins 是别人写好的完整功能,通过 marketplace 安装后直接可用。它是 " 功能集成 " 或 " 扩展包 "。

比如 superpowers plugin 就是一整套开发工作流框架,包含 brainstorming、TDD、debugging 等多个技能。你不需要自己写,安装后就能用。

和 Skills/Commands 的区别是:Plugins 是完整的、多功能的解决方案,而 Skills 和 Commands 通常只解决一个具体问题。

其实 Plugins 就是 Skills 和 Commands 的组合包。Plugin 是一个 " 容器 ",里面可以包含多个 Skills 和 Commands。

比如 superpowers 这个 Plugin,内部就包含了:

  • brainstorming skill
  • TDD skill
  • debugging skill
  • writing-plans skill
  • 等等...

你可以:

  • 单独写一个 Skill 文件,放在 .claude/skills/ 下
  • 单独写一个 Command 文件,放在 .claude/commands/ 下
  • 或者把它们打包成 Plugin,发布到 marketplace 让别人安装

三者的关系:

Plugins (功能包)
  ├── Skills (行为规范)
  ├── Commands (快捷命令)
  └── 其他配置

怎么打包 Plugins

其实打包 Plugins 就是用固定的目录结构和配置文件。

目录结构

my-plugin/
├── .claude-plugin/
│   └── plugin.json          # 插件元数据
├── skills/                   # Skills 放这里
│   ├── tdd/
│   │   └── SKILL.md
│   └── debugging/
│       └── SKILL.md
├── commands/                 # Commands 放这里
│   ├── commit.md
│   └── release.md
└── marketplace.json          # 发布到 marketplace 的配置

plugin.json 示例

{
  "name": "my-workflow-tools",
  "version": "1.0.0",
  "description": "我的开发工作流工具集",
  "author": {
    "name": "Your Name"
  },
  "skills": "./skills/",
  "commands": "./commands/"
}

发布到 marketplace

创建 marketplace.json:

{
  "name": "my-marketplace",
  "owner": {
    "name": "Your Name",
    "email": "you@example.com"
  },
  "plugins": [
    {
      "name": "my-workflow-tools",
      "source": "./",
      "description": "我的开发工作流工具集",
      "version": "1.0.0"
    }
  ]
}

然后把这个仓库托管到 GitHub,用户就可以通过 /plugin install my-workflow-tools@your-username 安装了。

什么时候用哪个

用 Skills 的场景

需要 AI 按照某种方式工作的时候:

  • 写代码时遵循 TDD 流程
  • 遇到 bug 时按调试规范排查
  • 代码审查时按标准检查
  • 或者说需要 AI 协调多个 subagent 协作

决策流程

需要自动化执行?
  ├─ 是 → Skills
  └─ 否 → 需要完整功能?
      ├─ 是 → Plugins
      └─ 否 → Commands

你可以这样想:需要建议用 Skills,快捷操作用 Commands,完整功能用 Plugins。

用 Commands 的场景

需要快速执行某个操作的时候:

  • 规范化提交信息
  • 生成发布日志
  • 创建新文件模板

你需要 " 一键完成 " 某个重复性操作。

用 Plugins 的场景

需要复杂功能或不想自己写的时候:

  • 完整的开发工作流框架(如 superpowers)
  • 第三方服务集成(如 GitHub、Jira)
  • 社区维护的通用功能

" 别人已经做好了,直接用就行 "。

快速上手

Command 示例

告诉 AI 创建一个 Command,然后它会生成这样的文件:

---
name: my-commit
description: 我的规范化提交命令
---

# 规范化提交

按照以下格式提交:
- 类型:feat/fix/docs/refactor
- 范围:简短描述
- 正文:详细说明(如有)

Skill 示例

告诉 AI 创建一个 Skill,然后它会生成这样的文件:

---
name: my-tdd
description: 我的 TDD 工作流程
trigger:
  - "写测试"
  - "TDD"
---

# TDD 工作流程

当用户说「写测试」或「TDD」时:
1. 先写失败的测试
2. 写最小实现
3. 重构优化

安装 Plugin

直接告诉 AI 你想安装什么插件,比如:

  • " 安装 superpowers plugin"
  • 或者 "/plugin install superpowers@claude-plugins-official"

参考资料


结论:三种扩展方式各有优势。根据你的实际需求选择或组合使用,能最大化 Claude Code 的效率。

引用链接

  1. Claude Code 官方文档
  2. superpowers GitHub 仓库

讨论

0 条留言

去 GitHub 留言 ↗

还没有留言,欢迎来打个招呼。

回到顶部