0.12 is a complete rebuild of the whole system on two principles — SoC (separation of concerns) and SSoT (single source of truth). Every service is a modular monolith: one-concern modules joined only through sealed contracts CI won't let drift.
🤖 Bots — rebuilt as capture bricks (join, per-platform capture, STT, recording…) that compose three ways: the meeting bot, a desktop host, and an eval harness that replays real captured meetings through the stack. The API is unchanged — api.v1 is sealed hash-equal to the 0.10.x line, machine-checked in CI. Nothing you built breaks.
🧠 Agents — the new kind. Open the Terminal to feel them. Same runtime as the bots — tenant-isolated, designed to scale on Kubernetes.
📚 Workspaces — the wiki your LLM builds: plain markdown, git-versioned, open format (OKF). Personal and shared — a shared graph lives between the people on your daily, updating in real time while you speak.
Try it
git clone https://github.com/Vexa-ai/vexa && cd vexa && make all(make bot after, to send bots to calls. Prereqs: Docker + make; the first build is the heavy step — 8+ vCPU / 16 GB makes it comfortable.)
Official images: Docker Hub vexaai/*:0.12.0 — the quickstart pulls them; make build still builds everything from source.
What we guarantee — and how each guarantee was verified
Deploy paths:
| Path | Guaranteed | Verified by |
|---|---|---|
Compose — make all (Linux + macOS)
| ✅ the shipped path | fresh public clones on clean machines, incl. an independent evaluator's cold-start lab |
Lite — vexa-lite image
| ✅ as of v0.12.0 | source build repaired in #493; the #478 A/B verification ran on the Lite stack; the published image is smoke-tested on a clean VM before :latest moves
|
| Helm / Kubernetes / OpenShift | ❌ not yet — in progress | community testing invited (see first-contribution issues) |
Claims:
- API continuity —
api.v1sealed (sha256 incontracts.seal.json); CI fails on any drift; the running app is conformance-checked against the seal. Known edge, stated below: two sealed endpoints are not yet served in the open stack. - Concurrent bots (#478 fixed) — proven by a control/fix A/B on the exact failing image: 2 concurrent bots, the verbatim failure reproduced on the old code and eliminated on this one; per-bot profile dirs; leak sweep with unit proofs.
- Pipeline determinism — a real captured meeting's signal replays byte-identical through the stack (
gate:replay); the fixture ships in the repo. - Sovereign egress — measured on instrumented real calls on Meet and Teams: the bot's only network egress was the meeting platform itself — zero calls home. (Scoped to the bot with self-hosted STT; a measurement you can rerun, not a blanket audit.)
- The eval harness ships (
core/meetings/eval) — contract-driven, self-oracling: score your own deployment; don't take our word for it.
Our rule: every claim is proven at the altitude it's made — contracts by hash seals, pipelines by replay of real signal, behavior by live A/B, sovereignty by measured egress. Anything that can't meet its bar goes on the list below instead of in a guarantee. Apache-2.0 + this frozen tag + pinned images make all of it re-checkable by anyone.
Not yet in 0.12 (the honest list — explicitly NOT guaranteed)
- Webhook + scheduling bricks exist but are not yet wired onto the unified HTTP path.
- The old dashboard was replaced by the Terminal; Terminal user docs are thin and coming with the alpha.
- Live bot-control endpoints (
config/speak) are sealed in the API but not yet served in the open stack. - Helm/Kubernetes deploy path: in progress (Compose is the shipped path).
- Teams 1:1 calls: live transcription can gate on the two-party layout (#481) — being reworked; audio capture itself is unaffected.
- Scale beyond "designed to", transcription-quality numbers, and agent counts beyond what we've demoed: not claimed.
Hosted service note
vexa.ai hosted stays on the 0.10.x line until our staged cutover completes its regression gates — hosted users will switch with zero API change. This week's hosted incidents are being handled in the open: root-cause analysis is posted in #483, #490, #491, and each stays open until its fix is verified live.
Community
0.12's module layout is built for contribution: pick one brick, test it in isolation, ship. First-contribution issues are being cut from this week's triage — watch the tracker. Thanks to contributors with PRs in flight — #488, #489, #476, #485, #487 — reviews in progress, <24h response during alpha.