---
title: Brainstorm Engine — Skill Skeleton
type: artifact
level: L2
status: live
revision: 1
updated: 2026-08-17
systemVersion: 4.2
tags: [download, brainstorming, decision, template, tooling, governance]
rating: 7.20
ratingAxes: useful 8 · evidence 7 · pull 7 · original 7 · form 7
ratingKind: derived
source: derived from a live skill file, generalised for reuse
---

# Brainstorm Engine — Skill Skeleton

_Written 2026-08-17 · last verified 2026-08-17 · system v4.2 · live_

**TL;DR** — A skill definition for structured brainstorming — generate first, score second, audit for bias third, then force a same-session pick. Built after measuring that a looser version of this process produced 604 ideas across 9 runs and converted exactly zero into a chosen next step. The fix wasn't a better idea generator; it was making the audit step and the final choice impossible to silently skip.

## Download

**[⬇ brainstorm-skill.zip](/files/brainstorm-skill.zip)** — the whole thing, 5 files, no dependencies beyond Python 3.7.

Or read the files individually: [SKILL.md](/files/brainstorm-skill/SKILL.md) · [verify_scores.py](/files/brainstorm-skill/scripts/verify_scores.py) · [criteria-sets.md](/files/brainstorm-skill/references/criteria-sets.md) · [README.md](/files/brainstorm-skill/README.md) · [example run](/files/brainstorm-skill/example/demo_state.json)

Unzip it and run this — it works with no setup:

```bash
python scripts/verify_scores.py example/demo_state.json
```

You get a ranking stamped `⚠ PRELIMINARY`, because the bias audit has not run. Then try to clear that flag dishonestly:

```bash
python scripts/verify_scores.py example/demo_state.json --bias-done
# REFUSED: bias_audit.findings is empty.
# exit code 2
```

That refusal is the entire idea. Everything else is ordinary brainstorming structure.

## What it is

A skill definition for a divergence → evaluation → bias-audit → decision pipeline. It exists because a version of this process without the enforcement described below ran 9 times, produced 604 ideas total, and ended in a real decision **zero** times.

```markdown
---
name: brainstorm
description: Divergence-then-evaluation engine for open problems.
  Trigger: "give me options for X", "what are all the ways we could Y".
  NOT FOR: choosing between known variants (→ a decision/vote skill),
  refining one existing output (→ an iteration skill).
---

# BRAINSTORM

## Phases (gated, resumable)
F0  Scope: size (15 / 40 / 100+ ideas), criteria set, weights
F1  Divergence: generate WITHOUT scoring — mixing the two kills variety
F2  Evaluation: score on fixed axes, always via a verification script,
    never by hand — hand-scored runs had measurable arithmetic errors
F3  Bias audit — MANDATORY, technically enforced (see below)
F4  Consolidation: merge into initiatives, re-score the whole, not
    the average of the parts
F5  End-of-run: force a same-session pick, 3-5 items, numbers suffice

## Hard gate
Any ranked output produced before F3 (bias audit) completes carries
a visible ⚠ PRELIMINARY watermark. The watermark clears only when the
audit script has actually run — not when the model claims it did.
```

## How to use

The two mechanisms worth copying even outside this exact tool:

**The watermark.** Declaring a step "mandatory" in an instruction file is a request the model can quietly skip under time pressure — this happened on 4 of 9 runs before the gate existed. A watermark the tool cannot remove itself, tied to a script actually executing, converts a request into a gate. The difference only shows up under pressure, which is exactly when it matters.

**The forced pick.** A ranked list is not a decision. Ending every run with "pick 3–5 now, or tell me explicitly when you will" turned a 0% follow-through rate into a measurable one — the deferral became visible instead of silent.

## What to fill in

Swap the criteria axes for your domain (impact/effort/risk is a reasonable default). Point the verification script at wherever your run state gets saved — the requirement is only that scoring happens in code, not in the model's head, since that's the step that had the errors.

## Where the numbers come from

The 604/0 and 5-of-9 figures are from this system's own run history, written up in
**[Dev Log #006 — The Brainstorm Tool That Ran On Itself](/log/devlog-006)**.

## License

MIT.
