ideation-complex
Skill6 starsChanged 8 months agoMITView on GitHub
Guide a complex project ideation session through chunk identification, per-chunk discovery, and structured output files ready for /kickoff Pathway A
In this repository13 other files it gives its agents.
- ai-governanceSkill
- commit-phaseSkill
- comprehensive-testSkill
- diagnoseSkill
- execute-phaseSkill
- harmonizeSkill
- ideation-researchSkill
- ideation-simpleSkill
- ideation-synthesizeSkill
- kickoffSkill
- plan-phaseSkill
- tech-stackSkill
- verifySkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
28 rules. About 0 are common, 25 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈25
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 13
This skill runs in Cowork (headless environment): No browser or web search. Write files to disk as discovery progresses.
- Distinctive: line 20
Check the current project directory for existing discovery files:
- Very specific: line 22
Look for decisions.md, dependencies.md, and N-*-discovery.md files
- Distinctive: line 28
Ask: "Where would you like to resume?"
- Distinctive: line 31
Add a new chunk
- Distinctive: line 36
If the user provided $ARGUMENTS, use that as the project description
- Distinctive: line 38
After getting context, proceed to Phase 0
- Distinctive: line 80
After gathering enough context (usually 2-4 rounds of Q&A):
- Distinctive: line 92
Ask: "Does this capture all the major business domains?
- Distinctive: line 132
Ask an opening question appropriate to the domain type.
- Distinctive: line 210
When a significant decision is made during the conversation — a choice between alternatives, a scope boundary set, a policy confirmed — log …
- Distinctive: line 231
When the conversation feels complete for this chunk, do a quick completeness check:
- Very specific: line 247
After the chunk conversation feels complete, write N-chunk-name-discovery.md.
- Distinctive: line 324
After writing the discovery file, update dependencies.md with any cross-chunk impacts discovered in this chunk:
- Distinctive: line 335
If no cross-chunk impacts were found, note: "No cross-chunk impacts identified in Chunk [N] discovery."
- Distinctive: line 341
If more chunks remain: "Ready to move to Chunk [N+1]: [name]?
- Distinctive: line 343
If this is the last chunk: proceed to Phase 2 (Wrap-Up).
- Distinctive: line 349
After all chunks have discovery files:
- Distinctive: line 366
All major scope decisions are logged
- Distinctive: line 368
No obvious gaps (major decisions discussed but not captured)
- Distinctive: line 370
If gaps found: "I noticed we made a decision about [X] but I don't see it in decisions.md.
- Distinctive: line 374
If dependencies.md exists, review for completeness.
- Distinctive: line 405
Test First (highest risk): [list IDs]
- Very specific: line 412
Next step: Run /kickoff in Claude Code from this project directory.
- Distinctive: line 434
Keep chunks independently discoverable: you should be able to have a complete conversation about one chunk without needing to resolve …
- Distinctive: line 440
Start with the most foundational domain — the chunk that everything else builds on.
- Distinctive: line 452
All significant decisions are logged in decisions.md
- Distinctive: line 463
Read all existing files to rebuild context
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Ideation: Complex Path
Guide a complex project through structured business domain discovery. This skill produces
chunk discovery files, decisions.md, dependencies.md, and an assumption log — the exact
inputs that /kickoff Pathway A consumes.
This skill runs in Cowork (headless environment). No browser or web search. Write files to disk as discovery progresses. Subagents available if needed.
First Action: Check for Existing Work
Check the current project directory for existing discovery files:
- Look for
decisions.md,dependencies.md, andN-*-discovery.mdfiles - Also check for
chunks.mdor any notes file that might indicate a prior session
If existing files found:
- Read them all
- Summarize: "I found [N] chunks already identified. Chunks [X, Y] have discovery files. The last decision logged was D-[NNN]."
- Ask: "Where would you like to resume?"
- Continue next chunk
- Revisit a specific chunk
- Add a new chunk
- Begin wrap-up (check all chunks complete)
- Resume from the appropriate phase below
If no existing files:
- If the user provided $ARGUMENTS, use that as the project description
- Otherwise ask: "What are we building? Give me a brief description of the project — what it does, who it's for, and the main problem it solves."
- After getting context, proceed to Phase 0
Phase 0: Chunk Identification
Goal: Identify 4-8 business domains for this project. Surface these through structured questioning before writing anything.
What chunks are
Chunks are business domains, not build phases. They scope discovery conversations — each chunk should be independently discoverable, meaning you can have a complete conversation about it without needing to fully resolve another chunk first.
4-8 chunks is the sweet spot. Fewer means too broad for deep discovery; more means over-decomposition.
Guiding questions (ask 2-3, adapt based on answers)
Work through these angles to surface natural domain boundaries. Do not ask all of them — pick the ones most relevant to the project type. Ask one question at a time and wait for the answer.
Value flows:
- "Walk me through how value moves through this system — what gets created, processed, and delivered?"
- "What are the distinct categories of activity in this system that each have their own rules or approval paths?"
Compliance and regulation:
- "What regulatory or compliance obligations does this system need to support? Each one that has its own reporting, audit trail, or approval workflow is usually a chunk."
External integrations:
- "What external systems does this need to connect to? Each integration typically has its own data model, auth, and failure behavior."
People and workflows:
- "Who are the different types of people using this system? Do they have fundamentally different workflows, or do they use the same features differently?"
Operations and lifecycle:
- "What are the major lifecycle events in this domain? (e.g., onboarding, processing, reconciliation, reporting, archival)"
Propose initial chunks
After gathering enough context (usually 2-4 rounds of Q&A):
- Propose a chunk list with names and one-sentence descriptions. Example format:
Proposed chunks: 1. user-management — Account creation, roles, permissions, and authentication 2. catalog — Product/content creation, editing, and organization 3. orders — Order lifecycle from submission through fulfillment 4. notifications — Transactional messaging, preferences, and delivery tracking 5. reporting — Usage analytics and operational reports - Ask: "Does this capture all the major business domains? What's missing or should be split/merged?"
- Iterate until the user confirms the chunk list.
Initialize files
Once the chunk list is confirmed, create the following files:
decisions.md (create fresh, or add header if it already exists):
# Decisions Log
Chronological log of significant decisions made during discovery.
Format: D-NNN | Date | Decision | Rationale | Affects
---dependencies.md (only if 3+ chunks):
# Cross-Chunk Dependencies
Tracks how decisions and discoveries in one chunk impact other chunks.
Updated after each chunk's discovery phase.
---Then announce: "I'll work through the chunks in order, starting with the most foundational domain. Ready to begin discovery for Chunk 1: [name]?"
Phase 1: Per-Chunk Discovery
Work through chunks sequentially. For each chunk:
1.1 Open the chunk
State: "Let's explore Chunk [N]: [name]. [One-sentence reminder of what this chunk covers.]"
Ask an opening question appropriate to the domain type. Examples by domain type:
- Core data/records: "Walk me through the lifecycle of the main record in this domain — what creates it, what changes it, what closes it out?"
- User/workflow: "Walk me through a typical [user type]'s interaction with this part of the system — start to finish."
- Reporting/compliance: "What specific outputs does this domain need to produce — reports, exports, filings — and who receives them?"
- Integration: "What data flows between [external system] and ours, in which direction, and what triggers the exchange?"
1.2 Discovery Q&A
Conduct deep Q&A for this chunk. Ask one question at a time. Wait for the answer before continuing. Adapt the question sequence based on what you learn. Do not recite a fixed list of questions — flow naturally. The goal is to surface:
Business rules — What are the rules governing this domain?
- Invariants that must always be true ("an order cannot ship without a confirmed payment method")
- Policies and approval gates ("requests over a threshold require manager sign-off")
- Classification rules ("items tagged as hazardous require a different fulfillment path")
- Exception handling ("if a record is submitted after the cutoff, it routes to manual review")
Probe with:
- "Is there ever an exception to that rule?"
- "What happens when [edge case]?"
- "Who enforces that rule — is it automated or manual?"
Entities and data — What gets created, read, updated, and deleted?
- What are the core records in this domain?
- What are their key fields and states?
- What's the lifecycle of the main record type?
Probe with:
- "Can [record] ever be deleted, or only archived/voided?"
- "What triggers a status change?"
- "How long does this data need to be retained?"
User stories — Who does what, when, why?
- Name specific people where possible ("Sarah enters expenses daily")
- Cover the main workflow AND the exceptions
- Include the approval/review path
Probe with:
- "What does [role] do when something goes wrong?"
- "Who reviews this before it's finalized?"
- "What's the difference between a [role A] and a [role B] for this?"
Constraints — What limits the solution?
- Regulatory requirements ("HIPAA requires audit logs for all record access")
- Performance ("search results must return in under 500ms")
- Organizational ("two people own this system and neither is technical")
- Technical ("must integrate with the existing identity provider")
Open questions — What's unresolved?
- "What's still unclear or undecided about this domain?"
- "What decisions need to happen before we can build this?"
1.3 Surface assumptions
As significant assumptions emerge during Q&A, log them in real time (don't wait until the end). When you notice an assumption, say:
"That's an assumption worth logging. Let me add it to this chunk's assumption log."
Assign the next sequential ID (A1, A2, A3... continuing across all chunks from the previous chunk's last ID). Rate it:
Importance: How critical is this to the chunk's viability?
- High: If wrong, this chunk fundamentally doesn't work or must be redesigned
- Medium: If wrong, significant rework — but the core approach survives
- Low: If wrong, adjust details — core design is unaffected
Confidence: How certain are we this assumption is true?
- High: Strong evidence, established practice, or user confirmed it explicitly
- Medium: Reasonable basis but not verified
- Low: Gut feeling, untested belief, or contradicted by something we heard
Record the assumption in the discovery file as you go (see format below). Adjust rating if the conversation produces evidence.
1.4 Log decisions in real time
When a significant decision is made during the conversation — a choice between alternatives, a scope boundary set, a policy confirmed — log it immediately.
Say: "That's a significant decision — let me capture it."
Append to decisions.md:
## D-[NNN] — [Short title]
**Date**: [today]
**Decision**: [What was decided — one or two sentences]
**Rationale**: [Why this choice, including alternatives considered]
**Affects**: [Chunk names or downstream concerns impacted]
---Increment D-NNN sequentially across all chunks. After logging, continue the conversation.
1.5 Check completeness before closing the chunk
When the conversation feels complete for this chunk, do a quick completeness check:
"Before we move on, let me make sure we've covered the key areas for [chunk name]:
- Business rules: [brief summary of what was captured, any gaps?]
- Key entities: [brief summary]
- User workflows: [brief summary]
- Constraints: [brief summary]
- Open questions remaining: [list any]
Does anything feel underdeveloped or unresolved?"
Address any gaps the user identifies. Then ask if they're ready to close the chunk.
1.6 Write the discovery file
After the chunk conversation feels complete, write N-chunk-name-discovery.md. Use the
chunk's number and short name from the confirmed chunk list.
Discovery file format:
# Chunk [N]: [Name]
## Overview
[2-4 sentences: what this domain covers, why it exists, who it serves]
## Business Rules
[Numbered list of rules, invariants, and policies. Be specific — include numeric
thresholds, named roles, regulatory/policy citations if mentioned.]
1. [Rule]
2. [Rule]
- Exception: [if applicable]
## Key Entities
[The main data objects in this domain. For each: name, purpose, key states/lifecycle,
retention requirements if mentioned.]
**[Entity name]**: [Description. States: draft → submitted → approved → posted.]
## User Workflows
### [Workflow name]
**Who**: [Named person or role]
**Trigger**: [What initiates this]
**Steps**: [Numbered]
**Edge cases**: [What happens when it goes wrong]
[Repeat for each major workflow]
## Constraints
- **Regulatory**: [Any compliance requirements]
- **Performance**: [Any timing/throughput requirements]
- **Organizational**: [Staff capacity, tool constraints]
- **Integration**: [Dependencies on other systems]
## Cross-Chunk Dependencies
[How this chunk affects or depends on other chunks. Will be reflected in dependencies.md.]
- **→ [Other chunk]**: [What this chunk sends or impacts]
- **← [Other chunk]**: [What this chunk needs from another]
## Open Questions
**Blocking** (must answer before build):
| # | Question | Impact if unresolved | Owner |
|---|----------|---------------------|-------|
| 1 | [Question] | [Impact] | [Who] |
**Non-blocking** (can resolve during implementation):
| # | Question | Default assumption |
|---|----------|-------------------|
| 1 | [Question] | [What we'll assume] |
## Decisions Made
[References to decisions.md entries that originated in this chunk's discovery.]
- D-[NNN]: [Brief summary]
- D-[NNN]: [Brief summary]
## Assumptions Log
| ID | Assumption | Category | Importance | Confidence | Evidence | Priority |
|----|------------|----------|------------|------------|----------|----------|
| A[N] | [Assumption] | [Problem/User/Solution/Domain] | High/Med/Low | High/Med/Low | [What supports or contradicts this] | Test First / Monitor / Validate Later |
### Priority Legend
- **Test First**: High Importance + Low Confidence — existential risks, validate before building
- **Monitor**: High Importance + High Confidence — critical but we're confident; watch for surprises
- **Validate Later**: Lower priority — nice to confirm but not blocking1.7 Update dependencies.md (if 3+ chunks)
After writing the discovery file, update dependencies.md with any cross-chunk impacts discovered in this chunk:
## From Chunk [N]: [Name]
| Decision | What was decided | Affects | Impact |
|----------|-----------------|---------|--------|
| D-[NNN] | [Brief] | [Chunk name] | [Specific impact on that chunk] |If no cross-chunk impacts were found, note: "No cross-chunk impacts identified in Chunk [N] discovery."
1.8 Transition to next chunk
Announce: "Chunk [N] discovery complete. Discovery file written: [N]-[name]-discovery.md"
If more chunks remain: "Ready to move to Chunk [N+1]: [name]? Or do you want to revisit anything in [current chunk]?"
If this is the last chunk: proceed to Phase 2 (Wrap-Up).
Phase 2: Wrap-Up and Handoff
After all chunks have discovery files:
2.1 Cross-chunk assumption review
Scan all assumption logs across all chunks. Identify:
- Duplicate assumptions (same assumption appeared in multiple chunks — merge and keep the ID that appeared first, note the duplicate in the other chunk)
- Conflicting assumptions (two chunks assumed opposite things — flag for resolution)
- High-priority cluster (if 3+ "Test First" assumptions cluster around the same theme — that's a signal worth surfacing)
Present: "Across all [N] chunks, I've logged [X] assumptions. The highest-priority ones are: [list Test First items with IDs and chunk source]
Any of these concern you before we move to /kickoff?"
2.2 Decision log completeness
Quick scan of decisions.md. Confirm:
- All major scope decisions are logged
- Decisions that affect multiple chunks reference both in the "Affects" field
- No obvious gaps (major decisions discussed but not captured)
If gaps found: "I noticed we made a decision about [X] but I don't see it in decisions.md. Let me capture it now." Log it.
2.3 Dependencies review (if file exists)
If dependencies.md exists, review for completeness. Ask: "Looking at the dependency map — are there any cross-chunk impacts we discussed but didn't capture?"
Update if needed.
2.4 Final file checklist
Confirm the following files exist and are complete:
[project directory]/
decisions.md ✓ All major decisions logged with D-IDs
dependencies.md ✓ Cross-chunk impacts captured (or skipped — 1-2 independent chunks)
1-[name]-discovery.md ✓
2-[name]-discovery.md ✓
...
N-[name]-discovery.md ✓2.5 Handoff message
Present:
"Discovery is complete. Here's what's ready for /kickoff:
Chunks completed ([N] of [N]): [List each chunk with one-sentence status]
Decisions logged: [X] entries (D-001 through D-[NNN])
Assumptions identified: [X] total
- Test First (highest risk): [list IDs]
- Monitor: [list IDs]
- Validate Later: [count]
Open questions to resolve before build: [List any blocking open questions from across all chunks]
Next step: Run /kickoff in Claude Code from this project directory. It will detect
the chunk discovery files and use Pathway A to generate per-chunk specs. It may ask
targeted gap-filling questions about engineering concerns (performance, data retention,
error recovery) that business-focused discovery tends to undercover."
Methodology Reference
Chunking heuristics (embedded — do not reference CONVENTIONS.md)
Four signals that indicate a natural chunk boundary:
- Value flows — how value moves through the system (creation, processing, delivery, reporting) — distinct stages with their own rules tend to be natural chunk boundaries
- Compliance boundaries — each regulatory obligation with its own reporting or audit trail is typically a chunk
- Integration boundaries — each external system has its own data model, auth, and failure behavior
- Workflow boundaries — when users have fundamentally different workflows (not just different permissions to the same workflow), that often signals a boundary
Keep chunks independently discoverable: you should be able to have a complete conversation about one chunk without needing to resolve another first. Dependencies are tracked, not blocked on.
Discovery order
Start with the most foundational domain — the chunk that everything else builds on. For most systems: core data model / user management / primary workflow first. Work outward from there, updating dependencies.md after each chunk before moving to the next.
What "complete discovery" means (for /kickoff's assessment)
A chunk is ready for spec when:
- Business rules are enumerated (not just gestured at)
- Key entities and their lifecycles are named
- Main user workflows are documented with edge cases
- Open questions are categorized as blocking or non-blocking
- Cross-chunk dependencies are captured
- All significant decisions are logged in decisions.md
A chunk is "partial" when major questions remain open or only the surface was explored. Flag partial chunks to the user before closing.
Session Management Notes
Complex ideation often spans multiple sessions. At the start of any resumed session:
- Read all existing files to rebuild context
- Identify the last completed chunk and the last D-ID and A-ID assigned
- Continue A-ID numbering sequentially (don't restart at A1 in a new session)
- Continue D-ID numbering sequentially
- Summarize state to the user before resuming
When to Use
- User says "complex ideation", "let's do discovery", "I need to break this project into chunks"
- Project has 3+ distinct business domains requiring deep exploration
- Team expects 20-30 rounds of discovery questions before they're ready to spec
- Output will feed into
/kickoffPathway A (chunk-based spec generation)
When NOT to Use
- Simple project with clear requirements → use
/kickoffdirectly (Pathway C) - Medium project with some domain depth but no chunking needed → use
/ideation-simple+/ideation-synthesize→/kickoffPathway B - Already have chunk discovery files → go straight to
/kickoffPathway A - Just need market research or assumption mapping → use
/ideation-research
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
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.

