agentsclimarketplace

Ideate

Skill mthines/agent-skills/skills/analysis/ideate

Generates, stress-tests, and iteratively evolves ideas for a stated problem — product concepts, features, solution options, strategies — using research-grounded divergent/convergent agent loops: parallel persona generators (nominal-group simulation), independent judges scoring novelty, feasibility, impact, and fit on separate axes, and bounded recombination rounds gated by /confidence. Auto-triages run depth (quick in-context vs deep multi-agent; override with quick|deep). Use when brainstorming, exploring solution options, or pressure-testing a concept. Triggers on "brainstorm", "give me ideas", "help me come up with", "ideate on", "what could we build", "/ideate".From its SKILL.md

Install
npx -y skills add mthines/agent-skills --skill ideate

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 8 stars8 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its file declares

Copied from the file, not written here

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

13.4 KB, as published. Nobody here has run it

Ideate

Turns a problem statement into a small set of validated, evolved ideas by simulating a nominal group of independent generators, scoring with independent judges, and breeding the winners — instead of asking one context for a list and polishing it.

This SKILL.md is a thin index. Phase procedures live in rules/*.md and load on demand. The evidence behind every numerical default lives in references/ideation-research.md — section references below (§) point there, and its defaults tables flag which numbers are study values vs the skill's own operationalizations.

Contents


Mode Detection

Parse $ARGUMENTS:

ModeDefaultTrigger
quickquick token, or auto-triage says small.
deepdeep token, or auto-triage says open-ended.
autoyesNo mode token — run the depth triage table below.
FlagDefaultMeaning
--n <count>unsetOptional cap on the Lead-finalists list. Unset by default — the finalist count is emergent from the quality bar (see idea-scoring.md § Selection rules). --n only narrows; it never manufactures finalists the bar did not admit.
--no-framingoffSkip Phase 1 (problem is already well-framed).

Everything else in $ARGUMENTS is the problem statement. If it is missing, ask for it — never ideate on a guessed problem.

Depth triage (auto mode)

First match wins:

#SignalDepth
1User asks for thorough / extensive / "really new" ideas, or the problem combines ≥ 2 domains ("X meets Y").deep
2Outcome is a product, business, strategy, or roadmap decision.deep
3Problem is a local decision: naming, small feature shape, workaround, single component.quick
4User is mid-conversation and wants options fast ("any ideas?", "what do you think?").quick
5Unsure.quick, and name the escalation path: "run /ideate deep <problem> for the full pipeline".

Cost expectation: a deep run with a typical 2–4-idea finalist band dispatches ~17 subagents (2 bursts × 5 generators, 1 pool judge, 1 breeder, 1 variant judge, 3 panel judges, 1 pre-mortem) — prefer quick for casual or budget-sensitive asks. A richer pool that admits more finalists adds only panel-judge cost, not generation cost.


Workflow

PhaseNameRule fileGate
0Intake & triage(inline below)Problem restated in one sentence; success criterion named; depth chosen; lessons read.
1Frame(inline below)3–5 "How Might We" framings at different widths; one selected and logged.
2Divergerules/divergence.mdPool ≥ 12 (quick) / ≥ 25 (deep) unique ideas; zero evaluation happened during generation.
3Scorerules/idea-scoring.mdEvery pooled idea scored on 4 independent axes by a non-generator judge.
4Evolverules/evolution-loop.md≤ 3 rounds; stopped on flat external scores, never on self-assessed improvement.
5Validaterules/idea-scoring.md § Finalist validationEvery finalist has an executability probe; confidence(analysis) ≥ 70 on the recommendation.
6Reporttemplates/ideation-report.mdReport emitted; finalist count reflects the quality bar; high-novelty wildcard included; "Ideas worth revisiting" filled; verdict question asked.
7Learnrules/self-improvement-loop.mdLessons written — mechanics only, never idea content.

Phase 0 — Intake & triage

  1. Read lessons (advisory input for mechanics only — see the hard invariant under Self-Improvement). Narrow-to-broad LoreKit fan-out; skips silently if memory.* is not connected:

    memory.list { scope: "repo::{owner}/{repo}", tags: ["loop::ideate-lessons"], limit: 50 }
    memory.list { scope: "global",               tags: ["loop::ideate-lessons"], limit: 50 }
    
  2. Restate the problem in one sentence and name the success criterion — what makes an idea "good" here (cheapest, most novel, shippable this week, …).

  3. Run the depth triage table unless a mode token was given.

  4. If the user supplied seed ideas, add them to the pool unlabeled — judges must not know which ideas are the user's.

Phase 1 — Frame

Problem framing measurably shapes ideation breadth and direction (§2.5) — skip only with --no-framing.

  1. Generate 3–5 "How Might We" framings at deliberately different widths, from the literal ask to the underlying job-to-be-done — the width variation is the evidenced part (§2.5); the HMW phrasing is convention.
  2. Interactive session → ask the user to pick one (a single batched question). Autonomous or backgrounded → pick the framing one step wider than the literal ask, and log the choice in the report.

Quick vs deep

Aspectquickdeep
GenerationIn-context, 2 bursts × 8 ideas, operators rotated per burst.5 parallel persona subagents × 6 ideas per burst, ≥ 2 bursts (§1.4, §4.4).
Fixation guardOperator switch + "what has NOT been said yet" reseed (§1.5).Independent contexts — the structural fix (§4.3).
JudgingSeparate in-context pass with rubric, order-swapped pairwise.Fresh judge subagent; panel of 3 judges for finalists (§4.7).
Evolution≤ 1 round.≤ 3 rounds (§5.1).
ReportInline.Inline + written to .agent/ideate/<yyyy-mm-dd>-<slug>.md.

Composition

SkillWhenCall
confidencePhase 5, on the finalist recommendation.Skill("confidence", "analysis")
criticalDeep mode, top finalist (automatic); any finalist on request.Skill("critical", "analysis") — run inside a fresh subagent so the pre-mortem stays adversarial and the main context stays lean.
uxFinalists that are UI/UX or product-surface concepts.Skill("ux") as a lens on the finalist.
lorekit-memory (LoreKit memory.* tools)Phases 0 and 7.See rules/self-improvement-loop.md.

confidence is required; the others are optional — skip silently if not installed / not connected.


Core Principles

  1. Simulate a nominal group, not a meeting. Independent generation contexts, pooled afterwards — never one long list from one context (§1.2, §4.3).
  2. Strictly separate generation from evaluation. The one Osborn rule that survives scrutiny; no feasibility talk inside a generation pass (§3.1).
  3. Diversity comes from personas and prompts, not temperature. Temperature is a weak novelty lever with a coherence cost (§4.6).
  4. The judge is never the generator. Self-scoring amplifies self-bias per iteration (§4.7, §5.1).
  5. Protect novelty at selection. Default selection sacrifices originality for feasibility and performs near-randomly; always carry one high-novelty pick (§3.2).
  6. Gate finalists on quality, not quantity. The finalist count is emergent: report every idea that clears the admission bar, not a fixed top-3. A fixed count drops deserving ideas from a rich pool and pads a thin one (§3.2).
  7. Iterate by recombination across lineages, not polishing. Cap at 3 rounds; stop on flat external scores (§5.1–§5.3).
  8. The obvious ideas come first. Always run a second burst seeded with "what has NOT been said yet" (§1.5).
  9. Pre-execution novelty is inflated. Every finalist needs a concrete first-step probe before it is recommended (§4.2).

Self-Improvement

Two-tier loop, scope ideate-lessons — full contract in rules/self-improvement-loop.md, diagnostic surface in rules/diagnostic-surface.md.

Hard invariant: divergence runs lessons-blind. Lessons may inform mechanics — depth triage, operator effectiveness, judge calibration, stopping behavior — and must never seed, filter, or steer idea content. "What kinds of ideas the user tends to pick" is on the never-store list: it would entrench homogenization, the exact failure this skill exists to avoid.


Anti-patterns

  • One 30-idea list from a single context — within-context fixation makes the last 20 near-duplicates.
  • Scoring or feasibility talk during a generation pass.
  • Letting the generation context judge its own output.
  • Averaging the four axes into one number before selection, then picking the top-n — this silently discards every high-novelty idea.
  • Capping the report at a fixed 3–4 finalists regardless of how many ideas cleared the quality bar — the count is emergent, not a target.
  • Treating the "Ideas worth revisiting" section as a throwaway list — it must name why each near-miss missed and what would flip it; that is the inspiring part.
  • A 4th evolution round because it "still feels like it's improving" — self-assessed improvement is the signal that lies.
  • Storing user idea-taste as a lesson.

Definition of Done

  • Problem restated and success criterion named before any generation.
  • Generation and evaluation never co-occurred in one pass.
  • Pool met the unique-idea gate for the chosen depth.
  • Every finalist has all four axis scores, an executability probe, and the confidence gate result.
  • The finalist count reflects the quality bar, not a fixed target — every idea that cleared the admission bar is reported (or capped only by an explicit --n).
  • Report includes the high-novelty wildcard, the run stats (bursts, non-duplicate yield, evolution rounds, score trajectory), and an "Ideas worth revisiting" section that names, per near-miss, why it missed and what would flip it.
  • User verdict requested; lessons written per the loop contract.

Keep looking

Skills are one crate of 627,801. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.