rulego

用 Go 规则链编排组件,轻松搭建自动化数据流

开源 🏷️基础免费,高级付费 ✅ 目前可打开 自动化工作流 🍴 复刻 162 🐛 待处理 4 👀 关注 21
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 1632
维护状态 活跃
是否开源 开源
定价模式 🏷️基础免费,高级付费 支持限时试用 · 开源免费,企业版及云服务付费,定价信息待确认

项目预览

rulego 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类自动化工作流
开发团队rulego
官网地址https://rulego.cc
定价模式🏷️基础免费,高级付费
价格说明开源免费,企业版及云服务付费,定价信息待确认
访问状态✅ 目前可打开
是否开源是
开源协议Apache-2.0
主要语言Go
技术栈/模型ai,automation,data-flow,edge-computing,go,intergrations,iot,ipaas,low-code,low-code-framework,mcp,mcp-client,mcp-server,rule-engine,rulego,workflow,workflow-automation,workflow-engine
GitHub 星标★ 1632
上线时间2023-07-23 00:00:00
代码更新2026-10-30
仓库体积6.9 MB
本站数据更新2026-11-03
维护状态活跃
收录时间2026-09-14
浏览次数3

项目介绍

RuleGo 是一个用 Go 编写的轻量级、高性能、可嵌入的组件编排规则引擎框架,面向自动化工作流与数据流场景。它把业务逻辑拆成可复用的组件,通过规则链(Rule Chain)把组件按顺序或条件连接起来,实现消息路由、过滤、转换、聚合等处理。核心能力包括:基于 Go 原生并发模型的高吞吐执行、支持热加载与动态更新规则、内置大量通用组件(如 MQTT、HTTP、Kafka、数据库、AI 调用等),并兼容 MCP 协议,可作为 MCP 客户端或服务端使用。它解决的是传统硬编码流程难以灵活调整、低代码平台又过于笨重的问题,让开发者用少量配置就能搭建 IoT、边缘计算、iPaaS、数据管道等场景的自动化流程,同时保持极低资源占用和嵌入式部署能力。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-09-14 · 当前星标 ★ 1632

使用教程

难度:进阶 约 10 分钟 部署方式:库/依赖 5 步

环境要求

  • 本机已安装 Go 语言环境,可正常执行 go 命令
  • 一个使用 Go Modules 的 Go 项目(用于嵌入 RuleGo)
  • 能访问 GitHub 拉取 github.com/rulego/rulego 依赖(网络通畅或已配置模块代理)
  • 一个可用的规则链 JSON 定义文件(可参考 README 中的示例)

安装与启动步骤

  1. 1初始化 Go 项目

    在项目目录下初始化 Go 模块,已有 go.mod 的项目可跳过这一步,直接执行依赖安装。

    go mod init example.com/myapp
  2. 2拉取 RuleGo 依赖

    README 给出的唯一安装命令,使用 go get 把 RuleGo 作为库引入当前项目。

    go get github.com/rulego/rulego
  3. 3准备规则链 JSON

    用 JSON 定义规则链 DSL,描述组件及连接关系;可参考示例文件 chain_call_rest_api.json 和官方 DSL 文档。

  4. 4创建规则引擎实例

    导入 rulego 包,加载规则链文件,并用唯一 ID 创建规则引擎实例,注意处理返回的 err。

    import "github.com/rulego/rulego"
    // 加载规则链定义文件
    ruleFile := fs.LoadFile("chain_call_rest_api.json")
    // 使用规则链定义创建规则引擎实例
    ruleEngine, err := rulego.New("rule01", ruleFile)
  5. 5提交消息处理

    构造元数据、消息负载与消息类型,交给规则引擎,它会按规则链定义自动处理。

    // 定义消息元数据
    metaData := types.NewMetadata()
    metaData.PutValue("productType", "test01")
    // 定义消息负载和消息类型
    msg := types.NewMsg(0, "TELEMETRY_MSG", types.JSON, metaData, "{\"temperature\":35}")
    
    // 把消息交给规则引擎处理
    ruleEngine.OnMsg(msg)

关键配置

配置项必填说明示例
规则链定义文件是JSON 格式的规则链 DSL,定义组件及其连接顺序与条件chain_call_rest_api.json
规则引擎实例 ID是创建实例时的唯一标识,用于加载与更新对应规则链rule01
消息类型是提交消息时指定的类型,供规则链中组件按类型匹配处理TELEMETRY_MSG
消息元数据 metaData否附加在消息上的键值对,供规则链内组件读取使用productType=test01

