# 02-白板驱动编码提示词

> 根据 Canvas 白板架构图生成/修改代码

## 使用场景

- 新功能开发：先画白板，再生成代码
- 架构重构：修改白板连线，AI同步重构代码
- 模块拆分：在白板拆分节点，AI生成新文件

## 提示词

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

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

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

## 解析规则

1. **节点 → 文件/类**
   - 节点 text 中的标题 → 文件名/类名
   - 节点 text 中的列表项 → 方法/函数
   - 节点颜色/分组 → 模块归属

2. **连线 → 依赖关系**
   - fromNode → toNode = import/调用关系
   - edge label 决定关系类型：
     - "调用" → 函数调用
     - "继承" → class extends
     - "依赖" → import
     - "数据流" → 参数传递

3. **分组 → 目录结构**
   - 同一分组的节点放在同一目录
   - 分组名称 → 目录名

## 输出要求

1. 生成完整的文件结构
2. 每个文件包含：
   - 正确的 import 语句（根据连线）
   - 类/函数定义（根据节点内容）
   - 调用关系实现（根据连线方向）
3. 添加必要的类型注解和注释
4. 遵循技术栈的最佳实践

## 输出格式

```
文件：{文件路径}
```{语言}
{代码内容}
```
```

## 使用示例

```
根据以下白板生成 Python FastAPI 项目代码：

{粘贴 .canvas 文件内容}

技术栈：Python 3.11 + FastAPI + SQLAlchemy
目标目录：/home/user/my-api
```

## 增量更新模式

当白板有修改时，使用以下提示词：

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

旧白板：{OLD_CANVAS_JSON}
新白板：{NEW_CANVAS_JSON}

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