agentleFS
shyamsridhar123shyamsridhar123/kevin-copilot/.github/skills/ce-brainstorm/SKILL.md

ce-brainstorm

Skill7 starsChanged 3 months agoMITView on GitHub

Explore requirements and approaches through collaborative dialogue before writing a right-sized requirements document and planning implementation. Use for feature ideas, problem framing, when the user says ''let''s brainstorm'', or when they want to think through options before deciding what to build. Also use when a user describes a vague or ambitious feature request, asks ''what should we build'', ''help me think through X'', presents a problem with multiple valid solutions, or seems unsure about scope or direction — even if they don''t explicitly ask to brainstorm.

  • Sends data out

7 other projects use a version of this, 1 of them edited.

Adopted by

Most recently taken up by

Used with

Projects with it also use ce-help, ce-babysit-pr and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • kieranklaassenSkill

    ce-help

    Help and orientation for Compound Engineering: place the user's work on the compounding loop and recommend the next command, without running it. Use when the user invokes ce-help to ask which skill fits, what comes next, how setup, configuration, cost, or upgrades work, or why a skill misbehaved.

    Also in 4 projects that use this

  • kieranklaassenSkill

    ce-babysit-pr

    Babysits an open GitHub PR until merge-ready, first judging whether an old PR still belongs. Use when asked to watch a PR over time or update an old one — not for one-shot comment resolution or one CI failure. GitHub (incl. Enterprise) only.

    Also in 4 projects that use this

  • +10 more from kieranklaassen

The file

Show its rules and text

We split this skill into the rules it gives an agent

