常用规则
This commit is contained in:
@@ -1,3 +1,147 @@
|
||||
# rules-skills
|
||||
|
||||
常用的一些rules和skills
|
||||
本项目是一个 AI 编程辅助知识库,用于集中存放和管理常用的 **Rules(规则)** 与 **Skills(技能)**。
|
||||
|
||||
---
|
||||
|
||||
## 目录
|
||||
|
||||
- [概念定义](#概念定义)
|
||||
- [核心区别](#核心区别)
|
||||
- [目录结构](#目录结构)
|
||||
- [使用方法](#使用方法)
|
||||
- [书写规范](#书写规范)
|
||||
- [文件命名规范](#文件命名规范)
|
||||
|
||||
---
|
||||
|
||||
## 概念定义
|
||||
|
||||
### Rule(规则)
|
||||
|
||||
**Rule** 是全局性的约束条件,用于划定 AI 的行为边界和输出规范。它告诉 AI "应该怎么做" 以及 "不应该做什么"。
|
||||
|
||||
- **作用范围**:全局生效,影响 AI 的所有响应
|
||||
- **核心目的**:确保 AI 输出符合团队规范、编码标准或项目约束
|
||||
- **典型场景**:
|
||||
- 代码风格规范(如必须使用某种命名约定)
|
||||
- 安全约束(如禁止输出敏感信息)
|
||||
- 输出格式要求(如必须包含特定字段)
|
||||
- 行为边界(如遇到不确定时必须询问而非猜测)
|
||||
|
||||
### Skill(技能)
|
||||
|
||||
**Skill** 是可复用的原子化能力单元,用于执行特定任务或完成特定目标。它告诉 AI "具体做什么" 以及 "如何一步步完成"。
|
||||
|
||||
- **作用范围**:按需调用,仅在触发时生效
|
||||
- **核心目的**:封装可复用的任务执行流程,提高效率和一致性
|
||||
- **典型场景**:
|
||||
- 代码审查流程
|
||||
- 特定框架的项目初始化
|
||||
- 标准化的文档生成
|
||||
- 重复的代码重构模式
|
||||
|
||||
---
|
||||
|
||||
## 核心区别
|
||||
|
||||
| 维度 | Rule(规则) | Skill(技能) |
|
||||
|------|-------------|--------------|
|
||||
| **本质定位** | 约束与边界 | 能力与动作 |
|
||||
| **作用时机** | 全局持续生效 | 按需触发执行 |
|
||||
| **内容形式** | 原则性、声明式描述 | 步骤化、流程化指导 |
|
||||
| **使用方式** | 自动应用,无需显式调用 | 需要显式触发或调用 |
|
||||
| **生命周期** | 长期稳定,少变更 | 随需求迭代,可增减 |
|
||||
| **典型内容** | "必须使用驼峰命名"、"禁止硬编码密钥" | "1. 分析代码 2. 找出问题 3. 给出建议" |
|
||||
|
||||
### 类比理解
|
||||
|
||||
- **Rule** 像是交通规则:红灯停、绿灯行,所有车辆(AI 输出)都必须遵守。
|
||||
- **Skill** 像是驾驶技能:倒车入库、侧方停车,需要时按步骤执行。
|
||||
|
||||
---
|
||||
|
||||
## 目录结构
|
||||
|
||||
```
|
||||
rules-skills/
|
||||
├── rules/ # 存放所有 Rule 文件
|
||||
│ ├── example-rule.md
|
||||
│ └── ...
|
||||
├── skills/ # 存放所有 Skill 文件
|
||||
│ ├── example-skill.md
|
||||
│ └── ...
|
||||
└── README.md # 本文件
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 使用方法
|
||||
|
||||
### 使用 Rule
|
||||
|
||||
Rule 通常配置在 AI 工具的全局设置或项目配置中,自动生效:
|
||||
|
||||
1. 将需要的 Rule 文件内容复制到 AI 工具的规则配置区
|
||||
2. 或在项目配置中引用 Rule 文件路径
|
||||
3. AI 在处理所有请求时自动遵循这些规则
|
||||
|
||||
### 使用 Skill
|
||||
|
||||
Skill 需要显式触发,常见方式:
|
||||
|
||||
1. **命令触发**:在对话中直接引用 Skill 名称,如 `/skill-name` 或 `@skill-name`
|
||||
2. **文件引用**:将 Skill 内容粘贴到对话中,让 AI 按步骤执行
|
||||
3. **工具集成**:在支持 Skill 的 AI 平台中配置为可调用工具
|
||||
|
||||
---
|
||||
|
||||
## 书写规范
|
||||
|
||||
### Rule 书写规范
|
||||
|
||||
1. **明确性**:每条规则应清晰、无歧义,避免模糊表述
|
||||
2. **可验证性**:规则应能被明确判断是否符合(是/否)
|
||||
3. **必要性**:只写真正需要的规则,避免过度约束
|
||||
4. **优先级**:如有多条规则冲突,应标明优先级
|
||||
5. **格式统一**:建议使用 "必须..."、"禁止..."、"应该..." 等明确措辞
|
||||
|
||||
### Skill 书写规范
|
||||
|
||||
1. **步骤清晰**:将任务拆分为明确的步骤,每步一个动作
|
||||
2. **输入输出定义**:明确 Skill 需要什么输入,产生什么输出
|
||||
3. **可复用性**:设计时考虑通用性,避免过度绑定具体场景
|
||||
4. **错误处理**:包含常见异常情况的应对方式
|
||||
5. **示例说明**:提供 1-2 个使用示例,帮助理解
|
||||
|
||||
---
|
||||
|
||||
## 文件命名规范
|
||||
|
||||
### Rule 文件
|
||||
|
||||
- 使用 **kebab-case**(短横线连接)
|
||||
- 格式:`{领域}-{具体规则}.md`
|
||||
- 示例:
|
||||
- `code-style-java.md`
|
||||
- `security-sensitive-data.md`
|
||||
- `response-format-json.md`
|
||||
|
||||
### Skill 文件
|
||||
|
||||
- 使用 **kebab-case**(短横线连接)
|
||||
- 格式:`{动作}-{目标}.md` 或 `{领域}-{动作}.md`
|
||||
- 示例:
|
||||
- `review-code-java.md`
|
||||
- `generate-api-doc.md`
|
||||
- `refactor-extract-method.md`
|
||||
|
||||
---
|
||||
|
||||
## 贡献指南
|
||||
|
||||
1. 新增 Rule 或 Skill 前,先检查是否已有类似内容
|
||||
2. 遵循上述书写规范和命名规范
|
||||
3. 将文件放入对应的 `rules/` 或 `skills/` 目录
|
||||
4. 保持内容简洁,聚焦单一职责
|
||||
5. 定期回顾和维护,移除过时内容
|
||||
|
||||
Reference in New Issue
Block a user