chore(skills): add /research and /prototype; rewrite README for 6-skill chain

Front-loads gap discovery before /grill-me by adding two skills:

  research    MOSTLY  fans out Explore + WebSearch agents in parallel,
                      synthesizes findings into a brief, names open
                      unknowns explicitly (which become /prototype targets)

  prototype   MOSTLY  builds a throwaway spike to test ONE falsifiable
                      assumption; code lives in .prototypes/ (gitignored),
                      never promoted; output is evidence — verdict, numbers,
                      observed behavior — that feeds /prd

Full chain now:
  /research → /prototype → /grill-me → /prd → /prd-to-issues → /ship-it

Chain rationale: /research and /prototype surface knowledge gaps and falsify
risky assumptions while the cost of changing direction is still cheap; the
TOGETHER phases (grill-me, prd) lock down the contract; the AFK phase
(ship-it) only executes against contracts already on paper.

The chain is a default, not a mandate — README covers when to skip
upstream skills for small or stack-familiar work.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
znetsixe
2026-05-21 16:33:26 +02:00
parent 6ff262e96e
commit fcaad8cd9f
3 changed files with 265 additions and 93 deletions

View File

@@ -0,0 +1,70 @@
---
name: research
description: Gather external knowledge and codebase context for a topic before committing to a direction. Fans out Explore + WebSearch agents in parallel, synthesizes findings into a research brief, and names open unknowns explicitly. Use when the user invokes /research, says "look into X", "what's the prior art on Y", or "research how Z works" — typically before /grill-me or /prd.
---
# Research — fetch knowledge into a brief
**Mode: MOSTLY TOGETHER.** The fetching and synthesis run AFK (Agent subagents do the legwork). The brief lands in chat; you decide what's worth pursuing. No external state is changed.
You are now a senior engineer doing a focused research pass. Goal: enough knowledge to make a good `/prd` decision later — no more. Do not write code, do not pick a winner, do not write the PRD. Lay out what's known, what's available, and what's still unknown.
## Inputs
The user names a topic. If they didn't give constraints, ask exactly one question: "Any constraints I should anchor against (existing stack, deadline, must-use library)?" Then proceed.
## How to research
1. **Decompose the topic into 35 specific questions.** Show these in chat before fetching — gives the user a chance to reroute if you mis-framed it.
2. **Fan out in parallel** using the Agent tool. Launch concurrently in a single message:
- **Explore agent** — codebase patterns, prior art in this repo, related modules. Question: "Does this repo already do something like X? Where? What patterns does it use?"
- **general-purpose agent (with WebSearch)** — external docs, library options, well-known design patterns, published case studies. Question: "What are the established approaches to Y? What libraries handle Z?"
- Optional third agent for git/PR history if the topic has a long lineage in this codebase.
3. **Synthesize, don't dump.** When agents report back, write a brief — not a transcript.
## Output
Inline by default, in this exact structure:
```
# Research brief: <topic>
## Questions
1. <decomposed question>
2. ...
## What's already in this codebase
- <finding> (path/to/file.ts:42)
- ...
## External options
- **<option>** — <one-line eval. when it fits, when it doesn't>
- ...
## Prior art
- <link> — <one-line takeaway>
- ...
## Open unknowns
- <thing no source can answer; candidate for /prototype>
- ...
## Recommended next step
<one sentence>
```
Say "save it" → write to `docs/research/<short-kebab-name>.md`.
## Quality bar
- Specific over comprehensive. A 1-page brief that surfaces the real decision beats a 5-page survey.
- Cite sources for every claim. `file:line` for codebase, URL for external. No floating assertions.
- Name what you don't know. If a question can't be answered from sources, that's an Open Unknown, not a gap to paper over with confident-sounding speculation.
- Don't recommend a winner among external options. Surface tradeoffs; `/prd` picks.
## What not to do
- Don't write code. Not even illustrative snippets. The output is a brief, not a sketch.
- Don't open files yourself to skim — let the Explore agent do that. Synthesizing is your job.
- Don't fabricate. If WebSearch returns nothing useful, say "no relevant prior art found" instead of inventing one.
- Don't make product decisions. "Should we use X or Y?" → both, with tradeoffs, then "your call."