61 rules. 0 are common, 47 are distinctive, and 14 are very specific to this project.

  • 0

    Common

    Most of the 7 edited versions we read keep these.

  • 47

    Distinctive

    This author's own choices. Worth a look.

  • 14

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Note: The current year is 2026: Use this when dating requirements documents.

    line 9
  2. Distinctive:

    Keep implementation out of the requirements doc by default: - Do not include libraries, schemas, endpoints, file layouts, or code-level …

    line 24
  3. Distinctive:

    Apply YAGNI to carrying cost, not coding effort: - Prefer the simplest approach that delivers meaningful value.

    line 26
  4. Distinctive:

    Ask one question at a time: - Do not batch several unrelated questions into one message.

    line 30
  5. Distinctive:

    Prefer single-select multiple choice: - Use single-select when choosing one direction, one priority, or one next step.

    line 31
  6. Distinctive:

    Use multi-select rarely and intentionally: - Use it only for compatible sets such as goals, constraints, non-goals, or success criteria …

    line 32
  7. Distinctive:

    Keep outputs concise: - Prefer short sections, brief bullets, and only enough detail to support the next decision.

    line 37
  8. Very specific:

    Use repo-relative paths: - When referencing files, use paths relative to the repo root (e.g., src/models/user.rb), never absolute paths.

    line 38
  9. Distinctive:

    Do not proceed until you have a feature description from the user.

    line 46
  10. Very specific:

    If the user references an existing brainstorm topic or document, or there is an obvious recent matching *-requirements.md file in …

    line 54
  11. Distinctive:

    If resuming, summarize the current state briefly, continue from its existing decisions and outstanding questions, and update the existing …

    line 57
  12. Distinctive:

    Keep the interaction brief.

    line 68
  13. Distinctive:

    Use the feature description plus a light repo scan to classify the work:

    line 72
  14. Distinctive:

    If the scope is unclear, ask one targeted question to disambiguate and then proceed.

    line 77
  15. Distinctive:

    If nothing obvious appears after a short scan, say so and continue.

    line 93
  16. Distinctive:

    Before generating approaches, challenge the request to catch misframing.

    line 101
  17. Distinctive:

    Use the result to sharpen the conversation, not to bulldoze the user's intent

    line 115
  18. Distinctive:

    Use the platform's blocking question tool when available (see Interaction Rules).

    line 123
  19. Distinctive:

    Ask questions one at a time

    line 126
  20. Distinctive:

    Prefer multiple choice when natural options exist

    line 127
  21. Distinctive:

    Prefer single-select when choosing one direction, one priority, or one next step

    line 128
  22. Distinctive:

    Use multi-select only for compatible sets that can all coexist.

    line 129
  23. Distinctive:

    Start broad (problem, users, value) then narrow (constraints, exclusions, edge cases)

    line 130
  24. Distinctive:

    If multiple plausible directions remain, propose 2-3 concrete approaches based on research and conversation.

    line 141
  25. Distinctive:

    When useful, include one deliberately higher-upside alternative:

    line 143
  26. Distinctive:

    When it's best suited

    line 150
  27. Distinctive:

    If one approach is clearly best and alternatives are not meaningful, skip the menu and state the recommendation directly.

    line 154
  28. Distinctive:

    If relevant, call out whether the choice is:

    line 156
  29. Distinctive:

    Write or update a requirements document only when the conversation produced durable decisions worth preserving.

    line 163
  30. Distinctive:

    Document structure: Use this template and omit clearly inapplicable optional sections:

    line 182
  31. Distinctive:

    Keep diagrams proportionate to the content.

    line 251
  32. Distinctive:

    Place inline at the point of relevance, not in a separate section.

    line 252
  33. Distinctive:

    After generating a visual aid, verify it accurately represents the prose requirements — correct sequence, no missing branches, no merged …

    line 256
  34. Distinctive:

    When the work is simple, combine sections rather than padding them.

    line 266
  35. Distinctive:

    Do any requirements depend on something claimed to be out of scope?

    line 270
  36. Distinctive:

    Do any requirements claim that infrastructure is absent without that claim having been verified against the codebase?

    line 273
  37. Distinctive:

    If planning would need to invent product behavior, scope boundaries, or success criteria, the brainstorm is not complete yet.

    line 277
  38. Very specific:

    Ensure docs/brainstorms/ directory exists before writing.

    line 279
  39. Distinctive:

    If a document contains outstanding questions:

    line 281
  40. Very specific:

    Use Resolve Before Planning only for questions that truly block planning

    line 282
  41. Very specific:

    If Resolve Before Planning is non-empty, keep working those questions during the brainstorm by default

    line 283
  42. Very specific:

    If the user explicitly wants to proceed anyway, convert each remaining item into an explicit decision, assumption, or Deferred to Planning …

    line 284
  43. Distinctive:

    Do not force resolution of technical questions during brainstorming just to remove uncertainty

    line 285
  44. Very specific:

    Put technical questions, or questions that require validation or research, under Deferred to Planning when they are better answered there

    line 286
  45. Very specific:

    Use tags like [Needs research] when the planner should likely investigate the question rather than answer it from repo context alone

    line 287
  46. Very specific:

    When a requirements document was created or updated, run the document-review skill on it before presenting handoff options.

    line 292
  47. Distinctive:

    If document-review returns findings that were auto-applied, note them briefly when presenting handoff options.

    line 294
  48. Distinctive:

    When document-review returns "Review complete", proceed to Phase 4.

    line 296
  49. Very specific:

    If Resolve Before Planning contains any items:

    line 304
  50. Distinctive:

    Ask the blocking questions now, one at a time, by default

    line 305
  51. Very specific:

    If the user explicitly wants to proceed anyway, first convert each remaining item into an explicit decision, assumption, or Deferred to …

    line 306
  52. Distinctive:

    If the user chooses to pause instead, present the handoff as paused or blocked rather than complete

    line 307
  53. Very specific:

    Do not offer Proceed to planning or Proceed directly to work while Resolve Before Planning remains non-empty

    line 308
  54. Very specific:

    Proceed to planning (Recommended): - Run /ce-plan for structured implementation planning

    line 315
  55. Distinctive:

    Proceed directly to work: - Only offer this when scope is lightweight, success criteria are clear, scope boundaries are clear, and no …

    line 316
  56. Distinctive:

    If the direct-to-work gate is not satisfied, omit that option entirely.

    line 322
  57. Distinctive:

    If the curl fails, skip silently.

    line 345
  58. Distinctive:

    When document-review returns "Review complete", return to the normal Phase 4 options and present only the options that still apply.

    line 352
  59. Distinctive:

    Use the closing summary only when this run of the workflow is ending or handing off, not when returning to the Phase 4 options.

    line 356
  60. Distinctive:

    When complete and ready for planning, display:

    line 358
  61. Very specific:

    If the user pauses with Resolve Before Planning still populated, display:

    line 372

