关于 Bpmn2ai
Bpmn2ai 定义了 APMN,一种用于人员、AI Agent 与自动化系统协作工作流的开放记法。它在兼容 BPMN 2.0 的基础上加入 Agent 专用任务、路由网关和可观测性元素。
主要功能
- 01兼容 BPMN 2.0 的工作流记法
- 02Agent、RAG 和 MCP 任务类型
- 03置信度与语义路由网关
- 04Agent 交接与记忆节点
- 05内置可观测性事件
适用场景
- 01建模人员与 Agent 协作的工作流
- 02按置信度或语义匹配路由任务
- 03在流程图中表示 MCP 工具调用
MCP 相关
项目介绍了 TwinTrack 参考编译器的 MCP 服务,兼容客户端可用它迁移 BPMN XML、编译 APMN 工作流、审查模型并查询规范。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
8收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| bpmn_xml | string | 是 | 原始 BPMN 2.0 XML 字符串 |
| api_key | string | 否 | 可选——如果未在 MCP 配置标头中设置,可在此传入 TwinTrack API 密钥。 先调用 authenticate() 获取密钥。 |
详细介绍
APMN — AI 流程模型与表示法
AI 时代的 BPMN。
BPMN 为世界提供了一套通用的业务流程语言。
APMN 为世界提供了一套通用的 Agentic 流程语言。
什么是 APMN?
AI 流程模型与表示法(APMN) 是一种开放、与供应商无关的可视化表示法标准,用于设计由人类、AI Agent 和自动化系统协作完成的工作流。
它是 BPMN 2.0 的超集——每个 APMN 文件都是有效的 BPMN 2.0 XML 文档。APMN 专属构造位于 apmn: 扩展命名空间中,这意味着现有 BPMN 工具无需修改即可打开 APMN 文件。
APMN 补充了 BPMN 从未为之设计的功能:
| BPMN 2.0 | APN |
|---|---|
| 仅支持确定性流程 | 概率路由(基于置信度) |
| 人工任务和服务调用 | Agent、RAG、MCP 工具、向量存储、记忆 |
| 二元网关(是/否) | 置信度门、推理门、语义门 |
| 没有可观测性概念 | 在表示法中内置可观测性事件 |
| 没有多 Agent 概念 | 将 Agent 移交作为一等流程元素 |
新节点类型
| 节点 | 类型 | 描述 |
|---|---|---|
🤖 agentTask | 任务 | 由大模型驱动的任务。属性:model、system_prompt、tools[]、temperature |
📚 ragTask | 任务 | 检索增强生成。属性:vector_store、top_k、similarity_threshold |
🔌 mcpToolTask | 任务 | 调用 MCP 服务工具。属性:server、tool_name、input_schema |
👤 humanInLoopTask | 任务 | Agent 提议,由人类审批。属性:confidence_threshold、timeout |
↗ agentHandoff | 任务 | 委派给专业 Agent。用于多 Agent 编排。 |
🧠 memoryTask | 任务 | 读取/写入 Agent 记忆(会话级或长期)。 |
⬡ vectorTask | 任务 | 将内容嵌入向量存储,或查询向量存储。 |
📡 observeEvent | 事件 | 向可观测性平台(LangFuse、Phoenix、OTEL)发送跟踪/跨度数据。 |
新门类型
| 门 | 描述 |
|---|---|
confidenceGate | 根据 Agent 置信度分数(0.0–1.0)路由。取代二元 exclusiveGateway。 |
reasoningGate | 通过解析大模型思维链输出进行路由。无需硬编码条件。 |
modelVersionGate | 在不同模型版本之间进行 A/B 或金丝雀路由。安全的模型升级模式。 |
semanticGate | 根据向量相似度进行路由——将输入与意图簇进行匹配。 |
mcpGate | 调用 MCP 工具并根据结果(通过/失败/审核)路由。 |
escapeGate | 自动升级处理。如果 Agent 失败、超时或置信度低于阈值,则路由给人类。 |
快速示例
# APMN v0.1 — Patient Preadmission
# xmlns:apmn="http://apmn.kshetra.studio/ns/1.0"
process:
id: patient_preadmission
name: Patient Preadmission
targets: [orkes, google_adk]
nodes:
- id: verify_insurance
type: agentTask
model: gemini-2.0-flash
tools: [mcp://insurance-api, mcp://medicare-lookup]
confidence_threshold: 0.95
- id: check_policy_docs
type: ragTask
vector_store: hospital_policy_kb
top_k: 5
- id: gw_confidence
type: confidenceGate
source: verify_insurance.confidence
routes:
high: ">= 0.95 → proceed"
medium: "0.7–0.95 → human_review"
low: "< 0.7 → escalate"
- id: compliance_check
type: mcpToolTask
server: mcp://compliance-checker.kshetra.studio
tool: check_hipaa_consent
- id: log_trace
type: observeEvent
platform: langfuse
trace_name: insurance_verification
参考实现
TwinTrack 是 APMN 的参考编译器。
APMN YAML / BPMN 2.0 + apmn: XML
↓
TwinTrack
/ \
Orkes JSON Google ADK Python (LangGraph, AWS Bedrock — coming)
与 BPMN 2.0 的关系
APMN 被设计为 超集,而非替代品:
- APMN YAML 文件是主要的编写格式(易于阅读,便于查看差异)
- APMN 也支持将带有
apmn:扩展元素的 BPMN 2.0 XML 作为替代输入 - 所有现有 BPMN 2.0 节点类型(
serviceTask、userTask、parallelGateway等)都是有效的 APMN,且会原样保留 - 不支持 APMN 的 BPMN 工具会忽略 APMN 扩展元素——完全向后兼容
规范
TwinTrack MCP 服务
TwinTrack 是 APMN 的参考编译器。它提供 MCP 服务,让任何兼容 MCP 的 AI 客户端都能直接转换和编译 APMN 工作流。
工具
| 工具 | 描述 | 费用 |
|---|---|---|
migrate_bpmn | 将 BPMN 2.0 XML 转换为 APMN YAML | 1 个点数 |
compile_apmn | 将 APMN YAML 编译为 Orkes JSON 或 Google ADK Python | 1 个点数 |
suggest_node_upgrade | 提供有关将节点升级为更合适的 APMN 类型的建议 | 免费 |
review_model | 对完整的 APMN 模型进行最佳实践审查 | 免费 |
get_apmn_spec | 查询任意 APMN 节点类型的规范和平台映射 | 免费 |
list_samples | 列出随附的 BPMN 演示文件 | 免费 |
连接
Claude Desktop / Cursor — 添加到 claude_desktop_config.json:
"twintrack": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://bpmn2ai.kshetra.studio/mcp/", "--header", "X-Api-Key: YOUR_KEY"]
}
Claude Code CLI:
claude mcp add --transport http twintrack https://bpmn2ai.kshetra.studio/mcp/ --header "X-Api-Key: YOUR_KEY"
在 bpmn2ai.kshetra.studio 获取 API 密钥 — 提供免费套餐。
路线图
| 版本 | 主题 |
|---|---|
| v0.1(当前) | 核心节点类型、网关、YAML 架构、XSD 扩展 |
| v0.2 | 可视化形状库、BPMN.io 插件 |
| v0.3 | VS Code 扩展、APMN Playground |
| v1.0 | 稳定的规范、多种参考实现 |
| v2.0 | 提交至 OMG BPMN 3.0 工作组 |
参与贡献
APMN 作为开放的社区标准进行治理。请参阅 CONTRIBUTING.md。
欢迎所有形式的贡献 — 规范澄清、新节点类型提案、示例工作流、工具。
许可证
Apache License 2.0 — 请参阅 LICENSE。
APN 规范以及此存储库中的所有成果均可免费使用、实现和扩展,不受限制。
APMN 是由 Kshetra Studio 发起的开放标准倡议。
网站:apmn.kshetra.studio · GitHub:kshetra-studio/apmn
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。