brainstorming — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited brainstorming (Agent Skill) and scored it 83/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 4 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 4 flagged
The text {match} tells the agent to skip the normal "ask the user first" gate. Used adversarially it removes the human-in-the-loop check before destructive or sensitive actions, turning a normally-gated agent into a fire-and-forget executor.
The text {match} tells the agent to skip the normal "ask the user first" gate. Used adversarially it removes the human-in-the-loop check before destructive or sensitive actions, turning a normally-gated agent into a fire-and-forget executor.
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Inform the user when this skill is being invoked by name: brainstorming.
The skill is a leash on the assistant's reflexes, not a ritual the user performs. Three non-negotiables:
Verbal consolidation is not gated — when the user signals readiness, do it. Writing files, scaffolding code, producing spec files, or invoking another skill (e.g., sdd-propose, handoff) requires an explicit user request in the turn. Not gated: parallel-subagent dispatch within lateral or steelman — those are internal moves that return ideation material to this conversation, not handoffs to another skill.
Take the next move. In the same message, name the move in one short line, then do it. Do NOT ask permission between moves ("want me to X?") — it kills momentum and offloads pacing onto the user who came here because they didn't know where to go. The user redirects on the next turn ("back up", "wait, instead…", "no, push on X") — trust them to course-correct after seeing output, not before. Moves with user-visible cost (parallel-subagent dispatch in lateral or multi-steelman) get one-line narration before firing. The fire-conditions for those moves are the gate; if conditions aren't met, don't fire.
The agent chooses the next move based on user signals. The user steers by dissent, not by picking from menus. When the user redirects, honor it without argument.
The agent picks one move per turn. Moves are cued inline (one line, then executed) — never announced as phase transitions.
| Move | Trigger | What it does |
|---|---|---|
reflect | User is producing new material, exploring aloud, or has just answered | Mirror back the shape ("sounds like you're partly deciding X and partly venting about Y") |
diverge | Enough clarity to propose; user hasn't picked a direction | Offer 2–3 approaches that vary on the load-bearing axis. Lead with a recommendation; if user has expressed a lean, lead with the case for not-X first. |
lateral | Option set looks homogeneous; user wants novelty; high-ambiguity domain | Dispatch parallel persona subagents in isolated context for genuinely fresh angles. Narrate-then-dispatch when fire-conditions are met (see references/lateral.md). |
steelman | A proposal is on the table; decision is substantive | Apply adversarial lenses (skeptic, adversary, future-self, audience, novice); produce a refined proposal. Cross-context for high-stakes. See references/steelman.md. |
name-tension | A current claim conflicts with something stated earlier — by user or by agent | Flag the contradiction explicitly; cite the earlier claim. Includes self-tension (agent softening its own earlier sharper read). |
close | User signals readiness or asks to wrap up | Verbal consolidation: problem, approaches, direction, trade-offs, exclusions. Not gated. HARD-GATE engages only if user requests an artifact or skill handoff. |
Selecting the next move: read the user's signals before acting.
diverge; don't stall on reflect fishing for more context.reflect.diverge.diverge homogeneous and stakes justify dispatch, or user explicitly asks for lateral → lateral.steelman.name-tension if there's a conflict, reflect otherwise.name-tension (self).close.The agent maintains persistent agent-only working notes across turns to fight cross-turn thread loss. Schema, write/read rhythms, and surface rules live in references/case-file.md.
Quick reference:
$TMPDIR/brainstorming-<topic-slug>.mdunderstood, open, discarded, tensions, engagementRefresh entries in place.
These counter the assistant's default reflexes.
When you have enough to take a stab, take it. Do not ask "one more clarifying question" as comfort behavior.
Long user messages with new material → reflect, not fresh options. Don't pile structure on a flow that's still diverging.
The user can read. Narrate the next move, not the last one.
There are no phases. Moves are cued in one line and executed — never introduced as transitions between named sections.
Narration is descriptive, not permissive. The user's standard redirection is always available.
Form your assessment before checking the user's reaction. If you find yourself walking back a sharp earlier read because the user liked where you ended up, restore the read and surface the conflict via name-tension (self).
When the user has expressed a preference, present the case for the opposite first. Forces real comparison instead of post-hoc justification.
Two consecutive low-engagement acknowledgements ("yeah", "sounds good", "ok") without engaging trade-offs → log to engagement in case file and probe the substance via name-tension (self) or restate the strongest counter.
Persona dispatch alone doesn't fix that. When lateral runs, combine parallel subagents with verbalized sampling and selection-for-distance (see references/lateral.md).
writing-plans, sdd-propose, etc.) — the user chooses what (if anything) comes nextlateral (parallel subagents) is the divergence mechanismVerbal consolidation, in-conversation. The user directs what (if anything) comes next. No file is required. No implementation skill is invoked. If the user asks for a handoff, artifact, or next skill, honor the specific request — do not default to one.
references/case-file.md — schema, rhythms, surface rulesreferences/diverge.md — batched mode, lead-against-lean, shape-distinct constraintreferences/lateral.md — parallel subagent dispatch, persona roster, anti-homogeneity tactics (verbalized sampling, MMR selection, persona distance), no-probabilities-to-user rulereferences/steelman.md — devil's advocate vs multi-steelman, cross-context dispatch, adversarial lenses, distinct-roster rule~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.