“Common” is measured: kept by at least 6 in 10 of the 7 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Brainstorm a Feature or Improvement

Note: The current year is 2026. Use this when dating requirements documents.

Brainstorming helps answer WHAT to build through collaborative dialogue. It precedes /ce-plan, which answers HOW to build it.

The durable output of this workflow is a requirements document. In other workflows this might be called a lightweight PRD or feature brief. In compound engineering, keep the workflow name brainstorm, but make the written artifact strong enough that planning does not need to invent product behavior, scope boundaries, or success criteria.

This skill does not implement code. It explores, clarifies, and documents decisions for later planning or execution.

IMPORTANT: All file references in generated documents must use repo-relative paths (e.g., src/models/user.rb), never absolute paths. Absolute paths break portability across machines, worktrees, and teammates.

Core Principles

  1. Assess scope first - Match the amount of ceremony to the size and ambiguity of the work.
  2. Be a thinking partner - Suggest alternatives, challenge assumptions, and explore what-ifs instead of only extracting requirements.
  3. Resolve product decisions here - User-facing behavior, scope boundaries, and success criteria belong in this workflow. Detailed implementation belongs in planning.
  4. Keep implementation out of the requirements doc by default - Do not include libraries, schemas, endpoints, file layouts, or code-level design unless the brainstorm itself is inherently about a technical or architectural change.
  5. Right-size the artifact - Simple work gets a compact requirements document or brief alignment. Larger work gets a fuller document. Do not add ceremony that does not help planning.
  6. Apply YAGNI to carrying cost, not coding effort - Prefer the simplest approach that delivers meaningful value. Avoid speculative complexity and hypothetical future-proofing, but low-cost polish or delight is worth including when its ongoing cost is small and easy to maintain.

Interaction Rules

  1. Ask one question at a time - Do not batch several unrelated questions into one message.
  2. Prefer single-select multiple choice - Use single-select when choosing one direction, one priority, or one next step.
  3. Use multi-select rarely and intentionally - Use it only for compatible sets such as goals, constraints, non-goals, or success criteria that can all coexist. If prioritization matters, follow up by asking which selected item is primary.
  4. Use the platform's question tool when available - When asking the user a question, prefer the platform's blocking question tool if one exists (AskUserQuestion in Claude Code, request_user_input in Codex, ask_user in Gemini). Otherwise, present numbered options in chat and wait for the user's reply before proceeding.

Output Guidance

  • Keep outputs concise - Prefer short sections, brief bullets, and only enough detail to support the next decision.
  • Use repo-relative paths - When referencing files, use paths relative to the repo root (e.g., src/models/user.rb), never absolute paths. Absolute paths make documents non-portable across machines and teammates.

Feature Description

<feature_description> #$ARGUMENTS </feature_description>

If the feature description above is empty, ask the user: "What would you like to explore? Please describe the feature, problem, or improvement you're thinking about."

Do not proceed until you have a feature description from the user.

Execution Flow

Phase 0: Resume, Assess, and Route

0.1 Resume Existing Work When Appropriate

If the user references an existing brainstorm topic or document, or there is an obvious recent matching *-requirements.md file in docs/brainstorms/:

  • Read the document
  • Confirm with the user before resuming: "Found an existing requirements doc for [topic]. Should I continue from this, or start fresh?"
  • If resuming, summarize the current state briefly, continue from its existing decisions and outstanding questions, and update the existing document instead of creating a duplicate

0.2 Assess Whether Brainstorming Is Needed

