From agent-guardrails
Test installed agent guardrail hooks by sending trigger phrases through the stop hook script. Checks hook installation first, then runs two test phrases per rule. Use when user asks to "test guardrails", "verify hooks", "check guardrail patterns", "agent-guardrails test", or wants to confirm hooks are working.
npx claudepluginhub florianbuetow/claude-code --plugin agent-guardrailsThis skill uses the workspace's default tool permissions.
Verify that the installed stop-guardrails.sh hook catches all six rules by sending test phrases through it.
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
Verify that the installed stop-guardrails.sh hook catches all six rules by sending test phrases through it.
Verify the hook is installed and executable:
if [ ! -x .claude/hooks/stop-guardrails.sh ]; then
echo "FAIL: .claude/hooks/stop-guardrails.sh not found or not executable"
exit 1
fi
if ! cat .claude/settings.local.json 2>/dev/null | jq -e '.hooks.Stop' > /dev/null 2>&1; then
echo "FAIL: No Stop hook configured in .claude/settings.local.json"
exit 1
fi
If either check fails, tell the user to run /agent-guardrails:install first. Do not proceed.
For each rule, send two test phrases through the hook individually. Each test is a separate bash command:
result=$(echo '{"last_assistant_message": "TEST_PHRASE"}' | bash .claude/hooks/stop-guardrails.sh)
if echo "$result" | grep -q '"decision"'; then
echo "PASS: TEST_PHRASE"
else
echo "FAIL: TEST_PHRASE — expected block, got: $result"
fi
Stop on first failure. Do not continue after a FAIL.
no-speculative-language:
I think the issue is in the parser.This should fix the problem.no-stalling:
Before I proceed, there are a few things to consider.Let me take a step back and think about this.no-preference-asking:
Would you like me to refactor this?Should I proceed with the fix?no-false-completion:
Everything is working now.The implementation is complete.no-skipping:
The rest looks fine.For brevity, I'll skip the details.no-dismissing:
It's just a warning.Safe to ignore.After all positive tests pass, run these. Each must return {}:
result=$(echo '{"last_assistant_message": "TEST_PHRASE"}' | bash .claude/hooks/stop-guardrails.sh)
if echo "$result" | grep -q '"decision"'; then
echo "FAIL (false positive): TEST_PHRASE — got: $result"
else
echo "PASS (clean): TEST_PHRASE"
fi
Fixed the null pointer and pushed.The function returns the expected value.Updated the retry logic to handle timeouts.The test suite runs in 4.2 seconds.Agent Guardrails Test Results
| Rule | Test 1 | Test 2 |
|------|--------|--------|
| no-speculative-language | PASS | PASS |
| no-stalling | PASS | PASS |
| no-preference-asking | PASS | PASS |
| no-false-completion | PASS | PASS |
| no-skipping | PASS | PASS |
| no-dismissing | PASS | PASS |
| Negative tests | 4/4 clean |
All N tests passed.
If any test failed, show which phrase and rule failed and stop there.