本文档沉淀 Forge 系统「从低代码平台转向 AI 中枢」的产品战略与技术选型决策,供后续路线规划、方案评审、对外阐述使用。
核心论断:Forge 距离「AI 中枢」比想象中近;应让低代码从「前台产品」退居为「后台能力工厂」,其产出的业务对象/元数据自动转化为 AI Agent 可调用的工具。技术上坚持 Spring/JVM 主干,不切 Python。
配套工程落地方案:
Forge-AI中枢落地架构与阶段路线图.md2026-07-10 已验证基线:Forge 保留 Spring AI
1.1.2作为统一接口层,并叠加 Spring AI Alibaba/Extensions1.1.2.3。当前只接入 DashScope 核心模型模块,通过显式adapter_code支持openai_compatible与dashscope_native;这是一项供应商适配前置能力,不代表 MCP、Nacos、Admin 或 Agent Framework 阶段已经完成。
Forge = AI Agent 的企业操作系统(Agent-Ready Enterprise Backend)。
一句话:低代码负责「生产能力」,AI 中枢负责「把能力开放给 Agent 消费」。
| 能力 | 现有实现 | 作为 AI 中枢的价值 |
|---|---|---|
| 动态 CRUD | DynamicCrudController (/ai/crud/{configKey}),支持 page/tree/getById/create/update/delete/import/export |
天然的「数据操作工具」,可直接包装成 MCP Tool |
| 业务对象元数据 | AiBusinessObject(objectCode/objectName/objectType/modelId/configKey/designStatus)+ LowcodeModelSchema |
AI 理解系统结构的知识来源,可自动生成工具 Schema |
| 流程能力 | FlowClient(startProcess/approve/reject/queryTodo)+ FlowWebhookNotifier(事件 Webhook 回调,带重试) |
「审批流工具」+ 事件通知出口 |
| 外部系统代理 | ExternalProxyService(鉴权/加密/响应转换) |
统一对接外部系统的能力 |
| API 配置中枢 | SysApiConfig(apiName/apiCode/reqMethod/urlPath/authFlag/encryptFlag/tenantFlag/limitFlag/sensitiveFields) |
做开放平台 + Tool 注册表的骨架 |
| 多供应商 LLM | AiClient/AiClientImpl(Spring AI ChatClient + 显式 Provider Adapter,支持 OpenAI Compatible 与 DashScope Native) |
统一 LLM 接入层,供应商扩展基础已就绪 |
结论:核心地基已具备,缺的是「标准化对外出口 + 安全治理 + 元数据目录服务」。
forge-plugin-mcp 模块;DynamicCrudService、FlowClient、消息服务包装成 MCP Tool;LowcodeModelSchema 自动生成工具的 JSON Schema,实现「建模即产出工具」;SysApiConfig);AiClient 已基于 Spring AI(ChatClient、OpenAiChatOptions)封装 7 家供应商 + 熔断 + 会话记忆;铁律:「工具(Tool)要离业务能力最近」。 MCP Server 放在 JVM 内 = 进程内直接方法调用;放到 Python = Python 需 HTTP 回调 Java,凭空多一跳网络 + 双栈运维 + 丢失鉴权/租户/事务上下文。这是选型的核心锚点。
spring-ai-starter-mcp-server-webmvc/webflux + client starter;AiClient 完全同源,零迁移、零学习曲线;1.1.2 与 Spring AI Alibaba/Extensions 1.1.2.3 组合,Alibaba 复用 Spring AI 的 ChatModel、ChatClient 和 Tool Calling 抽象,不是对 Spring AI 的替换;| 维度 | Spring AI 原生 | Spring AI Alibaba | AgentScope Java | Python(LangGraph) |
|---|---|---|---|---|
| 复用现有 Spring/AiClient | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐ |
| MCP Server 出口成熟度 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ |
| 进程内直调业务 Service | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐(需跨网络回调) |
| 分布式 MCP 治理/Admin | ⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐ |
| 重度多智能体/有状态编排 | ⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ |
| 团队上手 & 运维成本 | 最低 | 低 | 中 | 高(双栈) |
以 Spring 体系为主干,坚决不把主链路迁到 Python。 分三层演进,每一步复用前一步投资:
① 近期(阶段一 MCP 出口)→ Spring AI 原生 MCP starter
在 forge-plugin-mcp 里用 spring-ai-starter-mcp-server,进程内直调 DynamicCrudService、FlowClient、消息服务;与现有 AiClient 同源,最快出可演示 Demo。
② 中期(多租户 MCP 治理、能力目录、分布式)→ 在现有 Spring AI Alibaba 基线上按需启用 Nacos 治理 当前已完成的 DashScope Provider Adapter 不自动带入 Nacos;只有出现「分布式部署 + 按租户/Key 治理 + 可视化管理」的真实需求并通过阶段闸门后,才引入 Nacos MCP Registry 和 Admin,无需推翻 Spring AI 代码。
③ 未来(重度有状态 Agent / 多智能体流水线)→ JVM 内引入 AgentScope Java 无侵入嵌入 Spring Boot,用 Harness(记忆/沙箱/工作区)和 A2A 多智能体,依然不切 Python。
Python 仅作旁路微服务:某些能力只有 Python 生态有(特定 RAG/ML 库、算法团队独立迭代)时,让它作为独立 Agent,通过 MCP / A2A 接入主系统——是「接入」而非「主导」,主链路仍在 Java。
别切 Python。 业务能力、权限、租户、事务全在 JVM,MCP 出口就该贴着它们建。以 Spring AI 为统一接口,先用已落地的 Spring AI Alibaba Provider Adapter 扩展模型接入 → 近期建设 Spring AI MCP 出口 → 需要治理时再启用 Nacos/Admin → 未来要重度 Agent 时在 JVM 内引入 AgentScope Java。 这些能力都在 Spring/JVM 体系内分层演进,Python 仅作特定场景旁路,通过 MCP/A2A 接入。
| 资产 | 路径/标识 |
|---|---|
| 统一 LLM 封装 | forge-plugin-ai → AiClient / AiClientImpl |
| 动态 CRUD | forge-plugin-generator → DynamicCrudController (/ai/crud/{configKey}) |
| 业务对象元数据 | forge-plugin-generator → AiBusinessObject + LowcodeModelSchema |
| 流程客户端 | forge-flow-client → FlowClient |
| 流程事件回调 | forge-plugin-flow → FlowWebhookNotifier |
| 外部系统代理 | forge-plugin-external → ExternalProxyService |
| API 配置中枢 | forge-starter-api-config → SysApiConfig |