Myclaude-creator-engine create
git clone https://github.com/myclaude-sh/myclaude-creator-engine
T=$(mktemp -d) && git clone --depth=1 https://github.com/myclaude-sh/myclaude-creator-engine "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.claude/skills/create" ~/.claude/skills/myclaude-sh-myclaude-creator-engine-create && rm -rf "$T"
.claude/skills/create/SKILL.mdScaffolder
Generate complete, MCS-1-valid project structure for any product type with guidance comments baked in.
When to use: Starting a new product — any of the 13 types.
When NOT to use: When the product already exists in
workspace/ and you want to add content (use /fill). Do not use to overwrite an existing scaffold unless --force is specified.
Activation Protocol
- Shared preamble: Load
— context assembly, persona adaptation, deterministic routing rules.references/quality/activation-preamble.md - Read
— load defaults. Checkcreator.yaml
:schema_version
→ invoke< 3
skill to run Phase 2.5d silent migration first. Migration is atomic + backed up to/onboard
. After migration succeeds, re-read the v3 file and continue.creator.yaml.bak.v2- Missing → micro-onboard: scan silently, infer defaults, ask ONE name question, generate minimal
(v3). Never block.creator.yaml
- Persona: Adapt to
+profile.type
. Loadtechnical_level
. Load the fullreferences/quality/engine-voice-core.md
only when composing peak moments (scaffold celebration, Step 10 proposal rendering, first-product WOW). 2c. Exemplar load: Loadreferences/quality/engine-voice.md
section E3 only — the scaffold celebration reference. Your scaffold announcement MUST carry the same visual rhythm (Frame + pipeline position + portfolio context + 🎯 next action). Adapt to this creator's language and journey position. 2d. Load proactives: Loadreferences/quality/exemplar-outputs.md
— wire #1 (pipeline guidance: after scaffold, guide to /fill), #18 (WOW moment for first product scaffold), #21 (portfolio pattern detection on brownfield check). 2b. Load architectural DNA: Readreferences/engine-proactive.md
. The 10 architectural principles and the Tier 1 DNA patterns (D1-D4, D13, D14) govern every scaffold — the skill applies them during Step 11 template generation and flags any violation before the scaffold is written to disk.structural-dna.md - Discovery Mode Routing (W3.2 — PRIMARY ROUTER): Load
Section 0 — the 12-step discovery walk. Apply the Mode Selection table (Express vs Guided) based on${CLAUDE_SKILL_DIR}/references/create-router.md
+creator.profile.technical_level
+ anycreator.preferences.workflow_style
/--express
flag.--discovery- Express mode → run the "12 Steps — Express Mode Fast Path" section of create-router.md Section 0. Reads type + sub-type flags, applies defaults from
, skips interactive questions, derives the full 19-fieldconfig.yaml routing.{type}.intent_topology
in one pass, and writes it at Step 11 of the walk.intent_declaration - Guided mode → run the "12 Steps — Guided Mode Walk". Asks Q1 (verb family) interactively, reads
silently for Steps 2/3/6, escalates at Step 6 if cognitive justification incomplete, proposes form at Step 10 with confirmation, writescreator.intent_profile
at Step 11.intent_declaration - Discovery returns unroutable (Step 9 zero-match) → fall through to create-router.md Section 1 legacy Q1/Q2/Q3 tree (Contract C4). The creator is never blocked.
+unroutable: true
recorded inunroutable_reason
.intent_declaration - Creator chose "I don't know yet" at Step 1 → route to
suggestion OR legacy tree, at creator's choice./scout
- Express mode → run the "12 Steps — Express Mode Fast Path" section of create-router.md Section 0. Reads type + sub-type flags, applies defaults from
- Gates: Read
. Confirm ifconfig.yaml → gates.confirm_create
; proceed iftrue
.false - Brownfield check: Glob
. If sameworkspace/*/
or overlapping tags found, surface slugs and ask before continuing.product.type - Exemplar guard: Glob
. If found: show condensed preview. If not: skip gracefully — never halt.references/exemplars/{category}* - Load
→ DNA requirements. 7b. Load entity ontology (squad/system/agent/workflow/minds): If type ∈ {squad, system, agent, minds, workflow}, readproduct-dna/{category}.yaml
. This substrate governs:references/entity-ontology.md- Which agent ROLES to suggest during composition discovery (§AGENT_ROLES — 7 functional archetypes with tool boundaries)
- The heritage chain — what this type inherits from and composes with (§HERITAGE, §COMPOSITION)
- The 8 squad anatomy components that MUST appear in the scaffold (§SQUAD_ANATOMY)
- The intelligence gradient — where this type sits in the determinism↔autonomy spectrum (§INTELLIGENCE_GRADIENT)
- The distinction between workflow (YAML decides) and squad (LLM decides) coordination (§WORKFLOW_VS_SQUAD)
- Promotion/demotion heuristics — is this really the right type? (§HEURISTICS)
- Runtime behavior — how this type activates and its token cost (§RUNTIME_BEHAVIOR)
- For /scout-informed creates: type recommendation matrix (§SCOUT_INTELLIGENCE)
- Isomorphic human↔CC mapping for creator-facing explanations (§ISOMORPHIC)
- For type=system ONLY: the 13 functional gears (§SYSTEM_ENGINES) — ask which gears the creator wants active, scaffold coupling declarations
- The intelligence pipeline that governs how scout research enters the product (§INTELLIGENCE_PIPELINE)
- The foundational thesis: restrictions generate intelligence flow — ask "What should this NEVER do?" (§FOUNDATIONAL_THESIS)
- Transversal axes: after type selection, calibrate Delivery × Nature × Depth (§TRANSVERSAL_AXES)
- Composition principles: how products think together — convergence by independence, symbiosis > aggregation (§COMPOSITION_PRINCIPLES)
- Load
→ category questions.${CLAUDE_SKILL_DIR}/references/discovery-questions.md - Load
+references/product-specs/{category}-spec.md
.templates/{category}/ - Load
if exists → prefill scaffold sections. 10b. Link scout report if used —workspace/domain-map.md
is already recorded inscout_source
by Section 0 Step 11. No additional action needed here; the canonical home for scout_source isintent_declaration.scout_source
, not a parallel field. 10c2. CLI contract: Loadintent_declaration
for unified error handling. This skill has minimal CLI surface — one command at Step 1.5. Severity map:references/cli-contract.md
- Silent-skip:
— marketplace scan for competitive context. Skip without warning on failure. First-product guard: skip entirely ifsearch --category {type} --sort downloads --limit 3
(already documented at Step 1.5)is_first_product - All queries: append
, 15s timeout 10c. Portfolio intelligence (back-reference from /validate): Read--json 2>/dev/null
ANDSTATE.yaml → workspace.products[]
. Group by domain. If domain has existing products:STATE.yaml → mcs_results - Show: "Your {domain} portfolio: {slugs}. This will be product #{N}."
- If N >= bundle threshold (
): suggest bundling.config.yaml → intelligence.portfolio.bundle_suggestion_threshold - If complementary type opportunity exists: surface composition suggestion.
- MCS target calibration: If domain has 0 products → default MCS-1 (ship fast, test market). If domain has 2+ validated products → default MCS-2 (quality matters, audience exists).
- Record
andintelligence.domain
inintelligence.market_position
..meta.yaml
- Generate scaffold in
with DNA patterns + WHY comments. The scaffold's type + structure come from theworkspace/{product-slug}/
decided at Section 0 Step 10. Ontology-aware scaffold verification (requires entity-ontology.md loaded at step 7b): For type=squad: verify scaffold contains all 8 anatomy components from entity-ontology.md §SQUAD_ANATOMY:matched_cell.canonical_form- Agent roster (agents/) — each specialist as separate .md file with role-appropriate frontmatter
- Routing table (config/routing-table.md) — IF intent → agent mapping with judgment points
- Handoff protocols (config/handoff-protocol.md) — structured envelope format (from, to, task, state, constraints)
- Workflows (workflows/) — multi-agent sequences with gates and loops
- Skills-as-instruments (skills/) — reusable fragments agents invoke
- Checklists — deterministic verification section in SQUAD.md
- Templates — output format standards in kernel/
- Escalation/quality gates — confidence thresholds and loop limits in SQUAD.md
For type=agent or type=minds: apply §AGENT_ROLES — the role selected during discovery determines frontmatter tool boundaries (
/allowed-tools
) and handoff format expectations. Generate role-appropriate frontmatter. For type=workflow: verify scaffold distinguishes from squad per §WORKFLOW_VS_SQUAD — workflows use skills (not agents), fixed sequence (not LLM routing), deterministic gates (not judgment). If scaffold looks like a squad, surface heuristic coaching. For type=system: apply §HERITAGE — system inherits all squad DNA + adds CLAUDE.md fragment, hooks, output-style, STATE.yaml. Scaffold must include provisions for all composed types per §COMPOSITION. For type=system: apply §SYSTEM_ENGINES — scaffold adenied-tools
section in the system's primary file. Ask the creator: "Which of these organism capabilities do you want active?" Present the 13 gears grouped by function:gears_declaration
- Boundary: E0 (clausura) — always required
- Metabolism: E1 (token budget), E2 (constitution re-injection)
- Memory: E3 (triple memory), E10 (persistent state)
- Perception-Reflex: E4 (hooks perception), E5 (cognitive reflex)
- Judgment-Coordination: E6 (isolated judgment), E7 (coordination network)
- Identity: E8 (external voice)
- Integrity: E9 (recursive validation), E11 (longitudinal self-observation — advanced, MCS-3)
- Lifecycle: E12 (reversible install/uninstall)
For each active gear, the scaffold includes a section with WHY comment and its counterpart declaration.
11b. Locale-adaptive clause substitution (W3.6 — MANDATORY for 6 certified types): For each template file written (SKILL.md, AGENT.md, SQUAD.md, CLAUDE.md for system, AGENT.md for minds, OUTPUT-STYLE.md), perform placeholder substitution for
: a. Read the canonical clause block from{{LOCALE_ADAPTIVE_CLAUSE}}
(the fenced markdown block betweenreferences/locale-adaptive-clause.md §2
and<<< LOCALE-ADAPTIVE CLAUSE ... >>>
, inclusive). b. Read the localized header from<<< END CLAUSE >>>
. If the creator's language is not in the catalog, use theconfig.yaml → routing.common.locale_adaptive_clause.localized_header_catalog.{creator.language}
entry and emit an advisory note. c. Build the substitution block:fallback
. d. Replace the literal string<!-- {localized_header} -->\n\n{canonical_clause}
in each written template file with the substitution block. Use a literal-string replace, not a regex — the placeholder is unique and must not be interpreted. e. Verify post-substitution: the forged file must contain both marker strings ({{LOCALE_ADAPTIVE_CLAUSE}}
and<<< LOCALE-ADAPTIVE CLAUSE (runtime contract, do not edit) >>>
). If either marker is missing after substitution, the forge fails + rollback. e2. Duplication guard: Before substitution in step (d), check if the target file ALREADY contains the marker<<< END CLAUSE >>>
. If found, skip substitution for that file and emit advisory: "Locale clause already present in {file} — skipping to prevent duplication." This handles re-forge (<<< LOCALE-ADAPTIVE CLAUSE
) scenarios where the template already carried a clause from a prior run. f. For type--force
, also perform the substitution on every file insquad
(sub-agents inherit the clause perworkspace/{slug}/agents/*.md
). g. For typereferences/locale-adaptive-clause.md §4
, also perform the substitution on every sub-part file (claude-md fragment, sub-agents, sub-squads) per §4. h. Recordsystem
(already populated at Section 0 Step 11) as the source language used for the lookup — this becomes theintent_declaration.language
field in vault.yaml at /package time.source_language
- Create
(see template below). The.meta.yaml
block is already populated from Section 0 Step 11; the rest of the template is filled by this step (product, state, history, intelligence).intent_declaration - Move
→workspace/domain-map.md
if loaded.workspace/{product-slug}/domain-map.md - Atomic commit (Contract C5): write order matters —
first (it is the local source of truth), then.meta.yaml
append.STATE.yaml decisions_history- If
write fails: abort, announce failure. Nothing else proceeds..meta.yaml - If
append fails afterSTATE.yaml
succeeds: do not roll back the scaffold. The scaffold on disk is recoverable; a deleted scaffold is not. Instead: log.meta.yaml
instate.tracking_sync: false
, emit Engine-fault voice line — "Scaffold forged but Engine lost tracking. Run /status to resync." — and continue..meta.yaml
will detect the orphan on next run and surface it for recovery./status - Only report
when both writes succeed without error.forge_ready
- If
- Engine voice: "Scaffold ready. {N} sections with WHY guidance. Run /fill to start." In Guided mode, also include one-line summary of the cell matched and why: "Forjado como {canonical_form} — {rationale}."
Router Logic
Read
— the file has two sections:${CLAUDE_SKILL_DIR}/references/create-router.md
- Section 0 — DISCOVERY MODE (PRIMARY ROUTER, W3.2): the 12-step decision algorithm from
. Runs in either Express or Guided mode per Activation Protocol step 3. Writes the 19-fieldreferences/capability-matrix.md §3
tointent_declaration
. This is the primary path for every /create invocation in schema v3..meta.yaml - Section 1 — LEGACY DECISION TREE (FALLBACK): the Q1/Q2/Q3 tree preserved verbatim from pre-Wave-3. Runs when Section 0 Step 9 returns
(Contract C4) or when the creator explicitly picks "I don't know yet" at Section 0 Step 1 or invokesunroutable
. Also contains: per-category scaffold structures (Section 2), prefilling strategy (Section 3).--legacy-router
Direct sub-commands trigger Express mode (skip the interactive walk, apply type+sub-type defaults, write
intent_declaration with mode: express):
/create skill [my-tool] | /create agent | /create squad | /create workflow | /create ds | /create claude-md | /create app | /create system | /create bundle | /create statusline | /create hooks | /create minds | /create output-style
Depth flags (Express mode only, pairs with type sub-command):
--procedural | --advisory | --cognitive | --genius [profile_name] (for minds)
Mode override flags:
--express — force Express mode regardless of creator profile
--discovery — force Guided walk (synonym: --guided) regardless of creator profile
--legacy-router — skip Section 0 entirely, go straight to Section 1 legacy tree
--quick — Express mode + skip marketplace scan + skip exemplar preview (legacy alias, retained for backward compatibility)
For experienced creators who know exactly what they want, Express mode + sub-command is the one-motion path. For creators discovering what to build, Guided mode walks them through. For creators in unmapped territory, Section 1 legacy fallback guarantees they always have a path forward.
Universal Creation Flow
| Step | Action | Detail |
|---|---|---|
| 1 | Name + Description | Derive slug: lowercase, hyphens, validate . Existing → offer or . CLI init: vault.yaml but no .meta.yaml → import into Engine workspace. Suggest if deep domain knowledge involved. |
| 1.5 | Marketplace Scan | . Show top 3 with downloads + "What will yours do differently?" Coaching only — never blocking. First-product guard: If , SKIP this step — a first-timer seeing competitor data before articulating their own idea causes second-guessing. Show marketplace context AFTER scaffold, not before. |
| 2 | Discovery Questions | Load + ask from . Ask conversationally. → AskUserQuestion; → plain text. |
| 3 | Load Defaults | From : license, version (always 1.0.0), author, quality target. |
| 4 | Generate Scaffold | Structure only — files, YAML frontmatter, section headers with WHY comments, template vars for metadata. Never generate substantive prose. Leave for expertise sections. See router.md for per-category structures. |
| 5 | MCS-1 Structural Validation | Silently verify: required files present, metadata fields populated, README.md follows structure (Hero, Install, "Is this for me?", Quick Start, Features, How It Works, type-specific, Requirements, Compatibility, Language, License — trilingual EN/PT-BR/ES with anchor nav), no YAML/JSON syntax errors. Auto-fix and note corrections. |
| 6 | Print Next Steps — Cognitive UX | Load full UX stack: (§1 context assembly, §2.3 moment awareness for "first scaffold"), (type naming), (brand DNA). Output is REASONED, not templated — adapt based on creator context. |
Step 6 Cognitive Output Protocol:
Assemble context from creator.yaml + STATE.yaml, then REASON about output:
IF is_first_product: → Full journey map. Warm tone. "Your first product exists." → Show all 4 pipeline steps explicitly. → Use encouraging language: "I'll guide you through each step." IF products_published >= 5: → Compact. "✦ {name} scaffolded. {N} files. /fill when ready." → Skip journey map (they know the pipeline). → Surface only non-obvious: portfolio position, domain intelligence. IF scout_source exists: → Reference the research: "Scaffolded from your {domain} research. {gaps_found} gaps mapped." IF same domain has existing products: → Surface composition: "This joins {existing_slugs} in your {domain} portfolio." ALWAYS: → Use ux_type_name from ux-vocabulary.md (e.g., "Deep Intelligence" not "minds") → Brand frame: ✦ marker, MyClaude Studio box (for first product or guided mode) → Pipeline position: "scaffold → ▸ fill → validate → test → package → publish" → Clear next action: "/fill" (always the next step after create) → VOCABULARY GUARD: Before emitting ANY creator-facing text, grep output for internal terms (MCS-N, DNA, D1-D20, scaffold, forge, substrate, habitable cell, intent_declaration, Sparring Protocol). If creator.profile.type is NOT "developer" or "hybrid", replace per ux-vocabulary.md. If "developer" or "hybrid", internal terms MAY appear but MUST be accompanied by context.
Default frame (guided mode or first 3 products):
┌─ MyClaude Studio ───────────────────────────┐ │ ✦ {product_name} — {ux_type_name} │ │ │ │ {cognitive_insight based on context} │ │ │ │ ▸ scaffold → fill → validate → test → ship │ │ Next: /fill │ └──────────────────────────────────────────────┘
Compact frame (autonomous mode or 5+ products):
For developers:
✦ {product_name} scaffolded. {N} files. {cognitive_insight}. /fill
For non-developers (profile.type != developer):
✦ {product_name} is ready. {N} files created. {cognitive_insight}. Add your expertise next → /fill
.meta.yaml Template
Create
workspace/{product-slug}/.meta.yaml:
# Product metadata — not distributed, stripped during /package product: slug: "{product-slug}" type: "{category}" # skill|agent|squad|workflow|design-system|claude-md|application|system|bundle|statusline|hooks|minds|output-style created: "{YYYY-MM-DD}" mcs_target: "{MCS-1|MCS-2|MCS-3}" # NOTE: For type=minds, cap mcs_target at MCS-2 (Tier 3 DNA patterns are mostly N/A). # Show: "Minds ceiling is MCS-2 (Tier 3 DNA patterns not applicable). Setting target to MCS-2." (G015) # Minds-specific (only when type=minds): # minds_depth: "advisory|cognitive" # minds_sub_type: "self|genius|domain" # cognitive only # genius_profile: "{name}" # genius only state: phase: "scaffold" # scaffold | content | validated | packaged | published last_validated: null last_validation_score: null dna_compliance: tier1: null # 0-100 tier2: null tier3: null overall_score: null last_tested: null test_result: null # "pass" | "fail" | null test_scenarios: null # "{passed}/{total}" | null history: created_at: "{YYYY-MM-DD}" validated_at: [] # append timestamps packaged_at: null published_at: null version: "1.0.0" # Intent Declaration — the canonical record of how /create reasoned from creator intent # to forged form. Written by /create at Step 11 of the 12-step algorithm (express or # guided mode). Consumed by: /validate Stage 0 (Intent Coherence), /fill (natureza-aware # section walks), /package (manifest shape), and STATE.yaml decisions_history # (longitudinal feedback loop per capability-matrix.md §6). # # Schema source of truth: references/capability-matrix.md §3 Step 11 (19 fields). # Enum sources: # - references/intent-topology.md §2 (delivery, nature, depth axis enums) # - references/intent-topology.md §4 (habitable cells v1) # - references/capability-matrix.md §3 Step 1 (verb_family enum) # - references/capability-matrix.md §3 Step 9 (unroutable_reason enum) # - references/capability-matrix.md §4 (mode enum: express | guided) # # Null-safe discipline (Contract C9): every field is populated on every forge. Fields # not applicable to the current mode/path are set to null (single-value) or [] (list). # Never omit a field — downstream consumers must not distinguish "absent" from "null". # # This block is the canonical home for scout_source (Activation Protocol step 9b). intent_declaration: captured_at: null # ISO-8601 when /create resolved the triple (Step 11) creator_said: null # verbatim intent text (guided mode), or "(express mode)" mode: null # express | guided (see references/capability-matrix.md §4) mode_switches: [] # appended by §5 transition protocol; each entry: {from, to, trigger, at_step, at_time} language: null # mirror of creator.yaml → creator.language at forge time (drives locale-adaptive clause + announcements) scout_source: null # "scout-{slug}.md" if a scout report informed this forge (canonical location for Activation Protocol step 9b) # engine_parsed — per-step outputs of the 12-step algorithm. In express mode, these # are populated from sub-command flags + type defaults. In guided mode, from the walk. engine_parsed: verb_family: null # do_X | advise_on_X | coordinate_X | observe_X | enforce_X | react_to_X (Step 1) continuity_bias: null # parent | isolated | unclear (Step 2) invocation_mode: null # remembered | needs_auto (Step 3) pollution_risk: null # pollutes | safe (Step 4) output_shape: null # amplified_reasoning | structured_report (Step 5) depth: null # procedural | advisory | cognitive (Step 6) nature: null # executor | advisor | orchestrator | observer (Step 7) delivery_mechanism: null # ambient_constitutional | ambient_path_scoped | invoked_slash_command | invoked_task_spawn | reflex_hook_binding | composed_system (Step 8 primary) host_set: [] # derived from (delivery, nature) per references/runtime-host-dag.md §2 — NEVER declared, always computed # Canonical cell lookup result (Step 9) matched_cell: null # habitable cell id from intent-topology.md §4 (e.g. "reasoning_skill_cognitive"), or null if unroutable ranked_alternatives: [] # up to 2 alternative cell ids surfaced in the proposal # Creator-facing proposal (Step 10) proposed_form: null # canonical_form from matched_cell, or null if unroutable creator_choice: null # accepted | overridden override_to: null # creator's chosen form if overridden override_reason: null # creator's one-line explanation if overridden # Unroutable handling (Contract C4 — fall-through is a feature, not a failure) unroutable: false unroutable_reason: null # no_habitable_cell | v2_cell_deferred | blocked_by_composition_gap | ambiguous_between_cells unroutable_gap_id: null # gap marker from composition-anatomy.md (e.g. "GAP-COMPOSITION-1") when unroutable_reason == blocked_by_composition_gap # Audit markers for post-hoc schema evolution + default-tracking discriminators_applied: [] # which of [continuity, invocation, pollution, output, depth] actually fired (not just defaults) defaults_applied: [] # intent_profile field names that fell back to declared defaults (schema v3 gap tracking) # Intelligence Layer fields (populated by /validate Stage 8, /scout, /package) # Reference: references/intelligence-layer.md + config.yaml intelligence section intelligence: domain: null # inferred from scout or content (e.g., "kubernetes-security") market_position: null # blue_ocean | moderate | saturated value_score: null # 0-12 composite (depth + uniqueness + coverage + market) value_score_breakdown: null # { depth: N, uniqueness: N, coverage: N, market: N } suggested_price_range: null # [min, max] USD pricing_strategy: null # free | signal | solid | premium | rare distribution_channels: [] # ranked channels for this product type portfolio_role: null # anchor | complement | extension | standalone scored_at: null # ISO-8601 timestamp of last intelligence computation
Quality Gate
Generated scaffold must pass MCS-1 before being shown to the creator:
- All required files for the product type are present
- All required metadata fields are populated (even with placeholders)
- README.md skeleton follows the structure from
— required sections: Hero (problem hook + description), Install, "Is this for me?", Quick Start, Features, How It Works, type-specific section, Requirements, Compatibility, Language, License, Footer. Trilingual structure (EN, PT-BR, ES) with anchor navigation. /create scaffolds section headers with WHY comments; /fill populates content.templates/readme/README.md.template - No syntax errors in any generated YAML or JSON
is valid and contains all required fields.meta.yaml
Anti-Patterns
- Generating content during scaffold — /create generates structure only. Substantive prose, domain knowledge, examples: all /fill's job. Content here bypasses the Sparring Protocol → generic latão polido.
- Blocking on missing creator.yaml — Always micro-onboard and continue.
- Overwriting without --force — Never touch existing workspace products without explicit flag.
- Skipping brownfield check — Always check same-type products before scaffolding.
- Skipping portfolio intelligence (step 9c) — Domain grouping and bundle suggestions must fire when threshold is met.
Decision Notes
CE-D12: WHY comments (
<!-- WHY: ... -->) explain what the creator must fill in. Stripped during /package. Creators should NOT remove them — harmless in workspace.
Pre-validate at scaffold time: Starting at MCS-1 means creators never fix basics. Scaffold failures are bugs in the Scaffolder, not creator errors.
Sub-command routing:
/create skill etc. skip the menu for experienced creators. Menu exists for first-time users who don't know the vocabulary.
Scaffold vs content separation: Content generated by /create bypasses /fill's Sparring Protocol → zero unique expertise. Structure (scaffold) and content (expertise) must stay separate. That separation is what makes the Engine produce gold.