Use when implementing or changing settled behavior test-first, reproducing a bug through regression evidence, or protecting existing behavior before a refactor.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# Test-Driven Development
Use one observed failing behavior check to guide the smallest complete implementation for one settled behavior.
TDD provides test-first behavior discipline. It does not define intended behavior, authorize test or production effects, select or close a Slice, or prove claims beyond its observing boundary.
One behavior loop is one coherent method result. It may contain several reads, edits, commands, and focused checks. Finish and return one behavior before starting another.
## Enter With Settled Behavior
Before RED, establish:
- the accepted behavior and caller-visible result;
- relevant success and failure semantics;
- the boundary where the behavior must hold;
- authority covering both the check and production effects;
- the expected reason RED should fail.
Return unsettled behavior, source conflicts, or user-owned choices to [Workflow](../workflow/SKILL.md). Do not encode a guess as a test.
Use TDD for:
- accepted behavior changes;
- bug corrections with a supported cause or reliable regression loop;
- consequential logic whose contract benefits from executable evidence;
- characterization needed before a protected refactor.
…
The line at the top of this page pins the label git:20260908.9097a1e, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
GET https://markdownregistry.com/api/v1/artifacts/art_slonp7m57hiw25gf
GET https://markdownregistry.com/api/v1/resolve?ref=hassan-mohiddin/freeflow/tdd
GET https://markdownregistry.com/api/v1/blob/515edea9a00f6e5cb52c9ec1ca4ac4e9587e25f1b16d8690ed481f79c770c1fd
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
hassan-mohiddin/freeflow · .deprecated/legacy-context/capabilities/context-virtualization/SKILL.md · Use after broad or noisy tool evidence has been safely narrowed or exhausted, or when an activity boundary leaves raw…
hassan-mohiddin/freeflow · .deprecated/legacy-context/capabilities/conversation-history/SKILL.md · Use when the next decision requires exact prior conversation wording, rationale, chronology, or provenance that is…
hassan-mohiddin/freeflow · .deprecated/modes/qualification/subjects/neutral/mode-contract/SKILL.md · Use when a user asks to set, change, infer, or discuss conversation/workflow/strict-workflow mode, or when task risk…
hassan-mohiddin/freeflow · .deprecated/modes/skills/mode-contract/SKILL.md · Use when choosing, changing, or explaining how Freeflow mode applies to current work.
hassan-mohiddin/freeflow · .deprecated/output-router/skill-eval/qualification/subjects/neutral/output-router/SKILL.md · Use after the Workflow, Decision Gate, or Discuss route is clear when choosing between native tools and Freeflow routed…
hassan-mohiddin/freeflow · .deprecated/skill-evals-v1/fixtures/tiny-eval-method-app/skills/review-pr/SKILL.md · Use when reviewing a pull request or local diff before merge.
hassan-mohiddin/freeflow · .deprecated/skill-evals-v1/fixtures/tiny-eval-method-app/skills/triage-question/SKILL.md · Use when the user asks whether an issue, task, or product decision already exists.
cursor/plugins · pstack/skills/tdd/SKILL.md · Use only when the user explicitly asks for TDD, a failing test, or a regression test, OR when the bug has an obvious…
cursor/plugins · harness/pstack/claude-code/skills/tdd/SKILL.md · Use only when the user explicitly asks for TDD, a failing test, or a regression test, OR when the bug has an obvious…
michael-denyer/pstack-claude · plugins/pstack/skills/tdd/SKILL.md · Use only when the user explicitly asks for TDD, a failing test, or a regression test, OR when the bug has an obvious…
rohitg00/pro-workflow · skills/tdd/SKILL.md · Drive a change through a red-green-refactor loop - failing test first, minimal code to pass, then clean up. Use when…
backnotprop/pstack · skills/tdd/SKILL.md · Use only when the user explicitly asks for TDD, a failing test, or a regression test, OR when the bug has an obvious…