<p>Nova is in production. I want to be precise about what that means, because "production" gets thrown around loosely in AI circles and I'd rather be specific than impressive-sounding.</p><p>Nova is my personal multi-agent AI system. It runs across 34 agents right now, split across a few broad categories: general chat and reasoning, pipeline execution, ERP specialists that understand AIREP's domain, and language tasks. Each agent has a defined scope. Orchestration means there's a layer above them deciding which agent — or sequence of agents — handles a given request. That orchestration layer is now live and running real workloads, not just test cases.</p><p>The reason I built it this way rather than just calling a single LLM for everything comes down to reliability and composability. A general-purpose LLM call is fine for a one-off question. It's not fine when you need consistent, structured output from a system that touches your ERP data, your email, your project notes, and your calendar — sometimes in the same request. Specialised agents with narrow responsibilities fail in more predictable ways. When something breaks, I know roughly where to look.</p><p>Getting here took longer than I expected, mostly because orchestration is genuinely hard to test. You can unit-test an individual agent reasonably well. You can check that it returns the right shape, that it handles edge cases, that it doesn't hallucinate field names. But testing the orchestration layer means testing how agents hand off to each other, how context is preserved across hops, and how the system degrades when one agent returns something unexpected. That last part — graceful degradation — is where most of my debugging time went.</p><p>One thing I didn't anticipate: the volume of small decisions that compound. Which agent owns ambiguous requests? How much context do you pass downstream versus re-deriving it? When does an agent pipeline need a human checkpoint versus running autonomously? None of these have clean answers. I've made calls on all of them, and some of those calls will turn out to be wrong. That's fine. The system is observable enough that I can revise them.</p><p>The next goal I'm working toward is a self-improvement loop — agents that can review Nova's own code, flag issues, and propose refactors. This sounds more exotic than it is. The practical version is: an agent with read access to the codebase, a structured review prompt, and output that goes into a queue for me to approve or reject. I'm not chasing autonomous self-modification. I'm chasing faster iteration cycles where the AI does the first pass on its own maintenance and I stay in the loop for decisions.</p><p>Nova also sits behind keirantrace.com as the backend AI service, which means it's not just a personal productivity tool — it's part of how I demonstrate AI integration capability to clients and collaborators. That dual role shapes how I build it. It has to be robust enough to be a portfolio piece, but it also has to be genuinely useful day-to-day, because I'm the primary user. Those two constraints keep each other honest.</p><p>I'm not going to pretend 34 agents is a magic number or that the architecture is final. It reflects where the work is right now — the domains I'm actively operating in, the tasks that benefit most from specialisation, and the integrations I've had time to build properly. It'll grow as the work grows.</p><p>What I can say is that having a production orchestration layer changes how I work. Tasks that used to require me to manually pull context from three different places and synthesise it now have a pipeline. That's the compound advantage I was after — not AI as a novelty, but AI as infrastructure that makes the rest of the work faster and less fragmented.</p><p>More updates as the self-improvement loop takes shape.</p>
Nova Is in Production: What 34 Agents Actually Looks Like
Nova, my personal AI system, has crossed into production orchestration. Here's what that milestone honestly means — and what I'm building toward next.
Comments
No comments yet — be the first!
Leave a comment