Agent skill

Testing Gate

by DanielPodolsky in DanielPodolsky/ownyourcode

Verifies test coverage and encourages testing habits. An agent skill from DanielPodolsky/ownyourcode.

MITAuto-check passedTesting & QA

Install Testing Gate

skills CLI
$ npx skills add DanielPodolsky/ownyourcode --skill testing-gate -a claude-code

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

GitHub CLI
$ gh skill install DanielPodolsky/ownyourcode testing-gate --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/DanielPodolsky/ownyourcode.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/gates/testing .claude/skills/testing-gate && 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
testing-gate
GitHub stars
290
Used in
1 other repo
Token cost
~1.1k tokens
SKILL.md length
474 words
Files
1
Skills in repo
19
Repo updated
First seen
Licence
MIT

At a glance

Verifies test coverage and encourages testing habits. An agent skill from DanielPodolsky/ownyourcode.

  • Works in 3 steps: "What's the ONE thing that would be… → "What input would a user never send but… → "What happens when the server is slow or…
  • Tasks that involve Test coverage
  • SKILL.md covers Purpose, Gate Status, Gate Questions and Response Templates, plus 5 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Testing Gate is an agent skill from DanielPodolsky/ownyourcode. Verifies test coverage and encourages testing habits. WARNING gate that checks for tests during /own:done flow without blocking.

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

It sits in Testing & QA, covering Test coverage. The repository describes itself as: Claude Code workflow for AI-mentored development. Work efficiently with Spec-Driven Development and the 6 Gates. Built to fight cognitive offloading — for developers using AI to… The licence is MIT.

When your agent uses it

  • Tasks that involve Test coverage

Example prompts

  • “Use the testing-gate skill to verify test coverage and encourages testing habits. An agent skill from DanielPodolsky/ownyourcode”
  • “/testing-gate”

Requirements

  • Python 3

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. "What's the ONE thing that would be really bad if it broke?"
  2. "What input would a user never send but a hacker might?"
  3. "What happens when the server is slow or returns an error?"

What it can do on your machine

Read from SKILL.md and the folder at commit bd1f17c. 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

Testing Gate loads about 1.1k tokens when it runs. Until then it costs about 35 tokens; SKILL.md has 474 words of instructions outside code blocks.

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

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 DanielPodolsky/ownyourcode at commit bd1f17c, republished under its MIT licence (© DanielPodolsky). 474 words, ~1,118 tokens.

