# Canvas 开发提示词集合

## 1. 架构分析提示词

从现有代码生成 Obsidian Canvas 架构白板。

```markdown
你是一个代码架构分析专家。请分析以下项目结构，生成 Obsidian Canvas 格式的架构白板。

## 输入
项目路径：{PROJECT_PATH}
分析粒度：{file/class/service}

## 输出要求
生成符合 Obsidian Canvas JSON 格式的 .canvas 文件，包含：

1. **节点 (nodes)**：每个模块/文件/类作为一个节点
2. **连线 (edges)**：表示模块间的依赖/调用关系
3. **分组 (groups)**：按功能域分组

## 布局规则
- x轴: -400 (前端) → 0 (API) → 400 (服务) → 800 (数据)
- 节点宽度: 200-280，高度: 80-150
- 间距: 水平 100-150，垂直 120-150

## 输出格式
直接输出 JSON，可保存为 .canvas 文件
```

## 2. 白板驱动编码提示词

根据 Canvas 白板生成代码。

```markdown
你是一个根据架构白板生成代码的专家。请根据以下 Obsidian Canvas 白板 JSON，生成对应的代码实现。

## 输入
Canvas JSON：
```json
{CANVAS_JSON}
```

技术栈：{TECH_STACK}
目标目录：{TARGET_DIR}

## 解析规则
1. 节点 text 标题 → 文件名/类名
2. 节点 text 列表项 → 方法/函数
3. 连线 fromNode → toNode = import/调用关系
4. edge label 决定关系类型

## 输出格式
```
文件：{文件路径}
```{语言}
{代码内容}
```
```

## 3. 白板同步检查提示词

校验白板与代码一致性。

```markdown
你是一个代码与架构一致性检查专家。请对比以下白板和代码，找出不一致之处。

## 输入
Canvas 白板 JSON：
```json
{CANVAS_JSON}
```

项目代码路径：{PROJECT_PATH}

## 检查项
1. 节点完整性：白板节点是否都有对应代码？
2. 连线准确性：连线是否反映真实依赖？
3. 分组正确性：分组是否与目录结构一致？

## 输出格式
### 🔴 严重不一致
| 类型 | 白板 | 代码 | 建议 |

### 🟡 轻微不一致
| 类型 | 白板 | 代码 | 建议 |

### 🟢 一致性良好
- 覆盖率：{X}%
```

## 4. 增量更新提示词

白板修改后同步更新代码。

```markdown
白板已更新，请对比新旧版本，只修改变化的部分：

旧白板：
```json
{OLD_CANVAS_JSON}
```

新白板：
```json
{NEW_CANVAS_JSON}
```

## 输出
1. 需要新增的文件
2. 需要修改的文件（只输出 diff）
3. 需要删除的文件
```

## 5. 快速理解项目提示词

接手新项目时快速生成架构概览。

```markdown
我需要快速理解这个项目的架构。请：

1. 扫描 {PROJECT_PATH} 目录
2. 识别核心模块和入口文件
3. 生成一个简化的架构白板（只包含关键模块）
4. 用 3-5 句话总结项目架构

粒度：service（只显示大模块）
重点：数据流向、外部依赖、核心业务逻辑
```

## 使用技巧

### 提高生成质量

1. **明确粒度**：小项目用 file，大项目用 service
2. **指定重点**：告诉 AI 关注什么（API/数据库/外部服务）
3. **提供上下文**：附上 README 或技术栈说明

### 迭代优化

1. 第一次生成后，手动调整布局
2. 补充 AI 遗漏的隐式依赖
3. 添加注释节点说明设计决策
4. 再次发给 AI 验证理解是否正确
