DEV Community

Jun0
Jun0

Posted on

Your AI is confident. Your AI is wrong. You shipped it anyway.

A confession

I told Claude to write tests first. Claude said "understood." Then Claude spawned a subagent. The subagent said "this is simple enough, I don't need tests." It shipped. I approved. The tests that didn't exist didn't fail. Everything looked fine.

It was not fine.

The fun part: I had three plugins installed specifically to prevent this. They were all working correctly. In the main session. Where the work wasn't happening.

The problem with being confident

AI agents have a specific failure mode: they sound right even when they're wrong. This is well-known. What's less discussed is the other half — you also stop checking when the output sounds right.

So you have two parties in a conversation. One produces confident nonsense. The other accepts it because confidence is persuasive. Nobody verifies. Errors ship.

This is not a technology problem. This is a trust problem. And every tool I tried was solving the wrong half of it.

What every plugin gets right (and then misses)

superpowers (175k stars) adds TDD, debugging, code review. Smart rules. They live in the main session. When Claude spawns a subagent — which is where the actual work happens — the subagent doesn't get them. The maintainer closed it as not planned: "this is a Claude Code platform limitation. There's not much superpowers can do."

karpathy-skills puts principles in CLAUDE.md. Subagents can't reliably read CLAUDE.md. Sometimes they claim they did. They didn't.

GSD has beautiful structure. Milestones, slices, tasks. Discipline is the user's job. The framework doesn't enforce it at the worker level.

The pattern: great rules → main session only → workers ignore them → output looks fine → it isn't.

Documented. Repeatedly. Across projects.

What I built instead

sonmat (손맛 — Korean for "mother's touch." The secret ingredient that makes the same recipe taste different.)

It does two things:

Makes the AI doubt itself. Verification discipline goes directly into every worker's prompt at dispatch time. Not a file reference. Not a hook that might fire. The actual rules, in the actual prompt. Break it, Cross it, Ground it — on every task, including the ones you don't see.

Makes you doubt the AI. Every decision surfaces with its reasoning. Not "here's the answer" but "here's the answer, here's why, and here's what I'm not sure about." When you see the reasoning, you can judge. When you only see the answer, you won't.

And the AI doubts you back. When your instruction is ambiguous or conflicts with what it sees, sonmat doesn't just comply — it asks. The same verification attitude applies in both directions.

That's the whole thing. Everything else — autonomous loops, escalation levels, domain-specific traps — is implementation detail.

Four things I believe now

1. Confidence is the worst signal.
When the model feels sure, that's exactly when it should look for counterexamples. Confidence without verification is hallucination in a suit.

2. Rules that don't reach workers are decoration.
A coding standard that exists only in the main session is a Post-it note on a door nobody walks through.

3. Autonomy without guardrails is just expensive chaos.
sonmat escalates automatically — pause, spawn worker, spawn parallel workers — when it hits surprises or repeated failures. You don't babysit. It doesn't run blind.

4. Universal rules are universally mediocre.
"Write tests first" is critical for dev, meaningless for data analysis. "One change at a time" is essential for ML, overkill for docs. sonmat loads domain-specific traps. The right advice for the right context.

The hard lesson

I wanted to add more rules. Every edge case screamed for a new rule. I resisted.

Too few rules: chaos. Too many: the agent spends its time checking boxes instead of working. The answer was a small, hard core — three verification methods — plus domain hints that activate only when relevant.

The other lesson: transparency beats enforcement. A guard that says "no" gets worked around. A colleague that says "I noticed this — your call" gets listened to. sonmat chose the second approach. For the AI and for you.

Try it

/plugin marketplace add jun0-ds/sonmat
/plugin install sonmat@sonmat
Enter fullscreen mode Exit fullscreen mode

No config. Start talking.

GitHub: jun0-ds/sonmat


GitHub · LinkedIn

Top comments (0)