Skill Creator
Create, improve, and audit AI agent skills. Every skill follows 14 proven structural patterns.
Scope: Skills only. NOT for creating agents (use agent-conventions), building MCP servers (/mcp-creator), or running existing skills. This repo uses raw SKILL.md format committed directly to skills/.
Dispatch
| $ARGUMENTS |
Action |
Example |
create <name> / new <name> |
Develop (new) |
/skill-creator create my-analyzer |
create <name> --from <source> |
Develop (new, from exemplar) |
/skill-creator create my-analyzer --from wargame |
improve <name> / improve <path> |
Develop (existing) |
/skill-creator improve design |
plan <name> / plan <path> |
Plan (existing) |
/skill-creator plan review |
plan --all / plan repo |
Plan (repo-wide) |
/skill-creator plan --all |
audit <name> |
Audit |
/skill-creator audit review |
audit <name> --security |
Security Audit |
/skill-creator audit review --security |
audit --all |
Audit All |
/skill-creator audit --all |
eval <name> |
Eval |
/skill-creator eval review |
benchmark <name> |
Benchmark |
/skill-creator benchmark review |
compare <old> <new> |
Compare |
/skill-creator compare review-v1 review-v2 |
optimize-description <name> |
Optimize Description |
/skill-creator optimize-description review |
dashboard |
Dashboard |
/skill-creator dashboard |
package <name> / package --all |
Package |
/skill-creator package wargame |
example-blocks <name> |
Example Blocks |
/skill-creator example-blocks review |
| Natural language skill idea |
Auto: Develop (new) |
"tool that audits Python type safety" |
| Skill name + modification verb |
Auto: Develop (existing) |
"refactor the wargame skill" |
| Path to SKILL.md |
Auto: Develop (existing) |
skills/wargame/SKILL.md |
| "MCP server" / "agent" / "run" |
Refuse + redirect |
— |
| Empty |
Gallery |
/skill-creator |
Auto-Detection Heuristic
If no explicit mode keyword is provided:
- Path ending in
SKILL.md or directory under skills/ → Develop (existing)
- Existing skill name + modification verb (improve, refactor, enhance, update, fix, rewrite, optimize, polish, revise, change) → Develop (existing)
--from <source> in arguments → Develop (new, from exemplar)
- "benchmark", "A/B", "with skill", "without skill", "old skill", "new skill" → Benchmark or Compare
- "trigger", "false positive", "false negative", "description fires" → Optimize Description
- "security", "supply chain", "malicious", "unsafe", "permission", "hook" → Security Audit
- New capability description ("I want to build...", "tool that...", "skill for...") → Develop (new) — derive name, confirm before scaffolding
- "MCP server", "agent", "run" → refuse gracefully and redirect
- Ambiguous → ask the user which mode they want
Quick Start
uv run python skills/skill-creator/scripts/scaffold_skill.py <name> # Scaffold from template
uv run python scripts/check.py # Validate from skill directory
uv run python skills/skill-creator/scripts/audit.py skills/<name>/ # Score quality
uv run python skills/skill-creator/scripts/package.py skills/<name>/ --dry-run # Portability check
Skill Development
Unified process for creating new skills and improving existing ones. Load references/workflow.md for the full procedure.
| Step |
New Skill |
Existing Skill |
| 1. Understand |
Define use cases, scope, patterns |
Audit + understand user's intent |
| 2. Plan |
Structure, description, frontmatter |
Gap analysis + improvement plan (approval gate) |
| 3. Scaffold |
scaffold_skill.py <name> |
Skip |
| 4. Build |
Write/edit body, references, scripts, templates, evals |
Same |
| 5. Validate |
scripts/check.py + audit.py |
Same |
| 6. Iterate |
Test, identify issues, loop to Step 4 |
Same |
Scaling Strategy
Use maximum verified independence, not maximum agent count. Load references/orchestration-graph.md for the full graph contract.
| Scope |
Strategy |
Parallelism |
| Small |
Single-skill edit: inline sequential edit + validation |
Lead only |
| Medium |
Single-skill multi-surface edit: stabilize body contract, then split references/evals/scripts by owned file |
2-5 disjoint lanes |
| Large |
Skill cluster or repo-wide plan: inventory, rank, shard by skill or surface, add judge lane |
One worker per owned shard |
| Large |
Public workflow/schema/tooling change: OpenSpec first, then workers behind explicit dependencies |
Spec, implementation, verifier, docs-steward lanes |
| Large |
Behavioral eval/benchmark program: static gates first, then opt-in eval runner/report lanes |
Trigger, output, safety, report, judge lanes |
Every lane must define inputs, owned paths, output artifact, validation command, and accounting state before dispatch. Same-file edits, generated docs, hooks, packaging semantics, and schema decisions are serialized unless an explicit lock/arbiter protocol exists.
Repo-Wide / Multi-Skill Planning
Use plan <name> for an existing-skill refinement plan without editing and plan --all or plan repo for a ranked repo-wide planning pass.
Required planning output:
- baseline audit summary
- highest-value findings
- explicit file targets
- expected score impact
- approval gate before any edits
For repo-wide planning, produce a ranked queue plus one standalone refinement plan per promoted skill or skill cluster. Do not edit any skill until the user approves the plan.
Load references/refinement-plan.md when producing the standalone refinement-plan packet.
Audit
Score a skill using deterministic analysis + AI review. Load references/audit-guide.md.
Security Audit
Audit a skill as an executable supply-chain asset. Load references/security-governance.md.
Required output:
- security surface inventory
- source/sink threat model
- permission posture
- hook/script/template/reference findings
- adversarial eval recommendations
- risk tier:
low, medium, high, or blocked
Security Audit is read-only. Do not install third-party skills, run untrusted scripts, or modify the audited skill.
Audit All
Comparative ranking of all repository skills. Load references/audit-guide.md § Audit All.
Eval / Benchmark / Compare / Optimize Description
Behavioral proof complements static audit scoring. Load references/evidence-and-benchmarking.md.
| Mode |
Purpose |
| Eval |
Review or author trigger, output, regression, safety, and portability eval cases |
| Benchmark |
Plan or run opt-in with-skill vs without-skill measurement for a skill |
| Compare |
Plan or run opt-in old-skill vs new-skill measurement for an improvement |
| Optimize Description |
Test trigger and near-miss negative queries, then revise the description from evidence |
Default to read-only planning unless the user explicitly approves live eval runs and the target workspace. Store behavioral run artifacts outside committed skills/ source.
Dashboard
Render visual creation process monitor or audit quality dashboard. Load references/audit-guide.md § Dashboard.
Auto-detects mode from data: phases field → process monitor; skills array → audit overview.
Gallery (Empty Arguments)
Present skill inventory with scores and available actions.
Run uv run python scripts/audit.py --all --format table, display results, offer mode menu.
Package
Package skills into portable ZIP files for Claude Code Desktop import. Load references/packaging-guide.md for ZIP structure, manifest schema, portability checks, and cross-agent compatibility.
uv run python skills/skill-creator/scripts/package.py skills/<name>/ --dry-run # Check before emitting a ZIP
uv run python skills/skill-creator/scripts/package.py skills/<name>/ # Single skill → <name>-v<version>.skill.zip
Example Blocks Generator
Generate Empty/Help Gallery example bullets from an existing dispatch table.
uv run python skills/skill-creator/scripts/generate_example_blocks.py <name> # Preview block
uv run python skills/skill-creator/scripts/generate_example_blocks.py <name> --apply # Append when missing
Use this mode after the dispatch table stabilizes and before publishing the skill. Do not append duplicate ## Example Blocks sections.
Runtime Hook Projection
This portable skill source does not embed skill-scoped hooks frontmatter. Repo-managed hook policy lives in config/hook-registry.json and is projected into supported harness settings by the repository sync/rendering workflow.
Runtime-projected hook enforcement for this skill should preserve these behaviors:
SKILL.md edits trigger validate_skill.py
evals/*.json edits trigger validate_evals.py
- hook-bearing skill/settings edits trigger
validate_hooks.py
- Stop hooks validate dirty skill-definition, eval, and hook surfaces before exit
- Stop hooks exit immediately when hook input has
stop_hook_active: true to avoid recursive loops
Packaged skills must not depend on repo-root commands such as uv run python scripts/verify.py .... Keep executable hook commands in runtime-specific config, not in portable skill frontmatter.
State Management
Creation progress persists at ~/.{gemini|copilot|codex|claude}/skill-progress/<name>.json. Read/write via scripts/progress.py. Survives session restarts. Use --state-dir to override the default location.
Reference File Index
| File |
Content |
Read When |
references/workflow.md |
Unified skill lifecycle process for new and existing skills |
Develop (new), Develop (existing), Eval, Benchmark |
references/refinement-plan.md |
Standalone refinement-plan contract for existing-skill and repo-wide planning output |
Plan (existing), Plan (repo-wide) |
references/audit-guide.md |
Audit procedure, Audit All, Dashboard rendering, Gallery, grade thresholds |
Audit, Audit All, Dashboard, Gallery |
references/proven-patterns.md |
14 structural patterns with examples from repo skills |
Step 4 (Build), gap analysis |
references/best-practices.md |
Anthropic guide + superpowers methodology + cross-agent awareness |
Step 2 (Plan), Step 4 (Build), description writing |
references/frontmatter-spec.md |
Full field catalog, invocation matrix, decision tree |
Step 3 (Scaffold), frontmatter configuration |
references/packaging-guide.md |
ZIP structure, manifest schema, portability checks, import instructions |
Package |
references/evaluation-rubric.md |
13 weighted scoring dimensions normalized to 100, grade thresholds, pressure testing |
Audit (pressure testing), scoring targets |
references/evidence-and-benchmarking.md |
Lifecycle packet, behavioral evals, benchmark artifacts, trigger optimization |
Eval, Benchmark, Compare, Optimize Description |
references/security-governance.md |
Threat model, third-party intake, permission posture, hook/script safety |
Security Audit, Step 2 (Plan), Package |
references/runtime-compatibility.md |
Portable and runtime-specific fields, install paths, graceful degradation |
Step 3 (Scaffold), Package, Security Audit |
references/orchestration-graph.md |
Parallel lane graph, ownership, accounting, locks, judge layer |
Scaling Strategy, repo-wide plans |
Read reference files as indicated by the "Read When" column above. Do not rely on memory or prior knowledge of their contents.
Core Principles
Conciseness is respect — The context window is shared. Every line competes with the agent's working memory. Earn every line or delete it.
Progressive disclosure — Frontmatter for discovery (~100 tokens), body for dispatch (<5K tokens), references for deep knowledge (on demand), scripts/templates for execution (never loaded).
Self-exemplar — This skill follows every pattern it teaches. When in doubt, look at how skill-creator applies it.
Validation Contract
Run from this skill directory before declaring changes complete:
uv run python scripts/check.py
Completion criteria:
uv run python scripts/check.py exits 0.
- No portable-CLI violations remain under this skill directory.
Critical Rules
- Run
uv run python scripts/check.py from the target skill directory before declaring any skill complete
- Re-run
uv run python scripts/check.py after changing evals and before declaring the skill complete
- Run
uv run python scripts/audit.py after every significant SKILL.md change
- Never create a skill without a dispatch table — it is the routing contract
- Never create a dispatch table without an empty-args handler — unrouted input is a bug
- Every reference file must appear in the Reference File Index — orphan refs are invisible
- Every indexed reference must exist on disk — phantom refs cause agent errors
- Body must stay under 500 lines (below frontmatter) — move detail to references
- Description must include "Use when" trigger phrases AND "NOT for" exclusions
- Names must be kebab-case, 2-64 chars, no consecutive hyphens, no reserved words
- Scripts use argparse + JSON to stdout — no custom output formats
- Templates are self-contained HTML with no external dependencies
- Do NOT call repo-specific docs generators directly — delegate to docs-steward
- Do NOT create agents or MCP servers — refuse gracefully and redirect
- Improving existing skills requires presenting an improvement plan and getting user approval before implementing changes
- Audit mode is read-only — never modify the skill being audited
- Update evals when dispatch behavior or modes change — stale evals are invisible bugs
plan <name> and plan --all are read-only planning modes — never edit during planning
- Repo-wide or multi-skill requests require a ranked plan and standalone refinement-plan output before any implementation begins
- Runtime-projected Stop hooks must include a
stop_hook_active guard — recursive hook loops are implementation bugs
- Source-ground new skills in real workflow evidence; generic best-practice generation starts as
needs-evidence
- Benchmark meaningful changes against
without_skill or old_skill before claiming behavioral improvement
- Security-governance findings can block release even when static quality score is A
- Choose an explicit permission posture for every skill that uses scripts, hooks, tools, network, credentials, or writes
- Use OpenSpec before changing public eval schema, validation behavior, hook policy, packaging semantics, or generated-doc workflows
- Do not run live installs, live behavioral evals, browser launches, or command-file injection from Plan, Audit, or Security Audit modes
Canonical terms (use these exactly throughout):
- Modes: "Develop (new)", "Develop (existing)", "Plan (existing)", "Plan (repo-wide)", "Audit", "Security Audit", "Audit All", "Eval", "Benchmark", "Compare", "Optimize Description", "Dashboard", "Package", "Gallery"
- Steps (Development): "Understand", "Plan", "Scaffold", "Build", "Validate", "Iterate"
- Grade scale: "A" (90-100), "B" (75-89), "C" (60-74), "D" (40-59), "F" (<40)
- Patterns: "dispatch-table", "reference-file-index", "critical-rules", "canonical-vocabulary", "scope-boundaries", "classification-gating", "scaling-strategy", "state-management", "scripts", "templates", "hooks", "progressive-disclosure", "body-substitutions", "stop-hooks"
- Audit dimensions: "frontmatter", "description", "dispatch-table", "body-structure", "pattern-coverage", "reference-quality", "critical-rules", "script-quality", "portability", "conciseness", "canonical-vocabulary", "evaluation-coverage", "validation-contract", "security-governance"
1---2name: skill-creator3description: Create, improve, and audit AI agent skills. 14 structural patterns, deterministic scoring. Use when building or reviewing skills. NOT for agents, MCP servers, or running skills.4license: MIT5---6# Skill Creator78Create, improve, and audit AI agent skills. Every skill follows 14 proven structural patterns.910**Scope:** Skills only. NOT for creating agents (use `agent-conventions`), building MCP servers (`/mcp-creator`), or running existing skills. This repo uses raw `SKILL.md` format committed directly to `skills/`.1112## Dispatch1314| $ARGUMENTS | Action | Example |15| ----------------------------------- | ---------------------------- | -------------------------------------------------- |16| `create <name>` / `new <name>` | Develop (new) | `/skill-creator create my-analyzer` |17| `create <name> --from <source>` | Develop (new, from exemplar) | `/skill-creator create my-analyzer --from wargame` |18| `improve <name>` / `improve <path>` | Develop (existing) | `/skill-creator improve design` |19| `plan <name>` / `plan <path>` | Plan (existing) | `/skill-creator plan review` |20| `plan --all` / `plan repo` | Plan (repo-wide) | `/skill-creator plan --all` |21| `audit <name>` | Audit | `/skill-creator audit review` |22| `audit <name> --security` | Security Audit | `/skill-creator audit review --security` |23| `audit --all` | Audit All | `/skill-creator audit --all` |24| `eval <name>` | Eval | `/skill-creator eval review` |25| `benchmark <name>` | Benchmark | `/skill-creator benchmark review` |26| `compare <old> <new>` | Compare | `/skill-creator compare review-v1 review-v2` |27| `optimize-description <name>` | Optimize Description | `/skill-creator optimize-description review` |28| `dashboard` | Dashboard | `/skill-creator dashboard` |29| `package <name>` / `package --all` | Package | `/skill-creator package wargame` |30| `example-blocks <name>` | Example Blocks | `/skill-creator example-blocks review` |31| Natural language skill idea | Auto: Develop (new) | `"tool that audits Python type safety"` |32| Skill name + modification verb | Auto: Develop (existing) | `"refactor the wargame skill"` |33| Path to SKILL.md | Auto: Develop (existing) | `skills/wargame/SKILL.md` |34| "MCP server" / "agent" / "run" | Refuse + redirect | — |35| Empty | Gallery | `/skill-creator` |3637### Auto-Detection Heuristic3839If no explicit mode keyword is provided:40411. Path ending in `SKILL.md` or directory under `skills/` → **Develop (existing)**422. Existing skill name + modification verb (improve, refactor, enhance, update, fix, rewrite, optimize, polish, revise, change) → **Develop (existing)**433. `--from <source>` in arguments → **Develop (new, from exemplar)**444. "benchmark", "A/B", "with skill", "without skill", "old skill", "new skill" → **Benchmark** or **Compare**455. "trigger", "false positive", "false negative", "description fires" → **Optimize Description**466. "security", "supply chain", "malicious", "unsafe", "permission", "hook" → **Security Audit**477. New capability description ("I want to build...", "tool that...", "skill for...") → **Develop (new)** — derive name, confirm before scaffolding488. "MCP server", "agent", "run" → refuse gracefully and redirect499. Ambiguous → ask the user which mode they want5051## Quick Start5253```bash54uv run python skills/skill-creator/scripts/scaffold_skill.py <name> # Scaffold from template55uv run python scripts/check.py # Validate from skill directory56uv run python skills/skill-creator/scripts/audit.py skills/<name>/ # Score quality57uv run python skills/skill-creator/scripts/package.py skills/<name>/ --dry-run # Portability check58```5960## Skill Development6162Unified process for creating new skills and improving existing ones. Load `references/workflow.md` for the full procedure.6364| Step | New Skill | Existing Skill |65| ------------- | --------------------------------------------------------- | ----------------------------------------------- |66| 1. Understand | Define use cases, scope, patterns | Audit + understand user's intent |67| 2. Plan | Structure, description, frontmatter | Gap analysis + improvement plan (approval gate) |68| 3. Scaffold | `scaffold_skill.py <name>` | Skip |69| 4. Build | Write/edit body, references, scripts, templates, evals | Same |70| 5. Validate | `scripts/check.py` + `audit.py` | Same |71| 6. Iterate | Test, identify issues, loop to Step 4 | Same |7273## Scaling Strategy7475Use maximum verified independence, not maximum agent count. Load `references/orchestration-graph.md` for the full graph contract.7677| Scope | Strategy | Parallelism |78|-------|----------|-------------|79| Small | Single-skill edit: inline sequential edit + validation | Lead only |80| Medium | Single-skill multi-surface edit: stabilize body contract, then split references/evals/scripts by owned file | 2-5 disjoint lanes |81| Large | Skill cluster or repo-wide plan: inventory, rank, shard by skill or surface, add judge lane | One worker per owned shard |82| Large | Public workflow/schema/tooling change: OpenSpec first, then workers behind explicit dependencies | Spec, implementation, verifier, docs-steward lanes |83| Large | Behavioral eval/benchmark program: static gates first, then opt-in eval runner/report lanes | Trigger, output, safety, report, judge lanes |8485Every lane must define inputs, owned paths, output artifact, validation command, and accounting state before dispatch. Same-file edits, generated docs, hooks, packaging semantics, and schema decisions are serialized unless an explicit lock/arbiter protocol exists.8687## Repo-Wide / Multi-Skill Planning8889Use `plan <name>` for an existing-skill refinement plan without editing and `plan --all` or `plan repo` for a ranked repo-wide planning pass.9091Required planning output:92931. baseline audit summary942. highest-value findings953. explicit file targets964. expected score impact975. approval gate before any edits9899For repo-wide planning, produce a ranked queue plus one standalone refinement plan per promoted skill or skill cluster. Do not edit any skill until the user approves the plan.100101Load `references/refinement-plan.md` when producing the standalone refinement-plan packet.102103## Audit104105Score a skill using deterministic analysis + AI review. Load `references/audit-guide.md`.106107## Security Audit108109Audit a skill as an executable supply-chain asset. Load `references/security-governance.md`.110111Required output:1121131. security surface inventory1142. source/sink threat model1153. permission posture1164. hook/script/template/reference findings1175. adversarial eval recommendations1186. risk tier: `low`, `medium`, `high`, or `blocked`119120Security Audit is read-only. Do not install third-party skills, run untrusted scripts, or modify the audited skill.121122## Audit All123124Comparative ranking of all repository skills. Load `references/audit-guide.md` § Audit All.125126## Eval / Benchmark / Compare / Optimize Description127128Behavioral proof complements static audit scoring. Load `references/evidence-and-benchmarking.md`.129130| Mode | Purpose |131|------|---------|132| Eval | Review or author trigger, output, regression, safety, and portability eval cases |133| Benchmark | Plan or run opt-in with-skill vs without-skill measurement for a skill |134| Compare | Plan or run opt-in old-skill vs new-skill measurement for an improvement |135| Optimize Description | Test trigger and near-miss negative queries, then revise the description from evidence |136137Default to read-only planning unless the user explicitly approves live eval runs and the target workspace. Store behavioral run artifacts outside committed `skills/` source.138139## Dashboard140141Render visual creation process monitor or audit quality dashboard. Load `references/audit-guide.md` § Dashboard.142143Auto-detects mode from data: `phases` field → process monitor; `skills` array → audit overview.144145## Gallery (Empty Arguments)146147Present skill inventory with scores and available actions.148Run `uv run python scripts/audit.py --all --format table`, display results, offer mode menu.149150## Package151152Package skills into portable ZIP files for Claude Code Desktop import. Load `references/packaging-guide.md` for ZIP structure, manifest schema, portability checks, and cross-agent compatibility.153154```bash155uv run python skills/skill-creator/scripts/package.py skills/<name>/ --dry-run # Check before emitting a ZIP156uv run python skills/skill-creator/scripts/package.py skills/<name>/ # Single skill → <name>-v<version>.skill.zip157```158159## Example Blocks Generator160161Generate Empty/Help Gallery example bullets from an existing dispatch table.162163```bash164uv run python skills/skill-creator/scripts/generate_example_blocks.py <name> # Preview block165uv run python skills/skill-creator/scripts/generate_example_blocks.py <name> --apply # Append when missing166```167168Use this mode after the dispatch table stabilizes and before publishing the skill. Do not append duplicate `## Example Blocks` sections.169170## Runtime Hook Projection171172This portable skill source does not embed skill-scoped `hooks` frontmatter. Repo-managed hook policy lives in `config/hook-registry.json` and is projected into supported harness settings by the repository sync/rendering workflow.173174Runtime-projected hook enforcement for this skill should preserve these behaviors:175176- `SKILL.md` edits trigger `validate_skill.py`177- `evals/*.json` edits trigger `validate_evals.py`178- hook-bearing skill/settings edits trigger `validate_hooks.py`179- Stop hooks validate dirty skill-definition, eval, and hook surfaces before exit180- Stop hooks exit immediately when hook input has `stop_hook_active: true` to avoid recursive loops181182Packaged skills must not depend on repo-root commands such as `uv run python scripts/verify.py ...`. Keep executable hook commands in runtime-specific config, not in portable skill frontmatter.183184## State Management185186Creation progress persists at `~/.{gemini|copilot|codex|claude}/skill-progress/<name>.json`. Read/write via `scripts/progress.py`. Survives session restarts. Use `--state-dir` to override the default location.187188## Reference File Index189190| File | Content | Read When |191| --------------------------------- | ------------------------------------------------------------------------------------ | -------------------------------------------------- |192| `references/workflow.md` | Unified skill lifecycle process for new and existing skills | Develop (new), Develop (existing), Eval, Benchmark |193| `references/refinement-plan.md` | Standalone refinement-plan contract for existing-skill and repo-wide planning output | Plan (existing), Plan (repo-wide) |194| `references/audit-guide.md` | Audit procedure, Audit All, Dashboard rendering, Gallery, grade thresholds | Audit, Audit All, Dashboard, Gallery |195| `references/proven-patterns.md` | 14 structural patterns with examples from repo skills | Step 4 (Build), gap analysis |196| `references/best-practices.md` | Anthropic guide + superpowers methodology + cross-agent awareness | Step 2 (Plan), Step 4 (Build), description writing |197| `references/frontmatter-spec.md` | Full field catalog, invocation matrix, decision tree | Step 3 (Scaffold), frontmatter configuration |198| `references/packaging-guide.md` | ZIP structure, manifest schema, portability checks, import instructions | Package |199| `references/evaluation-rubric.md` | 13 weighted scoring dimensions normalized to 100, grade thresholds, pressure testing | Audit (pressure testing), scoring targets |200| `references/evidence-and-benchmarking.md` | Lifecycle packet, behavioral evals, benchmark artifacts, trigger optimization | Eval, Benchmark, Compare, Optimize Description |201| `references/security-governance.md` | Threat model, third-party intake, permission posture, hook/script safety | Security Audit, Step 2 (Plan), Package |202| `references/runtime-compatibility.md` | Portable and runtime-specific fields, install paths, graceful degradation | Step 3 (Scaffold), Package, Security Audit |203| `references/orchestration-graph.md` | Parallel lane graph, ownership, accounting, locks, judge layer | Scaling Strategy, repo-wide plans |204205Read reference files as indicated by the "Read When" column above. Do not rely on memory or prior knowledge of their contents.206207## Core Principles208209**Conciseness is respect** — The context window is shared. Every line competes with the agent's working memory. Earn every line or delete it.210211**Progressive disclosure** — Frontmatter for discovery (~100 tokens), body for dispatch (<5K tokens), references for deep knowledge (on demand), scripts/templates for execution (never loaded).212213**Self-exemplar** — This skill follows every pattern it teaches. When in doubt, look at how skill-creator applies it.214215## Validation Contract216217Run from this skill directory before declaring changes complete:218219```bash220uv run python scripts/check.py221```222223Completion criteria:2242251. `uv run python scripts/check.py` exits 0.2262. No portable-CLI violations remain under this skill directory.227228## Critical Rules2292301. Run `uv run python scripts/check.py` from the target skill directory before declaring any skill complete2312. Re-run `uv run python scripts/check.py` after changing evals and before declaring the skill complete2323. Run `uv run python scripts/audit.py` after every significant SKILL.md change2334. Never create a skill without a dispatch table — it is the routing contract2345. Never create a dispatch table without an empty-args handler — unrouted input is a bug2356. Every reference file must appear in the Reference File Index — orphan refs are invisible2367. Every indexed reference must exist on disk — phantom refs cause agent errors2378. Body must stay under 500 lines (below frontmatter) — move detail to references2389. Description must include "Use when" trigger phrases AND "NOT for" exclusions23910. Names must be kebab-case, 2-64 chars, no consecutive hyphens, no reserved words24011. Scripts use argparse + JSON to stdout — no custom output formats24112. Templates are self-contained HTML with no external dependencies24213. Do NOT call repo-specific docs generators directly — delegate to docs-steward24314. Do NOT create agents or MCP servers — refuse gracefully and redirect24415. Improving existing skills requires presenting an improvement plan and getting user approval before implementing changes24516. Audit mode is read-only — never modify the skill being audited24617. Update evals when dispatch behavior or modes change — stale evals are invisible bugs24718. `plan <name>` and `plan --all` are read-only planning modes — never edit during planning24819. Repo-wide or multi-skill requests require a ranked plan and standalone refinement-plan output before any implementation begins24920. Runtime-projected Stop hooks must include a `stop_hook_active` guard — recursive hook loops are implementation bugs25021. Source-ground new skills in real workflow evidence; generic best-practice generation starts as `needs-evidence`25122. Benchmark meaningful changes against `without_skill` or `old_skill` before claiming behavioral improvement25223. Security-governance findings can block release even when static quality score is A25324. Choose an explicit permission posture for every skill that uses scripts, hooks, tools, network, credentials, or writes25425. Use OpenSpec before changing public eval schema, validation behavior, hook policy, packaging semantics, or generated-doc workflows25526. Do not run live installs, live behavioral evals, browser launches, or command-file injection from Plan, Audit, or Security Audit modes256257**Canonical terms** (use these exactly throughout):258259- Modes: "Develop (new)", "Develop (existing)", "Plan (existing)", "Plan (repo-wide)", "Audit", "Security Audit", "Audit All", "Eval", "Benchmark", "Compare", "Optimize Description", "Dashboard", "Package", "Gallery"260- Steps (Development): "Understand", "Plan", "Scaffold", "Build", "Validate", "Iterate"261- Grade scale: "A" (90-100), "B" (75-89), "C" (60-74), "D" (40-59), "F" (<40)262- Patterns: "dispatch-table", "reference-file-index", "critical-rules", "canonical-vocabulary", "scope-boundaries", "classification-gating", "scaling-strategy", "state-management", "scripts", "templates", "hooks", "progressive-disclosure", "body-substitutions", "stop-hooks"263- Audit dimensions: "frontmatter", "description", "dispatch-table", "body-structure", "pattern-coverage", "reference-quality", "critical-rules", "script-quality", "portability", "conciseness", "canonical-vocabulary", "evaluation-coverage", "validation-contract", "security-governance"