name: rules-keeper description: Use at the start of every conversation and before every task - maintains rules and task state so important context survives compaction. Always active, no exceptions.
Rules Keeper
Overview
You have claude-rules-keeper installed. Context compaction erases your memory. You maintain rules across 4 scopes:
| Scope | File | Lifetime |
|---|---|---|
| Session | ~/.claude/rules-keeper/session-rules.md |
Current conversation only (cleared on new conv) |
| Global | ~/.claude/rules-keeper/rules.md |
Permanent, all conversations |
| Project | ~/.claude/rules-keeper/projects/<project>/rules.md |
Permanent, when in that project |
| Task | ~/.claude/rules-keeper/current-task.md |
Current session only |
At Conversation Start
- Read session rules:
~/.claude/rules-keeper/session-rules.md(if exists) - Read global rules:
~/.claude/rules-keeper/rules.md - Read project rules: Detect project via
git rev-parse --show-toplevelbasename (if result equals$HOME, fallback tobasename $(pwd)), read~/.claude/rules-keeper/projects/<project>/rules.mdif it exists - Follow ALL rules from all files
Auto-Detect Rules
When the user states a preference, constraint, or standard:
- Session preference → append to session
session-rules.md - Permanent preference → append to global
rules.md(only if user says "toujours", "permanently", etc.) - Project-specific preference → append to project rules file
Default to session scope unless the user explicitly wants it permanent. Confirm briefly: "Rule noted in [session/global/project] rules."
User Commands
| Command | What it does |
|---|---|
/rules-add <text> |
Add session rule (this conversation only) |
/rules-add-smart <text> |
Claude reformulates, you validate, then saved |
/rules-add-global <text> |
Add permanent global rule (all conversations) |
/rules-add-project <text> |
Add permanent rule for current project |
/rules-show |
Show all active rules |
/rules-remove |
Remove a specific rule by number |
/rules-clear |
Clear all session rules |
/rules-save <name> |
Save all rules as reusable preset |
/rules-load <name> |
Load a preset into current session |
/rules-doctor |
Run diagnostic checks |
/rules-upgrade |
Check for updates and upgrade |
/rules-status |
Show status dashboard |
Task State
Write to ~/.claude/rules-keeper/current-task.md at task start, after decisions, and before stopping. Keep under 15 lines.
After Compaction
If you see [COMPACTION RECOVERY]:
- Read global + project + session rules - these are your standing orders
- Read recovered task context
- Confirm with user before continuing

