craft-analyze
Post-cycle analysis — QA, UX, Creative, and Style audits using MCP browser tools.
This file is read by parent commands (cycle-design, story-new) that need to run creative-spark logic inline instead of via nested Skill invocation. The standalone `/craft:creative-spark` skill reads this same file.
> /plugin marketplace add drobins25/craft > /plugin install craft@craft
How it fires
How this command gets triggered: by you, by Claude, or both.
/creative-spark-inlineContext preview
What this command does when you run it.
This file is read by parent commands (cycle-design, story-new) that need to run creative-spark logic inline instead of via nested Skill invocation. The standalone `/craft:creative-spark` skill reads this same file.
This file is read by parent commands (cycle-design, story-new) that need to run creative-spark logic inline instead of via nested Skill invocation. The standalone `/craft:creative-spark` skill reads this same file.
When the user selected "Let's get creative" for a story. After content-spark has completed (if applicable).
**Existing Visual Direction:** Read the story file. If it already has a populated `## Visual Direction` section:
Use **AskUserQuestion**:
question: "This story already has visual direction. How should creative exploration work?"
header: "Visual"
options:
- label: "Build on it"
description: "Explore functional and interaction options within the existing visual direction"
- label: "Replace it"
description: "Start fresh - generate new visual directions too"**Content Direction Awareness:** If the story has `## Content Direction`, read it fully. Treat it as a constraint - your options explore the HOW while respecting the WHAT.
Use **AskUserQuestion**:
question: "Who should drive the creative direction?"
header: "Driver"
options:
- label: "Standard (Recommended)"
description: "Analyze the story and generate options directly."
- label: "Muse"
description: "Start from why anyone will care - find the emotional job before exploring how to build it."
- label: "Alchemist"
description: "Find the physical metaphor first - what does this weigh, how does it move?"
- label: "Full Workshop"
description: "Muse finds the feeling. Alchemist finds the physics. Options where both speak."**If Standard:** Skip to Step 2.
**If Muse, Alchemist, or Full Workshop:** Invoke the agent(s) via Agent tool (NOT Skill tool - agents return results directly). Use the prompts from `skills/creative-spark/SKILL.md` Steps 1.5-1.6 for agent invocation format. Store results as enriched brief for Step 2.
If an enriched brief exists from agent interrogation, use it as input.
Before jumping to layouts and wireframes, spend a moment as a design director:
Write your output preamble: 1. **Design POV** (2-3 sentences) - opinionated thesis on what this feature should feel like 2. **Core Tension** (1 sentence) - the competing values your options take different stances on 3. **Physics** (1 sentence, UI stories only) - "This interface has the weight of ___. It responds like ___."
Read `${CLAUDE_PLUGIN_ROOT}/skills/creative-spark/references/output-formats.md` for UI/UX, Technical, and Copy/Voice option format templates.
Options should span genuinely different creative territories anchored by the tension:
For each option provide: name, approach (2-3 sentences), why it works, trade-offs, effort (Small/Medium/Large), best for.
Pick a winner and defend it with conviction. Don't hedge.
Present options via **AskUserQuestion** with previews:
question: "Which direction speaks to you?"
header: "Direction"
options:
- label: "[Option A name]"
description: "[1-sentence summary]"
preview: "[Full content block - wireframe + visual direction for UI, architecture for technical]"
- label: "[Option B name]"
description: "[1-sentence summary]"
preview: "[Full content block]"
- label: "[Option C name]"
description: "[1-sentence summary]"
preview: "[Full content block]"Read the user's response to the selection AUQ and route:
Rail: recommend freely, commit to the story file only on an explicit pick/yes; auto-pick ONLY on explicit delegation. A converged loop direction is not approval - close it with the selection.
After user picks a direction, before transitioning to lock-decision, run motion refinement. Read `${CLAUDE_PLUGIN_ROOT}/skills/creative-spark/references/animation-integration.md` for the full 3-step motion refinement workflow.
Update the story file with the chosen option's:
Stop Vibing. Start Crafting. A Claude Code plugin that acts as an intelligent harness for your development workflow: your codebase is read-only by default, every change passes through a Write Gate as planned and approved work, and craft tracks your project's
Repo: drobins25/craft
Post-cycle analysis — QA, UX, Creative, and Style audits using MCP browser tools.
Consult a craft agent. Routes your question to the best mind in the workshop - not a menu, a recommendation.
Agent crystallization command. Studies a tool, role, or person and produces a portable 9-section agent that inhabits the domain - with beliefs, scar tissue,…
Complete a cycle. Triggers reflection if pending learnings, then archives.
Design a cycle — create new cycles with planned stories, detail existing planning cycles, or quick-sketch a roadmap. Detects planning docs in .craft/planning/…