Skills、Rules和KnowledgeBase的概念和区别

🎯 核心概念理解

1️⃣ Skill(技能)

定义 :Skill 是 AI 系统能够执行的特定任务或功能模块 ,它告诉 AI "怎么做"

核心特征

  • 可执行性:包含明确的执行步骤和操作流程
  • 模块化:独立的功能单元,可以单独使用
  • 可组合性:可以与其他 Skill 组合使用
  • 聚焦性:专注于解决特定问题
  • 简洁性:不应过于庞大,保持清晰

内容结构

markdown 复制代码
# Skill Name

## 功能描述
简要说明这个 Skill 做什么

## 触发条件
什么情况下使用这个 Skill

## 前置依赖
- 依赖的 Rules
- 依赖的 Knowledge Base
- 依赖的其他 Skills

## 执行步骤
1. 步骤 1(简要)
2. 步骤 2(简要)
3. 步骤 3(简要)

## 输出结果
期望的输出是什么

## 示例
简单的使用示例(可选)

## 相关文档
指向详细文档的链接

大小建议

  • 单个 Skill:200-500 行
  • Skill 集合文件:1,000-2,000 行
  • 不超过 50 KB

2️⃣ Rule(规则)

定义 :Rule 是 AI 系统必须遵守的约束和规范 ,它告诉 AI "什么能做、什么不能做"

核心特征

  • 强制性:必须遵守,不可违反
  • 明确性:清晰的边界和约束
  • 可验证性:可以检查是否遵守
  • 稳定性:不经常变化
  • 普适性:适用于多个场景

内容结构

markdown 复制代码
# Rule Category

## 必须遵守的规范
- ✅ 必须做 XXX
- ✅ 必须使用 XXX

## 禁止的操作
- ❌ 禁止做 XXX
- ❌ 不允许使用 XXX

## 命名规范
- 文件命名:xxx_xxx.go
- 函数命名:XxxYyy

## 架构约束
- 分层结构
- 依赖关系

## 验证方法
如何检查是否遵守规则

大小建议

  • 单个 Rule 文件:500-1,500 行
  • 不超过 30 KB

3️⃣ Knowledge Base(知识库)

定义 :Knowledge Base 是 AI 系统的背景知识和参考资料 ,它告诉 AI "是什么"

核心特征

  • 详细性:提供全面的信息
  • 参考性:供查阅和检索
  • 可检索性:支持语义搜索
  • 可扩展性:可以持续补充
  • 无大小限制:可以很大,支持分块

内容结构

markdown 复制代码
# Knowledge Base Topic

## 概述
详细的背景介绍

## 架构设计
详细的架构说明

## 详细说明
- 功能 A 的详细说明
- 功能 B 的详细说明

## 代码示例
大量的代码示例和注释

## 配置说明
详细的配置参数说明

## 最佳实践
经验总结和建议

## 常见问题
FAQ

## 参考资料
外部链接和文档

大小建议

  • 无限制,可以很大
  • 支持分块检索
  • 可以拆分为多个文件

📊 三者对比表

维度 Skill(技能) Rule(规则) Knowledge Base(知识库)
核心问题 怎么做? 能不能做? 是什么?
作用 执行指南 约束条件 背景知识
特点 可执行、模块化 强制性、明确性 详细性、参考性
内容 执行步骤 规范约束 详细说明、示例
大小 1,000-2,000 行 500-1,500 行 无限制
变化频率 中等
使用方式 主动执行 被动遵守 按需检索
示例 "如何添加数据库" "禁止修改 internal/" "数据库配置详解"

🔗 三者关系

复制代码
┌─────────────────────────────────────────────┐
│              AI Agent                        │
│                                              │
│  ┌──────────┐    ┌──────────┐    ┌────────┐│
│  │  Skill   │───▶│   Rule   │◀───│  KB    ││
│  │ (执行)   │    │ (约束)   │    │(知识)  ││
│  └──────────┘    └──────────┘    └────────┘│
│       │               │               │     │
│       │               │               │     │
│       ▼               ▼               ▼     │
│  执行步骤         检查规则         查询知识  │
└─────────────────────────────────────────────┘

关系说明

  1. Skill 依赖 Rule:执行时必须遵守规则
  2. Skill 依赖 Knowledge Base:需要查询背景知识
  3. Rule 引用 Knowledge Base:规则的详细说明在知识库中
  4. 三者协同工作:Skill 执行任务,Rule 提供约束,KB 提供知识

💡 实际案例

案例:添加数据库功能

Skill(怎么做)
markdown 复制代码
# Skill 1: 如何使用数据库

## 执行步骤
1. 在 repo/ 目录创建 Repository
2. 在 Logic 中调用 Repository
3. 使用 SvcCtx.GetDb() 获取连接

## 依赖
- Rule: gec_rules.md(数据库规范)
- KB: gec_knowledge_base.md(数据库详解)
Rule(能不能做)
markdown 复制代码
# 数据库规则

