User Guide
Core concepts and usage guides for Flowbot's orchestration engines.
Contents
- Homelab App Discovery — Automatic API endpoint and auth mechanism discovery via labels and runtime probes
- MCP — Inbound
/mcpserver for Cursor/Claude and outbound MCP servers as chat-agent tools - Homelab image update checks — Digest inspection,
homelab.image.update_available, and the notify blueprint - Capability Webhooks — Provider inbound webhooks (
/webhook/provider/*), paths, and signature / token auth - Pipeline Engine — Event-driven multi-step automation with retry and checkpointing
- Pipeline Blueprints — Parameterized pipeline templates, official catalog, and import
- Pipeline Template Engine — Go
text/template-based parameter rendering with conditionals, loops, and FuncMap - Workflow Engine — YAML-defined task DAGs with capability invocation, shell commands, Docker, and remote machines
- Notifications — Multi-channel notification configuration (Slack, Pushover, ntfy, Message Pusher, inapp)
- Notification Gateway — Template-based notification rendering, Redis-backed throttling, aggregation, and mute/DND rules
Concepts
The Homelab App Discovery system provides automatic identification of what each
self-hosted app exposes: capability type, API endpoints, and authentication mechanism.
It uses docker-compose labels for deterministic discovery and optional HTTP probes for
runtime validation.
Flowbot operates three runtime engines plus named functions:
-
Pipelines react to
DataEventmessages published via Redis Stream. Each pipeline consists of a trigger and ordered steps that invoke capability operations. -
Workflows execute task DAGs defined in YAML. Tasks can invoke capabilities, run Docker containers, execute shell commands, or connect to remote machines.
-
Named functions (FaaS) publish pure transform versions invoked via capability or HTTP.
-
Notifications deliver messages across multiple channels using a unified provider interface.
REST for functions, pipeline, and workflow is mounted under one module: /service/automate/{functions,pipeline,workflow} (internal/modules/automate). See merge note.
For architecture details, see Architecture.