Clear requirements indicators:

  • Specific acceptance criteria provided
  • Referenced existing patterns to follow
  • Described exact expected behavior
  • Constrained, well-defined scope

If requirements are already clear: Keep the interaction brief. Confirm understanding and present concise next-step options rather than forcing a long brainstorm. Only write a short requirements document when a durable handoff to planning or later review would be valuable. Skip Phase 1.1 and 1.2 entirely — go straight to Phase 1.3 or Phase 3.

0.3 Assess Scope

Use the feature description plus a light repo scan to classify the work:

  • Lightweight - small, well-bounded, low ambiguity
  • Standard - normal feature or bounded refactor with some decisions to make
  • Deep - cross-cutting, strategic, or highly ambiguous

If the scope is unclear, ask one targeted question to disambiguate and then proceed.

Phase 1: Understand the Idea

1.1 Existing Context Scan

Scan the repo before substantive brainstorming. Match depth to scope:

Lightweight — Search for the topic, check if something similar already exists, and move on.

Standard and Deep — Two passes:

Constraint Check — Check project instruction files (AGENTS.md, and CLAUDE.md only if retained as compatibility context) for workflow, product, or scope constraints that affect the brainstorm. If these add nothing, move on.

Topic Scan — Search for relevant terms. Read the most relevant existing artifact if one exists (brainstorm, plan, spec, skill, feature doc). Skim adjacent examples covering similar behavior.

If nothing obvious appears after a short scan, say so and continue. Two rules govern technical depth during the scan:

  1. Verify before claiming — When the brainstorm touches checkable infrastructure (database tables, routes, config files, dependencies, model definitions), read the relevant source files to confirm what actually exists. Any claim that something is absent — a missing table, an endpoint that doesn't exist, a dependency not in the Gemfile, a config option with no current support — must be verified against the codebase first; if not verified, label it as an unverified assumption. This applies to every brainstorm regardless of topic.
  2. Defer design decisions to planning — Implementation details like schemas, migration strategies, endpoint structure, or deployment topology belong in planning, not here — unless the brainstorm is itself about a technical or architectural decision, in which case those details are the subject of the brainstorm and should be explored.

1.2 Product Pressure Test

Before generating approaches, challenge the request to catch misframing. Match depth to scope:

Lightweight:

  • Is this solving the real user problem?
  • Are we duplicating something that already covers this?
  • Is there a clearly better framing with near-zero extra cost?

Standard:

  • Is this the right problem, or a proxy for a more important one?
  • What user or business outcome actually matters here?
  • What happens if we do nothing?
  • Is there a nearby framing that creates more user value without more carrying cost? If so, what complexity does it add?
  • Given the current project state, user goal, and constraints, what is the single highest-leverage move right now: the request as framed, a reframing, one adjacent addition, a simplification, or doing nothing?
  • Favor moves that compound value, reduce future carrying cost, or make the product meaningfully more useful or compelling
  • Use the result to sharpen the conversation, not to bulldoze the user's intent

Deep — Standard questions plus:

  • What durable capability should this create in 6-12 months?
  • Does this move the product toward that, or is it only a local patch?

1.3 Collaborative Dialogue

Use the platform's blocking question tool when available (see Interaction Rules). Otherwise, present numbered options in chat and wait for the user's reply before proceeding.

Guidelines:

  • Ask questions one at a time
  • Prefer multiple choice when natural options exist
  • Prefer single-select when choosing one direction, one priority, or one next step
  • Use multi-select only for compatible sets that can all coexist; if prioritization matters, ask which selected item is primary
  • Start broad (problem, users, value) then narrow (constraints, exclusions, edge cases)
  • Clarify the problem frame, validate assumptions, and ask about success criteria
  • Make requirements concrete enough that planning will not need to invent behavior
  • Surface dependencies or prerequisites only when they materially affect scope
  • Resolve product decisions here; leave technical implementation choices for planning
  • Bring ideas, alternatives, and challenges instead of only interviewing

