2025-12-15 18:53:39 +08:00
|
|
|
|
# /aide:docs 命令设计文档
|
|
|
|
|
|
|
|
|
|
|
|
## 一、概述
|
|
|
|
|
|
|
2025-12-17 01:53:11 +08:00
|
|
|
|
`/aide:docs` 是项目文档管理命令,用于创建和维护面向 LLM 的**完整深度**项目文档。
|
2025-12-15 18:53:39 +08:00
|
|
|
|
|
|
|
|
|
|
### 1.1 设计目标
|
|
|
|
|
|
|
|
|
|
|
|
| 目标 | 说明 |
|
|
|
|
|
|
|------|------|
|
2025-12-17 01:53:11 +08:00
|
|
|
|
| 完全深度探索 | 对每个文件、每个目录(包括空目录)完全覆盖,不考虑效率 |
|
2025-12-15 18:53:39 +08:00
|
|
|
|
| 独立运行 | 通常在需要时单独执行 |
|
|
|
|
|
|
| 区块化 | 文档按区块组织,支持增量更新 |
|
|
|
|
|
|
| 面向 LLM | 文档格式针对 LLM 理解优化 |
|
|
|
|
|
|
| 多对话续接 | 大项目支持多次对话完成 |
|
|
|
|
|
|
|
2025-12-17 01:53:11 +08:00
|
|
|
|
### 1.2 核心原则
|
|
|
|
|
|
|
|
|
|
|
|
> **完全深度探索**:不考虑过度设计、开销、效率问题。对项目中的每一个文件、每一个目录(包括空目录)都要完全覆盖,不允许遗漏。
|
|
|
|
|
|
|
|
|
|
|
|
### 1.3 新增命令
|
2025-12-15 18:53:39 +08:00
|
|
|
|
|
|
|
|
|
|
本命令是 v2.0.0 新增的独立命令。
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 二、执行流程
|
|
|
|
|
|
|
|
|
|
|
|
### 2.1 创建流程
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
┌─────────────────────────────────────────┐
|
|
|
|
|
|
│ /aide:docs │
|
|
|
|
|
|
│ (文档不存在时) │
|
|
|
|
|
|
└─────────────────────────────────────────┘
|
|
|
|
|
|
│
|
|
|
|
|
|
▼
|
|
|
|
|
|
┌─────────────────────────────────────────┐
|
2025-12-17 01:53:11 +08:00
|
|
|
|
│ 完整目录扫描 │
|
|
|
|
|
|
│ (递归遍历所有目录和文件) │
|
|
|
|
|
|
│ - 读取 .gitignore 规则 │
|
|
|
|
|
|
│ - 记录每个文件/目录(含空目录) │
|
|
|
|
|
|
│ - 生成类似 tree 的目录结构 │
|
|
|
|
|
|
│ - 标注 [ignored] 和 [空目录] │
|
2025-12-15 18:53:39 +08:00
|
|
|
|
└─────────────────────────────────────────┘
|
|
|
|
|
|
│
|
|
|
|
|
|
▼
|
|
|
|
|
|
┌─────────────────────────────────────────┐
|
|
|
|
|
|
│ 初步区块划分 │
|
|
|
|
|
|
│ (按目录结构和功能模块划分) │
|
2025-12-17 01:53:11 +08:00
|
|
|
|
│ - 包含空目录归入相应区块 │
|
2025-12-15 18:53:39 +08:00
|
|
|
|
└─────────────────────────────────────────┘
|
|
|
|
|
|
│
|
|
|
|
|
|
▼
|
|
|
|
|
|
┌─────────────────────────────────────────┐
|
|
|
|
|
|
│ 区块验证 │
|
2025-12-17 01:53:11 +08:00
|
|
|
|
│ (确认没有遗漏任何文件或目录) │
|
2025-12-15 18:53:39 +08:00
|
|
|
|
└─────────────────────────────────────────┘
|
|
|
|
|
|
│
|
|
|
|
|
|
▼
|
|
|
|
|
|
┌─────────────────────────────────────────┐
|
2025-12-17 01:53:11 +08:00
|
|
|
|
│ 逐区块完全深度探索 │
|
|
|
|
|
|
│ - 每个文件从头到尾完整阅读 │
|
|
|
|
|
|
│ - 二进制文件根据上下文推断概括 │
|
|
|
|
|
|
│ - 生成区块内完整 tree 结构 │
|
|
|
|
|
|
│ - 生成文件清单及概括 │
|
2025-12-15 18:53:39 +08:00
|
|
|
|
└─────────────────────────────────────────┘
|
|
|
|
|
|
│
|
|
|
|
|
|
▼
|
|
|
|
|
|
┌─────────────────────────────────────────┐
|
|
|
|
|
|
│ 生成总导览 │
|
2025-12-17 01:53:11 +08:00
|
|
|
|
│ (简化版目录结构 + 区块索引) │
|
2025-12-15 18:53:39 +08:00
|
|
|
|
└─────────────────────────────────────────┘
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### 2.2 更新流程
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
┌─────────────────────────────────────────┐
|
|
|
|
|
|
│ /aide:docs │
|
|
|
|
|
|
│ (文档已存在时) │
|
|
|
|
|
|
└─────────────────────────────────────────┘
|
|
|
|
|
|
│
|
|
|
|
|
|
▼
|
|
|
|
|
|
┌─────────────────────────────────────────┐
|
|
|
|
|
|
│ 读取区块计划 │
|
2025-12-17 01:53:11 +08:00
|
|
|
|
│ (了解当前文档结构和完整目录树) │
|
|
|
|
|
|
└─────────────────────────────────────────┘
|
|
|
|
|
|
│
|
|
|
|
|
|
▼
|
|
|
|
|
|
┌─────────────────────────────────────────┐
|
|
|
|
|
|
│ 重新扫描目录 │
|
|
|
|
|
|
│ (对比当前结构与文档记录的结构) │
|
|
|
|
|
|
│ - 识别新增、删除、移动的文件/目录 │
|
2025-12-15 18:53:39 +08:00
|
|
|
|
└─────────────────────────────────────────┘
|
|
|
|
|
|
│
|
|
|
|
|
|
▼
|
|
|
|
|
|
┌─────────────────────────────────────────┐
|
|
|
|
|
|
│ 分区块验证 │
|
2025-12-17 01:53:11 +08:00
|
|
|
|
│ (完全重读有变化的文件) │
|
|
|
|
|
|
│ - 更新区块内目录树 │
|
2025-12-15 18:53:39 +08:00
|
|
|
|
└─────────────────────────────────────────┘
|
|
|
|
|
|
│
|
|
|
|
|
|
▼
|
|
|
|
|
|
┌─────────────────────────────────────────┐
|
|
|
|
|
|
│ 增量更新 │
|
2025-12-17 01:53:11 +08:00
|
|
|
|
│ (更新区块文档 + 总导览) │
|
2025-12-15 18:53:39 +08:00
|
|
|
|
└─────────────────────────────────────────┘
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 三、文档结构
|
|
|
|
|
|
|
|
|
|
|
|
### 3.1 目录结构
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
.aide/project-docs/
|
2025-12-17 01:53:11 +08:00
|
|
|
|
├── README.md # 总导览(含简化版目录结构)
|
2025-12-15 18:53:39 +08:00
|
|
|
|
├── block-plan.md # 区块计划(进度追踪)
|
2025-12-17 01:53:11 +08:00
|
|
|
|
└── blocks/ # 子区块文档(含完整目录树)
|
2025-12-15 18:53:39 +08:00
|
|
|
|
├── core.md
|
|
|
|
|
|
├── api.md
|
|
|
|
|
|
└── ...
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### 3.2 总导览格式
|
|
|
|
|
|
|
|
|
|
|
|
```markdown
|
|
|
|
|
|
# [项目名称] 项目导览
|
|
|
|
|
|
|
|
|
|
|
|
> 本文档面向 LLM,用于快速了解项目结构和脉络。
|
|
|
|
|
|
|
|
|
|
|
|
## 项目简介
|
|
|
|
|
|
## 技术栈
|
2025-12-17 01:53:11 +08:00
|
|
|
|
## 项目结构(简化版) # 前两层目录,含空目录和忽略项标注
|
2025-12-15 18:53:39 +08:00
|
|
|
|
## 架构概述
|
2025-12-17 01:53:11 +08:00
|
|
|
|
## 区块索引 # 含文件数列
|
2025-12-15 18:53:39 +08:00
|
|
|
|
## 快速导航
|
2025-12-17 01:53:11 +08:00
|
|
|
|
## 统计信息 # 目录数、文件数、空目录数、被忽略项
|
2025-12-15 18:53:39 +08:00
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### 3.3 子区块格式
|
|
|
|
|
|
|
|
|
|
|
|
```markdown
|
|
|
|
|
|
# [区块名称]
|
|
|
|
|
|
|
|
|
|
|
|
> 路径:xxx/
|
|
|
|
|
|
|
|
|
|
|
|
## 概述
|
2025-12-17 01:53:11 +08:00
|
|
|
|
## 目录结构 # 区块内完整 tree 结构
|
|
|
|
|
|
## 文件清单 # 每个文件一行概括,含类型列
|
2025-12-15 18:53:39 +08:00
|
|
|
|
## 核心组件
|
|
|
|
|
|
## 接口说明
|
|
|
|
|
|
## 依赖关系
|
|
|
|
|
|
## 注意事项
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
2025-12-17 01:53:11 +08:00
|
|
|
|
## 四、文件处理规则
|
2025-12-15 18:53:39 +08:00
|
|
|
|
|
2025-12-17 01:53:11 +08:00
|
|
|
|
| 文件类型 | 处理方式 |
|
|
|
|
|
|
|----------|----------|
|
|
|
|
|
|
| **源码文件** | 完整阅读,分析逻辑和结构,提取核心信息 |
|
|
|
|
|
|
| **配置文件** | 完整阅读,记录关键配置项 |
|
|
|
|
|
|
| **文档文件** | 完整阅读,提取主要内容 |
|
|
|
|
|
|
| **二进制文件** | 根据文件名、大小、关联文件信息进行上下文推断概括 |
|
|
|
|
|
|
| **被忽略文件** | 只记录文件名/目录名,标注 `[ignored]`,不分析内容 |
|
|
|
|
|
|
| **空目录** | 记录目录名,标注 `[空目录]`,根据名称推断用途 |
|
2025-12-15 18:53:39 +08:00
|
|
|
|
|
2025-12-17 01:53:11 +08:00
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
## 五、职责边界
|
|
|
|
|
|
|
|
|
|
|
|
### 5.1 本命令负责
|
|
|
|
|
|
|
|
|
|
|
|
- 递归遍历项目所有目录和文件
|
|
|
|
|
|
- 生成完整目录树结构
|
|
|
|
|
|
- 完全深度阅读每个文件
|
2025-12-15 18:53:39 +08:00
|
|
|
|
- 划分文档区块
|
|
|
|
|
|
- 创建和更新项目文档
|
|
|
|
|
|
- 维护区块计划(进度追踪)
|
|
|
|
|
|
|
2025-12-17 01:53:11 +08:00
|
|
|
|
### 5.2 本命令不负责
|
2025-12-15 18:53:39 +08:00
|
|
|
|
|
|
|
|
|
|
- 环境配置(由 `/aide:setup` 负责)
|
|
|
|
|
|
- 项目文档载入(由 `/aide:load` 负责)
|
|
|
|
|
|
- 任务准备和执行(由 `/aide:run` 负责)
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
2025-12-17 01:53:11 +08:00
|
|
|
|
## 六、区块划分规则
|
2025-12-15 18:53:39 +08:00
|
|
|
|
|
|
|
|
|
|
1. **按目录结构**:每个主要目录可作为一个区块
|
|
|
|
|
|
2. **按功能模块**:相关功能的文件归为一个区块
|
2025-12-17 01:53:11 +08:00
|
|
|
|
3. **包含空目录**:空目录也要归入相应区块
|
2025-12-15 18:53:39 +08:00
|
|
|
|
4. **低耦合**:区块间依赖关系尽量简单
|
|
|
|
|
|
|
2025-12-17 01:53:11 +08:00
|
|
|
|
> 注:v2.0.1 移除了"单个区块不超过 5000 行代码"的限制
|
|
|
|
|
|
|
2025-12-15 18:53:39 +08:00
|
|
|
|
---
|
|
|
|
|
|
|
2025-12-17 01:53:11 +08:00
|
|
|
|
## 七、多对话续接
|
2025-12-15 18:53:39 +08:00
|
|
|
|
|
|
|
|
|
|
大项目可能需要多次对话完成:
|
|
|
|
|
|
|
|
|
|
|
|
1. 每次开始时读取区块计划
|
|
|
|
|
|
2. 找到未完成的区块
|
2025-12-17 01:53:11 +08:00
|
|
|
|
3. **完全深度探索**该区块(每个文件从头到尾)
|
|
|
|
|
|
4. 生成区块内完整目录树
|
|
|
|
|
|
5. 更新区块计划的进度
|
2025-12-15 18:53:39 +08:00
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
2025-12-17 01:53:11 +08:00
|
|
|
|
## 八、相关文档
|
2025-12-15 18:53:39 +08:00
|
|
|
|
|
|
|
|
|
|
- [执行文件](../../commands/docs.md)
|
|
|
|
|
|
- [/aide:load 命令](load.md)
|
|
|
|
|
|
- [plugin 导览](../README.md)
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
2025-12-17 01:53:11 +08:00
|
|
|
|
## 九、版本信息
|
2025-12-15 18:53:39 +08:00
|
|
|
|
|
|
|
|
|
|
- 创建日期:2025-12-15
|
|
|
|
|
|
- v2.0.0 新增命令
|
2025-12-17 01:53:11 +08:00
|
|
|
|
- v2.0.1 强化完全深度探索要求,添加目录树结构展示
|