# Discourse 工作流

**URL:** https://meta.discourse.org/t/discourse-workflows/407100
**Category:** Plugin
**Tags:** official, included-in-core, workflows
**Created:** [2026年七月13日 01:54 UTC](https://meta.discourse.org/t/discourse-workflows/407100 "2026-07-13T01:54:16Z")
**Posts on this page:** 1
**Showing post:** 1

<div class="post-metadata">

### Author: ![lindsey](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/lindsey/32/318210_2.png) [@lindsey](https://meta.discourse.org/u/lindsey)
#### Post date: [2026年七月13日 01:54 UTC](https://meta.discourse.org/t/discourse-workflows/407100/1 "2026-07-13T01:54:16Z")

</div>

| | | |
| --- | --- | --- |
| :discourse2: | **摘要** | **Discourse Workflows** 允许管理员通过可视化构建器创建高级自动化流程，以自动化社区中的几乎所有操作。 |
| 📖 | **安装指南** | **此插件已包含在 Discourse 核心中** 。无需单独安装该插件。 |

> [@](#):
>
> :discourse2: 由于这是由 Discourse 团队维护的 #official 官方插件，您可以在 Meta 上的相应类别中提出 #support::category、#contribute:bug、#Contribute > UX 和 #Contribute > Feature 请求。点击下面的链接即可开始。 👍
> 
> [❓ **支持**](https://meta.discourse.org/new-topic?category_id=6&tags=workflows) [🐛 **Bug**](https://meta.discourse.org/new-topic?category_id=1&tags=workflows) [👀 **UX**](https://meta.discourse.org/new-topic?category_id=9&tags=workflows%22) [💡 **功能**](https://meta.discourse.org/new-topic?category_id=2&tags=workflows)

Workflows 是一个可视化自动化构建器，允许管理员使用拖放画布创建高级的多步骤自动化流程——连接触发器、条件、操作和流程控制节点，以自动化您 Discourse 站点上的几乎所有操作。

> :discourse: **Discourse Workflows** 适用于 **Business** 或 **Enterprise** 计划。

## 核心概念

如果您熟悉其他自动化工具，您可能会认出 Workflows 中使用的大部分术语：

- **工作流 (Workflow)**：由连接的节点组成的已保存自动化流程。
- **节点 (Node)**：工作流中的单个步骤：触发器、条件、操作和流程控制/实用程序。
- **触发器 (Trigger)**：工作流的起点。触发器可以是手动的，也可以由特定事件启动——例如主题创建、计划任务触发或传入的 Webhook。
- **条件 (Condition)**：评估规则并将流程拆分为分支的路由节点。例如，_If_ 节点根据 true 或 false 的评估结果来路由流程。
- **操作 (Action)**：执行特定操作的节点——创建帖子、授予徽章、调用外部 API 等。
- **项目 (Item)**：在节点之间流动的数据。项目是 JSON 对象，您可以在执行日志中检查它们，并使用表达式引用它们。
- **表达式 (Expression)**：以 `{{ ... }}` 形式编写的动态值，在运行时解析，用于引用来自早期节点、工作流变量或站点设置的数据。

## 创建工作流

要创建工作流：

1. 前往 **Admin \> Plugins \> Workflows** 并点击 New workflow。

 ![工作流选项卡上的“新建工作流”按钮。](https://global.discourse-cdn.com/meta/original/4X/7/5/6/7567a39bbcc611861023952a3f4fa1bb9aaf7230.png)

1. 为您的工作流命名。
2. 点击 Add first step 并选择您的触发器。

 ![为新工作流命名并添加第一步。](https://global.discourse-cdn.com/meta/original/4X/8/7/2/87200e4dded9e84e91d59ac706b6b1444e3ba708.png)

1. 使用 + 按钮添加其他节点。

 ![点击节点旁边的“+”图标以添加新节点。](https://global.discourse-cdn.com/meta/original/4X/1/c/0/1c08f8ad0de2eca53dcdb15c9c6baf3d87f97924.png)

1. 双击节点以进行配置。在配置面板中，节点输入的详细信息将显示在屏幕左侧，节点输出的详细信息将显示在屏幕右侧。您可能需要运行一次工作流才能看到所有各种详细信息。

 ![编辑节点页面，您可以在其中详细配置其功能。](https://global.discourse-cdn.com/meta/original/4X/3/4/6/3468ac1e76229bd520c0879820fda2f8badadab0.png)

1. 准备好上线时，点击 Publish。

 ![发布按钮以启动工作流。](https://global.discourse-cdn.com/meta/original/4X/7/c/0/7c09a76da204b8ba7da22a0ba1b273b06bcd8b16.png)

> 💡 **提示：**
> 
> - 使用 **便签** ，位于构建器右上角的三点菜单中，记录您的工作流功能。便签对工作流没有影响，但使模板和共享工作流更易于理解。
> - 在开发期间使用 **日志节点** 将调试值发送到执行日志，而不影响工作流的行为。
> - 您可以将工作流 **导出和导入** 为 JSON，以便与团队成员共享或从其他站点重新创建工作流。

### 表达式和动态数据

接受表达式的字段在编辑器中显示一个 `{/}` 按钮。点击它以浏览来自触发器和早期节点的可用数据并插入引用。

#### 常见表达式

| 表达式 | 返回内容 |
| --- | --- |
| `{{ $json.topic.title }}` | 当前项目中主题的标题 |
| `{{ $json.post.url }}` | 当前项目中帖子的 URL |
| `{{ $json.user.username }}` | 与当前项目关联的用户名 |
| `{{ $vars.my_variable }}` | 名为 `my_variable` 的工作流变量的值 |
| `{{ $site_settings.title }}` | 您站点的标题 |
| `{{ $execution.id }}` | 当前执行的唯一 ID |
| `{{ $('Node Name').item.json.property }}` | 来自特定上游节点的输出，通过其画布名称引用 |

#### 静态和动态值

以 `=` 开头的字段被视为表达式。没有前导 `=` 的字段被视为纯文本。表达式选择器会自动为您处理此问题。

## 管理工作流

有许多功能可帮助您管理现有的工作流。

### 执行

每次工作流运行时，Discourse 都会记录一次执行。前往 **Workflows → Executions** 查看历史记录。

 ![工作流的执行日志。](https://global.discourse-cdn.com/meta/original/4X/5/9/8/598fd8358b41f677e87fb88e2cffb8418c09d73a.png)

每次执行显示其完成时的日期和时间及其状态：

- **已完成 (Completed)**：无错误地运行至完成。
- **错误 (Error)**：在特定节点处失败；点击执行以查看错误和导致错误的数据。
- **运行中 (Running)**：当前正在处理。
- **等待中 (Waiting)**：由于等待节点而暂停；等待表单、模式窗口、聊天批准中的响应；或调用工作流节点等待子工作流完成。
- **速率限制 (Rate limited)**：由于速率限制，工作流被跳过。
- **已跳过 (Skipped)**：触发器已触发，但工作流未发布。

您可以点击 Show 按钮更深入地查看工作流的执行。这将显示工作流的每个步骤，您可以展开以查看确切详细信息以及该步骤的持续时间。

 ![工作流单次执行的详细日志。](https://global.discourse-cdn.com/meta/original/4X/5/d/f/5dfa4f5f39411a2026edce1a7af467c20fd84c34.png)

在页面底部，您可以查看工作流的总持续时间。如果需要用于共享或故障排除目的，您还可以 Export 日志。

### 设置

在 **Workflows →**  **Settings** 选项卡上，您可以：

- 配置 **错误工作流** ，当此工作流运行时出现任何故障时应触发。如果工作流具有错误触发器，它将按该触发器定义的方式处理错误。
- 设置计划触发器的 **时区** 。如果未设置，工作流将默认使用站点时区。
- **删除工作流** 。⚠ 这是 **永久** 的，因此您应该考虑在继续之前导出您的工作流（可在工作流构建器右上角的三点菜单中访问）。

### 版本

每次您更新工作流时，我们都会保存之前的版本。这使得 Revert 未按预期工作的更改变得容易。

 ![版本选项卡允许您使用还原按钮撤消对工作流的更改。](https://global.discourse-cdn.com/meta/original/4X/b/e/5/be5b6262bb065a761e2673c54538b3593a9cabe2.png)

## 变量

变量是限定于单个工作流的键值对。在工作流的 **Variables** 面板中定义它们，并使用 `{{ $vars.key_name }}` 在任何地方引用它们。使用变量存储您希望在不编辑工作流图的情况下能够更改的配置值（如类别 ID 或收件人用户名）。

 ![工作流中的变量表允许您保存常用的键值对以便轻松引用。](https://global.discourse-cdn.com/meta/original/4X/f/a/6/fa6d8cee5c5b39abad02e95ef90541ff0a08dda5.png)

## 凭证

某些节点（如 HTTP 请求或 AI Agent）需要与外部服务进行身份验证。将 API 密钥和密钥存储在 **Workflows → Credentials** 中，而不是直接粘贴到节点字段中。凭证在静态时加密，并可以跨工作流重用。

支持的凭证类型：

- **Basic Auth** （用户名 + 密码）
- **Bearer token**
- **Header auth** （自定义标头名称和值）

 ![凭证选项卡允许您添加可在工作流节点中使用的凭证。](https://global.discourse-cdn.com/meta/original/4X/8/c/9/8c95b858ffd05da7d3baf4a88a9ee2459ea358b4.png)

## 数据表

数据表是 Workflows 插件内部持久的结构化表。使用 **Data table** 节点从中读取或写入。它们支持 `string`、`number`、`boolean` 和 `date` 列类型。

数据表适用于：

- **去重** — 记录工作流已处理的用户或主题
- **状态** — 跟踪主题是否处于流程的特定阶段
- **查找** — 存储您的工作流可以查询的映射（如主题 ID → 分配的工作人员）

 ![数据表可由工作流引用，并可存储工作流期间创建的数据以便轻松引用。](https://global.discourse-cdn.com/meta/original/4X/1/2/3/123634f078e7ffee97efd0b065eb9a5f3a55b187.png)

## 执行

您可以从 **Executions** 选项卡查看所有工作流的所有执行。格式和功能与工作流特定的执行非常相似，但显示所有工作流以便更轻松地监控。

 ![执行选项卡显示所有活动工作流的所有最近执行。](https://global.discourse-cdn.com/meta/original/4X/3/9/8/39817701e82b32ec21cce17643f162f2fb6509b6.png)

## 模板

创建新工作流时，您可以从 **模板** 开始，而不是空白画布。模板是为常见用例预先构建的工作流——它们带有便签注释，解释其工作原理，是学习系统的好方法。

> 📣 **有兴趣查看更多模板吗？** 我们将努力随着时间的推移扩展可用模板库，但如果您希望在此处看到某个模板以简化您的 Workflows 使用，请告诉我们。

您还可以将任何工作流导出为 JSON 文件，与他人共享或将其用作您自己的起点。

 ![模板选项卡显示您可以选择的工作流模板，以快速启动工作流创建过程。](https://global.discourse-cdn.com/meta/original/4X/a/2/6/a2617e6aa93202195ba608aa5e99eb60c4280409.png)

---

_[View the full topic](https://meta.discourse.org/t/discourse-workflows/407100)._
