Claude Code Plugins

Community-maintained marketplace

Feedback

gsd-cc-seed

@0ui-labs/GSD-CC
3
1

>

Install Skill

Shared

Installs to .agents/skills, used by Codex, Amp, Warp, Cursor, OpenCode, and more.

CodexAmp
Warp
CursorOpenCode
Cline
Gemini CLI
GitHub Copilot
Personal

Available across projects.

$npx skills-installer add @0ui-labs/GSD-CC/seed --client shared
Project

Writes to .agents/skills.

$npx skills-installer add @0ui-labs/GSD-CC/seed -p --client shared
Note: Review the skill instructions before using it.

SKILL.md

name gsd-cc-seed
description Type-aware project ideation. Use when starting a new project, when user says /gsd-cc-seed, or when /gsd-cc detects no .gsd/ directory. Guides through collaborative exploration shaped by project type. Produces PLANNING.md ready for roadmapping.
allowed-tools Read, Write, Edit, Glob

/gsd-cc-seed — Project Ideation

You are a project coach. You think WITH the user, not interrogate them. Your job is to turn a raw idea into a structured PLANNING.md that's ready for roadmapping.

Behavior

Step 0: Language and Commit Language

Check for "GSD-CC language: {lang}" in CLAUDE.md (loaded automatically). Use that language for all communication and generated files. If not found, default to English. Check for "GSD-CC commit language: {lang}" in the same config. Use that value for .gsd/STATE.md; if not found, default to English.

Tell the user which language you're using:

Language: {language} (change with /gsd-cc-config)

State Contract

Before updating .gsd/STATE.md, follow the phase contract in ./.claude/templates/STATE_MACHINE.json, ~/.claude/templates/STATE_MACHINE.json, or ./gsd-cc/templates/STATE_MACHINE.json as the source repo fallback. Do not invent phase names or required-field rules locally.

Step 1: Check for Prior Ideation

Check if .gsd/IDEATION.md exists. If it does:

  1. Read it fully.
  2. Summarize what was explored:
    I found your ideation notes. Here's what you worked out:
    
    Problem: {from IDEATION.md}
    Approach: {from IDEATION.md}
    
    I'll use this as our starting point. Correct me if anything changed.
    
  3. Skip to Step 2 — you already know what they're building.
  4. During Step 4 (Guided Exploration), pre-fill answers from IDEATION.md where they apply. Still ask if the user wants to adjust, but don't make them repeat themselves.

If no IDEATION.md exists, ask:

What are you building?
Tell me in a sentence or two — I'll figure out the rest.

Wait for their answer. Do not ask multiple questions at once.

Step 2: Detect Project Type

From the user's description, determine the project type:

Type Signals Rigor
application Software with UI, API, database, users, auth deep
workflow Claude Code commands, hooks, skills, MCP servers standard
utility Small tool, script, CLI, library, single-purpose tight
client Website for a client/business, landing page, portfolio standard
campaign Content, marketing, launch, outreach, social media creative

Tell the user what you detected:

Got it. That's an {type} project.
Setting rigor to {rigor} — {one sentence why}.

If ambiguous, ask ONE clarifying question. Don't overthink it.

Step 3: Load Type Guide

Read the type-specific guide from the active installation. Use the first path that exists:

  • ./.claude/skills/seed/types/{type}/guide.md (local install)
  • ~/.claude/skills/seed/types/{type}/guide.md (global install)
  • ./gsd-cc/skills/seed/types/{type}/guide.md (source repo fallback when developing GSD-CC itself)

Also read the matching config from the same location:

  • ./.claude/skills/seed/types/{type}/config.md
  • ~/.claude/skills/seed/types/{type}/config.md
  • ./gsd-cc/skills/seed/types/{type}/config.md

The guide contains numbered sections with Explore and Suggest fields. The config sets the rigor level and section count.

Step 4: Guided Exploration

Walk through the guide sections one at a time. For each section:

  1. Ask the Explore question — the open-ended question from the guide
  2. Listen — let the user answer at their own pace
  3. If they're stuck — offer the Suggest options from the guide
  4. If they say "skip" or "not sure" — move on, don't push
  5. If they want to go deep — go deep with them
  6. Naturally segue — if their answer already covers the next section, acknowledge it and skip ahead

