喜欢这个插件吗?请在 GitHub 上 它!
摘要
discourse-workflow 为主题提供了一个安全的工作流框架。每个工作流由可配置的步骤和选项组成,主题会按这些步骤推进直到完成。
它支持分支和循环、列表和看板发现视图、可审计性以及面向自动化的行为,同时尽可能贴近核心 Discourse 权限和 UI 模式。
特性
基于主题的工作流实例
在管理员界面中具有步骤和步骤选项的工作流定义
使用现有的 Discourse 类别、组和权限
/workflow 处的工作流发现列表
工作流发现中的快速过滤器:
列表/看板切换(在只有一个兼容看板的工作流在范围内时显示)
带有以下功能的看板:
可点击的卡片
合法的拖放转换
合法时的键盘转换(左/右箭头)
带有以下内容的顶部横幅:
带有层级的逾期支持:
全局设置:workflow_overdue_days_default
工作流覆盖
步骤覆盖
0 在该范围内禁用逾期
工作流列表和看板卡片中的逾期指示器
通过小型操作帖子实现的转换审计跟踪
当主题到达被监视的类别时发送通知(监视第一篇帖子)
来自主题和发现的工作流可视化
Data Explorer 对工作流审计和报告的支持
可选的 AI 辅助步骤处理
介绍性概念
泳道 (Swim Lanes)
每个工作流泳道都是一个类别(或子类别)。随着主题的进展,它会根据配置的转换在类别之间移动。
工作流实例
单个工作流项(例如,一张工单)就是一个主题。
可以添加标签以用于元数据,例如优先级。
类别的移动由工作流操作控制(除非管理员覆盖)。
参与者 (Actors)
可以在步骤类别中创建主题的用户可以对该步骤中的工作流项执行操作。仍有回复权限的用户可以像往常一样发表评论。
通过选项执行的操作
步骤选项定义了在每个步骤中可用的操作。每个选项都显示为一个主题操作按钮,可以将主题移动到目标步骤。
仪表板
使用 /workflow 导航过滤器查看您可以访问的工作流主题,然后过滤或切换到看板以进行板式流程管理。
审计跟踪
转换会作为小型操作帖子记录在主题上。捆绑的 Data Explorer 查询支持审计和操作报告。
可视化
工作流可视化可从以下位置获取:
与标准 Discourse 的主要区别
您不能直接在工作流的第 1 步之后的类别中创建新主题。
除非您是工作人员,否则您不能手动更改工作流主题的类别。
只有具有类别创建权限的用户才能执行工作流转换。
入门
使用 workflow_enabled 启用插件。
前往 管理 → 插件 → Discourse Workflow。
创建一个工作流,保存它,然后添加步骤和步骤选项。
配置类别权限,以便工作流参与者在相关步骤类别中具有创建权限。
在第一个步骤类别中创建一个主题。
使用主题操作按钮或看板交互将其转换。
使用 /workflow 进行操作队列管理。
AI 操作
如果配置了,AI 可以操作一个步骤。
要求:
有效的 workflow_openai_api_key
在步骤上启用了 AI
提示包括 {{options}} 和 {{topic}}
示例提示:
your options are {{options}}. if the following text states it is delicious, please accept, otherwise reject. {{topic}} answer with one word from those options
已知问题
此插件仍在发展中。请在仓库或 Meta 主题上报告问题和增强想法。
25 个赞
您好 Robert,
我正在使用工作流插件(不含 AI)。这是一个简单的流程,旨在为 Linux 咖啡馆提供支持链,帮助用户从 Windows 迁移。新主题通过带有子寻址的 RFC 6233 邮件创建,并进入第一个子类别(level1)。
两个问题:
工作流步骤的 ID 不唯一。我有三个步骤具有相同的 ID。??
“incoming”主题上的“start”操作会创建“422 unprocessable content”。也许这是 1) 的结果。
3 个赞
感谢您的耐心和反馈。我感谢您对插件的兴趣。
它有点实验性,正如您所见,尚未收到大量反馈,因此难免会出现一些初期问题。
我将尝试重现您的工作流程并尝试重现该问题。
在此期间,您能否截取管理屏幕中工作流程的屏幕截图并分享?
@Thomas_Rother 您对此有堆栈跟踪吗?
3 个赞
罗伯特,您好:
没关系,我知道这是实验性的。因此,它只安装在一个自托管的测试实例上。您可以在那里注册,我可以授予您管理员权限:
https://forum2.netzwissen.de/login
2 个赞
好的,通过演练,这是我的操作过程:
设置“网吧门票”类别
将所有步骤设置为子类别,结果如下:
到目前为止一切顺利。
现在让我们创建步骤:
好的,我至少可以看到两个问题!(但其中一个可能由另一个引起)
这很奇怪,因为我确定以前这是可以正常工作的。我正在查看,如果我有时间,很快就会发布一个修复程序。
3 个赞
Olle11
2025 年5 月 30 日 10:09
11
这个插件最常见的用例是什么?它是否与 Gemini flash 2.0 兼容?
任何具有多个步骤和参与者的业务流程(在合理的范围内)。可能需要扩展以进行特定集成。
目前仅支持 OpenAI,但欢迎提交 PR(它使用 Chat Completions,因此工作量不大)。
1 个赞
重大新闻:您现在可以获取创建燃尽图/燃起图的统计数据:
main ← add_daily_workflow_stats
opened 08:45PM - 01 Aug 25 UTC
* Adds a daily job to create state count stats that you can use in burndown/burn… up charts.
* Adds a job that check presence of or adds two useful Data Explorer queries
* Audit log for all transitions
* Daily counts for workflow instances at each step of their workflow, facilitating burndown/up charts (just export the results).
* You can give specific groups access to these reports.
添加了一个每日作业来创建状态计数统计信息,您可以在燃尽图/燃起图中使用这些信息。
添加了一个作业,用于检查或添加两个有用的数据探索器查询
所有转换的审计日志
工作流实例在其工作流的每个步骤的每日计数,便于燃尽图/燃起图(只需导出结果)。
您可以授予特定组访问这些报告的权限。
注意:由于在主要插件捆绑中处理 gem 依赖项的方式发生了变化,Discourse Workflow 目前仅与通过测试兼容。一旦下一个稳定版本发布,这种情况应该会有所改变。
4 个赞
我正在尝试找出我的网站为什么会变慢……
弃用警告
[PLUGIN discourse-workflow] 弃用通知:在站点初始化阶段访问 site.mobileView 或 site.desktopView 已弃用。在将来的更新中,移动模式将由视口大小确定,因此在初始化期间使用这些值可能会在浏览器窗口大小调整时导致错误和不一致。请将这些检查移至在页面渲染期间执行的组件、转换器或 API 回调。 [弃用于 Discourse 3.5.0.beta9-dev] [弃用 ID:discourse.static-viewport-initialization] [信息:Designing for Different Devices (Viewport Size, Touch/Hover, etc.) ] deprecated.js:62:13
hellekin:
我的网站变得很慢……
我非常怀疑这会导致您的网站变得迟缓!! - 这是一个弃用警告。
期待您的 PR
1 个赞
hellekin:
我的网站变慢了……
嗯,这不应该是因为 Discourse Workflow,因为我已经关闭了几个 N+1 问题,包括主题列表和可视化中的问题:
main ← eliminate_n_plus_1
opened 02:27PM - 22 Nov 25 UTC
* makes associations more idiomatic
* adds explicit association with topic to w… orkflow_state
* various points leverage associations
等等。
2 个赞