grove-documentation

Grove Documentation Skill

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "grove-documentation" with this command: npx skills add autumnsgrove/groveengine/autumnsgrove-groveengine-grove-documentation

Grove Documentation Skill

When to Activate

Activate this skill when:

  • Writing help center articles (Waystone)

  • Drafting specs or technical documentation

  • Writing user-facing text (onboarding, tooltips, error messages)

  • Creating landing page copy

  • Writing blog posts for the Grove platform itself

  • Reviewing existing docs for voice consistency

  • Any time you're writing words that users will read

The Grove Voice

From the project's guiding principles:

This site is my authentic voice—warm, introspective, queer, unapologetically building something meaningful; write like you're helping me speak, not perform.

Write with the warmth of a midnight tea shop and the clarity of good documentation—this is my space, make it feel like home.

What Grove Sounds Like

Warm but not cutesy. We're friendly, not performative. "Let's get started" feels right. "Let's gooo! 🚀" does not.

Direct and honest. Say what you mean. Acknowledge limitations. Don't oversell. If something doesn't work yet, say so.

Conversational but not sloppy. Contractions are fine (you're, it's, we're). Short paragraphs. Questions that invite readers in. But still clear, still structured.

Introspective. Grove makes space for reflection. We don't rush. We ask "why" alongside "how."

Poetic in small doses. Italicized one-liners at the end of sections can land beautifully. Use them sparingly, earn them.

Sentence Rhythm

Mix short sentences with longer ones. Vary your rhythm. Read it aloud—if it sounds monotonous, it is.

Good:

Every new visitor asks the same question. "Is the music broken?" No. There is no music. There never has been.

Not good:

Every new visitor asks a common question. The question is usually about whether the music system is functioning. The answer is that there is no music system. There has never been one.

User Identity Terminology

Grove uses specific terms for community members. Always use these in user-facing text.

Term Who Context

Wanderer Everyone Default greeting, anonymous visitors, all users

Rooted / the Rooted Subscribers Those who've planted their tree, paid users

Pathfinder Trusted guides Appointed community helpers

Wayfinder Autumn (singular) The grove keeper

Key Rules

  • Never use "user" or "member" in user-facing text. Use "Wanderer" instead.

  • Never use "subscriber" in user-facing text. Use "Rooted" or "the Rooted".

  • Personal emails (day-1, day-3, etc.) should use {{name}} , not "Wanderer".

  • Generic greetings (welcome pages, UI) should use "Wanderer".

Examples

Good:

  • "Welcome, Wanderer."

  • "Thanks for staying rooted with us."

  • "Ask a Pathfinder. They'll show you the way."

Avoid:

  • "Welcome, user."

  • "Thanks for being a subscriber."

  • "Contact an administrator."

The Symmetry

Wanderer → Wayfinder reflects the journey:

  • Wanderers seek the way (exploring, finding paths)

  • The Wayfinder shows the way (guiding, creating paths)

See docs/grove-user-identity.md for full documentation.

Grove Mode & GroveTerm Components

When writing text that includes Grove terminology in UI or content, use GroveTerm components instead of hardcoding terms. Grove Mode lets users toggle between standard terms (default for new visitors) and Grove terms.

For Svelte UI: Use GroveTerm , GroveSwap , or GroveText components from @autumnsgrove/lattice/ui .

For data-driven content (FAQ items, pricing text, help articles): Use [[term]] syntax. Examples:

  • "Your [[bloom|posts]] are always yours." renders "posts" when Grove Mode is OFF, "blooms" when ON

  • "Visit your [[arbor|dashboard]] to get started." renders "dashboard" or "Arbor"

  • "Ask a [[pathfinder|community guide]] for help." renders "community guide" or "Pathfinder"

For markdown content (help center articles): The rehype-groveterm plugin transforms [[term]] syntax in markdown automatically.

Key principle: New visitors should see familiar, standard terminology. Grove's nature-themed vocabulary is opt-in, not forced. This keeps the platform accessible and welcoming while rewarding those who want to explore the ecosystem's personality.

Strict Avoidances

These patterns make text sound like AI wrote it. Avoid them completely.

The full anti-patterns reference lives in owl-archive/references/anti-patterns.md . Here's a quick summary of the most critical avoidances.

Word Choice

  • Em-dashes (—): One per thousand words, maximum. Use commas, periods, or parentheses.

  • "Not X, but Y": The most AI-coded pattern. Just say the thing directly.

  • "Serves as" / "stands as" / "marks a": Use simple verbs. "Is" works fine.

  • Magic adverbs: "quietly", "deeply", "fundamentally", "remarkably" sprinkled for false gravity.

  • AI vocabulary: robust, seamless, delve, leverage, tapestry, landscape, harness, empower, embark, unlock, streamline, utilize.

Sentence & Paragraph Structure

  • "Not X. Not Y. Just Z." The dramatic countdown. Cut it.

  • "The X? A Y." Self-posed rhetorical questions answered immediately. Remove.

  • Anaphora abuse: "They could... They could... They could..." Same opening repeated.

  • Tricolon abuse: One rule-of-three is fine. Three back-to-back are not.

  • Gerund fragment lists: "Fixing bugs. Writing features. Shipping code." These add nothing.

  • Listicle in a trench coat: "The first... The second... The third..." disguised as prose.

  • Short punchy fragments as standalone paragraphs: Vary your rhythm. Not every sentence is a paragraph.

Tone

  • "Here's the kicker" / "Here's the thing": False suspense before unremarkable points.

  • "Think of it as...": Patronizing analogies in teacher mode.

  • "Imagine a world where...": AI futurism invitations.

  • "Let's break this down" / "Let's unpack this": Hand-holding the reader.

  • Grandiose stakes inflation: Not everything reshapes civilization.

  • Vague attributions: "Experts argue..." Name the expert or own the claim.

  • Filler transitions: Furthermore, Moreover, Additionally, It's worth noting, Notably.

Composition

  • Fractal summaries: Don't tell them what you'll say, say it, then tell them what you said.

  • Dead metaphors: Don't repeat the same metaphor 10 times. Use it and move on.

  • Historical analogy stacking: "Apple... Facebook... Stripe... Uber..." rapid-fire company lists.

  • "Despite its challenges...": The formula that acknowledges problems only to dismiss them.

  • Signposted conclusions: "In conclusion..." Competent writing doesn't need to announce it's ending.

  • Semantic echoes: Don't repeat the same descriptor multiple times.

  • Generic hedging: AI hedges. Humans commit. Say what you mean.

Formatting

  • Bold-first bullets: Not every list item needs a bolded keyword at the start.

  • Unicode arrows: Use -> not → in prose.

Structural Guidelines

Paragraphs

Keep them short. One idea per paragraph. Two to four sentences is usually right.

White space is your friend. Dense walls of text don't feel like home.

Lists

Use lists when they clarify. But don't turn everything into bullets. Sometimes prose flows better.

Good use of lists:

  • Specific steps in a process

  • Features that are truly parallel

  • Quick reference information

Bad use of lists:

  • Narrative content broken awkwardly

  • Things that would read better as a sentence

Headers

Be specific. "Writing Guidelines" is better than "Guidelines." "What Grove Sounds Like" is better than "Voice."

Action-oriented headers work well for help docs: "Add Your First Post" not "Posts."

Callouts

Use sparingly. When you do:

💡 Tip: Helpful suggestion that enhances understanding.

⚠️ Warning: Something that could cause problems if ignored.

Don't use callouts for things that should just be in the text.

Closers

Grove docs often end with an italicized line. This should feel earned, not forced.

Works:

Sometimes the most radical thing you can offer is nothing at all.

The path becomes clear by walking it.

Doesn't work:

And that's how you configure your settings!

If you can't find a poetic closer that resonates, don't force one. A clean ending is fine.

Queer-Friendly Language

Grove is explicitly queer-friendly. This means:

  • No assumptions about users' identities or relationships

  • Welcoming, inclusive language throughout

  • Safe space messaging where appropriate

  • Pride in what we're building, not defensiveness

Concrete Examples

Avoid Use Instead

"Add your husband/wife" "Add your partner" or "Add someone special"

"he or she" "they" or rephrase to avoid pronouns

"Dear Sir/Madam" "Hello" or "Hi there"

"mankind" "people" or "everyone"

Examples with only straight couples Vary your examples, or keep them neutral

In User Flows

When asking for relationship info (if ever needed):

  • Use open text fields over dropdowns with limited options

  • Don't require titles (Mr/Mrs/Ms)

  • Let people describe themselves rather than selecting from boxes

Tone

We don't make a big deal of being queer-friendly. We just are. No rainbow-washing, no performative allyship. The inclusivity is baked in, not bolted on.

Technical Docs vs. User Docs

Specs and internal docs can be more matter-of-fact. Tables, schemas, API references—these need clarity over warmth.

User-facing docs (help center, onboarding, error messages) carry the full Grove voice.

Both should avoid AI patterns.

The Voice Spectrum

API Reference (minimal warmth, maximum clarity):

POST /api/posts

Creates a new blog post.

Parameters:

  • title (string, required): Post title
  • content (string, required): Markdown content
  • published (boolean): Default false

Returns: Post object or 400 error

Internal Spec (clear, some personality):

Feed Caching Strategy

Feed pages cache for 5 minutes in KV. When a new post is shared, we invalidate the chronological feed but let popular/hot feeds age out naturally. This keeps things fresh without hammering D1.

Getting Started Guide (full Grove voice):

Your First Post

Welcome. Let's get something published.

The editor opens to a blank page. That's intentional. No templates, no suggested topics. Just you and your words.

Write something. Anything. Hit publish when it feels ready.

Onboarding Tooltip (warm but concise):

This is your dashboard. Everything you need, nothing you don't.

Error Messages

When things break, stay warm but be honest. Don't blame the user. Don't hide behind vague language.

Error Message Principles

  • Say what happened (briefly)

  • Say what they can do (if anything)

  • Don't over-apologize (one "sorry" max)

  • Don't be cute when things are broken

Examples

Good:

Couldn't save your post. Check your connection and try again.

That page doesn't exist. It may have been moved or deleted.

Something went wrong on our end. We're looking into it. Your draft is saved locally.

Avoid:

Oops! 😅 Looks like something went wrong! Don't worry though, these things happen! Please try again later!

Error 500: Internal Server Error. Contact administrator.

We're SO sorry!!! We feel TERRIBLE about this!!! Please forgive us and try again!

The Balance

Be honest about what broke. Be helpful about next steps. Don't make them feel stupid. Don't make yourself sound incompetent. One sentence is usually enough.

Self-Review Checklist

Before finalizing any Grove documentation:

  • Read it aloud. Does it sound human?

  • Check for em-dashes. Remove them.

  • Search for "not just" and "but rather." Rewrite.

  • Look for words from the avoid list. Replace them.

  • Scan for "serves as", "stands as", "marks a". Simplify.

  • Check for rhetorical self-questions ("The result? ..."). Remove.

  • Look for gerund fragment lists. Rewrite as real sentences.

  • Count your tricolons. If more than one, cut.

  • Check for "Here's the thing" / "Here's where it gets interesting." Remove.

  • Check for bold-first bullet patterns in narrative lists. Unbold.

  • Vary sentence length. No monotone rhythm.

  • Cut unnecessary transitions. Ideas should flow naturally.

  • Is the closer earned? If forced, remove it.

  • Would you want to read this at 2 AM in a tea shop?

Integration with Other Skills

When grove-ui-design or walking-through-the-grove need written content, invoke this skill first. The visual design and naming should match the voice.

Typical flow:

  • Design calls for new component/page text

  • Activate grove-documentation for voice guidance

  • Write the content following these principles

  • Return to design/naming work

When to Use museum-documentation Instead

This skill (grove-documentation) is for quick, functional text: help articles, error messages, tooltips, onboarding copy. Content that's read in passing.

Use museum-documentation when you need narrative, explorable documentation:

Use grove-documentation Use museum-documentation

Help center articles Knowledge base "how it works"

Tooltips and labels Codebase guided tours

Error messages System architecture explains

Onboarding flows Technical deep-dives for curious Wanderers

Quick-reference guides Exhibit-style documentation

If the reader should skim and act, use this skill. If the reader should explore and understand, use museum-documentation.

Examples

Help Center Article (Good)

Your First Post

Welcome. Let's get something published.

From your admin panel, click New Post in the sidebar. The editor opens with a blank canvas.

Write in Markdown. If you're new to it, here are the basics:

  • Bold: **text**
  • Italic: *text*
  • Links: [text](url)

The preview panel shows how your post will look. Toggle it with the eye icon.

When you're ready, hit Publish. Your words are live.

The blank page isn't as scary as it looks.

Help Center Article (Bad - Obvious AI Patterns)

Your First Post

Furthermore, in today's digital landscape, creating your first blog post is an exciting journey! It's not just about writing—it's about expressing yourself in a transformative way.

Navigate to your admin panel and leverage the New Post functionality. The seamless editor provides a robust interface for your content creation needs.

Additionally, Grove utilizes Markdown—a comprehensive formatting system that empowers you to create intricate, captivating content. Moreover, the preview feature allows you to visualize your post before publication.

Embark on your blogging journey today!

Help Center Article (Bad - Subtle AI Patterns)

This one's trickier. It looks okay at first glance:

Your First Post

Ready to share your thoughts with the world? Let's get started.

From your admin panel, click New Post in the sidebar. You'll see our editor—a clean, distraction-free space for your writing.

Grove uses Markdown for formatting. It's not complicated—here are the basics you'll need:

  • Bold: **text**
  • Italic: *text*
  • Links: [text](url)

The preview panel lets you see how your post will look before publishing. When you're satisfied with your work, hit Publish.

Your voice matters. We can't wait to see what you create.

What's wrong:

  • "Ready to share your thoughts with the world?" (generic opener)

  • "Let's get started" (overused)

  • "distraction-free space" (marketing-speak)

  • "It's not complicated" (defensive hedge, "not X" pattern adjacent)

  • "When you're satisfied with your work" (formal)

  • "Your voice matters. We can't wait to see what you create." (hollow encouragement)

Quick Reference

Do Don't

Write short paragraphs Write walls of text

Use "and," "but," "so" Use "Furthermore," "Moreover"

Say what you mean Hedge with "may," "might," "could"

Vary sentence rhythm Write uniform sentence lengths

Use commas or periods Use em-dashes

Let ideas connect naturally Force transitions everywhere

Earn poetic closers Force poetic closers

Acknowledge limitations Oversell or overpromise

Write like you're explaining something to a friend at 2 AM. Clear, warm, honest.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

cloudflare-deployment

No summary provided by upstream source.

Repository SourceNeeds Review
General

rich-terminal-output

No summary provided by upstream source.

Repository SourceNeeds Review
General

api-integration

No summary provided by upstream source.

Repository SourceNeeds Review