rag系列文章目录



前言

claude code几乎是软件工程师的开发必备了,但是使用过程中,有时会有一些困惑,比如command和skills好像是类似的,如何进行区分呢,进行简要介绍一下。


一、简介

命令(Commands)和技能(Skills)最初在 Claude Code 中是两个不同的机制,但在版本 2.1.3 中已被统一,现在主要区别是组织结构,而不是行为或能力。

命令(Commands)和技能(Skills)的原始差异:
Commands

  • 通常是单个 Markdown 文件(位于 .claude/commands/)。
  • 显式调用,用户触发,如 /deploy、/commit。
  • 用于 可控、即时执行的具体操作(有副作用或需要确定时机)。
  • 命令本质上是可重复、确定性的快捷方式。

Skills

  • 原来是目录结构(.claude/skills//SKILL.md + 支撑文件)。
  • Claude 可基于上下文 自动识别加载 与执行。
  • 用于封装领域知识、模板、脚本、检查表等。
  • 强调 智能增强 而不是显式命令。

Commands:你说 “做什么”,立即执行
Skills:Claude 知道 “做什么和何时做”,基于上下文主动加载

统一与变更(v2.1.3)

  • v2.1.3 之后,两者在执行层面已合并:
    • .claude/commands/.md 和 .claude/skills//SKILL.md 都会注册同样的 /名称。
    • 都支持手动调用和自动发现。
  • 真正的区别只剩下组织层次:
    • 命令 = 单文件、简单工作流
    • 技能 = 目录 + 支撑资源、复杂/完整工作流

无论哪种模式,最终都是创建 slash 命令(CLI 触发点)。

二、使用场景

选择哪种方式主要看工作流复杂度:

场景 选用 理由
单一步骤或简单逻辑 command(单文件) 表达清晰、无辅助资源
多文件、模板、脚本、检查表 技能skill(目录) 可组织支撑资源
一致性要求高的流程 技能/命令任选 两者行为相同

实际示例
command:

# .claude/commands/quick-review.md
---
description: Quick code review focusing on obvious issues
---
Review the current file for:
- Syntax errors or typos
- Missing error handling
- Hardcoded values that should be config
- Console logs left in production code

skills:

.claude/skills/code-review/
├── SKILL.md
├── checklist.md
└── severity-guide.md

三、skills两种方式

上面说了skills和command的区别,现在再说下,skills的两种使用方式,能够更好地帮助理解。

1、技能作为“完整工作流包”

  • 技能目录内包含整个流程所需的所有文件和资源。
  • 手动调用时,一次性执行整个流程,无需额外上下文。
  • 适合多步骤、复杂逻辑的任务,尤其是需要复用模板、检查表、辅助文件时。
  • 组织方式通常是:
.claude/skills/<skill-name>/
├── SKILL.md           # 主文件,描述逻辑
├── support-file1.md   # 模板或参考
├── support-file2.md
└── config.json        # 可选配置

任务:代码审查工作流(多步骤)

.claude/skills/code-review/
├── SKILL.md
├── checklist.md
├── severity-guide.md

SKILL.md

---
description: Comprehensive code review workflow
---

Steps:
1. Load checklist.md for standard checks
2. Check severity levels from severity-guide.md
3. Summarize findings and suggest improvements

2、技能作为“支持知识库”

  • 这些技能不直接作为命令触发,而是被 Claude 根据上下文自动加载。
  • 提供知识或规则支持其他命令的执行,例如风格指南、模板、标准操作步骤。
  • 适合频繁辅助不同命令的场景,而无需每次手动触发。

任务:在多个命令中提供统一的代码风格检查

.claude/skills/code-style/
├── SKILL.md
└── style-guide.md

skill.md文件

---
description: Provide coding style guidance to other commands
---

Use style-guide.md to:
 - Check naming conventions
 - Ensure consistent indentation
 - Validate comment standards

使用场景:

  • /quick-review 命令执行代码快速检查时,Claude 会自动引用 code-style 技能,检查命名和缩进是否符合规范。
  • /deploy 命令可能也会引用相同技能,确保提交代码符合风格要求。
模式 触发方式 内容组织 使用场景 优点
完整工作流包 手动调用 技能目录 + 多文件 多步骤任务或自动化流程 一次性执行完整逻辑,易维护
支持知识库 自动加载 规则、模板、参考文件 命令辅助、知识增强 提供一致性、无需显式触发

总结

简而言之,就是简单的频繁的有固定操作流程的任务,你使用command,相对复杂的需要多个文件的,建议使用skills。虽然它们现在是统一的,建议还是根据场景,将其分开使用,不可都使用一个。

参考链接

Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