The product
Kalos: the spec that runs
Kalos is a C++ application server that interprets ADL, a YAML Application Definition Language, as a complete backend. One binary. No generated code. The specification isn't documentation of the application; it is the application.
The spec is small enough for a human to review in an afternoon, precise enough for the runtime to enforce on every request, and structured enough for an AI agent to author.
From one YAML document, Kalos derives:
- Data model & schema (migrated atomically when the spec changes)
- REST API + a generated OpenAPI 3.1 document
- Role-based permissions, down to the field level
- State machines with guarded transitions
- Validation and cross-record business rules
- Workflows, scheduled tasks, and notifications
- Full audit history of every change
Go deeper
-
Architecture
How kalosd is built: a C++20 microkernel, a versioned plugin ABI with a load-time handshake, and six plugin archetypes. Nothing in core but orchestration.
-
ADL Reference
The full ADL v0.3 specification: 44 chapters across five volumes, plus the Complete Reference and LLM Authoring Spec.
-
Seeds
Complete, runnable application domains you can drop into the runtime and adapt: permitting, LIMS, e-commerce, CMS, and more.
-
Writing
The Description vs Execution series: where ADL sits against OpenAPI, SQL, GraphQL, UML, and the rest, including what ADL can't express.
-
White papers
Reference ADL domains by industry: defense, energy, financial services, life sciences, and research administration.
The exits
Adopting a runtime is a commitment, so the exits are deliberate and worth stating up front. Your data lives in plain PostgreSQL or SQLite tables with predictable names. Any tool you already own can read it. Your API surface is standard OpenAPI 3.1, generated per domain. Typed clients in any language come from the standard toolchain, not from us. And the same ADL document can be fed to a code generator to produce a conventional codebase if you ever leave the runtime entirely. Generation is the emergency exit, not the operating mode — that inversion is the design.
Building something that has to survive an audit?
Talk to us about ADL, Kalos, and where a spec-driven backend fits.
Start a conversation →