Test-first development through public interfaces, agreed seams, and one behavioral slice at a time.

How it works

Foe: Flaky Wisp, a failing or flaky test.

Foes

  • Flaky Wisp

Party · Context

  • HunterYour agent100/100
  1. Flaky Wisp

    The Flaky Wisp blocks the way.

    What really happensIt stands for a failing or flaky test.

    Hunter: Context 100/100.

  2. Flicker

    The Flaky Wisp uses Flicker.

    What really happensA flaky test passes on one run and fails on the next.

    Hunter takes 8. Hunter: Context 92/100.

  3. Matt Pocock TDD

    The hero reads the TDD scroll before touching any code.

    What really happensThe agent loads the tdd skill from Matt Pocock's plugin when you ask to build or fix something test-first.

    Flaky Wisp takes 15.

  4. Matt Pocock TDD

    It marks the doors where the wisp can be watched safely.

    What really happensIt proposes seams, the public interfaces where tests observe behavior, and waits for you to confirm them.

    Flaky Wisp takes 12.

  5. Flicker

    The Flaky Wisp uses Flicker.

    Hunter takes 8. Hunter: Context 84/100.

  6. Matt Pocock TDD

    One red test pins the wisp in place.

    What really happensIt writes one failing test for one behavior through a confirmed seam.

    Flaky Wisp takes 30.

  7. Matt Pocock TDD

    The hero forges just enough code to break the curse.

    What really happensIt writes the least code that makes the test pass, then starts the next slice.

    Flaky Wisp takes 19.

  8. Matt Pocock TDD

    The wisp fades and leaves a ward on the path.

    What really happensYou keep behavior tests at agreed seams, which survive later refactoring. Refactoring itself waits for review.

    Flaky Wisp takes 24. Flaky Wisp falls.

  9. Victory

    The Flaky Wisp falls.

Learn this spell

Claude Code

claude plugin install mattpocock-skills@claude-plugins-official

Codex

codex plugin marketplace add mattpocock/skills
codex plugin add mattpocock-skills@mattpocock

Notes

Plugin commands install the whole mattpocock-skills set, not only tdd. Pick the plugin or a skills.sh copy per agent; installing both duplicates every skill. It confirms test seams with you before writing any test. Refactoring is left to the review stage, outside the red-green loop.

Records

Recorded use61root sessions
Test recoveries31 of 32sessions with a failing test

Curator's machine: macOS 27.0.1 · Apple Silicon (arm64), read when these stats were published. Session logs do not record the OS.

Sessions per month

4302026-07: 2 sessions2026-072026-08: 9 sessions2026-082026-09: 43 sessions2026-092026-10: 7 sessions2026-10
View data
Sessions per month
MonthSessions
2026-072
2026-089
2026-0943
2026-107

Harness

Codex: 25 sessionsOMP: 36 sessions
  • Codex25 (41%)Version 0.145.0-alpha.30 in the first session, 0.154.0 in the latest
  • OMP36 (59%)Version not in its logs; 18.8.3 installed when published
View data
Sessions by harness
HarnessSessionsVersion
Codex25Version 0.145.0-alpha.30 in the first session, 0.154.0 in the latest
OMP36Version not in its logs; 18.8.3 installed when published

Often used with

What a recovery means

A failed test was followed by a passing test of the same runner family in one session. It does not prove this spell caused the fix.

First recorded: . Most recent: .

Proving Grounds record

Controlled quest results, separate from recorded usage. Each setup pools runs across its quests. The per-quest table below has casts, cast time, mana, incantation and runes; medians are not pooled.

Hero: Claude Code 2.1.305; weapon (model): claude-haiku-5-5; charge (effort): low; arena: sealed; invoked cast (the prompt named the skill). macOS 27.0.1, arm64. Curator.

Clear rate100%3 of 3 runs passed every check; Unarmed: 3 of 3 (matched quests)
Steadiness44%reliability: Wilson 95% lower bound
Buff+0 ppvs Unarmed, only matched quests (3 equipped runs; 3 control runs)
Instant casts3 of 3runs cleared on the first prompt; Unarmed: 3 of 3 (matched quests)
Attunement100%3 of 3 runs opened an equipped skill
Upkeep+11% manaextra mana per run vs Unarmed, median of 1 quest
IncantationNot measuredoutput tokens per run vs Unarmed
Runes-8%lines added per run vs Unarmed, median of 1 quest