## 必须遵守
- ✅ 必须在 repo/ 目录创建 Repository
- ✅ 必须通过 SvcCtx.GetDb() 获取连接

## 禁止操作
- ❌ 禁止在 Logic 中直接写 SQL
- ❌ 禁止使用全局数据库变量
Knowledge Base(是什么)
markdown 复制代码
# 数据库详解

## 架构设计
GEC 使用 GORM 作为 ORM 框架...

## 配置说明
```yaml
database:
  dsn: "user:pass@tcp(host:port)/db"
  max_idle_conns: 10

代码示例

go 复制代码
// 完整的 Repository 实现示例
type UserRepo struct {
    db *gorm.DB
}

func (r *UserRepo) GetUser(id int64) (*User, error) {
    // 详细的实现代码...
}

最佳实践

  • 使用事务处理

  • 连接池配置

  • 错误处理


    🎯 当前 SKILL.md 的问题

    基于以上理解,当前的 SKILL.md 存在以下问题:

    问题 1:内容混杂

当前 SKILL.md 包含:

  • ✅ Skill 内容(执行步骤)

  • ❌ Rule 内容(规范约束)← 应该在 gec_rules.md

  • ❌ Knowledge 内容(详细说明)← 应该在 gec_knowledge_base.md

    问题 2:文件过大

  • 6,527 行 / 188 KB

  • 已被标记为 isBigFile: true

  • AI 加载困难,理解效率低

    问题 3:职责不清

  • Skill 应该简洁,只包含执行步骤

  • 详细说明应该在 Knowledge Base

  • 规范约束应该在 Rule


    ✅ 优化建议

    方案:职责分离

ai-coding/

├── SKILL.md # 精简版(1,500 行)

│ └── 14 个 Skill 的执行步骤(简要)

└── references/

├── gec_rules.md # 规则(已存在)

├── gec_knowledge_base.md # 知识库(已存在)

└── skills/ # 详细 Skill 文档(新增)

├── skill_01_database.md

├── skill_02_redis.md

└── ...

复制代码
### **SKILL.md 应该保留的内容**
```markdown
# GEC Framework Development Skill

## 核心约束(简要,详见 gec_rules.md)
- 分层架构
- ServiceContext 使用
- 文件修改限制

## 核心技能清单

### Skill 1: 如何使用数据库
**功能**:数据库操作
**执行步骤**:
1. 在 repo/ 创建 Repository
2. 在 Logic 中调用
3. 使用 SvcCtx.GetDb()

**详细文档**:skill_01_database.md
**依赖规则**:gec_rules.md#数据库规范
**相关知识**:gec_knowledge_base.md#数据库

🚀 总结

Skill 的正确定位

  • 📌 简洁:只包含执行步骤,不包含详细说明
  • 📌 模块化:每个 Skill 独立,可组合
  • 📌 可执行:明确的操作流程
  • 📌 有边界:1,000-2,000 行,不超过 50 KB

与 Rule 和 KB 的区别

  • Skill:告诉 AI "怎么做"(执行指南)
  • Rule:告诉 AI "能不能做"(约束条件)
  • Knowledge Base:告诉 AI "是什么"(背景知识)

优化方向

  1. ✅ 精简 SKILL.md,只保留核心执行步骤
  2. ✅ 将详细说明移到 Knowledge Base
  3. ✅ 将规范约束移到 Rule
  4. ✅ 建立清晰的文档引用关系
相关推荐
لا معنى له2 小时前
学习笔记:少样本学习
人工智能·笔记·深度学习·学习·机器学习
Deepoch2 小时前
从“机械执行”到“意图理解”:Deepoc如何重塑人机交互新范式
人工智能·机器人·开发板·具身模型·deepoc
小郭团队2 小时前
1_1_七段式SVPWM (传统算法反正切)算法理论与 MATLAB 实现详解
人工智能·stm32·嵌入式硬件·算法·dsp开发
民乐团扒谱机2 小时前
【微实验】多目标背包问题的整数规划解法对比(MATLAB 实现)
人工智能·多目标优化·01背包问题·蒙特卡罗·帕累托前沿
love530love2 小时前
突破 ComfyUI 环境枷锁:RTX 3090 强行开启 comfy-kitchen 官方全后端加速库实战
人工智能·windows·python·cuda·comfyui·triton·comfy-kitchen
码农三叔2 小时前
(9-2-01)自动驾驶中基于概率采样的路径规划:基于Gazebo仿真的路径规划系统(1)
人工智能·机器学习·机器人·自动驾驶·路径规划
楠奕2 小时前
0代码打造APP
ai编程
古城小栈2 小时前
后端接入大模型实现“自然语言查数据库”
数据库·ai编程
路有瑶台2 小时前
The Spark Within: What AI Like DeepSeek Can Inspire in Us
人工智能