| name | oat-idea-ideate |
| version | 1.2.1 |
| description | Use when continuing an existing tracked idea or expanding an explicit scratchpad seed from {IDEAS_ROOT}/scratchpad.md. Do NOT use to start a brand-new, destinationless brainstorm; use oat-brainstorm for that. |
| argument-hint | [--global] |
| disable-model-invocation | true |
| user-invocable | true |
| allowed-tools | Read, Write, Bash, Glob, AskUserQuestion |
Ideate
Resume brainstorming on an existing tracked idea, or expand an explicit scratchpad seed into a tracked idea before continuing ideation.
Mode Assertion
OAT MODE: Ideation
Purpose: Lightweight brainstorming through natural, exploratory conversation for an idea record that already exists or for a scratchpad seed the user explicitly selects. Capture the essence of that tracked idea without formal structure or implementation detail.
BLOCKED Activities:
- No code writing or implementation details
- No formal requirements or specifications
- No technical designs or architecture
- No task breakdowns or plans
- No forced structure — let the idea breathe
- No brand-new destinationless brainstorm activation. Use
oat-brainstorm when the user says "let's brainstorm", "brainstorm this", or otherwise opens exploratory discussion without naming an existing idea or scratchpad seed.
ALLOWED Activities:
- Free-form discussion and exploration
- Asking open-ended questions
- Capturing thoughts and observations
- Exploring "what if" scenarios
- Noting related ideas and references
- Identifying open questions organically
Self-Correction Protocol:
If you catch yourself:
- Writing implementation details → STOP (capture as an Open Question instead)
- Formalizing requirements → STOP (keep it conversational)
- Creating structured deliverables → STOP (save for project workflow)
- Treating a generic brainstorm request as a scratchpad entry → STOP. Scratchpad mode requires an actual unchecked entry in
{IDEAS_ROOT}/scratchpad.md or an explicit user reference to one.
Recovery:
- Acknowledge the deviation
- Return to exploratory questioning
- Capture the insight as a note or open question
Progress Indicators (User-Facing)
-
Print a phase banner once at start using horizontal separators, e.g.:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
OAT ▸ IDEATE [project]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Replace [project] with [global] when operating at user level.
-
Before multi-step work, print step indicators, e.g.:
[1/3] Resolving active idea…
[2/3] Loading discovery document…
[3/3] Starting brainstorming session…
Process
Step 0: Resolve Ideas Level
Determine whether to operate at project level or user (global) level.
Resolution order:
- If
$ARGUMENTS contains --global → use user level
- If
.oat/config.local.json has activeIdea pointing to a valid directory → use project level
- If
~/.oat/config.json has activeIdea pointing to a valid directory → use user level
- If BOTH
.oat/ideas/ AND ~/.oat/ideas/ exist →
ask: "Ideas exist at both project and user level. Where should this idea go?"
options: "Project (.oat/ideas/)" / "Global (~/.oat/ideas/)"
- If
.oat/ideas/ exists → use project level
- If
~/.oat/ideas/ exists → use user level
- Otherwise → ask: "Project-level or global (user-level) ideas?"
Set variables:
| Variable | Project Level | User Level |
|---|
IDEAS_ROOT | .oat/ideas | ~/.oat/ideas |
TEMPLATES_ROOT | .oat/templates/ideas | ~/.oat/templates/ideas |
Step 1: Resolve Active Idea
This skill is a resume / expand flow, not a blank-slate brainstorm entry point. If the user has only asked to brainstorm and has not named an existing idea, an active idea, or a scratchpad seed, stop and route to oat-brainstorm.
Read activeIdea from config:
IDEA_PATH=$(oat config get activeIdea 2>/dev/null || true)
If valid (directory exists with discovery.md):
- Show the idea name and current state to the user
- Ask: "Continue with {idea-name}, or switch to a different idea?"
- If continuing, proceed to Step 2
If missing or invalid:
Step 2: Load Discovery Document
Read {IDEAS_ROOT}/{idea-name}/discovery.md.
Show the user a brief summary of the current state:
- Idea name
- State (brainstorming/summarized)
- Last updated date
- Key sections that have content vs. are still template placeholders
Step 3: Handle Summarized State
If oat_idea_state: summarized:
- Warn: "This idea has already been summarized."
- Offer options:
- Reopen brainstorming — set state back to
brainstorming, continue to Step 4
- View summary — read and display
summary.md, then stop
- Start a different idea — go back to Step 1
Step 4: Start New Session
Add a new session header to the Notes & Discussion section:
### Session: YYYY-MM-DD
Update frontmatter: oat_idea_last_updated: YYYY-MM-DD
Step 5: Conversational Brainstorming
Enter a free-form conversational flow:
- Read current content to understand where the idea stands
- Ask exploratory questions based on what's been discussed so far:
- If early stage: "What sparked this idea?", "What problem does this solve?"
- If mid-stage: "What's changed since last time?", "Any new angles?"
- If sections are thin: ask questions that naturally fill them out
- Capture responses in the discovery document:
- Update "What's the Idea?" if the core concept evolves
- Update "Why Is It Interesting?" as motivations emerge
- Update "What Would It Look Like?" as the vision takes shape
- Add to "Open Questions" as unknowns surface
- Add to "Related Ideas" as connections are made
- Append detailed notes to the current session under "Notes & Discussion"
- Follow the user's energy — explore tangents, let ideas evolve naturally
- Don't force completion — ideation can be open-ended
Step 6: Session Close
When the user signals they're done (or the conversation reaches a natural pause):
- Update
oat_idea_last_updated in frontmatter
- Save all changes to
discovery.md
- Tell the user their progress is saved, then suggest these next steps (these are prompts for the user to run later — do not auto-invoke them):
- Continue later — "Run the
oat-idea-ideate skill to pick up where you left off"
- Summarize — "Run the
oat-idea-summarize skill to finalize this idea"
- Switch ideas — "Run the
oat-idea-ideate skill and pick a different idea"
- Quick capture — "Run the
oat-idea-scratchpad skill to jot down a new idea seed"
Success Criteria
- ✅ Active idea resolved (or user guided to create one)
- ✅ New session header added to Notes & Discussion
- ✅ Discovery document updated with conversation content
- ✅
oat_idea_last_updated reflects today's date
- ✅ User offered clear next steps on session close