CE Brainstorm
EveryInc/compound-engineering-plugin
Turns a vague or ambitious feature idea into a requirements-only plan through dialogue with you, sized to the work, before any code is written.
Asks one question at a time, each with a best guess attached, until the agent is about 95 percent sure what you really want, before any plan, spec or code.
$ npx skills add addyosmani/agent-skills --skill interview-me -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install addyosmani/agent-skills interview-me --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/addyosmani/agent-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/interview-me .claude/skills/interview-me && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "interview-me" agent skill from https://github.com/addyosmani/agent-skills/tree/main/skills/interview-me into .claude/skills/interview-me/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "interview-me", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/addyosmani/agent-skills/tree/main/skills/interview-meType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add addyosmani/agent-skills --skill interview-me -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install addyosmani/agent-skills interview-me --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/addyosmani/agent-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/interview-me .agents/skills/interview-me && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "interview-me" agent skill from https://github.com/addyosmani/agent-skills/tree/main/skills/interview-me into .agents/skills/interview-me/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "interview-me", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add addyosmani/agent-skills --skill interview-me -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install addyosmani/agent-skills interview-me --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/addyosmani/agent-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/interview-me .cursor/skills/interview-me && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "interview-me" agent skill from https://github.com/addyosmani/agent-skills/tree/main/skills/interview-me into .cursor/skills/interview-me/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "interview-me", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/addyosmani/agent-skills.git --path skills/interview-me--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add addyosmani/agent-skills --skill interview-me -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install addyosmani/agent-skills interview-me --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/addyosmani/agent-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/interview-me .gemini/skills/interview-me && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "interview-me" agent skill from https://github.com/addyosmani/agent-skills/tree/main/skills/interview-me into .gemini/skills/interview-me/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "interview-me", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install addyosmani/agent-skills interview-meInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add addyosmani/agent-skills --skill interview-me -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/addyosmani/agent-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/interview-me .github/skills/interview-me && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "interview-me" agent skill from https://github.com/addyosmani/agent-skills/tree/main/skills/interview-me into .github/skills/interview-me/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "interview-me", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add addyosmani/agent-skills --skill interview-me -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install addyosmani/agent-skills interview-me --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/addyosmani/agent-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/interview-me .opencode/skills/interview-me && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "interview-me" agent skill from https://github.com/addyosmani/agent-skills/tree/main/skills/interview-me into .opencode/skills/interview-me/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "interview-me", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
interview-meAsks one question at a time, each with a best guess attached, until the agent is about 95 percent sure what you really want, before any plan, spec or code.
What people ask for often differs from what they need: a dashboard or a faster app arrives with no audience, reason or target number. This skill closes that gap before any plan, spec or code exists, when correcting course is cheapest. The agent forms a hypothesis with a confidence number, then asks single questions, each with its own best guess, until it can predict your answer.
It applies when an ask lacks who, why, what success looks like or the binding constraint, when two values such as simplicity and flexibility pull against each other, or when you say interview me or grill me. It is skipped for unambiguous or mechanical requests, pure information questions, and when the agent is already at least 95% confident. It needs a live person, so it must not run in CI, scheduled or autonomous-loop contexts; there the agent flags the gap as a blocker. It sits before the idea-refine, spec-driven and doubt-driven skills.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 1401c8b. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Interview Me loads about 3.8k tokens when it runs. Until then it costs about 125 tokens; SKILL.md has 1,941 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from addyosmani/agent-skills at commit 1401c8b, republished under its MIT licence (© addyosmani). 1,941 words, ~3,759 tokens.
.claude/skills/interview-me/SKILL.md (or your agent's skills folder).What people ask for and what they actually want are different things. They ask for "a dashboard" because that's what one asks for, not because a dashboard solves their problem. They say "make it faster" without a number to hit.
The cheapest moment to find this gap is before any plan, spec, or code exists. Once you've started building, switching costs are real, and the user will rationalize the wrong thing into a "good enough" thing. The misfit gets locked in.
This skill closes the gap before it costs anything. The other Define-phase skills assume you already know roughly what you want: idea-refine generates variations from an idea, spec-driven-development writes the requirements down, doubt-driven-development stress-tests a plan after you've drafted one. Interview-me is the part before all of those, where you ask one question at a time, with your best guess attached, until you can predict what the user is going to say before they say it.
Apply this skill when:
When NOT to use:
This skill needs a live, responsive user. Do not invoke in non-interactive contexts like CI pipelines, scheduled runs, /loop, or autonomous-loop. If you're in one of those and the ask is underspecified, flag that as a blocker for the user instead of guessing.
Before asking anything, write down your current best read of what the user wants in one sentence, plus an honest confidence number (0–100%):
HYPOTHESIS: You want a way to answer "how are we doing?" in standup, and "dashboard" was the convention that came to mind.
CONFIDENCE: ~30% — missing: who it's for, what "metrics" means in context, and what success looks likeThe number forces honesty. If you wrote down a high number but can't actually predict the user's reactions to the next three questions you'd ask, the number is wrong. Start at the confidence level you can defend.
When confidence is below ~70%, append a brief reason on the same line — what's still unresolved or missing. This tells the user exactly what the interview needs to surface, and prevents the number from being a vague signal.
Format:
Q: <one focused question>
GUESS: <your hypothesis for the answer, with the reasoning that produced it>Wait for the user to react before asking the next question.
Why one at a time, not a batch:
Why attach a guess:
The risk here is a polite user agreeing with your guess to be agreeable. Mitigate by being visibly willing to be wrong, and occasionally guess in a direction you expect the user to push back on.
The most dangerous answers are the ones where the user says what a thoughtful answer sounds like rather than what they actually want. Watch for:
When you hear these, the question to ask is:
"If you didn't have to justify this to anyone, what would you actually want?"
That single question often does more work than the previous five.
When your confidence is high, write back what you now think the user wants. Keep it tight (5–8 lines), use their language where possible, and structure it so the user can confirm or correct line by line:
Here's what I now think you want:
- Outcome: <one line>
- User: <one line — who benefits>
- Why now: <one line — what changed>
- Success: <one line — how we know it worked>
- Constraint: <one line — the binding limit>
- Out of scope: <one line — what we're explicitly not doing>
Yes / no / refine?Including "Out of scope" is non-negotiable. Half of misalignment is silent disagreement about what is not being built.
The gate is an explicit "yes." The following are not yes:
If they correct you, fold the correction in and restate. Loop until you get an explicit yes.
When the user confirms the statement of intent with an explicit "yes":
docs/intent/[topic].md, draft a spec with spec-driven-development, or move to task planning after the spec).You're done when you can answer yes to this:
Can I predict the user's reaction to the next three questions I would ask?
If yes, you have shared understanding. Stop interviewing and produce the restate. If no, you're not done; ask the next question.
This is a checkable test, not a vibe. It also has a floor: if you've gone several rounds and still can't predict, that's information about the ask, not a reason to keep grinding. Stop and tell the user: "I've asked X questions and I still can't predict your reactions. Something foundational is missing. Want to step back?"
The output of this skill is a confirmed statement of intent: the restate from Step 4, with an explicit yes from Step 5. That's the deliverable. Specs, plans, and task lists are downstream; they consume the intent this skill produces.
If the user wants the intent to persist (a multi-session project, a handoff to another collaborator), offer to save it to docs/intent/[topic].md. Only save if they confirm.
A short before-and-after.
Without interview-me:
User: build me a dashboard for our metrics
Agent: <starts proposing chart libraries and layouts>The agent has assumed: who it's for, what metrics, what "for our team" means, what success looks like. None of these are stated. Every assumption is a place the user can later say "that's not what I meant."
With interview-me:
User: build me a dashboard for our metrics
Agent:
HYPOTHESIS: You want a way to answer "how are we doing?" in standup, and "dashboard" came to mind because that's the conventional answer.
CONFIDENCE: ~30% — missing: who it's for, what "metrics" are, and what success looks like
Q: When you say "how are we doing?", who's asking — you alone, the engineering team in standup, or up the chain (e.g., your manager, an exec, a board)?
GUESS: engineering team in standup, because "we" usually scopes that way and standups are where this question gets asked. If it's for execs the metrics and the framing change a lot.
User: It's actually for me. I keep losing track of which experiments are running and what their early signal looks like.
Agent:
Updated read: not a team dashboard at all. It's a personal experiment tracker. Confidence: ~60% — still missing: what "early signal" means and what done looks like.
Q: Is the gap that you don't know which experiments exist, or that you can't see their results in one place?
GUESS: the second one. You have a list of experiments somewhere, but their results live in five different tools, and reconciling them by hand is what you're tired of.
User: First one actually. I literally don't have a list. They're spread across different docs.
Agent: <continues>Two questions in, the agent has discovered the actual ask isn't "a dashboard." It's "a list." Different artifact, different scope, different work. The dashboard would have been wrong.
idea-refine: downstream. If the confirmed intent is "I want X but I don't know how to scope it," hand off to idea-refine to generate variations against the now-explicit intent.spec-driven-development: downstream. If the confirmed intent is concrete ("I want X for Y users with Z success criteria"), hand off to spec-driven-development to write it down.planning-and-task-breakdown: two hops downstream of this skill (after the spec).doubt-driven-development: opposite end of the timeline. Interview-me is pre-decision intent extraction; doubt-driven is post-decision artifact review. Both catch divergence, but at different moments.source-driven-development: orthogonal. Interview-me clarifies what the user wants; SDD verifies framework facts. They don't compete.| Rationalization | Reality |
|---|---|
| "The ask is clear enough" | If you can't write the user's desired outcome in one sentence right now, the ask isn't clear. Run Step 1 before deciding. |
| "Asking too many questions wastes their time" | Time wasted by 4–6 targeted questions is small. Time wasted by building the wrong thing is enormous, and the user is the one bearing that cost. |
| "I'll figure it out as I build" | Switching costs after code exists are 10x what they are now. Discovery during implementation is rework. |
| "They said 'whatever you think,' so I should just decide" | "Whatever you think" is delegation, not decision. Re-ask with two concrete options as a choice. |
| "I should give them several options to pick from" | Options work when the user knows what they want and is choosing between trade-offs. They don't know what they want yet. Listing options widens the search; asking narrows it. |
| "If I attach my guess, I'm leading them" | Leading is the point. Reacting is faster than generating from scratch. The risk is sycophancy, not leading; mitigate by being visibly willing to be wrong. |
| "We've talked enough, I get it" | Test it: can you predict their reaction to the next three questions? If not, you don't get it yet. |
| "The user said yes, we're done" | If the yes followed a vague restate or an open-ended "sounds good," the yes is hollow. Restate concretely and re-confirm. |
After applying interview-me:
idea-refine, spec-driven-development) was framed in terms of the confirmed intent, not the original underspecified ask© addyosmani, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/interview-me of addyosmani/agent-skills.
Open the folder on GitHubat commit 1401c8b
We found 10 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 6 other GitHub owners. This page covers the copy in addyosmani/agent-skills, which our catalogue first saw on October 7, 2026.
Interview Me next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Interview Me this skilladdyosmani/agent-skills | 103k | 6 repos | ~3.8k | Automated safety check: Pass | MIT | |
| CE BrainstormEveryInc/compound-engineering-plugin | 25k | — | ~1.9k | Automated safety check: Pass | MIT | |
| Dev RequestFHIR/fhir-codegen | 154 | — | ~3.8k | Automated safety check: Pass | MIT | |
| Feature BrainstormVeryGoodOpenSource/vgv-wingspan | 109 | — | ~1.8k | Automated safety check: Pass | MIT | |
| Interview-Driven Spec Writerposhan0126/dotclaude | 871 | — | ~804 | Automated safety check: Pass | MIT | |
| Brainstorming Before BuildingjnMetaCode/superpowers-zh | 8.3k | — | ~1.8k | Automated safety check: Pass | MIT |
EveryInc/compound-engineering-plugin
Turns a vague or ambitious feature idea into a requirements-only plan through dialogue with you, sized to the work, before any code is written.
FHIR/fhir-codegen
Drafts and iterates on local-development feature requests in the role of a staff-level Product Manager.
VeryGoodOpenSource/vgv-wingspan
Clarifies what to build before how, by asking one question at a time about a feature idea and then handing the result on to planning.
poshan0126/dotclaude
Interviews you about scope, behavior, edge cases and verification, then writes a self-contained SPEC.md that a fresh session can implement without this conversation.
jnMetaCode/superpowers-zh
Turns a rough idea into an approved design before any code is written, sorting the request into spike, bounded or architectural and enforcing an approval gate.
code-yeongyu/oh-my-openagent
Explore-first planning that turns a vague or large request into one decision-complete work plan, written only after your approval and executed by a separate worker.
addyosmani/agent-skills
Guides a conversation that takes a vague idea through divergent and convergent thinking and ends in a markdown one-pager covering scope and assumptions.
addyosmani/agent-skills
Meta-skill for choosing which workflow skill fits the task at hand, plus always-on habits: surface assumptions, stop on confusion, push back, keep it simple and stay in scope.
addyosmani/agent-skills
Connects an agent to a real Chrome instance through the Chrome DevTools MCP server, so it can inspect the DOM, read console errors and profile performance directly.
addyosmani/agent-skills
Records a project's quality bar in CONSTRAINTS.md and watches diffs for signs an agent quietly weakened it, such as suppressions, skipped tests or lowered thresholds.
addyosmani/agent-skills
Sets git habits for every change: short-lived branches, atomic commits with descriptive messages, clean pull requests, plus versioning, tagging and changelogs for releases.
addyosmani/agent-skills
Applies a stop-the-line rule and a step-by-step triage when tests fail, builds break or something stops working, aiming at the root cause instead of guesses.
Categories
Asks one question at a time, each with a best guess attached, until the agent is about 95 percent sure what you really want, before any plan, spec or code. What people ask for often differs from what they need: a dashboard or a faster app arrives with no audience, reason or target number. This skill closes that gap before any plan, spec or code exists, when correcting course is cheapest.
Interview Me fits situations like: A request like build me a dashboard arrives with no audience, reason or constraint; you want your own thinking stress-tested before work begins; two reasonable goals, such as cost and speed, are in tension and no priority is stated; the agent is about to fill in ambiguous requirements with assumptions.
Run `npx skills add addyosmani/agent-skills --skill interview-me -a claude-code`. Or copy the skill folder (skills/interview-me in addyosmani/agent-skills) into .claude/skills/interview-me in your project. Claude Code loads it when a task matches its description.
Run `npx skills add addyosmani/agent-skills --skill interview-me -a codex`. Or copy the skill folder (skills/interview-me in addyosmani/agent-skills) into .agents/skills/interview-me in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add addyosmani/agent-skills --skill interview-me -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/interview-me, .gemini/skills/interview-me, .github/skills/interview-me and .opencode/skills/interview-me in your project.
SKILL.md names no scripts, command-line tools or credentials: Interview Me is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Interview Me is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.8k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Interview Me: CE Brainstorm (EveryInc/compound-engineering-plugin, 25k stars), Dev Request (FHIR/fhir-codegen, 154 stars), Feature Brainstorm (VeryGoodOpenSource/vgv-wingspan, 109 stars) and Interview-Driven Spec Writer (poshan0126/dotclaude, 871 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
addyosmani (a GitHub user) maintains it in addyosmani/agent-skills, which has 102,944 GitHub stars. The repository holds 12 skills in this directory. The repository was last updated on October 3, 2026.
Source: addyosmani/agent-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.