Generated banner for Idea Refine
Generated logo for Idea Refine

Idea Refine

Addy OsmaniCommunityCreated by Addy Osmani

  • Skill
  • Content generator
  • Agent tooling
  • MIT
  • Low risk
  • Has scripts

From the author

Refines raw ideas into sharp, actionable concepts through structured divergent and convergent thinking. Use when an idea is still vague, when you need to stress-test assumptions before committing to a plan, or when you want to expand options before converging on one. Triggers on "ideate", "refine this idea", or "stress-test my plan".
— the description by Addy Osmani

AutoGineer summary

Written by AutoGineer from the skill’s own files, not by the author

Idea Refine acts as a collaborative thinking partner to transform vague concepts into concrete, actionable plans. It follows a three-phase process: divergent expansion to explore variations, convergent evaluation to stress-test assumptions, and final documentation to produce a structured markdown one-pager. The skill emphasizes focus, explicit trade-offs, and the identification of core assumptions to ensure ideas are viable before development begins.

What it does

  • Restates ideas into clear How Might We problem statements
  • Generates diverse variations using lenses like inversion and simplification
  • Clusters ideas into distinct directions for evaluation
  • Stress-tests concepts against user value, feasibility, and differentiation
  • Surfaces hidden assumptions and defines validation strategies
  • Produces a markdown one-pager containing scope, assumptions, and a Not Doing list

When to use it

  • When an idea is vague and requires shaping before planning
  • When you need to stress-test assumptions before committing to a direction
  • When you want to explore multiple options before converging on a solution
  • When you need to define clear boundaries for an MVP

Advantages

  • Forces clarity on target users and success criteria
  • Prevents over-engineering by prioritizing the simplest effective solution
  • Makes trade-offs explicit through a mandatory Not Doing list
  • Grounds ideation in existing project constraints when used within a codebase
  • Encourages critical thinking by challenging assumptions early

Usage examples

“Help me refine this idea for a new notification system.”
The agent will initiate a dialogue to define the problem, ask sharpening questions, and guide you through divergent and convergent thinking phases.
“Ideate on a way to improve our user onboarding flow.”
The agent will generate several variations of the onboarding process and help you evaluate them against your specific constraints.
“Stress-test my plan for the new API integration.”
The agent will analyze your current plan, identify hidden assumptions, and help you refine the scope and direction.

Install

  1. Download the skill as a ZIP:

    https://mp-staging.autogineer.com/agent-skills/addyosmani/idea-refine/download
  2. Unzip it into the cross-client skills folder of your project:

    mkdir -p .agents/skills && unzip idea-refine.zip -d .agents/skills

Documentation by Addy Osmani

Idea Refine

Overview

Refines raw ideas into sharp, actionable concepts worth building through structured divergent and convergent thinking.

When to Use

  • Use when an idea is still vague and needs shaping before it can become a plan

  • Use when you need to stress-test assumptions before committing to a direction

  • Use when you want to expand options before converging on one

  • Trigger phrases: "Help me refine this idea", "Ideate on [concept]", "Stress-test my plan"

  • Not for: a user who is unsure what they want at all (use interview-me), or a direction already chosen that needs a spec (use spec-driven-development)

How It Works

  1. Understand & Expand (Divergent): Restate the idea, ask sharpening questions, and generate variations.

  2. Evaluate & Converge: Cluster ideas, stress-test them, and surface hidden assumptions.

  3. Sharpen & Ship: Produce a concrete markdown one-pager moving work forward.

Usage

This skill is primarily an interactive dialogue. Invoke it with an idea, and the agent will guide you through the process.

# Optional. Run from the project root so this creates ./docs/ideas.
# <skill-dir> is the directory that contains this SKILL.md
# (for example .agents/skills/idea-refine or .cursor/skills/idea-refine).
bash <skill-dir>/scripts/idea-refine.sh

Output

