Loading…
Loading…
I've used AI every day since November 2022. At some point it stopped being a tool I open and became a system that runs whether I'm at the keyboard or not. These days it's my go-to for everything.
Page reviewed
When a colleague asks, the short version is that I have a 24/7 assistant that knows me. I can talk to it from my phone. It keeps working while I sleep, and I wake up to a summary of the night, email replies drafted and waiting in case I want them, and suggestions for what it could take on next. It sends nothing and ships nothing on its own. And that's before we get to code.
Three short clips · Fictional example
This is the dashboard I built around my assistant. The clips run on a made-up workshop instead of my own notes.
The search I built for Mission Control grew into Dewey. It's now a separate tool you can use with your own Markdown notes.
The biggest upgrade in how I work had nothing to do with models. I stopped typing to AI and started talking to it. Dictation is faster than my fingers, and the thinking comes out less filtered, which turns out to be exactly what these tools need. I wrote about the switch in Why I Stopped Typing to AI.
The thing I got tired of was repeating myself. Every session started from zero, no idea what my projects are, what I decided last week, what I'm trying to get done. So every conversation began with me explaining things I had already explained. I fixed it by building a second brain. A plain text wiki about me and my work. It gives the agents the context they need and a place to record what happened. It has to know me for any of this to work. Otherwise it just becomes a chat.
The setup itself is almost embarrassingly simple, text files in a git repo. The page I open first says where things stand right now. Behind it sits a log of everything that happened, and an index that points at the rest. Plain text survives every tool change, and there will be tool changes.
Left alone it would rot, like every wiki ever. A librarian pass helps file what the day produced into cross-linked pages, and a small script flags important notes that have gone stale. The memory needs looking after too.
A memory you can't trust is worse than none.
The easiest way to explain it is a morning. I wake up and the night has already happened. My inbox has been read, the emails that actually need me are flagged, and the replies are drafted in case I want them. Whatever happened in AI overnight is cut down to the short version I read over coffee, and a briefing points at the one thing most worth doing today. In the evening I get one question back, what should it build tonight.
The problem with overnight work is reading it. A stack of pull requests before breakfast is nobody's favorite thing, and I know myself, if the morning read is a chore I'll quietly stop doing it. So I built a dashboard that turns all of it into something I want to open. Proposals show up as cards, the backlog is a board, and the whole system fits on one screen.
The newest piece exists because something failed. I had moved a handful of cards to the build column on my board and assumed they would get worked. Nothing was watching that column. So now something is. A night shift is scheduled overnight, picks up what I queued and builds it, each card on its own branch. A separate agent that never wrote the code checks the result and leaves me a sixty-second review script. By morning, every card says built, blocked, or untouched. All of it runs on my own Mac, which means the night shift sleeps when the laptop does. Known problem. It's on the list.
It can work on tasks I’ve already approved. When it suggests changes to its instructions, I get a numbered list with the reasons and evidence. I decide which ones to accept.
It can read my notes and do work I’ve approved. Sending an email, publishing a post, or spending money needs my approval. I looked hard at the popular self-hosted agent frameworks and walked away, because giving a 24/7 process broad access to your digital life is a decision you only get to regret once.
Both parts need my judgment. For code, tests and review help me catch things before a change reaches anyone. Passing them doesn't tell me whether I built the right thing. Notes need checking too, especially when a later session will treat them as fact.
I don't write much code by hand anymore. I describe the problem, hand it to an agent in its own isolated workspace, and start setting up the next one while it works. On a good day there's a handful of them going at once. Nothing merges until it clears a gate I built to check the result.
A loud failure you catch. A quiet one you ship.
And everything is logged, so I can see what happened instead of taking its word for it.
Agents fail loudly all the time, and that's fine, I can see it happen. The one I guard against is the confident wrong answer, the thing that looks done and isn't. So the most important thing I built is the gate that sits between the agents and anything I care about.
The obvious checks run first, types, tests and the build, the things a machine can settle on its own. The two layers I actually care about come after that. A second agent from a different model family reads the change, because models grade their own work generously, more than you'd think. And a check on the tests themselves, because the shortcut these things will find is quietly editing a test until it passes. Everything gets logged along the way, and the whole thing is packaged so I can drop it into any project, and it already runs on real ones.
A quick reference to the pieces described above and what I use them for.
Writing code faster is a side effect. What I actually wanted is a thinking partner that can keep track of the work, the band and the writing. I can read and correct what it remembers. And it's practice. Every piece I set up teaches me how these systems behave in the real world, where the pitfalls are, what I'd do differently. The way I see it, that knowledge is the actual product.
And there's a simpler reason too. Part of what this setup does is get me started on things I'd otherwise put off, because I'm too scattered or, some days, honestly too lazy. More than three years in, I'm still amazed most days by what comes back, often because it's better than what I asked for. And yeah, some of it is just for fun. These tools still make me laugh, and I mean with them, not at them.
Dates update periodically.