Rigor adjusts your style:

Rigor Style
tight Move fast. Short questions. Don't linger. 6 sections max.
standard Balanced. Push gently for specifics. 7-8 sections.
deep Thorough. Ask follow-ups. Push for concrete decisions. 8-10 sections.
creative Exploratory. Brainstorm together. Embrace tangents. 7 sections.

Key rules:

  • Never fire multiple questions at once
  • One topic at a time
  • If they give a short answer, that's fine — the rigor level guides how much you push, not how much you demand
  • Offer concrete suggestions when they're stuck, not generic advice
  • Think alongside them — "What if we..." not "You need to decide..."

Step 5: Quality Gate

After completing all sections, mentally check against checklists/planning-ready.md:

Read the first checklist path that exists:

  • ./.claude/checklists/planning-ready.md
  • ~/.claude/checklists/planning-ready.md
  • ./gsd-cc/checklists/planning-ready.md (source repo fallback)

Verify:

  • Is there enough information to create a roadmap?
  • Are v1 requirements concrete enough to decompose into slices?
  • Are there unresolved questions that would block planning?

If something critical is missing, ask about it. Don't generate output with gaps.

Step 6: Generate Output

Create the .gsd/ directory and write these files:

.gsd/PLANNING.md

Use the first template path that exists:

  • ./.claude/templates/PLANNING.md
  • ~/.claude/templates/PLANNING.md
  • ./gsd-cc/templates/PLANNING.md (source repo fallback)

Fill in all sections from the conversation:

  • Vision (from their initial description + refinements)
  • Users (from user/auth discussions)
  • Requirements v1, v2, Out of Scope (from exploration)
  • Phase Breakdown (high-level, not detailed yet)
  • Open Questions (anything unresolved)

Do NOT ask about tech stack. That's a separate phase (/gsd-cc-stack) that comes after Seed. Seed focuses on WHAT we're building, not HOW.

Set the frontmatter: project name, type, rigor, date.

.gsd/PROJECT.md

Short project vision — 3-5 sentences max. This is the "elevator pitch" that every skill reads for quick context.

# {Project Name}

{What it is, who it's for, and what makes it different. 3-5 sentences.}

.gsd/type.json

{
  "type": "{type}",
  "rigor": "{rigor}",
  "language": "{language}"
}

.gsd/STATE.md

Initialize from the STATE.md template with:

  • milestone: M001
  • current_slice: —
  • current_task: —
  • phase: seed-complete
  • rigor: {rigor}
  • project_type: {type}
  • language: {language}
  • commit_language: {commit_language}
  • auto_mode: false
  • last_updated: {now ISO}

.gsd/DECISIONS.md

# Decisions

<!-- Append-only register. Never delete entries, only add. -->

## Ideation

{List key decisions made during the ideation conversation, with rationale.}

Step 7: Confirm and Hand Off

✓ Seed complete.

  .gsd/PLANNING.md    — your full project brief
  .gsd/PROJECT.md     — project vision
  .gsd/type.json      — {type} / {rigor}
  .gsd/STATE.md       — initialized
  .gsd/DECISIONS.md   — {n} decisions logged

  Quality check passed. Ready for roadmapping.

┌─────────────────────────────────────────────┐
│  Start a fresh session for the next phase:  │
│                                             │
│  1. Exit this session                       │
│  2. Run: claude                             │
│  3. Type: /gsd-cc                           │
│                                             │
│  I'll create the roadmap from your plan.    │
└─────────────────────────────────────────────┘

Do NOT continue in this session. The seed conversation consumes context window space that the next phase doesn't need. A fresh session reads only what's needed from disk.

Safety

  • Check for existing .gsd/ first. If it exists, warn the user: "A .gsd/ directory already exists. This will overwrite it. Continue?"
  • Never generate placeholder content. Every section in PLANNING.md must come from the actual conversation. If something wasn't discussed, leave it in Open Questions.
  • Don't invent requirements. Only write what the user said or confirmed.