Skip to content
Skill Authoring
Skill

/generative-thinking

Break out of a locked problem frame by picking one disciplined move — reframe, provocation (Po), random stimulus, SCAMPER, inversion, structured analogy, constraint play, or family traversal — and committing to it before evaluating. Use when stuck, when options feel narrow or

BOOST
From plugin
claude-skills
15498 skills1 agent
Install
$ npx -y skills add oaustegard/claude-skills --skill generative-thinking --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/generative-thinking

Context preview

The summary Claude sees to decide when to auto-load this skill.

Break out of a locked problem frame by picking one disciplined move — reframe, provocation (Po), random stimulus, SCAMPER, inversion, structured analogy, constraint play, or family traversal — and committing to it before evaluating. Use when stuck, when options feel narrow or

SKILL.md

generative-thinking.SKILL.md
name: generative-thinking
description: Break out of a locked problem frame by picking one disciplined move — reframe, provocation (Po), random stimulus, SCAMPER, inversion, structured analogy, constraint play, or family traversal — and committing to it before evaluating. Use when stuck, when options feel narrow or obvious, when iterations produce variations of the same idea, or when the user says "widen this", "break out of", "think differently", "I'm stuck", "feels too obvious", "stress-test the framing", "what am I missing", or holds two related examples and asks what lies between or beyond them. Complements challenging (which evaluates) and convening-experts (which synthesizes viewpoints); this skill generates distance, not judgment.
metadata:
  version: 0.3.0

Generative Thinking — One Move, Committed

Fixation is the default state. When a generator (human or LLM) has been working on a problem, attention concentrates on the current framing and subsequent ideas tend to be local variations on it. This skill is the interrupt: spend one move stepping sideways, then resume.

The discipline matters more than the move. Pick ONE technique per invocation, run it without second-guessing, and produce explicit reframings or candidate entry points — not a brainstorm list in the same frame.

When to reach for this

Claude activates this skill when:

  • The last 2+ iterations are variations of one idea (fixation signal)
  • The user says "widen this", "think bigger", "I'm stuck", "what am I missing", "too narrow", "break out of"
  • A problem is framed as a binary ("X or Y") and neither option is good
  • An agent loop is producing convergent variations — suspect the frame, not the search depth
  • The user explicitly wants a pre-mortem on the *framing* (not the plan) before committing

Do NOT activate this skill as a default before every consequential task — fixation is the trigger, not stakes. If the current frame is working, let it work.

Core discipline

Three rules that apply across every move below. Violations make the output ideation-flavored but structurally identical to what came before.

1. **Generation before evaluation.** De Bono's core distinction: lateral thinking cares about *movement value*, not truth value. A provocation is not a proposal. Evaluate only after the move has produced 3+ candidate framings. 2. **One move, committed.** Do not rotate through five techniques as a menu. Pick the move that matches the diagnosis, execute it fully, surface what shook loose, then stop. Menus produce noise; commitment produces distance. 3. **Output framings, not ideas.** The deliverable of a generative move is usually *a new statement of the problem* or *a new entry angle*, not another solution candidate inside the old frame. If the output could have been produced without the move, the move didn't fire.

**Stop condition.** Stop when the move has produced 3+ non-trivial framings, or a single framing that reorganizes the problem (one sharp surprise beats five adjacent). Do not keep generating because the list looks short — volume is not the product.

**The fire test.** After every move, ask: *could this output have been produced without the move?* If yes, the move did not fire. Either commit harder (push the provocation further, make the reframe more aggressive, re-roll the random word, invert on a different axis) or the move was mismatched to the stuck-pattern — re-diagnose and pick the better-matched move. Re-diagnosis after a miss is not menu-rotation; menu-rotation is cycling through techniques without commitment. One move at a time, each one fully, and if it misses, diagnose why before the next.

**Tail sift.** The fire test with a number attached. Post-trained models carry a typicality bias: asked for one candidate they return the modal one, and asked for a list they return the top-k modes — a bestseller list, not a sample (Zhang et al. 2025). The 3 framings a move produces are subject to this too. So before evaluating, over-generate — 5 to 8 candidates rather than 3 — and write next to each one the probability, 0 to 1, that a generator still inside the old frame would have produced it. Drop everything above the threshold; the remainder is the move's actual output. Start the threshold at 0.3 and lower it if the survivors still read as adjacent. Writing the number is the mechanism, not decoration: prompts that request a distribution with verbalized probabilities recover diversity that prompts for instances or lists do not, quality holds when the candidates are reasoned rather than listed, and lowering the stated threshold moves output further into the tail. The gain scales with model capability; on a small model the sift adds burden without adding distance.

Diagnostic → Move

Match the stuck-pattern to the move. When unsure, default to **Reframe**.

| If the stuck-pattern is… | Reach for… | |---|---| | Framing feels forced ("must be X or Y") | **Reframe** — change the verb, subject, scope, or level | | Generator keeps returning near-duplicates | **Random stimulus** — force an unrelated concept into the frame | | Obvious answer is wrong but you can't see past it | **Provocation (Po)** — state something impossible, extract movement | | Iterating on an existing artifact | **SCAMPER** — seven structured transforms | | Stuck on "how do we make X succeed?" | **Inversion** — ask "how do we guarantee X fails?" then negate | | Problem is defined entirely in one domain's vocabulary | **Structured analogy** — map objects and relations by function into a distant domain, search there | | Every solution is blocked by a constraint | **Constraint play** — remove it ("assume magic"), or add an absurd one ("must fit in a tweet") | | Two known examples, no theory of the space between/beyond them | **Family traversal** — name the shared family, walk it to its limits |

Reframe

The problem-as-stated is rarely the problem-to-solve. Mutate the sentence:

  • Change the **verb**: "reduce X" → "redistrib
Read more
Ships withclaude-skills

A collection of Claude skills distributed as a Claude Code plugin marketplace. Skills are primarily designed for the Claude.ai PaaS skill compute environment; mileage will vary if used as Claude Code Agent Skills.

Get the whole plugin

Other skills on claude-skills.