The final output is a markdown one-pager saved to docs/ideas/[idea-name].md (after user confirmation), containing:

  • Problem Statement

  • Recommended Direction

  • Key Assumptions

  • MVP Scope

  • Not Doing list

Detailed Instructions

You are an ideation partner. Your job is to help refine raw ideas into sharp, actionable concepts worth building.

Philosophy
  • Simplicity is the ultimate sophistication. Push toward the simplest version that still solves the real problem.

  • Start with the user experience, work backwards to technology.

  • Say no to 1,000 things. Focus beats breadth.

  • Challenge every assumption. "How it's usually done" is not a reason.

  • Show people the future — don't just give them better horses.

  • The parts you can't see should be as beautiful as the parts you can.

Process

When the user invokes this skill with an idea ($ARGUMENTS), guide them through three phases. Adapt your approach based on what they say — this is a conversation, not a template.

Phase 1: Understand & Expand (Divergent)

Goal: Take the raw idea and open it up.

  1. Restate the idea as a crisp "How Might We" problem statement. This forces clarity on what's actually being solved.

  2. Ask 3-5 sharpening questions — no more. Focus on:

    • Who is this for, specifically?

    • What does success look like?

    • What are the real constraints (time, tech, resources)?

    • What's been tried before?

    • Why now?

    Use the AskUserQuestion tool to gather this input. Do NOT proceed until you understand who this is for and what success looks like.

  3. Generate 5-8 idea variations using these lenses:

    • Inversion: "What if we did the opposite?"

    • Constraint removal: "What if budget/time/tech weren't factors?"

    • Audience shift: "What if this were for [different user]?"

    • Combination: "What if we merged this with [adjacent idea]?"

    • Simplification: "What's the version that's 10x simpler?"

    • 10x version: "What would this look like at massive scale?"

    • Expert lens: "What would [domain] experts find obvious that outsiders wouldn't?"

    Push beyond what the user initially asked for. Create products people don't know they need yet.

If running inside a codebase: Use Glob, Grep, and Read to scan for relevant context — existing architecture, patterns, constraints, prior art. Ground your variations in what actually exists. Reference specific files and patterns when relevant.

Read frameworks.md in this skill directory for additional ideation frameworks you can draw from. Use them selectively — pick the lens that fits the idea, don't run every framework mechanically.

Phase 2: Evaluate & Converge

After the user reacts to Phase 1 (indicates which ideas resonate, pushes back, adds context), shift to convergent mode:

  1. Cluster the ideas that resonated into 2-3 distinct directions. Each direction should feel meaningfully different, not just variations on a theme.

  2. Stress-test each direction against three criteria:

    • User value: Who benefits and how much? Is this a painkiller or a vitamin?

    • Feasibility: What's the technical and resource cost? What's the hardest part?

    • Differentiation: What makes this genuinely different? Would someone switch from their current solution?

    Read refinement-criteria.md in this skill directory for the full evaluation rubric.

  3. Surface hidden assumptions. For each direction, explicitly name:

    • What you're betting is true (but haven't validated)

    • What could kill this idea

    • What you're choosing to ignore (and why that's okay for now)

    This is where most ideation fails. Don't skip it.

Be honest, not supportive. If an idea is weak, say so with kindness. A good ideation partner is not a yes-machine. Push back on complexity, question real value, and point out when the emperor has no clothes.

Phase 3: Sharpen & Ship

Produce a concrete artifact — a markdown one-pager that moves work forward:

# [Idea Name]

## Problem Statement
[One-sentence "How Might We" framing]

## Recommended Direction
[The chosen direction and why — 2-3 paragraphs max]

## Key Assumptions to Validate
- [ ] [Assumption 1 — how to test it]
- [ ] [Assumption 2 — how to test it]
- [ ] [Assumption 3 — how to test it]

## MVP Scope
[The minimum version that tests the core assumption. What's in, what's out.]

## Not Doing (and Why)
- [Thing 1] — [reason]
- [Thing 2] — [reason]
- [Thing 3] — [reason]

## Open Questions
- [Question that needs answering before building]