Hero: Claude Code 2.1.305; weapon (model): claude-opus-5-5; charge (effort): high; arena: sealed; invoked cast (the prompt named the skill). macOS 27.0.1, arm64. Curator.

Clear rate100%9 of 9 runs passed every check; Unarmed: 9 of 9 (matched quests)
Steadiness70%reliability: Wilson 95% lower bound
Buff+0 ppvs Unarmed, only matched quests (9 equipped runs; 9 control runs)
Instant casts9 of 9runs cleared on the first prompt; Unarmed: 9 of 9 (matched quests)
Attunement100%9 of 9 runs opened an equipped skill
Upkeep+6% manaextra mana per run vs Unarmed, median of 3 quests
IncantationNot measuredoutput tokens per run vs Unarmed
Runes-38%lines added per run vs Unarmed, median of 3 quests

Hero: Claude Code 2.1.305; weapon (model): claude-sonnet-5-5; charge (effort): medium; arena: sealed; invoked cast (the prompt named the skill). macOS 27.0.1, arm64. Curator.

Clear rate67%12 of 18 runs passed every check; Unarmed: 47 of 57 (matched quests)
Steadiness44%reliability: Wilson 95% lower bound
Buff-16 pp debuffvs Unarmed, only matched quests (18 equipped runs; 57 control runs)
Instant casts12 of 18runs cleared on the first prompt; Unarmed: 46 of 57 (matched quests)
Attunement100%18 of 18 runs opened an equipped skill
Upkeep+10% manaextra mana per run vs Unarmed, median of 5 quests
IncantationNot measuredoutput tokens per run vs Unarmed
Runes+4%lines added per run vs Unarmed, median of 2 quests

Hero: Codex 0.154.0; weapon (model): gpt-6-astra; charge (effort): low; arena: sealed; invoked cast (the prompt named the skill). macOS 27.0.1, arm64. Curator.

Clear rate100%1 of 1 runs passed every check
Steadiness21%reliability: Wilson 95% lower bound
Buffno control run yetclear-rate points vs Unarmed
Instant casts1 of 1runs cleared on the first prompt
Attunement100%1 of 1 runs opened an equipped skill
UpkeepNot measuredextra mana per run vs Unarmed
IncantationNot measuredoutput tokens per run vs Unarmed
RunesNot measuredlines added per run vs Unarmed

Hero: Codex 0.154.0; weapon (model): gpt-6-astra; charge (effort): medium; arena: sealed; invoked cast (the prompt named the skill). macOS 27.0.1, arm64. Curator.

Clear rate100%9 of 9 runs passed every check; Unarmed: 12 of 12 (matched quests)
Steadiness70%reliability: Wilson 95% lower bound
Buff+0 ppvs Unarmed, only matched quests (9 equipped runs; 12 control runs)
Instant casts9 of 9runs cleared on the first prompt; Unarmed: 12 of 12 (matched quests)
Attunement100%9 of 9 runs opened an equipped skill
UpkeepNot measuredextra mana per run vs Unarmed
IncantationNot measuredoutput tokens per run vs Unarmed
RunesNot measuredlines added per run vs Unarmed

Hero: OMP 18.8.3; weapon (model): anthropic/claude-haiku-5-5; charge (effort): low; arena: warded; invoked cast (the prompt named the skill). macOS 27.0.1, arm64. Curator.

Clear rate100%9 of 9 runs passed every check; Unarmed: 9 of 9 (matched quests)
Steadiness70%reliability: Wilson 95% lower bound
Buff+0 ppvs Unarmed, only matched quests (9 equipped runs; 9 control runs)
Instant casts9 of 9runs cleared on the first prompt; Unarmed: 9 of 9 (matched quests)
Attunement100%9 of 9 runs opened an equipped skill
Upkeep-9% manaextra mana per run vs Unarmed, median of 3 quests
IncantationNot measuredoutput tokens per run vs Unarmed
RunesNot measuredlines added per run vs Unarmed

Hero: OMP 18.8.3; weapon (model): anthropic/claude-sonnet-5-5; charge (effort): medium; arena: warded; invoked cast (the prompt named the skill). macOS 27.0.1, arm64. Curator.

