流程
在画布上把已存储的请求、MCP 服务器和 Echolot 的工具串联成小程序,可手动运行、按计划运行、由 Webhook 触发,或作为工具提供给智能体。
流程是你画出来的小程序:由连线连接的若干块组成。每个块只做一件事:发送一个已存储的请求、从响应中取出一个值、分支、循环、向你提问、存储变量或写入文件。 流程适合那些原本要手动分好几步完成的工作:用设备代码登录、逐页遍历结果、填充和清理测试数据、每天早上检查一次 API,或者给 AI 智能体提供一个能完成五次请求的工具。
流程保存在工作区中,flows 文件夹里每个流程一个文件,因此可以像请求一样在 Git 中审阅和共享。
流程发送的每个请求都与在请求页面中发送走同一条路径:变量、认证、脚本、检查、代理和历史记录全部生效。
“流程”页面
在边栏顶部的模块切换器中选择“流程”,或按 ⌘5。边栏会列出工作区中的流程。
每个名称下方显示它的启动方式:manual、agent tool、every hour、scheduled 或 webhook。流程旁的警告标志表示它有问题,需要先修复才能运行。

页面分为三部分:
- 工具栏位于画布上方:流程名称(更改尚未存储时旁边显示已编辑)、问题数量、整理、适应窗口、缩放比例、复制、运行、运行日志、块、提示和运行。
- 画布在中间,左下角有整个流程的小地图。点按地图可把视图移到那里。
- 检查器在右侧。未选择任何内容时,它显示流程本身:名称、描述和输入。选择一个块时,它显示该块的设置。
打开流程时,边栏还会列出该流程的运行(本窗口中的运行,最新的在前)和工作区的请求,可以直接拖到画布上。
创建流程
- 在边栏中点按流程旁的 +。
- 选择空白流程会得到一个连到“输出”块的“开始”块,也可以在从模板下选一个(见模板)。
- 新流程会在画布上打开。在检查器的名称中为它重新命名。
工作区还没有流程时,页面会显示新流程按钮。
要删除流程,选择它并点按流程旁的 −,或按住 Control 键点按它并选择删除…。Echolot 会先询问,然后把文件移到废纸篓。运行已删除流程的其他流程将无法工作。
在画布上搭建
添加块
- 点按工具栏中的块,或按 ⇧⌘B,打开块选取器:输入文字搜索,然后点按某种块。按 ↩ 添加第一个匹配项。新块出现在视图中央并处于选中状态。
- 选取器还会在请求下列出工作区中已存储的请求。选择其中一个会添加一个已经设置好发送该请求的“请求”块。
- 把边栏请求中的请求拖到画布上,松开的位置就会出现一个“请求”块。按住 Control 键点按请求并选择添加到流程,会把它的块放在流程右侧。
每种块的设置和端口见块。

