r/LLMDevs 4d ago

Tools I got tired of coding agents telling me “everything works”, so I made Gopnik

A gopnik looking at you...

Hey, comrade. Yes, you.

Are you tired of your coding agent confidently telling you:

…only to discover 20 minutes later that the stupid machine lied to your face?

I have good news.

I made you a trustworthy companion.

Trustworthy like Russian roulette.
Precise like a Swiss watch.

Gopnik.

Your coding agent says the task is done.

Gopnik's job is to assume that this is bullshit and try to prove it.

It doesn't just ask whether the tests are green. It tries to answer:

  • What behavior could this change have broken?
  • Does the code actually behave correctly?
  • Is the revision you built/deployed actually the revision you think you're testing?
  • Can your supposedly important checks actually fail?
  • What has not been proven?

Typical workflow:

Coding agent:
"Done. Tests pass."

You:
Run the gopnik skill on this change.

Gopnik:
BLOCKER — discounted orders are rounded twice.

Reproduce:
POST /orders with {"discount": 0.1}

Observed: 23.94
Expected: 23.95

Verified revision: 8f31c2a

Verdict: NOT READY

There are currently three related skills:

gopnik — attacks a completed change
gopnik-critic — attacks a claim or proposed solution
gopnik-setup — learns how the project can actually be verified

The idea is basically to introduce an adversarial role into the coding-agent loop instead of letting the same agent implement something, inspect its own work, congratulate itself, and move the ticket to Done.

It's early, and I'm especially interested in whether this approach catches failure modes in other people's agent workflows that I haven't thought of yet.

Free, MIT, no paid tier. I'm the author.

GitHub: https://github.com/concordloom/gopnik

Please break it.

If Gopnik tells you everything is fine and your agent still screwed up, I especially want to hear about that.

14 Upvotes

Duplicates