with one click
variants
Use when the user prompts "make variants".
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Use when the user prompts "make variants".
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Use when the user prompts "code doc" to create or update internal Orchid ORM code documentation from changes/ specs, short-code feature folders, or existing implementation code.
Use when the user prompts "implementation note" for an existing change idea.
Use when the user prompts "write spec" or "make spec".
Use when the user prompts "do task".
Use when the user prompts "changeset".
Use when the user prompts "write ideas" or "make ideas".
| name | variants |
| description | Use when the user prompts "make variants". |
Read a specific idea from changes/<feature-name>/ideas.md, research solution variants for it, and write or update changes/<feature-name>/<NUMBER-idea-name>/variants.md.
Input: The argument after /variants should include both:
changes/<feature-name>/ideas.mdExamples:
/variants 712-composite-foreign-keys 2/variants row-level-security-integration "Policy-aware query configuration"/variants composite-foreign-keys-in-relations 3Goal
Produce a document that explains the goal of one specific idea and proposes one or more genuinely different user-facing solutions for achieving it.
This command is about solution design, not implementation planning. The output should help a human compare approaches, and it should also be clear enough that a later AI can use it as a reliable basis for a more detailed proposal.
The existing research.md is background context, but it is usually not enough on its own. Unless the idea is trivial and the solution space is obvious, do fresh idea-specific research to:
Steps
Identify the target change folder
Search changes/ for the folder that best matches the user's feature input.
Prefer:
research.md and ideas.mdIf multiple folders are plausible, stop and ask the user which one to use. Do not guess when the match is ambiguous.
If no relevant change folder exists, tell the user that no matching researched change was found. Do not create a new change folder here.
Resolve the target idea
Read the full changes/<feature-name>/ideas.md.
Match the requested idea by:
### 2. <Idea title>If the title match is ambiguous, stop and ask one focused clarifying question. Do not guess between similarly named ideas.
Record:
Why, Adds, How, Depends on, and any use cases that help clarify the ideaRead existing research for idea-specific context
Read changes/<feature-name>/research.md after identifying the idea.
Use it to understand:
Ignore research sections that do not materially affect the selected idea. The purpose of this step is to narrow the problem before doing variant research.
Decide how much new research is needed
Make an explicit judgment:
ideas.mdresearch.mdresearch.mdBias toward doing fresh research unless the idea is truly simple.
This command should usually perform broader solution-oriented research than ideas.md already contains.
Research solution variants
When fresh research is needed, research specifically for this idea rather than the whole feature.
Prioritize:
Research goals:
Do not do generic background research that does not affect the proposed variants. Keep the research focused on how the idea could be expressed to users.
Inspect relevant orchid-orm documentation
Read docs/src/.vitepress/dist/llms.txt, but only the sections that are relevant to the selected idea or its candidate solutions.
Use the docs to understand:
Read relevant references from research.md
At the end of research.md, review the reference list.
Read only the references that appear relevant to:
It is not necessary to read every reference. Prefer the sources that materially improve solution quality.
Derive the solution variants
Propose one or more solutions that are genuinely different ways to achieve the idea's goal.
Good solution differences include:
Bad solution differences include:
If the idea only supports one serious solution, that is acceptable. Do not invent weak alternatives just to produce multiple options.
Write or update variants.md
The output path must be:
changes/<feature-name>/<NUMBER-idea-name>/variants.md
Where:
NUMBER is the idea number from ideas.mdidea-name is a short kebab-case form of the idea titleIf the idea folder does not exist yet, create it.
If variants.md already exists, read it now, preserve useful content, remove stale or unsupported claims, and reconcile it with the current idea and research.
Use this structure:
# <Idea Title>
## Goal
<Explain what this idea is trying to achieve for users and why it matters.>
## Context from existing research
<Brief summary of the relevant context from `research.md`, orchid-orm docs, and any prior references that materially shape the solution space.>
## Solution 1: <Solution name>
- Summary: <One paragraph describing the solution at a user-facing level.>
- User-facing interface: <Describe the public API, configuration, methods, or other visible surface users would work with.>
- How it works: <Explain the principles clearly enough that both a human reader and a later AI can understand the exact intended behavior without guessing. Stay out of implementation internals, but remove ambiguity about what the solution means.>
- Workflow: <Describe the sequence of what a user does and what they get. Use a short list if it is clearer.>
- Pros: <Benefits of this solution.>
- Cons: <Limitations, awkwardness, or trade-offs of this solution.>
#### Example use case
- <Brief scenario showing when a user would choose this solution and what result they get.>
<Optional minimal code example when it materially improves clarity.>
## Solution 2: <Solution name> <!-- optional -->
- Summary: <One paragraph describing the solution at a user-facing level.>
- User-facing interface: <Describe the public API, configuration, methods, or other visible surface users would work with.>
- How it works: <Explain the principles clearly enough that both a human reader and a later AI can understand the exact intended behavior without guessing. Stay out of implementation internals, but remove ambiguity about what the solution means.>
- Workflow: <Describe the sequence of what a user does and what they get. Use a short list if it is clearer.>
- Pros: <Benefits of this solution.>
- Cons: <Limitations, awkwardness, or trade-offs of this solution.>
#### Example use case
- <Brief scenario showing when a user would choose this solution and what result they get.>
<Optional minimal code example when it materially improves clarity.>
## Comparison <!-- optional: only when there are multiple solutions -->
- <How solution 1 is better than solution 2 for certain users or priorities.>
- <How solution 2 is better than solution 1 for certain users or priorities.>
- <Which solution seems most natural for orchid-orm users, if that conclusion is justified.>
## References
- <Relevant source and why it matters to this idea or a proposed solution.>
Document guidance:
How it works must be concrete and unambiguous enough that a later AI can use it for a more detailed proposal without inventing missing behaviorComparison section only when there is more than one real solutionSource handling
The resulting solution descriptions should reference relevant sources when they are based on those sources.
Source expectations:
Do not add references that were not actually used. Do not dump a large bibliography just because it exists.
Before finishing, verify:
changes/<feature-name>/<NUMBER-idea-name>/variants.md pathideas.mdresearch.md were used, and irrelevant parts were ignoredresearch.md were read when they helped the ideaPros and Cons reflect real trade-offs rather than fillerGuardrails
ideas.md before reading research.mdresearch.md as sufficient by default for solution qualitydocs/src/.vitepress/dist/llms.txt or all references blindly; stay selective and relevant