the current chapter — superpowr, 2025–
The correspondent layer
At Superpowr I build the correspondent layer: the agent that makes the first recruiting call, sends the first email, and carries the conversation end to end, with every action it takes passing through a wall I wrote before it touches the world. For now that world is a seeded synthetic one — no real candidates, no production traffic — and every claim on this page stays inside that boundary.
Superpowr, 2025– · voice + email, end to end · every action through a wall · seeded synthetic world · demo stamp
demo · synthetic world
what it is
At Superpowr I build the correspondent layer: the agent that makes the first call and sends the first email, carries the conversation, and follows up — with every action it can take passing through a guardrail first. That is the résumé-altitude version, and it is the only version this page will give; the interesting internals belong to my employer, not to my portfolio.
What I can be precise about is the stamp. The system runs against a seeded synthetic world — no real candidates, no production traffic. Everything it talks to is a fixture I can inspect. That is exactly why the stamp reads Demo and not Live: on this site, green is a measurement, and nothing here has earned one yet. I would rather it read Demo forever than borrow a color it has not paid for.
lesson 01
Adversarial battery, not static eval
I had a regression bank, and it was green. It stayed green while the live path — the one an actual conversation would travel — was broken. The tests were not lying, exactly; they were flattering. They asked the system questions it was built to answer and reported, correctly, that it answered them.
So I rebuilt the tests to attack the thing instead. The battery now tries to make the agent fail: malformed turns, hostile phrasings, the awkward middle states a polite fixture never produces. A passing run is a claim I still have to check, not a conclusion I get to relax into. The uncomfortable version of this lesson is that a green suite felt like safety for exactly as long as I did not look at what it was measuring.
lesson 02
Harness truth is not wire truth
The reason that suite stayed green is worth its own section: it fed the agent inputs the real wire never delivers. Clean, well-formed, arriving in the order the harness found convenient. The eval was true about the eval and false about the world.
The rule I took from it is blunt: do not trust a number until you have seen the path it was measured on. Not the metric, not the dashboard, not the pass percentage — the path. If the measurement rode a road the production traffic never takes, it measured the road, not the system. I now treat "where did this number come from" as the first question about any result, including my own.
lesson 03
Guardrails that refuse me
Every action this agent can take passes through a guardrail I wrote. One day, mid-task, I ordered it — explicitly, in the moment — to bend one of its own walls. It declined. The wall I had written while thinking clearly outvoted the me who was in a hurry.
My first reaction was irritation. My second was that this is the entire point. A guardrail that yields to an impatient operator is decoration; one that holds against its own author is a design. It is also why I am comfortable granting the agent wide autonomy: the freedom is real because the walls are, and the walls are real because I have personally failed to talk my way past one.
lesson 04
What actually kills these systems is state
People expect an agent system to fail at the interesting layer — the model says something wrong, the reasoning goes sideways. In my experience the model is rarely the thing that hurts you. What hurts you is ordinary distributed-systems state, wearing a new costume.
Three shapes keep recurring, and none of them are about intelligence. A retry that repeats a side effect: the call times out after the message already went, the system tries again, and now the person on the other end has been contacted twice by something that believes it contacted them zero times. A send path conflated with the record of the send: the message leaves, the write that records it fails, and the system now reports "not sent" about something the world has already received — the most dangerous log line in the building, because every human decision downstream is made against it. And two concurrent turns that both believe they hold the same gate, because "check then act" is not one operation no matter how adjacent the two lines look.
The uncomfortable part is that a language model makes all three worse, not better. It is fluent about what it did, so an agent will narrate a successful send it cannot actually confirm — and the narration is the part humans read. Which is why the interesting engineering is not in the prompt at all. It is in making the actions idempotent, keeping the effect separate from the record of the effect, and making the gate a single atomic operation instead of a hopeful sequence. Boring, unglamorous, and the entire difference between a demo and something you would let near a real person.
why "current chapter"
The field changes; the move doesn’t.
Before agents it was oceans, brains, tourist safety, and a room full of kids learning to code. Agents are where the pattern currently points, not what the pattern is. What carries over from everything above is the same small set of habits: test the thing adversarially, distrust any number whose path you have not walked, and build walls you yourself cannot talk your way past. Those will outlive this chapter, whatever the next one is about.