# 技能结构指南 ## 什么是技能? 技能是专门的教学文档,指导AI助手(如Claude Code、Gemini、Cursor)如何完美执行特定任务。 每个技能都是一个自包含的markdown文件,包含AI理解上下文所需的所有必要信息、分步指导和相关代码示例。 --- ## 技能文件结构 ### 目录结构 ``` skills/ ├── skill-name/ # 技能目录 │ ├── SKILL.md # 主要技能文件(必需) │ ├── examples/ # 示例目录(可选) │ │ ├── basic-usage.md # 基础使用示例 │ │ └── advanced-scenarios.md # 高级场景示例 │ ├── resources/ # 资源目录(可选) │ │ ├── templates/ # 代码模板 │ │ ├── checklists/ # 检查清单 │ │ └── references/ # 参考资料 │ └── scripts/ # 辅助脚本(可选) │ ├── validate.py # 验证脚本 │ └── helper.sh # 辅助脚本 ``` ### 文件命名规则 - **目录名**:小写字母,连字符分隔(如:`react-patterns`) - **主文件**:总是命名为 `SKILL.md`(大写) - **示例文件**:使用有意义的名称,`.md` 扩展名 - **脚本文件**:使用适合文件扩展名(`.py`、`.sh`、`.js`) --- ## SKILL.md 文件格式 ### 1. 前置内容(YAML Frontmatter) ```yaml --- name: skill-name # 必需:技能名称 description: "简要技能描述" # 必需:一句话描述,200字符以内 category: development # 必需:技能分类 risk: safe # 必需:风险级别(safe/medium/high) source: community # 必需:来源(community/official) date_added: "2024-01-15" # 必需:添加日期,YYYY-MM-DD格式 author: your-username # 可选:作者 tags: [react, frontend, patterns] # 可选:标签列表,最多5个 tools: [claude, cursor, gemini] # 可选:支持工具列表 --- ``` **字段说明:** | 字段 | 必需 | 格式 | 说明 | |------|------|------|------| | `name` | ✅ | 小写+连字符 | 技能标识符,用于`@skill-name`调用 | | `description` | ✅ | 引号字符串 | 简洁描述,说明技能用途 | | `category` | ✅ | 小写字符串 | 技能分类(见分类列表) | | `risk` | ✅ | safe/medium/high | 风险级别,影响使用警告 | | `source` | ✅ | community/official | 来源标识,官方或社区 | | `date_added` | ✅ | YYYY-MM-DD | 技能添加日期 | | `author` | ❌ | 字符串 | 贡献者用户名 | | `tags` | ❌ | 数组 | 搜索和分类标签 | | `tools` | ❌ | 数组 | 支持的AI工具列表 | ### 2. 技能内容结构 ```markdown # 技能标题 ## 概述 2-4句话解释这个技能的作用和为什么存在。 ## 何时使用此技能 - 当您需要[具体场景1]时使用 - 在处理[具体场景2]时使用 - 当用户询问[具体场景3]时使用 ## 工作原理 ### 步骤1:[操作名称] 详细的操作说明... ### 步骤2:[操作名称] 更多的操作说明... ## 示例 ### 示例1:[用例标题] ```javascript // 代码示例或配置 ``` ### 示例2:[用例标题] ```python # Python示例代码 ``` ## 最佳实践 - 实践建议1 - 实践建议2 - 避免的陷阱 ## 相关技能 - `@related-skill-1` - 关系说明 - `@related-skill-2` - 关系说明 ## 常见问题 **Q: 常见问题?** A: 详细回答... ## 限制和注意事项 - 技能限制1 - 使用注意事项1 ``` --- ## 技能分类系统 ### 开发类(Development) **前端开发(Frontend)** - `frontend` - 通用前端开发 - `react` - React框架 - `vue` - Vue框架 - `angular` - Angular框架 - `css` - CSS和样式 - `javascript` - JavaScript语言 **后端开发(Backend)** - `backend` - 通用后端开发 - `api` - API设计和开发 - `database` - 数据库相关 - `microservices` - 微服务架构 - `nodejs` - Node.js开发 - `python` - Python后端 **移动开发(Mobile)** - `mobile` - 通用移动开发 - `react-native` - React Native - `flutter` - Flutter框架 - `ios` - iOS开发 - `android` - Android开发 **测试(Testing)** - `testing` - 通用测试 - `unit-testing` - 单元测试 - `e2e-testing` - 端到端测试 - `performance-testing` - 性能测试 - `security-testing` - 安全测试 ### DevOps和基础设施(DevOps & Infrastructure) **部署(Deployment)** - `deployment` - 通用部署 - `docker` - 容器化 - `kubernetes` - 容器编排 - `ci-cd` - 持续集成/部署 - `cloud` - 云服务 **监控(Monitoring)** - `monitoring` - 系统监控 - `logging` - 日志管理 - `observability` - 可观测性 - `performance` - 性能优化 ### 安全类(Security) **安全审计(Security Audit)** - `security` - 通用安全 - `pen-testing` - 渗透测试 - `vulnerability` - 漏洞扫描 - `compliance` - 合规检查 **安全实施(Security Implementation)** - `authentication` - 身份认证 - `authorization` - 授权控制 - `encryption` - 加密技术 - `secure-coding` - 安全编码 ### AI和机器学习(AI & Machine Learning) **AI开发(AI Development)** - `ai` - 通用AI开发 - `llm` - 大语言模型 - `prompt-engineering` - 提示工程 - `ai-safety` - AI安全和伦理 **机器学习(Machine Learning)** - `machine-learning` - 机器学习 - `data-science` - 数据科学 - `ml-ops` - 机器学习运维 - `model-training` - 模型训练 ### 业务和产品(Business & Product) **产品管理(Product Management)** - `product` - 产品管理 - `planning` - 项目规划 - `requirements` - 需求分析 - `user-research` - 用户研究 **商业分析(Business Analysis)** - `analytics` - 数据分析 - `metrics` - 指标分析 - `reporting` - 报告生成 - `business-intelligence` - 商业智能 ### 工具和效率(Tools & Productivity) **开发工具(Dev Tools)** - `git` - 版本控制 - `editor` - 编辑器配置 - `terminal` - 终端和CLI - `productivity` - 生产力工具 **文档(Documentation)** - `documentation` - 文档编写 - `technical-writing` - 技术写作 - `api-docs` - API文档 - `tutorials` - 教程编写 --- ## 质量标准 ### 内容质量 **✅ 必须满足:** - 描述清晰准确,无歧义 - 示例可运行,代码正确 - 步骤完整,逻辑清晰 - 涵盖常见使用场景 **🎯 鼓励添加:** - 高级用法示例 - 常见错误处理 - 性能优化建议 - 最佳实践总结 ### 格式规范 **✅ 必须遵守:** - 前置内容完整且有效 - 正确的分类和标签 - 一致的代码块格式 - 正确的技能引用(`@skill-name`) **🎯 推荐实践:** - 添加目录结构说明 - 包含相关技能链接 - 提供故障排除指南 - 添加性能指标 ### 技术质量 **✅ 安全要求:** - 代码安全,无已知漏洞 - 输入验证完整 - 错误处理适当 - 不包含敏感信息 **✅ 性能要求:** - 算法高效,复杂度合理 - 资源使用优化 - 内存泄漏防护 - 扩展性考虑 --- ## 技能示例 ### 简单技能示例 ```yaml --- name: git-commit-check description: "检查Git提交消息格式和内容质量" category: git risk: safe source: community date_added: "2024-01-15" tags: [git, commit, quality] tools: [claude, cursor, gemini] --- ``` ```markdown # Git提交检查 ## 概述 此技能用于检查Git提交消息的格式规范和内容质量,确保提交历史清晰可读。 ## 何时使用此技能 - 当您需要验证提交消息格式时使用 - 在提交前进行质量检查时使用 - 当团队需要统一提交标准时使用 ## 工作原理 ### 步骤1:格式检查 验证提交消息是否遵循规范格式: - 类型标签(feat/fix/docs等) - 空行分隔 - 简洁标题(50字符内) - 详细描述(如需要) ### 步骤2:内容检查 检查提交内容的质量: - 是否包含必要信息 - 语法是否正确 - 是否有拼写错误 ## 示例 ### 示例1:标准提交 ``` feat: 添加用户认证功能 - 实现JWT认证 - 添加登录/登出页面 - 更新用户模型 ``` ### 示例2:修复提交 ``` fix: 修复登录页面重定向问题 解决用户登录后不能正确跳转到首页的bug ``` ## 最佳实践 - 使用约定式提交格式 - 保持消息简洁明了 - 包含相关Issue编号 - 避免敏感信息泄露 ``` ### 复杂技能示例 ```yaml --- name: react-performance-optimization description: "React应用性能优化和调试" category: frontend risk: medium source: community date_added: "2024-01-15" tags: [react, performance, optimization] tools: [claude, cursor, gemini] --- ``` ```markdown # React性能优化 ## 概述 此技能提供React应用性能优化的系统性方法,包括识别瓶颈、应用优化策略和验证改进效果。 ## 何时使用此技能 - 当React应用加载缓慢时使用 - 在用户体验需要优化时使用 - 当进行性能评估时使用 - 当准备生产部署时使用 ## 工作原理 ### 步骤1:性能评估 识别性能瓶颈: - 使用React DevTools Profiler - 分析组件渲染时间 - 检查内存使用情况 - 识别重渲染问题 ### 步骤2:优化策略 应用优化技术: - 组件懒加载 - React.memo优化 - 状态结构优化 - 副作用优化 ### 步骤3:验证改进 确认优化效果: - 重新运行性能测试 - 对比优化前后指标 - 确保功能完整性 - 监控生产表现 ## 示例 ### 示例1:组件优化 ```javascript // 优化前 function TodoList({ todos, onToggle }) { return (