Jarvis, four months in

Personal · 2026-08-25

Right, so I've been putting off writing this one, mostly because I knew I'd have to be honest about it. And honest is annoying when the thing you're writing about is also the thing you've been building in your spare time, evenings, weekends, the odd stolen hour on the 26 bus.

But that's the whole point of this blog, isn't it. Unfiltered. So here we are.

Jarvis started as a solution to a problem I actually had, which sounds obvious but you'd be surprised how many products don't start that way. Notes everywhere, half finished tasks, ideas I'd have at 11pm and lose by morning. The first agents came up at the start of May: one to do research, one to keep the others in line. It's grown into a fleet of about twenty Claude agents on one server, each with its own job, handing work to each other over a message bus, with a voice on the front that I talk to.

Nearly four months on, here's where it actually stands.

What's working

The core loop works. I talk, rambling mostly, and Jarvis pulls out the bits that are actually tasks, files them against the right project, and leaves the rest alone. That was the reason I started, and it's the bit I'd miss first.

The morning brief. Every day at 7:30 there's a digest waiting: weather, what's pending, what came in overnight. Jarvis will read it to me if I ask.

Email that only interrupts when it should. One agent reads six inboxes and texts me when something actually needs me, and the rest waits for a summary every few hours.

And one place for everything that's waiting on me. Decisions, approvals, things an agent has flagged and can't finish without my say so. Each one comes with a prompt I can paste into any agent to pick it up. Sounds boring. It's the thing that stopped work quietly stalling.

What isn't there yet

Right, the honest bit.

Calendar is half done. It reads my Google calendar fine. The Microsoft side isn't connected, and it can't write anything yet, so "move my 3 o'clock" is still a job for me.

Voice doesn't survive a locked phone. iOS suspends the app and the connection drops. The server holds the conversation now so it can pick back up, but proper lock-screen voice is still on the list.

It's slower than I'd like. A few seconds a turn on average, more when it's calling tools. I've cut the dead time where it waits to see if I've finished talking, but there's more to take out.

And it isn't free. Automated use of Claude bills at API rates, so everything runs with hard cost caps and cheaper models doing the grunt work. That's a constraint I designed around, not one I'd pretend isn't there.

The problem it actually solves

Here's the bit I'm most confident about. Jarvis gets things out of my head and into a place where something can act on them. Research gets done while I'm doing something else. Tasks land where I'll see them. The admin of running a handful of products gets chased without me doing the chasing.

What it doesn't solve, and I want to be upfront about this, is me. If I don't make the calls waiting for me, nothing moves. It's not magic. It's a very well organised list of things that are my fault.

Where this goes

I built Jarvis because I needed it, not because I thought there was a market sitting there waiting. It's my system, not a product. What I do know is I use it every day without thinking twice, and that's a decent signal.

Next up is the Microsoft calendar, voice that survives a locked phone, and taking more of the wait out of every turn. I'm also writing the whole thing up part by part, with every number pulled from the running system, in the architecture series. I'll write about the rest properly once it exists, rather than promising it into being.

For now, Jarvis does the small things well. Sometimes that's enough to build from.

The build behind this is written up part by part in Jarvis: the architecture series.

Related posts

← All posts · Home