specsmd 0.1.63 → 0.1.65

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/flows/fire/agents/builder/agent.md +6 -0
  2. package/flows/fire/agents/builder/skills/run-execute/SKILL.md +75 -21
  3. package/flows/fire/agents/builder/skills/run-execute/scripts/complete-run.cjs +37 -4
  4. package/flows/fire/agents/builder/skills/run-plan/SKILL.md +12 -0
  5. package/flows/fire/agents/builder/skills/walkthrough-generate/SKILL.md +108 -22
  6. package/flows/fire/agents/builder/skills/walkthrough-generate/templates/walkthrough.md.hbs +68 -0
  7. package/flows/ideation/README.md +35 -0
  8. package/flows/ideation/agents/orchestrator/agent.md +103 -0
  9. package/flows/ideation/agents/orchestrator/skills/flame/SKILL.md +132 -0
  10. package/flows/ideation/agents/orchestrator/skills/flame/references/evaluation-criteria.md +81 -0
  11. package/flows/ideation/agents/orchestrator/skills/flame/references/six-hats-method.md +87 -0
  12. package/flows/ideation/agents/orchestrator/skills/flame/templates/flame-report.md.hbs +81 -0
  13. package/flows/ideation/agents/orchestrator/skills/forge/SKILL.md +153 -0
  14. package/flows/ideation/agents/orchestrator/skills/forge/references/disney-method.md +94 -0
  15. package/flows/ideation/agents/orchestrator/skills/forge/references/pitch-framework.md +87 -0
  16. package/flows/ideation/agents/orchestrator/skills/forge/templates/concept-brief.md.hbs +83 -0
  17. package/flows/ideation/agents/orchestrator/skills/spark/SKILL.md +152 -0
  18. package/flows/ideation/agents/orchestrator/skills/spark/references/anti-bias.md +43 -0
  19. package/flows/ideation/agents/orchestrator/skills/spark/references/techniques/analogy.md +60 -0
  20. package/flows/ideation/agents/orchestrator/skills/spark/references/techniques/first-principles.md +56 -0
  21. package/flows/ideation/agents/orchestrator/skills/spark/references/techniques/index.yaml +76 -0
  22. package/flows/ideation/agents/orchestrator/skills/spark/references/techniques/inversion.md +52 -0
  23. package/flows/ideation/agents/orchestrator/skills/spark/references/techniques/questorming.md +57 -0
  24. package/flows/ideation/agents/orchestrator/skills/spark/references/techniques/random-word.md +35 -0
  25. package/flows/ideation/agents/orchestrator/skills/spark/references/techniques/scamper.md +67 -0
  26. package/flows/ideation/agents/orchestrator/skills/spark/references/techniques/what-if.md +55 -0
  27. package/flows/ideation/agents/orchestrator/skills/spark/templates/spark-bank.md.hbs +72 -0
  28. package/flows/ideation/commands/flame.md +43 -0
  29. package/flows/ideation/commands/forge.md +43 -0
  30. package/flows/ideation/commands/ideation.md +51 -0
  31. package/flows/ideation/commands/spark.md +43 -0
  32. package/flows/ideation/memory-bank.yaml +177 -0
  33. package/flows/ideation/quick-start.md +84 -0
  34. package/flows/ideation/shared/protocols/anti-bias.md +79 -0
  35. package/flows/ideation/shared/protocols/deep-thinking.md +92 -0
  36. package/flows/ideation/shared/protocols/diverge-converge.md +72 -0
  37. package/flows/ideation/shared/protocols/interaction-adaptation.md +88 -0
  38. package/lib/constants.js +5 -0
  39. package/lib/dashboard/fire/parser.js +0 -1
  40. package/lib/dashboard/tui/file-entries.js +5 -4
  41. package/package.json +1 -1
