persona:
name: "Udit Akhouri"
title: "The Divergent Ideation Architect"
expertise: ['Parallel Reasoning Architectures', 'Cognitive Frames', 'Agent Skill Design', 'Premature Convergence']
philosophy: "The first three answers are the ones a senior engineer gives in thirty seconds. Correct. Forgettable. The interesting answers live past number three."
credentials: ['Author of ADHD preprint', 'Creator of adhdstack.github.io', 'MIT-licensed open source']
principles: ['Isolate before converge', 'Generator and critic must never mix', 'Structure is half the value', 'Expensive — gate before use']
ADHD — Parallel Divergent Ideation
Upstream: github.com/UditAkhourii/adhd
License: MIT
Preprint: adhdstack.github.io
Stop picking the textbook answer. This skill forces the agent to walk into the awkward middle where non-obvious solutions live.
When to Use
Trigger phrases:
- "/adhd"
- "ADHD mode"
- "use parallel ideation"
- "brainstorm this"
- "give me a few ways to..."
- "think outside the box on this"
Use when:
- Architecture decisions where the obvious answer may not be best
- API/SDK surface design (naming, ergonomics, DX tradeoffs)
- Naming things (products, features, variables, endpoints)
- Fuzzy debugging with no known root cause
- Open-ended strategy or positioning
- Schema / data model design
Don't use for:
- Syntax lookups ("what's the Python equivalent of...")
- Bugs with a known root cause
- Any question with one canonical answer
- Low-stakes decisions ("what color should this button be?")
- When the user says "quick", "standard", "canonical", "textbook", or "just"
Anti-Rationalization Table
| Excuse |
Reality |
Rule |
| "Parallel branches waste tokens" |
Divergent thinking finds better solutions than single-path |
The cost of a bad architecture exceeds parallel exploration cost |
| "I can just think harder" |
Cognitive biases blind single-threaded reasoning |
Structured parallel frames force coverage of blind spots |
| "Naming isn't a design problem" |
Names reveal conceptual clarity; bad names = bad abstractions |
Treat naming as API design — it is |
Trigger phrases:
- "/adhd"
- "ADHD mode"
- "use parallel ideation"
- "brainstorm this"
- "give me a few ways to..."
- "think outside the box on this"
Use when:
- Architecture decisions where the obvious answer may not be best
- API/SDK surface design (naming, ergonomics, DX tradeoffs)
- Naming things (products, features, variables, endpoints)
- Fuzzy debugging with no known root cause
- Open-ended strategy or positioning
- Schema / data model design
Don't use for:
- Syntax lookups ("what's the Python equivalent of...")
- Bugs with a known root cause
- Any question with one canonical answer
- Low-stakes decisions ("what color should this button be?")
- When the user says "quick", "standard", "canonical", "textbook", or "just"
How to Use
- Confirm fit — Check the task against the trigger phrases and "Use when" list; bail if it hits "Don't use for"
- Enter The Loop — Run the parallel ideation loop below (Diverge → Focus), phases gate on their own inputs
- Apply cognitive frames — Use the frames section to stretch or prune candidate directions
- Pick and commit — Converge on one direction and exit the loop; do not re-open decisions without new information
- Verify — Run the Verification Checklist before shipping the chosen design
Pre-flight Gate
This skill is expensive (~5–10× a single answer). Run this gate before proceeding.
Step 1. Explicit invocation. If the user typed /adhd or explicitly asked for ADHD mode, skip the rest of the gate and go straight to Phase 1.
Step 2. Self-judge. Ask yourself three questions. If any answer is no, abort.
- Open-ended? Would a senior engineer give multiple viable answers, or is there one canonical answer?
- High-stakes? Is the cost of the obvious answer being wrong actually high?
- Open phrasing? Did the user avoid words like "quick", "standard", "canonical", "textbook", "just"?
If all three pass, proceed to Phase 1. Otherwise, answer directly. Optionally add: "If you want wider exploration under parallel cognitive frames with trap detection, run /adhd <problem>."
The Loop
Two strict phases. Do not mix them — the critic strangles the generator.
Phase 1 — Diverge (no critic)
Pick 5 cognitive frames from the table below. Bias toward engineering tags for code problems. Always include at least one wild frame.
Spawn 5 parallel isolated branches. Each gets only:
- The problem P
- Any context the user provided
- The chosen frame's vantage prompt
- A system instruction that forbids evaluation
You are in DIVERGENT mode — a generator, not a critic.
Generate 6 short distinct ideas under this frame. Each idea is one
phrase or one sentence. Do not evaluate. Do not rank. Do not hedge.
The first three obvious answers everyone would give are banned.
Push past them into the awkward middle.
Output a JSON array only: [{"text": "...", "rationale": "..."}, ...]
Critical invariant: Branches must be parallel and isolated. Do NOT serialize them. Do NOT pass one branch's output to another. Branches that see each other anchor each other — the whole method collapses to a wider single thought.
Phase 2 — Focus (critic on)
Score. Rate each idea 0–10 on:
- Novelty (distance from the obvious default)
- Viability (could it actually ship)
- Fit (does it address the stated problem)
Flag any attractive-looking trap with a one-line reason.
Cluster. Group into 3–6 clusters by underlying angle, not surface keywords. Label by angle: "remove-the-server plays", "cache-shaped plays", "race-multiple-backends plays".
Deepen the top 3. Rank by weighted score (Novelty 0.35 + Viability 0.40 + Fit 0.25), exclude traps, take top 3. For each:
- 4–8 sentence sketch of how it works
- The load-bearing risk
- The first concrete step a builder would take
- 3–5 child ideas (variations, hybrids, unlocks)
You are in FOCUS mode. Take one promising idea and connect dots.
Sketch how it would actually work in 4–8 sentences. Name the
load-bearing risk. Name the first concrete step a coder would take.
Then generate 3–5 sub-ideas that branch off. Output JSON only.
Cognitive Frames
Pick 5 per run. For code problems: 4 tagged code/design + 1 tagged wild.
| Frame |
Vantage Prompt |
Tags |
| hardware engineer |
You think in latency, memory layout, and physical constraints. Re-ask this as a hardware/firmware problem. What does the bus topology, cache, timing budget tell you? |
code, wild |
| regulator |
You audit systems for compliance and failure modes. What must be provable, traceable, or refusable here? |
design, general |
| 10-year-old |
You are a curious 10 year old who has never seen software. Describe naive but unencumbered approaches. Ignore convention. |
general, wild |
| competitor trying to break it |
You are a hostile competitor or attacker. Generate approaches that exploit, fail, or sabotage the obvious solution. Then invert into ideas. |
code, design |
| biology |
Transplant a mechanism from biology (immune systems, neural plasticity, cell signaling, evolution, gut flora). Force-fit it onto this engineering problem. |
code, wild |
| logistics |
Steal mechanisms from logistics: queues, batching, just-in-time, hub-and-spoke, returns, last-mile. Apply them literally. |
code, design |
| game design |
Approach this as a game designer. What are the loops, rewards, friction, save-states, speedrun tricks? Treat the user as a player. |
design, general |
| markets |
Treat the problem as a market. Buyers, sellers, market-makers. What does an auction, a futures contract, a clearing house look like here? |
design, wild |
| inversion |
Ask the OPPOSITE question. If goal is X, brainstorm how to guarantee NOT X. Then negate each answer back. |
code, design, general |
| extreme: $0 budget, 1 hour |
No money, no team, one hour. What is the crudest version that still does the load-bearing thing? |
code, general |
| extreme: infinite budget, 10 years |
Infinite compute, infinite engineers, a decade. What is the maximalist version? |
design, wild |
| remove the load-bearing assumption |
Name the thing everyone treats as fixed (framework, database, request-response model, network). Imagine it is gone. What is possible? |
code, design, wild |
| speedrunner |
You are a speedrunner. Find glitches, skips, out-of-bounds tricks, frame-perfect shortcuts. What is the abusive-but-legal path? |
code, wild |
| ant colony |
No central planner. Many dumb agents, local rules, pheromone trails. How does the problem solve itself emergently? |
code, wild |
| 3am on-call |
You are the on-call engineer woken at 3am when this breaks. What design would let you not get paged? |
code, design |
Vary picks across sessions so the same problem produces different candidate sets when re-run.
Output Shape
Render in this order. Structure is the point — do not collapse into prose.
- Brief. One–two lines confirming the problem and any reframe used.
- Wide set. Full pool grouped by cluster. Score chips:
[N7 V8 F9] per idea.
- Converge. 2–4 idea shortlist. Why each is on the list. Mark non-obvious pick with ★. List traps with one-line reasons.
- Focus. 3 deepened branches: sketch, risk, first step, child ideas.
- Provocation. One wildcard question that opens a new direction if nothing landed.
Cost & Calibration
~10 agent calls per run (5 diverge + 1 score + 1 cluster + 3 deepen). About 5–10× single-shot.
| Context |
Frames × Ideas |
Total |
| Quick naming decision |
3 × 4 |
~12 |
| Default |
5 × 6 |
~30 |
| High-stakes strategy |
5 × 8 |
~40 |
Anti-Patterns
| Anti-pattern |
What it looks like |
Fix |
| Convergence disguised as divergence |
Ten variations of one idea |
Check: do all share one assumption? |
| Weird-for-weird's-sake |
30 unsorted absurdities |
Always converge. Structure is half the value. |
| Walls of equally-weighted prose |
No clustering, no prioritization |
Cluster, label, pull out the best. |
| Refusing to commit |
"Here are 20 ideas, you decide" |
Take a position. Generate wide, converge with opinion. |
| Skipping isolation |
Simulating parallel branches sequentially |
Each branch needs a fresh context. Parallel or nothing. |
Verification Checklist
References
Overview
Parallel divergent ideation for agents — spawns N isolated reasoning branches under different cognitive frames, then scores, clusters, prunes traps, and deepens survivors. Use for open-ended design, architecture, naming, API surface decisions.
Process
- Define problem space — Specify the open-ended decision or design challenge
- Spawn branches — Launch N isolated reasoning agents with different frames
- Score outputs — Evaluate each branch against quality criteria
- Cluster & prune — Group similar ideas, remove cognitive traps
- Deepen survivors — Run deep analysis on top candidates
- Synthesize — Merge insights into final recommendation
1---2name: adhd3description: Spawns parallel reasoning branches under different cognitive frames to explore non-obvious solutions for open-ended design, architecture, naming, and fuzzy debugging problems, then scores, clusters, and deepens the most promising ideas.4license: MIT5---6789persona:10 name: "Udit Akhouri"11 title: "The Divergent Ideation Architect"12 expertise: ['Parallel Reasoning Architectures', 'Cognitive Frames', 'Agent Skill Design', 'Premature Convergence']13 philosophy: "The first three answers are the ones a senior engineer gives in thirty seconds. Correct. Forgettable. The interesting answers live past number three."14 credentials: ['Author of ADHD preprint', 'Creator of adhdstack.github.io', 'MIT-licensed open source']15 principles: ['Isolate before converge', 'Generator and critic must never mix', 'Structure is half the value', 'Expensive — gate before use']1617# ADHD — Parallel Divergent Ideation1819**Upstream:** [github.com/UditAkhourii/adhd](https://github.com/UditAkhourii/adhd) 20**License:** MIT 21**Preprint:** [adhdstack.github.io](https://adhdstack.github.io/)2223Stop picking the textbook answer. This skill forces the agent to walk into the awkward middle where non-obvious solutions live.2425---2627## When to Use2829**Trigger phrases:**30- "/adhd"31- "ADHD mode"32- "use parallel ideation"33- "brainstorm this"34- "give me a few ways to..."35- "think outside the box on this"3637**Use when:**38- Architecture decisions where the obvious answer may not be best39- API/SDK surface design (naming, ergonomics, DX tradeoffs)40- Naming things (products, features, variables, endpoints)41- Fuzzy debugging with no known root cause42- Open-ended strategy or positioning43- Schema / data model design4445**Don't use for:**46- Syntax lookups ("what's the Python equivalent of...")47- Bugs with a known root cause48- Any question with one canonical answer49- Low-stakes decisions ("what color should this button be?")50- When the user says "quick", "standard", "canonical", "textbook", or "just"5152---53545556## Anti-Rationalization Table5758| Excuse | Reality | Rule |59|--------|---------|------|60| "Parallel branches waste tokens" | Divergent thinking finds better solutions than single-path | The cost of a bad architecture exceeds parallel exploration cost |61| "I can just think harder" | Cognitive biases blind single-threaded reasoning | Structured parallel frames force coverage of blind spots |62| "Naming isn't a design problem" | Names reveal conceptual clarity; bad names = bad abstractions | Treat naming as API design — it is |636465**Trigger phrases:**66- "/adhd"67- "ADHD mode"68- "use parallel ideation"69- "brainstorm this"70- "give me a few ways to..."71- "think outside the box on this"7273**Use when:**74- Architecture decisions where the obvious answer may not be best75- API/SDK surface design (naming, ergonomics, DX tradeoffs)76- Naming things (products, features, variables, endpoints)77- Fuzzy debugging with no known root cause78- Open-ended strategy or positioning79- Schema / data model design8081**Don't use for:**82- Syntax lookups ("what's the Python equivalent of...")83- Bugs with a known root cause84- Any question with one canonical answer85- Low-stakes decisions ("what color should this button be?")86- When the user says "quick", "standard", "canonical", "textbook", or "just"8788---8990## How to Use91921. **Confirm fit** — Check the task against the trigger phrases and "Use when" list; bail if it hits "Don't use for"932. **Enter The Loop** — Run the parallel ideation loop below (Diverge → Focus), phases gate on their own inputs943. **Apply cognitive frames** — Use the frames section to stretch or prune candidate directions954. **Pick and commit** — Converge on one direction and exit the loop; do not re-open decisions without new information965. **Verify** — Run the Verification Checklist before shipping the chosen design9798---99100## Pre-flight Gate101102This skill is expensive (~5–10× a single answer). Run this gate before proceeding.103104**Step 1. Explicit invocation.** If the user typed `/adhd` or explicitly asked for ADHD mode, **skip** the rest of the gate and go straight to Phase 1.105106**Step 2. Self-judge.** Ask yourself three questions. If any answer is **no**, abort.1071081. **Open-ended?** Would a senior engineer give multiple viable answers, or is there one canonical answer?1092. **High-stakes?** Is the cost of the obvious answer being wrong actually high?1103. **Open phrasing?** Did the user avoid words like "quick", "standard", "canonical", "textbook", "just"?111112If all three pass, proceed to Phase 1. Otherwise, answer directly. Optionally add: *"If you want wider exploration under parallel cognitive frames with trap detection, run `/adhd <problem>`."*113114---115116## The Loop117118Two strict phases. **Do not mix them** — the critic strangles the generator.119120### Phase 1 — Diverge (no critic)1211221. **Pick 5 cognitive frames** from the table below. Bias toward engineering tags for code problems. Always include at least one wild frame.1231242. **Spawn 5 parallel isolated branches.** Each gets only:125 - The problem P126 - Any context the user provided127 - The chosen frame's vantage prompt128 - A system instruction that forbids evaluation129130 > You are in DIVERGENT mode — a generator, not a critic.131 > Generate 6 short distinct ideas under this frame. Each idea is one132 > phrase or one sentence. Do not evaluate. Do not rank. Do not hedge.133 > The first three obvious answers everyone would give are banned.134 > Push past them into the awkward middle.135 > Output a JSON array only: [{"text": "...", "rationale": "..."}, ...]1361373. **Critical invariant:** Branches must be parallel and isolated. Do NOT serialize them. Do NOT pass one branch's output to another. Branches that see each other anchor each other — the whole method collapses to a wider single thought.138139### Phase 2 — Focus (critic on)1401411. **Score.** Rate each idea 0–10 on:142 - **Novelty** (distance from the obvious default)143 - **Viability** (could it actually ship)144 - **Fit** (does it address the stated problem)145 146 Flag any attractive-looking trap with a one-line reason.1471482. **Cluster.** Group into 3–6 clusters by underlying angle, not surface keywords. Label by angle: "remove-the-server plays", "cache-shaped plays", "race-multiple-backends plays".1491503. **Deepen the top 3.** Rank by weighted score (Novelty 0.35 + Viability 0.40 + Fit 0.25), exclude traps, take top 3. For each:151 - 4–8 sentence sketch of how it works152 - The load-bearing risk153 - The first concrete step a builder would take154 - 3–5 child ideas (variations, hybrids, unlocks)155156 > You are in FOCUS mode. Take one promising idea and connect dots.157 > Sketch how it would actually work in 4–8 sentences. Name the158 > load-bearing risk. Name the first concrete step a coder would take.159 > Then generate 3–5 sub-ideas that branch off. Output JSON only.160161---162163## Cognitive Frames164165Pick 5 per run. For code problems: 4 tagged `code`/`design` + 1 tagged `wild`.166167| Frame | Vantage Prompt | Tags |168|-------|---------------|------|169| **hardware engineer** | You think in latency, memory layout, and physical constraints. Re-ask this as a hardware/firmware problem. What does the bus topology, cache, timing budget tell you? | code, wild |170| **regulator** | You audit systems for compliance and failure modes. What must be provable, traceable, or refusable here? | design, general |171| **10-year-old** | You are a curious 10 year old who has never seen software. Describe naive but unencumbered approaches. Ignore convention. | general, wild |172| **competitor trying to break it** | You are a hostile competitor or attacker. Generate approaches that exploit, fail, or sabotage the obvious solution. Then invert into ideas. | code, design |173| **biology** | Transplant a mechanism from biology (immune systems, neural plasticity, cell signaling, evolution, gut flora). Force-fit it onto this engineering problem. | code, wild |174| **logistics** | Steal mechanisms from logistics: queues, batching, just-in-time, hub-and-spoke, returns, last-mile. Apply them literally. | code, design |175| **game design** | Approach this as a game designer. What are the loops, rewards, friction, save-states, speedrun tricks? Treat the user as a player. | design, general |176| **markets** | Treat the problem as a market. Buyers, sellers, market-makers. What does an auction, a futures contract, a clearing house look like here? | design, wild |177| **inversion** | Ask the OPPOSITE question. If goal is X, brainstorm how to guarantee NOT X. Then negate each answer back. | code, design, general |178| **extreme: $0 budget, 1 hour** | No money, no team, one hour. What is the crudest version that still does the load-bearing thing? | code, general |179| **extreme: infinite budget, 10 years** | Infinite compute, infinite engineers, a decade. What is the maximalist version? | design, wild |180| **remove the load-bearing assumption** | Name the thing everyone treats as fixed (framework, database, request-response model, network). Imagine it is gone. What is possible? | code, design, wild |181| **speedrunner** | You are a speedrunner. Find glitches, skips, out-of-bounds tricks, frame-perfect shortcuts. What is the abusive-but-legal path? | code, wild |182| **ant colony** | No central planner. Many dumb agents, local rules, pheromone trails. How does the problem solve itself emergently? | code, wild |183| **3am on-call** | You are the on-call engineer woken at 3am when this breaks. What design would let you not get paged? | code, design |184185Vary picks across sessions so the same problem produces different candidate sets when re-run.186187---188189## Output Shape190191Render in this order. Structure is the point — do not collapse into prose.1921931. **Brief.** One–two lines confirming the problem and any reframe used.1942. **Wide set.** Full pool grouped by cluster. Score chips: `[N7 V8 F9]` per idea.1953. **Converge.** 2–4 idea shortlist. Why each is on the list. Mark non-obvious pick with ★. List traps with one-line reasons.1964. **Focus.** 3 deepened branches: sketch, risk, first step, child ideas.1975. **Provocation.** One wildcard question that opens a new direction if nothing landed.198199---200201## Cost & Calibration202203~10 agent calls per run (5 diverge + 1 score + 1 cluster + 3 deepen). About 5–10× single-shot.204205| Context | Frames × Ideas | Total |206|---------|---------------|-------|207| Quick naming decision | 3 × 4 | ~12 |208| Default | 5 × 6 | ~30 |209| High-stakes strategy | 5 × 8 | ~40 |210211---212213## Anti-Patterns214215| Anti-pattern | What it looks like | Fix |216|-------------|-------------------|-----|217| **Convergence disguised as divergence** | Ten variations of one idea | Check: do all share one assumption? |218| **Weird-for-weird's-sake** | 30 unsorted absurdities | Always converge. Structure is half the value. |219| **Walls of equally-weighted prose** | No clustering, no prioritization | Cluster, label, pull out the best. |220| **Refusing to commit** | "Here are 20 ideas, you decide" | Take a position. Generate wide, converge with opinion. |221| **Skipping isolation** | Simulating parallel branches sequentially | Each branch needs a fresh context. Parallel or nothing. |222223---224225## Verification Checklist226227- [ ] Pre-flight gate passed (explicit invocation or 3/3 self-judge checks)228- [ ] 5 frames picked with at least 1 wild229- [ ] Diverge used parallel isolated branches (not sequential)230- [ ] Generator mode strictly enforced during diverge231- [ ] Scoring on 3 axes with trap flags232- [ ] Clusters grouped by underlying angle233- [ ] Top 3 deepened with sketch, risk, first step, child ideas234- [ ] Output in structured shape: brief → wide → converge → focus → provocation235- [ ] Provocation included at the end236237---238239## References240241- [ADHD preprint](https://adhdstack.github.io/) — academic paper242- [Upstream repo](https://github.com/UditAkhourii/adhd)243- [The New Stack feature](https://thenewstack.io/claude-code-adhd/)244- [Independent benchmark](https://miyagadget.page/en/blog/2026/06/03/adhd-coding-agent-skill-en/)245- [Repowire integration](https://github.com/prassanna-ravishankar/repowire/pull/313)246- [Han research review](https://github.com/testdouble/han/blob/adhd-swarm-research/docs/research/adhd-application-to-han.md)247## Overview248249Parallel divergent ideation for agents — spawns N isolated reasoning branches under different cognitive frames, then scores, clusters, prunes traps, and deepens survivors. Use for open-ended design, architecture, naming, API surface decisions.250251## Process2522531. **Define problem space** — Specify the open-ended decision or design challenge2542. **Spawn branches** — Launch N isolated reasoning agents with different frames2553. **Score outputs** — Evaluate each branch against quality criteria2564. **Cluster & prune** — Group similar ideas, remove cognitive traps2575. **Deepen survivors** — Run deep analysis on top candidates2586. **Synthesize** — Merge insights into final recommendation