How this skill is triggered — by the user, by Claude, or both
Slash command
/sentinel:sentinel-dismissThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Dismiss a draft rule and add it to the blocklist so Scribe won't re-propose it.
Dismiss a draft rule and add it to the blocklist so Scribe won't re-propose it.
The user provides the draft rule ID as an argument: /sentinel-dismiss <id>
Look for .claude/sentinel/drafts/<id>.draft.yaml
Read the draft YAML and show a brief summary:
Confirm: "Dismiss this draft? Scribe won't propose rules with the same scope and trigger again."
Add to blocklist by running:
from sentinel_scribe import add_dismissal
# Extract scope (first pattern) and trigger from the draft
add_dismissal(scribe_dir, scope, trigger, statement)
Or equivalently, append to .sentinel/scribe/dismissed.jsonl:
{"scope": "<first scope pattern>", "trigger": "<trigger>", "statement_hash": "<hash>", "dismissed_at": "<iso timestamp>"}
Delete drafts/<id>.draft.yaml
Confirm: "Draft <id> dismissed. Scribe won't re-propose rules for this scope and trigger."
After dismissing the draft, suggest to the user:
/sentinel-drafts — review remaining pending drafts/sentinel-rule — create a rule manually if the dismissed draft was close but needed a different approachnpx claudepluginhub andurilcode/sentinel --plugin sentinelCreates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.