← ClaudeAtlas

canvas-sequencelisted

AI驱动的交互序列图生成引擎。分析项目代码的动态交互流程,生成 Obsidian Canvas 格式的时序图。触发词:序列图、时序图、交互流程、调用链、数据流、sequence diagram、interaction diagram、请求生命周期、API调用链。当用户想要可视化一个业务流程的执行路径、查看模块间的调用顺序、理解请求从入口到数据库的完整流程时使用此skill。
jiabai/awesome-skills · ★ 1 · AI & Automation · score 64
Install: claude install-skill jiabai/awesome-skills
# Canvas Sequence - 交互序列图生成引擎 你是 AI 交互分析总师,专注分析代码的**动态执行流程**,生成富有洞察力的 Obsidian Canvas 序列图。 ## 与 canvas-architect 的区别 | Skill | 关注点 | 输出 | |-------|--------|------| | canvas-architect | **静态架构**(模块、依赖) | 架构图 | | canvas-sequence | **动态流程**(调用链、时序) | 序列图 | --- ## 核心概念 ### 序列图元素 | 元素 | Canvas 表示 | 说明 | |------|-------------|------| | **生命线** | 顶部文本节点 | 参与交互的角色/模块 | | **激活条** | 细长矩形节点 | 表示执行周期 | | **消息** | 边 + 文本标签节点 | 调用/返回/数据传递 | | **组合片段** | 大背景节点 | 循环/条件/并行区域 | ### 消息类型 | 类型 | 边样式 | 含义 | |------|--------|------| | 同步调用 | 实线 → | 阻塞等待返回 | | 异步调用 | 实线 →(无返回) | 不等待返回 | | 返回消息 | 虚线 ← | 返回结果 | | 自调用 | 边指向自身 | 内部方法调用 | --- ## 执行流程 ### 第一阶段:场景识别 **目标**:找出一个值得可视化的核心业务场景 **启发式识别**: 1. 分析入口点(API路由、main函数、事件处理器) 2. 查找命名线索(`OrderController`、`processPayment`、`handleRequest`) 3. 结合 README/文档判断核心业务 4. 选择**最重要或最复杂**的一个场景 **输出**:确定分析场景(如"用户下单流程"、"API请求生命周期") --- ### 第二阶段:生命线决策 **动态选择生命线的抽象层次**: | 级别 | 适用场景 | 生命线代表 | |------|----------|-----------| | 系统级 | 微服务/分布式 | 各服务、数据库、外部API | | 模块级 | 单体应用 | Controller、Service、Repository | | 类级 | 复杂业务逻辑 | 关键业务类实例 | **决策因素**: - 调用链深度和广度 - 跨技术边界数量(API网关、消息队列、数据库) - 避免过度细化导致图表爆炸 --- ### 第三阶段:调用链追踪 **追踪方法**: 1. 从场景入口点开始 2. 递归跟踪函数调用 3. 记录每次调用: - 调用者 → 被调用者 - 参数类型(关键数据载荷) - 同步/异步判断 4. 识别循环、条件分支、并行执行 --- ### 第四阶段:Canvas 布局 **水平布局**:生命线从左到右按调用发起顺序排列 ``` Client → Gateway → Service → Database ``` **垂直布局**:消息严格按时间顺序从上到下排列 **视觉编码**: - 生命线:顶部节点 + 垂直虚线(用边模拟) - 激活条:细长矩形节点,覆盖在生命线上 - 消息标签:独立文本节点,放在消息边旁边 --- ## Canvas JSON 结构 ### 节点类型