Vibe编码新搭档!Scryer用C4架构图让AI真正理解你的设计意图!
这是Scryer,一个用来设计软件架构模型,并且可以和Claude Code或者Codex这类AI助手配合使用的工具。
背景
做这个东西的直觉是,我现在更喜欢“vibe编码”(指快速尝试和迭代的编码方式),而不是去阅读代码,但如果我不打算读代码,那我至少得想办法理解AI在干啥,并保持一致性——那为什么不试试模型驱动开发呢?
MDE/MDD(模型驱动工程/开发)其实已经“死”了很久了(对大多数开发者来说),虽然以前大家都在UML上花了很多力气。它太复杂了,而且试图取代代码,这就走错了方向。
现在AI助手基本实现了MDD里“从规范到代码”的那部分(至少大部分是),而且因为大语言模型的特性,我们可以降低UML那种复杂度,改用类似C4建模的方式来创建一种开发者和AI都能理解的东西。
我还加了一些现在“Vibe编码”里的新方法,比如契约声明(总是/询问/从不)、架构决策记录,还有把任务一步步拆解开来,每次引导AI按照依赖顺序去实现。
模型驱动开发要复兴了吗?我也不知道,但我自己正在用,也在不断调整,直到它真正成为我工作流程里的核心部分。
这个东西还非常实验性,也很早期——我甚至不确定它在Windows或者macOS上能不能跑起来,如果有人能告诉我一下,那就太感谢了:)
项目介绍
scryer 是一个可视化架构建模工具,核心目的是让AI助手能基于视觉模型一起协作、理解代码并生成代码。它提供了一个可以拖拽的交互式编辑器来画架构图,并内置了一个MCP服务器,让AI可以读写和执行这些模型。
核心理念
* 让AI和架构保持同步:用自然语言开发容易丢失结构信息。有了架构图,AI可以直接用精确的模型作为参考,减少误解。
* 模型驱动开发:围绕C4架构模型(包括系统、容器、组件、行为)来构建视图,让开发者和AI助手能从整体到细节一起协同。
✨ 主要功能
1. C4可视化编辑器
* 通过拖拽创建架构图,涵盖人员、系统、容器、组件、行为等不同层级。
2. 行为流与数据模型
* 把用户流程、数据交换和部署过程用图形的方式画出来。
3. 契约与约束系统
* 支持给模型里的节点定义规则(比如某类组件必须满足特定条件),作为AI助手在实现时的约束。
4. 与代码连接
* 架构里的节点可以和源代码文件建立关联,方便追踪实现情况,还能自动生成代码任务。
5. 面向AI助手的MCP服务器
* 内置了MCP(模型-代码协议)服务器,AI助手可以实时读取、修改模型,并通过任务分配机制一步步生成代码。
6. AI顾问(可选功能)
* 可以集成大模型驱动的助手,对架构图给出结构性的改进建议。
技术栈
* 前端:React + TypeScript + ReactFlow(用来做画布可视化)
* 后端:Rust(负责核心逻辑和MCP支持)
* 桌面框架:Tauri(用来构建跨平台的桌面应用)
使用场景
✔ 架构驱动开发
✔ 和AI一起协同生成结构化的代码
✔ 从高层视图自动生成实现任务
✔ 把业务流程、系统边界和代码紧密连接起来
快速开始
1. 下载或克隆仓库
2. 构建MCP服务器
3. 在可视化界面里创建架构
4. 让AI助手读取模型,然后一步步实现代码
总之:
Scryer是一个实验性的可视化架构建模工具,通过C4图让AI和开发者共享设计意图。它内置MCP服务器支持AI读写模型,结合契约、ADR和任务分解,实现模型驱动的AI协作开发。