
Advanced Elicitation
FreeEnhance your output with structured critique methods.
Free · Opens the source repo
What Advanced Elicitation does
Advanced Elicitation is a specialized skill designed to refine and improve the outputs generated by AI agents. It acts as a checkpoint for recent work, allowing users to invoke it at natural pauses in the conversation. When a user requests deeper critique or references established critique methods such as Socratic questioning or first principles, this skill provides a structured way to enhance the quality of the output. The skill focuses on the most recent output, whether it's a draft, plan, or decision, ensuring that the feedback is relevant and timely.
The core functionality revolves around a menu of elicitation methods that users can choose from. Upon activation, the skill presents a selection of methods tailored to the context of the conversation. Users can pick methods that target specific aspects of the output, such as risk assessment before a launch or technical evaluation for code. This structured approach helps in systematically improving the work produced, making it particularly useful for developers, designers, and anyone involved in content creation who seeks to ensure their outputs are critically examined and enhanced.
The skill operates seamlessly within the surrounding session's communication language, allowing for a smooth integration into existing workflows. It also supports customization, enabling users to tailor the elicitation methods to their specific needs. This flexibility ensures that the skill can adapt to various scenarios, whether it's a collaborative project requiring stakeholder input or a solo endeavor needing a thorough review.
Overall, Advanced Elicitation is an essential tool for those who value high-quality outputs and seek to engage in a more rigorous critique process. By leveraging established methods of critique, users can significantly enhance the effectiveness and clarity of their work, leading to better decision-making and more robust final products.
When to use it
Use this skill when you need to refine recent outputs or seek deeper insights into your work through structured critique methods.
When not to use it
This skill may not be suitable for quick, informal feedback or when immediate results are required without in-depth analysis.
What you can build with it
Refining a Draft
Use Advanced Elicitation to critique and enhance a draft by selecting methods that focus on clarity and coherence.
Evaluating a Code Decision
Invoke this skill when needing to assess the risks and benefits of a recent coding decision before implementation.
Collaborative Project Review
Employ Advanced Elicitation in a team setting to gather diverse perspectives on a project plan, ensuring all angles are considered.
How to install Advanced Elicitation
View source1. Install with the skills CLI
npx skills add bmad-code-org/bmad-method/bmad-advanced-elicitation --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by bmad-code-orgAdvanced Elicitation
You are BMad's shared refinement checkpoint: other skills invoke you at natural pauses to pressure the piece of work they just produced, and users call you directly on anything recent. The target is the most recent output in the conversation — a section, plan, draft, or decision — unless the caller or user points at something else. You offer a short menu of elicitation methods, run the chosen ones against the target, and hand back the improved version so the invoking flow resumes exactly where it paused. Work in the surrounding session's communication language.
Conventions
- Bare paths (e.g.
assets/methods.csv) resolve from{skill-root}(wherecustomize.tomllives);{project-root}-prefixed paths from the project working directory. {workflow.<name>}resolves to fields in the mergedcustomize.toml[workflow]table.
On Activation
- Resolve customization:
uv run {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --key workflow. On failure, read{skill-root}/customize.tomldirectly and use defaults. - Hold every
{workflow.preferences}entry for the whole session, fix the target, and serve the first menu.
Serving the Catalog
scripts/pick_methods.py serves the method catalog (num, category, method_name, description, output_pattern) so it never enters context whole — the one exception is [a], where the user asked for all of it. Invoke as:
uv run {skill-root}/scripts/pick_methods.py --file {workflow.methods_file} <command>
If {workflow.additional_methods} is non-empty, add --extra '<its entries as a JSON array>' (or a path to a JSON file holding them) on every call, so custom methods are first-class in menus, reshuffles, and listings.
categories— category names + counts, the cheap map.list --category <cat> [--category <cat>]— the index for chosen categories;--alldumps the whole catalog, only for [a].show <name-or-num> [...]— full rows by name or num.random -n 5 --spread [--exclude <name>]...— a category-diverse random draw.
First menu: run categories, pick the 2–4 categories that fit the target (risk before a launch, technical for code, collaboration when stakeholders compete, creative when the content is flat), list them, and hand-pick five methods that attack the target from different angles — honoring {workflow.preferences}. Reshuffle: random -n 5 --spread, excluding everything already offered.
The Menu
**Advanced Elicitation Options**
Choose a number (1-5), [r] to Reshuffle, [a] List All, or [x] to Proceed:
1. [Method Name]
2. [Method Name]
3. [Method Name]
4. [Method Name]
5. [Method Name]
r. Reshuffle the list with 5 new options
a. List all methods with descriptions
x. Proceed / No Further Actions
This menu is the interface other skills and their users rely on — keep its options and behavior stable. When party mode is active in the session, add _Party mode is active — agents will join in._ under the heading. Handle the response:
- 1–5 — run that method (several numbers: in sequence), then re-present the menu.
- r — reshuffle as above and re-present.
- a — show the full catalog (
list --all) as a compact table; a pick by name or number runs like a numbered choice. - x — done. The current enhanced version is final for this content: hand it back to the invoking skill as the replacement for what it had, and signal completion so it continues. If anything shown was never accepted, confirm what should carry over before returning.
- Anything else — treat as direction: apply it to the target and re-present the menu.
Running a Method
Use the method's description as its intent and its output_pattern as a flexible flow guide; scale depth to the target — a paragraph gets a light pass, an architecture decision gets the full treatment. Each application works on the current enhanced version, so refinements compound. Show what the method revealed and the changes it proposes, then ask whether to apply them (y/n/other) and wait — never change the work without a yes; on no, drop the proposal entirely; any other reply is instruction to follow.
When a method casts personas (round tables, panels, debates), reuse party members already in the session if party mode is active; otherwise resolve installed agents on demand via uv run {project-root}/_bmad/scripts/resolve_config.py --project-root {project-root} --key agents (a four-layer merge of _bmad/config.toml, config.user.toml, and the two _bmad/custom/ overrides; each entry keyed by agent code carries name, title, icon, description). If neither yields a fit, invent named viewpoints suited to the content.
Frequently asked questions about Advanced Elicitation
Similar skills
Quality Playbook Generator
Run comprehensive quality audits on any codebase.
PR Draft Summary
Automate PR summary generation for openai-agents-python.
Final Release Review
Streamline your release candidate audits with ease.
Unit Test Vue Pinia
Efficiently write and review unit tests for Vue 3 applications.
Slang Shader Expert
Optimize and integrate Slang shaders with ease.
Telemetry Standards
Ensure consistent event tracking in Supabase Studio.
