解决MySql布尔型新旧版本兼容问题,采用枚举来表示布尔型的数据表。由正向工程赋值
|
# NewLife 项目文档生成 Prompt
本文件包含让 Copilot 自动分析项目源码、生成标准化文档的 Prompt 模板。
---
## 使用方式
在 VS Code Copilot Chat 中,打开目标项目,粘贴对应 Prompt 并执行。
---
## Prompt 1:项目全量扫描与文档覆盖分析
适用场景:首次对一个项目进行文档梳理时。
```
请分析当前项目的文档覆盖度:
1. 扫描项目中所有命名空间和公共类型(public class/interface/struct/enum)
2. 检查 Doc/ 目录下已有的 .md 文件
3. 生成覆盖度报告:
- 按命名空间分组,列出每个公共类型
- 标注哪些类型已有文档、哪些缺失
- 计算总覆盖率和各模块覆盖率
- 按优先级排序缺失文档(核心接口 > 实现类 > 工具类 > 内部组件)
输出格式参考:
| 命名空间 | 总计 | 已有文档 | 缺失 | 覆盖率 |
|---------|------|---------|------|--------|
然后列出缺失文档的具体类型清单。
```
---
## Prompt 2:为指定模块生成文档
适用场景:针对一个命名空间/模块生成完整文档。
```
请为 {命名空间} 模块生成标准文档。
要求:
1. 阅读该命名空间下所有源代码文件
2. 提取所有 public 成员的签名和 XML 文档注释
3. 查找相关的单元测试文件(作为用法参考)
4. 查找 Doc/ 目录下是否已有该模块的文档
5. 按照 Doc/文档标准模板.md 的格式生成文档
文档结构:
- YAML frontmatter(title/namespace/project/updated)
- 一段话概述
- 核心概念
- 快速开始(含可运行代码)
- API 参考(从源码提取真实签名)
- 常见场景(3-5 个)
- 注意事项
- 与其它模块的关系
代码规范:使用 String/Int32 而非 string/int。
已有文档则增量更新,不覆盖。
```
---
## Prompt 3:批量生成缺失文档
适用场景:一次性为多个缺失文档的类型生成文档。
```
根据 Doc/AI功能索引.md 中标注为"—"(无文档)的类型,按以下优先级批量生成文档:
优先级顺序:
1. P0:被 skills 和 instructions 引用但无独立文档的类型
2. P1:核心接口和基类
3. P2:常用实现类
4. P3:工具类和内部组件
对每个类型:
1. 读取源文件,提取公共 API 签名
2. 生成独立文档或合并到模块文档中(工具类合并,核心类独立)
3. 更新 AI功能索引.md 中的文档链接
每生成一个文档后,告诉我完成了哪个,然后继续下一个。
```
---
## Prompt 4:生成项目索引 JSON
适用场景:为推送工具生成机器可读索引。
```
请扫描当前项目,生成 Doc/索引.json 文件。
要求:
1. 遍历所有命名空间和公共类型
2. 从源码提取每个类型的 summary 注释
3. 关联 Doc/ 目录下的文档文件
4. 关联 newlifex.com 上的文档 URL(参考 Doc/核心库目录.md)
JSON 格式参考 Doc/文档驱动AI分发架构.md 第 3 节的索引格式定义。
```
---
## Prompt 5:更新 llms.txt
适用场景:文档变更后更新 llms.txt 索引。
```
请根据 Doc/索引.json 和 Doc/ 目录下的所有 .md 文件,更新以下两个文件:
1. Doc/llms.txt — 精简索引
- 遵循 llms.txt 标准格式(# 标题 > 描述 ## 分区 - [链接](/NewLife/X/Blob/dev/Doc/url): 说明)
- 按项目分区,每个模块一行
- 只包含有文档的模块
2. Doc/llms-full.txt — 完整文档
- 将所有 Doc/*.md 按模块顺序拼接
- 每个文件前加 ## 模块标题
- 跳过元文件(索引、模板、指南类文档)
```
---
## Prompt 6:为新项目初始化文档体系
适用场景:新 NewLife 项目从零开始建立文档。
```
这是一个新的 NewLife 生态项目,请帮我初始化文档体系:
1. 扫描项目源码结构
2. 创建 Doc/ 目录及以下文件:
- AI功能索引.md(参考 NewLife.Core 的格式)
- 核心库目录.md(文档链接目录)
- 至少为最核心的 3 个公共类创建文档
3. 创建 .github/ 目录及以下文件:
- copilot-instructions.md(参考 AI协作开发指南.md 的模板)
- instructions/ 目录下至少 1 个模块指令
- skills/ 目录下至少 1 个技能文件
- agents/ 目录下至少 1 个代理文件(代码审查)
参考文档:
- NewLife.Core 的 Doc/文档标准模板.md
- NewLife.Core 的 Doc/AI协作开发指南.md
- NewLife.Core 的 .github/copilot-instructions.md
```
---
## 执行建议
### 单项目完整流程
```
Prompt 1(扫描分析)
↓
Prompt 2(逐模块生成,从 P0 开始)× N 次
↓
Prompt 4(生成索引 JSON)
↓
Prompt 5(生成/更新 llms.txt)
```
### 新项目快速启动
```
Prompt 6(一键初始化)
↓
Prompt 1(确认覆盖度)
↓
Prompt 2(补充缺失)× N 次
```
### 持续维护
每次发版或重大变更后:
```
Prompt 1(重新评估覆盖度)
↓
Prompt 2(补充新增类型文档)
↓
Prompt 5(更新 llms.txt)
```
---
(完)
|