Exit condition: Continue until the idea is clear OR the user explicitly wants to proceed.

Phase 2: Explore Approaches

If multiple plausible directions remain, propose 2-3 concrete approaches based on research and conversation. Otherwise state the recommended direction directly.

When useful, include one deliberately higher-upside alternative:

  • Identify what adjacent addition or reframing would most increase usefulness, compounding value, or durability without disproportionate carrying cost. Present it as a challenger option alongside the baseline, not as the default. Omit it when the work is already obviously over-scoped or the baseline request is clearly the right move.

For each approach, provide:

  • Brief description (2-3 sentences)
  • Pros and cons
  • Key risks or unknowns
  • When it's best suited

Lead with your recommendation and explain why. Prefer simpler solutions when added complexity creates real carrying cost, but do not reject low-cost, high-value polish just because it is not strictly necessary.

If one approach is clearly best and alternatives are not meaningful, skip the menu and state the recommendation directly.

If relevant, call out whether the choice is:

  • Reuse an existing pattern
  • Extend an existing capability
  • Build something net new

Phase 3: Capture the Requirements

Write or update a requirements document only when the conversation produced durable decisions worth preserving.

This document should behave like a lightweight PRD without PRD ceremony. Include what planning needs to execute well, and skip sections that add no value for the scope.

The requirements document is for product definition and scope control. Do not include implementation details such as libraries, schemas, endpoints, file layouts, or code structure unless the brainstorm is inherently technical and those details are themselves the subject of the decision.

Required content for non-trivial work:

  • Problem frame
  • Concrete requirements or intended behavior with stable IDs
  • Scope boundaries
  • Success criteria

Include when materially useful:

  • Key decisions and rationale
  • Dependencies or assumptions
  • Outstanding questions
  • Alternatives considered
  • High-level technical direction only when the work is inherently technical and the direction is part of the product/architecture decision

Document structure: Use this template and omit clearly inapplicable optional sections:

---
date: YYYY-MM-DD
topic: <kebab-case-topic>
---

# <Topic Title>

## Problem Frame
[Who is affected, what is changing, and why it matters]

## Requirements

**[Group Header]**
- R1. [Concrete requirement in this group]
- R2. [Concrete requirement in this group]

**[Group Header]**
- R3. [Concrete requirement in this group]

## Success Criteria
- [How we will know this solved the right problem]

## Scope Boundaries
- [Deliberate non-goal or exclusion]

## Key Decisions
- [Decision]: [Rationale]

## Dependencies / Assumptions
- [Only include if material]

## Outstanding Questions

### Resolve Before Planning
- [Affects R1][User decision] [Question that must be answered before planning can proceed]

### Deferred to Planning
- [Affects R2][Technical] [Question that should be answered during planning or codebase exploration]
- [Affects R2][Needs research] [Question that likely requires research during planning]

## Next Steps
[If `Resolve Before Planning` is empty: `→ /ce-plan` for structured implementation planning]
[If `Resolve Before Planning` is not empty: `→ Resume /ce-brainstorm` to resolve blocking questions before planning]

Visual communication — Include a visual aid when the requirements would be significantly easier to understand with one. Visual aids are conditional on content patterns, not on depth classification — a Lightweight brainstorm about a complex workflow may warrant a diagram; a Deep brainstorm about a straightforward feature may not.

When to include:

Requirements describe...Visual aidPlacement
A multi-step user workflow or processMermaid flow diagram or ASCII flow with annotationsAfter Problem Frame, or under its own ## User Flow heading for substantial flows (>10 nodes)
3+ behavioral modes, variants, or statesMarkdown comparison tableWithin the Requirements section
3+ interacting participants (user roles, system components, external services)Mermaid or ASCII relationship diagramAfter Problem Frame, or under its own ## Architecture heading
Multiple competing approaches being comparedComparison tableWithin Phase 2 approach exploration