The "Not Doing" list is arguably the most valuable part. Focus is about saying no to good ideas. Make the trade-offs explicit.

Ask the user if they'd like to save this to docs/ideas/[idea-name].md (or a location of their choosing). Only save if they confirm.

Anti-patterns to Avoid
  • Don't generate 20+ ideas. Quality over quantity. 5-8 well-considered variations beat 20 shallow ones.

  • Don't be a yes-machine. Push back on weak ideas with specificity and kindness.

  • Don't skip "who is this for." Every good idea starts with a person and their problem.

  • Don't produce a plan without surfacing assumptions. Untested assumptions are the #1 killer of good ideas.

  • Don't over-engineer the process. Three phases, each doing one thing well. Resist adding steps.

  • Don't just list ideas — tell a story. Each variation should have a reason it exists, not just be a bullet point.

  • Don't ignore the codebase. If you're in a project, the existing architecture is a constraint and an opportunity. Use it.

Tone

Direct, thoughtful, slightly provocative. You're a sharp thinking partner, not a facilitator reading from a script. Channel the energy of "that's interesting, but what if..." -- always pushing one step further without being exhausting.

Read examples.md in this skill directory for examples of what great ideation sessions look like.

Common Rationalizations

RationalizationReality
I'll generate 20+ ideas to cover all bases5-8 well-considered variations beat 20 shallow ones. Quality over quantity.
The user just needs encouragement, not critiqueA yes-machine produces weak ideas. Push back with specificity and kindness.
Who this is for is obvious — no need to askEvery good idea starts with a person and their problem. Skipping it means designing for nobody.
We'll surface assumptions once we start buildingUntested assumptions are the #1 killer of good ideas. Surface them before committing.
A plan without a Not Doing list is fineThe Not Doing list is arguably the most valuable part. Make trade-offs explicit.

Red Flags

  • Generating 20+ shallow variations instead of 5-8 considered ones

  • Skipping the "who is this for" question

  • No assumptions surfaced before committing to a direction

  • Yes-machining weak ideas instead of pushing back with specificity

  • Producing a plan without a "Not Doing" list

  • Ignoring existing codebase constraints when ideating inside a project

  • Jumping straight to Phase 3 output without running Phases 1 and 2

Verification

After completing an ideation session:

  • [ ] A clear "How Might We" problem statement exists

  • [ ] The target user and success criteria are defined

  • [ ] Multiple directions were explored, not just the first idea

  • [ ] Hidden assumptions are explicitly listed with validation strategies

  • [ ] A "Not Doing" list makes trade-offs explicit

  • [ ] The output is a concrete artifact (markdown one-pager), not just conversation

  • [ ] The user confirmed the final direction before any implementation work

Files

frameworks.md

Ideation Frameworks Reference

Use these frameworks selectively. Pick the lens that fits the idea — don't mechanically run every framework. The goal is to unlock thinking, not to follow a checklist.

SCAMPER

A structured way to transform an existing idea by applying seven different operations:

  • Substitute: What component, material, or process could you swap out? What if you replaced the core technology? The target audience? The business model?

  • Combine: What if you merged this with another product, service, or idea? What two things that don't usually go together would create something new?

  • Adapt: What else is like this? What ideas from other industries, domains, or time periods could you borrow? What parallel exists in nature?

  • Modify (Magnify/Minimize): What if you made it 10x bigger? 10x smaller? What if you exaggerated one feature? What if you stripped it to the absolute minimum?

  • Put to other uses: Who else could use this? What other problems could it solve? What happens if you use it in a completely different context?

  • Eliminate: What happens if you remove a feature entirely? What's the version with zero configuration? What would it look like with half the steps?

  • Reverse/Rearrange: What if you did the steps in the opposite order? What if the user did the work instead of the system (or vice versa)? What if you reversed the value chain?

Best for: Improving or reimagining existing products/features. Less useful for greenfield ideas.

How Might We (HMW)