Download SKILL.mdSave it as .claude/skills/testing-gate/SKILL.md (or your agent's skills folder).
name
testing-gate
description
Verifies test coverage and encourages testing habits. WARNING gate that checks for tests during /own:done flow without blocking.

Gate 6: Testing Verification

"Tests are proof of understanding. If you can't test it, do you really understand it?"

Purpose

This gate encourages juniors to write tests for their features. Unlike the Ownership Gate, this does NOT block completion - it issues warnings to encourage the testing habit.

Gate Status

  • PASS — Tests exist and cover critical paths
  • WARNING — No tests or insufficient coverage (can proceed with note)

Note: This gate does NOT block. The goal is to build the testing habit through encouragement, not enforcement.


Gate Questions

Ask in sequence:

Question 1: Test Existence

"What tests did you write for this feature?"

Looking for:

  • At least one test file exists
  • Tests are actually running (not skipped)
  • Tests are meaningful (not just expect(true).toBe(true))

If no tests:

"I noticed there aren't tests for this feature. Testing isn't required to complete, but it's a habit worth building. What would you test if you had time?"

Question 2: Coverage Strategy

"What does your test prove about this feature?"

Looking for:

  • Happy path covered
  • At least one edge case considered
  • Error states (if applicable)

Follow-up:

"If I broke [specific part], which test would catch it?"

Question 3: Test Quality

"Show me your most important test. What behavior does it verify?"

Looking for:

  • Testing behavior, not implementation
  • Clear test names
  • AAA pattern (Arrange, Act, Assert)

Response Templates

If PASS (Tests Exist)
✅ TESTING GATE: PASSED

Nice work including tests! I see you covered:
- [Specific test they wrote]
- [Edge case they handled]

Key strength: [Something they did well]

Consider adding: [One suggestion for future]

Moving to code review...
If WARNING (No Tests)
⚠️ TESTING GATE: WARNING

No tests found for this feature. That's okay - we can proceed.

But here's why tests matter:
1. **Interview Gold**: "I implemented tests for critical flows..."
2. **Confidence**: Know your changes don't break things
3. **Documentation**: Tests show how code should be used

Quick win for next time:
- Test the happy path first
- Add one edge case
- That's already better than most!

Proceeding to code review...
If WARNING (Weak Tests)
⚠️ TESTING GATE: WARNING

Tests exist but could be stronger:

**Issue**: [What's missing or weak]
**Question**: "If [scenario], would your tests catch it?"

This doesn't block you, but consider:
- [Specific improvement suggestion]

Proceeding to code review...

What Makes a Good Test Suite?

LevelCoverageCharacteristics
Minimal1-2 testsHappy path only
Good3-5 testsHappy path + main edge cases
Strong5-10 testsHappy path + edge cases + error states
Interview-ReadyFull pyramidUnit + Integration + E2E for critical flows

Show full SKILL.md (201 more words)Show less

Socratic Guidance

If they want to add tests but don't know where to start:

  1. "What's the ONE thing that would be really bad if it broke?"
  2. "What input would a user never send but a hacker might?"
  3. "What happens when the server is slow or returns an error?"

Stack-Specific Hints

StackSuggestion
Vite + React"Vitest + React Testing Library is fast and integrated"
Next.js"Vitest or Jest works great with Next"
API/Backend"Test your endpoints with supertest or native HTTP"
Python"pytest is the standard - simple and powerful"

Interview Connection

"Testing is interview gold."

When they pass this gate with tests:

  • Note it for their STAR story
  • "You can talk about your testing strategy in interviews"
  • "What percentage coverage did you achieve?" (for resume)

When they skip tests:

  • "Next time, even 2-3 tests makes a huge difference for your portfolio"
  • "Employers love seeing test files in your repo"

Why WARNING Not BLOCKING?

  1. Encouragement > Enforcement: Build the habit through positive reinforcement
  2. Some features are trivial: Not everything needs tests
  3. Time constraints exist: Production pressure is real
  4. Learning curve: Testing has a learning curve; don't block progress

The goal is to make testing feel valuable, not punitive.

© DanielPodolsky, 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 .claude/skills/gates/testing of DanielPodolsky/ownyourcode.

Open the folder on GitHubat commit bd1f17c

Used in 1 other repository

We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in DanielPodolsky/ownyourcode, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Testing Gate 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.

Testing Gate compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Testing Gate this skillDanielPodolsky/ownyourcode2901 repos~1.1kAutomated safety check: PassMIT
Requirementsrizsotto/Bear6.5k—~2kAutomated safety check: PassGPL-3.0
Crap Analysisardalis/RiverBooks1342 repos~3.4kAutomated safety check: PassNone
Code Coverages3s-project/s3s311—~789Automated safety check: PassApache-2.0
Project Statusbactopia/bactopia522—~787Automated safety check: PassMIT
Check Coverageldayton/Dippy243—~403Automated safety check: PassMIT

Similar skills

  • Requirements

    rizsotto/Bear

    Write, modify, or review a requirement file under docs/requirements -- pick the single owning file, keep the text contract-only, name IDs so they need no explanation, and verify cross-references and…

    6.5k GitHub stars~2k tokensUpdated today
    Testing & QAAuto-check passed
  • Crap Analysis

    ardalis/RiverBooks

    Analyze code coverage and CRAP (Change Risk Anti-Patterns) scores to identify high-risk code.

    134 GitHub starsUsed in 2 repos~3.4k tokens
    Testing & QAAuto-check passed
  • Code Coverage

    s3s-project/s3s

    Measure and grow the line coverage of the s3s crate. An agent skill from s3s-project/s3s.

    311 GitHub stars~789 tokensUpdated today
    Testing & QAAuto-check passed
  • Project Status

    bactopia/bactopia

    Show a live snapshot of the Bactopia project state — component counts, GroovyDoc coverage, nf-test coverage, and structural issues.

    522 GitHub stars~787 tokensUpdated 2 mo ago
    Testing & QAAuto-check passed
  • Check Coverage

    ldayton/Dippy

    Ensure comprehensive test coverage for a CLI handler. An agent skill from ldayton/Dippy.

    243 GitHub stars~403 tokensUpdated 3 mo ago
    Testing & QAAuto-check passed
  • Guarding Destructive Operations

    kajisho5/ffmpeg-skill

    Add and review preconditions on operations that delete, overwrite, rewrite history, or resolve a caller-supplied name to a filesystem path — refusing instead of warning, placing the guard ahead of…

    1.9k GitHub stars~2.6k tokensUpdated 2 days ago
    Testing & QAAuto-check passed

More from DanielPodolsky/ownyourcode

All 19 skills in this repo
  • Accessibility Fundamentals

    DanielPodolsky/ownyourcode

    Reviews accessibility including WCAG, ARIA, keyboard navigation.

    290 GitHub starsUsed in 1 repo~1.8k tokens
    Auto-check passed
  • Backend Fundamentals

    DanielPodolsky/ownyourcode

    Reviews API design, REST conventions, and backend architecture.

    290 GitHub starsUsed in 1 repo~1.1k tokens
    Auto-check passed
  • Database Fundamentals

    DanielPodolsky/ownyourcode

    Reviews schema design, SQL queries, ORM patterns. An agent skill from DanielPodolsky/ownyourcode.

    290 GitHub starsUsed in 1 repo~1.6k tokens
    Auto-check passed
  • Documentation Fundamentals

    DanielPodolsky/ownyourcode

    Guides documentation standards including READMEs, JSDoc, and code comments.

    290 GitHub starsUsed in 1 repo~1.8k tokens
    Auto-check passed
  • Error Handling Fundamentals

    DanielPodolsky/ownyourcode

    Guides error handling for async operations and API calls. An agent skill from DanielPodolsky/ownyourcode.

    290 GitHub starsUsed in 1 repo~1.5k tokens
    Auto-check passed
  • Frontend Fundamentals

    DanielPodolsky/ownyourcode

    Reviews React/Vue component architecture, state, and hooks. An agent skill from DanielPodolsky/ownyourcode.

    290 GitHub starsUsed in 1 repo~874 tokens
    Auto-check passed

Categories

Questions about Testing Gate

What does Testing Gate do?

Verifies test coverage and encourages testing habits. An agent skill from DanielPodolsky/ownyourcode. Testing Gate is an agent skill from DanielPodolsky/ownyourcode. Verifies test coverage and encourages testing habits.

When should I use Testing Gate?

Testing Gate fits situations like: tasks that involve Test coverage.

How do I install Testing Gate in Claude Code?

Run `npx skills add DanielPodolsky/ownyourcode --skill testing-gate -a claude-code`. Or copy the skill folder (.claude/skills/gates/testing in DanielPodolsky/ownyourcode) into .claude/skills/testing-gate in your project. Claude Code loads it when a task matches its description.

How do I install Testing Gate in Codex?

Run `npx skills add DanielPodolsky/ownyourcode --skill testing-gate -a codex`. Or copy the skill folder (.claude/skills/gates/testing in DanielPodolsky/ownyourcode) into .agents/skills/testing-gate in your project. Codex loads it when a task matches its description.

Can I use Testing Gate 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 DanielPodolsky/ownyourcode --skill testing-gate -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/testing-gate, .gemini/skills/testing-gate, .github/skills/testing-gate and .opencode/skills/testing-gate in your project.

What does Testing Gate need to run?

SKILL.md names no scripts, command-line tools or credentials: Testing Gate is instructions for the agent only. Our summary lists: Python 3.

Does Testing Gate 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 Testing Gate 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 Testing Gate use?

Testing Gate 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 Testing Gate use?

About 1.1k tokens (SKILL.md is roughly 4.5k 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 Testing Gate?

Skills that share tags, products or a category with Testing Gate: Requirements (rizsotto/Bear, 6.5k stars), Crap Analysis (ardalis/RiverBooks, 134 stars), Code Coverage (s3s-project/s3s, 311 stars) and Project Status (bactopia/bactopia, 522 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Testing Gate?

DanielPodolsky (a GitHub user) maintains it in DanielPodolsky/ownyourcode, which has 290 GitHub stars. The repository holds 19 skills in this directory. The repository was last updated on June 27, 2026.

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