dry-run-coach

dry-run-coach is a skill for Claude Code, Codex from Far-200/think-before-code. It costs 77 tokens per session (1,572 once invoked), scanned A, original, MIT.

A guided exercise for manually tracing an algorithm step by step on one concrete input. This kind of trace records the changing values of the algorithm's variables so you can check how it actually behaves.

In plain words
What is it for?
Use it when you already have an approach to build a step-by-step state table, compare the final state with the expected output, and find errors in your reasoning.
Why use it?
Simply looking at code or saying that an algorithm works can hide mistakes in its state changes and final result.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/far-200/think-before-code/dry-run-coach
Any agent
npx skills add Far-200/think-before-code --skill dry-run-coach
Clone the repo
git clone --depth 1 https://github.com/Far-200/think-before-code

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for dry-run-coach

README.md
[![agentmods](https://agentmods.dev/badge/skills/far-200/think-before-code/dry-run-coach.svg)](https://agentmods.dev/skills/far-200/think-before-code/dry-run-coach)
Your own site
<a href="https://agentmods.dev/skills/far-200/think-before-code/dry-run-coach"><img src="https://agentmods.dev/badge/skills/far-200/think-before-code/dry-run-coach.svg" alt="Measured on agentmods" height="20"></a>
Per session 77 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,572 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00077 $0.01572
Opus 5 $0.00039 $0.00786
Sonnet 5 $0.00015 $0.00314
Haiku 4.5 $0.00008 $0.00157

Measured 5d ago against content hash db73cd22970b, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

dry-run-coach scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/dry-run-coach/SKILL.md · 169 lines

How it starts

The opening of the file, as written. The whole thing — 169 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Dry Run Coach

Why this exists

"Dry-run it" is one line in most tutoring flows. In practice, most learners don't actually trace anything — they eyeball the algorithm, feel confident, and declare it works. That confidence is exactly what dsa-tutor's copy-paste detection is built to catch downstream. This skill exists earlier: it teaches what a real trace looks like, so there's something rigorous to test in the first place.

This skill does not help pick an approach and does not write code. If the learner doesn't have an approach yet, send them to dsa-tutor first. It also traces exactly one concrete input at a time through its state transitions — deciding which broader set of inputs is worth testing is test-case-coach's job, not this one's.

Circuit breaker

Never accept "yeah, I traced it, it works" as a completed dry run. A real dry run has explicit state written down at every step.

Can the learner point to the exact value of every tracked variable
at a specific step, not just describe the trend?

  NO  → it wasn't a real trace yet. Go back to building the state table.
  YES → the dry run is real. Compare final state to expected output.

Protocol

  1. Pick a real input. Not the smallest trivial case only — ask for something with at least one interesting feature (a duplicate, a boundary value, a case that requires more than one loop iteration to do anything interesting).
  2. Name the state before tracing. Ask the learner to list every variable, pointer, or data structure that will change during execution — before running a single step. If they can't name what's being tracked, that's the actual gap, not the trace itself.
  3. Build a state table. One column per tracked variable, one row per step. Ask the learner to fill in each cell themselves as you go — never fill one in for them.
  4. Step through one iteration at a time. The learner fills in the state table at every step regardless. Ask what invariant is still true at initialization, after a meaningful state transition (a branch taken, a pointer moved, a value updated in a way that matters), and at completion — not mechanically after every trivial iteration. For a long trace, let several uneventful steps pass with just the table filled in, then check the invariant when something actually changed.
  5. Compare the final state to the expected output. If it matches, the trace is done — don't manufacture more doubt. If it doesn't match, don't fix it: ask which specific row of the table first diverges from what they expected.

Read the full file on GitHub · 169 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 5d ago First seen · 169 lines · 77 tokens per session scan A db73cd22970b

Subscribe to this mod's changes

dry-run-coach is a skill published in the GitHub repository Far-200/think-before-code (9 stars, last pushed 20d ago), licensed MIT. It adds 77 tokens to every session and 1,572 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

interactive-leetcode-mcp

Use when the user wants to practice LeetCode problems, submit solutions, or set up LeetCode integration. Covers MCP server installation, learning-guided practice flow, solution submission, and authentication.

SPerekrestova/interactive-leetcode-mcp · 46 tokens

leetcode-helper

Expert LeetCode problem solver for optimized C++ coding interview solutions. Use when: the user pastes a LeetCode problem, asks for an optimized algorithm, wants C++ LeetCode code, needs a dry run, asks for line-by-line explanation, wants a hint before the solution, wants brute force to optimized progression, wants…

Zephyrex21/claude-leetcode-helper · 98 tokens

configure-profile

Create or update the global learner profile. Interviews the learner using the measurement checklist in references/PROFILE-TEMPLATE.md and writes the structured result to profile/PROFILE.md. Use when a new learner sets up Upstack for the first time, or after completing a course to update skills and Dreyfus levels.

ishands/upstack · 64 tokens

complete-assignment

Run the reasoning review gate for a completed assignment. Asks 2-3 Reasoning Review Prompts from COURSE.md, verifies genuine understanding, and only marks the assignment complete if the learner demonstrates conceptual grasp. Use when a learner finishes an assignment and is ready for verification.

ishands/upstack · 59 tokens

create-course

Scaffold a new course directory from the COURSE.md schema. Creates the directory structure, populates COURSE.md with YAML frontmatter and markdown template sections, and creates stub assignment directories. Use for curated courses (core/courses/) or personal courses (custom/courses/) in any domain.

ishands/upstack · 60 tokens

start-course

Initialise a learning session. Checks for an existing journal in progress/ /journal.md, creates one from the template if missing, loads the course definition, and calibrates to the learner's declared context. Use when starting a new course or resuming after a break.

ishands/upstack · 60 tokens