charter
Write, revise or review a charter: the one document that tells an executor what to deliver, what is out of bounds, what the owner…
Prove that a reported run caused its intended real effect. Walk the executor path from entry to effect, capture one observable per hop, and report a result a no-op could not produce.
$ npx -y skills add sno-ai/sno-station-skills --skill agentic-walkthrough --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/agentic-walkthroughContext preview
The summary Claude sees to decide when to auto-load this skill.
Prove that a reported run caused its intended real effect. Walk the executor path from entry to effect, capture one observable per hop, and report a result a no-op could not produce.
name: agentic-walkthrough
description: "Prove that a reported run caused its intended real effect. Walk the executor path from entry to effect, capture one observable per hop, and report a result a no-op could not produce."
requires:
programs: []
harness:
- {slot: 4.shell, need: required}
- {slot: 4.file-read-write, need: required}The stance is the whole method. You are not a reviewer standing outside the code with a checklist; you are the thing the source describes — the job, the stage, the handler — and you run it in your head, hop by hop, exactly as it would run, noticing every switch you pass and every place your output goes. Only then do you turn to the real system and make it show you that what you just walked actually happened. The principle: BE the executor, then make the executor prove itself.
Ordinary debugging starts from a failure — an error, a red test, a wrong number. This starts from the opposite and much quieter case: **everything reports success and you still do not know whether the work happened.**
That case is real and it is not rare. A stage that cannot do its work can still report `done`. A job can start, finish, write a trace, and pass its own verification while touching nothing. No test suite catches this, because no assertion in the suite is false.
Three moves, in order. How far to take each is your judgment — often the first cannot finish without the ones after it.
Put yourself where the code sits and go hop by hop from entry point to effect. You are reading, not executing, which is the whole point: a live run cannot show you the branch it never took.
Three questions at each hop are usually enough:
feature flag, a job type, a default argument.
bugs live. Loud failures are already visible — you are hunting the silent ones.
shown the hop does anything.
**The last hop is the one everyone skips and it is usually the decisive one: is this output visible to whatever consumes it downstream?** A stage that runs perfectly and writes where nothing reads is indistinguishable from a stage that never ran. Check the reader's path, not the writer's — they are frequently not the same file, the same directory, or the same database.
Where to start and how deep to go is judgment. Go where the switches are dense, or where the evidence gets thin.
The walk tells you which hops matter. A probe is how you make one of them prove itself.
**Keep each probe narrow: one observable that only the real thing could have produced.** A broad health check is worth little here, because everything passes it — that is the whole problem. The walk already told you what this hop is supposed to do; probe exactly that.
These classes come up again and again, and each fails in a way that looks fine from the caller's side. Treat them as places to look, not a checklist to complete.
record behind it. A log says a write happened; only the row can distinguish a correct write from one that hit the wrong record, wrote the wrong value, or was counted but never committed. Landed → the defect is downstream. Did not land → the write logic is wrong, and nothing built on top of it is worth tuning. **Expect to need the product's own accessor** — encryption, a key held elsewhere, a custom codec. A generic CLI failing to open the store is normal, not a wall.
it the same one the reader queries? Path resolution usually consults several sources in an order nobody remembers, and the first one wins.
model or account? Then the part usually skipped: **does the response contain what the caller assumes?** A 200 with an empty body sails through an `if (ok)` check. Zero calls is the loudest possible answer and the easiest one to miss.
just differently. Ask which device the work actually landed on, not whether setup returned without error. Same shape for any "configure, then hope" step.
gets cleaned, a relative path resolved from a different working directory, an output written somewhere nothing reads — all of these leave a successful write behind.
actually it, is it listening, and did it stay up — or exit a second later while the parent carried on?
This is the one part worth being strict about, because it is what separates a gate from a reading exercise.
**Finish with a number a no-op could not have produced, plus the line where each action happens.** *N rows changed, M requests sent, and here is where I can see those N rows differ.*
Most wrong conclusions here come from a check that could never have said anything else. **Prove your check could have produced the other answer** — feed it a case you know is positive and
Sno Station Skills: 31 tested skills that turn Claude Code and Codex into one working team. Cross-vendor peer review, automatic handoff when an agent hits its quota, a one-page morning brief, work orders with proof, and a nightly loop that learns from your own sessions. Open source, installed with one sno setup.
Write, revise or review a charter: the one document that tells an executor what to deliver, what is out of bounds, what the owner…
Check external services, hosts, browser sessions, model endpoints, and agents before an end-to-end run. MANUAL-ONLY: load when a…
Classify one unexpected end-to-end test failure as a product defect or an environment fault needing a new preflight check.…
MANUAL-ONLY: challenge a product idea, design, PRD, or architecture from first principles. Use only when the user names this…
Write the least code that works, and cut what an AI agent over-built. Use on any coding task: write, fix, refactor, or review a…
Check agent-produced plans, tests, or code against the owner's actual intent. Find missing meaning, unrequested work, stale…