Read an existing changes/<feature-name>/research.md and write or update changes/<feature-name>/ideas.md.
Input: The argument after /ideas should identify an existing researched change. It may be:
- A free-form feature or topic name
- A change folder name
- A short user description that clearly points to an existing researched change
Examples:
/ideas row level security
/ideas 611-row-level-security-integration
/ideas composite foreign keys in relations
Goal
Produce an ideas document that turns the existing research into a prioritized list of user-facing ideas for later proposal, design, and implementation work.
The existing research.md is the source of truth. Use it to understand the topic well, then distill only the ideas that clearly follow from it.
By "ideas", we mean user-facing goals, proposals, or features. This document is not an implementation plan.
Every listed idea must:
- Add concrete value for the end user on its own
- Be clear about why it matters in the researched topic
- Be framed from the interface or product-design perspective
- Be accessible to a human reader without relying on unexplained shorthand or jargon
- Avoid implementation details unless they are necessary for high-level understanding
If two partial ideas only make sense together, combine them into one idea instead of listing both.
Steps
Identify the target change folder
Search changes/ for the existing folder that best matches the user's input.
Prefer:
- An exact folder-name match
- A folder whose name clearly matches the described feature
- A folder that already contains
research.md
If multiple folders are plausible, stop and ask the user which one to use.
Do not guess when the match is ambiguous.
If no relevant researched change exists, tell the user that no matching changes/<feature-name>/research.md was found.
Do not create a new change folder here.
The output path is changes/<feature-name>/ideas.md.
Read the existing research thoroughly
Read the full research.md before drafting anything.
Use it to understand:
- The problem being solved
- The intended user-facing outcome
- Which capabilities appear essential vs optional
- The main user pain points or constraints
- What orchid-orm already supports and what is missing
Pay special attention to:
Purpose and goals
Requirements and edge cases
Existing support in orchid-orm
Proposed user-facing design
Valuable external context and Community ideas and pain points matter only insofar as they help clarify what ideas are justified in the research document itself.
Derive candidate ideas from the research
Extract only ideas that are clearly supported by the research.
Good ideas are:
- User-facing capabilities
- Clear product or interface proposals
- Distinct pieces of value a user could understand and want
Exclude:
- Internal implementation tasks
- Refactors
- Infrastructure work with no standalone user value
- Open questions presented in the research but not resolved enough to become an idea
- Anything that requires adding assumptions beyond the research
Do not split a single cohesive capability into multiple ideas unless each part independently adds value to users.
If an idea only matters because another idea exists, it should likely be part of that larger idea.
Prefer wording that a human can understand on first read.
If the research uses dense shorthand, rename the idea or explain it later in How.
Categorize the ideas
Use up to these three categories and in this order:
Must haves: ideas that are required for the feature to function in a meaningful way
Valuables: ideas that clearly improve the feature for users, but the main purpose is still achievable without them
Nice to have: extra convenience or narrower-scope ideas that are beneficial but not essential
Skip any category that has no supported ideas.
A lower-priority category must not contain an idea that higher-priority ideas depend on.
If that happens, reclassify the blocking idea upward or merge the ideas.
Prioritize and connect the ideas
Within each category, order ideas by:
- First: ideas that do not depend on another listed idea
- Then: ideas that depend on earlier ideas
- Throughout: higher-concept importance first
The ordering should make conceptual sense for the feature, not read like a task list.
For every idea, determine which earlier ideas it depends on.
Only list ideas that actually appear earlier in the document.
If none, say None.
Write or update ideas.md
If changes/<feature-name>/ideas.md already exists, read it now, preserve any still-supported ideas, remove unsupported or stale content, and reconcile the document with the current research.md.
If the file does not exist yet, create it.
Use this structure:
# <Feature Title>
## Must haves
### 1. <Idea title>
- Why: <Why this idea matters for the researched feature.>
- Adds: <What user-facing value or capability this idea adds.>
- How: <How the idea would work or be experienced from the user's perspective. Use a short list instead if multiple ingredients are needed to make the idea understandable.>
- Depends on: <Comma-separated earlier idea titles, or `None`.>
#### Use cases (optional)
- <Brief scenario that shows the problem and how this idea solves it.>
<Optional minimal code example if it genuinely helps.>
## Valuables
### 2. <Idea title>
- Why: <Why this idea matters for the researched feature.>
- Adds: <What user-facing value or capability this idea adds.>
- How: <How the idea would work or be experienced from the user's perspective. Use a short list instead if multiple ingredients are needed to make the idea understandable.>
- Depends on: <Comma-separated earlier idea titles, or `None`.>
**Use cases**: (one or more, optional)
- <Brief scenario that shows the problem and how this idea solves it.>
<Optional minimal code example if it genuinely helps.>
## Nice to have
### 3. <Idea title>
- Why: <Why this idea matters for the researched feature.>
- Adds: <What user-facing value or capability this idea adds.>
- How: <How the idea would work or be experienced from the user's perspective. Use a short list instead if multiple ingredients are needed to make the idea understandable.>
- Depends on: <Comma-separated earlier idea titles, or `None`.>
#### Use cases (optional)
- <Brief scenario that shows the problem and how this idea solves it.>
<Optional minimal code example if it genuinely helps.>
Document guidance:
- Use the research title for
# <Feature Title> when it is clear
- Keep every field concise and specific
Why should explain importance in the context of this researched topic
Adds should explain the concrete user-facing value
How should make the idea easier for a human to picture, especially when the title or Adds could still feel abstract
- Keep
How at a user-facing level; mention workflow or API shape only when it genuinely clarifies the idea
- If
How needs multiple ingredients, use a short list instead of cramming them into one sentence
Depends on should name earlier ideas exactly as written, or None
- Add
Use cases when they make the idea clearer
- Every use case should briefly show the situation, state how the idea solves it, and may include a minimal code example
- If there are multiple distinct use cases, list all of them
- If there is only one useful use case, include just one
- If the idea is simple and already self-explanatory, skip
Use cases instead of adding filler
- Do not add category intros unless they are genuinely useful
- Do not include implementation steps, acceptance criteria, or internal architecture
Quality check
Before finishing, verify:
- The file was written to the correct
changes/<feature-name>/ideas.md path
- The chosen change folder is the best match for the user's input
- Every listed idea is clearly supported by
research.md
- No idea depends on unstated assumptions outside the research
- Each idea adds standalone user value
- Categories are correct and empty ones were skipped
- Ordering reflects conceptual priority and dependency
Depends on only references earlier ideas that the current idea truly relies on
How makes ambiguous ideas more understandable without turning them into implementation plans
Use cases are present when they add clarity, and omitted when they would just repeat the idea
- The document stays at the user-facing or interface-design level
- Implementation detail appears only when necessary for high-level understanding
- Idea titles are
### headings prefixed with numbers, and numbering continues across categories without restarting
Guardrails
- Do not do new research for this command
- Do not inspect orchid-orm code or docs to invent additional ideas
- Do not create a new change folder
- Do not treat unresolved questions as settled ideas
- Do not add ideas just because they sound useful
- Do not split ideas too finely
- Do not turn this into a proposal, design doc, or implementation plan
- Ask a focused clarifying question if the target folder is ambiguous
- If the research does not justify any concrete user-facing ideas, say so instead of inventing filler
1---2name: ideas3description: Use when the user prompts "write ideas" or "make ideas".4---56Read an existing `changes/<feature-name>/research.md` and write or update `changes/<feature-name>/ideas.md`.78**Input**: The argument after `/ideas` should identify an existing researched change. It may be:910- A free-form feature or topic name11- A change folder name12- A short user description that clearly points to an existing researched change1314Examples:1516- `/ideas row level security`17- `/ideas 611-row-level-security-integration`18- `/ideas composite foreign keys in relations`1920**Goal**2122Produce an ideas document that turns the existing research into a prioritized list of user-facing ideas for later proposal, design, and implementation work.2324The existing `research.md` is the source of truth. Use it to understand the topic well, then distill only the ideas that clearly follow from it.2526By "ideas", we mean user-facing goals, proposals, or features. This document is not an implementation plan.2728Every listed idea must:2930- Add concrete value for the end user on its own31- Be clear about why it matters in the researched topic32- Be framed from the interface or product-design perspective33- Be accessible to a human reader without relying on unexplained shorthand or jargon34- Avoid implementation details unless they are necessary for high-level understanding3536If two partial ideas only make sense together, combine them into one idea instead of listing both.3738**Steps**39401. **Identify the target change folder**4142 Search `changes/` for the existing folder that best matches the user's input.4344 Prefer:45 - An exact folder-name match46 - A folder whose name clearly matches the described feature47 - A folder that already contains `research.md`4849 If multiple folders are plausible, stop and ask the user which one to use.50 Do not guess when the match is ambiguous.5152 If no relevant researched change exists, tell the user that no matching `changes/<feature-name>/research.md` was found.53 Do not create a new change folder here.5455 The output path is `changes/<feature-name>/ideas.md`.56572. **Read the existing research thoroughly**5859 Read the full `research.md` before drafting anything.6061 Use it to understand:62 - The problem being solved63 - The intended user-facing outcome64 - Which capabilities appear essential vs optional65 - The main user pain points or constraints66 - What orchid-orm already supports and what is missing6768 Pay special attention to:69 - `Purpose and goals`70 - `Requirements and edge cases`71 - `Existing support in orchid-orm`72 - `Proposed user-facing design`7374 `Valuable external context` and `Community ideas and pain points` matter only insofar as they help clarify what ideas are justified in the research document itself.75763. **Derive candidate ideas from the research**7778 Extract only ideas that are clearly supported by the research.7980 Good ideas are:81 - User-facing capabilities82 - Clear product or interface proposals83 - Distinct pieces of value a user could understand and want8485 Exclude:86 - Internal implementation tasks87 - Refactors88 - Infrastructure work with no standalone user value89 - Open questions presented in the research but not resolved enough to become an idea90 - Anything that requires adding assumptions beyond the research9192 Do not split a single cohesive capability into multiple ideas unless each part independently adds value to users.93 If an idea only matters because another idea exists, it should likely be part of that larger idea.94 Prefer wording that a human can understand on first read.95 If the research uses dense shorthand, rename the idea or explain it later in `How`.96974. **Categorize the ideas**9899 Use up to these three categories and in this order:100 - `Must haves`: ideas that are required for the feature to function in a meaningful way101 - `Valuables`: ideas that clearly improve the feature for users, but the main purpose is still achievable without them102 - `Nice to have`: extra convenience or narrower-scope ideas that are beneficial but not essential103104 Skip any category that has no supported ideas.105106 A lower-priority category must not contain an idea that higher-priority ideas depend on.107 If that happens, reclassify the blocking idea upward or merge the ideas.1081095. **Prioritize and connect the ideas**110111 Within each category, order ideas by:112 - First: ideas that do not depend on another listed idea113 - Then: ideas that depend on earlier ideas114 - Throughout: higher-concept importance first115116 The ordering should make conceptual sense for the feature, not read like a task list.117118 For every idea, determine which earlier ideas it depends on.119 Only list ideas that actually appear earlier in the document.120 If none, say `None`.1211226. **Write or update `ideas.md`**123124 If `changes/<feature-name>/ideas.md` already exists, read it now, preserve any still-supported ideas, remove unsupported or stale content, and reconcile the document with the current `research.md`.125126 If the file does not exist yet, create it.127128 Use this structure:129130 ```md131 # <Feature Title>132133 ## Must haves134135 ### 1. <Idea title>136137 - Why: <Why this idea matters for the researched feature.>138 - Adds: <What user-facing value or capability this idea adds.>139 - How: <How the idea would work or be experienced from the user's perspective. Use a short list instead if multiple ingredients are needed to make the idea understandable.>140 - Depends on: <Comma-separated earlier idea titles, or `None`.>141142 #### Use cases (optional)143144 - <Brief scenario that shows the problem and how this idea solves it.>145 <Optional minimal code example if it genuinely helps.>146147 ## Valuables148149 ### 2. <Idea title>150151 - Why: <Why this idea matters for the researched feature.>152 - Adds: <What user-facing value or capability this idea adds.>153 - How: <How the idea would work or be experienced from the user's perspective. Use a short list instead if multiple ingredients are needed to make the idea understandable.>154 - Depends on: <Comma-separated earlier idea titles, or `None`.>155156 **Use cases**: (one or more, optional)157158 - <Brief scenario that shows the problem and how this idea solves it.>159 <Optional minimal code example if it genuinely helps.>160161 ## Nice to have162163 ### 3. <Idea title>164165 - Why: <Why this idea matters for the researched feature.>166 - Adds: <What user-facing value or capability this idea adds.>167 - How: <How the idea would work or be experienced from the user's perspective. Use a short list instead if multiple ingredients are needed to make the idea understandable.>168 - Depends on: <Comma-separated earlier idea titles, or `None`.>169170 #### Use cases (optional)171172 - <Brief scenario that shows the problem and how this idea solves it.>173 <Optional minimal code example if it genuinely helps.>174 ```175176 Document guidance:177 - Use the research title for `# <Feature Title>` when it is clear178 - Keep every field concise and specific179 - `Why` should explain importance in the context of this researched topic180 - `Adds` should explain the concrete user-facing value181 - `How` should make the idea easier for a human to picture, especially when the title or `Adds` could still feel abstract182 - Keep `How` at a user-facing level; mention workflow or API shape only when it genuinely clarifies the idea183 - If `How` needs multiple ingredients, use a short list instead of cramming them into one sentence184 - `Depends on` should name earlier ideas exactly as written, or `None`185 - Add `Use cases` when they make the idea clearer186 - Every use case should briefly show the situation, state how the idea solves it, and may include a minimal code example187 - If there are multiple distinct use cases, list all of them188 - If there is only one useful use case, include just one189 - If the idea is simple and already self-explanatory, skip `Use cases` instead of adding filler190 - Do not add category intros unless they are genuinely useful191 - Do not include implementation steps, acceptance criteria, or internal architecture1921937. **Quality check**194195 Before finishing, verify:196 - The file was written to the correct `changes/<feature-name>/ideas.md` path197 - The chosen change folder is the best match for the user's input198 - Every listed idea is clearly supported by `research.md`199 - No idea depends on unstated assumptions outside the research200 - Each idea adds standalone user value201 - Categories are correct and empty ones were skipped202 - Ordering reflects conceptual priority and dependency203 - `Depends on` only references earlier ideas that the current idea truly relies on204 - `How` makes ambiguous ideas more understandable without turning them into implementation plans205 - `Use cases` are present when they add clarity, and omitted when they would just repeat the idea206 - The document stays at the user-facing or interface-design level207 - Implementation detail appears only when necessary for high-level understanding208 - Idea titles are `###` headings prefixed with numbers, and numbering continues across categories without restarting209210**Guardrails**211212- Do not do new research for this command213- Do not inspect orchid-orm code or docs to invent additional ideas214- Do not create a new change folder215- Do not treat unresolved questions as settled ideas216- Do not add ideas just because they sound useful217- Do not split ideas too finely218- Do not turn this into a proposal, design doc, or implementation plan219- Ask a focused clarifying question if the target folder is ambiguous220- If the research does not justify any concrete user-facing ideas, say so instead of inventing filler