Clear rate100%9 of 9 runs passed every check; Unarmed: 12 of 12 (matched quests)
Steadiness70%reliability: Wilson 95% lower bound
Buff+0 ppvs Unarmed, only matched quests (9 equipped runs; 12 control runs)
Instant casts9 of 9runs cleared on the first prompt; Unarmed: 11 of 12 (matched quests)
Attunement100%9 of 9 runs opened an equipped skill
Upkeep+36% manaextra mana per run vs Unarmed, median of 3 quests
IncantationNot measuredoutput tokens per run vs Unarmed
RunesNot measuredlines added per run vs Unarmed

Hero: Claude Code 2.1.305; weapon (model): claude-sonnet-5-5; charge (effort): medium; arena: sealed; ambient cast (the agent chose). macOS 27.0.1, arm64. Curator.

Clear rate100%6 of 6 runs passed every check; Unarmed: 27 of 27 (matched quests)
Steadiness61%reliability: Wilson 95% lower bound
Buff+0 ppvs Unarmed, only matched quests (6 equipped runs; 27 control runs)
Instant casts6 of 6runs cleared on the first prompt; Unarmed: 27 of 27 (matched quests)
Attunement0%0 of 6 runs opened an equipped skill
Upkeep+3% manaextra mana per run vs Unarmed, median of 3 quests
IncantationNot measuredoutput tokens per run vs Unarmed
RunesNot measuredlines added per run vs Unarmed

Hero: Codex 0.154.0; weapon (model): gpt-6-astra; charge (effort): medium; arena: sealed; ambient cast (the agent chose). macOS 27.0.1, arm64. Curator.

Clear rate100%6 of 6 runs passed every check; Unarmed: 12 of 12 (matched quests)
Steadiness61%reliability: Wilson 95% lower bound
Buff+0 ppvs Unarmed, only matched quests (6 equipped runs; 12 control runs)
Instant casts6 of 6runs cleared on the first prompt; Unarmed: 12 of 12 (matched quests)
Attunement33%2 of 6 runs opened an equipped skill
UpkeepNot measuredextra mana per run vs Unarmed
IncantationNot measuredoutput tokens per run vs Unarmed
RunesNot measuredlines added per run vs Unarmed

Hero: OMP 18.8.3; weapon (model): anthropic/claude-sonnet-5-5; charge (effort): medium; arena: warded; ambient cast (the agent chose). macOS 27.0.1, arm64. Curator.