When to skip:

  • Prose already communicates the concept clearly
  • The diagram would just restate the requirements in visual form without adding comprehension value
  • The visual describes implementation architecture, data schemas, state machines, or code structure (that belongs in ce-plan)
  • The brainstorm is simple and linear with no multi-step flows, mode comparisons, or multi-participant interactions

Format selection:

  • Mermaid (default) for simple flows — 5-15 nodes, no in-box annotations, standard flowchart shapes. Use TB (top-to-bottom) direction so diagrams stay narrow in both rendered and source form. Source should be readable as fallback in diff views and terminals.
  • ASCII/box-drawing diagrams for annotated flows that need rich in-box content — CLI commands at each step, decision logic branches, file path layouts, multi-column spatial arrangements. More expressive than mermaid when the diagram's value comes from annotations within steps. Follow 80-column max for code blocks, use vertical stacking.
  • Markdown tables for mode/variant comparisons and approach comparisons.
  • Keep diagrams proportionate to the content. A simple 5-step workflow gets 5-10 nodes. A complex workflow with decision branches and annotations at each step may need 15-20 nodes — that is fine if every node earns its place.
  • Place inline at the point of relevance, not in a separate section.
  • Conceptual level only — user flows, information flows, mode comparisons, component responsibilities. Not implementation architecture, data schemas, or code structure.
  • Prose is authoritative: when a visual aid and surrounding prose disagree, the prose governs.

After generating a visual aid, verify it accurately represents the prose requirements — correct sequence, no missing branches, no merged steps. Diagrams without code to validate against carry higher inaccuracy risk than code-backed diagrams.

For Standard and Deep brainstorms, a requirements document is usually warranted.

For Lightweight brainstorms, keep the document compact. Skip document creation when the user only needs brief alignment and no durable decisions need to be preserved.

For very small requirements docs with only 1-3 simple requirements, plain bullet requirements are acceptable. For Standard and Deep requirements docs, use stable IDs like R1, R2, R3 so planning and later review can refer to them unambiguously.

When requirements span multiple distinct concerns, group them under bold topic headers within the Requirements section. The trigger for grouping is distinct logical areas, not item count — even four requirements benefit from headers if they cover three different topics. Group by logical theme (e.g., "Packaging", "Migration and Compatibility", "Contributor Workflow"), not by the order they were discussed. Requirements keep their original stable IDs — numbering does not restart per group. A requirement belongs to whichever group it fits best; do not duplicate it across groups. Skip grouping only when all requirements are about the same thing.

When the work is simple, combine sections rather than padding them. A short requirements document is better than a bloated one.

Before finalizing, check:

  • What would ce-plan still have to invent if this brainstorm ended now?
  • Do any requirements depend on something claimed to be out of scope?
  • Are any unresolved items actually product decisions rather than planning questions?
  • Did implementation details leak in when they shouldn't have?
  • Do any requirements claim that infrastructure is absent without that claim having been verified against the codebase? If so, verify now or label as an unverified assumption.
  • Is there a low-cost change that would make this materially more useful?
  • Would a visual aid (flow diagram, comparison table, relationship diagram) help a reader grasp the requirements faster than prose alone?

If planning would need to invent product behavior, scope boundaries, or success criteria, the brainstorm is not complete yet.

Ensure docs/brainstorms/ directory exists before writing.

If a document contains outstanding questions:

  • Use Resolve Before Planning only for questions that truly block planning
  • If Resolve Before Planning is non-empty, keep working those questions during the brainstorm by default
  • If the user explicitly wants to proceed anyway, convert each remaining item into an explicit decision, assumption, or Deferred to Planning question before proceeding
  • Do not force resolution of technical questions during brainstorming just to remove uncertainty
  • Put technical questions, or questions that require validation or research, under Deferred to Planning when they are better answered there
  • Use tags like [Needs research] when the planner should likely investigate the question rather than answer it from repo context alone
  • Carry deferred questions forward explicitly rather than treating them as a failure to finish the requirements doc

Phase 3.5: Document Review

When a requirements document was created or updated, run the document-review skill on it before presenting handoff options. Pass the document path as the argument.

