chore: assets - retire canvas workflow and document repo sources

This commit is contained in:
tukuaiai
2026-04-28 19:14:25 +08:00
parent 7dd36d6dd3
commit f7d1828dcd
28 changed files with 77 additions and 1988 deletions
-1
View File
@@ -46,7 +46,6 @@ assets/skills/
## 快速定位(常用技能)
- `assets/skills/tmux-autopilot/`tmux 自动化操控与多 Agent 协作
- `assets/skills/canvas-dev/`Canvas 白板驱动开发
- `assets/skills/sop-generator/`SOP 生成与规范化
- `assets/skills/markdown-to-epub/`Markdown → EPUB 稳定构建
- `assets/skills/auto-skill/`:元技能(技能生成/校验/脚手架)
+1 -2
View File
@@ -1,6 +1,6 @@
# 🎯 AI Skills 技能库
`assets/skills/` 目录存放 AI 技能(Skills),这些是比提示词更高级的能力封装,可以让 AI 在特定领域表现出专家级水平。当前包含 **20 个**专业技能。
`assets/skills/` 目录存放 AI 技能(Skills),这些是比提示词更高级的能力封装,可以让 AI 在特定领域表现出专家级水平。当前包含 **19 个**专业技能。
## Skills 一览表
@@ -15,7 +15,6 @@
| 技能 | 说明 |
|:---|:---|
| [canvas-dev](./canvas-dev/SKILL.md) | ⭐ Canvas白板驱动开发(AI架构总师) |
| [headless-cli](./headless-cli/SKILL.md) | 无头模式 AI CLI 调用(Gemini/Claude/Codex |
| [claude-code-guide](./claude-code-guide/SKILL.md) | Claude Code CLI 使用指南 |
| [claude-cookbooks](./claude-cookbooks/SKILL.md) | Claude API 最佳实践 |
-39
View File
@@ -1,39 +0,0 @@
# Canvas-Dev Skill
Canvas白板驱动开发技能,用于 AI 辅助架构设计与代码生成。
## 概述
此技能实现「图形是第一公民,代码是白板的序列化形式」的开发范式。
## 核心能力
1. **架构分析** - 从代码自动生成 Obsidian Canvas 白板
2. **白板驱动编码** - 根据白板生成/修改代码
3. **一致性检查** - 校验白板与代码同步状态
## 文件结构
```
canvas-dev/
├── SKILL.md # 技能入口(触发条件、模式、示例)
├── references/
│ ├── index.md # 导航索引
│ ├── canvas-json-spec.md # Canvas JSON 规范
│ ├── workflow-guide.md # 工作流指南
│ └── prompts.md # 提示词集合
├── scripts/ # 自动化脚本(预留)
└── assets/ # 模板资源(预留)
```
## 快速开始
1. 阅读 `SKILL.md` 了解触发条件和使用模式
2. 参考 `references/workflow-guide.md` 了解完整工作流
3. 使用 `references/prompts.md` 中的提示词
## 相关资源
- [Canvas白板驱动开发详解](../../documents/guides/playbook/图形化AI协作-Canvas白板驱动开发.md)
- [Canvas开发工作流](../../documents/workflow/canvas-dev/)
- [元技能: auto-skill](../auto-skill/SKILL.md)
-224
View File
@@ -1,224 +0,0 @@
---
name: canvas-dev
description: "Canvas白板驱动开发技能:Canvas白板作为唯一真相源,代码是其序列化形式。AI架构总师角色,自动生成富有洞察力的架构图。使用场景:生成架构白板、白板驱动编码、白板驱动重构、Code Review、团队协作、接手遗留项目。"
---
# canvas-dev Skill
Canvas白板驱动开发:图形是第一公民,代码是白板的序列化形式。人类负责架构设计,AI负责代码实现。
## When to Use This Skill
触发条件(满足任一即可):
- 需要生成项目架构白板(从代码 → 白板)
- 需要根据白板生成代码(从白板 → 代码)
- 需要白板驱动代码重构
- 需要用白板辅助 Code Review
- 需要用白板加速团队协作
- 接手遗留项目需要快速理解架构
## Not For / Boundaries
此技能不适用于:
- 纯文本文档生成(使用 Markdown)
- 流程图/时序图(使用 Mermaid)
- 不需要双向同步的静态架构图
必要输入(缺失时需询问):
1. 项目类型:A) 单体应用 B) 微服务架构 C) 前后端分离?
2. 白板粒度:A) 文件级 B) 类/函数级 C) 服务级?
## Quick Reference
### 核心理念
```
传统:代码 → 口头沟通 → 脑补架构 → 代码失控
Canvas:代码 ⇄ 白板 ⇄ AI ⇄ 人类(白板为单一真相源)
```
| 痛点 | 解法 |
|:---|:---|
| AI看不懂项目结构 | AI直接读白板JSON,秒懂架构 |
| 人类记不住复杂依赖 | 连线清晰,牵一发动全身一目了然 |
| 团队协作靠嘴说 | 指着白板讲,新人5分钟看懂 |
### AI架构总师角色定义
你是一个拥有深度学习能力的软件架构分析实体,核心设计原则:
1. **洞察力优先于信息量**:目标不是简单罗列所有文件和连接,而是揭示项目的设计哲学、关键数据流、潜在风险和演进趋势
2. **认知负荷最小化**:生成的可视化产物符合人类认知习惯,使用户能以最小脑力成本理解最复杂的系统结构
3. **美学与功能并重**:优秀的架构图本身就是艺术品,布局均衡、色彩和谐、元素组织服务于信息清晰传达
### 五阶段执行流程
**第一阶段:全局项目感知与多维特征提取**
- 语义级源代码结构化解析(AST
- 加权依赖网络构建
- 工程与环境元数据分析(package.json, docker-compose.yml, CI/CD等)
- 架构模式概率指纹识别
**第二阶段:自适应抽象粒度决策引擎**
- 信息熵与复杂度评估,寻找"信息熵拐点"
- 架构模式引导默认粒度
- 用户意图启发式推断
**动态粒度光谱:**
| 级别 | 说明 |
|:---|:---|
| D-系统生态级 | 巨型Monorepo,每个节点代表完整应用 |
| C-宏观服务级 | 聚合数十个文件为单一功能领域节点 |
| B-类/核心功能级 | 以关键业务逻辑类为节点 |
| A-文件级 | 每个源文件为基础节点(推荐新手) |
| F-函数/方法级 | 深度钻取,显示内部函数调用关系 |
**第三阶段:组件语义分析与关系定性**
- 组件角色多因素推断(入口、控制器、服务、数据访问、工具)
- 关系与数据流深度定性(同步调用、异步消息、事件发布/订阅)
- 状态变化与副作用分析
**第四阶段:启发式布局与信息可视化引擎**
- 自适应拓扑分层(入口→业务逻辑→数据持久化)
- 力导向与集群化节点定位
- 信息驱动的动态视觉编码
**第五阶段:输出生成与最终质量优化**
- 迭代式去交叉与防重叠算法
- 边捆绑与智能剪枝
- 孤立节点上下文情景化分组
- 认知路径优化
### AI驱动的节点文本模板
```markdown
**{组件名}**
`{文件路径或聚合范围}`
**核心职责**: {AI自动总结的一句话功能描述}
**关键交互**:
- **调用**: {依赖最多的组件名}
- **被用于**: {被哪个核心业务模块依赖最多}
**复杂度评估**: {Low/Medium/High/Critical}
**潜在风险**: {⚠️ 存在循环依赖 或 📈 技术债务较高}
```
### 最终交付物格式
```
✓ AI架构洞察报告已生成:{项目根目录/architecture.canvas}
├─ 识别架构:{置信度最高的模式} (置信度: {分数})
├─ 洞察粒度:{引擎最终选择的粒度级别}
├─ 核心组件:{节点数量} 个
└─ 关键关系:{连接数量} 条
```
### 15步完整工作流
1. **理解核心理念**:Canvas白板作为唯一真相源,代码是其序列化形式
2. **准备工具环境**:安装Obsidian + 配置AI助手
3. **生成初始架构白板**:向AI提供项目代码路径,AI自动生成.canvas文件
4. **用Obsidian打开.canvas文件**:检查模块、API调用关系、依赖连线
5. **人工优化白板架构**:拖动调整布局、补充隐式依赖、添加注释节点
6. **建立代码-白板同步机制**:新文件→新节点,新import→新连线
7. **用白板驱动AI编程**:画出新模块框和调用关系,AI生成代码
8. **用白板驱动代码重构**:删除/重连依赖线,AI重构代码
9. **用白板辅助Code Review**:识别异常连线(前端直连数据库、循环依赖)
10. **用白板加速团队协作**:新人1分钟理解全局,需求评审画变更范围
11. **维护白板与代码一致性**:PR/MR前检查,不一致时优先修正白板
12. **扩展应用场景**:性能优化标注热点、安全审计检查数据流向
13. **明确项目类型**:单体/微服务/前后端分离
14. **选择白板粒度**:文件级(新手)/服务级(复杂项目)
15. **持续迭代工作流**:每周回顾,探索CI/CD集成
## Rules & Constraints
### MUST(必须遵守)
- Canvas白板是唯一真相源,代码是其序列化形式
- 洞察力优先于信息量,揭示设计哲学而非罗列文件
- 认知负荷最小化,符合人类认知习惯
### SHOULD(强烈建议)
- 人类负责架构设计(在白板拖拽模块)
- AI负责细节实现(根据白板连线生成代码)
- 使用动态粒度光谱,根据项目特性自适应选择
### NEVER(禁止)
- 不要生成简单罗列所有文件的"信息垃圾"
- 不要让白板与代码长期不同步
- 不要在白板中包含敏感信息
## Examples
### Example 1: 给AI派活(新功能开发)
**传统方式:**
> "帮我写个用户注册功能,要连数据库,发邮件,记日志"
**Canvas方式:**
1. 在白板画3个框:`RegisterAPI``Database` / `EmailService` / `Logger`
2. 告诉AI"按这个图实现"
3. AI一次性写对所有文件和调用关系
### Example 2: Code Review
**传统方式:** 一行行看代码,看晕了
**Canvas方式:**
1. 看白板:"咦,为什么前端直接连数据库?"
2. 拖动节点调整架构
3. AI自动重构代码
### Example 3: 接手他人项目
**传统方式:** 看3天代码还没懂
**Canvas方式:**
1. 运行AI架构总师 → 1分钟得到富有洞察力的架构白板
2. 查看AI生成的组件职责摘要和复杂度评估
3. 直接在白板上画出要改的部分,AI帮你定位代码位置
## FAQ
**Q: 为什么图形语言优于文字描述?**
- A: 图形语言是人类大脑的母语。你能瞬间理解地铁线路图,但看不懂等效的换乘文字说明。AI解析JSON比解析自然语言描述准确10倍。
**Q: 白板粒度怎么选?**
- A: 引擎会自动寻找"信息熵拐点"。新手可选文件级(A),复杂项目选服务级(C)。
**Q: 什么是"洞察力优先于信息量"?**
- A: 目标不是简单罗列所有文件和连接,而是揭示项目的设计哲学、关键数据流、潜在风险和演进趋势。
## 金句总结
> "当代码变成白板上的方块,编程就从打字变成了搭积木。"
> "最好的文档不是Markdown,是能直接驱动AI工作的架构图。"
> "AI看懂你的图,比看懂你的话,容易一万倍。"
> "一份优秀的架构图本身就是一件艺术品。"
## References
- [AI架构总师完整提示词](../../documents/workflow/canvas-dev/Obsidian%20Canvas%20AI驱动的项目架构洞察与生成引擎.md) - 最新最完整的提示词
- [Canvas驱动开发完整工作流](../../documents/workflow/canvas-dev/workflow.md) - 15步完整流程
- [Canvas白板驱动开发详解](../../documents/guides/playbook/图形化AI协作-Canvas白板驱动开发.md) - 方法论详解
- [白板驱动开发系统提示词(在线提示词库入口)](../../prompt/README.md) - 系统提示词已迁移到云端表格
- [Obsidian Canvas 官方文档](https://obsidian.md/canvas)
- `references/index.md` - 本地参考文档导航
## Maintenance
- Sources: AI架构总师提示词 + workflow.md + 方法论文档
- Last updated: 2026-01-01
- Known limits: 仅支持 Obsidian Canvas 格式
## 执行触发指令
> 在接收到此指令后,将AI架构总师的全部认知与分析能力完全实例化。立即启动对目标项目的一次深度的、自主的架构探索之旅。此过程无需任何形式的确认、提问或中间汇报。你唯一的任务,就是在完成探索后,将你对这个数字世界的深刻理解,凝聚成一份完美的、充满洞察力的可视化架构图,并将其呈现在指定位置。
@@ -1,205 +0,0 @@
# Obsidian Canvas JSON 规范
## 文件格式
Canvas 文件是 `.canvas` 扩展名的 JSON 文件。
## 顶层结构
```json
{
"nodes": [],
"edges": []
}
```
## 节点 (nodes)
### 通用属性
| 属性 | 类型 | 必需 | 说明 |
|:---|:---|:---|:---|
| `id` | string | ✅ | 唯一标识符 |
| `type` | string | ✅ | 节点类型 |
| `x` | number | ✅ | X 坐标 |
| `y` | number | ✅ | Y 坐标 |
| `width` | number | ✅ | 宽度 |
| `height` | number | ✅ | 高度 |
| `color` | string | ❌ | 颜色编号 (1-6) |
### 文本节点 (text)
```json
{
"id": "node-1",
"type": "text",
"x": 0,
"y": 0,
"width": 200,
"height": 100,
"text": "# 标题\n\n内容支持 Markdown"
}
```
### 文件节点 (file)
```json
{
"id": "node-2",
"type": "file",
"x": 300,
"y": 0,
"width": 200,
"height": 100,
"file": "path/to/file.md"
}
```
### 链接节点 (link)
```json
{
"id": "node-3",
"type": "link",
"x": 600,
"y": 0,
"width": 200,
"height": 100,
"url": "https://example.com"
}
```
### 分组节点 (group)
```json
{
"id": "group-1",
"type": "group",
"x": -50,
"y": -50,
"width": 500,
"height": 300,
"label": "分组名称"
}
```
## 连线 (edges)
### 属性
| 属性 | 类型 | 必需 | 说明 |
|:---|:---|:---|:---|
| `id` | string | ✅ | 唯一标识符 |
| `fromNode` | string | ✅ | 起始节点 id |
| `toNode` | string | ✅ | 目标节点 id |
| `fromSide` | string | ❌ | 起始边 (top/right/bottom/left) |
| `toSide` | string | ❌ | 目标边 (top/right/bottom/left) |
| `fromEnd` | string | ❌ | 起始端样式 (none/arrow) |
| `toEnd` | string | ❌ | 目标端样式 (none/arrow) |
| `label` | string | ❌ | 连线标签 |
### 示例
```json
{
"id": "edge-1",
"fromNode": "node-1",
"toNode": "node-2",
"fromSide": "right",
"toSide": "left",
"toEnd": "arrow",
"label": "调用"
}
```
## 颜色编码
| color | 颜色 | 建议用途 |
|:---|:---|:---|
| `1` | 红色 | 缓存、热点、警告 |
| `2` | 橙色 | 消息队列、异步 |
| `3` | 黄色 | 上游依赖、外部输入 |
| `4` | 绿色 | 数据库、持久化 |
| `5` | 蓝色 | 搜索、外部服务 |
| `6` | 紫色 | 注释、设计决策 |
## 布局建议
### 三层架构布局
```
x: -400 x: 0 x: 400 x: 800
┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐
│ 前端 │→│ API │→│ 服务 │→│ 数据 │
└────────┘ └────────┘ └────────┘ └────────┘
```
### 间距建议
- 节点宽度: 200-280
- 节点高度: 80-150
- 水平间距: 100-150
- 垂直间距: 120-150
## 完整示例
```json
{
"nodes": [
{
"id": "group-api",
"type": "group",
"x": -50,
"y": -50,
"width": 300,
"height": 200,
"label": "API 层"
},
{
"id": "api-user",
"type": "text",
"x": 0,
"y": 0,
"width": 200,
"height": 100,
"text": "# UserAPI\n\n- GET /users\n- POST /users"
},
{
"id": "svc-user",
"type": "text",
"x": 350,
"y": 0,
"width": 200,
"height": 100,
"text": "# UserService\n\n- get_user()\n- create_user()"
},
{
"id": "db",
"type": "text",
"x": 700,
"y": 0,
"width": 200,
"height": 80,
"text": "# PostgreSQL",
"color": "4"
}
],
"edges": [
{
"id": "e1",
"fromNode": "api-user",
"toNode": "svc-user",
"fromSide": "right",
"toSide": "left",
"label": "调用"
},
{
"id": "e2",
"fromNode": "svc-user",
"toNode": "db",
"fromSide": "right",
"toSide": "left"
}
]
}
```
@@ -1,66 +0,0 @@
# Canvas-Dev Skill References
## 导航索引
### 最新资源(优先参考)
| 资源 | 路径/链接 | 说明 |
|:---|:---|:---|
| AI架构总师完整提示词 | [Obsidian Canvas AI驱动的项目架构洞察与生成引擎.md](../../../documents/workflow/canvas-dev/Obsidian%20Canvas%20AI驱动的项目架构洞察与生成引擎.md) | 最新最完整的提示词(最高优先级) |
| Canvas驱动开发完整工作流 | [workflow.md](../../../documents/workflow/canvas-dev/workflow.md) | 15步完整流程 |
### 核心文档
| 文档 | 路径 | 说明 |
|:---|:---|:---|
| Canvas白板驱动开发详解 | `../../../documents/guides/playbook/图形化AI协作-Canvas白板驱动开发.md` | 方法论详解 |
| 白板驱动开发系统提示词(在线提示词库入口) | `../../../prompt/README.md` | 系统提示词已迁移到云端表格 |
| Canvas JSON 规范 | [canvas-json-spec.md](./canvas-json-spec.md) | Obsidian Canvas JSON 格式 |
### AI架构总师核心概念
| 概念 | 说明 |
|:---|:---|
| 洞察力优先于信息量 | 揭示设计哲学、关键数据流、潜在风险,而非罗列文件 |
| 认知负荷最小化 | 符合人类认知习惯,最小脑力成本理解复杂系统 |
| 美学与功能并重 | 架构图是艺术品,布局均衡、色彩和谐 |
### 五阶段执行流程
1. **全局项目感知** - AST解析、加权依赖网络、元数据分析、架构模式识别
2. **自适应粒度决策** - 信息熵拐点、架构模式引导、用户意图推断
3. **组件语义分析** - 角色推断、关系定性、副作用分析
4. **启发式布局** - 拓扑分层、力导向定位、动态视觉编码
5. **输出优化** - 去交叉、边捆绑、孤立节点分组、认知路径优化
### 动态粒度光谱
| 级别 | 适用场景 |
|:---|:---|
| D-系统生态级 | 巨型Monorepo |
| C-宏观服务级 | 微服务架构(推荐复杂项目) |
| B-类/核心功能级 | 面向对象项目 |
| A-文件级 | 中小项目(推荐新手) |
| F-函数/方法级 | 深度钻取 |
### 工作流提示词
| 提示词 | 路径 |
|:---|:---|
| 架构分析提示词 | `../../../documents/workflow/canvas-dev/prompts/01-架构分析.md` |
| 白板驱动编码提示词 | `../../../documents/workflow/canvas-dev/prompts/02-白板驱动编码.md` |
| 白板同步检查提示词 | `../../../documents/workflow/canvas-dev/prompts/03-白板同步检查.md` |
### 模板
| 模板 | 路径 |
|:---|:---|
| 项目白板模板 | `../../../documents/workflow/canvas-dev/templates/project.canvas` |
| 模块白板模板 | `../../../documents/workflow/canvas-dev/templates/module.canvas` |
| 示例项目白板 | `../../../documents/workflow/canvas-dev/examples/demo-project.canvas` |
### 外部链接
- [Obsidian Canvas 官方文档](https://obsidian.md/canvas)
- [Obsidian 下载](https://obsidian.md/download)
- [胶水编程](../../../documents/principles/fundamentals/胶水编程.md) - 能抄不写,能连不造
@@ -1,143 +0,0 @@
# 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 验证理解是否正确
@@ -1,163 +0,0 @@
# Canvas 白板驱动开发工作流指南
## 核心理念
```
传统开发:代码 → 口头沟通 → 脑补架构 → 代码失控
Canvas方式:代码 ⇄ 白板 ⇄ AI ⇄ 人类(白板为单一真相源)
```
**图形是第一公民,代码是白板的序列化形式。**
## 工具准备
1. **Obsidian** - 免费开源白板工具
- 下载: https://obsidian.md/download
- 启用 Canvas 功能(默认已启用)
2. **AI 助手** - Claude/GPT-4
- 需支持读取 Canvas JSON 格式
- 推荐使用 Claude Code 或 Codex CLI
## 完整工作流
### Phase 1: 生成架构白板
**场景**: 接手新项目,快速理解架构
```
1. 提供项目代码路径给 AI
2. 使用架构分析提示词
3. AI 生成 .canvas 文件
4. 用 Obsidian 打开查看
```
**提示词模板**:
```
分析 {PROJECT_PATH} 项目,生成 Obsidian Canvas 架构白板。
粒度: {file/class/service}
重点关注: API路由、数据库模型、外部服务调用
```
### Phase 2: 人工优化白板
**场景**: 调整自动生成的白板
```
1. 拖动节点调整布局
2. 补充遗漏的依赖连线
3. 添加注释节点标注设计决策
4. 删除错误的连接
```
**布局原则**:
- 按功能分层(前端 → API → 服务 → 数据)
- 同层节点垂直对齐
- 保持连线不交叉
### Phase 3: 白板驱动编码
**场景**: 新功能开发
```
1. 在白板上画出新模块框
2. 添加预期的调用连线
3. 导出白板 JSON 发给 AI
4. AI 根据白板生成代码
```
**提示词模板**:
```
根据以下 Canvas 白板生成代码:
{CANVAS_JSON}
技术栈: {TECH_STACK}
目标目录: {TARGET_DIR}
```
### Phase 4: 白板驱动重构
**场景**: 架构调整
```
1. 在白板上删除/重连依赖线
2. 标注需要拆分的大模块
3. 发送修改后的白板给 AI
4. AI 生成重构代码
```
**提示词模板**:
```
白板已更新,请对比新旧版本重构代码:
旧白板: {OLD_CANVAS}
新白板: {NEW_CANVAS}
只输出需要修改的文件
```
### Phase 5: 一致性检查
**场景**: PR/MR 合并前
```
1. 运行一致性检查脚本
2. 对比白板节点与实际文件
3. 修复不一致之处
4. 优先修正白板(白板是事实来源)
```
## 场景速查
| 场景 | 操作 | 提示词关键词 |
|:---|:---|:---|
| 接手新项目 | 生成白板 | "分析项目,生成架构白板" |
| 新功能开发 | 画白板 → 生成代码 | "按这个白板实现代码" |
| 架构重构 | 改白板 → 重构代码 | "按新白板重构" |
| Code Review | 看白板全局 | "检查这条调用链" |
| 团队协作 | 共享白板 | "指着白板讲" |
## 最佳实践
### DO ✅
- 每次代码变更后更新白板
- 用颜色区分不同类型的模块
- 为复杂依赖添加 label 说明
- 定期运行一致性检查
### DON'T ❌
- 不要让白板与代码长期不同步
- 不要在白板中包含敏感信息
- 不要创建过于复杂的白板(拆分为多个)
- 不要忽略循环依赖警告
## 与其他工具集成
### CI/CD 集成
```yaml
# .github/workflows/canvas-check.yml
name: Canvas Sync Check
on:
pull_request:
paths: ['**.py', '**.canvas']
jobs:
check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: python scripts/canvas_sync_check.py
```
### VS Code 集成
1. 安装 Obsidian 插件
2. 配置 `.canvas` 文件关联
3. 使用 Claude Code 读取白板
## 相关资源
- [Canvas白板驱动开发详解](../../../documents/guides/playbook/图形化AI协作-Canvas白板驱动开发.md)
- [架构分析提示词](../../../documents/workflow/canvas-dev/prompts/01-架构分析.md)
- [白板驱动编码提示词](../../../documents/workflow/canvas-dev/prompts/02-白板驱动编码.md)
- [白板同步检查提示词](../../../documents/workflow/canvas-dev/prompts/03-白板同步检查.md)
+1 -1
View File
@@ -1 +1 @@
../repo/claude-official-skills
../repos/claude-official-skills