Software engineering for systems that have to hold up.
We build and audit the software around language models: the tool layer, the registry, the boundary between a model and the system it is allowed to touch. Most AI features demo well and then struggle in production, and the cause is usually a decision made in that layer months before anyone noticed. It is the part we are good at.
Latest paper
A Second Mode, Kept Behind on Purpose
Our long-form writing system has a second output mode that we have left behind on purpose while the architecture settles. What a lagging mode bought us, what it costs, and the rule that stops anyone spending on it too early.
Read the paperWork
Quillsmith
A long-form writing system for authors. Two writing applications and a gateway over one tool registry, with an external model-facing surface that is a projection of that registry rather than a copy.
Product, in development
Generative rendering
Real-time graphics from generative models, built inside a game because a game is an unforgiving test of it. Research, not a service line.
Write-up pending
Three ways to start
Different sizes of commitment, meant to be read as a ladder. The audit answers whether the rest is worth doing.
LLM feature audit
Two weeks, fixed price, a written deliverable
A read of the layer your AI features actually run on. It ends in a document you keep, including when the finding is that nothing needs doing.
Fixed-scope build
Prototype through to production
A defined piece of work with an agreed boundary, scoped narrowly enough that the estimate means something.
Fractional engineering
Ongoing, days per month
Continuous involvement with a team that has the capability but not the capacity. Architecture review and the judgement calls that are cheap to get right early.
Starting
Email with what you are building and where it is getting difficult. You will get a direct answer about whether this is work we can do well, including when it isn't.