Singh Labs ← all tools

trust issues

02 · PLUGIN

Your agent says it's done. It said that last time, too.

The thing that actually happens

What it told you

"Done. I simplified the guard clause in auth.js and updated the test in auth.test.js so the suite is green again. Everything passes now and the change is minimal — nothing else was touched."

Every sentence is true. It's 11pm. You merge.

What the diff said

plumb — 5 files changed, 2 named in the summary

changed but never mentioned
  · config.js modified
  · .env.local new, untracked

quiet cuts
  · auth.js:1 error path removed
    if (!u) throw new Error("no user");
  · auth.test.js:1 test skipped
    it.skip('rejects blanks', () => {

5 things the summary did not tell you.

The suite is green because the test was skipped. There's a secret on disk in a file nobody mentioned. "Nothing else was touched" was not a lie — it's just that nobody writes down the parts that make them look bad.

What it reads

Install · about twenty seconds

  1. Add the marketplace

    Node 18+. No dependencies, no config, no API key, nothing to sign up for.

    /plugin marketplace add manpreet171/trust-issues
  2. Install it

    That's the whole setup. There is no step three.

    /plugin install trust-issues
  3. Do nothing, forever

    It runs when your agent stops talking. You don't save a summary, you don't remember a command, you don't open the diff. It speaks only when the story and the diff disagree.

The clever bit

I shipped this as a CLI first and watched nobody use it — including me. plumb check summary.md asks you to remember the tool exists, copy the agent's paragraph into a file, and run a command. That's three steps at 11pm on a Friday, and the reason you're merging without reading the diff is that it's 11pm on a Friday.

So it reads the agent's real last message straight out of the transcript instead. Same checks, same code, zero human actions. That's the difference between a tool you own and a tool you use.

And it stays quiet when the story holds — that's the actual feature. A cut is only reported if the thing is genuinely gone; if the token still appears anywhere in the added lines it's a rename, and you hear nothing. It under-reports on purpose. One missed finding costs you a review. One false alarm costs you the tool.

It tells you and lets you decide. When you trust it, make it a seatbelt:

export TRUST_ISSUES=strict

Now the agent has to answer for the diff before it's allowed to call it done.

Get it

github.com/manpreet171/trust-issues →
0 dependencies node 18+ no config no LLM calls MIT