Skip to content

Agent Skills

本指南展示了如何在 Claude Code 中创建、使用和管理 Agent Skills。Skills 是模块化功能,通过包含说明、脚本和资源的有组织的文件夹来扩展 Claude 的功能。

前置条件

  • Claude Code 版本 1.0 或更高版本
  • 对 Claude Code 的基本熟悉

什么是 Agent Skills?

Agent Skills 将专业知识打包成可发现的功能。每个 Skill 包含一个 SKILL.md 文件,其中包含 Claude 在相关时读取的说明,以及可选的支持文件。

Skills 如何被调用:Skills 是模型调用的——Claude 根据您的请求和 Skill 的描述自主决定何时使用它们。这与斜杠命令不同,斜杠命令是用户调用的。

优势

  • 为您的特定工作流扩展 Claude 的功能
  • 通过 git 在您的团队中共享专业知识
  • 减少重复提示
  • 为复杂任务组合多个 Skills

创建 Skill

个人 Skills

个人 Skills 在您的所有项目中都可用。存储在 ~/.claude/skills/ 中:

bash
mkdir -p ~/.claude/skills/my-skill-name

项目 Skills

项目 Skills 与您的团队共享。存储在项目中的 .claude/skills/ 中:

bash
mkdir -p .claude/skills/my-skill-name

编写 SKILL.md

创建一个带有 YAML frontmatter 和 Markdown 内容的 SKILL.md 文件:

yaml
---
name: your-skill-name
description: Brief description of what this Skill does and when to use it
---

# Your Skill Name

## Instructions
Provide clear, step-by-step guidance for Claude.

## Examples
Show concrete examples of using this Skill.

字段要求

  • name:必须仅使用小写字母、数字和连字符(最多 64 个字符)
  • description:Skill 的简要描述及其使用时机(最多 1024 个字符)

添加支持文件

my-skill/
├── SKILL.md (required)
├── reference.md (optional documentation)
├── examples.md (optional examples)
├── scripts/
│   └── helper.py (optional utility)
└── templates/
    └── template.txt (optional template)

使用 allowed-tools 限制工具访问

yaml
---
name: safe-file-reader
description: Read files without making changes.
allowed-tools: Read, Grep, Glob
---

# Safe File Reader

This Skill provides read-only file access.

查看可用的 Skills

直接询问 Claude:

What Skills are available?
List all available Skills

测试 Skill

创建 Skill 后,通过提出与您的描述相匹配的问题来测试它。

调试 Skill

使描述更具体

太模糊:description: Helps with documents

具体:description: Extract text and tables from PDF files. Use when working with PDF files.

验证文件路径

bash
# Personal
ls ~/.claude/skills/my-skill/SKILL.md

# Project
ls .claude/skills/my-skill/SKILL.md

查看错误

bash
claude --debug

与您的团队共享 Skills

第 1 步:将 Skill 添加到您的项目

bash
mkdir -p .claude/skills/team-skill

第 2 步:提交到 git

bash
git add .claude/skills/
git commit -m "Add team Skill for PDF processing"
git push

第 3 步:团队成员自动获得 Skills

bash
git pull
claude  # Skills are now available

最佳实践

保持 Skills 专注

一个 Skill 应该解决一个功能:

  • ✅ "PDF 表单填充"
  • ✅ "Excel 数据分析"
  • ❌ "文档处理"(太宽泛)

编写清晰的描述

在描述中包括 Skill 的功能和使用时机。

示例

简单 Skill(单个文件)

yaml
---
name: generating-commit-messages
description: Generates clear commit messages from git diffs.
---

# Generating Commit Messages

## Instructions
1. Run `git diff --staged` to see changes
2. Suggest a commit message with summary under 50 characters

具有工具权限的 Skill

yaml
---
name: code-reviewer
description: Review code for best practices and potential issues.
allowed-tools: Read, Grep, Glob
---

# Code Reviewer

## Review checklist
1. Code organization and structure
2. Error handling
3. Performance considerations

aicodex 文档网站