Agentic-qe no-skip
Use when you want to prevent .skip(), .only(), xit(), and xdescribe() from being committed to test files. Activate with /no-skip for session-scoped test skip prevention.
install
source · Clone the upstream repo
git clone https://github.com/proffesor-for-testing/agentic-qe
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/proffesor-for-testing/agentic-qe "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.claude/skills/no-skip" ~/.claude/skills/proffesor-for-testing-agentic-qe-no-skip && rm -rf "$T"
manifest:
.claude/skills/no-skip/SKILL.mdsource content
No-Skip Mode
When activated, blocks any write that adds test-skipping patterns to test files.
What It Does
Prevents these patterns from being written to test files:
— skips individual tests.skip()
— runs only one test (excludes all others).only()
/xit(
— Jasmine skip syntaxxdescribe(
— unimplemented test placeholderstest.todo(
/@Skip
— JUnit skip annotations@Disabled
Activation
/no-skip
Hook Configuration
{ "hooks": { "PreToolUse": [ { "matcher": "Write|Edit", "hook": ".claude/skills/no-skip/scripts/check-skips.sh", "condition": "file matches **/*.test.{ts,js,tsx,jsx} OR **/*.spec.{ts,js}" } ] } }
Enforcement Logic
#!/bin/bash # check-skips.sh CONTENT="$1" SKIP_PATTERNS=( '\.skip\s*\(' '\.only\s*\(' '\bxit\s*\(' '\bxdescribe\s*\(' '\bxcontext\s*\(' 'test\.todo\s*\(' '@Skip' '@Disabled' '@Ignore' ) for pattern in "${SKIP_PATTERNS[@]}"; do if echo "$CONTENT" | grep -qP "$pattern"; then echo "BLOCKED: Found skip pattern '$pattern'" echo "Remove the skip and either fix the test or delete it." exit 1 fi done
Gotchas
- This catches NEW skips being written, not existing ones — run
to find existing skipsgrep -r '.skip(' tests/
is sometimes used intentionally during debugging — deactivate with.only()
if needed/no-skip off- Some frameworks use
instead ofpending()
— add to patterns if using Jasmine.skip()