llm-gatelisted
Install: claude install-skill rohitg00/pro-workflow
# LLM Gate
Use Claude Code's `type: "prompt"` hooks to create intelligent quality gates that use AI to verify operations.
## Trigger
Use when:
- Setting up commit message validation
- Enforcing code conventions beyond what linters catch
- Creating smart guardrails for specific operations
## How Prompt Hooks Work
Claude Code supports hooks with `type: "prompt"` that run a small LLM (Haiku by default) to verify conditions:
```json
{
"PreToolUse": [{
"matcher": "Bash",
"hooks": [{
"type": "prompt",
"if": "Bash(git commit*)",
"prompt": "Check if this git commit follows conventional commit format (<type>(<scope>): <summary>). The commit command is: $ARGUMENTS. Return {\"ok\": true} if valid, {\"ok\": false, \"reason\": \"...\"} if not.",
"model": "haiku",
"timeout": 15
}]
}]
}
```
The hook:
1. Substitutes `$ARGUMENTS` with the JSON hook input
2. Sends to Haiku (fast, cheap)
3. Expects `{"ok": true}` or `{"ok": false, "reason": "..."}`
4. If not ok → blocks the tool call with the reason
## Example Gates
### Conventional Commit Validator
```json
{
"type": "prompt",
"if": "Bash(git commit*)",
"prompt": "Verify this git commit follows conventional commits: type(scope): summary. Types: feat,fix,refactor,test,docs,chore,perf,ci. Summary under 72 chars. Input: $ARGUMENTS",
"model": "haiku"
}
```
### Destructive Command Guard
```json
{
"type": "prompt",
"if": "Bash(rm *)",
"prompt": "Check if this rm command is safe. Fl