Install
1
Install the plugin$
npx claudepluginhub diegouis/provectus-marketplace --plugin proagent-qaWant just this hook?
Then install: npx claudepluginhub u/[userId]/[slug]
Risk Indicators
Executes bash commands
Source
Defined in hooks/hooks.json
Configuration
{
"PreToolUse": [
{
"hooks": [
{
"type": "command",
"command": "which jq >/dev/null 2>&1 || exit 0; jq -r '.tool_input.command // empty' | { read cmd; if echo \"$cmd\" | grep -qE 'git commit'; then changed=$(git diff --cached --name-only 2>/dev/null | grep -cE '\\.(py|ts|tsx|js|jsx|go)$' || true); tests=$(git diff --cached --name-only 2>/dev/null | grep -cE '(test_|_test\\.|spec\\.|\\.test\\.)' || true); if [ \"$changed\" -gt 0 ] && [ \"$tests\" -eq 0 ]; then echo '[proagent-qa] WARNING: Committing source files without corresponding test files. Consider adding tests.'; fi; fi; }",
"timeout": 10
}
],
"matcher": "Bash"
}
],
"PostToolUse": [
{
"hooks": [
{
"type": "command",
"command": "which jq >/dev/null 2>&1 || exit 0; jq -r '.tool_input.command // empty' | { read cmd; if echo \"$cmd\" | grep -qE 'pytest|vitest|jest|go test|cargo test'; then echo '[proagent-qa] Test execution completed. Review results for failures and coverage gaps.'; fi; }",
"timeout": 5
}
],
"matcher": "Bash"
},
{
"hooks": [
{
"type": "command",
"command": "which jq >/dev/null 2>&1 || exit 0; jq -r '.tool_input.prompt // empty' | { read prompt; if echo \"$prompt\" | grep -qi 'qa-specialist\\|test.review\\|coverage'; then echo '[proagent-qa] QA review completed. Check findings for blocking quality issues.'; fi; }",
"timeout": 5
}
],
"matcher": "Task"
}
]
}Summary
{
"riskFlags": {
"touchesBash": true,
"matchAllTools": false,
"touchesFileWrites": false
},
"typeStats": {
"command": 3
},
"eventStats": {
"PreToolUse": 1,
"PostToolUse": 2
},
"originCounts": {
"absolutePaths": 0,
"pluginScripts": 0,
"projectScripts": 0
},
"timeoutStats": {
"commandsWithoutTimeout": 0
}
}Stats
Stars2
Forks1
Last CommitFeb 24, 2026