From ring-default
Runs RED/GREEN/REFACTOR cycles to test discipline-enforcing skills under pressure, capturing rationalizations verbatim and plugging loopholes until compliance holds.
How this skill is triggered — by the user, by Claude, or both
Slash command
/ring-default:testing-skills-with-subagentsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
- Before deploying a new skill
Complementary: ring:writing-skills, ring:test-driven-development
Testing skills is TDD applied to process documentation.
Run scenarios without the skill (RED — watch agent fail), write skill addressing those failures (GREEN), then close loopholes (REFACTOR).
Prerequisite: Understand ring:test-driven-development first. Complete worked example: examples/CLAUDE_MD_TESTING.md.
Test skills that: enforce discipline (TDD, testing requirements), have compliance costs (time, effort, rework), could be rationalized away ("just this once"), or contradict immediate goals (speed over quality).
Skip: Pure reference skills (API docs), skills without rules to violate.
| TDD Phase | Skill Testing | What You Do |
|---|---|---|
| RED | Baseline test | Run scenario WITHOUT skill, watch agent fail |
| Verify RED | Capture rationalizations | Document exact failures verbatim |
| GREEN | Write skill | Address specific baseline failures |
| Verify GREEN | Pressure test | Run WITH skill, verify compliance under pressure |
| REFACTOR | Plug holes | Find new rationalizations, add counters |
Run 3+ combined-pressure scenarios WITHOUT the skill. Document agent choices and rationalizations word-for-word.
Why verbatim? Exact wording reveals the loopholes to close.
| Quality | Example |
|---|---|
| Bad | "What does the skill say?" — agent recites |
| Good | "Production down, $10k/min, 5min window" — single pressure |
| Great | "3hr/200 lines done, 6pm, dinner plans, forgot TDD. A) Delete B) Commit C) Tests now" — multi-pressure + forced choice |
Pressure types: Time (deadline), sunk cost (hours invested), authority (senior says skip), economic (job at stake), exhaustion (end of day), pragmatic ("being realistic").
Best tests combine 3+ pressures.
Address the specific failures documented in RED. Don't add hypothetical content — write just enough to address actual observed failures. Re-run same scenarios WITH skill; agent should now comply.
Agent still violated rule despite having the skill? Capture new rationalizations verbatim:
For each rationalization, add: explicit negation rule, rationalization table entry, red flag entry.
Meta-test: "You read the skill and chose wrong anyway. How could the skill have been written to make the right answer the only acceptable one?"
Continue REFACTOR until no new rationalizations appear.
From applying TDD to TDD skill itself:
npx claudepluginhub p/lerianstudio-ring-default-defaultApplies RED-GREEN-REFACTOR cycle to test skills by running baseline scenarios without the skill, writing to address failures, and iterating to close loopholes.
Tests Claude Code skills before deployment using TDD RED-GREEN-REFACTOR: baseline failures without skill, write fixes, iterate pressure scenarios to resist rationalizations.
Applies TDD to skill creation/editing: run failing pressure scenarios first with subagents, write minimal SKILL.md to pass, refactor loopholes. Enforces 'no skill without failing test'.