gsd-cc 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bin/install.js CHANGED
@@ -27,7 +27,7 @@ ${cyan} ██████╗ ███████╗██████╗
27
27
  `;
28
28
 
29
29
  // Sub-skills that get their own top-level directory under .claude/skills/
30
- const SUB_SKILLS = ['apply', 'auto', 'config', 'discuss', 'help', 'ideate', 'plan', 'profile', 'seed', 'status', 'tutorial', 'unify', 'update', 'vision'];
30
+ const SUB_SKILLS = ['apply', 'auto', 'config', 'discuss', 'help', 'ideate', 'ingest', 'plan', 'profile', 'seed', 'status', 'tutorial', 'unify', 'update', 'vision'];
31
31
 
32
32
  // Shared directories that go into gsd-cc-shared/
33
33
  const SHARED_DIRS = ['checklists', 'prompts', 'templates'];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gsd-cc",
3
- "version": "1.0.0",
3
+ "version": "1.1.0",
4
4
  "description": "Get Shit Done on Claude Code — structured AI development with your Max plan",
5
5
  "author": "Philipp Briese (https://github.com/0ui-labs)",
6
6
  "homepage": "https://github.com/0ui-labs/GSD-CC#readme",
@@ -184,6 +184,7 @@ Execute S01? (manual or auto)
184
184
  ## Delegating to Sub-Skills
185
185
 
186
186
  When routing to a sub-skill, tell the user what you're doing and then invoke the skill:
187
+ - Import concept → `/gsd-cc-ingest`
187
188
  - Vision document → `/gsd-cc-vision`
188
189
  - Decision profile → `/gsd-cc-profile`
189
190
  - Brainstorming → `/gsd-cc-ideate`
@@ -0,0 +1,209 @@
1
+ ---
2
+ name: gsd-cc-ingest
3
+ description: >
4
+ Import an existing concept document, spec, or brief into GSD-CC.
5
+ Analyzes the document, identifies gaps, asks targeted follow-ups,
6
+ and generates standardized project artifacts. Use when user says
7
+ /gsd-cc-ingest, pastes a concept, or uploads a document.
8
+ allowed-tools: Read, Write, Edit, Glob, Bash
9
+ ---
10
+
11
+ # /gsd-cc-ingest — Import External Concept
12
+
13
+ You take an existing document — any format, any quality — and turn it into clean GSD-CC project artifacts. The user may have a polished spec, a rambling Google Doc, a Notion page dump, a PDF, a chat history, or just a wall of text pasted into the chat.
14
+
15
+ Your job: understand it, verify your understanding, fill the gaps, and produce standardized output.
16
+
17
+ ## Language
18
+
19
+ Check for "GSD-CC language: {lang}" in CLAUDE.md (loaded automatically). All output must use that language. If not found, default to English.
20
+
21
+ ## Step 1: Receive the Input
22
+
23
+ The input can come in many forms:
24
+
25
+ - **Pasted text** — the user copies their concept into the chat
26
+ - **File path** — "here's my concept: /path/to/concept.md"
27
+ - **Multiple files** — "look at these files: /docs/spec.md, /docs/wireframes.md"
28
+ - **URL content** — the user might paste content from a web page
29
+
30
+ Read whatever they provide. If it's a file path, use `Read`. If it's multiple files, read all of them.
31
+
32
+ Say:
33
+ ```
34
+ Got it. Let me read through this carefully.
35
+ ```
36
+
37
+ ## Step 2: Analyze and Summarize
38
+
39
+ Read the entire document. Then present a structured summary back to the user:
40
+
41
+ ```
42
+ Here's what I understood from your document:
43
+
44
+ PROJECT: {one sentence — what is this?}
45
+
46
+ WHAT'S CLEAR:
47
+ ✓ {Area 1} — {brief summary of what's defined}
48
+ ✓ {Area 2} — {brief summary}
49
+ ✓ {Area 3} — {brief summary}
50
+ ...
51
+
52
+ WHAT'S VAGUE OR MISSING:
53
+ ? {Area 1} — {what's unclear or not mentioned}
54
+ ? {Area 2} — {what's unclear}
55
+ ...
56
+
57
+ CONTRADICTIONS (if any):
58
+ ⚠ {Description of contradiction}
59
+ ...
60
+
61
+ Did I get this right? Anything I misunderstood?
62
+ ```
63
+
64
+ **This confirmation step is critical.** The user must verify that you understood their concept correctly before you generate any artifacts. Misunderstanding a concept and generating wrong artifacts is worse than asking.
65
+
66
+ Wait for confirmation before proceeding.
67
+
68
+ ## Step 3: Fill the Gaps
69
+
70
+ For each vague or missing area, ask targeted questions. Don't ask about things the document already covers — that's annoying.
71
+
72
+ Adapt your questions to the user's level (same as /gsd-cc-profile — read the room from how the document is written).
73
+
74
+ **For a technical spec with missing areas:**
75
+ - "Your spec covers the API endpoints but doesn't mention authentication. What's the plan — JWT, sessions, OAuth?"
76
+
77
+ **For a non-technical brief with gaps:**
78
+ - "You described what the dashboard shows, but not what happens when someone clicks a number. Should it open a detail view, filter something, or just be informational?"
79
+
80
+ **For a vague concept:**
81
+ - "You mention 'user management' — what does that mean to you? Just login/signup, or also roles, permissions, teams?"
82
+
83
+ Group related questions. Don't fire 15 questions at once. 3-4 at a time, then wait.
84
+
85
+ ## Step 4: Assess Coverage
86
+
87
+ After filling gaps, check which GSD-CC artifacts you have enough information for:
88
+
89
+ | Artifact | Can generate? | Why / why not |
90
+ |----------|--------------|---------------|
91
+ | PLANNING.md | Yes/Partial/No | {explanation} |
92
+ | VISION.md | Yes/Partial/No | {explanation} |
93
+ | PROJECT.md | Yes/No | {explanation} |
94
+ | type.json | Yes/No | {explanation} |
95
+
96
+ Tell the user:
97
+ ```
98
+ Based on your document and our conversation, I can generate:
99
+ ✓ PLANNING.md — full project brief
100
+ ✓ PROJECT.md — elevator pitch
101
+ ✓ type.json — {type} / {rigor}
102
+ ◐ VISION.md — partial (you described the core experience in detail
103
+ but not the look & feel — want to add that now or later?)
104
+
105
+ Generate these now?
106
+ ```
107
+
108
+ ## Step 5: Generate Artifacts
109
+
110
+ On confirmation, create the `.gsd/` directory and write:
111
+
112
+ ### `.gsd/PLANNING.md`
113
+ Same format as Seed output. Map the document's content to the standard sections:
114
+ - Vision (from the document's intro/summary)
115
+ - Users (from any user descriptions, personas, or target audience sections)
116
+ - Requirements v1, v2, Out of Scope (from feature lists, must-haves, nice-to-haves)
117
+ - Tech Stack (from any technical decisions in the document, or leave for Seed to fill)
118
+ - Architecture Decisions (from any technical choices mentioned)
119
+ - Open Questions (from remaining gaps)
120
+
121
+ **Source everything.** For each section, note where in the original document the information came from. This lets the user verify the mapping.
122
+
123
+ ### `.gsd/VISION.md` (if enough detail)
124
+ Only generate this if the document contains detailed descriptions of how things should look, feel, or work from the user's perspective. If it's a dry technical spec, skip VISION.md — the user can create it later with `/gsd-cc-vision`.
125
+
126
+ ### `.gsd/PROJECT.md`
127
+ 3-5 sentence elevator pitch, distilled from the document.
128
+
129
+ ### `.gsd/type.json`
130
+ Detect project type and rigor from the document content, same logic as Seed.
131
+
132
+ ### `.gsd/STATE.md`
133
+ Initialize with phase: seed-complete (since we're replacing the Seed step).
134
+
135
+ ### `.gsd/DECISIONS.md`
136
+ Log any decisions that were already made in the original document:
137
+ ```markdown
138
+ # Decisions
139
+
140
+ ## From Original Concept
141
+ - {Decision from document} (source: original concept, section X)
142
+ - {Decision from document} (source: original concept, section Y)
143
+
144
+ ## From Ingest Conversation
145
+ - {Decision from gap-filling conversation} (reason: {rationale})
146
+ ```
147
+
148
+ ### `.gsd/INGEST-SOURCE.md`
149
+ Keep a reference to what was ingested:
150
+ ```markdown
151
+ # Ingest Source
152
+
153
+ Ingested on: {date}
154
+ Source: {file path(s) or "pasted text"}
155
+ Original length: ~{word count} words
156
+ Gaps identified: {count}
157
+ Gaps resolved: {count}
158
+ Gaps remaining: {count — these are in PLANNING.md Open Questions}
159
+ ```
160
+
161
+ ## Step 6: What's Still Missing?
162
+
163
+ After generating artifacts, honestly assess what wasn't in the document and wasn't covered in the conversation:
164
+
165
+ ```
166
+ ✓ Artifacts generated.
167
+
168
+ Still open — you might want to address these later:
169
+ • {Open question 1} — consider /gsd-cc-discuss during planning
170
+ • {Open question 2} — could be covered in /gsd-cc-vision
171
+ ...
172
+
173
+ These are also listed in PLANNING.md under "Open Questions".
174
+ ```
175
+
176
+ ## Step 7: Hand Off
177
+
178
+ ```
179
+ ✓ Ingest complete.
180
+
181
+ .gsd/PLANNING.md — project brief (from your document)
182
+ .gsd/PROJECT.md — elevator pitch
183
+ .gsd/type.json — {type} / {rigor}
184
+ .gsd/STATE.md — initialized
185
+ .gsd/DECISIONS.md — {n} decisions from your document
186
+ .gsd/INGEST-SOURCE.md — reference to source
187
+ {.gsd/VISION.md — if generated}
188
+
189
+ ┌─────────────────────────────────────────────┐
190
+ │ Start a fresh session to continue: │
191
+ │ │
192
+ │ 1. Exit this session │
193
+ │ 2. Run: claude │
194
+ │ 3. Type: /gsd-cc │
195
+ │ │
196
+ │ Next: roadmap creation. │
197
+ │ Optional: /gsd-cc-vision for more detail │
198
+ └─────────────────────────────────────────────┘
199
+ ```
200
+
201
+ **Do NOT continue in this session.** The ingested document may have consumed significant context.
202
+
203
+ ## Rules
204
+
205
+ - **Don't assume.** If the document says "user management" without detail, ask. Don't invent features.
206
+ - **Respect the document.** The user spent time writing it. Don't dismiss parts of it. If something seems wrong, ask — don't silently fix it.
207
+ - **Preserve specificity.** If the document says "response time under 200ms", put exactly that in the requirements. Don't generalize to "should be fast."
208
+ - **Flag contradictions, don't resolve them.** "Your document says X in section 2 but Y in section 5. Which one is correct?" Don't pick one silently.
209
+ - **Don't over-generate.** If the document is a rough idea on half a page, don't generate a 10-page PLANNING.md full of assumptions. Generate what you have, mark the rest as Open Questions.