工作流工具
当前状态: CatGo 现在有两个不同的 AI 工作流入口。旧文档中把它们当作同一层的说法已经过时。
1. 前端聊天工作流工具
来源:
src/lib/chat/workflow-tools.tssrc/lib/chat/workflow-tool-executor.ts
这些是应用内聊天面板使用的工具。它们是彼此独立的具名工具,而不是单一的 action router。
可用工具名:
list_workflowsget_workflow_statusget_step_errorsuggest_paramsget_node_definitionsget_workflow_templatesvalidate_workflowcreate_workflowadd_noderemove_nodeconnect_nodesset_node_paramsrun_workflowpause_workflow
行为说明:
create_workflow会在前端聊天路径中创建一个空图。- 如果用户位于项目仪表盘中,执行器会尝试把新工作流自动分配给当前活动项目。
- 修改类工具需要存在活动的
WorkflowEditor实例。
2. MCP 工作流工具
来源:
server/mcp_tools/tools/misc.pyserver/mcp_tools/server.pyserver/mcp_tools/server_claude_code.py
这是统一的 MCP 工具:
catgo_workflow
它使用 action 字段:
listtemplatesnode_typescreategetadd_noderemove_nodeconnectset_paramsvalidaterunpauseresumestatusstep_error
行为说明:
- MCP
create当前会创建一个已包含初始structure_input节点的工作流。 - MCP
run会立即发送运行请求,不会打开 UI 对话框进行确认。 - MCP
connect在省略时会把from_handle和to_handle默认设为structure。
3. 重要差异
前端聊天工具和 MCP 工具的行为并不完全相同。
最重要的不一致点:
- 前端聊天
create_workflow-> 空图 - MCP
catgo_workflow(action="create")-> 图中预先包含structure_input
更新 prompts、skills 或 agent 指令时,不要假设这两个入口可以互换。
4. 安全编排模式
对于 MCP / CatBot:
node_typescreategetadd_nodeset_params- 当图不是简单的
structure -> structure链路时,使用显式 handle 执行connect validateget- 只有在显式设置
run_config后才执行run
对于前端聊天:
create_workflowget_node_definitionsadd_nodeset_node_paramsconnect_nodesvalidate_workflowrun_workflow