From claude-workspace
Turn a vague idea or rough problem statement into a crisp, testable concept and a per-hypothesis test plan, captured as a durable ideation.md artefact. Use before research or proposal-writing, when the concept itself is not yet decided — "ideate on this", "spiral this", "let's refine the idea", "help me figure out what to build", "I have a rough idea, not sure what it should be yet", "explore this before we spec it". Runs an iterative Frame → Diverge → Challenge → Converge loop with an objective structural-completeness gate that blocks premature convergence. Self-contained: no dependency on other loose local skills.
How this skill is triggered — by the user, by Claude, or both
Slash command
/claude-workspace:ideation-spiralThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
A bounded, phased co-development loop that turns a vague idea into a crisp, testable concept and a
A bounded, phased co-development loop that turns a vague idea into a crisp, testable concept and a
per-hypothesis test plan, captured in a durable ideation.md artefact. The loop mirrors the
ideate/decide discipline — Frame → Diverge → Challenge → Converge/Refine-loop — with the adversarial
challenge phase positioned distinctly between divergence and convergence. It is the front-of-pipeline
phase that prepares an idea for proposal-writer or research-harvester; it is NOT research and NOT
proposal-writing and NOT implementation.
Self-containment (v1): This skill internalises the Frame/Diverge/Challenge/Converge methodology in
its own text. It does NOT invoke or depend on the loose local ideate, decide, plan, or reflect
skills at runtime. A fresh plugin install can run this skill end-to-end with no loose local skills
present.
The same necessity invariant that governs every artefact this workspace produces governs the spiral's own generative process: the smallest, simplest process that fully satisfies the real need. Three rules, applied to every run:
Low cognitive load throughout: few options at a time, plain language, short turns. The process should feel like help, not homework.
Invocation triggers (these phrases invoke the spiral inline in the orchestrator's conversation):
Routing precedence — the spiral sits BEFORE the existing verbs:
research-harvester (concept already chosen — unchanged)proposal-writer (concept already crisp — unchanged)The spiral sits before "research this" and "spec it." When a user says "spec it" but the idea is visibly vague, you may offer the spiral first — but routing precedence is unchanged and the user decides. The spiral never pre-empts or overrides an explicit "research/spec it" instruction.
Initiative scoping: The spiral runs against the ACTIVE initiative and writes to its
.workspace/<active-slug>/ideation.md. It does not create or switch initiatives — those remain the
orchestrator's existing registry verbs. A user who wants a new initiative for an idea creates one first,
then spirals within it.
Before diverging, surface the real problem under the stated idea. Ask sharp, batched questions:
Confirm the framing in one line before diverging.
Generate a wide, varied set of candidate directions framed as hypotheses: "if we do X, then Y, because Z." Defer all judgment — no direction gets killed in this phase. Force range across genuinely different lenses:
Aim for quantity and spread. Group loosely as you go so the landscape is visible, but do not prune yet.
Attack the set — not to kill directions but to enforce structural completeness before converging. This is the adversarial pass; it is internal to the skill, not a dispatched agent:
This phase enforces the structural-completeness conditions that gate convergence (INV5, below). Re-loop into Phase 2 to fill any gaps surfaced here before offering convergence.
With the user's reactions, narrow the space, sharpen surviving hypotheses, and attach a cheap falsifying test to each. Then check the convergence gate:
Convergence is blocked until ALL four structural-completeness conditions hold. Evaluate them against residual uncertainty: a problem with low residual uncertainty can satisfy these conditions with a proportionately shallower pass; a genuinely open problem requires the full pass. The skill may only offer convergence — and the user's declaration of "done" may only take effect — when every condition below is satisfied:
proposal-writer could derive
objectively checkable acceptance criteria from it.If the gate is NOT met: re-loop — return to Phase 2/3 for another, tighter pass. Each loop is expected to be smaller than the last (a convergent spiral, not a divergent one).
If the gate IS met: offer convergence. The user declares "done" / "lock it in" to complete
convergence. On that declaration: state the crisp concept, the hypotheses explored (MECE-checked), the
per-hypothesis test plan, and the rejected branches. This content becomes the body of ideation.md.
A single conversation is the v1 normal. If a session is interrupted, a paused spiral resumes by
re-reading the persisted .workspace/<active-slug>/ideation.md (and the initiative journal.md) — no
dedicated multi-session state machinery is needed. Multi-session resume falls out for free from the
persisted artefact.
ideation.mdThe orchestrator persists the converged output to .workspace/<active-slug>/ideation.md. The skill
produces structured content inline; it does not self-write the file. The orchestrator is the sole writer
of ideation.md, consistent with its existing artefact-saving role.
Home: .workspace/<active-slug>/ideation.md — per-initiative, alongside proposal.md and
tasks.md. Never at the .workspace/ root, never duplicated per project.
Five minimum sections (all required):
purpose.md), matching
the house artefact convention.All artefact and memory access prescribed by this skill is by explicit path, glob, or grep — no
embeddings, vectors, similarity ranking, or semantic search.
ideation.md is the front-of-pipeline input the existing pipeline previously lacked. It precedes
and supplements the raw idea — it does not replace the raw idea; it upgrades it from vague to crisp.
Reaching convergence never auto-dispatches a downstream agent. The next step is surfaced to the user as a one-line handoff, and the user chooses. The two options, neither forced:
ideation.md into proposal-writer directly (concept is crisp enough; no research phase
needed).ideation.md into research-harvester first (to investigate open hypotheses), then into
proposal-writer. Research is optional on this seam — a routing choice, never mandatory.Portable export. ideation.md is a self-describing, portable markdown artefact. Beyond the
in-workspace seam, a user may reuse or export it into other tools or workflows outside the workspace
(e.g. paste the finalised concept and test plan into an external tracker, brief, or doc/LLM). Its
five-section structure makes it a documented, first-class input elsewhere.
The spiral does exactly one job: vague idea → crisp, testable concept + per-hypothesis test plan,
captured in ideation.md.
research-harvester answers them.proposal-writer.npx claudepluginhub matthb1/claude-workspace --plugin claude-workspaceGuides collaborative design exploration before implementation: explores context, asks clarifying questions, proposes approaches, and writes a design doc for user approval.
Creates structured, bite-sized implementation plans from specs or requirements before writing code. Useful for breaking down multi-step tasks into testable steps with file structure and task boundaries.
Synthesizes the current conversation into a structured spec (PRD) and publishes it to the project issue tracker with a ready-for-agent label, without interviewing the user.