aesthetic-dreaming Skill
Purpose: Create aesthetic templates before implementing any plugins. Capture visual design systems through adaptive questioning, generate structured aesthetic.md, and optionally create test previews demonstrating the aesthetic across different plugin types.
Solves: The friction of needing to create a full plugin just to design and save an aesthetic template. Build a library of visual design systems first, apply them later.
Phase Flow:
- Phase 1: Free-form collection - Gather initial aesthetic vision
- Phase 2: Gap analysis - Identify missing visual elements
- Phase 3: Question batch - Ask 4 contextual questions via AskUserQuestion
- Phase 3.5: Decision gate - Finalize / Continue / Add context
- Phase 3.7: Name aesthetic (if finalizing)
- Phase 4: Test preview selection
- Phase 5: Generate files
- Phase 6: Decision menu
Loop Structure:
Phases 2-3-3.5 repeat until user chooses "finalize" at decision gate.
Critical Rules:
- Do NOT skip phases
- Do NOT execute phases out of order
- Do NOT proceed to finalization before decision gate approval
- NEVER auto-proceed past decision gates
Describe the visual design system you want to create—share as much or as little as you want. I'll ask follow-ups for anything missing.
Consider: overall vibe, color palette, control styling, spacing, textures, typography, and plugin types this would suit.
You can reference existing designs, describe feelings, or provide technical specifics.
Instead focus on uncovered gaps: typography, spacing, textures, plugin types.
- Yes, finalize it - Create aesthetic.md and optional previews
- Ask me 4 more questions - Continue refining the design
- Let me add more context first - Provide additional details before questions
Choose (1-3): _
See references/file-generation.md for complete Phase 5 implementation protocol.
What's next?
- Open test previews - View mockups in browser
- Refine aesthetic - Adjust and regenerate aesthetic.md
- Create another aesthetic - Start new aesthetic
- Apply to existing plugin - Choose plugin from PLUGINS.md
- Done
Choose (1-5): _
Anti-pattern: Never ask about concepts already provided. Never repeat questions in different words.
Tier Priority: Tier 1 (Critical: vibe, color philosophy, control style) → Tier 2 (Visual Core: specific colors, typography, spacing, textures) → Tier 3 (Context: plugin types, inspirations, special features)
See references/aesthetic-questions.md for detailed gap analysis strategies and question banks.
See references/workflow-examples.md for complete examples showing adaptive questioning across different input scenarios.
Success Criteria
Skill is successful when:
- Aesthetic concept captured through adaptive questions
- No redundant questions asked (respects already-provided info)
- aesthetic.md generated with all 12 sections filled
- Test previews generated for selected plugin types (if any)
- Files stored in correct locations (.claude/aesthetics/[id]/)
- Aesthetic immediately available in ui-mockup skill
- User feels creative flow, not interrogated
- Clear next steps presented
Design Rationale
See references/design-rationale.md for detailed explanation of design decisions, format consistency rules, and quality control procedures.
Reference Documentation
See also:
ui-template-library skill - Apply and save operations
ui-mockup skill - Integration with Phase 0 aesthetic selection
plugin-ideation skill - Adaptive questioning pattern reference
assets/test-plugin-specs.json - Test plugin parameter definitions
references/aesthetic-questions.md - Question bank and strategies
references/question-examples.md - AskUserQuestion formatting examples
references/test-preview-protocol.md - Test preview generation protocol
references/error-handling.md - Error handling and edge cases
1---2name: aesthetic-dreaming3description: Create aesthetic templates without first creating a plugin - capture visual design concepts through adaptive questioning. Use when you want to build a library of visual systems before plugin implementation.4---56# aesthetic-dreaming Skill78**Purpose:** Create aesthetic templates before implementing any plugins. Capture visual design systems through adaptive questioning, generate structured aesthetic.md, and optionally create test previews demonstrating the aesthetic across different plugin types.910**Solves:** The friction of needing to create a full plugin just to design and save an aesthetic template. Build a library of visual design systems first, apply them later.1112---1314<workflow_overview>15<critical_sequence enforcement="strict">16This workflow MUST execute phases in order. Do NOT skip phases or proceed to finalization before completing gap analysis and question batches.1718**Phase Flow:**191. **Phase 1: Free-form collection** - Gather initial aesthetic vision202. **Phase 2: Gap analysis** - Identify missing visual elements213. **Phase 3: Question batch** - Ask 4 contextual questions via AskUserQuestion224. **Phase 3.5: Decision gate** - Finalize / Continue / Add context235. **Phase 3.7: Name aesthetic** (if finalizing)246. **Phase 4: Test preview selection**257. **Phase 5: Generate files**268. **Phase 6: Decision menu**2728**Loop Structure:**29Phases 2-3-3.5 repeat until user chooses "finalize" at decision gate.3031**Critical Rules:**32- Do NOT skip phases33- Do NOT execute phases out of order34- Do NOT proceed to finalization before decision gate approval35- NEVER auto-proceed past decision gates36</critical_sequence>37</workflow_overview>3839---4041<phase id="1" name="free_form_collection">42<instructions>43Present open invitation to user. Extract all mentioned visual concepts verbatim and accumulate in context.44</instructions>4546<required_prompt>47What aesthetic are you envisioning?4849Describe the visual design system you want to create—share as much or as little as you want. I'll ask follow-ups for anything missing.5051Consider: overall vibe, color palette, control styling, spacing, textures, typography, and plugin types this would suit.5253You can reference existing designs, describe feelings, or provide technical specifics.54</required_prompt>5556<extraction_targets>57- Visual Identity: Overall vibe, mood, design philosophy58- Color System: Palette, warm/cool, contrast, specific colors59- Typography: Font choices, sizing philosophy60- Control Styling: Knobs, sliders, buttons, rotaries61- Spacing: Density, breathing room, layout approach62- Surface Treatment: Textures, shadows, depth, glossy vs. matte63- Details: Special features, animations, microinteractions64- Best For: Plugin types, use cases65- Inspirations: References to existing designs66</extraction_targets>6768<state_requirement>69**Context Storage**: Maintain cumulative context as structured object in agent memory throughout all phases and question batches. Format: key-value pairs for each design dimension (vibe, color_philosophy, control_style, typography, spacing, etc.). NEVER overwrite existing keys - only append new information. NEVER lose information from previous phases.70</state_requirement>71</phase>7273---7475<phase id="2" name="gap_analysis">76<critical_sequence>771. Parse user's accumulated context (from Phase 1 + any previous question batches)782. Check coverage against tier priority system793. Identify top 4 gaps by tier priority804. NEVER ask about already-provided information81</critical_sequence>8283<tier_system>84**Tier 1 (Critical):** Overall vibe/mood, color philosophy, control style85**Tier 2 (Visual Core):** Specific colors, typography, spacing, textures, control details86**Tier 3 (Context):** Best suited for, special features, inspirations87</tier_system>8889<anti_pattern>90NEVER ask redundant questions. If user stated "dark modern blue", do NOT ask:91- "What's the overall vibe?" (modern already stated)92- "Light or dark?" (dark already stated)93- "What accent color?" (blue already stated)9495Instead focus on uncovered gaps: typography, spacing, textures, plugin types.96</anti_pattern>9798<delegation_rule>99Detailed question banks are in references/aesthetic-questions.md. Reference for gap analysis strategies and question options.100</delegation_rule>101</phase>102103---104105<phase id="3" name="question_batch">106<instructions>107Generate exactly 4 questions using AskUserQuestion tool based on gaps identified in Phase 2.108</instructions>109110<requirements>111- MUST use AskUserQuestion tool (not inline menu)112- Provide 3-4 meaningful options per question (not just open text)113- Always include "Other" option for custom input114- Users can type "skip" in "Other" to skip questions115- Questions MUST target identified gaps, prioritized by tier116</requirements>117118<tool_usage>119Tool: AskUserQuestion120Parameters:121 - questions: array[1-4] of question objects122 - Each question has: question, header, multiSelect, options[2-4]123 - Always include "Other" option automatically124</tool_usage>125126<example>127See references/question-examples.md for detailed AskUserQuestion formatting examples and question banks by category.128</example>129130<state_transition>131After receiving question batch answers:1321. Merge answers into accumulated context object by appending to relevant keys (e.g., answer "Dark with blue accents" → context.color_philosophy = "Dark with blue accents"). Preserve all previous keys. Never overwrite existing information.1332. Proceed DIRECTLY to decision gate (Phase 3.5)1343. Decision gate will route to Phase 2 (re-analyze) or Phase 3.7 (finalize)135</state_transition>136</phase>137138---139140<decision_gate id="finalize_or_continue" phase="3.5">141<critical_sequence>142MUST present this decision gate after EVERY question batch (Phase 3).143MUST use inline numbered list format (consistent with checkpoint protocol).144MUST wait for user response before proceeding.145</critical_sequence>146147<required_menu>148Ready to finalize the aesthetic concept?1491501. Yes, finalize it - Create aesthetic.md and optional previews1512. Ask me 4 more questions - Continue refining the design1523. Let me add more context first - Provide additional details before questions153154Choose (1-3): _155</required_menu>156157<routing_logic>158IF option 1 THEN proceed to Phase 3.7159ELSE IF option 2 THEN return to Phase 2 (with accumulated context)160ELSE IF option 3 THEN collect user input, merge with context, return to Phase 2161</routing_logic>162163<state_requirement>164Context accumulation is cumulative across all iterations. Never lose previously collected information.165</state_requirement>166</decision_gate>167168---169170<phase id="3.7" name="name_aesthetic">171<preconditions>172Only execute if user chose "finalize" at decision gate (Phase 3.5).173</preconditions>174175<conditional_execution>176IF aesthetic name already provided in initial description THEN skip this phase and proceed to Phase 4.177ELSE ask user for name via AskUserQuestion with 3 suggested names + "Other" option.178</conditional_execution>179180<name_generation_rules>181- Suggest 3 names based on accumulated context (vibe + colors + style)182- Examples: "Dark modern blue" → "Modern Professional", "Blue Tech", "Dark Elegance"183- Allow user to provide custom name via "Other" option184</name_generation_rules>185186<slug_generation>187- Slugify name: "Modern Professional" → "modern-professional"188- Check for existing IDs in manifest.json and append counter: "modern-professional-001"189- Increment suffix from -001 to -999 until unique ID found190- If all suffixes exhausted (aesthetic has 999+ versions), ask user to provide alternative name191</slug_generation>192</phase>193194---195196<phase id="4" name="test_preview_selection">197<instructions>198Present test preview selection menu using AskUserQuestion with multiSelect: true.199</instructions>200201<requirements>202- MUST use AskUserQuestion tool with multiSelect: true203- Offer 4 test plugin types: simple-compressor, complex-reverb, drum-machine, simple-synth204- User can select 0-4 options (0 = skip previews entirely)205</requirements>206207<tool_format>208AskUserQuestion({209 questions: [{210 question: "Generate test previews to see this aesthetic applied? (select 0-4 plugin types)",211 header: "Test previews",212 multiSelect: true,213 options: [214 { label: "Simple compressor", description: "4 parameters: threshold, ratio, attack, release" },215 { label: "Complex reverb", description: "8 parameters: size, damping, predelay, mix, tone, width, decay, diffusion" },216 { label: "Drum machine", description: "16-pad grid + 4 controls: tempo, swing, volume, pattern" },217 { label: "Simple synth", description: "6 oscillator controls: waveform, frequency, attack, decay, sustain, release" }218 ]219 }]220})221</tool_format>222223<routing_logic>224IF user selects 0 options THEN skip test preview generation, proceed directly to Phase 5 (aesthetic.md only)225ELSE IF user selects 1-4 options THEN proceed to Phase 5 with selected preview types226</routing_logic>227228<state_requirement>229Store selected preview types in context for Phase 5 generation.230</state_requirement>231</phase>232233---234235<phase id="5" name="generate_files">236<instructions>237Execute the complete 8-step generation sequence with verification checkpoints.238239See references/file-generation.md for complete Phase 5 implementation protocol.240</instructions>241</phase>242243---244245<phase id="6" name="decision_menu">246<checkpoint_protocol>247This is a system checkpoint. MUST follow Plugin Freedom System checkpoint protocol.248MUST use inline numbered list format (NOT AskUserQuestion tool) per CLAUDE.md checkpoint protocol.249</checkpoint_protocol>250251<workflow_mode_check>252Before presenting decision menu:2531. Read .claude/preferences.json to check workflow.mode setting2542. IF mode === "express" AND skill was NOT explicitly invoked via /dream command:255 - Skip decision menu256 - Exit skill gracefully with completion message2573. ELSE:258 - Present decision menu and wait for user response259</workflow_mode_check>260261<decision_menu>262✅ Aesthetic "[Name]" ready!263264What's next?2651. Open test previews - View mockups in browser2662. Refine aesthetic - Adjust and regenerate aesthetic.md2673. Create another aesthetic - Start new aesthetic2684. Apply to existing plugin - Choose plugin from PLUGINS.md2695. Done270271Choose (1-5): _272</decision_menu>273274<routing_logic>275Option 1: Run `open` commands for test preview HTML files, return to menu276Option 2: Ask what to change, re-run question batches (Phases 2-3-3.5), regenerate aesthetic.md (preserve ID)277Option 3: Return to Phase 1 with fresh context278Option 4: Read PLUGINS.md, user selects plugin, invoke ui-mockup skill with aesthetic pre-selected279Option 5: Exit skill280</routing_logic>281282<state_requirement>283MUST wait for user response. NEVER auto-proceed to any option.284</state_requirement>285</phase>286287---288289<adaptive_questioning_strategy>290**Core Algorithm**: Extract concepts → Check tier coverage → Identify gaps → Generate 4 questions → Decision gate → Loop or finalize291292**Anti-pattern**: Never ask about concepts already provided. Never repeat questions in different words.293294**Tier Priority**: Tier 1 (Critical: vibe, color philosophy, control style) → Tier 2 (Visual Core: specific colors, typography, spacing, textures) → Tier 3 (Context: plugin types, inspirations, special features)295296See references/aesthetic-questions.md for detailed gap analysis strategies and question banks.297See references/workflow-examples.md for complete examples showing adaptive questioning across different input scenarios.298</adaptive_questioning_strategy>299300---301302<handoff_protocol>303See references/handoff-protocol.md for complete skill invocation details and integration with ui-template-library and ui-mockup.304</handoff_protocol>305306---307308<error_handling>309See references/error-handling.md for complete edge case handling and recovery strategies.310</error_handling>311312---313314## Success Criteria315316Skill is successful when:317- Aesthetic concept captured through adaptive questions318- No redundant questions asked (respects already-provided info)319- aesthetic.md generated with all 12 sections filled320- Test previews generated for selected plugin types (if any)321- Files stored in correct locations (.claude/aesthetics/[id]/)322- Aesthetic immediately available in ui-mockup skill323- User feels creative flow, not interrogated324- Clear next steps presented325326---327328## Design Rationale329330See [references/design-rationale.md](references/design-rationale.md) for detailed explanation of design decisions, format consistency rules, and quality control procedures.331332---333334## Reference Documentation335336**See also:**337- `ui-template-library` skill - Apply and save operations338- `ui-mockup` skill - Integration with Phase 0 aesthetic selection339- `plugin-ideation` skill - Adaptive questioning pattern reference340- `assets/test-plugin-specs.json` - Test plugin parameter definitions341- `references/aesthetic-questions.md` - Question bank and strategies342- `references/question-examples.md` - AskUserQuestion formatting examples343- `references/test-preview-protocol.md` - Test preview generation protocol344- `references/error-handling.md` - Error handling and edge cases