By andurilcode
LLM rule evaluator — gates agent actions against repo-defined rules using Ollama, Claude, or Copilot
View or update Sentinel configuration
Dismiss a draft Sentinel rule and prevent re-proposal
List pending draft Sentinel rules with provenance
Scaffold Sentinel config and rules directory in the current repository, installing prerequisites if needed
Scan documentation files for conventions and generate draft Sentinel rules
Matches all tools
Hooks run on every tool call, not just specific ones
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Local LLM rule evaluator for coding agent hooks. Gates agent actions against repo-defined rules using Ollama. Silent when everything passes, blocks on violations.
# Add the marketplace
/plugin marketplace add AndurilCode/sentinel
# Install the plugin
/plugin install sentinel@sentinel
# Initialize in your repo
/sentinel-init
/sentinel-init handles everything: installs Ollama if missing, pulls the model, starts the server, and scaffolds .claude/sentinel/ in your repo.
/sentinel-rule
Walks you through creating a rule: what to protect, trigger type, scope, severity. Writes the YAML to .claude/sentinel/rules/.
| Command | Description |
|---|---|
/sentinel-init | Install prerequisites, scaffold config and rules |
/sentinel-rule | Create a rule through guided conversation |
/sentinel-config | View or update configuration |
Sentinel runs as a PreToolUse hook. On every agent action:
permissionDecision: deny), silent on passRules live in your repo at .claude/sentinel/rules/*.yaml. The plugin evaluator lives outside your repo.
id: dangerous-commands
trigger: bash
severity: block
scope:
- "git push --force*"
- "*rm -rf*"
exclude:
- "*--dry-run*"
prompt: |
A coding agent is about to execute: {{command}}
RULE: Force-pushing and recursive deletion are prohibited.
Does this command violate the rule?
Respond ONLY with JSON: {"violation": true/false, "confidence": 0.0-1.0, "reason": "one line"}
See examples/ for more: file write guards, MCP production gates, secret detection.
Sentinel recognizes tool names from multiple coding agents out of the box:
| Agent | File write | Terminal | MCP format |
|---|---|---|---|
| Claude Code | Write, Edit, MultiEdit, NotebookEdit | Bash | mcp__server__tool |
| GitHub Copilot (VS Code) | create_file, replace_string_in_file | run_in_terminal | native tool names |
| Cursor | edit_file | run_terminal_cmd | mcp_server_tool |
| Windsurf | write_to_file, edit_file | run_command | native tool names |
| Cline | write_to_file, replace_in_file | execute_command | use_mcp_tool wrapper |
| Amazon Q | fs_write | execute_bash | @server/tool |
To add a custom agent or override mappings, set tool_map in your config.yaml:
tool_map:
my_write_tool: file_write
my_shell_tool: bash
For agents with different MCP naming conventions (e.g. Cursor), configure the prefix and separator:
mcp_prefix: "mcp_"
mcp_separator: "_"
See docs/reference.md for the full configuration reference.
gemma3:4b)PyYAML is auto-installed on first run if missing.
npx claudepluginhub andurilcode/sentinel --plugin sentinelAll 50 reasoning, context engineering, and professional skills in one plugin
17 skills for architecture, code quality, process design, communication, and leadership
11 skills for building, evaluating, and debugging agent context — instructions, harnesses, evals, and documentation
22 reasoning frameworks for analysis, decisions, and problem-solving — from first principles to game theory
Sift — cross-platform AI coding assistant usage analytics, cost optimization, and session insights
Create custom behavioral rules through markdown configuration files - prevent unwanted behaviors with pattern matching
Achieve flow state safely with Claude Code. Auto-approves routine work, gates risky actions, hard-blocks dangerous patterns. Dual enforcement (skill + hooks), token cap for cost governance, full audit trail. Zero dependencies.
One 👎 becomes a hard rule the agent cannot bypass. Captures thumbs-down feedback, distills it into PreToolUse Pre-Action Checks, enforced across every future Claude Code session.
Smart command safety filter for Claude Code — parses shell pipelines and evaluates per-command safety rules to auto-approve safe commands and block dangerous ones
A secure runtime for Claude Code. Intercepts every tool call with policy-based allow/block/ask decisions, evasion detection, path fencing, file snapshots, and audit logging.
Block destructive git and filesystem commands before execution