The control plane owns state
n8n coordinates triggers and integrations, but the application service owns tenancy, execution state, approvals, traces, and tool authority so independent workflows cannot drift into conflicting sources of truth.
AI and automation / 2026
Standalone automation workflows become difficult to govern when each one owns its own prompts, credentials, retries, approval logic, tenant context, and execution history. Businesses need a shared control plane that makes agent behaviour reviewable and recoverable without allowing a model or workflow canvas to become the authority over business state.
The platform centralises tenant-scoped agent definitions, execution state, provider selection, approvals, audit events, retries, replay, cancellation, and operational telemetry. Email triage, CRM updates, document generation, and daily-report agents run through one authority boundary: models propose structured actions, while application services validate policy and execute authorised outcomes.

Walkthrough
The platform running in deterministic mock mode: a seeded tenant with four agents, a gated run waiting for approval, a person approving it, and the five audit events that result.
My part
Decisions
n8n coordinates triggers and integrations, but the application service owns tenancy, execution state, approvals, traces, and tool authority so independent workflows cannot drift into conflicting sources of truth.
Provider output is stored as a proposed action. Sensitive or customer-facing outcomes pass through application policy and, where required, an explicit human approval state before execution.
Every core workflow can run without paid provider keys, allowing CI and reviewers to validate system behaviour independently of external model availability.
A tenant-scoped idempotency key is resolved before creating a new execution, so repeated triggers return the existing result instead of duplicating downstream work.
Screens
SYSTEM ARCHITECTURE
External triggers and n8n submit tenant, agent, payload, and idempotency context to the FastAPI control plane.
The API owns execution state and records queued, running, waiting-approval, completed, failed, cancelled, and replayed transitions.
A provider router selects OpenAI, Anthropic, or deterministic mock mode without giving providers authority over external tools.
Policy checks and approval state sit between model recommendations and application-owned tool execution.
PostgreSQL stores tenant, execution, approval, and audit state while Redis provides a queue boundary with a local fallback for reproducible demos.
Built with
Links
More work
Gazelle's KitchenA WhatsApp business gatekeeper that qualifies genuine orders, enforces business and safety rules, contains off-topic or abusive conversations, and only surfaces the small set of cases that genuinely need the owner.PilotSellavie AIAn independent project: multi-tenant conversational-commerce software that connects social messaging with business knowledge, guarded AI, human handoff, orders, billing, analytics and operations.MaintainedWebhook RelayWebhook reliability tool for receiving, verifying, inspecting, replaying, and forwarding events with bounded retries and a live inspector UI.Maintained