连接端口
输入在块的左边缘,输出在右边缘。值从输出出发,沿连线前进,到达输入;当所有已连线的输入都有值时,块才会运行。
- 从输出拖到输入即可连线。连线能够接上时,指针下方的端口会亮起。也可以从输入开始,拖到输出。
- 一个输入只接受一条连线。把另一个输出连到它上面,会替换旧的连线。一个输出可以连到多个输入。
- 把新连线松开在空白画布上,块选取器会在那里打开。它只列出能接上这条连线的块,选中的块出现时已经连好线。
- 要移动连线,把它从终点的输入上拖开,放到另一个输入上。放在空白画布上则会断开。
- 指向连线,其中间会出现一个按钮,用来断开它。
选择、移动和排列
- 点按块来选择它。按住 ⇧ 或 ⌘ 点按,可把块加入选择或从中移除。
- 按住 ⇧ 或 ⌘ 在空白画布上拖移,会画出选框。选框碰到的块都会加入选择。
- 拖移块即可移动它。按 Esc 取消选择。
- 方向键会选择该方向上最近的块,视图随之移动。未选择任何内容时,方向键从“开始”块起步。
- 整理会按运行顺序把块排成列。
- 复制(⌘D)会复制所选的块以及它们之间的连线。
- ⌫ 会删除所选的块及其连线,或删除所选的连线。
所选块的检查器中有删除块。选择了多个块时,它会显示数量和删除块。一个流程恰好有一个“开始”块:它不会被拷贝或复制,不能暂停,其检查器中也没有删除块。
平移和缩放
- 在空白画布上拖移,或用双指或鼠标滚轮滚动,即可平移。
- 双指张合,或按住 ⌘ 滚动,即可缩放。缩放范围为 20 % 到 250 %,工具栏显示当前比例。
- 适应窗口(⌥⌘0)显示整个流程。它不会缩小到 50 % 以下,以保证文字可读;更大的流程会从左边缘开始显示。
拷贝和粘贴
编辑 › 拷贝(⌘C)、剪切(⌘X)和粘贴(⌘V)作用于所选的块以及它们之间的连线。 粘贴的块会获得新的 id 并成为当前选择。在同一流程中,它们落在原块旁边;在另一个流程中,则落在视图中央。也可以粘贴到另一个工作区的流程中。 拷贝出的块是 JSON 文本,因此也可以粘贴到消息或 issue 中。
备注
点按工具栏中的提示,添加一张便笺并在其中输入文字。备注位于块的后面,不会运行。
- 拖移备注即可移动,拖移其右下角的抓取柄可调整大小。
- 双击备注,或按住 Control 键点按它并选择编辑备注…,即可修改文字。
- 按住 Control 键点按并选择删除备注,即可移除。
模板用备注来说明应该选择哪些请求。
撤销和存储
画布和检查器中的每项更改都可以用编辑 › 撤销(⌘Z)和重做(⇧⌘Z)撤销:添加、移动、连线、删除、设置、备注和整理。
你不需要自己存储流程。Echolot 会在你最后一次更改后片刻写入文件;在此之前,名称旁显示已编辑。 如果存储失败,Echolot 会说明原因,并提供重试、放弃更改(回到磁盘上的文件)和继续编辑。你的编辑会一直保留在画布上,直到存储成功。
问题
Echolot 会在你编辑时检查流程。工具栏显示问题数量;点按它可查看列表,点按某个问题可选中对应的块。有问题的块带有警告标志,其检查器会列出这些问题。
错误会阻止流程运行:没有“开始”块、必填设置为空(例如没有请求的“请求”块)、请求或流程不存在,或者连线绕成了圈。警告则不会,例如没有任何连线接入、因此永远不会运行的块。 要重复做某件事,请使用重复、逐项或轮询,而不要把连线绕成圈。
输入和输出
输入是运行开始时的值。在未选择任何内容时,于检查器中添加:点按输入旁的 +,输入名称并选择类型(any、text、number、bool、object、list 或 secret)。
“开始”块会为每个输入提供一个输出,另外还有 run,它把所有输入作为一个对象发送。
输入来自“运行”面板、echolot flow run 的 --input 选项、智能体的工具调用,或 Webhook 的查询参数和 JSON 正文。文本会转换成输入的类型:3 转成数字,true 或 yes 转成布尔值,JSON 文本转成对象或列表。secret 输入在运行日志和智能体能看到的内容中会被隐藏。
默认值、描述以及输入是否必填,在流程文件中设置([[inputs]] 表:default、description、required;见工作区文件)。
“运行”面板会把描述显示为字段的占位符,并填入默认值。
“输出”块保存运行返回的内容:返回给调用流程的智能体、echolot flow run、Webhook 的调用方,或父流程的“流程”块。一个流程最多有一个“输出”块。
运行流程并观察
点按运行或按 ⌘R。有输入的流程会先打开一个面板供你填写;空字段使用输入的默认值。流程会先存储,然后在窗口当前使用的环境下运行。流程有错误时,运行不可用。
运行期间:
- 每个块的边框显示其状态:运行中或等待你操作、通过(绿色)或失败(红色)。
- 运行日志会在画布下方打开。每个块完成时,日志会列出它的耗时、日志行、测试结果(标题栏中的测试 3/3)以及运行如何结束。点按某一行可选中对应的块。
- 向你询问的块(“询问”“显示并等待”“批准”)会打开一个面板。见“人员”块。
- 停止(⌘.)取代运行,用来结束运行。屏幕上的提问会随之消失。
运行结束后,选择一个块,即可在检查器中看到它的上次运行:耗时多久,以及在显示下按端口列出的输入和输出值。可以用它为“提取”块或模板找到某个值的路径。

之前的运行会保留在窗口中:点按边栏运行下的某一次,或从工具栏的运行菜单中选择,即可在画布上再次显示。该菜单中的清空画布,或运行日志中的清除,会移除运行状态。 运行失败且这台 Mac 的设备端模型可用时,运行日志标题栏中会出现一个按钮,用来解释失败原因。
当受保护的环境处于使用中时,按钮会显示为在 Production 中运行…,Echolot 会在运行开始前询问一次。
有关运行、计划、Webhook、智能体和命令行的更多内容,见运行和触发。 如需有引导的示例,请跟着用流程实现自动化操作。
键盘快捷键
| 快捷键 | 操作 |
|---|---|
| ⌘5 | 显示“流程”模块 |
| ⌘R | 运行流程 |
| ⌘. | 停止运行 |
| ⇧⌘B | 添加块 |
| ⌘D | 复制所选的块 |
| ⌥⌘0 | 适应整个流程 |
| ⌘C、⌘X、⌘V | 拷贝、剪切、粘贴块 |
| ⌫ | 删除所选内容 |
| ⌘Z、⇧⌘Z | 撤销、重做 |
| 方向键 | 选择该方向上最近的块 |
| Esc | 取消选择 |