@@ -0,0 +1,52 @@
1
+ # Inversion Technique
2
+
3
+ **Origin**: Charlie Munger's "invert, always invert" principle; also found in de Bono's lateral thinking and Osborn's reversal prompters.
4
+
5
+ **Interaction type**: Generate — AI inverts assumptions, user reacts to the resulting ideas.
6
+
7
+ ## How It Works
8
+
9
+ 1. **State the goal** clearly
10
+ 2. **Invert it** — ask "how would I achieve the exact opposite?"
11
+ 3. **List the inversions** — what would guarantee failure, the worst experience, the opposite outcome?
12
+ 4. **Reverse each inversion** — the opposite of each failure mode is often a non-obvious success strategy
13
+
14
+ ## Inversion Patterns
15
+
16
+ ### Goal Inversion
17
+
18
+ - Goal: "Make onboarding fast" → Inverted: "How to make onboarding take forever?"
19
+ - Answers: No documentation, no buddy system, surprise requirements → Ideas: Pre-arrival portal, day-1 buddy auto-match, zero-surprise checklist
20
+
21
+ ### User Inversion
22
+
23
+ - Design for the opposite user: experts → beginners, individuals → teams, tech-savvy → tech-averse
24
+ - Forces empathy and reveals assumptions
25
+
26
+ ### Process Inversion
27
+
28
+ - Reverse the order: What if the last step came first?
29
+ - End-to-outcome: Start with the desired result and work backward
30
+ - Often reveals unnecessary steps
31
+
32
+ ### Value Inversion
33
+
34
+ - What if the biggest cost became the biggest feature?
35
+ - What if the bug became the selling point?
36
+ - Turns weaknesses into differentiators
37
+
38
+ ### Anti-Problem
39
+
40
+ - Instead of solving the problem, make it irrelevant
41
+ - Instead of reducing friction, make the friction delightful
42
+ - Reframe rather than fix
43
+
44
+ ## AI Application Notes
45
+
46
+ When using inversion internally:
47
+
48
+ 1. Pick the most interesting inversion pattern for the current topic
49
+ 2. Actually go through the full inversion (state goal → invert → list failure modes → reverse)
50
+ 3. The best ideas come from reversing *non-obvious* failure modes
51
+ 4. Present the resulting ideas without explaining the inversion process
52
+ 5. Excellent for batch #2+ when initial ideas feel too "safe"
@@ -0,0 +1,57 @@
1
+ # Questorming Technique
2
+
3
+ **Origin**: Hal Gregersen's "Question Burst" methodology; also related to Osborn's principle of exploring the problem space before solving.
4
+
5
+ **Interaction type**: Co-build — AI generates questions, user identifies the most important ones, AI builds ideas from those.
6
+
7
+ ## How It Works
8
+
9
+ 1. **State the topic** without any solutions in mind
10
+ 2. **Generate questions only** — no answers allowed during this phase
11
+ 3. **Aim for 15-20 questions** in rapid succession
12
+ 4. **Categorize** — which questions challenge assumptions? Which reframe the problem?
13
+ 5. **Select the most provocative questions** — these become the seed for new ideas
14
+ 6. **Generate ideas** from the selected questions
15
+
16
+ ## Question Types
17
+
18
+ ### Assumption-Challenging
19
+
20
+ - Why do we assume [X] is necessary?
21
+ - What if [commonly accepted truth] were false?
22
+ - Who said this has to be done by [conventional actor]?
23
+
24
+ ### Scope-Shifting
25
+
26
+ - What if we zoom out 10x — what's the bigger problem?
27
+ - What if we zoom in 10x — what's the specific pain point?
28
+ - What would this look like from the customer's customer's perspective?
29
+
30
+ ### Stakeholder Questions
31
+
32
+ - Who benefits from the current broken state?
33
+ - Who would lose if we solved this perfectly?
34
+ - Who has already solved this in a different context?
35
+
36
+ ### Temporal Questions
37
+
38
+ - Why hasn't this been solved yet?
39
+ - What will make this irrelevant in 5 years?
40
+ - What had to change for this to become solvable now?
41
+
42
+ ### Provocative Questions
43
+
44
+ - What's the most expensive possible solution? The cheapest?
45
+ - What would a competitor do with this opportunity?
46
+ - What would a child suggest?
47
+
48
+ ## AI Application Notes
49
+
50
+ When using questorming internally:
51
+
52
+ 1. Generate a burst of 8-10 questions about the topic
53
+ 2. Present 3-5 of the most provocative ones to the user
54
+ 3. Ask: "Which of these feels most important?" (the one elicit moment)
55
+ 4. If user doesn't engage, pick the most provocative question yourself (ai_fallback)
56
+ 5. Generate ideas seeded from the selected question(s)
57
+ 6. Best used when the problem space feels unclear or when the user says "I'm not sure what I want"
@@ -0,0 +1,35 @@
1
+ # Random Word Technique
2
+
3
+ **Origin**: Edward de Bono's lateral thinking toolkit. Forces connections between unrelated concepts.
4
+
5
+ **Interaction type**: Generate — AI selects random stimulus and forces connections.
6
+
7
+ ## How It Works
8
+
9
+ 1. **Select a random concept** from an unrelated domain (not a literal random word — pick a vivid, concrete thing)
10
+ 2. **List its attributes** — what makes it interesting, how it works, what it's known for
11
+ 3. **Force connections** — map each attribute to the ideation topic
12
+ 4. **Develop the strongest connections** into full ideas
13
+
14
+ ## Examples of Forcing Connections
15
+
16
+ **Topic**: Improving employee onboarding
17
+ **Random concept**: Coral reef
18
+
19
+ | Coral Reef Attribute | Forced Connection |
20
+ |---------------------|-------------------|
21
+ | Self-organizing ecosystem | Onboarding that self-organizes based on new hire's role and interests |
22
+ | Symbiotic relationships | Pair each new hire with a "symbiont" — someone from a different team |
23
+ | Builds slowly, lasts centuries | First-week foundations that compound over the entire tenure |
24
+ | Bleaches under stress | Early warning system when onboarding overwhelms |
25
+ | Attracts diverse species | Make onboarding a magnet event that existing employees want to attend |
26
+
27
+ ## AI Application Notes
28
+
29
+ When using random-word internally:
30
+
31
+ 1. Pick concepts from **distant domains** — nature, games, history, architecture, music
32
+ 2. The more unrelated the concept, the more novel the connections
33
+ 3. Generate at least 5 attribute-connections, then pick the 2-3 most surprising
34
+ 4. Present only the resulting ideas — never mention "random word" or the stimulus process
35
+ 5. This technique is excellent for breaking fixation when ideas are clustering
@@ -0,0 +1,67 @@
1
+ # SCAMPER Technique
2
+
3
+ **Origin**: Bob Eberle, building on Alex Osborn's idea prompter checklists from *Applied Imagination* (1953).
4
+
5
+ **Interaction type**: Generate — AI applies transformations, user reacts.
6
+
7
+ ## The Seven Operators
8
+
9
+ ### S — Substitute
10
+
11
+ What can be substituted? Different materials, people, processes, components, approaches?
12
+
13
+ - Replace one element with something unexpected
14
+ - Swap the medium, channel, or context
15
+
16
+ ### C — Combine
17
+
18
+ What can be combined? Blend two ideas, merge functions, mix purposes?
19
+
20
+ - Combine features from different domains
21
+ - Merge two user needs into one solution
22
+
23
+ ### A — Adapt
24
+
25
+ What can be adapted from elsewhere? What analogies apply? What else is like this?
26
+
27
+ - Borrow solutions from other industries
28
+ - Adapt natural processes to the problem
29
+
30
+ ### M — Modify (also: Magnify / Minimize)
31
+
32
+ What can be changed? Size, shape, color, meaning, frequency, intensity?
33
+
34
+ - Make it 10x bigger or smaller
35
+ - Change the speed, frequency, or intensity
36
+ - Alter the form factor entirely
37
+
38
+ ### P — Put to Other Use
39
+
40
+ Can this serve a different purpose? New contexts? New users? New markets?
41
+
42
+ - Repurpose for a completely different audience
43
+ - Use the byproduct as the main product
44
+
45
+ ### E — Eliminate
46
+
47
+ What can be removed? Simplify? What's non-essential?
48
+
49
+ - Remove the most complex component — what happens?
50
+ - Strip to the absolute minimum viable version
51
+
52
+ ### R — Reverse (also: Rearrange)
53
+
54
+ What if the order were reversed? What if roles swapped? What if inside-out?
55
+
56
+ - Reverse the workflow
57
+ - Let the user become the provider
58
+ - Flip the value proposition
59
+
60
+ ## AI Application Notes
61
+
62
+ When using SCAMPER internally:
63
+
64
+ 1. Pick 2-3 operators per batch (not all 7 — that produces too-similar ideas)
65
+ 2. Apply each operator to a **different domain** from the domain wheel
66
+ 3. Make the result vivid and specific, not abstract
67
+ 4. Never tell the user you're "using SCAMPER" — just present the transformed ideas
@@ -0,0 +1,55 @@
1
+ # What-If Scenarios Technique
2
+
3
+ **Origin**: Assumption-challenging methodology found across creative problem solving traditions.
4
+
5
+ **Interaction type**: Generate — AI constructs scenarios, user reacts to the most interesting ones.
6
+
7
+ ## How It Works
8
+
9
+ 1. **Identify core assumptions** about the topic (explicit and implicit)
10
+ 2. **Challenge each assumption** with a "what if" that negates or transforms it
11
+ 3. **Explore the scenario** — what would the world look like if this were true?
12
+ 4. **Extract ideas** from the alternate reality
13
+
14
+ ## Types of What-If
15
+
16
+ ### Constraint Removal
17
+
18
+ - What if money were no object?
19
+ - What if there were no technical limitations?
20
+ - What if you had unlimited time?
21
+ - What if there were no regulations?
22
+
23
+ ### Constraint Inversion
24
+
25
+ - What if the user had to pay NOT to use it?
26
+ - What if it only worked for 5 minutes per day?
27
+ - What if it required 100 people to operate?
28
+
29
+ ### Context Shift
30
+
31
+ - What if this existed in 1920? In 2120?
32
+ - What if this were designed for children? For astronauts? For animals?
33
+ - What if this operated underwater? In zero gravity? In complete darkness?
34
+
35
+ ### Scale Shift
36
+
37
+ - What if 1 billion people used this simultaneously?
38
+ - What if it were the size of a building? A molecule?
39
+ - What if it lasted 100 years? 100 milliseconds?
40
+
41
+ ### Role Reversal
42
+
43
+ - What if the customer built it and the company used it?
44
+ - What if the problem were actually the solution?
45
+ - What if success and failure metrics were swapped?
46
+
47
+ ## AI Application Notes
48
+
49
+ When using what-if internally:
50
+
51
+ 1. Identify 2-3 non-obvious assumptions about the topic
52
+ 2. Pick the most interesting what-if type for each assumption
53
+ 3. Briefly explore the scenario (2-3 sentences), then extract a concrete idea
54
+ 4. Present only the ideas — mention the "what if" framing only if it makes the idea clearer
55
+ 5. Best used when ideas are getting too conventional or practical
@@ -0,0 +1,72 @@
1
+ ---
2
+ session: {{session_id}}
3
+ topic: "{{topic}}"
4
+ phase: spark
5
+ created: {{created}}
6
+ total_ideas: {{total_ideas}}
7
+ total_batches: {{total_batches}}
8
+ favorites_count: {{favorites_count}}
9
+ domains_covered: {{domains_covered}}
10
+ ---
11
+
12
+ # Spark Bank: {{topic}}
13
+
14
+ > {{total_ideas}} ideas generated across {{total_batches}} batches, covering {{domains_covered}}/12 domains.
15
+
16
+ ---
17
+
18
+ ## Favorites
19
+
20
+ {{#each favorites}}
21
+ ### {{id}} — {{title}}
22
+
23
+ {{description}}
24
+
25
+ *Domain: {{domain}}*
26
+
27
+ {{/each}}
28
+
29
+ {{#unless favorites}}
30
+ *No favorites selected yet.*
31
+ {{/unless}}
32
+
33
+ ---
34
+
35
+ ## All Ideas by Theme
36
+
37
+ {{#each themes}}
38
+ ### {{name}}
39
+
40
+ {{#each ideas}}
41
+ **{{id}}** — **{{title}}**
42
+ {{description}}
43
+ {{#if is_favorite}}*(favorite)*{{/if}}
44
+ *Domain: {{domain}}*
45
+
46
+ {{/each}}
47
+
48
+ {{/each}}
49
+
50
+ ---
51
+
52
+ ## Domain Coverage
53
+
54
+ | Domain | Ideas | Coverage |
55
+ |--------|-------|----------|
56
+ {{#each domain_stats}}
57
+ | {{name}} | {{count}} | {{bar}} |
58
+ {{/each}}
59
+
60
+ ---
61
+
62
+ ## Session Stats
63
+
64
+ - **Batches generated**: {{total_batches}}
65
+ - **Total ideas**: {{total_ideas}}
66
+ - **Favorites**: {{favorites_count}}
67
+ - **Techniques used**: {{techniques_used}}
68
+ - **Provocations injected**: {{provocations_count}}
69
+
70
+ ---
71
+
72
+ *Generated by specsmd Ideation Flow — Spark skill*
@@ -0,0 +1,43 @@
1
+ ---
2
+ description: Flame - multi-perspective idea evaluation and scoring
3
+ ---
4
+
5
+ # Activate Flame
6
+
7
+ **Command**: `/specsmd-flame`
8
+
9
+ ---
10
+
11
+ ## Activation
12
+
13
+ You are now the **Ideation Orchestrator** in **Flame mode** for specsmd.
14
+
15
+ **IMMEDIATELY** read and adopt the persona from:
16
+ → `.specsmd/ideation/agents/orchestrator/agent.md`
17
+
18
+ Then execute the Flame skill:
19
+ → `.specsmd/ideation/agents/orchestrator/skills/flame/SKILL.md`
20
+
21
+ ---
22
+
23
+ ## Critical First Steps
24
+
25
+ 1. **Read Config**: `.specsmd/ideation/memory-bank.yaml`
26
+ 2. **Read Interaction Protocol**: `.specsmd/ideation/shared/protocols/interaction-adaptation.md`
27
+ 3. **If Spark Bank exists**: Load it and begin evaluation
28
+ 4. **If ideas provided directly**: Accept them and begin evaluation
29
+ 5. **If nothing**: Ask "Which ideas would you like to evaluate?"
30
+
31
+ ---
32
+
33
+ ## Routing Targets
34
+
35
+ - **Back to Orchestrator**: `/specsmd-ideation`
36
+ - **To Spark**: `/specsmd-spark`
37
+ - **To Forge**: `/specsmd-forge`
38
+
39
+ ---
40
+
41
+ ## Begin
42
+
43
+ Activate now. Read the Flame skill and start evaluating ideas.
@@ -0,0 +1,43 @@
1
+ ---
2
+ description: Forge - shape top ideas into actionable concept briefs
3
+ ---
4
+
5
+ # Activate Forge
6
+
7
+ **Command**: `/specsmd-forge`
8
+
9
+ ---
10
+
11
+ ## Activation
12
+
13
+ You are now the **Ideation Orchestrator** in **Forge mode** for specsmd.
14
+
15
+ **IMMEDIATELY** read and adopt the persona from:
16
+ → `.specsmd/ideation/agents/orchestrator/agent.md`
17
+
18
+ Then execute the Forge skill:
19
+ → `.specsmd/ideation/agents/orchestrator/skills/forge/SKILL.md`
20
+
21
+ ---
22
+
23
+ ## Critical First Steps
24
+
25
+ 1. **Read Config**: `.specsmd/ideation/memory-bank.yaml`
26
+ 2. **Read Interaction Protocol**: `.specsmd/ideation/shared/protocols/interaction-adaptation.md`
27
+ 3. **If Flame Report exists**: Load shortlisted ideas and begin shaping
28
+ 4. **If ideas provided directly**: Accept them and begin shaping
29
+ 5. **If nothing**: Ask "Which ideas would you like to develop into concepts?"
30
+
31
+ ---
32
+
33
+ ## Routing Targets
34
+
35
+ - **Back to Orchestrator**: `/specsmd-ideation`
36
+ - **To Spark**: `/specsmd-spark`
37
+ - **To Flame**: `/specsmd-flame`
38
+
39
+ ---
40
+
41
+ ## Begin
42
+
43
+ Activate now. Read the Forge skill and start shaping concepts.
@@ -0,0 +1,51 @@
1
+ ---
2
+ description: Ideation Flow - creative idea generation, evaluation, and shaping
3
+ ---
4
+
5
+ # Activate Ideation Flow
6
+
7
+ **Command**: `/specsmd-ideation`
8
+
9
+ ---
10
+
11
+ ## Activation
12
+
13
+ You are now the **Ideation Orchestrator** for specsmd.
14
+
15
+ **IMMEDIATELY** read and adopt the persona from:
16
+ → `.specsmd/ideation/agents/orchestrator/agent.md`
17
+
18
+ ---
19
+
20
+ ## Critical First Steps
21
+
22
+ 1. **Read Config**: `.specsmd/ideation/memory-bank.yaml`
23
+ 2. **Check Sessions**: Look for active sessions in `.specs-ideation/sessions/`
24
+ 3. **Route**:
25
+ - Topic provided → jump to Spark skill
26
+ - Ideas provided → jump to Flame skill
27
+ - Concepts provided → jump to Forge skill
28
+ - Nothing → ask "What would you like to explore ideas about?"
29
+
30
+ ---
31
+
32
+ ## Your Skills
33
+
34
+ - **Spark**: `.specsmd/ideation/agents/orchestrator/skills/spark/SKILL.md` → Generate ideas
35
+ - **Flame**: `.specsmd/ideation/agents/orchestrator/skills/flame/SKILL.md` → Evaluate ideas
36
+ - **Forge**: `.specsmd/ideation/agents/orchestrator/skills/forge/SKILL.md` → Shape concepts
37
+
38
+ ---
39
+
40
+ ## Shared Protocols
41
+
42
+ - **Anti-Bias**: `.specsmd/ideation/shared/protocols/anti-bias.md`
43
+ - **Deep Thinking**: `.specsmd/ideation/shared/protocols/deep-thinking.md`
44
+ - **Diverge-Converge**: `.specsmd/ideation/shared/protocols/diverge-converge.md`
45
+ - **Interaction Adaptation**: `.specsmd/ideation/shared/protocols/interaction-adaptation.md`
46
+
47
+ ---
48
+
49
+ ## Begin
50
+
51
+ Activate now. Read your agent definition and start ideating.
@@ -0,0 +1,43 @@
1
+ ---
2
+ description: Spark - rapid idea generation with cross-domain diversity
3
+ ---
4
+
5
+ # Activate Spark
6
+
7
+ **Command**: `/specsmd-spark`
8
+
9
+ ---
10
+
11
+ ## Activation
12
+
13
+ You are now the **Ideation Orchestrator** in **Spark mode** for specsmd.
14
+
15
+ **IMMEDIATELY** read and adopt the persona from:
16
+ → `.specsmd/ideation/agents/orchestrator/agent.md`
17
+
18
+ Then execute the Spark skill:
19
+ → `.specsmd/ideation/agents/orchestrator/skills/spark/SKILL.md`
20
+
21
+ ---
22
+
23
+ ## Critical First Steps
24
+
25
+ 1. **Read Config**: `.specsmd/ideation/memory-bank.yaml`
26
+ 2. **Read Anti-Bias Protocol**: `.specsmd/ideation/shared/protocols/anti-bias.md`
27
+ 3. **Read Deep Thinking Protocol**: `.specsmd/ideation/shared/protocols/deep-thinking.md`
28
+ 4. **If topic provided**: Jump straight to generating the first batch
29
+ 5. **If no topic**: Ask "What would you like to explore ideas about?" — then generate immediately
30
+
31
+ ---
32
+
33
+ ## Routing Targets
34
+
35
+ - **Back to Orchestrator**: `/specsmd-ideation`
36
+ - **To Flame**: `/specsmd-flame`
37
+ - **To Forge**: `/specsmd-forge`
38
+
39
+ ---
40
+
41
+ ## Begin
42
+
43
+ Activate now. Read the Spark skill and start generating ideas.