Clear rate100%6 of 6 runs passed every check; Unarmed: 12 of 12 (matched quests)
Steadiness61%reliability: Wilson 95% lower bound
Buff+0 ppvs Unarmed, only matched quests (6 equipped runs; 12 control runs)
Instant casts6 of 6runs cleared on the first prompt; Unarmed: 11 of 12 (matched quests)
Attunement0%0 of 6 runs opened an equipped skill
Upkeep+4% manaextra mana per run vs Unarmed, median of 3 quests
IncantationNot measuredoutput tokens per run vs Unarmed
RunesNot measuredlines added per run vs Unarmed
Per-quest Proving Grounds record
QuestFixed taskClear ratePassed runsSteadinessReliability lower boundBuffClear-rate points vs UnarmedInstant castsFirst-prompt clearsCastsPrompts to clearCast timeAgent runtimeManaCost at API list pricesIncantationOutput tokensRunesLines added / removedAttunementSkills openedSetupApp, model, effort and sandbox
Broken Trail: Pagination RepairQuest v2100%3 of 3Unarmed: 100% (3 of 3)44%+0 ppvs Unarmed3 of 3100%Unarmed: 3 of 3137sUnarmed: 32s1,988 Unarmed: 1,876Not reportedUnarmed: Not reported+52 / -1Unarmed: +62 / -1100%Hero: Claude Code 2.1.305; weapon (model): claude-opus-5-5; charge (effort): high; arena: sealed; invoked cast (the prompt named the skill).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.Scrying (screenshot)
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-paginate --hero claude-code --weapon 'claude-opus-5-5' --charge high --cast invoked --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Broken Trail: Pagination RepairQuest v2100%3 of 3Unarmed: 100% (9 of 9)44%+0 ppvs Unarmed3 of 3100%Unarmed: 9 of 9118sUnarmed: 20s876 Unarmed: 834Not reportedUnarmed: 2.7kNot reportedUnarmed: +48 / -1100%Hero: Claude Code 2.1.305; weapon (model): claude-sonnet-5-5; charge (effort): medium; arena: sealed; invoked cast (the prompt named the skill).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-paginate --hero claude-code --weapon 'claude-sonnet-5-5' --charge medium --cast invoked --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Broken Trail: Pagination RepairQuest v2100%2 of 2Unarmed: 100% (9 of 9)34%+0 ppvs Unarmed2 of 2100%Unarmed: 9 of 9120sUnarmed: 20s859 Unarmed: 834Not reportedUnarmed: 2.7kNot reportedUnarmed: +48 / -10%Hero: Claude Code 2.1.305; weapon (model): claude-sonnet-5-5; charge (effort): medium; arena: sealed; ambient cast (the agent chose).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-paginate --hero claude-code --weapon 'claude-sonnet-5-5' --charge medium --cast ambient --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Broken Trail: Pagination RepairQuest v2100%3 of 3Unarmed: 100% (3 of 3)44%+0 ppvs Unarmed3 of 3100%Unarmed: 3 of 3142sUnarmed: 50sNot priced yet70.1k tokensUnarmed: Not priced yetNot reportedUnarmed: Not reportedNot reportedUnarmed: Not reported100%Hero: Codex 0.154.0; weapon (model): gpt-6-astra; charge (effort): medium; arena: sealed; invoked cast (the prompt named the skill).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-paginate --hero codex --weapon 'gpt-6-astra' --charge medium --cast invoked --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Broken Trail: Pagination RepairQuest v2100%2 of 2Unarmed: 100% (3 of 3)34%+0 ppvs Unarmed2 of 2100%Unarmed: 3 of 3152sUnarmed: 50sNot priced yet74.4k tokensUnarmed: Not priced yetNot reportedUnarmed: Not reportedNot reportedUnarmed: Not reported0%Hero: Codex 0.154.0; weapon (model): gpt-6-astra; charge (effort): medium; arena: sealed; ambient cast (the agent chose).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-paginate --hero codex --weapon 'gpt-6-astra' --charge medium --cast ambient --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Broken Trail: Pagination RepairQuest v2100%3 of 3Unarmed: 100% (3 of 3)44%+0 ppvs Unarmed3 of 3100%Unarmed: 3 of 3122sUnarmed: 25s39 Unarmed: 30Not reportedUnarmed: Not reportedNot reportedUnarmed: Not reported100%Hero: OMP 18.8.3; weapon (model): anthropic/claude-haiku-5-5; charge (effort): low; arena: warded; invoked cast (the prompt named the skill).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-paginate --hero omp --weapon 'anthropic/claude-haiku-5-5' --charge low --cast invoked --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Broken Trail: Pagination RepairQuest v2100%3 of 3Unarmed: 100% (3 of 3)44%+0 ppvs Unarmed3 of 3100%Unarmed: 3 of 3117sUnarmed: 18s476 Unarmed: 410Not reportedUnarmed: Not reportedNot reportedUnarmed: Not reported100%Hero: OMP 18.8.3; weapon (model): anthropic/claude-sonnet-5-5; charge (effort): medium; arena: warded; invoked cast (the prompt named the skill).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-paginate --hero omp --weapon 'anthropic/claude-sonnet-5-5' --charge medium --cast invoked --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Broken Trail: Pagination RepairQuest v2100%2 of 2Unarmed: 100% (3 of 3)34%+0 ppvs Unarmed2 of 2100%Unarmed: 3 of 3116sUnarmed: 18s428 Unarmed: 410Not reportedUnarmed: Not reportedNot reportedUnarmed: Not reported0%Hero: OMP 18.8.3; weapon (model): anthropic/claude-sonnet-5-5; charge (effort): medium; arena: warded; ambient cast (the agent chose).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-paginate --hero omp --weapon 'anthropic/claude-sonnet-5-5' --charge medium --cast ambient --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Hunter: Month-End Schedule RepairQuest v20%0 of 6Unarmed: 33% (5 of 15)0%-33 pp debuffvs Unarmed0 of 60%Unarmed: 5 of 15Not reported40sUnarmed: 39s1,235 Unarmed: 1,319Not reportedUnarmed: 4.7k+47 / -3Unarmed: +48 / -8100%Hero: Claude Code 2.1.305; weapon (model): claude-sonnet-5-5; charge (effort): medium; arena: sealed; invoked cast (the prompt named the skill).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.Scrying (screenshot)
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-rent-schedule --hero claude-code --weapon 'claude-sonnet-5-5' --charge medium --cast invoked --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Rune Trail: Slug FunctionQuest v2100%3 of 3Unarmed: 100% (3 of 3)44%+0 ppvs Unarmed3 of 3100%Unarmed: 3 of 311m 22sUnarmed: 44s3,987 Unarmed: 2,172Not reportedUnarmed: Not reported+61 / -1Unarmed: +98 / -1100%Hero: Claude Code 2.1.305; weapon (model): claude-opus-5-5; charge (effort): high; arena: sealed; invoked cast (the prompt named the skill).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.Scrying (screenshot)
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-slugify --hero claude-code --weapon 'claude-opus-5-5' --charge high --cast invoked --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Rune Trail: Slug FunctionQuest v2100%3 of 3Unarmed: 100% (9 of 9)44%+0 ppvs Unarmed3 of 3100%Unarmed: 9 of 9126sUnarmed: 25s1,025 Unarmed: 934Not reportedUnarmed: 3.4kNot reportedUnarmed: +61 / -1100%Hero: Claude Code 2.1.305; weapon (model): claude-sonnet-5-5; charge (effort): medium; arena: sealed; invoked cast (the prompt named the skill).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-slugify --hero claude-code --weapon 'claude-sonnet-5-5' --charge medium --cast invoked --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Rune Trail: Slug FunctionQuest v2100%2 of 2Unarmed: 100% (9 of 9)34%+0 ppvs Unarmed2 of 2100%Unarmed: 9 of 9128sUnarmed: 25s1,058 Unarmed: 934Not reportedUnarmed: 3.4kNot reportedUnarmed: +61 / -10%Hero: Claude Code 2.1.305; weapon (model): claude-sonnet-5-5; charge (effort): medium; arena: sealed; ambient cast (the agent chose).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-slugify --hero claude-code --weapon 'claude-sonnet-5-5' --charge medium --cast ambient --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Rune Trail: Slug FunctionQuest v2100%1 of 121%no control run yet1 of 1100%11m 1sNot priced yet84.3k tokensNot reportedNot reported100%Hero: Codex 0.154.0; weapon (model): gpt-6-astra; charge (effort): low; arena: sealed; invoked cast (the prompt named the skill).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-slugify --hero codex --weapon 'gpt-6-astra' --charge low --cast invoked --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Rune Trail: Slug FunctionQuest v2100%3 of 3Unarmed: 100% (3 of 3)44%+0 ppvs Unarmed3 of 3100%Unarmed: 3 of 3159sUnarmed: 52sNot priced yet88.3k tokensUnarmed: Not priced yetNot reportedUnarmed: Not reportedNot reportedUnarmed: Not reported100%Hero: Codex 0.154.0; weapon (model): gpt-6-astra; charge (effort): medium; arena: sealed; invoked cast (the prompt named the skill).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-slugify --hero codex --weapon 'gpt-6-astra' --charge medium --cast invoked --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Rune Trail: Slug FunctionQuest v2100%2 of 2Unarmed: 100% (3 of 3)34%+0 ppvs Unarmed2 of 2100%Unarmed: 3 of 311m 11sUnarmed: 52sNot priced yet72.3k tokensUnarmed: Not priced yetNot reportedUnarmed: Not reportedNot reportedUnarmed: Not reported100%Hero: Codex 0.154.0; weapon (model): gpt-6-astra; charge (effort): medium; arena: sealed; ambient cast (the agent chose).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-slugify --hero codex --weapon 'gpt-6-astra' --charge medium --cast ambient --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Rune Trail: Slug FunctionQuest v2100%3 of 3Unarmed: 100% (3 of 3)44%+0 ppvs Unarmed3 of 3100%Unarmed: 3 of 3127sUnarmed: 35s43 Unarmed: 52Not reportedUnarmed: Not reportedNot reportedUnarmed: Not reported100%Hero: OMP 18.8.3; weapon (model): anthropic/claude-haiku-5-5; charge (effort): low; arena: warded; invoked cast (the prompt named the skill).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-slugify --hero omp --weapon 'anthropic/claude-haiku-5-5' --charge low --cast invoked --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Rune Trail: Slug FunctionQuest v2100%3 of 3Unarmed: 100% (3 of 3)44%+0 ppvs Unarmed3 of 3100%Unarmed: 2 of 3125sUnarmed: 20s661 Unarmed: 475Not reportedUnarmed: Not reportedNot reportedUnarmed: Not reported100%Hero: OMP 18.8.3; weapon (model): anthropic/claude-sonnet-5-5; charge (effort): medium; arena: warded; invoked cast (the prompt named the skill).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-slugify --hero omp --weapon 'anthropic/claude-sonnet-5-5' --charge medium --cast invoked --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Rune Trail: Slug FunctionQuest v2100%2 of 2Unarmed: 100% (3 of 3)34%+0 ppvs Unarmed2 of 2100%Unarmed: 2 of 3116sUnarmed: 20s518 Unarmed: 475Not reportedUnarmed: Not reportedNot reportedUnarmed: Not reported0%Hero: OMP 18.8.3; weapon (model): anthropic/claude-sonnet-5-5; charge (effort): medium; arena: warded; ambient cast (the agent chose).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-slugify --hero omp --weapon 'anthropic/claude-sonnet-5-5' --charge medium --cast ambient --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Fading Tracks: TTL Cache RepairQuest v2100%3 of 3Unarmed: 100% (3 of 3)44%+0 ppvs Unarmed3 of 3100%Unarmed: 3 of 311m 3sUnarmed: 1m 23s3,518 Unarmed: 4,173Not reportedUnarmed: Not reported+59 / -19Unarmed: +150 / -34100%Hero: Claude Code 2.1.305; weapon (model): claude-opus-5-5; charge (effort): high; arena: sealed; invoked cast (the prompt named the skill).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.Scrying (screenshot)
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-ttl-cache --hero claude-code --weapon 'claude-opus-5-5' --charge high --cast invoked --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Fading Tracks: TTL Cache RepairQuest v2100%3 of 3Unarmed: 100% (9 of 9)44%+0 ppvs Unarmed3 of 3100%Unarmed: 9 of 9122sUnarmed: 19s979 Unarmed: 831Not reportedUnarmed: 2.5kNot reportedUnarmed: +75 / -13100%Hero: Claude Code 2.1.305; weapon (model): claude-sonnet-5-5; charge (effort): medium; arena: sealed; invoked cast (the prompt named the skill).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-ttl-cache --hero claude-code --weapon 'claude-sonnet-5-5' --charge medium --cast invoked --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Fading Tracks: TTL Cache RepairQuest v2100%2 of 2Unarmed: 100% (9 of 9)34%+0 ppvs Unarmed2 of 2100%Unarmed: 9 of 9120sUnarmed: 19s839 Unarmed: 831Not reportedUnarmed: 2.5kNot reportedUnarmed: +75 / -130%Hero: Claude Code 2.1.305; weapon (model): claude-sonnet-5-5; charge (effort): medium; arena: sealed; ambient cast (the agent chose).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-ttl-cache --hero claude-code --weapon 'claude-sonnet-5-5' --charge medium --cast ambient --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Fading Tracks: TTL Cache RepairQuest v2100%3 of 3Unarmed: 100% (6 of 6)44%+0 ppvs Unarmed3 of 3100%Unarmed: 6 of 611m 7sUnarmed: 1m 7sNot priced yet113.9k tokensUnarmed: Not priced yetNot reportedUnarmed: 2.1kNot reportedUnarmed: +117 / -13100%Hero: Codex 0.154.0; weapon (model): gpt-6-astra; charge (effort): medium; arena: sealed; invoked cast (the prompt named the skill).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-ttl-cache --hero codex --weapon 'gpt-6-astra' --charge medium --cast invoked --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Fading Tracks: TTL Cache RepairQuest v2100%2 of 2Unarmed: 100% (6 of 6)34%+0 ppvs Unarmed2 of 2100%Unarmed: 6 of 6159sUnarmed: 1m 7sNot priced yet85.4k tokensUnarmed: Not priced yetNot reportedUnarmed: 2.1kNot reportedUnarmed: +117 / -130%Hero: Codex 0.154.0; weapon (model): gpt-6-astra; charge (effort): medium; arena: sealed; ambient cast (the agent chose).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-ttl-cache --hero codex --weapon 'gpt-6-astra' --charge medium --cast ambient --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Fading Tracks: TTL Cache RepairQuest v2100%3 of 3Unarmed: 100% (3 of 3)44%+0 ppvs Unarmed3 of 3100%Unarmed: 3 of 3133sUnarmed: 40s58 Unarmed: 64Not reportedUnarmed: Not reportedNot reportedUnarmed: Not reported100%Hero: OMP 18.8.3; weapon (model): anthropic/claude-haiku-5-5; charge (effort): low; arena: warded; invoked cast (the prompt named the skill).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-ttl-cache --hero omp --weapon 'anthropic/claude-haiku-5-5' --charge low --cast invoked --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Fading Tracks: TTL Cache RepairQuest v2100%3 of 3Unarmed: 100% (6 of 6)44%+0 ppvs Unarmed3 of 3100%Unarmed: 6 of 6125sUnarmed: 20s871 Unarmed: 639Not reportedUnarmed: 2.5kNot reportedUnarmed: +66 / -9100%Hero: OMP 18.8.3; weapon (model): anthropic/claude-sonnet-5-5; charge (effort): medium; arena: warded; invoked cast (the prompt named the skill).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-ttl-cache --hero omp --weapon 'anthropic/claude-sonnet-5-5' --charge medium --cast invoked --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Fading Tracks: TTL Cache RepairQuest v2100%2 of 2Unarmed: 100% (6 of 6)34%+0 ppvs Unarmed2 of 2100%Unarmed: 6 of 6118sUnarmed: 20s565 Unarmed: 639Not reportedUnarmed: 2.5kNot reportedUnarmed: +66 / -90%Hero: OMP 18.8.3; weapon (model): anthropic/claude-sonnet-5-5; charge (effort): medium; arena: warded; ambient cast (the agent chose).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest hunter-ttl-cache --hero omp --weapon 'anthropic/claude-sonnet-5-5' --charge medium --cast ambient --control

