1. Agent (代理)

定义

子代理是具有自己上下文窗口、自定义系统提示和特定工具权限的专业 AI 助手

子代理如何工作: 每个子代理都有其自己的配置——你可以定义它做什么、如何处理问题以及它可以访问哪些工具

每个子代理都在自己独立的上下文窗口中工作。这一点非常关键。这意味着子代理不会被主要的对话历史弄混,从而能够完全专注于自己的(通常是多步骤的)任务

核心特征

  • 决策者角色:处理开放式、多步骤的复杂目标
  • 独立上下文:拥有独立的对话历史,避免与主对话干扰
  • 高能动性:可以自主思考和调整策略
  • 工具使用者:可以调用多个 Skills 和 Tools

适用场景

  • 需要定期进行安全审计(扫描 → 分析 → 修复 → 验证)
  • 复杂的代码重构任务
  • 需要多轮推理和判断的工作流

2. Skill (技能)

定义

指令、脚本和资源的文件夹集合,Claude 通过动态加载来提升特定任务的执行能力。是标准化、可重复的工作能力包

何时使用技能: 如果你发现自己在不同对话中反复输入相同的提示词,就该创建一个技能了。将重复的指令,如“使用 OWASP 标准审查此代码的安全性”或“用执行摘要、关键发现和建议格式化此分析”,转化为技能。这可以让你避免每次都重新解释流程,并确保一致的执行。

Claude 决定何时使用它们

如何创建技能:

https://github.com/anthropics/skills/tree/main/skills/skill-creator

https://github.com/pytorch/pytorch/tree/main/.claude/skills/skill-writer

https://github.com/anthropics/claude-code/tree/main/plugins/plugin-dev/skills/skill-development

3. Agent vs Skill 对比

  • Agent 负责”想”(决策)
  • Skill 负责”怎么做”(方法)
  • Tool 负责”去做”(执行)
维度Agent (代理)Skill (技能)
本质决策者 (Decision Maker)执行单元 (Capability)
隐喻专职工人(有人格、记忆)操作手册 / 工具
复杂性开放式、多步骤目标
例:Python 项目重构为 Go
确定性、原子级任务
例:查询数据库用户表
上下文独立的上下文窗口共享当前上下文
能动性高(可自主调整策略)低(按步骤执行)
关系包含/使用 Skill被 Agent 调用

选择原则

  • 用 Skill:扩展 Claude 的”知识库”或”工具箱”(教它怎么做
  • 用 Agent:扩展 Claude 的”团队”(找个帮手负责某领域)

协作示例

用户:"提升测试覆盖率到 90%"
  ↓
Claude 主程序:委派给 QA-Agent
  ↓
QA-Agent:分析代码,决定运行测试
  ↓
QA-Agent:调用 Run-Test-Script (Skill)
  ↓
Skill:执行 Shell 命令,返回覆盖率数据
  ↓
QA-Agent:根据数据编写新测试用例,循环直到达标

场景决策指南

场景 A:代码提交规范

  • 选择:Skill
  • 原因:标准化知识,不需要专门的”提交人员”
  • 做法:创建 Commit-Style Skill,定义提交信息格式规则

场景 B:安全审计

  • 选择:Agent
  • 原因:复杂任务流,需要推理和判断
  • 做法:创建 Security-Auditor Agent,配备扫描工具

场景 C:查询日志

  • 选择:Skill
  • 原因:工具行为,是动作而非角色
  • 做法:创建 Fetch-Logs Skill,封装查询命令

4. Command (命令)

定义

用于自动化常见开发任务的快捷操作,通过斜杠命令快速执行预定义流程。

核心价值

  • 快速执行预定义流程,无需手动输入详细指令
  • 提升工作流自动化能力
  • 方便团队共享”任务模板”或”流程脚本”

5. Plugin (插件)

定义

标准化的扩展包,用于团队共享和复用工作流配置。

组成部分

  • Commands:自定义斜杠命令
  • Agents:特定任务的专门子代理
  • Skills:Claude 自主使用的能力
  • Hooks:事件响应处理器
  • MCP Servers:外部工具集成

核心价值

  • 标准化团队的智能体开发设置
  • 所有人获得相同的工具、配置、快捷方式
  • 跨项目共享和重用功能

目录结构

my-first-plugin/
├── .claude-plugin/
│   └── plugin.json          # 插件元数据
├── commands/                 # 自定义斜杠命令(可选)
│   └── hello.md
├── agents/                   # 自定义代理(可选)
│   └── helper.md
├── skills/                   # Agent Skills(可选)
│   └── my-skill/
│       └── SKILL.md
└── hooks/                    # 事件处理器(可选)
    └── hooks.json

6. Hook (钩子)

定义

在开发工作流程中特定事件发生时自动触发的脚本,提供对 Claude Code 行为的确定性控制。

特点

  • 在后台自动运行
  • 确保某些操作总是发生(不依赖 LLM 选择)

示例

  • 每次文件编辑后对 .ts 文件运行 prettier
  • 代码提交前自动运行 lint 检查

7. Setting (设置)

定义

用于调整 Claude Code 在项目中的行为方式,可控制性能、安全性、界面及工作流程偏好。

ScopeLocationWho it affectsShared with team?
EnterpriseSystem-level managed-settings.jsonAll users on the machineYes (deployed by IT)
User~/.claude/ directoryYou, across all projectsNo
Project.claude/ in repositoryAll collaborators on this repositoryYes (committed to git)
Local.claude/*.local.* filesYou, in this repository onlyNo (gitignored)

8. MCP (Model Context Protocol)

定义

通过模型上下文协议集成外部工具的机制。

示例

参考资源

官方资源

社区资源

其他工具