flow8 gives developers a REST API, a plugin system for custom modules, MCP support for AI agents, and a visual builder that non-engineers can actually use โ so automation isn't always an eng ticket.
Every automation request becomes an engineering ticket. Business teams can't self-serve, and engineering gets buried in glue-code requests instead of shipping product.
Glue scripts sprawl across repos, crons, and Lambdas with no visibility or audit trail. DevOps teams struggle to maintain dozens of disconnected automation solutions.
Integrating internal tools and proprietary APIs requires custom code for every automation. Custom solutions pile up, creating technical debt and maintenance burden.
Let business teams self-serve while engineers focus on product
One Go file per module. The discovery system picks it up automatically via reflection โ no registration, no wiring, no rebuild. Ship a custom module and it's instantly available to every flow in the platform.
package v2
type ModuleSlackAlert struct {
*PluginModule
}
// NewModuleSlackAlert is auto-discovered
// by flow8's reflection-based registry.
func (m *PluginModule) NewModuleSlackAlert() *ModuleSlackAlert {
return &ModuleSlackAlert{PluginModule: m}
}
func (m *ModuleSlackAlert) Execute(params Params) Response {
channel := params.GetString("channel")
message := params.GetString("message")
if err := postSlack(channel, message); err != nil {
return m.Fail(err.Error())
}
return m.Done(map[string]any{
"sent": true,
"channel": channel,
})
}
The features your team needs to own automation
Connect any system via REST, webhooks, or custom modules
Book a demo with an engineering automation specialist. We'll show you how to reduce engineering toil by 40+ hours per week while shipping more product.
Book a demo โ