Recorded with quest v2 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Paladin: RSVP Capacity and WaitlistQuest v7100%3 of 3Unarmed: 100% (3 of 3)44%+0 ppvs Unarmed3 of 3100%Unarmed: 3 of 312m 56sUnarmed: 2m 36s385 Unarmed: 347Not reportedUnarmed: Not reported+494 / -36Unarmed: +537 / -37100%Hero: Claude Code 2.1.305; weapon (model): claude-haiku-5-5; charge (effort): low; arena: sealed; invoked cast (the prompt named the skill).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.Scrying (screenshot)
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest paladin-rsvp-waitlist --hero claude-code --weapon 'claude-haiku-5-5' --charge low --cast invoked --control

Recorded with quest v7 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Paladin: RSVP Capacity and WaitlistQuest v7100%3 of 3Unarmed: 100% (15 of 15)44%+0 ppvs Unarmed3 of 3100%Unarmed: 14 of 1512m 31sUnarmed: 2m 4s4,217 Unarmed: 3,624Not reportedUnarmed: 19k+500 / -33Unarmed: +457 / -33100%Hero: Claude Code 2.1.305; weapon (model): claude-sonnet-5-5; charge (effort): medium; arena: sealed; invoked cast (the prompt named the skill).
macOS 27.0.1, arm64. Curator.
0 mishaps excluded. 2026-10-21 to 2026-10-21.Scrying (screenshot)
Try this loadout
node "<spell-report-skill-directory>/scripts/spell-report.mjs" trial --spell mattpocock-tdd --quest paladin-rsvp-waitlist --hero claude-code --weapon 'claude-sonnet-5-5' --charge medium --cast invoked --control

Recorded with quest v7 and spell commits mattpocock-tdd@5beb35b040e3de97e54fa9e386d7e42d15c295c2. How to run it

Scrying (screenshots of runs)

The latest run of each setup. Local paths, names and ids are blurred; credentials are removed.

Scrying (screenshot) of a cleared run of Broken Trail: Pagination Repair with Matt Pocock TDD, Claude CodeScrying (screenshot) of a fizzled run of Hunter: Month-End Schedule Repair with Matt Pocock TDD, Claude CodeScrying (screenshot) of a cleared run of Rune Trail: Slug Function with Matt Pocock TDD, Claude CodeScrying (screenshot) of a cleared run of Fading Tracks: TTL Cache Repair with Matt Pocock TDD, Claude Code

Also equipped in trial loadouts: Test-first bug hunt (workflow).

Explore the quests, full results and trial method