Agent skill

Test Discipline

by bradygaster in bradygaster/squad

Design assertions that prove the actual contract and fail on realistic regressions

MITAuto-check passed

Install Test Discipline

skills CLI
$ npx skills add bradygaster/squad --skill test-discipline -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install bradygaster/squad test-discipline --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/bradygaster/squad.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.copilot/skills/test-discipline .claude/skills/test-discipline && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
test-discipline
GitHub stars
3.3k
Token cost
~447 tokens
SKILL.md length
214 words
Files
1
Skills in repo
31
Repo updated
First seen
Licence
MIT

At a glance

Design assertions that prove the actual contract and fail on realistic regressions

  • SKILL.md covers Context, Patterns, Examples and Anti-Patterns
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Test Discipline is an agent skill from bradygaster/squad. Design assertions that prove the actual contract and fail on realistic regressions

Its SKILL.md is about 450 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

The repository describes itself as: Squad: AI agent teams for any project. The licence is MIT.

Example prompts

  • “/test-discipline”

What it can do on your machine

Read from SKILL.md and the folder at commit 1fd7e03. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Test Discipline loads about 447 tokens when it runs. Until then it costs about 25 tokens; SKILL.md has 214 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~25
When it runs · the whole SKILL.md, loaded when a task matches
~447

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from bradygaster/squad at commit 1fd7e03, republished under its MIT licence (© bradygaster). 214 words, ~447 tokens.

