superspecs 0.1.0 → 0.2.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/README.md CHANGED
@@ -15,6 +15,7 @@
15
15
 
16
16
  **Spec-driven planning. Parallel TDD execution. A wiki that never forgets.**
17
17
 
18
+ [![npm](https://img.shields.io/npm/v/superspecs)](https://www.npmjs.com/package/superspecs)
18
19
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
19
20
  [![Works with: Claude Code · Cursor · OpenCode · Copilot · Codex · Gemini CLI](https://img.shields.io/badge/agents-Claude%20Code%20·%20Cursor%20·%20OpenCode%20·%20Copilot-blue)]()
20
21
 
@@ -62,7 +63,8 @@ The result: five AI agents running in parallel, each with a fresh context, each
62
63
  │ Every requirement is testable. │
63
64
  │ The spec fits a fresh 200k context window. │
64
65
  ├─────────────────────────────────────────────────────┤
65
- │ /discuss → /spec
66
+ │ /design-import <path> (optional, see §1.0)
67
+ │ /discuss → /spec → /grill │
66
68
  └─────────────────────────────────────────────────────┘
67
69
 
68
70
 
@@ -74,7 +76,7 @@ The result: five AI agents running in parallel, each with a fresh context, each
74
76
  │ Critical findings block all progress. │
75
77
  ├─────────────────────────────────────────────────────┤
76
78
  │ /pick-spec → /branch → /subagent │
77
- /tdd → /code-review
79
+ (TDD per task) → /code-review
78
80
  └─────────────────────────────────────────────────────┘
79
81
 
80
82
 
@@ -105,7 +107,7 @@ The result: five AI agents running in parallel, each with a fresh context, each
105
107
 
106
108
  Define the project's tech stack through a guided questionnaire. Get concrete recommendations for specialist skills to install, ecosystem libraries per domain, and a production-readiness checklist tailored to your stack. Also fetches and filters the [awesome-skills.com](https://awesome-skills.com/) community directory live — surfacing the highest-starred, best-matched skills for your stack, with a curated fallback if unavailable. Saves a permanent profile to the wiki that every future session can reference.
107
109
 
108
- **Skills:** `/techstack`
110
+ **Skills:** `/superspecs:techstack`
109
111
 
110
112
  ---
111
113
 
@@ -113,17 +115,60 @@ Define the project's tech stack through a guided questionnaire. Get concrete rec
113
115
 
114
116
  Before any code exists, the plan must fit in a fresh 200k-token context window. This discipline ensures every executor starts clean — no partial history, no reconstructed intent.
115
117
 
116
- ### 1.1 Discuss (`/discuss`)
118
+ ### 1.0 Design Import (`/superspecs:design-import`) — optional
119
+
120
+ > **Optional enrichment.** Run before `/discuss` when you have a DesignOS export. Creates `design-context.md` that carries design constraints, data shapes, milestone structure, and test scaffolding. The normal `/discuss` + `/spec` flow still runs — it just reads `design-context.md` alongside `DISCUSS.md`.
121
+
122
+ A DesignOS export is a structured product package: product overview, incremental milestones, test instructions, TypeScript types, design system tokens, and component screenshots. This skill reads the export and extracts the planning-relevant material into a single context file.
123
+
124
+ **What gets extracted into `design-context.md`:**
125
+
126
+ | DesignOS file | Extracted as |
127
+ |--------------|--------------|
128
+ | `product-overview.md` | Product overview + open questions for `/discuss` |
129
+ | `incremental/01-shell.md` … `NN-section.md` | Milestone → wave mapping for `tasks.md` |
130
+ | `test-instructions/tests.md` | Test scaffolding → GIVEN/WHEN/THEN starting points for `/spec` |
131
+ | `data-shape/types.ts` | Data contract → Interface section in `/spec` |
132
+ | `design-system/` | Locked constraint → NFRs + Out of Scope in `/spec` |
133
+ | `components/screenshots/` | Preserved in `wiki/raw/design-system/screenshots/` (visual refs for subagents) |
134
+
135
+ **Build order is sequential:** Each DesignOS milestone maps to one execution wave. Wave N always depends on Wave N-1. The shell milestone (01) is always Wave 1 — it installs design tokens and structure that all later sections depend on.
136
+
137
+ **Output:** `design-context.md` (or enriched `DISCUSS.md` if one already exists) + design assets in `wiki/raw/design-system/`.
138
+
139
+ **Next:** `/superspecs:discuss` — the discussion reads both `design-context.md` and any existing context. Then `/superspecs:spec` writes the spec from both sources. Then `/superspecs:grill`.
140
+
141
+ ---
142
+
143
+ ### 1.1 Discuss (`/superspecs:discuss`)
117
144
 
118
145
  Capture implementation decisions _before_ anything is planned. Goals, constraints, open questions, explicit non-goals. One question at a time, conversational. The output is a `DISCUSS.md` — the foundation for the spec.
119
146
 
120
- ### 1.2 Spec (`/spec`)
147
+ ### 1.2 Spec (`/superspecs:spec`)
121
148
 
122
149
  Write an OpenSpec-style spec from the discussion. Requirements expressed as SHALL statements with GIVEN/WHEN/THEN scenarios. Lives in `superspec/specs/<slug>/spec.md`.
123
150
 
151
+ If `design-context.md` exists alongside `DISCUSS.md`, the spec reads both: `DISCUSS.md` carries human decisions; `design-context.md` carries design constraints. Design system constraints land in Non-Functional Requirements, data contract types in an Interface section, milestones drive the wave structure in `tasks.md`, and test scaffolding becomes scenario starting points.
152
+
124
153
  **Exit criterion:** spec + context fits a fresh 200k-token window. If it doesn't, decompose into smaller specs.
125
154
 
126
- **Skills:** `/discuss` `/spec`
155
+ ### 1.3 Grill (`/superspecs:grill`)
156
+
157
+ A relentless interview to stress-test the spec before any code is written. The agent walks every branch of the decision tree — one question at a time, always providing a recommended answer.
158
+
159
+ The grill validates the spec against two sources of truth:
160
+
161
+ - **Wiki** — does the spec contradict established patterns, decisions, or interfaces already documented?
162
+ - **Techstack** — does the spec assume libraries, approaches, or patterns that conflict with the defined stack?
163
+
164
+ If the codebase can answer a question, the agent explores it instead of asking. The session ends with a verdict: **READY** (proceed to `/pick-spec`) or **NEEDS REVISION** (spec must be updated and re-grilled).
165
+
166
+ Output: `superspec/specs/<slug>/GRILL.md` + any required updates to `spec.md`.
167
+
168
+ **Exit criterion:** verdict is READY. A spec that hasn't been grilled does not proceed to execution.
169
+
170
+ **Skills:** `/superspecs:discuss` → `/superspecs:spec` → `/superspecs:grill`
171
+ **With DesignOS export:** `/superspecs:design-import <path>` → `/superspecs:discuss` → `/superspecs:spec` → `/superspecs:grill`
127
172
 
128
173
  ---
129
174
 
@@ -131,32 +176,32 @@ Write an OpenSpec-style spec from the discussion. Requirements expressed as SHAL
131
176
 
132
177
  Parallel execution. Each subagent gets a clean context. No shared state between tasks. No "do you remember what we talked about earlier" — the spec and the wiki carry everything.
133
178
 
134
- ### 2.1 Pick Spec (`/pick-spec`)
179
+ ### 2.1 Pick Spec (`/superspecs:pick-spec`)
135
180
 
136
181
  Choose the next spec to execute. Check dependencies, verify the spec is complete, confirm it fits a fresh context window.
137
182
 
138
- ### 2.2 Branch (`/branch`)
183
+ ### 2.2 Branch (`/superspecs:branch`)
139
184
 
140
185
  Create a git branch or worktree for isolated execution. One branch per spec.
141
186
 
142
- ### 2.3 Subagent Development (`/subagent`)
187
+ ### 2.3 Subagent Development (`/superspecs:subagent`)
143
188
 
144
- Dispatches a fresh subagent per task. Each gets: the spec, the task, and nothing else. Two-stage review per task: spec compliance first, code quality second. Supports batch mode with human checkpoints between waves.
189
+ Dispatches a fresh subagent per task. Each gets: the spec, the task, and nothing else. **TDD runs inside each task** — every subagent follows RED → GREEN → REFACTOR before a task is considered done. Two-stage review after each task: spec compliance first, code quality second. Supports wave mode with human checkpoints between waves, or batch mode.
145
190
 
146
- ### 2.4 TDD (`/tdd`)
191
+ The cycle per task:
192
+ 1. Write a failing test — watch it fail for the right reason (RED)
193
+ 2. Write minimal code — watch it pass (GREEN)
194
+ 3. Refactor — clean up while tests stay green (REFACTOR)
195
+ 4. Commit
196
+ 5. Code review (spec compliance → code quality)
147
197
 
148
- Enforces RED GREEN REFACTOR strictly:
198
+ Code written before a failing test gets deleted.
149
199
 
150
- 1. Write a failing test — watch it fail for the right reason
151
- 2. Write minimal code — watch it pass
152
- 3. Commit
153
- 4. Code written before a failing test gets deleted
154
-
155
- ### 2.5 Code Review (`/code-review`)
200
+ ### 2.4 Code Review (`/superspecs:code-review`)
156
201
 
157
202
  Runs between tasks. Reviews against the spec. Reports issues by severity. **Critical issues block all progress** — nothing moves forward until resolved.
158
203
 
159
- **Skills:** `/pick-spec` → `/branch` → `/subagent` `/tdd` → `/code-review`
204
+ **Skills:** `/superspecs:pick-spec` → `/superspecs:branch` → `/superspecs:subagent` (with TDD per task) → `/superspecs:code-review`
160
205
 
161
206
  ---
162
207
 
@@ -164,57 +209,301 @@ Runs between tasks. Reviews against the spec. Reports issues by severity. **Crit
164
209
 
165
210
  Walk through what was built. Diagnose and fix before declaring done. Then distill everything learned into the wiki — so the next session inherits the knowledge.
166
211
 
167
- ### 3.1 Check Tests (`/check-tests`)
212
+ ### 3.1 Check Tests (`/superspecs:check-tests`)
168
213
 
169
214
  Full test suite. Coverage check. Every spec scenario verified by a test. No passing with skipped or pending tests.
170
215
 
171
- ### 3.2 Wiki Import (`/wiki`)
216
+ ### 3.2 Wiki Import (`/superspecs:wiki`)
217
+
218
+ Compile the implemented feature into the project wiki — architecture decisions, patterns, trade-offs, gotchas. The wiki is the memory that outlives the session. See [The Wiki](#the-wiki) for the full architecture, ingest process, query, and lint operations.
219
+
220
+ **Skills:** `/superspecs:check-tests` → `/superspecs:wiki`
172
221
 
173
- Distill the implemented feature into the project wiki. Architecture decisions, patterns, trade-offs, gotchas. The wiki is the memory that outlives the session — it's what makes the next planning cycle start informed instead of blind. Structured, linked, searchable. Not chat history: a real knowledge base.
222
+ ### Wiki Operations (any time)
174
223
 
175
- **Skills:** `/check-tests` `/wiki`
224
+ | Command | What it does |
225
+ |---------|-------------|
226
+ | **`/superspecs:wiki-query`** | Query the compiled wiki using tiered retrieval; optionally file the answer back as a new page |
227
+ | **`/superspecs:wiki-capture`** | Save session findings now — `--quick` stages to `raw/`, `--full` ingests directly |
228
+ | **`/superspecs:wiki-lint`** | Health check: orphans, broken wikilinks, contradictions, stale file refs |
229
+ | **`/superspecs:cross-linker`** | Auto-insert `[[wikilinks]]` for unlinked mentions across the vault |
230
+ | **`/superspecs:wiki-status`** | Vault dashboard: page count, hub pages, tag distribution, provenance, pending sources |
231
+ | **`/superspecs:tag-taxonomy`** | Canonical tag vocabulary; audit and normalize tags vault-wide |
232
+ | **`/superspecs:wiki-rebuild`** | Archive + rebuild vault from scratch; restore from snapshot |
176
233
 
177
234
  ---
178
235
 
179
236
  ## Phase 4 — Ship
180
237
 
181
- ### Ship (`/ship`)
238
+ ### Ship (`/superspecs:ship`)
182
239
 
183
240
  Create the PR. Write a changelog entry. Archive the phase directory. Mark the spec complete. Trigger the next cycle.
184
241
 
185
- **Skills:** `/ship`
242
+ **Skills:** `/superspecs:ship`
186
243
 
187
244
  ---
188
245
 
189
- ## Quick Start
246
+ ## The Wiki
247
+
248
+ The wiki is a compiled, structured knowledge base that outlives every session. It implements the **Karpathy LLM Wiki pattern**: raw source material is compiled once into interlinked markdown pages. Future sessions query the compiled wiki — never the raw specs. Compile once, query fast. Knowledge compounds.
249
+
250
+ ### Architecture
251
+
252
+ ```
253
+ superspec/wiki/
254
+ ├── raw/ ← you drop files here; agent reads, never edits
255
+ ├── _meta/
256
+ │ └── taxonomy.md ← canonical tag vocabulary (managed by /tag-taxonomy)
257
+ ├── _archives/ ← timestamped vault snapshots (managed by /wiki-rebuild)
258
+ ├── Home.md ← vault home: domain table + recent updates
259
+ ├── log.md ← append-only activity log (grep-friendly)
260
+ ├── _manifest.json ← machine-readable ingestion history
261
+ ├── _lint-report.md ← written by /wiki-lint
262
+ ├── _insights.md ← written by /wiki-status (optional)
263
+ └── <domain>/
264
+ ├── Home.md ← domain index
265
+ ├── <topic-a>.md ← one page per knowledge unit
266
+ └── <topic-b>.md
267
+ ```
268
+
269
+ Three layers:
270
+
271
+ | Layer | Path | Who touches it |
272
+ |-------|------|----------------|
273
+ | **Raw** (source material) | `wiki/raw/` | You drop files; agent reads only |
274
+ | **Compiled** (knowledge base) | `wiki/` | Agent writes on ingest/query/capture |
275
+ | **Schema** (operating rules) | `.skills/verify-wiki/SKILL.md` | Defines how to ingest, link, and format |
276
+
277
+ The wiki doubles as an **Obsidian vault**. Open `superspec/wiki/` in Obsidian for graph view, backlinks, tag search, and hover previews — all pre-configured by `superspecs install`.
278
+
279
+ ---
280
+
281
+ ### Domain Organization
282
+
283
+ Domains are **concern-centric, not feature-centric**. A page's domain describes *what the knowledge is about*, not which feature introduced it. Feature traceability lives in `spec:` frontmatter.
284
+
285
+ ```
286
+ superspec/wiki/
287
+ ├── patterns/ ← cross-cutting: error handling, caching, retry, testing
288
+ ├── decisions/ ← ADRs: why X was chosen over Y
289
+ ├── auth/ ← auth, sessions, tokens
290
+ ├── api/ ← contracts, endpoints, versioning
291
+ ├── data/ ← models, schemas, storage
292
+ ├── infra/ ← deployment, CI/CD, environment
293
+ ├── ui/ ← frontend, components, styling
294
+ ├── techstack/ ← stack profile (managed by /techstack)
295
+ └── <feature-slug>/ ← only if nothing above fits
296
+ ```
297
+
298
+ **Routing rules** (applied by `/superspecs:wiki` on ingest):
299
+
300
+ | Knowledge unit | Domain |
301
+ |----------------|--------|
302
+ | Reusable cross-cutting pattern | `patterns/` |
303
+ | Why X was chosen over Y | `decisions/` |
304
+ | Auth / sessions / tokens | `auth/` |
305
+ | API contract or endpoint design | `api/` |
306
+ | Data model or storage decision | `data/` |
307
+ | Infrastructure or deployment | `infra/` |
308
+ | Frontend / UI / styling | `ui/` |
309
+ | Feature-specific, doesn't fit above | `<feature-slug>/` |
310
+
311
+ **One domain per page.** If a page spans multiple concerns, split it. **One knowledge unit = one page** — merge instead of creating duplicates.
312
+
313
+ **The canonical domain list lives in `superspec/wiki/_meta/taxonomy.md`** under `## Domains`. This file is created by `superspecs install` with the core domains pre-populated. Add project-specific domains to the "Project Domains" section before creating new folders. `/superspecs:wiki-lint` detects drift — folders that exist but aren't registered in the taxonomy.
314
+
315
+ ---
316
+
317
+ ### Ingest — `/superspecs:wiki`
318
+
319
+ Run after every `/ship`. Compiles a completed, verified feature into the wiki.
320
+
321
+ **What it does:**
322
+
323
+ 1. Reads raw source material — `DISCUSS.md`, `spec.md`, `review-log.md`, key implementation files
324
+ 2. **Scans existing wiki pages first** — updates a page if the topic already exists, never creates duplicates
325
+ 3. Writes new pages with full frontmatter:
326
+ - `summary:` — 1–2 sentence preview (used by `/wiki-query` for fast retrieval)
327
+ - `tags:` — from `_meta/taxonomy.md` canonical vocabulary
328
+ - `provenance:` — tracks what % of content is extracted vs. inferred
329
+ - `[[wikilinks]]` for all internal cross-references
330
+ 4. Updates domain `Home.md` index and vault `Home.md`
331
+ 5. Appends to `wiki/log.md`
332
+ 6. Updates `_manifest.json`
333
+
334
+ **Provenance tracking** — every page marks claim origins:
335
+ - No marker = extracted directly from source material
336
+ - `^[inferred]` = agent synthesis, not stated verbatim
337
+ - `^[ambiguous]` = sources disagree or claim is uncertain
338
+
339
+ **What it distills:** architecture decisions, patterns, gotchas, key interfaces, open questions.
340
+ **What it does NOT copy:** full code listings, task checklists, or the spec itself.
341
+
342
+ ---
343
+
344
+ ### Query — `/superspecs:wiki-query`
345
+
346
+ Ask a question; get an answer synthesized from the compiled wiki using **tiered retrieval**.
347
+
348
+ ```
349
+ "What do we know about error handling?"
350
+ "What was the decision on the database choice?"
351
+ "Find everything about the payment integration."
352
+ ```
353
+
354
+ **Tiered retrieval — cost stays flat as the vault grows:**
355
+
356
+ 1. **Phase 1 (cheap):** scan frontmatter only — `title`, `tags`, `summary:` — across all pages. Score relevance, select top 3–5 candidates
357
+ 2. **Phase 2 (targeted):** open full body of top candidates only. Follow `[[wikilinks]]` one level deep
358
+
359
+ Say **"quick answer"** or **"just scan"** to force index-only mode (Phase 1 only).
360
+
361
+ **Key rule:** reads `wiki/` only — never `raw/`, never specs, never source code.
362
+
363
+ **Optional:** file the answer back as a new wiki page — useful for synthesized cross-domain knowledge.
364
+
365
+ ---
366
+
367
+ ### Lint — `/superspecs:wiki-lint`
368
+
369
+ Periodic health check. Finds structural and semantic problems.
370
+
371
+ | Check | What it finds |
372
+ |-------|--------------|
373
+ | **Orphaned pages** | Pages with no inbound `[[wikilinks]]` |
374
+ | **Broken wikilinks** | `[[links]]` pointing to non-existent pages |
375
+ | **Missing cross-links** | Page A mentions a topic with its own page B but doesn't link to it |
376
+ | **Contradictions** | Two pages make conflicting claims about the same decision or pattern |
377
+ | **Stale file refs** | Backtick paths pointing to files that no longer exist |
378
+ | **Missing frontmatter** | Pages missing `title`, `tags`, `summary:`, `created`, or `updated` |
379
+ | **Undocumented domains** | Domain folder exists but has no `Home.md` |
380
+ | **Domain drift** | Domain folder exists but isn't listed in `_meta/taxonomy.md` (typo, duplicate, or unregistered) |
381
+
382
+ Output: `wiki/_lint-report.md` + appended `log.md`. Auto-fixes safe issues with confirmation; contradictions always require human review.
383
+
384
+ ---
385
+
386
+ ### Cross-link — `/superspecs:cross-linker`
387
+
388
+ Automatically weave `[[wikilinks]]` across the vault. Run after any ingest to connect new knowledge to existing pages.
389
+
390
+ **What it does:**
391
+ 1. Builds a map of all page titles and aliases
392
+ 2. Scans every page body for unlinked mentions of other page titles
393
+ 3. Inserts `[[wikilinks]]` for first occurrences only (not inside code blocks or headings)
394
+ 4. Reports every change made
395
+
396
+ **Guards:** skips aliases shorter than 4 characters, generic English words, self-references, and anything already linked.
397
+
398
+ ---
399
+
400
+ ### Status — `/superspecs:wiki-status`
401
+
402
+ Dashboard of the vault's current state.
403
+
404
+ ```
405
+ VAULT SIZE 32 pages across 6 domains
406
+ RECENT ACTIVITY Last ingest: 2026-06-19 (auth-flow)
407
+ HUB PAGES [[auth/jwt-refresh]] (12 backlinks), [[patterns/error-handling]] (9)
408
+ TAG DISTRIBUTION auth (14) api (11) patterns (9) ...
409
+ PROVENANCE Extracted: 72% Inferred: 23% Ambiguous: 5%
410
+ PENDING 2 specs not yet compiled, 1 raw/ file not yet ingested
411
+ HEALTH 3 orphans, 1 broken link (run /wiki-lint for details)
412
+ ```
413
+
414
+ Optionally writes a full `_insights.md` to the vault.
415
+
416
+ ---
417
+
418
+ ### Capture — `/superspecs:wiki-capture`
419
+
420
+ Save findings from the current session before the context window resets.
421
+
422
+ - **`--quick` (default):** stages a structured draft to `wiki/raw/capture-<timestamp>.md` in under 60 seconds. The next `/wiki` run promotes it to proper pages.
423
+ - **`--full`:** distills directly to wiki pages following the full ingest process.
424
+
425
+ **What gets captured:** decisions made, bugs fixed and their root causes, patterns discovered, gotchas, open questions. Noise is dropped.
426
+
427
+ ---
428
+
429
+ ### Tag Taxonomy — `/superspecs:tag-taxonomy`
430
+
431
+ Maintain a controlled vocabulary so tags stay consistent across the vault.
432
+
433
+ - `_meta/taxonomy.md` — the canonical tag list (domain tags, topic tags, aliases)
434
+ - **Audit mode:** scans all pages, finds non-canonical tags, proposes normalization
435
+ - **Normalize mode:** applies fixes after confirmation — updates frontmatter across the vault
436
+ - **Init mode:** first run with no taxonomy — scans all existing tags and proposes a vocabulary
437
+
438
+ ---
439
+
440
+ ### Rebuild — `/superspecs:wiki-rebuild`
441
+
442
+ When the wiki has accumulated too much drift, archive and rebuild from scratch.
443
+
444
+ | Mode | What it does |
445
+ |------|-------------|
446
+ | `archive` | Snapshot current vault to `_archives/<timestamp>/` |
447
+ | `rebuild` | Archive + wipe compiled wiki + recompile all shipped specs + raw files |
448
+ | `restore <timestamp>` | Roll back to a previous archive (auto-archives current state first) |
449
+ | `list` | Show all available snapshots |
450
+
451
+ **Safety rules:** never touches `raw/`, `.obsidian/`, `log.md`, or `_archives/`. Always archives before any destructive operation. Always asks for confirmation.
452
+
453
+ ---
454
+
455
+ ### When to run each command
456
+
457
+ | When | Command |
458
+ |------|---------|
459
+ | After every `/ship` | `/superspecs:wiki <slug>` |
460
+ | After ingest — connect new pages | `/superspecs:cross-linker` |
461
+ | Before new planning cycle | `/superspecs:wiki-query "What do we know about X?"` |
462
+ | Before `/grill` — check existing decisions | `/superspecs:wiki-query` |
463
+ | Mid-session — save important findings | `/superspecs:wiki-capture` |
464
+ | Drop article/doc into `raw/` | `/superspecs:wiki <filename>` |
465
+ | Check vault health + domain drift | `/superspecs:wiki-status` |
466
+ | Tags getting inconsistent | `/superspecs:tag-taxonomy` |
467
+ | Monthly / before a release | `/superspecs:wiki-lint` |
468
+ | Wiki has too much drift | `/superspecs:wiki-rebuild` |
469
+
470
+ ---
190
471
 
191
472
  ```bash
192
- # Install
193
- git clone https://github.com/your-org/superspecs.git
473
+ # Install globally
474
+ npm install -g superspecs
475
+
476
+ # Run in your project to symlink skills into all your AI agents
194
477
  cd your-project
195
- bash ~/.superspecs/setup.sh # symlinks skills into all your agents
478
+ superspecs install
196
479
 
197
- # Or per-project
198
- git clone https://github.com/your-org/superspecs.git .superspecs
199
- bash .superspecs/setup.sh
480
+ # Or without a global install
481
+ npx superspecs install
200
482
  ```
201
483
 
202
484
  Then open your agent and say: **"Tell me about your superspecs"**
203
485
 
486
+ > **Command format by agent**
487
+ > - Claude Code / Cursor: `/superspecs:techstack`
488
+ > - OpenCode / Aider: `/superspecs-techstack`
489
+
490
+ > **Wiki as Obsidian vault** — after `superspecs install`, open `superspec/wiki/` in [Obsidian](https://obsidian.md) as a vault. Graph view, backlinks, and tag search work out of the box.
491
+
204
492
  ### First feature
205
493
 
206
494
  ```
207
- /techstack Define stack, get skill & library recommendations
208
- /discuss What are we building and why?
209
- /spec Write the spec
210
- /pick-spec Confirm it fits a clean context
211
- /branch Create worktree
212
- /subagent Start execution
213
- /tdd Enforce RED-GREEN-REFACTOR
214
- /code-review Check between tasks
215
- /check-tests Verify everything passes
216
- /wiki Distill to knowledge base
217
- /ship PR + archive
495
+ /superspecs:techstack Define stack, get skill & library recommendations
496
+ /superspecs:discuss What are we building and why?
497
+ /superspecs:spec Write the spec
498
+ /superspecs:grill Stress-test spec against wiki + techstack
499
+ /superspecs:pick-spec Confirm it fits a clean context
500
+ /superspecs:branch Create worktree
501
+ /superspecs:subagent Start execution (TDD runs inside each task)
502
+ /superspecs:tdd Standalone: enforce RED-GREEN-REFACTOR outside subagent
503
+ /superspecs:code-review Check between tasks
504
+ /superspecs:check-tests Verify everything passes
505
+ /superspecs:wiki Distill to knowledge base
506
+ /superspecs:ship PR + archive
218
507
  ```
219
508
 
220
509
  ---
@@ -227,6 +516,7 @@ your-project/
227
516
  │ ├── specs/ # Feature specifications
228
517
  │ │ └── <slug>/
229
518
  │ │ ├── DISCUSS.md # Pre-planning decisions
519
+ │ │ ├── design-context.md # Optional — from /design-import (DesignOS enrichment)
230
520
  │ │ ├── spec.md # The spec (SHALL + scenarios)
231
521
  │ │ ├── tasks.md # Implementation tasks
232
522
  │ │ └── status.md # Phase + checklist
@@ -237,16 +527,21 @@ your-project/
237
527
  │ │ ├── review-log.md # Code review history
238
528
  │ │ └── wave-*.md # Parallel execution waves
239
529
  │ │
240
- │ └── wiki/ # Living knowledge base
241
- │ ├── _index.md
242
- │ ├── _manifest.json
530
+ │ └── wiki/ # Living knowledge base (Obsidian vault)
531
+ │ ├── raw/ # Source material — agent reads, never edits
532
+ │ ├── Home.md # Vault home + domain catalog
533
+ │ ├── log.md # Append-only activity log
534
+ │ ├── _manifest.json # Machine-readable ingestion history
243
535
  │ └── <domain>/
244
- └── <topic>.md
536
+ ├── Home.md # Domain index
537
+ │ └── <topic>.md # One page per knowledge unit
245
538
 
246
539
  ├── .skills/ # SuperSpecs skills (source of truth)
540
+ │ ├── design-import/SKILL.md
247
541
  │ ├── techstack/SKILL.md
248
542
  │ ├── plan-discuss/SKILL.md
249
543
  │ ├── plan-spec/SKILL.md
544
+ │ ├── plan-grill/SKILL.md
250
545
  │ ├── execute-pick-spec/SKILL.md
251
546
  │ ├── execute-branch/SKILL.md
252
547
  │ ├── execute-subagent/SKILL.md
@@ -254,7 +549,15 @@ your-project/
254
549
  │ ├── execute-review/SKILL.md
255
550
  │ ├── verify-tests/SKILL.md
256
551
  │ ├── verify-wiki/SKILL.md
257
- └── ship/SKILL.md
552
+ ├── wiki-query/SKILL.md
553
+ │ ├── wiki-lint/SKILL.md
554
+ │ ├── cross-linker/SKILL.md
555
+ │ ├── wiki-status/SKILL.md
556
+ │ ├── wiki-capture/SKILL.md
557
+ │ ├── tag-taxonomy/SKILL.md
558
+ │ ├── wiki-rebuild/SKILL.md
559
+ │ ├── ship/SKILL.md
560
+ │ └── skill-creator/SKILL.md
258
561
 
259
562
  ├── CLAUDE.md # Bootstrap → Claude Code
260
563
  ├── AGENTS.md # Bootstrap → Codex / OpenCode / Aider
@@ -268,19 +571,29 @@ your-project/
268
571
 
269
572
  ## Skill Reference
270
573
 
271
- | Phase | Skill | Command | What it does |
272
- | ------- | ------------------- | -------------- | ---------------------------------------------------------------------------- |
273
- | Setup | `techstack` | `/techstack` | Questionnaire: define stack, recommend skills & libraries, save wiki profile |
274
- | Plan | `plan-discuss` | `/discuss` | Capture decisions before planning |
275
- | Plan | `plan-spec` | `/spec` | Write OpenSpec-style spec |
276
- | Execute | `execute-pick-spec` | `/pick-spec` | Choose + validate next spec |
277
- | Execute | `execute-branch` | `/branch` | Create branch / worktree |
278
- | Execute | `execute-subagent` | `/subagent` | Parallel subagent task execution |
279
- | Execute | `execute-tdd` | `/tdd` | RED-GREEN-REFACTOR enforcement |
280
- | Execute | `execute-review` | `/code-review` | Between-task spec + quality review |
281
- | Verify | `verify-tests` | `/check-tests` | Full suite + scenario coverage |
282
- | Verify | `verify-wiki` | `/wiki` | Distill feature to wiki |
283
- | Ship | `ship` | `/ship` | PR + archive + next cycle |
574
+ | Phase | Skill | Command | What it does |
575
+ | ------- | ------------------- | ---------------------------- | ---------------------------------------------------------------------------- |
576
+ | Setup | `techstack` | `/superspecs:techstack` | Questionnaire: define stack, recommend skills & libraries, save wiki profile |
577
+ | Plan | `design-import` | `/superspecs:design-import` | Optional enrichment: reads DesignOS export, creates `design-context.md` for `/discuss` + `/spec` to use |
578
+ | Plan | `plan-discuss` | `/superspecs:discuss` | Capture decisions before planning |
579
+ | Plan | `plan-spec` | `/superspecs:spec` | Write OpenSpec-style spec |
580
+ | Plan | `plan-grill` | `/superspecs:grill` | Stress-test spec against wiki + techstack, blocks execution until READY |
581
+ | Execute | `execute-pick-spec` | `/superspecs:pick-spec` | Choose + validate next spec |
582
+ | Execute | `execute-branch` | `/superspecs:branch` | Create branch / worktree |
583
+ | Execute | `execute-subagent` | `/superspecs:subagent` | Parallel subagent task execution |
584
+ | Execute | `execute-tdd` | `/superspecs:tdd` | RED-GREEN-REFACTOR runs inside each subagent task; invoke standalone for code outside subagent mode |
585
+ | Execute | `execute-review` | `/superspecs:code-review` | Between-task spec + quality review |
586
+ | Verify | `verify-tests` | `/superspecs:check-tests` | Full suite + scenario coverage |
587
+ | Verify | `verify-wiki` | `/superspecs:wiki` | Compile feature to wiki — ingest, provenance, summary frontmatter |
588
+ | Wiki | `wiki-query` | `/superspecs:wiki-query` | Tiered retrieval query; optionally file answer back as a page |
589
+ | Wiki | `wiki-lint` | `/superspecs:wiki-lint` | Health check: orphans, broken links, contradictions, stale refs |
590
+ | Wiki | `cross-linker` | `/superspecs:cross-linker` | Auto-insert `[[wikilinks]]` for unlinked mentions across the vault |
591
+ | Wiki | `wiki-status` | `/superspecs:wiki-status` | Vault dashboard: size, hubs, tag stats, provenance, pending sources |
592
+ | Wiki | `wiki-capture` | `/superspecs:wiki-capture` | Save session findings to wiki (`--quick` stages to raw/, `--full` ingests) |
593
+ | Wiki | `tag-taxonomy` | `/superspecs:tag-taxonomy` | Canonical tag vocabulary; audit and normalize tags vault-wide |
594
+ | Wiki | `wiki-rebuild` | `/superspecs:wiki-rebuild` | Archive + rebuild vault; restore from snapshot |
595
+ | Ship | `ship` | `/superspecs:ship` | PR + archive + next cycle |
596
+ | Meta | `skill-creator` | `/superspecs:skill-creator` | Create a new SuperSpecs skill to extend the framework |
284
597
 
285
598
  ---
286
599
 
@@ -292,7 +605,7 @@ your-project/
292
605
 
293
606
  **Critical issues block progress.** A `/code-review` finding rated Critical is not a suggestion. Nothing moves forward until it's resolved.
294
607
 
295
- **Knowledge outlives the session.** After every shipped feature, the wiki gains a page. Future planning sessions start informed.
608
+ **Knowledge outlives the session.** The wiki uses the Karpathy LLM Wiki pattern: raw sources are compiled once into structured, interlinked pages. Future sessions query the wiki not the raw specs. Knowledge compounds; problems stay solved.
296
609
 
297
610
  **One branch per spec.** Isolation prevents interference between parallel workstreams.
298
611
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "superspecs",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "Spec-driven AI development: planning + TDD + living wiki memory",
5
5
  "bin": {
6
6
  "superspecs": "./bin/superspecs.js"