--- name: swan-design description: Craft elegant technical specifications with ASCII artistry, flow diagrams, and the Grove voice. The swan glides with purposeโ€”vision first, then form, then perfection. Use when creating specs, reviewing documents, or transforming technical plans into storybook entries. --- # Swan Design ๐Ÿฆข The swan doesn't rush. It glides across still water with purpose and grace. Each movement is deliberate. Every feather is in place. When the swan creates, it weaves technical precision with poetic visionโ€”specs that feel like opening a beautifully illustrated field guide to the forest. ## When to Activate - User asks to "write a spec" or "create a specification" - User says "document this feature" or "design this system" - User calls `/swan-design` or mentions swan/designing specs - Creating technical specifications for Grove systems - Adding ASCII art and diagrams to text-heavy documents - Validating existing specs against Grove standards - Transforming technical plans into storybook entries **Pair with:** `owl-archive` for Grove voice and text refinement --- ## The Design ``` VISION โ†’ SKETCH โ†’ REFINE โ†’ POLISH โ†’ LAUNCH โ†“ โ†ฒ โ†“ โ†ฒ โ†“ See Create Write Perfect Release Clearly Form Content Voice Spec ``` ### Phase 1: VISION *The swan sees the whole lake before moving a single feather...* Before touching code blocks or ASCII characters, understand what you're creating: **What is this system/feature?** - What problem does it solve? - What would you tell a Wanderer about it? - What's the nature metaphor that fits? **The nature metaphor is everything.** Examples from Grove: - Heartwood โ†’ The center that holds (auth system) - Wisp โ†’ Gentle guiding light (help system) - Porch โ†’ Sit and chat about what's going on (support) - Patina โ†’ Age as armor (backup system) **Questions to answer:** 1. **Concept:** What natural thing does this resemble? 2. **Scope:** What's in/out of bounds for this spec? 3. **Audience:** Developers implementing? Wanderers exploring? 4. **Tone:** Technical precision, warm invitation, or both? **Output:** Nature metaphor chosen, scope defined, target audience identified --- ### Phase 2: SKETCH *The swan traces patterns on the water, creating the form...* Build the spec structure with required elements: **Frontmatter (REQUIRED):** ```yaml --- aliases: [] date created: Monday, January 6th 2026 date modified: Monday, January 13th 2026 tags: - primary-domain - tech-stack - category type: tech-spec --- ``` **Date format examples:** - `Monday, December 29th 2025` - `Saturday, January 4th 2026` **Type options:** - `tech-spec` โ€” Technical specification (most common) - `implementation-plan` โ€” Step-by-step implementation guide - `index` โ€” Index/navigation document **ASCII Art Header:** Create visual representation of the concept using: - Box-drawing characters: `โ”€โ”‚โ”Œโ”โ””โ”˜โ”œโ”คโ”ฌโ”ดโ”ผโ•ญโ•ฎโ•ฐโ•ฏ` - Nature emoji (sparingly): `๐ŸŒฒ๐ŸŒฟ๐Ÿ‚โœจ๐ŸŒธ` - Under 20 lines, centered, with poetic tagline **Examples from excellent specs:** **Wisp (will-o'-the-wisp light):** ``` ๐ŸŒฒ ๐ŸŒฒ ๐ŸŒฒ \ | / \ | / โœจ โ•ฑ โ•ฒ โ•ฑ โ•ฒ โ•ฑ ยท โ•ฒ โ•ฑ ยท โ•ฒ โ•ฑ ยท โ•ฒ ยท ยท ยท gentle guiding light ``` **Patina (layered backups):** ``` โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ โ•ญโ”ค โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”œโ•ฎ โ•ญโ”คโ”‚ โ”‚ 2026-01-05 โ”‚ โ”‚โ”œโ•ฎ โ”‚โ”‚โ”‚ โ”‚ โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“ โ”‚ โ”‚โ”‚โ”‚ โ”‚โ”‚โ”‚ โ”‚ โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’ โ”‚ โ”‚โ”‚โ”‚ โ”‚โ”‚โ”‚ โ”‚ โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘ โ”‚ โ”‚โ”‚โ”‚ โ”‚โ”‚โ”‚ โ”‚ ยทยทยทยทยทยทยทยทยทยท โ”‚ โ”‚โ”‚โ”‚ โ•ฐโ”ดโ”ดโ”€โ”€โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜โ”€โ”€โ”ดโ”ดโ•ฏ โ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑโ•ฑ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ~~~~~~~~ oxidation layer ~~~~~~~~ Age as armor. Time as protection. ``` **Heartwood (tree rings):** ``` โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ โ•ญโ”€โ”€โ”‚ โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ โ”‚โ”€โ”€โ•ฎ โ•ญโ”€โ”‚ โ”‚ โ”‚ โ•ญโ”€โ”€โ•ฎ โ”‚ โ”‚ โ”‚โ”€โ•ฎ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚โ™ฅ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ•ฐโ”€โ”‚ โ”‚ โ”‚ โ•ฐโ”€โ”€โ•ฏ โ”‚ โ”‚ โ”‚โ”€โ•ฏ โ•ฐโ”€โ”€โ”‚ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ โ”‚โ”€โ”€โ•ฏ โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ every ring: a year, a story, a layer of growth The center that holds it all. ``` **Introduction Template:** ```markdown > *Poetic tagline in italics* [2-3 sentence description of what this is in the Grove ecosystem] **Public Name:** [Name] **Internal Name:** Grove[Name] **Domain:** `name.grove.place` **Repository:** [Link if applicable] **Last Updated:** [Month Year] [1-2 paragraphs explaining the nature metaphor and how it applies] --- ``` **Output:** Spec skeleton with frontmatter, ASCII art, and introduction complete --- ### Phase 3: REFINE *The swan adds detail to every feather, ensuring each one serves the whole...* Write the technical content with visual elements: **Required Sections:** - **Overview/Goals** โ€” What this system does - **Architecture** โ€” How it's built (with diagrams!) - **Tech Stack** โ€” Dependencies, frameworks - **API/Schema** โ€” Technical details - **Security** โ€” Important considerations - **Implementation Checklist** โ€” Clear action items **ASCII Flow Diagrams:** Every process MUST include at least one flow diagram: ``` โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ Client Sites โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ Site A โ”‚ โ”‚ Site B โ”‚ โ”‚ Site C โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ”‚ 1. Request โ”‚ โ”‚ โ–ผ โ–ผ โ–ผ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ Central Service โ”‚ โ”‚ โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ Handler A โ”‚ โ”‚ Handler B โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ ``` **Box Drawing Reference:** - Corners: `โ”Œ โ” โ”” โ”˜` (square) or `โ•ญ โ•ฎ โ•ฐ โ•ฏ` (rounded) - Lines: `โ”€ โ”‚ โ• โ•‘` - Joins: `โ”œ โ”ค โ”ฌ โ”ด โ”ผ` - Arrows: `โ†’ โ† โ†‘ โ†“ โ–ถ โ—€ โ–ฒ โ–ผ` **UI Mockups (if applicable):** ``` โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โœง Panel Title [ร—] โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ โ”‚ โ”‚ โ”Œโ”€ Label โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ Content here with proper spacing โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ Input field... [โ†ต] โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ”‚ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”‚ โ”‚ [ Action A ] [ Action B โœฆ ] โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ ``` **State Diagrams:** For features with multiple states: ``` Idle: Analyzing: Success: . * . . * . * . analyzing . * * . _ . . \ | / . * /|\ . / \ * . -- (o.o) -- thinking * / | \ * / ~ ~ \ . . / | \ /__|__\ / \______ ~~~~~~~~~~~~~~~~~ ~~~~/ \~~~~ ~~~~~~~~~~~~~~~~~~~ words flowing... all clear ``` **Comparison Tables:** ```markdown | Feature | Seedling | Sapling | Oak | Evergreen | |---------|----------|---------|-----|-----------| | Posts | 50 | 250 | โˆž | โˆž | | Storage | 1 GB | 5 GB | 20 GB | 100 GB | | Themes | 3 | 10 | All | All + custom | ``` **Timeline/Retention Diagrams:** For anything involving time: ``` TODAY 12 WEEKS AGO โ”‚ โ”‚ โ–ผ โ–ผ โ”Œโ”€โ”ฌโ”€โ”ฌโ”€โ”ฌโ”€โ”ฌโ”€โ”ฌโ”€โ”ฌโ”€โ” โ”Œโ”€โ” โ”‚โ–ˆโ”‚โ–ˆโ”‚โ–ˆโ”‚โ–ˆโ”‚โ–ˆโ”‚โ–ˆโ”‚โ–ˆโ”‚ โ—€โ”€โ”€ Daily backups (7 days) โ”‚โ–‘โ”‚ โ””โ”€โ”ดโ”€โ”ดโ”€โ”ดโ”€โ”ดโ”€โ”ดโ”€โ”ดโ”€โ”˜ โ””โ”€โ”˜ S M T W T F S ``` **Output:** Technical content complete with diagrams, tables, and code blocks --- ### Phase 4: POLISH *The swan preens each feather until it gleams, perfect in the light...* Apply Grove voice and validate formatting: **Voice Checklist (no AI-coded words):** - โŒ No "robust", "seamless", "leverage", "synergy" - โŒ No em-dashes (use periods or commas) - โŒ No "not X, but Y" patterns - โœ… Short paragraphs (2-3 sentences max) - โœ… Direct, clear statements - โœ… Poetic closers that are earned, not forced **Structure Validation:** - [ ] Frontmatter with all required fields - [ ] `aliases: []` included (even if empty) - [ ] Date format: `Monday, January 6th 2026` - [ ] `type: tech-spec` or appropriate type - [ ] ASCII art header present - [ ] Poetic tagline in italics after art - [ ] Public/Internal names listed - [ ] Domain specified (if applicable) **Visual Content:** - [ ] At least one ASCII flow diagram (if process-based) - [ ] UI mockups included (if describing interface) - [ ] Tables for comparisons where appropriate - [ ] Code blocks for technical details - [ ] No walls of text without visual breaks **Validation Checklist:** Before finalizing any spec, verify: ### Structure - [ ] Frontmatter present with all required fields - [ ] `aliases: []` included (even if empty) - [ ] Date format correct (Day, Month Ordinal Year) - [ ] `type: tech-spec` or appropriate type - [ ] ASCII art header present after frontmatter - [ ] Poetic tagline in italics - [ ] Public/Internal names listed - [ ] Domain specified (if applicable) ### Visual Content - [ ] At least one ASCII flow diagram (if process-based) - [ ] UI mockups included (if has UI) - [ ] Tables for comparisons where appropriate - [ ] Code blocks for technical details - [ ] No walls of text without visual breaks ### Voice - [ ] No em-dashes (use periods or commas) - [ ] No "not X, but Y" patterns - [ ] No AI-coded words (robust, seamless, leverage, etc.) - [ ] Short paragraphs - [ ] Poetic closers earned, not forced ### Completeness - [ ] Overview/Goals section - [ ] Architecture diagram - [ ] Technical details (API, schema) - [ ] Security considerations - [ ] Implementation checklist **Output:** Spec polished with proper Grove voice and validated structure --- ### Phase 5: LAUNCH *The swan takes flight, the spec released into the world...* **Final Review:** Read the spec with fresh eyes: 1. Does it feel like a storybook entry? 2. Would you want to read this at 2 AM? 3. Is the nature metaphor clear and consistent? 4. Are the diagrams readable? **Implementation Checklist:** Every spec must end with actionable items: ```markdown ## Implementation Checklist - [ ] Task 1 - [ ] Task 2 - [ ] Task 3 ``` **Integration Check:** - Does this skill need other animals? - Does it reference related specs? - Are dependencies documented? **Output:** Spec complete, validated, and ready for implementation --- ## Swan Rules ### Elegance Every element earns its place. The swan doesn't add decoration for decoration's sake. Each diagram, each line of ASCII art, serves the understanding of the system. ### Grace Move deliberately through the phases. Don't rush to implementation details before the vision is clear. A spec written without understanding the metaphor will feel hollow. ### Beauty Specs are storybook entries. They should be beautifulโ€”readable at 2 AM, inviting to open, satisfying to complete. ### Communication Use design metaphors: - "Seeing the whole lake..." (understanding scope) - "Tracing patterns..." (creating structure) - "Adding detail to feathers..." (writing technical content) - "Preening until it gleams..." (polishing voice) - "Taking flight..." (releasing the spec) --- ## Creating ASCII Art ### The Process 1. **Identify the core metaphor** โ€” What natural thing does this represent? 2. **Sketch the concept** โ€” What visual would convey this at a glance? 3. **Choose your characters** โ€” Box drawing, emoji, or creative ASCII 4. **Build in layers** โ€” Start with outline, add detail, add flourishes 5. **Add the tagline** โ€” Poetic one-liner that captures the essence ### Character Palette **Box Drawing (safe, consistent):** ``` โ”Œโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ” โ•ญโ”€โ”€โ”€โ”€โ”€โ•ฎ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”ค โ•ฐโ”€โ”€โ”€โ”€โ”€โ•ฏ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”˜ ``` **Lines and Arrows:** ``` โ†’ โ† โ†‘ โ†“ โ†” โ†• โ–ถ โ—€ โ–ฒ โ–ผ โŸฟ โŸธ โŸน ``` **Nature Emoji (use sparingly):** ``` ๐ŸŒฒ ๐ŸŒณ ๐ŸŒฟ ๐Ÿ‚ ๐Ÿƒ ๐ŸŒธ ๐ŸŒบ ๐ŸŒป ๐ŸŒท ๐ŸŒฑ ๐Ÿ„ โ˜€๏ธ ๐ŸŒค๏ธ โญ โœจ ๐Ÿ’ง ๐Ÿ”ฅ ๐Ÿฆ‹ ๐Ÿ› ๐ŸŒ ``` **Decorative:** ``` ยท โˆ™ โ€ข ยฐ หš โˆ˜ ~ โ‰ˆ โˆฟ โ• โ•‘ โ•” โ•— โ•š โ• โ–‘ โ–’ โ–“ โ–ˆ ``` ### Tips - Keep ASCII art under 20 lines tall - Center the art within its code block - Include breathing room (empty lines above/below) - Test in a monospace font - Consider mobile rendering (simpler is better) --- ## Anti-Patterns **The swan does NOT:** - Write specs without a nature metaphor - Skip the ASCII art header - Create walls of text without visual breaks - Use AI-coded corporate language - Rush through phases to get to implementation - Forget the implementation checklist --- ## Example Design **User:** "Write a spec for the new analytics system" **Swan flow:** 1. ๐Ÿฆข **VISION** โ€” "Analytics tracks growth over time. Nature metaphor: Heartwood ringsโ€”each ring a story, each layer growth." 2. ๐Ÿฆข **SKETCH** โ€” "Create frontmatter, ASCII art of tree rings, introduction with tagline 'Every ring: a year, a story, a layer of growth'" 3. ๐Ÿฆข **REFINE** โ€” "Write architecture with flow diagram, API schema, comparison table of metrics" 4. ๐Ÿฆข **POLISH** โ€” "Apply Grove voice, validate no AI words, check all required elements" 5. ๐Ÿฆข **LAUNCH** โ€” "Final review, implementation checklist, release" --- ## Quick Decision Guide | Situation | Action | |-----------|--------| | New feature/system | Full spec with all sections | | Architecture decision | Focus on flow diagrams and trade-offs | | UI component | Include detailed ASCII mockups | | API design | Schema tables and endpoint flows | | Review existing spec | Run validation checklist, add missing elements | --- ## Integration with Other Skills **Before Writing:** - `walking-through-the-grove` โ€” If naming a new feature, complete naming first - `chameleon-adapt` โ€” If the spec involves UI patterns **While Writing:** - `owl-archive` โ€” Apply Grove voice, avoid AI patterns **After Writing:** - This skill (`swan-design`) โ€” Run validation checklist **Use `museum-documentation` instead when:** The reader is a **Wanderer exploring** rather than a **developer implementing**. | Use swan-design | Use museum-documentation | |----------------|-------------------------| | Technical specifications | "How it works" for visitors | | Architecture decisions | Codebase guided tours | | Implementation plans | Knowledge base exhibits | | Internal system docs | Narrative explanations | --- *A good spec is one you'd want to read at 2 AM. Make it beautiful.* ๐Ÿฆข