开源 AI 低代码平台 VTJ.PRO 最近连推两个版本——核心引擎 v0.17.0 和在线开发平台 v2.4.0。这波更新不是修修补补,而是把团队协作和 AI 资产管理的能力往前推了一大截。如果你在用低代码做内部工具、运营后台或者数据看板,这几个新功能直接关系到你团队的交付节奏。
多人协作实时同步:不再是"你改完我再改"
低代码平台最大的痛点之一就是协作。传统方案要么靠锁定编辑区域,要么靠手动合并,效率极低。VTJ.PRO v2.4.0 引入了多人实时同步机制——多人同时编辑同一个应用页面时,组件树、属性面板的变更会实时推送到所有在线成员的画布上。
这意味着:
- 不再需要"谁先保存谁赢":两个开发者同时调整同一个页面的不同组件,改动互不冲突,实时可见。
- 操作可追溯:每次变更都有操作记录,回溯问题时不用靠口头沟通。
- 冲突有兜底:当同一属性确实被多人同时修改,引擎会按时间戳自动合并或提示选择,不会静默覆盖。
对于 3-5 人的前端小组来说,这个能力把"排队改页面"的等待时间压缩到接近零。
应用克隆:一个模板快速铺开多个业务场景
v2.4.0 新增了应用级克隆功能。你可以把一个已经调好的完整应用(包括页面、组件、数据源配置、API 映射)一键克隆为新应用,然后只改差异部分。
典型场景:
- 集团下有 5 个子公司,每个要一个独立的运营后台,布局和流程 80% 相同,只是数据源和品牌色不同。
- 做完一个审批流应用后,要快速复制出请假、报销、采购三个变体。
克隆不是简单的"复制粘贴文件夹"。引擎会重新生成组件 ID、解绑数据源映射,确保克隆出来的应用是独立可部署的,不会和原应用共享运行时状态。
下面是一个基于 VTJ.PRO 低代码引擎克隆应用的实践示例。假设你已经通过平台导出了一个应用配置 JSON,可以通过引擎 API 批量克隆:
// 假设已安装 @vtj/core v0.17.0+
import { VtjEngine, cloneApp } from '@vtj/core';
// 初始化引擎实例
const engine = new VtjEngine({
projectId: 'ops-dashboard',
// 数据源配置——按实际环境替换
datasource: {
baseUrl: 'https://api.example.com',
headers: { Authorization: 'Bearer YOUR_TOKEN' }
}
});
// 从平台导出的原始应用配置(简化示例)
const sourceAppConfig = {
id: 'app-approval-flow',
name: '审批流管理',
pages: [
{ id: 'page-submit', name: '提交申请', components: [] },
{ id: 'page-review', name: '审批详情', components: [] }
],
datasources: [
{ id: 'ds-approval-api', name: '审批接口', url: '/approval' }
]
};
// 克隆为3个独立业务应用
const variants = [
{ name: '请假审批', datasourceOverrides: { 'ds-approval-api': { url: '/leave' } } },
{ name: '报销审批', datasourceOverrides: { 'ds-approval-api': { url: '/expense' } } },
{ name: '采购审批', datasourceOverrides: { 'ds-approval-api': { url: '/purchase' } } }
];
const clonedApps = variants.map((variant) =>
cloneApp(sourceAppConfig, {
name: variant.name,
// 克隆时覆盖数据源映射,其余结构保持一致
datasourceOverrides: variant.datasourceOverrides
})
);
// 批量注册到引擎并部署
clonedApps.forEach((app) => {
engine.registerApp(app);
console.log(`已注册克隆应用: ${app.name} (id: ${app.id})`);
});
运行前需要替换 YOUR_TOKEN 和 baseUrl。cloneApp 会自动为新应用生成独立 ID,避免与原应用冲突。
AI 多文件批量识图:从截图到页面组件,一次搞定
这次更新中最值得关注的是 AI 多文件批量识图能力。此前,VTJ.PRO 已经支持单图识别——上传一张 UI 截图,AI 自动生成对应的低代码页面组件树。v2.4.0 把这个能力扩展到多文件批量模式。
实际操作流程:
- 把一个完整业务系统的多张页面截图(比如登录页、列表页、详情页、表单页)一次性上传。
- AI 批量分析每张截图的布局结构、交互元素、数据字段。
- 一次性生成整个应用的页面集合,组件间的关系和导航逻辑也会被自动串联。
这比逐张识别再手动拼装效率高出一个量级,尤其适合从旧系统迁移到低代码平台的场景——你只需要把旧系统的关键页面截图打包上传,就能快速得到一个可二次调整的低代码骨架。
下面是一个调用 VTJ.PRO AI 识图 API 批量生成页面配置的示例:
# 批量识图 API 调用示例——需要先在 VTJ.PRO 平台获取 API Key
# 将多张截图放入同一目录
mkdir -p ./ui-screenshots
# 假设你已经放了 login.png、list.png、detail.png、form.png
# 调用批量识图接口
curl -X POST "https://api.vtj.pro/v2/ai/batch-recognize" \
-H "Authorization: Bearer VTJ_API_KEY" \
-H "Content-Type: multipart/form-data" \
-F "files=@./ui-screenshots/login.png" \
-F "files=@./ui-screenshots/list.png" \
-F "files=@./ui-screenshots/detail.png" \
-F "files=@./ui-screenshots/form.png" \
-F "projectName=legacy-system-migration" \
-F "framework=vue3" \
-o ./generated-app-config.json
# 查看生成结果
cat ./generated-app-config.json | python3 -m json.tool | head -50
返回的 generated-app-config.json 可以直接导入 VTJ.PRO 平台进行二次编辑。framework 参数目前支持 vue3,按实际技术栈选择。截图质量直接影响识别准确度——建议使用 1080p 以上、无遮挡的完整页面截图。
引擎 v0.17.0 的底层变化
在线平台的升级离不开核心引擎的支撑。v0.17.0 主要做了几件事:
- 协作状态同步协议优化:底层通信从轮询改为增量推送,多人编辑时的网络开销显著降低。
- 组件树 diff 算法改进:克隆和实时同步都依赖组件树的快速比对,新算法在大页面(200+ 组件节点)上的 diff 速度提升明显。
- AI 识图模型接口标准化:批量识图能力在引擎层统一了输入输出协议,后续接入不同视觉模型只需要换适配器,不影响上层调用。
这些底层改动让 v2.4.0 的协作和识图功能有了性能保障,不是"能用"而是"多人同时用也不卡"。
上手建议与注意事项
如果你准备在团队中引入这波新功能,有几件事值得提前想清楚:
协作方面
- 先在 2-3 人的小项目上试跑实时同步,确认团队操作习惯能适应"即时可见"的模式。有些人更习惯"改完再通知",实时同步反而会增加心理负担。
- 开启操作记录审计,尤其是对生产环境的应用配置变更。
克隆方面
- 克隆前确认原应用的数据源映射是参数化的(用变量而非硬编码 URL),否则克隆后每个变体都要手动改接口地址,反而更慢。
- 克隆产生的应用要立即做一次端到端验证,确保 ID 解绑没有遗漏。
AI 识图方面
- 批量识图生成的是"骨架",不是成品。预期准确率在 70%-85% 之间,后续的手动调整不可省略。
- 截图来源如果是内网系统,注意数据脱敏——识图过程会提取页面上的文本和字段名,敏感信息不要出现在截图中。
- 识图结果和实际业务逻辑的映射(比如哪个按钮触发哪个 API)仍需人工确认,AI 目前只处理视觉层,不处理交互语义。
升级路径
- 核心引擎从 v0.16.x 升级到 v0.17.0 需要更新协作协议版本,旧版本的实时同步客户端无法连接新版本服务端,建议统一升级。
- 在线平台 v2.4.0 的克隆和识图功能需要引擎 v0.17.0 配合,不要只升级平台不升级引擎。
VTJ.PRO 这波更新的核心思路很清晰:低代码不能只解决"一个人画页面快"的问题,还得解决"一群人一起画、画完能复用、从旧系统迁移能加速"的问题。如果你的团队正在内部工具开发上反复投入人力,这几个功能值得花一个下午认真跑一遍。