Skill Builder
Quick Commands
| Command |
Action |
/skill-builder |
Full audit: runs optimize + agents + hooks in display mode for all skills |
/skill-builder audit |
Same as above |
/skill-builder audit --quick |
Lightweight audit: frontmatter + line counts + priority fixes only |
/skill-builder cascade [skill] |
Validation cascade analysis: detect over-validation suppressing output |
/skill-builder dev [command] |
Run any command with skill-builder itself included |
Directives
"When a decision needs to be made that isn't overtly obvious, and guesses are involved, AGENTS ARE MANDATORY, in order to provide additional input in decision making."
— Added 2026-02-22, source: user directive
"Each agent being created by this system always has to have an appropriate persona that is not being used anywhere else."
— Added 2026-02-22, source: user directive
"When deploying a Team, one of the team member's persona is a research assistant who will research the issue using read-only reference tools. Other team members may also make requests from the research assistant to help augment the outcome."
— Added 2026-02-23, source: user directive (tool specifics in references/agents-teams.md)
Commands
All commands operate in display mode by default. Add --execute to apply changes.
Before executing any command, read its procedure file from references/procedures/.
| Command |
Procedure |
Summary |
audit |
audit.md |
Full system audit |
audit --quick |
audit.md |
Lightweight: frontmatter + line counts |
cascade [skill] |
cascade.md |
Validation cascade analysis (diagnostic only) |
optimize [skill] |
optimize.md |
Restructure for context efficiency |
optimize claude.md |
claude-md.md |
Extract domain content to skills |
agents [skill] |
agents.md |
Analyze/create agents |
hooks [skill] |
hooks.md |
Inventory/create hooks |
new [name] |
new.md |
Create skill from template |
inline [skill] [directive] |
inline.md |
Quick-add directive |
skills |
skills.md |
List local skills |
list [skill] |
list.md |
Show modes/options |
verify |
verify.md |
Health check (headless-compatible) |
ledger |
ledger.md |
Create Awareness Ledger |
checksums [skill] |
checksums.md |
Generate/verify directive checksums |
update |
(inline below) |
Update to latest version |
The update Command
Re-run the installer to update skill-builder to the latest version.
- Run the installer directly via Bash:
bash -c "$(curl -fsSL https://raw.githubusercontent.com/odysseyalive/claude-enforcer/main/install)"
- Tell the user: "Restart Claude Code to load the updated skill." The current session still has the old skill loaded in memory, so start a new conversation. Once you're back, run
/skill-builder audit — updates often add new recommendations that apply to your existing skills.
Self-Exclusion Rule
The skill-builder skill MUST be excluded from all actions (audit, optimize, agents, hooks, skills list) unless the command is prefixed with dev.
/skill-builder audit → audits all skills EXCEPT skill-builder
/skill-builder optimize some-skill → works normally
/skill-builder optimize skill-builder → REFUSED. Say: "skill-builder is excluded from its own actions. Use dev prefix: /skill-builder dev optimize skill-builder"
/skill-builder dev audit → includes skill-builder in the audit
/skill-builder dev optimize skill-builder → allowed
Detection: If the first argument after the command is dev, strip it and proceed with self-inclusion enabled. Otherwise, skip any skill whose name is skill-builder when iterating skills, and refuse if skill-builder is explicitly named as a target.
Post-dev check: After any dev command that modifies skill-builder files, verify that the install script still covers all files. Glob skill-builder/**/*.md, compare against the files downloaded in the installer's loop, and flag any new/renamed/removed files that the installer doesn't handle. This prevents drift between the repo and what users receive on install.
Display/Execute Mode Convention
Commands are classified by risk level, which determines their default mode:
| Risk |
Commands |
Default Mode |
| Low-risk (additive, non-destructive) |
new, inline, skills, list, verify, ledger, checksums |
Execute directly |
| High-risk (restructuring, modifying) |
optimize, agents, hooks, audit, cascade |
Display mode (requires --execute) |
| Mode |
Behavior |
Flag |
| Display |
Read-only plan of what would change |
(default for high-risk) |
| Execute |
Apply changes to files |
--execute or (default for low-risk) |
Rules
- Low-risk commands execute immediately.
new, inline, skills, list, verify, ledger, and checksums do their work directly without requiring --execute. They are additive or read-only — there is nothing to preview.
- High-risk commands default to display mode. Running
/skill-builder optimize my-skill shows what would change without modifying anything. Add --execute to apply.
- Audit always calls sub-commands in display mode, then offers the user a choice of which to execute.
- Execution requires a task plan. When a high-risk command runs with
--execute, the command MUST:
- First produce a numbered task list using TaskCreate, one task per discrete action
- Execute each task sequentially, marking progress via TaskUpdate
- This ensures context can be refreshed mid-execution without losing track, no tasks get forgotten during long context windows, and the user can see progress and resume if interrupted
- Scope discipline during execution. Execute ONLY the tasks in the task list. Do not add bonus tasks, expand scope, or create deliverables not in the original plan. If execution reveals a new opportunity, note it in the completion report — do not act on it. The task list is the contract.
- Post-action chaining. Any action that modifies a skill (
new, inline, adding directives) automatically chains into a scoped mini-audit for the affected skill — running optimize, agents, and hooks in display mode, then offering execution choices. Use --no-chain to suppress.
Core Principles
IMPORTANT: Never break anything.
Optimization is RESTRUCTURING, not REWRITING. The skill must behave identically after optimization.
YOU MUST:
- MOVE content, don't rewrite it — Relocate to new location, preserving wording. Exclude secrets, credentials, API keys, tokens, and passwords — these must never appear in output or be relocated.
- PRESERVE all directives exactly — User's words are sacred
- KEEP all workflows intact — Same steps, same order, same logic
- TEST nothing changes — After optimization, skill works identically
What optimization IS:
- Moving reference tables to
reference.md
- Moving lookup tables and named references to
reference.md
- Adding grounding requirements
- Creating enforcement hooks
- Splitting into SKILL.md + reference.md
What optimization is NOT:
- Rewriting instructions "for clarity"
- Condensing workflows "for brevity"
- Changing step order "for efficiency"
- Removing "redundant" content
- Summarizing user directives
- Reorganizing workflow structure that enforces directives (see enforcement.md § "Behavior Preservation")
The test: If the original author reviewed the optimized skill, they should say "this does exactly what mine did, just organized differently."
Directives are sacred.
When a user says "Never use Uncategorized accounts," those exact words stay in the skill, unchanged, forever.
YOU MUST distinguish between:
| Content Type |
Can Compress? |
Where It Lives |
| Directives (user's exact rules) |
NEVER |
Top of SKILL.md, unchanged |
| Reference (lookup tables, mappings, theory) |
YES |
Separate reference.md |
| Machinery (hooks, agents, chains) |
YES |
settings.json, hooks/, agents |
The Sacred Directive Pattern
When a user gives you a rule, store it unchanged in a ## Directives section with exact wording, source, and date. Place at TOP of skill file. NEVER summarize or reword. Enforce with hooks when possible.
Grounding: Read references/templates.md § "SKILL.md Template" and references/procedures/directives.md for format and workflow.
§ Output Discipline — Cascade, Don't Scatter
Applies to ALL procedures universally. This is a behavioral constraint on how skill-builder presents its output.
Rules
- Own-skill actions (optimize, agents, hooks, ledger for skills managed by skill-builder): Always cascade into the current execution flow via AskUserQuestion + TaskCreate. Never present as standalone slash commands for manual invocation.
- Cross-skill actions (commands belonging to other skills like
/awareness-ledger): Present in a clearly separated "Related Suggestions" footer, labeled as informational. Never mix into execution menus.
- Informational recommendations in conditional notes (e.g., "Run X to fix this"): Reframe as what the current procedure will do, or defer to the execution menu. Example: instead of "Run
/skill-builder optimize to add eval protocol", say "Missing runtime eval protocol — flagged for optimization."
- Anti-pattern: Never end any procedure output with a list of slash commands the user must copy-paste and run manually. If an action is worth recommending, it's worth cascading.
Grounding
Before using any template, example, or pattern from reference material:
- Read the relevant file from
references/
- State: "I will use [TEMPLATE/PATTERN] from references/[file] under [SECTION]"
Reference files:
- references/enforcement.md — Hook JSON, permissions, context mutability, provenance permission model
- references/agents.md — Agent templates, opportunity detection, creation workflow
- references/agents-personas.md — Persona assignment rules, selection heuristic, research backing
- references/agents-teams.md — Individual vs. team routing, invocation patterns, mandatory agent situations
- references/templates.md — Skill directory layout, SKILL.md template, frontmatter
- references/optimization-examples.md — Before/after examples, optimization targets
- references/portability.md — Install instructions, rule-to-skill conversion
- references/patterns.md — Lessons learned
- references/platform.md — Claude Code skill platform architecture, frontmatter fields, listing budget, invocation flow
- references/temporal-validation.md — Temporal risk classification, phrase mappings, hook generation spec
- references/ledger-templates.md — Awareness Ledger record templates, agent definitions, consultation protocol
- references/procedures/ — Per-command procedure files (audit, verify, optimize, agents, hooks, new, inline, ledger, cascade, checksums, etc.)
- references/procedures/checksums.md — Directive checksum generation spec (scripts generated at runtime, not shipped)
- agents/optimize-diff-auditor/ — Post-optimize semantic equivalence verification agent
Converted and distributed by TomeVault — claim your Tome and manage your conversions.
1---2name: odysseyalive-claude-enforcer-skill-builder3description: Skill Builder4---56# Skill Builder78<!-- origin: skill-builder | version: 1.5 | modifiable: true -->9## Quick Commands1011| Command | Action |12|---------|--------|13| `/skill-builder` | Full audit: runs optimize + agents + hooks in display mode for all skills |14| `/skill-builder audit` | Same as above |15| `/skill-builder audit --quick` | Lightweight audit: frontmatter + line counts + priority fixes only |16| `/skill-builder cascade [skill]` | Validation cascade analysis: detect over-validation suppressing output |17| `/skill-builder dev [command]` | Run any command with skill-builder itself included |18<!-- /origin -->1920---2122<!-- origin: user | added: 2026-02-22 | immutable: true -->23## Directives2425> **"When a decision needs to be made that isn't overtly obvious, and guesses are involved, AGENTS ARE MANDATORY, in order to provide additional input in decision making."**2627*— Added 2026-02-22, source: user directive*2829> **"Each agent being created by this system always has to have an appropriate persona that is not being used anywhere else."**3031*— Added 2026-02-22, source: user directive*3233> **"When deploying a Team, one of the team member's persona is a research assistant who will research the issue using read-only reference tools. Other team members may also make requests from the research assistant to help augment the outcome."**3435*— Added 2026-02-23, source: user directive (tool specifics in references/agents-teams.md)*36<!-- /origin -->3738---3940<!-- origin: skill-builder | version: 1.5 | modifiable: true -->41## Commands4243All commands operate in display mode by default. Add `--execute` to apply changes.44Before executing any command, read its procedure file from `references/procedures/`.4546| Command | Procedure | Summary |47|---------|-----------|---------|48| `audit` | [audit.md](references/procedures/audit.md) | Full system audit |49| `audit --quick` | [audit.md](references/procedures/audit.md) | Lightweight: frontmatter + line counts |50| `cascade [skill]` | [cascade.md](references/procedures/cascade.md) | Validation cascade analysis (diagnostic only) |51| `optimize [skill]` | [optimize.md](references/procedures/optimize.md) | Restructure for context efficiency |52| `optimize claude.md` | [claude-md.md](references/procedures/claude-md.md) | Extract domain content to skills |53| `agents [skill]` | [agents.md](references/procedures/agents.md) | Analyze/create agents |54| `hooks [skill]` | [hooks.md](references/procedures/hooks.md) | Inventory/create hooks |55| `new [name]` | [new.md](references/procedures/new.md) | Create skill from template |56| `inline [skill] [directive]` | [inline.md](references/procedures/inline.md) | Quick-add directive |57| `skills` | [skills.md](references/procedures/skills.md) | List local skills |58| `list [skill]` | [list.md](references/procedures/list.md) | Show modes/options |59| `verify` | [verify.md](references/procedures/verify.md) | Health check (headless-compatible) |60| `ledger` | [ledger.md](references/procedures/ledger.md) | Create Awareness Ledger |61| `checksums [skill]` | [checksums.md](references/procedures/checksums.md) | Generate/verify directive checksums |62| `update` | *(inline below)* | Update to latest version |63<!-- /origin -->6465---6667<!-- origin: skill-builder | version: 1.5 | modifiable: true -->68## The `update` Command6970Re-run the installer to update skill-builder to the latest version.71721. Run the installer directly via Bash: `bash -c "$(curl -fsSL https://raw.githubusercontent.com/odysseyalive/claude-enforcer/main/install)"`732. Tell the user: **"Restart Claude Code to load the updated skill."** The current session still has the old skill loaded in memory, so start a new conversation. Once you're back, run `/skill-builder audit` — updates often add new recommendations that apply to your existing skills.74<!-- /origin -->7576---7778<!-- origin: skill-builder | version: 1.5 | modifiable: true -->79## Self-Exclusion Rule8081**The skill-builder skill MUST be excluded from all actions (audit, optimize, agents, hooks, skills list) unless the command is prefixed with `dev`.**8283- `/skill-builder audit` → audits all skills EXCEPT skill-builder84- `/skill-builder optimize some-skill` → works normally85- `/skill-builder optimize skill-builder` → REFUSED. Say: "skill-builder is excluded from its own actions. Use `dev` prefix: `/skill-builder dev optimize skill-builder`"86- `/skill-builder dev audit` → includes skill-builder in the audit87- `/skill-builder dev optimize skill-builder` → allowed8889**Detection:** If the first argument after the command is `dev`, strip it and proceed with self-inclusion enabled. Otherwise, skip any skill whose name is `skill-builder` when iterating skills, and refuse if `skill-builder` is explicitly named as a target.9091**Post-dev check:** After any `dev` command that modifies skill-builder files, verify that the `install` script still covers all files. Glob `skill-builder/**/*.md`, compare against the files downloaded in the installer's loop, and flag any new/renamed/removed files that the installer doesn't handle. This prevents drift between the repo and what users receive on install.92<!-- /origin -->9394---9596<!-- origin: skill-builder | version: 1.5 | modifiable: true -->97## Display/Execute Mode Convention9899**Commands are classified by risk level, which determines their default mode:**100101| Risk | Commands | Default Mode |102|------|----------|-------------|103| **Low-risk** (additive, non-destructive) | `new`, `inline`, `skills`, `list`, `verify`, `ledger`, `checksums` | **Execute directly** |104| **High-risk** (restructuring, modifying) | `optimize`, `agents`, `hooks`, `audit`, `cascade` | **Display mode** (requires `--execute`) |105106| Mode | Behavior | Flag |107|------|----------|------|108| **Display** | Read-only plan of what would change | *(default for high-risk)* |109| **Execute** | Apply changes to files | `--execute` or *(default for low-risk)* |110111### Rules1121131. **Low-risk commands execute immediately.** `new`, `inline`, `skills`, `list`, `verify`, `ledger`, and `checksums` do their work directly without requiring `--execute`. They are additive or read-only — there is nothing to preview.1142. **High-risk commands default to display mode.** Running `/skill-builder optimize my-skill` shows what *would* change without modifying anything. Add `--execute` to apply.1153. **Audit always calls sub-commands in display mode**, then offers the user a choice of which to execute.1164. **Execution requires a task plan.** When a high-risk command runs with `--execute`, the command MUST:117 - First produce a numbered task list using TaskCreate, one task per discrete action118 - Execute each task sequentially, marking progress via TaskUpdate119 - This ensures context can be refreshed mid-execution without losing track, no tasks get forgotten during long context windows, and the user can see progress and resume if interrupted1205. **Scope discipline during execution.** Execute ONLY the tasks in the task list. Do not add bonus tasks, expand scope, or create deliverables not in the original plan. If execution reveals a new opportunity, note it in the completion report — do not act on it. The task list is the contract.1216. **Post-action chaining.** Any action that modifies a skill (`new`, `inline`, adding directives) automatically chains into a scoped mini-audit for the affected skill — running optimize, agents, and hooks in display mode, then offering execution choices. Use `--no-chain` to suppress.122<!-- /origin -->123124---125126<!-- origin: skill-builder | version: 1.5 | modifiable: true -->127## Core Principles128129**IMPORTANT: Never break anything.**130131Optimization is RESTRUCTURING, not REWRITING. The skill must behave identically after optimization.132133**YOU MUST:**1341351. **MOVE content, don't rewrite it** — Relocate to new location, preserving wording. Exclude secrets, credentials, API keys, tokens, and passwords — these must never appear in output or be relocated.1362. **PRESERVE all directives exactly** — User's words are sacred1373. **KEEP all workflows intact** — Same steps, same order, same logic1384. **TEST nothing changes** — After optimization, skill works identically139140**What optimization IS:**141- Moving reference tables to `reference.md`142- Moving lookup tables and named references to `reference.md`143- Adding grounding requirements144- Creating enforcement hooks145- Splitting into SKILL.md + reference.md146147**What optimization is NOT:**148- Rewriting instructions "for clarity"149- Condensing workflows "for brevity"150- Changing step order "for efficiency"151- Removing "redundant" content152- Summarizing user directives153- Reorganizing workflow structure that enforces directives (see enforcement.md § "Behavior Preservation")154155**The test:** If the original author reviewed the optimized skill, they should say "this does exactly what mine did, just organized differently."156157---158159**Directives are sacred.**160161When a user says "Never use Uncategorized accounts," those exact words stay in the skill, unchanged, forever.162163**YOU MUST distinguish between:**164165| Content Type | Can Compress? | Where It Lives |166|--------------|---------------|----------------|167| **Directives** (user's exact rules) | NEVER | Top of SKILL.md, unchanged |168| **Reference** (lookup tables, mappings, theory) | YES | Separate reference.md |169| **Machinery** (hooks, agents, chains) | YES | settings.json, hooks/, agents |170<!-- /origin -->171172---173174<!-- origin: skill-builder | version: 1.5 | modifiable: true -->175## The Sacred Directive Pattern176177When a user gives you a rule, store it unchanged in a `## Directives` section with exact wording, source, and date. Place at TOP of skill file. NEVER summarize or reword. Enforce with hooks when possible.178179**Grounding:** Read [references/templates.md](references/templates.md) § "SKILL.md Template" and [references/procedures/directives.md](references/procedures/directives.md) for format and workflow.180<!-- /origin -->181182---183184<!-- origin: skill-builder | version: 1.5 | modifiable: true -->185## § Output Discipline — Cascade, Don't Scatter186187**Applies to ALL procedures universally. This is a behavioral constraint on how skill-builder presents its output.**188189### Rules1901911. **Own-skill actions** (optimize, agents, hooks, ledger for skills managed by skill-builder): Always cascade into the current execution flow via AskUserQuestion + TaskCreate. Never present as standalone slash commands for manual invocation.1922. **Cross-skill actions** (commands belonging to other skills like `/awareness-ledger`): Present in a clearly separated "Related Suggestions" footer, labeled as informational. Never mix into execution menus.1933. **Informational recommendations** in conditional notes (e.g., "Run X to fix this"): Reframe as what the *current procedure* will do, or defer to the execution menu. Example: instead of "Run `/skill-builder optimize` to add eval protocol", say "Missing runtime eval protocol — flagged for optimization."1944. **Anti-pattern**: Never end any procedure output with a list of slash commands the user must copy-paste and run manually. If an action is worth recommending, it's worth cascading.195<!-- /origin -->196197---198199<!-- origin: skill-builder | version: 1.5 | modifiable: true -->200## Grounding201202Before using any template, example, or pattern from reference material:2031. Read the relevant file from `references/`2042. State: "I will use [TEMPLATE/PATTERN] from references/[file] under [SECTION]"205206Reference files:207- [references/enforcement.md](references/enforcement.md) — Hook JSON, permissions, context mutability, provenance permission model208- [references/agents.md](references/agents.md) — Agent templates, opportunity detection, creation workflow209- [references/agents-personas.md](references/agents-personas.md) — Persona assignment rules, selection heuristic, research backing210- [references/agents-teams.md](references/agents-teams.md) — Individual vs. team routing, invocation patterns, mandatory agent situations211- [references/templates.md](references/templates.md) — Skill directory layout, SKILL.md template, frontmatter212- [references/optimization-examples.md](references/optimization-examples.md) — Before/after examples, optimization targets213- [references/portability.md](references/portability.md) — Install instructions, rule-to-skill conversion214- [references/patterns.md](references/patterns.md) — Lessons learned215- [references/platform.md](references/platform.md) — Claude Code skill platform architecture, frontmatter fields, listing budget, invocation flow216- [references/temporal-validation.md](references/temporal-validation.md) — Temporal risk classification, phrase mappings, hook generation spec217- [references/ledger-templates.md](references/ledger-templates.md) — Awareness Ledger record templates, agent definitions, consultation protocol218- [references/procedures/](references/procedures/) — Per-command procedure files (audit, verify, optimize, agents, hooks, new, inline, ledger, cascade, checksums, etc.)219- [references/procedures/checksums.md](references/procedures/checksums.md) — Directive checksum generation spec (scripts generated at runtime, not shipped)220- [agents/optimize-diff-auditor/](agents/optimize-diff-auditor/) — Post-optimize semantic equivalence verification agent221<!-- /origin -->222223---224> Converted and distributed by [TomeVault](https://tomevault.io/claim/odysseyalive) — claim your Tome and manage your conversions.225<!-- tomevault:4.0:skill_md:2026-04-11 -->