AI知识篇

什么是Skills

给AI定义"专业技能"

Skills(技能) 是一种为 AI 预定义可复用的专业能力的机制。通过 Skills,你可以把常用的操作流程、专业知识、行为规范封装成一个"技能包",让 AI 在特定场景下自动激活和使用。

💡 类比:Skills 就像游戏角色的"技能树"。一个基础角色(AI)可以通过装备不同的技能来获得不同的专业能力——装上"代码审查"技能就能审查代码,装上"Three.js"技能就懂 3D 开发。

加载图表中...

为什么需要 Skills?

问题没有 Skills有 Skills
重复描述每次对话都要解释"怎么提交代码"一次定义,随时调用 /commit
知识遗忘AI 每次对话都从零开始技能永久保存
质量不一每次回答可能不同标准化的流程和输出
团队协作每个人自己和 AI 沟通团队共享统一的技能集

Skills 的工作方式

加载图表中...

Skill 的结构

一个 Skill 通常包含以下部分:

加载图表中...

Skill 定义示例

---
name: commit
description: 帮助用户创建标准化的 Git 提交
trigger: 当用户输入 /commit 时
---

## 执行步骤

1. 运行 `git status` 查看变更文件
2. 运行 `git diff` 查看具体改动
3. 分析变更内容,生成符合 Conventional Commits 规范的提交信息
4. 格式:`类型(范围): 描述`
   - feat: 新功能
   - fix: 修复Bug
   - docs: 文档
   - refactor: 重构
5. 执行 `git add``git commit`

常见的 Skills 类型

加载图表中...
类型示例作用
开发技能/commit/test标准化日常开发操作
审查技能/review-pr代码审查、安全检查
领域技能Three.js、数据库特定技术领域的专业知识
流程技能/deploy/release标准化团队工作流程

Skills 在实际工具中的应用

Claude Code 中的 Skills

Claude Code 支持自定义 Skills,通过 Markdown 文件定义:

.claude/
  skills/
    commit.md         — 提交代码技能
    review-pr.md      — 代码审查技能
    threejs-basics.md  — Three.js 开发技能

用户输入 /commit 时,Claude Code 会加载对应的技能定义,按照规定的流程执行。

自动触发 vs 手动触发

加载图表中...

Skills vs 其他概念

对比SkillsSystem PromptRAG
定位可复用的专业能力模型的全局行为知识库检索
粒度单个任务/场景整体人设文档级别
触发按需加载始终生效根据问题检索
复用可跨会话使用单次会话被动检索
加载图表中...

设计好的 Skills 的原则

原则说明
单一职责每个 Skill 只做一件事
明确步骤清晰定义执行流程
包含示例给出输入输出的示例
错误处理说明异常情况怎么处理
可组合多个 Skill 可以配合使用

🎯 AI编程小贴士:如果你发现自己经常让 AI 做同样的事情(比如每次都要解释代码提交规范),就应该把它封装成一个 Skill。告诉 AI"帮我写一个代码审查的 Skill 定义,要检查安全性、性能和代码风格",它会帮你创建一个可复用的技能定义。

小结

  • Skills 是为 AI 预定义的可复用专业能力
  • 解决了重复描述、知识遗忘、质量不一致的问题
  • 通过 /技能名 或自动检测来触发
  • 包含名称、触发条件、执行指令和可用工具
  • Skills、System Prompt、RAG 分别定义 AI 能做什么、是谁、知道什么
  • 设计 Skill 遵循单一职责、明确步骤、包含示例的原则