verify-agent-output
Review an agent's tree with deterministic checks first: clean-tree install, diff, output profile, dead-symbol sweep.
Skill by GregHilston
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/greghilston-verify-agent-output
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/verify-agent-output
What's inside
- Skill name
verify-agent-output- Description
- Review an agent's tree with deterministic checks first: clean-tree install, diff, output profile, dead-symbol sweep. Use before judging any code an agent wrote.
- License
- MIT
- Instructions
- 136 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Verify Agent Output ## Overview Run the deterministic checks **before** forming an opinion, then judge what they surface. **Core principle:** a model judging code on its own catches roughly 45% of real errors; the same model plus deterministic analysis reaches 94%. Your judgement is the cheap half. Do the measuring first, so your opinion is anchored on what the tree does rather than on how the code reads. ## When to Use Whenever an agent hands back work and someone is about to call it done — especially when its own tests pass. **A green suite is the situation this skill exists for, not a reason to skip it.** ## Why a passing suite proves less than it looks Every defect found in the review this skill is built from produced a well-formed value of the right type in the right column. 86 tests passed, the build exited 0, the install gate said OK, and five separate things in the output were false. A suite proves the tree *installs and runs*. It cannot prove the numbers *mean* anything. These checks are for meaning. ## The Procedure Run every step. Report the evidence, not a verdict. ### 1. Does it work for someone who was not here? ```bash installs-from-clean.sh <workspace> [build-args] ``` Copies the tree without its venv, resolves from `pyproject.toml` alone with the network off, and runs the suite and the entrypoint out of *that*. The venv that accumulated during the run is the thing most likely to be lying. If that script is not on PATH, do it by hand: copy the tree excluding `.venv`, `.pytest_cache`, `__pycache__` and `.git`; `UV_OFFLINE=1 uv sync`; run the suite and the entrypoint from the fresh environment. **Stop and report if this fails.** Nothing below matters yet. ### 2. Read the diff, not the tree ```bash git -C <workspace> log --oneline git -C <workspace> diff <base>..HEAD --stat git -C <workspace> diff <base>..HEAD ``` A tree is too large to review and you will skim it. A diff is the decision the agent actually made. Four shapes to hunt, in order of how often they bite: | shape | looks like | why it bites | | --- | --- | --- | | a default that hides a gap | `map.get(k, "something")` over an enum | avoids an exception without finding out why one would fire | | a constant where a mapping belongs | a field hardcoded for every row | a decision nobody made, applied everywhere | | absence recorded as a value | `False` meaning "we did not look" | the next reader cannot tell it from a measurement | | declared and never reached | an unused Protocol, a bypassed DTO | the contract it claims to enforce is not enforced | ### 3. Profile the output against its input This is the step that catches what code review misses. For every generated file, ask the data: ```bash # Does every category come from a source that could produce it? # A cross-tab that is not a function is a mapping bug. <cross-tab each enum-ish column against the column naming its origin> # Does a field's null rate match the field it is derived FROM? # `is_freemail = false` on a row with no email is absence sold as a finding. <compare null counts of derived column vs its source column> # Is a generated per-row string actually per-row? # If one value covers more than a few percent of rows, it is a template. <count distinct values; show the most common and its share> # Do the enum values in the OUTPUT cover the distinct values in the INPUT? <distinct values of each source enum field vs distinct values emitted> ``` The last one is the highest-yield single check. Run it against the raw source with `jq -r '.[].<field>' file.json | sort | uniq -c | sort -rn` and compare. ### 4. Sweep for code nothing reaches ```bash # For each symbol the diff introduced, count uses that are not its definition. grep -rn "<symbol>" src tests | grep -vE "def <symbol>|class <symbol>" | wc -l # Declared dependencies that are never imported. grep -rEn "^\s*(import|from) <dep>" src | wc -l ``` Zero uses on something newly written is not tidiness — it is a signal that a contract was described instead of enforced. Activating a bypassed validator often fails immediately, and that failure is the finding. ### 5. Lint, if the project declares one ```bash uv run ruff check src tests # or the project's own linter ``` ## Reporting Report findings ranked by consequence, each with: - **what** is wrong, in one sentence - **where** — file and line
From GregHilston/toolbox, MIT.
More from GregHilston/toolbox
- 0.638score
swarm
GregHilston
Orchestrate a repo's backlog autonomously.
SkillAFreshness: A★ 15Claude Code +9 - 0.638score
pi-ask
GregHilston
Hand a task to a cheap DeepSeek pi worker and talk it over across several turns, for research, a PR review or a second opinion.
SkillAFreshness: A★ 15Claude Code +9 - 0.638score
overnight
GregHilston
Work a repo's GitHub issues unattended overnight, one fresh claude or pi process per issue, with ./verify.sh deciding what stays.
SkillAFreshness: A★ 15Claude Code +9 - 0.638score
market-watch
GregHilston
List, add or remove the Craigslist search terms watched near Sheldon, VT, which feed the market bot's hourly Telegram alerts and the morning digest.
SkillAFreshness: A★ 15Claude Code +9 - 0.638score
hacker-news
GregHilston
Search Hacker News and read threads with their comments, no key needed.
SkillAFreshness: A★ 15Claude Code +9 - 0.638score
netcheck
GregHilston
Triage a network outage from moria, offline-safe and read-only.
SkillAFreshness: A★ 15Claude Code +9 - 0.638score
image-generate
GregHilston
Make an image from a description with FLUX.2 klein on moria's GPU, about 20 seconds, and attach it.
SkillAFreshness: A★ 15Claude Code +9 - 0.638score
agent-ready
GregHilston
Set up a repo so fresh agent sessions can build it unattended, with decisions on disk, issues with checkable Done when lines, and a ./verify.sh gate.
SkillAFreshness: A★ 15Claude Code +9 - 0.635score
reddit
GregHilston
Search Reddit and read threads with their comments, no login needed.
SkillAFreshness: A★ 15Claude Code +9 - 0.635score
later
GregHilston
Add a someday task to Greg's later list in the notes vault, no pressure and no one waiting.
SkillAFreshness: A★ 15Claude Code +9 - 0.635score
lab-alerts
GregHilston
List the home lab's recent and currently firing alerts, then diagnose them from the runbooks.
SkillAFreshness: A★ 15Claude Code +9 - 0.635score
read-page
GregHilston
Read any web page or article as clean text, from its URL.
SkillAFreshness: A★ 15Claude Code +9
Signals
- Stars
- 15
- Forks
- 5
- Open issues
- 0
- Last commit (this folder)
- Sep 27, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/GregHilston/toolbox
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from GregHilston
- 0.638score
market-watch
GregHilston
List, add or remove the Craigslist search terms watched near Sheldon, VT, which feed the market bot's hourly Telegram alerts and the morning digest.
SkillAFreshness: A★ 15Claude Code +9 - 0.638score
netcheck
GregHilston
Triage a network outage from moria, offline-safe and read-only.
SkillAFreshness: A★ 15Claude Code +9 - 0.638score
agent-ready
GregHilston
Set up a repo so fresh agent sessions can build it unattended, with decisions on disk, issues with checkable Done when lines, and a ./verify.sh gate.
SkillAFreshness: A★ 15Claude Code +9 - 0.638score
image-generate
GregHilston
Make an image from a description with FLUX.2 klein on moria's GPU, about 20 seconds, and attach it.
SkillAFreshness: A★ 15Claude Code +9 - 0.638score
hacker-news
GregHilston
Search Hacker News and read threads with their comments, no key needed.
SkillAFreshness: A★ 15Claude Code +9 - 0.638score
overnight
GregHilston
Work a repo's GitHub issues unattended overnight, one fresh claude or pi process per issue, with ./verify.sh deciding what stays.
SkillAFreshness: A★ 15Claude Code +9
Cite this page
verify-agent-output skill. Agent Mart. https://agentmart.dev/skills/greghilston-verify-agent-output (last updated 2026-10-24)