Claude Code: Agent Skills 与 skill-creator

最后更新:2026-08-31

Agent Skills 是 Claude Code 的"职业技能包"——安装一个 Skill,Claude Code 就获得了一整套专业工作流程。

💡 提示:Skills 不是简单的提示词模板,而是完整的工作流程定义,包含步骤、检查项、输出格式和验证逻辑。skill-creator 让你自定义这些技能。

📋 前置知识:第十五章 记忆系统

1. 你将学到


2. Agent Skills 概念

(1) 什么是 Skill

Skill 是一套结构化的工作流程定义:

组成部分 说明
触发条件 什么任务激活这个 Skill
工作步骤 执行流程的有序步骤
检查项 每步完成后验证的清单
输出格式 最终输出的标准格式
工具依赖 需要哪些工具支持

(2) Skill 与普通指令的区别

维度 普通指令 Skill
结构 自由文本 结构化流程
完整性 可能遗漏步骤 检查项确保完整
一致性 每次可能不同 每次遵循相同流程
可复用 一次性 跨项目复用
验证 无自动验证 内置验证检查

▶ 示例 1: Skill vs 普通指令

TEXT 📖 仅展示
# 普通指令
> 审查这个文件的代码质量

Claude Code: [自由审查,可能遗漏某些方面]

# 使用 Skill
> /skill code-review

Claude Code: [按 code-review Skill 的流程执行]
  Step 1: 读取文件 ✓
  Step 2: 安全性检查 ✓
    - SQL 注入 ✓
    - XSS 漏洞 ✓
    - 敏感数据暴露 ✓
  Step 3: 性能检查 ✓
    - N+1 查询 ✓
    - 内存泄漏 ✓
  Step 4: 风格检查 ✓
  Step 5: 生成报告 ✓
  All checkpoints passed

3. 内置与社区 Skills

(1) 内置 Skills

Skill 功能 触发方式
code-review 代码审查 /skill code-review
bug-fix Bug 修复流程 /skill bug-fix
refactor 重构流程 /skill refactor
test-gen 测试生成 /skill test-gen
api-design API 设计 /skill api-design
security-audit 安全审计 /skill security-audit
migration 迁移流程 /skill migration

(2) 社区 Skills

Skill 功能 来源
pr-review PR 审查 GitHub
doc-gen 文档生成 GitHub
perf-audit 性能审计 GitHub
accessibility 无障碍检查 GitHub
i18n 国际化处理 GitHub

(3) Skill 管理

BASH
# 列出可用 Skills
claude /skills

# 安装社区 Skill
claude /skill install @community/pr-review

# 卸载 Skill
claude /skill uninstall pr-review

# 查看 Skill 详情
claude /skill info code-review

4. Skills 使用实例

▶ 示例 2: bug-fix Skill 工作流

TEXT 📖 仅展示
> /skill bug-fix "TypeError: Cannot read property 'id' of undefined at UserController.getProfile"

Claude Code [bug-fix Skill]:
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  Bug Fix Workflow
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  Step 1: 定位 Bug ✓
    → Reading src/controllers/UserController.ts
    → Found: getProfile() accesses req.user.id without null check

  Step 2: 分析根因 ✓
    → req.user 为 undefined when auth middleware fails silently
    → Root cause: missing error handling in middleware chain

  Step 3: 设计修复 ✓
    → Add null check in getProfile()
    → Fix auth middleware to throw on failure

  Step 4: 实施修复 ✓
    → Modifying src/controllers/UserController.ts
    → Modifying src/middleware/auth.ts

  Step 5: 验证修复 ✓
    → Running: npm test -- UserController.test.ts
    → 5/5 tests passed ✓

  Step 6: 防止复发 ✓
    → Added edge case test for null user

  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  Bug fixed ✓ | 2 files modified | 1 test added
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

▶ 示例 3: security-audit Skill

TEXT 📖 仅展示
> /skill security-audit src/auth/

Claude Code [security-audit Skill]:

  Step 1: 扫描认证相关文件 ✓
    → Found 6 files in src/auth/

  Step 2: 检查常见漏洞 ✓
    🔴 Critical: Hardcoded JWT secret in jwt.ts:12
    🟡 Warning: No rate limiting on login endpoint
    🟡 Warning: Password reset token has no expiry
    🟢 Info: bcrypt hash rounds OK (12)

  Step 3: 检查配置安全 ✓
    🟡 Warning: CORS allows all origins

  Step 4: 生成报告 ✓
    → Critical: 1 | Warning: 3 | Info: 1
    → Report saved to security-report-2026-08-28.md

  Step 5: 建议修复(可选)✓
    → Fix all? [y/n] y
    → Fixed 4/5 issues (1 requires manual config change)

5. skill-creator 创建自定义 Skill

(1) Skill 定义结构

YAML
# .claude/skills/my-deployment.yaml
name: deployment
description: "标准化部署流程"
trigger:
  keywords: ["deploy", "部署", "上线"]

