antfu-create-pr
Create a reviewable GitHub pull request from the current branch with a Conventional Commits title, a concise evidence-based body,…
Interview the user relentlessly about a plan, decision, or idea until reaching a shared understanding, using the agent's interactive question tool (not plain text). Use when the user wants to stress-test their thinking, clarify requirements, or says "grill me" or "query me".
Claude Code
$ npx -y skills add antfu/skills --skill antfu-query --agent claude-code
Codex
$ npx skills add antfu/skills --skill antfu-query -a codex -y
Cursor
$ npx skills add antfu/skills --skill antfu-query -a cursor -y
Gemini CLI
$ npx skills add antfu/skills --skill antfu-query -a gemini-cli -y
GitHub Copilot
$ npx skills add antfu/skills --skill antfu-query -a github-copilot -y
OpenCode
$ npx skills add antfu/skills --skill antfu-query -a opencode -y
Windsurf
$ npx skills add antfu/skills --skill antfu-query -a windsurf -y
name: antfu-query description: Interview the user relentlessly about a plan, decision, or idea until reaching a shared understanding, using the agent's interactive question tool (not plain text). Use when the user wants to stress-test their thinking, clarify requirements, or says "grill me" or "query me". metadata: author: Anthony Fu version: "2026.10.31" source: Adapted from https://github.com/mattpocock/skills/blob/main/skills/productivity/grilling/SKILL.md
Interview the user relentlessly until you reach a shared understanding. Map this as a **design tree**: every decision branches into the decisions that hang off it.
Put every question to the user through the agent's **interactive question tool** (for example `AskUserQuestion` in Claude Code, or the equivalent in other agents; load it first if it is deferred). Do not write questions as plain text in the reply.
Work the tree in **rounds**. The **frontier** is every decision whose prerequisites are already settled: the questions you can ask _now_ without guessing at answers you have not heard yet. Ask the whole frontier in one round, then wait for the answers before the next round.
Finding _facts_ is your job, never the user's. When a question needs a fact from the environment (files, code, tools, docs), look it up yourself or dispatch a sub-agent with a fresh context window. Do not ask the user for anything you could look up.
Do not block on it: a running exploration is an unsettled prerequisite, so only the questions downstream of it wait. Ask the rest of the frontier now. The _decisions_ are the user's: put each to them and wait.
The session is done when the frontier is empty: every branch of the design tree visited, nothing left silently assumed. Summarize the settled decisions in a short list and **do not act on them** until the user confirms you have reached a shared understanding.
A collection of Agent Skills reflecting Anthony Fu's preferences, experience, and best practices, along with usage documentation for the tools.
Create a reviewable GitHub pull request from the current branch with a Conventional Commits title, a concise evidence-based body,…
Triage open issues and PRs of the current GitHub repo - find already-fixed, duplicate, and spam items, suggest labels, gauge…
Simplify the changes of the current PR or working tree with an ablation study - remove each piece of the diff and keep only what…
Anthony Fu's opinionated tooling and conventions for JavaScript/TypeScript projects. Use when setting up new projects,…
Nitro is the framework-agnostic server toolkit (powering Nuxt) for building and deploying web servers anywhere. Use when working…
Migrates React projects and components from Radix UI to Base UI. Use when asked to migrate from radix, move to base-ui, convert…
tasteskill v2, the anti-slop frontend skill. Art direction for websites, distilled from a study of 247 curated gallery sites (One…