If document-review returns findings that were auto-applied, note them briefly when presenting handoff options. If residual P0/P1 findings were surfaced, mention them so the user can decide whether to address them before proceeding.

When document-review returns "Review complete", proceed to Phase 4.

Phase 4: Handoff

4.1 Present Next-Step Options

Present next steps using the platform's blocking question tool when available (see Interaction Rules). Otherwise present numbered options in chat and end the turn.

If Resolve Before Planning contains any items:

  • Ask the blocking questions now, one at a time, by default
  • If the user explicitly wants to proceed anyway, first convert each remaining item into an explicit decision, assumption, or Deferred to Planning question
  • If the user chooses to pause instead, present the handoff as paused or blocked rather than complete
  • Do not offer Proceed to planning or Proceed directly to work while Resolve Before Planning remains non-empty

Question when no blocking questions remain: "Brainstorm complete. What would you like to do next?"

Question when blocking questions remain and user wants to pause: "Brainstorm paused. Planning is blocked until the remaining questions are resolved. What would you like to do next?"

Present only the options that apply:

  • Proceed to planning (Recommended) - Run /ce-plan for structured implementation planning
  • Proceed directly to work - Only offer this when scope is lightweight, success criteria are clear, scope boundaries are clear, and no meaningful technical or research questions remain
  • Run additional document review - Offer this only when a requirements document exists. Runs another pass for further refinement
  • Ask more questions - Continue clarifying scope, preferences, or edge cases
  • Share to Proof - Offer this only when a requirements document exists
  • Done for now - Return later

If the direct-to-work gate is not satisfied, omit that option entirely.

4.2 Handle the Selected Option

If user selects "Proceed to planning (Recommended)": Immediately run /ce-plan in the current session. Pass the requirements document path when one exists; otherwise pass a concise summary of the finalized brainstorm decisions. Do not print the closing summary first.

If user selects "Proceed directly to work": Immediately run /ce-work in the current session using the finalized brainstorm output as context. If a compact requirements document exists, pass its path. Do not print the closing summary first.

If user selects "Share to Proof":

CONTENT=$(cat docs/brainstorms/YYYY-MM-DD-<topic>-requirements.md)
TITLE="Requirements: <topic title>"
RESPONSE=$(curl -s -X POST https://www.proofeditor.ai/share/markdown \
  -H "Content-Type: application/json" \
  -d "$(jq -n --arg title "$TITLE" --arg markdown "$CONTENT" --arg by "ai:compound" '{title: $title, markdown: $markdown, by: $by}')")
PROOF_URL=$(echo "$RESPONSE" | jq -r '.tokenUrl')

Display the URL prominently: View & collaborate in Proof: <PROOF_URL>

If the curl fails, skip silently. Then return to the Phase 4 options.

If user selects "Ask more questions": Return to Phase 1.3 (Collaborative Dialogue) and continue asking the user questions one at a time to further refine the design. Probe deeper into edge cases, constraints, preferences, or areas not yet explored. Continue until the user is satisfied, then return to Phase 4. Do not show the closing summary yet.

If user selects "Run additional document review": Load the document-review skill and apply it to the requirements document for another pass.

When document-review returns "Review complete", return to the normal Phase 4 options and present only the options that still apply. Do not show the closing summary yet.

4.3 Closing Summary

Use the closing summary only when this run of the workflow is ending or handing off, not when returning to the Phase 4 options.

When complete and ready for planning, display:

Brainstorm complete!

Requirements doc: docs/brainstorms/YYYY-MM-DD-<topic>-requirements.md  # if one was created

Key decisions:
- [Decision 1]
- [Decision 2]

Recommended next step: `/ce-plan`

If the user pauses with Resolve Before Planning still populated, display:

Brainstorm paused.

Requirements doc: docs/brainstorms/YYYY-MM-DD-<topic>-requirements.md  # if one was created

Planning is blocked by:
- [Blocking question 1]
- [Blocking question 2]

Resume with `/ce-brainstorm` when ready to resolve these before planning.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.