如何确认成功

调用 ruleEngine.OnMsg(msg) 无报错,且规则链中的下游组件按定义收到并处理了该消息,即表示运行成功。

常见问题

Q:如何更新规则链逻辑而不重启应用?

A:README 明确说明支持规则链逻辑的实时更新,无需重启应用,即可以在运行中动态替换规则链定义。

Q:规则链 JSON 该怎么写?

A:按 Rule Chain DSL 编写,README 给出文档地址 https://rulego.cc/en/pages/rule-chain/ 和示例 testdata/rule/chain_call_rest_api.json。

Q:RuleGo 需要额外的中间件吗?

A:不需要外部中间件依赖,属于轻量级设计,可在低成本设备上运行,也适合 IoT 边缘计算场景。

Q:go get 拉取失败怎么办?

A:README 未给出处理方式,通常是网络或 Go 模块代理配置问题,请检查网络连通性与 GOPROXY 设置。

Q:对 Go 版本有要求吗?

A:README 只说明基于 Go 语言编写并使用 go get 安装,未给出具体版本要求,请以官网文档为准。

注意事项

  • README 只提供了 go get 这一条安装命令,项目以库形式嵌入使用,没有给出独立部署的命令行或 Docker 命令。
  • 支持嵌入现有应用(Embedded)和独立部署(Standalone)两种模式,Standalone 模式可对外提供规则引擎与编排服务。
  • 内置大量通用组件,并兼容 MCP 协议,可作为 MCP 客户端或服务端使用。
  • 规则链运行示例可参考官方演示地址 http://8.134.32.225:9090/ui/ 与官网 https://rulego.cc。

核心亮点

  • 轻量可嵌入,无外部依赖,适合边缘和 IoT 设备部署
  • 规则链支持热更新,无需重启即可调整业务逻辑
  • 内置 MCP 协议支持,可快速接入 AI 工具与模型

不足之处

  • 生态和社区规模相比 n8n、Node-RED 仍较小
  • 可视化编排和调试工具相对薄弱,复杂规则链维护成本较高

适用场景

  • IoT 边缘设备数据采集、过滤与转发
  • 企业 iPaaS 集成,连接多个系统与消息队列
  • AI 工作流编排,通过 MCP 调用模型与工具

替代项目

n8n、Node-RED、Apache NiFi

同类项目推荐

n8n-skills 开源

用自然语言让 AI 帮你生成 n8n 工作流,告别手动拖拽

n8n skillset for Claude Code to build flawless n8n workflows

★ 6585 2026-08-09
SeleniumBase 开源

写 Python 脚本自动开浏览器,绕过反爬还能跑测试

APIs for Web Scraping, Browser Automation, and E2E Testing. CDP Mode bypasses bot-de···

★ 13223 2026-09-18
WeWorker 开源

把任意网站变成 AI 能调用的工具

AI 驱动的网页自动化工具。通过浏览器扩展将网站操作封装为工具,供 AI Agent 调用,实现对···

★ 159 2026-11-02
gptfree-register 开源

跳过接码,自动注册 ChatGPT 账号并导入 sub2api

ChatGPT协议注册机,支持跳过接码并自动导入sub2api

★ 129 2026-08-09
awesome-claude-skills 开源

50+ 精选 Claude 技能,复制即用,开发流程自动跑起来

The definitive collection of 50+ verified Awesome Claude Skills for Claude Code, Cla···

★ 584 2026-10-06
dots 开源

给 AI 一个不会被封的浏览器,自动帮你跑网页任务

Open-source, self-hosted alternative to OpenAI Dots, Grok Bot. Built to be undetecta···

★ 32378 2026-10-05
Charge-Grinder 开源

自动刷《Limbus Company》镜像地牢,解放双手

Bot for Limbus Company to grind mirror dungeon so you don't have to (no OCR required···

★ 260 2026-09-19
GURU-Ai 开源

在 Termux 里一键跑起 AI 助手,还能生成二维码分享

SIMPLE YET COMPLICATED

★ 1168 2026-08-09
flyte 开源

让 AI 工作流像流水线一样稳定,跑生产不再提心吊胆

Type-safe, distributed orchestration of agents, ML pipelines, and real-time inferenc···

★ 7846 2026-08-09