rulego
RuleGo is a lightweight, high-performance, component-based rule engine and workflow orchestration framework written in Go. Designed with zero external middleware dependencies, it can be embedded directly into existing Go binaries as an SDK (`go get github.com/rulego/rulego`) or deployed as a standalone middleware service. Developers define directed rule chains in JSON DSL to filter, transform, enrich, and route messages across protocols including HTTP, MQTT, TCP/UDP, Kafka, gRPC, and cron schedules. By utilizing Go coroutine pools, object pooling, context isolation, and AOP hooks, RuleGo supports hot-reloading business logic and orchestrating LLM/agent tool chains or IoT edge pipelines without restarting the host process.
Features
Why choose it
Trade-offs
Maintenance check
- Last commit
- 2026-10-19
- Commits, last 90 days
- 100+
- Releases, last 90 days
- 2
- Latest release
- v1.0.0 (2026-10-19)
- Open issues
- 4
- Recent issues with at least one comment
- 20/24
Oldest week on the left; the latest four weeks are orange. Source: GitHub commit activity.
Status rule: archived on GitHub = Archived; last commit within 90 days = Active; 91 to 365 days = Slowing; older = Stale. All figures come from the GitHub API on the date shown.
Most discussed open issues
- #26 【需求收集】19 comments · 2024-06-12
- #27 Seeking Collaborators to Participate in the Diverse Development of the RuleGo Project/寻找共同开发者参与 RuleGo 项目的多元化发展10 comments · 2024-06-18
- #104 本地缓存建议有三个返回链路:正常,失败,异常3 comments · 2026-01-24
- #61 [dbClient] node supports batch insert0 comments · 2025-03-20
Issue titles are quoted from GitHub. Open the link to check whether a problem still applies to the version you use.
Who it fits
- You want a lightweight, zero-dependency rule engine and workflow orchestrator that embeds directly into a Go binary or runs on edge/IoT devices.
- You need to hot-reload JSON rule chains across HTTP, MQTT, Kafka, TCP/UDP, and LLM endpoints without restarting the host process.
- You need distributed durable execution with database-backed state replay across node crashes; Temporal or Conductor are built for that.
- Your team wants a visual SaaS automation tool with hundreds of OAuth connectors; choose n8n or Activepieces.
How it differs
RuleGo is an ultra-lightweight Go library/server with zero external middleware dependencies, ideal for embedded and edge orchestration. Conductor is a heavy-duty Java 21+ distributed workflow server.
RuleGo embeds inside Go services and processes high-concurrency MQTT/HTTP/TCP streams via JSON rule chains; n8n is a standalone Node.js visual workflow platform.
Compatibility
Quick start
Use cases
Alternatives
Featured in these lists
Comments
No comments yet. Be the first!