steps:
  - name: "预检查"
    actions:
      - "确认所有测试通过"
      - "检查没有未提交的变更"
      - "验证环境变量配置"
    checkpoints:
      - "npm test exit code = 0"
      - "git status clean"
      - ".env 文件存在"

  - name: "构建"
    actions:
      - "运行构建命令"
      - "检查构建产物大小"
    checkpoints:
      - "build/ 目录存在"
      - "bundle size < 2MB"

  - name: "部署"
    actions:
      - "推送代码到远程"
      - "触发 CI/CD 流水线"
    checkpoints:
      - "git push 成功"
      - "CI pipeline 触发"

  - name: "验证"
    actions:
      - "等待部署完成"
      - "访问健康检查端点"
      - "验证核心功能"
    checkpoints:
      - "HTTP 200 from /health"
      - "登录功能正常"

output:
  format: "markdown"
  template: "deployment-report"

▶ 示例 4: 用 skill-creator 创建 Skill

TEXT 📖 仅展示
> /skill-creator 创建一个"数据库迁移"Skill

Claude Code:
  我将帮你创建一个数据库迁移 Skill。
  请回答几个问题:

  1. 使用什么数据库工具? Prisma
  2. 迁移需要哪些步骤?
     - 修改 schema
     - 生成迁移文件
     - 运行迁移
     - 验证数据完整性
  3. 有什么安全检查?
     - 备份数据库
     - 检查迁移是否可回退
  4. 输出格式? Markdown 报告

  → Creating .claude/skills/db-migration.yaml
  → Skill created ✓

  使用方式:/skill db-migration

(2) 生成的 Skill 文件

YAML
# .claude/skills/db-migration.yaml
name: db-migration
description: "Prisma 数据库迁移标准流程"
trigger:
  keywords: ["migrate", "迁移", "schema变更"]

steps:
  - name: "备份"
    actions:
      - "运行 pg_dump 备份数据库"
    checkpoints:
      - "备份文件存在且大小 > 0"

  - name: "修改 Schema"
    actions:
      - "修改 prisma/schema.prisma"
    checkpoints:
      - "npx prisma validate 成功"

  - name: "生成迁移"
    actions:
      - "npx prisma migrate dev --name <description>"
    checkpoints:
      - "迁移文件生成成功"
      - "SQL 语句可回退"

  - name: "执行迁移"
    actions:
      - "npx prisma migrate deploy"
    checkpoints:
      - "迁移执行成功"
      - "数据完整性检查通过"

  - name: "验证"
    actions:
      - "运行全量测试"
      - "检查应用启动正常"
    checkpoints:
      - "npm test 全部通过"
      - "应用健康检查通过"

output:
  format: "markdown"
  include: ["迁移SQL", "影响范围", "回退方案"]

6. Skills 最佳实践

(1) 何时创建 Skill

场景 是否创建 Skill 原因
重复工作流 ✅ 创建 每次都一样,标准化有益
关键流程 ✅ 创建 检查项确保不遗漏
团队协作 ✅ 创建 统一工作标准
一次性任务 ❌ 不创建 用普通指令即可
简单查询 ❌ 不创建 过度工程

(2) Skill 设计原则

原则 说明
最小化 步骤不超过 6 步
可验证 每步有明确的检查项
可回退 关键操作有回退方案
可组合 Skill 间可嵌套调用

❓ 常见问题

Q Skill 和插件有什么区别?
A Skill 是工作流程定义(步骤+检查项),插件是功能扩展(工具+钩子)。Skill 使用插件提供的工具,但两者是独立概念。
Q Skill 一定能保证质量吗?
A 不能 100% 保证。Skill 提供结构化流程和检查项,但执行质量仍取决于模型能力。关键操作建议人工复核。
Q Skill 可以跨项目复用吗?
A 可以。放在 ~/.claude/skills/ 下全局可用,放在 .claude/skills/ 下项目专用。
Q skill-creator 生成的好用吗?
A 初版可用但需要调整。skill-creator 生成框架,你根据实际需求精修步骤和检查项。
Q 社区 Skill 安全吗?
A Skill 本身只是流程定义,不执行代码。但 Skill 指定的操作可能有风险,审查后再使用。
Q Skill 支持 condition 分支吗?
A 支持简单的条件判断(如"如果测试失败则..."),但复杂逻辑建议拆分成多个 Skill。

📖 小节


📝 作业

  1. 基础题(难度⭐):使用内置的 code-review Skill 审查一个文件,对比与普通指令的差异。
  2. 进阶题(难度⭐⭐):用 skill-creator 创建一个自定义 Skill(如部署流程),并测试执行效果。
  3. 挑战题(难度⭐⭐⭐):为团队创建 3 个核心 Skill,覆盖开发→测试→部署全流程,确保检查项完整。
Web-Tutorial.com

Web-Tutorial 技术团队

由多位开发者共同维护的编程教程平台。每篇教程由对应领域的开发者编写和审核,确保内容准确可靠。如发现任何问题,欢迎向我们反馈。

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