Spec-driven development
Keeps a human-reviewed specification in the repository as the source of truth — so plans, code and models can change without losing intent.
View Emery on GitHubBuild what matters. Get it live. Keep it working.
Software design is a human process. It takes people, reflection and collaboration to build great systems.





AI writes code in minutes, which moves the bottleneck to deciding what to build, verifying that it works and releasing it safely.
We practise human-led engineering — putting agents to work inside a delivery system they cannot redefine, with engineers in charge of it.
The controls travel with the work. Isolated workspaces keep changes away from production. Shared engineering standards give engineers and agents the same versioned rulebook and patterns, and non-negotiable rules fail at compile time. Review stays focused on design and judgement while one automated path verifies behaviour against the spec, gates the supply chain and promotes accepted code.
Chat history is not an audit trail. Our spec-driven development engine turns intent, documentation, tests and code into a specification people debate and seal in the repository — requirements, scenarios and architecture. Ambiguity is surfaced for human judgement, not buried in generated code. Swap the model; the specification stays.
Every application we build runs on our WebAssembly runtime — Rust, on Wasmtime. A component has no ambient filesystem, network or process access; it reaches infrastructure only through capabilities the host grants. With the target that narrow, even smaller models build within known bounds while engineers focus on the product.
The spec-driven development engine and WebAssembly runtime are freely available on GitHub. See the docs or read the code to see how they work together.
See how they fit togetherKeeps a human-reviewed specification in the repository as the source of truth — so plans, code and models can change without losing intent.
View Emery on GitHubRuns generated code in deny-by-default WASI sandboxes — with zero ambient authority and infrastructure bound by the host, not hard-coded in the app.
View Omnia on GitHubHow we help
We work out what is really in the way, set the boundaries and shape a first delivery worth doing. No maturity score. No generic AI programme.
Find the first moveNew system or old one: we use AI where it helps, senior people where judgement matters and a production path we already know.
You keep the specifications, tests, infrastructure and delivery knowledge. The next change starts ahead, not at zero.
Make the next change easier