Skip to content
Hooks
Skill

/check-coverage

Ensure comprehensive test coverage for a CLI handler. Use when adding a new command or auditing existing handler coverage.

From plugin
dippy
2425 skills
Install
$ npx -y skills add ldayton/Dippy --skill check-coverage --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/check-coverage

Context preview

The summary Claude sees to decide when to auto-load this skill.

Ensure comprehensive test coverage for a CLI handler. Use when adding a new command or auditing existing handler coverage.

SKILL.md

check-coverage.SKILL.md
name: check-coverage
description: Ensure comprehensive test coverage for a CLI handler. Use when adding a new command or auditing existing handler coverage.
argument-hint: <tool>
disable-model-invocation: true

Ensure the handler and tests for `$ARGUMENTS` provide comprehensive coverage.

1. Gather Documentation

Find documentation for the tool (need at least one source):

**tldr:**

ls ~/source/tldr/pages/*/$ARGUMENTS*.md
cat ~/source/tldr/pages/*/$ARGUMENTS.md

**Local CLI:**

$ARGUMENTS --help
man $ARGUMENTS

Stop if neither source exists.

2. Explore Subcommands

For tools with subcommands, recursively explore:

$ARGUMENTS <subcommand> --help
$ARGUMENTS help <subcommand>

Build a mental model of:

  • All subcommands and their actions
  • Which operations are read-only (safe) vs mutate state (unsafe)
  • Global flags that affect parsing
  • Edge cases

3. Review Existing Tests

Read `tests/cli/test_$ARGUMENTS.py` and check for:

  • Coverage of all subcommands
  • Both safe and unsafe variants of each action
  • Global flag handling
  • Edge cases from the docs

4. Add Missing Tests

Add aspirational test cases for anything missing. Follow existing format:

TESTS = [
    # --- Subcommand group ---
    ("$ARGUMENTS <subcommand> <safe-action>", True),
    ("$ARGUMENTS <subcommand> <unsafe-action>", False),
]

5. Iterate Until Tests Pass

just test

For each failure, determine if the test expectation is correct:

  • If yes, update `src/dippy/cli/$ARGUMENTS.py`
  • If no, fix the test

6. Verify

`just check` MUST pass before you're done.

Read more
Ships withdippy

🐤 Less permission fatigue, more momentum. Dippy knows what’s safe to run and keeps Claude on track when plans change.

Get the whole plugin
Stats
241
Stars
22
Forks
Maintained
Maintenance
Python
Language
MIT
License
2mo ago
Last commit
7mo ago
Created

Repo: ldayton/Dippy