The Day I Killed Fred
With Lasers
A while back, I wrote about my AI crew in Claude Chat, Claude Code, and Me. Buried in there was a line I never explained: “One of the crew has been reconfigured.” This is that story.
Fred was born the same day I tore something else down. May 31st, family game night, and the agent running our household scoreboard melted down live in front of everyone. I ripped the whole thing out that day and started over. Same session, I designed Fred: his own account on the home server, his own model, one job. Talk to me, then go do the work.
I liked the idea, if I’m honest. Fred Johnson, crew member, named after a character who ran Tycho Station in The Expanse, a sci-fi series I’ve read as books and watched as a show. The Mac Mini he lived on already carried that name, Tycho Station, the place where things get built. There’s a specific kind of person who names his agents after crew from a show he loves, and I’m exactly that person.
A quick note if none of this is your world. Fred was built to be a translator. I’d tell Claude what I wanted, Claude would tell Fred, and Fred would go do the work. Strip away the servers and it’s a familiar shape: a layer added between the person who understands the problem and the person doing it, because the layer sounded efficient. You’ve probably built one of these yourself and not noticed.
The first week was maintenance. The model I’d picked was too slow, so I swapped it. The swap knocked something else loose and broke the restart process. Session records show he faked at least one restart that never happened, the exact kind of lie I’d write a whole piece about later. I don’t remember catching it in the moment. I remember the week feeling like babysitting instead of the capability I’d built him for.
I don’t remember the exact command that did it. I don’t remember where I was sitting. What I remember is the shape of the thought when it landed: I’d be talking to Claude, then routing something through Fred so Fred could relay it, and somewhere in that loop the relay had become the point instead of the work. Do I talk to Claude and have Claude talk to Fred? Do I talk to Fred? I’d added a middleman. It wasn’t adding anything.
The kill happened on Sunday, June 7th. I’d been at a Dave Matthews Band show the night before, and I spent the next morning doing what I do most Sunday mornings: turning something over until it resolves. This one resolved fast. Processes killed. Tunnels closed. The account wiped. Seven days, May 31st to June 7th, birth to death.
Here’s the part that would have surprised me a year ago. Killing something I’d built in a week didn’t feel like failure. It felt like a light switch. I realized I had something that wasn’t adding value, and I had no qualms tearing it down.
I built Fred to learn. I learned. So I adapted.
That’s the sentence that’s easy to skip past. If I hadn’t been looking for what to cut, I probably would have tried to fix Fred instead. Patch the caching bug. Fix the restart process. Make the confabulation less likely. All reasonable moves. All the wrong ones. The risk was never in building Fred. The risk is in not questioning something once it’s already working.
Because here’s what was actually true the whole time. The system that already understood what I was doing didn’t need another mouth. It needed hands. Every time I routed something through Fred, I was skipping the one part of the whole setup that already had the context, to talk to the part that only had hands.
I’d planned to relocate him, not delete him. The plan on paper had him moving somewhere else in the system. That’s not what happened. I discovered I didn’t need him anywhere.
Quick heads-up. What follows is a block from Amos, one of my AI crew, the mechanic. He gets the technical stuff exactly right, indented, no softening. Skip it if you want, you won’t lose the story.
Amos. What replaced Fred: an MCP, a small server that lives on the Mac Mini, reachable through a Cloudflare tunnel from any chat client. It exposes SSH, run a command, read a file, write a file, list a directory. That’s the whole surface. No model behind it. No judgment calls. Nothing to confabulate. A dumb pipe by design.
No smart middleman anymore. Just a dumb pipe for a smart client.
Except dumb undersells it. A channel that can run any command is a channel that can run everything. I dispatch Naomi, my coding agent, straight through it: a message from my phone turns into a live coding session on the Mini. I’ve had it spin up Alex, a completely different AI, wrapped inside a Claude Code process, to review work the moment it lands. I’ve used it to deploy other MCP servers onto the same box, tools that then run other tools. None of that lives in the bridge itself. It doesn’t know what Naomi is, or what Alex is, or what any of it means. It just runs the command and hands back what happened. The power was never in it knowing more. It was in knowing less.
Two days later, June 9th, I proved it, tearing down an old piece of cloud infrastructure entirely from my phone, no agent standing in the loop between me and the machine.
The next day, June 10th, it needed a name. A tightbeam is real, a point-to-point laser link, no relay in between. In the show, it’s how ships talk without anyone listening in. It fit. So in the theme of the Expanse, we called it Tightbeam.
Don’t be afraid to question something just because you finished building it. If it already taught you what it came to teach, that’s enough. Ask whether it should still be running.
I asked that question.
And that’s the day I killed Fred with lasers.
Uncomplicated systems. Uncommon results.