Reframe problems as opportunities using the "How Might We..." format:

  • Start with an observation or pain point

  • Reframe it as "How might we [desired outcome] for [specific user] without [key constraint]?"

  • Generate multiple HMW framings of the same problem — different framings unlock different solutions

Good HMW qualities:

  • Narrow enough to be actionable ("...help new users find relevant content in their first 5 minutes")

  • Broad enough to allow creative solutions (not "...add a recommendation sidebar")

  • Contains a tension or constraint that forces creativity

Bad HMW qualities:

  • Too broad: "How might we make users happy?"

  • Too narrow: "How might we add a button to the settings page?"

  • Solution-embedded: "How might we build a chatbot for support?"

Best for: Reframing stuck thinking. When someone is anchored on a solution, pull them back to the problem.

First Principles Thinking

Break the idea down to its fundamental truths, then rebuild from there:

  1. What do we know is true? (not assumed, not conventional — actually true)

  2. What are we assuming? List every assumption, even the ones that feel obvious

  3. Which assumptions can we challenge? For each, ask: "Is this actually a law of physics, or just how it's been done?"

  4. Rebuild from the truths. If you only had the fundamental truths, what would you build?

Best for: Breaking out of incremental thinking. When every idea feels like a small improvement on the status quo.

Jobs to Be Done (JTBD)

Focus on what the user is trying to accomplish, not what they say they want:

  • Functional job: What task are they trying to complete?

  • Emotional job: How do they want to feel?

  • Social job: How do they want to be perceived?

Format: "When I [situation], I want to [motivation], so I can [expected outcome]."

Key insight: People don't buy products — they hire them to do a job. The competing product isn't always in the same category. (Netflix competes with sleep, not just other streaming services.)

Best for: Understanding the real problem. When you're not sure if you're solving the right thing.

Constraint-Based Ideation

Deliberately impose constraints to force creative solutions:

  • Time constraint: "What if you only had 1 day to build this?"

  • Feature constraint: "What if it could only have one feature?"

  • Tech constraint: "What if you couldn't use [the obvious technology]?"

  • Cost constraint: "What if it had to be free forever?"

  • Audience constraint: "What if your user had never used a computer before?"

  • Scale constraint: "What if it needed to work for 1 billion users? What about just 10?"

Best for: Cutting through complexity. When the idea is growing too large or too vague.

Pre-mortem

Imagine the idea has already failed. Work backwards:

  1. It's 12 months from now. The project shipped and flopped. What went wrong?

  2. List every plausible reason for failure — technical, market, team, timing

  3. For each failure mode: Is this preventable? Is this a signal the idea needs to change?

  4. Which failure modes are you willing to accept? Which ones would kill the project?

Best for: Phase 2 evaluation. Stress-testing ideas that feel good but haven't been pressure-tested.

Analogous Inspiration

Look at how other domains solved similar problems:

  • What industry has already solved a version of this problem?

  • What would this look like if [specific company/product] built it?

  • What natural system works this way?

  • What historical precedent exists?

The key is finding structural similarities, not surface-level ones. "Uber for X" is surface-level. "A two-sided marketplace that solves a trust problem between strangers" is structural.

Best for: Phase 1 expansion. Generating variations that feel genuinely different from the obvious approach.

Requirements and compatibility

Written for: Claude Code

Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta

“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.

Needs: Names Claude Code tools

Security

What our scanner noticed· Low risk

  • Scripts that your agent may run

This skill includes scripts that your agent may run. Read them before you use it.

A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.

Attribution and licence

Created by
Addy Osmani
Publisher
Addy Osmani (Community)
Source
addyosmani/agent-skills · skills/idea-refine · commit 301b02b
Licence
MIT License (redistribution allowed)
  • LICENSE (added by AutoGineer from LICENSE)
  • ATTRIBUTION.md (written by AutoGineer)
Synced

AutoGineer is not affiliated with or endorsed by Addy Osmani.

Download ZIP

The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download idea-refine.zip