Files
claude-howto/zh/03-skills
Luong NGUYEN 89e89d4aa3 feat(zh): add Chinese translations in zh/ directory
Add Chinese (Simplified) translations for all documentation, organized
under a dedicated zh/ directory that mirrors the English folder structure.

Co-authored-by: tanqingkuang <tanqingkuang@users.noreply.github.com>

Translations originally contributed by @tanqingkuang in #45.
Restructured from *-CN.md suffix pattern into zh/ directory to prevent
the EPUB builder (scripts/build_epub.py collect_folder_files) from
picking up Chinese files via glob("*.md") inside module folders.
2026-04-06 23:08:54 +02:00
..

Claude How To

Agent Skills 指南

概览

Skills 是可以复用、可自动触发的能力包。一个 skill 通常包含 SKILL.md、参考文件、脚本和模板。Claude 在合适的场景下会自动加载它。

主要好处

  • 可复用
  • 可渐进加载
  • 可以把脚本、模板、说明放在一起
  • 适合标准化流程

Skills 的工作方式:渐进式披露

Skills 不会一次性把所有内容都塞进上下文,而是按需加载。

三层加载

  1. 只看描述:先判断这个 skill 是否相关
  2. 加载 SKILL.md:读取核心说明
  3. 按需加载支持文件:脚本、模板、参考资料

Skill 加载流程

  1. Claude 扫描技能目录
  2. 根据描述判断是否匹配当前任务
  3. 读取 SKILL.md
  4. 如有需要,再加载脚本和辅助文件

Skill 类型与位置

Skills 可以放在:

  • 项目目录下的 .claude/skills/
  • 用户目录下的 ~/.claude/skills/

自动发现

只要目录结构正确,Claude 就会自动发现这些 Skills。

创建自定义 Skills

基本目录结构

my-skill/
└── SKILL.md

SKILL.md 格式

---
name: my-skill
description: 这个 skill 的用途,以及什么时候触发
---

# Your Skill Name

## Instructions

## Examples

必填字段

  • name
  • description

可选 frontmatter 字段

  • argument-hint
  • allowed-tools
  • model
  • disable-model-invocation
  • user-invocable
  • context
  • agent
  • hooks

Skill 内容类型

参考内容

适合放规则、标准、文档片段和示例。

任务内容

适合放具体步骤、执行流程和结果格式要求。

控制 Skill 的调用

你可以通过 disable-model-invocation、user-invocable 和工具白名单来控制 Claude 是否能自动调用这个 skill。

字符串替换

Skills 支持 $ARGUMENTS、$0、$1 等参数替换。

动态上下文注入

你可以在 prompt 里插入 shell 命令结果:

- 当前 git 状态:!`git status`
- 当前 diff:!`git diff HEAD`
- 当前分支:!`git branch --show-current`

在 subagent 中运行 Skills

某些 skill 适合在隔离上下文中运行,这样可以降低对主会话的影响。

实战示例

示例 1:代码审查 Skill

一个典型的审查 skill 会包含:

  • 审查模板
  • 风险等级
  • 输出格式
  • 需要关注的维度

示例 2:代码库可视化 Skill

可以把代码库结构、依赖关系和模块边界总结给 Claude,便于快速理解。

示例 3:部署 Skill(只允许用户触发)

适合带副作用的操作,比如生产环境部署。通常会配合 disable-model-invocation: true。

示例 4:品牌语气 Skill

用于检查输出是否符合品牌语气、语调和表达风格。

示例 5:CLAUDE.md 生成 Skill

可以从项目文档中生成或补充 CLAUDE.md。

示例 6:带脚本的重构 Skill

常见组合是:

  • SKILL.md
  • scripts/
  • templates/
  • references/

管理 Skills

查看可用 Skills

/skills

测试一个 Skill

把它放到测试目录或者临时项目里,然后通过相应命令触发。

更新 Skill

修改 SKILL.md 或支持文件后,重新打开会话或重新加载即可。

限制 Claude 对 Skill 的访问

你可以通过权限配置,只允许 Claude 访问某些 skill。

最佳实践

1. 描述要具体

让 description 明确说明这个 skill 在什么时候触发。

2. 保持聚焦

一个 skill 解决一个问题,不要什么都塞进去。

3. 包含触发词

在描述里加入相关关键词,帮助 Claude 更准确地选择它。

4. SKILL.md 不要太长

尽量控制在 500 行以内,超过就拆分支持文件。

5. 引用支持文件

把重复内容移到脚本或参考文件中,主文件只保留核心说明。

故障排查

快速参考

  • 检查目录结构是否正确
  • 检查 SKILL.md frontmatter 是否有效
  • 检查 skill 名称是否和调用名一致

Skill 没有触发

  • 检查描述是否足够具体
  • 检查目录是否在 Claude 可见范围内
  • 检查是否被更高优先级的 skill 覆盖

Skill 触发太频繁

  • 收紧描述
  • 增加约束条件
  • 用更具体的触发词

Claude 看不到全部 Skills

  • 检查路径
  • 检查权限
  • 重新加载会话

安全注意事项

  • 不要在 skill 中硬编码密钥
  • 对副作用操作保持用户触发
  • 给自动触发的 skill 设置清晰边界

Skills vs 其他功能

功能 触发方式 适合场景
Skills 自动/半自动 复用能力、流程标准化
Slash Commands 手动 快捷命令
Subagents 自动委派 隔离任务
Hooks 事件触发 自动化和验证

内置 Skills

Claude Code 自带一些 Skills,例如批处理、调试、简化和 Claude API 相关内容。

共享 Skills

项目 Skills(团队共享)

把 skill 放在项目目录里,团队成员都能用。

个人 Skills

# 复制到个人目录
mkdir -p ~/.claude/skills

# 让脚本可执行
chmod +x ~/.claude/skills/*/scripts/*

Plugin 分发

你也可以把 Skills 作为插件的一部分发布出去。

继续深入

如果你要管理一整套 Skills,可以再做一个 skill collection 或 skill manager,用来统一发现、更新和分发。

更多资源