Channel in
An end user (Teams, web, your own surface) sends a message. The channel SDK normalises it for the orchestrator.
An Agentic OS.
:A coordinated team of specialised AI agents. Privacy-first, plugin-driven, no model lock-in. On your infrastructure.
Open source (MIT) · GDPR-aware · self-hostable · Built in Germany
Choose your perspective
how it works
An orchestrator dispatches each request to specialised agents. Each agent composes from pluggable capabilities. The privacy proxy sits in front of every public LLM and tokenises sensitive data reversibly. Receipts make every turn auditable.
An end user (Teams, web, your own surface) sends a message. The channel SDK normalises it for the orchestrator.
Picks the agent best fit for the task and dispatches to specialised Sub-Agents (accounting, HR, Confluence playbooks) when the task fits. Agents can hand off to one another.
The agent calls capabilities (reasoning, memory, render, retrieval), each backed by a swappable provider.
Sensitive data is tokenised before any public-LLM call. The answer is verified, then a receipt rides back with the response.
The difference
:Most agent stacks are libraries you assemble yourself. The hard parts stay your problem. Privacy, proof, lock-in, supply chain.
Without omadia
With omadia
You send prompts to an external model and hope nothing sensitive left the building. In a review, you cannot prove it.
The privacy-proxy removes and reinserts sensitive data reversibly, and writes a receipt for every call. You hand the auditor receipts, not assurances.
The model makes things up with full confidence. Catching it before it ships is on you.
A dedicated verifier checks every answer for drift before it reaches the user.
Your stack is welded to one provider's SDK and its pricing.
Capability and provider are separate. Swap Claude for a local model in config, without rewriting agents.
Plugins arrive as npm packages, arbitrary code from a supply chain nobody audited.
Plugins are signed ZIPs with a manifest. Install verifies the signature, so you know exactly what runs.
Want the widest set of community integrations today? A DIY framework still wins on raw count. omadia is for teams who have to answer to a security review.
privacy
Sensitive values are tokenised reversibly, and every turn leaves a verifiable receipt.
Sensitive data never leaves your infrastructure in clear text. Before every public LLM call, the privacy proxy substitutes identifiers with tokens that resolve only locally. Every turn ends with a cryptographically auditable receipt: which tokens, which provider, which detectors. Your DPO gets concrete answers.
Inbound (operator)
Customer Anna Schmidt asked about her order #ord-7421-A.
Outbound to LLM
Customer ⟨person-7a3f⟩ asked about her order ⟨order-id-91b2⟩.
Detected today (full stack)
Email · IBAN · Phone · Credit-Card (Luhn) · DE-Personalausweis · DE-Steuer-ID · Names (PERSON, NER) · Addresses · Organizations · custom regex
the builder
It writes the TypeScript, runs the typechecker, fixes its own lint errors, smoke-tests at runtime, and only ships when every pass is green. Output is a signed ZIP plugin, same install surface as any other.
Open the Builderfive gated passes · self-repair loop · signed-ZIP output
capabilities
Swap the LLM, the memory layer or the renderer without touching code.
Capabilities are versioned contracts. Providers are plugins that fulfil them. Today: Anthropic for chat, Ollama (self) for embeddings, three detector plugins for privacy. The matrix below shows where every other provider lands.
| capability | Claude | GPT-5 | Gemini | Llama (self) |
|---|---|---|---|---|
| LLM reasoning | Q2 | Q2 | Q2 | |
| LLM code | Q2 | Q2 | Q2 | |
| Embedding | Q2 | Q2 | ||
| Vision | Q2 | Q2 | Q2 | |
| Tool use | Q2 | Q2 | Q2 |
plugins
Functionality ships as a signed ZIP plus manifest. No npm discovery, no supply-chain risk. Drop it in the Plugin Store, review the manifest, enable. Uninstall is clean, no shadow dependencies. Build your own plugin against the SDK in an afternoon.
The Plugin Store lives at /store in the operator UI.
Drop a .zip plugin here
or click to browse · signature verified on upload
Recently installed
teams-channel
channel
privacy-guard
extension
odoo-integration
integration
proof · artifacts
The receipt, tokenisation and integrity check below come straight from the running code. Each one takes minutes to reproduce on your own machine.
{
"datasetsInterned": 1,
"fieldsMasked": 1,
"fieldsCleartext": 3,
"verbsExecuted": ["sort", "top_n"],
"pseudonymProjectionUsed": false
}Emitted every agent turn. Counts what was interned, masked, and what left in clear. Your DPO audits the facts.
plugin-api · PrivacyReceipt
# operator input — stays on-prem
"Top customer: Anna Schmidt — 32 orders this quarter."
# payload sent to the LLM
"Top customer: [masked] — 32 orders this quarter."
└─ interned as dataset ds_3f9a · resolves only locallyPII is interned behind a dataset handle that resolves only on-prem. The model only ever sees [masked].
privacy proxy · on-wire payload
registry install · harness-plugin-web-search@1.0.0
index sha256:9f2c…b417 pinned in registry index
artifact download host-pinned to registry origin
verify sha256(zip) == pinned ✓
result installed · capabilities reviewed first
on mismatch → RegistryError: registry.sha256_mismatchEvery registry install is checked against a SHA-256 pinned in the index, from a host-pinned origin. A tampered artifact fails closed.
plugins · registryClient (sha256 pin)
Every artifact above comes straight from the OSS code.
integrations
Pre-built connectors for the systems your team already runs on.
confluence.client
Read-only, space-scoped REST API plus a Confluence-Playbook Sub-Agent and proactive page-entity sync into the knowledge graph.
m365.graph
Shared Microsoft Graph layer (Bot-Framework App-Registration). Powers Teams attachments, roster, and the calendar tools.
odoo.client
Read-only JSON-RPC plus a native enrich_company tool with OpenRegister + NorthData backed Handelsregister enrichment.
day one
Everything here is included.
Per-turn audit log your DPO can read.
Anthropic today. OpenAI, Gemini, self-host on the roadmap.
Mermaid · Graphviz · PlantUML · Vega-Lite via Kroki, signed PNG URLs.
Three retrieval paths on Neon + pgvector.
Catches drift before it ships.
Teams, Telegram, web, your own surface.
EN/DE first-class with a parity gate in CI.
From empty workspace to working agent in under 15 minutes.
Sycophancy levels and boundary presets at the response edge.
Tavily / Brave with structured citations on every claim.
kemia · persona engine
Twelve sliders for personality. Four boundary categories for what it must refuse. A sycophancy level your auditor can read. Snapshot the whole persona to a content-addressed ZIP and import it on another deployment. Identical behaviour by hash, no copy-paste prompts.
12 axes · default 50 = neutral · morph = two demo personas
for the eu operator
Bilingual from day one (EN/DE). Self-hostable on your infrastructure. GDPR-aware by design. Every provider call, every token substitution, every tool invocation lands in the audit log. Concrete answers for your DPO. Signed receipts for your auditor.
stack
Open-source components we run in production ourselves. License-clean, replaceable at every layer.
Onboarding wizard and a Docker-Compose quickstart. A promise with a number, not an adjective.
pilot
:We stand omadia up with you in two weeks and put the first agent in your team into production.