The unified AI agent platform — without the enterprise contract.
Multi-agent orchestration, multi-harness runtime variants, run-state continuity, contextual RAG, voice + telephony, and background automation — behind a self-service admin dashboard, on open standards. Self-hostable end-to-end. Built in Vienna.
0+MCP connectors
0Retrieval stages
0%Self-hostable
The defensible claims
Sixteen things most platforms can't say.
Every row is a claim you can check — with the evidence beside it. No marketing fog.
Claim
Evidence
01
Unified text + voice + telephony
Widget, voice widget, Twilio / Vonage / FreeSWITCH — all first-class in-product, same agent graph.
Handoffs (control transfer) and silent consult edges executing in parallel. Not a single fine-tuned "bot".
10
Multiple harnesses per tenant
A tenant can run separate bot applications for support, sales, staging, voice, or campaign variants — each with its own graph scope, triggers, memory, analytics, and runtime instructions.
11
Run State keeps long work coherent
Schema-validated workflow state with per-stage read/write policies. Persists across handoffs, pipeline stages, fanout branches, waits, approvals, and resumptions — survives server restarts and graph edits via pinned compiled-graph snapshots.
12
Deterministic workflow orchestration
Pipeline · condition · error edges; transform · state-update · router · join · wait · poll-until · approval · output nodes. Graph-driven control flow with durable pause/resume and an Operations queue for human approvals — not just model-chosen handoffs.
13
Build harnesses by chatting
Harness Architect — a chat-based wizard backed by a privileged System MCP server — interviews you, recommends agentic / pipeline / hybrid, generates a v3 import package, validates and previews, and applies only after explicit confirmation plus an automatic backup snapshot. Replaces the entire v1 wizard zoo.
14
Instructions from external source
Bind agent instructions to a file, repo path, or external doc. Versioned, auditable, sharable across harnesses — no copy-paste prompts drifting between environments.
Persona + Memory + Date + Agent + Skills + KB Guidance + Citation + Image + Style. Website-scanning Persona Wizard, multilingual greetings with memory-aware personalization.
Agent Graph
Handoffs + consults + deterministic orchestration
Directed graph with two model-chosen edge types (handoff, consult) and three deterministic orchestration edges (pipeline, condition, error). Orchestration nodes for transform, router, join, state-update, wait, poll-until, approval, and output. Per-agent model/temperature/reasoning, Structured-Output mode (schema builder → Pydantic), and a single chat-driven Harness Architect — a system-MCP-backed wizard that interviews, designs, validates, previews, and applies entire harnesses with backup snapshots. Replaces the old per-agent / per-skill / Assess-Graph modals from v1.
Harnesses
Multiple runtime variants per tenant
A harness is a runnable application boundary inside a tenant. A single tenant can run several side-by-side: support, sales, staging, voice, campaign — each with its own selected agent graph, graph-wide instructions, scoped triggers, scoped memory and analytics, and cloneable variants. Tenant assets stay shared; runtime behavior becomes selectable, swappable, and auditable per harness.
Run State
Durable, schema-validated workflow state
Run-scoped state with a tenant-defined schema, read/write policies per agent and per edge, deterministic state-update nodes, projection across handoff/consult/pipeline edges, trigger-payload seeding, and tool-result-to-state mapping. Long workflows stay coherent across handoffs, resumptions, waits, and approvals — without leaning on chat history.
Instruction Sources
Bind agent prompts from file, repo, external doc
Agent instructions can be sourced from external systems instead of typed inline. Version-pinnable, auditable, and sharable across harnesses. Edit prompts in your own SCM, deploy with the same review/PR process as code. The admin still shows the resolved final instructions and the source of record.
Inspector · Playground · Run State · Analytics · regression tests
Conversations inspector (Messages / Events / Retrieval w/ chunk scores / Memory / Trace), Playground with SSE stream, persisted Trace, Run State and Memory inspectors, Analytics with anomaly banners, Prometheus + Grafana + 7 pre-configured alert rules, regression-test framework with LLM Judge in 15 languages.
Compliance
GDPR · EU AI Act · self-host
GDPR role matrix, Subject-Rights endpoints, retention automation (30/90/180/365 d), ROPA template, EU AI Act per-Article mapping, Shared Responsibility Model doc, fully self-hostable pipeline.
Beyond handoff
Deterministic graph orchestration.
Handoff and consult are model-chosen. Pipeline, condition, and error are runtime-chosen. Both live in the same graph — handoff for collaboration, orchestration for control flow.
Deterministic JSON-to-JSON or JSON-to-text mapping. No LLM.
router
Centralized branching point. Easier to read than fan-out from a single agent.
state_update
Schema-validated write into run state. No LLM.
output
Explicit terminal delivery — conversation, artifact, webhook, or email.
join
Wait for parallel branches and merge results.
wait
Pause durably for time, datetime, or external event.
poll_until
Active deterministic readiness check (e.g. uploaded-document status). Loops with caps until success, failure, or timeout — never lets an agent guess infrastructure state.
approval
Human-in-the-loop gate: approve, reject, or edit payload. Operations queue surfaces the task with claim/lock semantics.
How a request flows
From keystroke to reply, step by step.
Every request passes through the same eleven stages — whether it comes from a widget, a phone call, or a webhook.
Step 01
Arrive
Widget / API / phone → resolved to tenant via API key, phone number, or origin.
Step 02
Select harness
Default, API-selected, widget-selected, or trigger-selected harness fixes the runnable graph, graph-wide instructions, memory scope, and analytics scope.
Step 03
Resolve instructions
For agents bound to an external source (file, repo, doc), instructions are fetched at the pinned version. The composed prompt is the same shape, but the source of record stays out of the admin.
Structured run state records step progress, decisions, resumptions, and inspectable debug checkpoints. Deterministic state-update nodes write schema-validated values; agent-driven writes use read/write policies.
Step 09
Output guard
Response validated. Then SSE stream to the client — with side-channel events for carousels and detail cards.
Step 10
Persist
Async memory extraction, rolling-summary update, conversation and run state persisted, metrics incremented.
Separate docs + ticketing + Discord. Context-switching cost.
ChatFlow
Support Triage → Developer (API KB + MCP internal docs + Jira) + Admin (config KB) + End User (how-to FAQ) + Status (status API). /schema endpoints auto-discovered.
Value
Every new microservice becomes an agent capability overnight. Ticket volume down, dev activation up.
🏠
Real estate advisor
Problem
Multilingual clients. Property data in CRM. Viewing scheduling. Financing questions across jurisdictions.
Today
Website forms + human agents by phone + financing calculators.
ChatFlow
Structured KB = property catalog (20+ filterable columns + semantic). Viewing webhook. Mortgage KB per country. Voice with EU residency via Vonage.
Value
Clients search by voice in native language, see properties as carousel, book viewing — without leaving the conversation.
🗂️
Internal knowledge hub
Problem
Info scattered across Confluence/SharePoint/HR portals. Employees lose hours.
Today
Enterprise search (Glean) at $40–50/seat + Copilot (generic).
ChatFlow
Specialist agents per domain (HR / IT / Finance / Product), each with their own KB. IT agent has MCP to AD + ServiceNow. Per-role guardrails redact salary/PII.
Value
Domain-scoped, action-capable (create tickets, check AD membership), isolated per department via multi-tenant.
Per-property tenant, structured KBs for activities/restaurants, room-service webhook, voice widget in-room app. Parent brand shares skill templates.
Value
Proven pattern. GoodGuys' AI-Concierge predecessor serves 20k+ monthly users across Basel, Zurich, Salzburg, Vienna, Villach and the Dolomites.
⏱️
Back-office automation
Problem
Email triage, daily digests, lead qualification from Typeform, document comparison — work that doesn't need a chat UI.
Today
Zapier / Make + custom code + separate LLM calls.
ChatFlow
Trigger fires (cron or webhook) → same agent graph runs → result returned sync, via callback, or written into conversation. Vendor presets for Zendesk/Intercom/HubSpot/Jira/Slack.
Value
One configuration serves both live conversations and unattended automation. No duplicate infra.
Ecosystem
Sits on top of the stack you already run.
Twelve categories of integration. Tap a method chip to highlight all integrations using it.
Ticketing / Helpdesk
ZendeskFreshdeskIntercomJira
webhook
CRM
HubSpotSalesforcePipedrive
MCP
Scheduling / Calendar
eTerminCalendlyGoogle CalendarMS Calendar
webhook
Knowledge / Docs
ConfluenceSharePointNotionPublic websites
API
Identity / SSO
Microsoft Entra IDOktaKeycloakAuth0Google WorkspaceAWS Cognitoany OIDC providerEmail OTP
native
Voice / Telephony
TwilioVonageFreeSWITCH PBX
native
Payments
Stripe
native
Analytics / Monitoring
PrometheusGrafanaPagerDutySlack
native
Data pipelines
CI/CDETLRegression tests
API
Messaging
WhatsAppSlackTeamsEmail
webhook
Compliance
DATEVBMDVAT validators
native
AI / LLM providers
OpenAIAzureAnthropicGoogleMistralCoherevLLMOllama
native
Enterprise-ready sign-in
Know who's on the other side of the chat.
Two independent flavors, enable either or both from the admin dashboard. The widget forwards the verified identity on every request — conversations get a real end-user record, KB access can follow group claims, and GDPR delete lands on a real row.
Flavor 1
OIDC Passthrough
Your host page is already logged in. It hands a fresh JWT to the widget via a small callback; the backend verifies against your IdP's JWKS. No client registration on our side, no redirects, no refresh tokens leaving your perimeter.
✓Works with any OIDC-compliant provider — JWKS-URL auto-discovered from the issuer
✓Algorithm allowlist (RS/ES/EdDSA). HS* and alg:none always rejected
✓Claim mapping supports dot paths and namespaced claims
✓Three modes: disabled · optional · enforced
Flavor 2
Email OTP (Magic-link)
No IdP required. User types their email, receives a 6-digit code, stays signed in via a secure cookie. Same entry point whether they're new or returning — no separate signup flow.
✓Redis-backed codes, rate-limited per email and IP
✓Optional hCaptcha and tenant-customisable consent copy
✓DELETE /end-user/me endpoint for GDPR Art. 17
Verified against
Microsoft Entra IDOktaKeycloakAuth0Google WorkspaceAWS Cognitoany OIDC-compliant IdP
Group-based KB ACLs
Once users sign in with an IdP that emits group claims, restrict individual Knowledge Bases to specific groups. Non-members don't get a "permission denied" — the KB is silently dropped from retrieval, so they can't tell it exists.
Visible where you need it
End-user email and auth-method show up in the admin conversation list, with full identity + groups in the meta tab of each conversation.
Agentic access to company systemsOn the roadmap · In active development
Let the agent act on your company systems — safely.
A centralized Connections layer gives every ChatFlow feature the same OAuth, refresh, audit, and revocation plumbing — so new integrations never come at the cost of new security surface. Enterprise mail is the first consumer; Drive, Calendar, CRM and more follow on the same rails.
Foundation
One OAuth layer, every integration
Instead of bolting auth onto each feature, one infrastructure layer owns authorize / callback / refresh / revocation / audit. Every future integration inherits the same admin UX, security controls, and operator visibility.
✓Capability-scoped tokens — agents receive narrow, auditable access, never raw credentials or refresh tokens
✓Incremental consent — one connection per account powers many features; adding a feature asks only for its additional scopes instead of spinning up a new sign-in
✓Revocation cascade — one revoke pauses every dependent feature; admins see one unified banner, not per-feature noise
✓Encrypted at rest (KMS-ready envelope design), per-fetch audit log, PKCE + signed state on every OAuth flow
First consumer
Enterprise mail: inbound, outbound, threaded
Microsoft 365 and Google Workspace via XOAUTH2 through the Connections layer, plus self-hosted SMTP/IMAP and Resend for transactional sends. Inbound mail triggers agent runs through the existing trigger pipeline; replies thread naturally; attachments can be promoted into KBs under strict ACL control.
✓XOAUTH2 for Entra ID / Google Workspace — no passwords ever stored by us
✓Threaded conversations via plus-addressing + In-Reply-To / References fallback
✓DMARC-fail drop, bounce classification, idempotent retries, dry-run mode for test environments
Designed for
Microsoft 365 / Entra IDGoogle WorkspaceSelf-hosted IMAP / SMTPResendMicrosoft Graph (next)Salesforce · HubSpot (next)Slack · Teams (next)any OAuth 2.0 service
Forensics-ready by design
Every token fetch joins back to the originating agent run. Every email-ingested KB document carries provenance to the original message. A single GDPR deletion walks the chain — chunks in Qdrant, text in MongoDB, blobs in object storage — from one inbound-email ID.
Scope-gate your agents
Agents never see raw tokens, only tool results. Capability gating is enforced at the token broker; per-agent RBAC decides which mailboxes can be sent from and which KBs can be written to. Platform operators can pause any provider centrally via a feature flag — no per-feature hunting, no code change.
Early-access pilot partners welcome during v1 — get in touch if you'd like your enterprise mail or data systems on the integration roadmap.
Strengths & gaps
Everything we ship, and what we don't.
Most competitor sites won't put this on one page. We will.
Strengths
✓4-stage contextual retrieval with 3 reranker backends — enterprise-grade in one product.
✓Observability as a feature: chunk-level scores, memory inspector, regression tests with LLM Judge.
✓Enterprise-ready sign-in: OIDC passthrough for Entra / Okta / Keycloak / Auth0 / Google, plus email OTP for public widgets. Group-based KB ACLs and a GDPR delete endpoint — all self-service in the admin.
Known gaps
◐Brand recognition — no Fortune-500 logo wall yet. Credibility gap for US enterprise deals.
◐No SOC2 Type II / ISO 27001 yet. Table stakes for US enterprise procurement.
◐No outcome-based pricing shipped yet. Market trending per-resolution for CX.
◐Native channel adapters (WhatsApp, Messenger, Slack) still need webhook wiring. MCP servers exist, one-click UX does not.
◐Limited analyst coverage. No Gartner MQ placement, no public Tau-bench score.