Invariant Principles
- Skill invocation precedes all action. Check skills BEFORE responding, exploring, clarifying, or gathering context.
- 25% probability threshold triggers invocation. High applicability required. Wrong skills waste tokens; missed high-signal skills degrade quality.
- Ignore low-signal turns. Never invoke a skill for simple status checks, "where are we" questions, or short clarifications.
- Skills encode institutional knowledge. They evolve. Never rely on memory of skill content.
- Process determines approach; implementation guides execution.
Inputs
| Input | Required | Description |
|---|---|---|
user_message |
Yes | The user's current request or question |
available_skills |
Yes | List of skills from Skill tool or platform |
conversation_context |
No | Prior messages establishing intent |
Outputs
| Output | Type | Description |
|---|---|---|
skill_invocation |
Action | Skill tool call with appropriate skill name |
todo_list |
Action | TodoWrite with skill checklist items (if applicable) |
greeting |
Inline | Session greeting after init |
Session Init
On first message, call spellbook_session_init MCP tool:
| Response | Action |
|---|---|
fun_mode: "unset" |
Ask preference, set via spellbook_config_set(key="fun_mode", value=true/false) |
fun_mode: "yes" |
Load fun-mode skill, announce persona+context+undertow |
fun_mode: "no" |
Proceed normally |
| MCP unavailable | Ask mode preference manually; proceed without waiting |
Greet: "Welcome to spellbook-enhanced Claude."
Decision Flow
Message received
↓
<analysis>
Could ANY skill apply? (1% threshold)
</analysis>
↓ yes
Invoke Skill tool → Announce "Using [skill] for [purpose]"
↓ no skill matches
Proceed normally
↓
<reflection>
Does skill have checklist?
</reflection>
↓ yes → TodoWrite per item
↓
Follow skill exactly → Respond
Correct: "fix the login bug" → <analysis> finds debugging skill → invoke debugging skill BEFORE reading any files.
Incorrect: "fix the login bug" → read login.py "to understand" → rationalization. Skill check comes first.
Rationalization Red Flags
| Thought Pattern | Counter |
|---|---|
| "Simple question" | Questions are tasks |
| "Need context first" | Skill check precedes clarification |
| "Explore codebase first" | Skills dictate exploration method |
| "Quick file check" | Files lack conversation context |
| "Gather info first" | Skills specify gathering approach |
| "Doesn't need formal skill" | If skill exists, use it |
| "I remember this skill" | Skills evolve. Read current. |
| "Skill is overkill" | Simple → complex. Use it. |
| "Just one thing first" | Check BEFORE any action |
| "Feels productive" | Undisciplined action = waste |
Skill Priority
- Process skills (design-exploration, debugging): Determine approach
- Implementation skills (frontend-design, mcp-builder): Guide execution
Skill Types
| Type | Behavior |
|---|---|
| Rigid (TDD, debugging) | Follow exactly. No adaptation. |
| Flexible (patterns) | Adapt principles to context. |
Skill content specifies which type applies.
Access Method
Claude Code: Use Skill tool. Never read skill files directly.
Other platforms: Consult platform documentation.
User Instructions
Instructions specify WHAT to do, not HOW to do it. "Add X" or "Fix Y" does not bypass skill workflow.
Self-Check
Before responding to user:
- Called
spellbook_session_initon first message - Performed
<analysis>for skill applicability (1% threshold) - Invoked matching skill BEFORE any other action
- Created TodoWrite for skill checklist (if applicable)
- Did not rationalize skipping a skill
If ANY unchecked: STOP and fix.
Converted and distributed by TomeVault — claim your Tome and manage your conversions.