1. Claude Code技能系统概述
Claude Code的技能系统是一个强大的扩展框架,允许用户通过创建、管理和共享技能来增强Claude的能力。每个技能本质上是一个包含特定指令的Markdown文件(SKILL.md),它定义了Claude在特定场景下应该如何响应和操作。
技能可以用于多种用途:
- 自动化常见开发任务(如代码审查、部署)
- 提供项目特定的知识(如API设计规范)
- 创建交互式工具(如代码可视化)
- 扩展Claude的核心功能
技能系统的核心优势在于它的灵活性和可定制性。开发者可以根据项目需求创建专属技能,也可以从社区获取现成的技能来加速开发流程。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 技能创建与管理
2.1 技能目录结构
一个完整的技能通常包含以下文件和目录:
code复制my-skill/
├── SKILL.md # 主指令文件(必需)
├── template.md # 模板文件
├── examples/ # 示例目录
│ └── sample.md # 示例文件
└── scripts/ # 脚本目录
└── helper.sh # 辅助脚本
SKILL.md是每个技能的核心文件,包含YAML frontmatter和Markdown内容两部分。frontmatter用于配置技能行为,而Markdown内容则包含具体的指令。
2.2 创建基本技能
创建一个简单技能的步骤如下:
- 创建技能目录:
bash复制mkdir -p ~/.claude/skills/summarize-changes
- 编写SKILL.md文件:
markdown复制---
description: 总结未提交的更改并标记风险项。当用户询问更改内容、需要提交信息或要求审查差异时使用。
---
## 当前更改
!`git diff HEAD`
## 指令
用2-3个要点总结上述更改,然后列出你注意到的任何风险,如缺少错误处理、硬编码值或需要更新的测试。如果差异为空,说明没有未提交的更改。
这个技能会执行git diff HEAD命令获取当前未提交的更改,然后让Claude总结这些更改并识别潜在风险。
2.3 技能存储位置
技能可以存储在多个位置,影响其可用范围:
| 位置 | 路径 | 适用对象 |
|---|---|---|
| 企业级 | 管理设置 | 组织内所有用户 |
| 个人级 | ~/.claude/skills/ | 用户的所有项目 |
| 项目级 | .claude/skills/ | 当前项目 |
| 插件级 | 启用插件的项目 |
当不同级别的技能同名时,企业级覆盖个人级,个人级覆盖项目级。项目级技能也会覆盖同名的内置技能。
