| name | grove-spec-writing |
| description | Write and validate Grove technical specifications with consistent formatting, ASCII art headers, diagrams, and the Grove voice. Use when creating new specs, reviewing existing specs for completeness, or standardizing spec formatting. |
Grove Spec Writing
A comprehensive guide for writing technical specifications in the Grove ecosystem. Use this skill to create new specs that feel like storybook entries, or to validate and standardize existing specs.
When to Activate
- Creating a new technical specification
- Reviewing an existing spec for completeness
- Adding ASCII art headers to specs missing them
- Adding diagrams, mockups, or visual elements to text-heavy specs
- Standardizing frontmatter across spec files
- Validating a spec against Grove standards before finalizing
The Spec as Storybook Entry
Grove specs aren't just technical documents. They're storybook entries in a larger narrative. Each spec should feel like opening a page in a beautifully illustrated field guide to the forest.
The formula:
- Cover page (frontmatter + ASCII art + tagline)
- Introduction (what is this, in nature and in Grove)
- The journey (architecture, flows, implementation)
- The details (API, schema, security)
- The path forward (implementation checklist)
Required Structure
1. Frontmatter (REQUIRED)
Every spec MUST have this exact frontmatter format:
---
aliases: []
date created: [Day], [Month] [Ordinal] [Year]
date modified: [Day], [Month] [Ordinal] [Year]
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
2. ASCII Art Header (REQUIRED)
Immediately after frontmatter, include a code block with ASCII art that visually represents the concept:
# [Name] โ [Short Description]
ASCII ART HERE
representing the concept
in a visual way
> *Poetic tagline in italics*
Good ASCII art:
- Relates to the nature metaphor (forest, garden, etc.)
- Represents the concept visually (layers for backup, rings for analytics)
- Uses box-drawing characters:
โโโโโโโโคโฌโดโผโญโฎโฐโฏ
- Uses nature emoji sparingly:
๐ฒ๐ฟ๐โจ๐ธ
- Includes a poetic tagline or motto
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.
3. Introduction Section
After the ASCII art header:
> *Poetic tagline repeated*
[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]
---
4. Body Sections
Organize content with clear headers. Include:
- 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
Required Visual Elements
Flow Diagrams
Every spec describing a process MUST include at least one ASCII 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
Specs describing user interfaces MUST include ASCII mockups:
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ โง 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
Use tables to compare options, states, or configurations:
| 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
Validation Checklist
Before finalizing any spec, verify:
Structure
Visual Content
Voice (refer to grove-documentation skill)
Completeness
Creating ASCII Art
The Process
- Identify the core metaphor โ What natural thing does this represent?
- Sketch the concept โ What visual would convey this at a glance?
- Choose your characters โ Box drawing, emoji, or creative ASCII
- Build in layers โ Start with outline, add detail, add flourishes
- 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)
Example: Complete Spec Header
---
aliases: []
date created: Monday, January 6th 2026
date modified: Monday, January 13th 2026
tags:
- support
- user-communication
- cloudflare-workers
type: tech-spec
---
# Porch โ Support System
๐
___โ___
โ โ
~~~~~~โ PORCH โ~~~~~~
โฑโ_______โโฒ
โฑ โฒ
โฑ โโโโโ โฒ
โฑ โ โ โ โฒ
โฑ โโโโโ ๐ค โฒ
โโโโโโโโโโโโโโโโโโโโโโโโ
steps
Have a seat. We'll figure it out.
> *Have a seat on the porch. We'll figure it out together.*
Grove's front porch: a warm, accessible space where users sit down and have a conversation. Not a corporate help desk with ticket numbers. A porch where you chat with the grove keeper about what's going on.
**Public Name:** Porch
**Internal Name:** GrovePorch
**Domain:** `porch.grove.place`
**Status:** Planned (Launch Priority)
A porch is where you sit and talk. You come up the steps, have a seat, and the grove keeper comes out to chat. It's not a ticket counter. It's two people on a porch, figuring things out together.
---
Integration with Other Skills
Before Writing a Spec
- walking-through-the-grove โ If naming a new feature, complete the naming journey first
- grove-ui-design โ If the spec involves UI, understand design patterns
While Writing
- grove-documentation โ Apply Grove voice throughout, avoid AI patterns
After Writing
- grove-spec-writing (this skill) โ Run validation checklist
- Review with fresh eyes: Does it feel like a storybook entry?
When to Use museum-documentation Instead
This skill (grove-spec-writing) is for internal technical specifications: architecture decisions, system design, implementation plans. Documentation for developers.
Use museum-documentation when writing for Wanderers who want to understand:
| Use grove-spec-writing | Use museum-documentation |
|---|
| Technical specifications | "How it works" for curious visitors |
| Architecture decisions | Codebase guided tours |
| Implementation plans | Knowledge base exhibits |
| Internal system docs | Narrative technical explanations |
If the reader is a developer implementing something, use this skill.
If the reader is a Wanderer exploring the forest, use museum-documentation.
Quick Reference
| Element | Required | Location |
|---|
| Frontmatter | Yes | Top of file |
| ASCII art header | Yes | After frontmatter |
| Poetic tagline | Yes | After ASCII art |
| Public/Internal names | Yes | Introduction |
| Architecture diagram | If applicable | Body |
| UI mockups | If has UI | Body |
| Implementation checklist | Yes | End of spec |
A good spec is one you'd want to read at 2 AM. Make it beautiful.