Download SKILL.mdSave it as .claude/skills/test-discipline/SKILL.md (or your agent's skills folder).
name
test-discipline
description
Design assertions that prove the actual contract and fail on realistic regressions
domain
quality
confidence
high
source
current regression tests and retained quality incident lessons

Context

Use this skill whenever a change affects an API, public interface, workflow contract, generated artifact, or user-observable behavior. A passing status-only test is not evidence that the intended artifact or contract is correct.

Patterns

  • Update tests in the same change as an API, signature, export, or public-interface change.
  • Make assertions name and inspect the offending artifact, output, or configuration field—not just an exit code or broad success status.
  • Mutation-test critical gates by changing the real source or emitted artifact and proving the assertion turns red.
  • Exercise every caller path for a changed parser, normalizer, or helper; isolated unit coverage can miss the integration path that invokes it differently.
  • Reproduce working-tree-only failures locally when the contract depends on index, filesystem, line-ending, or generated-output state.
  • Keep expected inventory arrays synchronized with the files they enumerate.

Examples

A workflow-compilation test mutates the source workflow, compiles it, and inspects the emitted safe-output contract. A repair-script test constructs the actual index/blob/worktree state that the repair routine must handle instead of a simplified fixture.

Anti-Patterns

  • Calling a test sufficient because it observes only a successful process exit
  • Mutating a hand-built fixture instead of the source or artifact protected by the gate
  • Testing a helper while omitting production callers
  • Treating a local checkout defect as something CI alone can validate

© bradygaster, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .copilot/skills/test-discipline of bradygaster/squad.

Open the folder on GitHubat commit 1fd7e03

Compare with similar skills

Test Discipline next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Test Discipline compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Test Discipline this skillbradygaster/squad3.3k—~447Automated safety check: PassMIT
Assertionsonsi/gomega2.4k—~2.1kAutomated safety check: PassMIT
Debug Failed Runactivepieces/activepieces25k—~3.7kAutomated safety check: WarnCustom licence
Counterparty Channel Disciplineaffaan-m/ECC275k—~2.3kAutomated safety check: PassMIT
MoviePilot Failed Transfer Retryjxxghp/MoviePilot12k—~584Automated safety check: PassGPL-3.0
Handsontable Test Writing Disciplinehandsontable/handsontable22k—~1.3kAutomated safety check: PassCustom licence

Similar skills

  • Assertions

    onsi/gomega

    Write correct synchronous Gomega assertions — Expect/Ω notation, the To/NotTo/ToNot/Should/ShouldNot equivalences, the multi-return error idiom, Succeed vs HaveOccurred, the .Error() chaining form…

    2.4k GitHub stars~2.1k tokensUpdated 14 days ago
    DevelopmentAuto-check passed
  • Debug Failed Run

    activepieces/activepieces

    Debug a failed Activepieces flow run end-to-end: given a flow run id (or BullMQ job id), find why it failed, cross-referencing the live BullMQ job + Postgres rows (SSH script on the DevOps box), the…

    25k GitHub stars~3.7k tokensUpdated today
    DatabasesAuto-check: warnings
  • Per-channel strict prompts, mention gating, silent observation, and a communication autonomy policy for agents that sit in shared channels with external counterparties.

    275k GitHub stars~2.3k tokensUpdated 3 days ago
    Productivity & AutomationAuto-check passed
  • Retries failed MoviePilot video and music transfer records one verified group at a time, keeping retry evidence and re-identifying only legacy records that were actually deleted.

    12k GitHub stars~584 tokensUpdated today
    Productivity & AutomationAuto-check passed
  • Handsontable Test Writing Discipline

    handsontable/handsontable

    Keeps tests honest: write them from the requirement, treat the code as the first suspect when a test is red, and refuse every way of faking a passing run.

    22k GitHub stars~1.3k tokensUpdated today
    Testing & QAAuto-check passed
  • Fix Failing Pipelines

    a5c-ai/babysitter

    This skill should be used when the user asks to "fix pipelines", "fix CI", "check staging pipelines", "fix failing workflows", "fix failing actions", or wants to find and fix failing GitHub Actions…

    1.8k GitHub stars~1k tokensUpdated 22 days ago
    DevOps & CloudAuto-check passed

More from bradygaster/squad

All 31 skills in this repo
  • Fact Checking

    bradygaster/squad

    Review and validate claims using counter-hypothesis testing.

    3.3k GitHub stars~503 tokensUpdated today
    Auto-check passed
  • Architectural Review

    bradygaster/squad

    How to review PRs for architectural quality — module boundaries, dependency direction, export surface, pattern consistency

    3.3k GitHub stars~2.2k tokensUpdated today
    Auto-check passed
  • Archival Integrity

    bradygaster/squad

    Preserve content when moving entries between tracked Squad state files

    3.3k GitHub stars~735 tokensUpdated today
    Auto-check passed
  • CI Validation Gates

    bradygaster/squad

    Defensive CI/CD patterns: semver validation, token checks, retry logic, and draft detection

    3.3k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • CLI Wiring

    bradygaster/squad

    Checklist and patterns for wiring new CLI commands into cli-entry.ts

    3.3k GitHub stars~501 tokensUpdated today
    Auto-check passed
  • Enables squad agents on different machines to share work via git-based task queuing

    3.3k GitHub stars~2.7k tokensUpdated today
    Auto-check passed

Questions about Test Discipline

What does Test Discipline do?

Design assertions that prove the actual contract and fail on realistic regressions. Test Discipline is an agent skill from bradygaster/squad.

How do I install Test Discipline in Claude Code?

Run `npx skills add bradygaster/squad --skill test-discipline -a claude-code`. Or copy the skill folder (.copilot/skills/test-discipline in bradygaster/squad) into .claude/skills/test-discipline in your project. Claude Code loads it when a task matches its description.

How do I install Test Discipline in Codex?

Run `npx skills add bradygaster/squad --skill test-discipline -a codex`. Or copy the skill folder (.copilot/skills/test-discipline in bradygaster/squad) into .agents/skills/test-discipline in your project. Codex loads it when a task matches its description.

Can I use Test Discipline in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add bradygaster/squad --skill test-discipline -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/test-discipline, .gemini/skills/test-discipline, .github/skills/test-discipline and .opencode/skills/test-discipline in your project.

What does Test Discipline need to run?

SKILL.md names no scripts, command-line tools or credentials: Test Discipline is instructions for the agent only.

Does Test Discipline access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Test Discipline safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Test Discipline use?

Test Discipline is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Test Discipline use?

About 447 tokens (SKILL.md is roughly 1.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Test Discipline?

Skills that share tags, products or a category with Test Discipline: Assertions (onsi/gomega, 2.4k stars), Debug Failed Run (activepieces/activepieces, 25k stars), Counterparty Channel Discipline (affaan-m/ECC, 275k stars) and MoviePilot Failed Transfer Retry (jxxghp/MoviePilot, 12k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Test Discipline?

bradygaster (a GitHub user) maintains it in bradygaster/squad, which has 3,257 GitHub stars. The repository holds 31 skills in this directory. The repository was last updated on October 8, 2026.

Source: bradygaster/squad on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.