Episode 1 — The email I forgot to read for ten weeks

A few weeks ago, my inbox automation surfaced an email I’d never opened.

It had been sitting in my Gmail since mid-February. Subject line, sender, four polite paragraphs, a clear ask. The kind of email a human being writes when they want to talk business with you.

I had not seen it.

Not because I was hiding from it — I just never noticed. It landed during our annual post-CactusCon coma — the two-week haze where we stagger home from the con with a tote of unsold inventory, a list of “I’ll-follow-up-Monday” promises, and roughly zero appetite for inbox triage. By the time we surfaced, the email was forty-six newer messages deep. Then a hundred. Then a few hundred. Then it was March. Then it was April.

Then a backlog grooming pass on my BadgePirates inboxes flagged it, the classifier promoted it from “long-tail noise” to “human reply candidate worth eyes,” and a Discord notification dropped in front of me with a draft reply already written.

That email turned into a real conversation. That conversation turned into a small consulting engagement booked for October. Not life-changing money, but real money — for work I would not have known to ask about, from a contact I would not have remembered I had.

Nothing about that contact was hidden. The email was there. I just couldn’t see it.

That’s the part I want to talk about.


The shape of the noise

BadgePirates runs on roughly one and a half humans. Two of us, both part-time, both with day jobs, both with families. Between us — and across the half-dozen mailboxes a small business accumulates whether it wants to or not — we get a staggering amount of email.

Most of it isn’t real. Newsletters I subscribed to two years ago and forgot about. Conference promos. Supplier announcements. SaaS pricing changes. ACH-fraud phishing cosplaying as a customer. The newer flavor — AI slop, the polished-but-empty cold outreach generated by somebody else’s agent and fired at us in volume — has been getting its own column on the spreadsheet recently.

Real, business-relevant email is in there. It’s just embedded in the noise, and most of the noise is now polished enough to pass for the real thing on a quick glance. The email I missed in February looked, to my scrolling thumb, exactly like another newsletter. The agent read it, classified it on its actual substance, and saved it.

That’s it. That’s the unfair advantage. The agent isn’t smarter than I am. It just isn’t tired, isn’t busy, and isn’t going to skim.


The shape of the work behind the badge

There’s also the part nobody sees.

Every conference badge we’ve ever made is its own self-contained little universe. A KiCad project for the schematic and PCB. A separate repo for the firmware. A build guide so a hobbyist can flash a fresh board without calling us. A bill of materials with twenty-plus parts, each with a part number, a supplier, a lead time, and a substitution risk. A page on the site that explains what the badge does. A Tindie listing for the people who want to buy one after the con. A flasher tool if it needs one. A blog post when it’s done. Customer support threads for the inevitable “I plugged it in and nothing happened” conversation a year later.

Then multiply that by every conference we’ve made a badge for since 2016. And then add to it the things every business has but doesn’t ship as a product: domain registrations across three registrars, certificate renewals, OS updates on the machines that build the firmware, M365 mailboxes, financial reconciliation, inventory at our supplier-of-the-month, sales tax filings in states we’ve shipped to, and the kind of paperwork an LLC accumulates simply by existing.

None of it is hard. All of it is real. And all of it generates its own steady drizzle of emails, alerts, prompts, and “hey, can you just real quick…” tickets that also have to land in front of one-and-a-half humans.

That’s the work the agents are absorbing. Not the badges, not the design, not the customer conversations — the boring, draining, infinite stuff that is the actual cost of running any small business at any size, and that scales with everything you’ve ever shipped, not with what you ship next.


What I’d been telling myself about AI

I wrote a post on this blog a year ago, half-joking, about my “AI overlords.” Back then “AI overlords” meant a couple of scripts and an LLM I’d duct-taped together, mostly for fun. The honest version of that post would have been: I have some toys, they’re fun, I don’t really need them.

That’s not where we are now.

There are seven persistent agents running on our behalf around the clock now — inbox triage, finance reconciliation, IT health, CVE monitoring, music inventory, trip prep, and the long tail of small things that used to fall on the floor. There’s also a development agent that writes and maintains most of the code the other seven run on — which is to say even the building is delegated. The buried-email case is the most photogenic example of what they do, but it’s not a one-off; it’s a Tuesday.

The reason it tipped from “fun” to “necessary” wasn’t the models. The models were good enough a year ago. What changed was the math. If we want BadgePirates to grow without doubling our hours or hiring someone we can’t yet afford, something has to absorb the long tail of operational work. The badges, the customer conversations, the design decisions stay with us. Everything else is up for delegation.


What the agent actually did

There’s a backlog grooming job that runs over our BadgePirates business mailboxes — the ones humans (customers, suppliers, conference organizers) write to. It reaches back through emails older than the watcher’s normal window, looks for messages that were never opened or replied to, and asks the classifier whether anything in there is signal. Usually the answer is no, it’s all transactional noise, archive it. Occasionally the answer is: actually, go look at this one.

The classifier itself is small and focused. It doesn’t decide whether an email is important. It decides whether it looks like a human being writing to another human being about something real. That’s a much narrower judgment, and it’s one I trust the agent to make.

When the answer is “go look,” the email lands in a Discord channel I actually read, with a drafted reply attached. I read the email, read the draft, send it or rewrite it. Total time, including thinking: about three minutes.

In this case, three minutes turned a forgotten email into a customer. The contact wrote to me. The reply went out as me. The October work is on my calendar. The agent didn’t replace any of that. It replaced the assumption that I’d see every important email if I just tried a little harder. I won’t. Nobody does.


What’s next in the series

The agents are doing more than the one example I led with. There’s a daily voice digest that turns the newsletters I actually want to read into a podcast for the commute. There’s an inbox triage loop that silences most of the noise so the rest is even visible. There’s a CVE monitor that quietly tickets new vulnerabilities into our project tracker, a finance agent reconciling transactions, an IT-ops agent watching the home network and shop machines. Each of those is its own story.

The next post is about the noise — how the watcher silences most of it so the rest can surface. The one after that is about the agents talking to each other through a shared task queue, which surprised me more than I expected once it was in place.

If you want the next one when it lands, the BadgePirates newsletter is the way I tell people new posts are up — it goes out monthly with the new writing, what we’re shipping, and the occasional behind-the-scenes thing that doesn’t fit on the blog. The Discord is where the running commentary lives in between.

— Kevin

Written on May 6, 2026