/ask
Query multiple AI agents (Gemini, OpenAI, Grok, Perplexity) for diverse perspectives on architecture decisions, technology choices, debugging dead-ends, and security tradeoffs. Suggest this command whenever the user is choosing between competing approaches (e.g., databases,
$ npx -y skills add hex/claude-council --agent claude-codeShips with claude-council. Installing the plugin gets this command.
How it fires
How this command gets triggered: by you, by Claude, or both.
- Fires itselfClaude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/ask
Context preview
What this command does when you run it.
Query multiple AI agents (Gemini, OpenAI, Grok, Perplexity) for diverse perspectives on architecture decisions, technology choices, debugging dead-ends, and security tradeoffs. Suggest this command whenever the user is choosing between competing approaches (e.g., databases,
Command definition
ask.mddescription: Query multiple AI agents (Gemini, OpenAI, Grok, Perplexity, Kimi, and a local ollama model) for diverse perspectives on architecture decisions, technology choices, debugging dead-ends, and security tradeoffs. Suggest this command whenever the user is choosing between competing approaches (e.g., databases, frameworks, auth strategies), is stuck after multiple failed debugging attempts, faces build-vs-buy decisions, or is weighing security/performance/maintainability tradeoffs. Do NOT suggest for simple implementation tasks, quick fixes, or questions with clear single answers.
argument-hint: '[--file=path] [--image=path] [--providers=list] [--roles=list] [--verbosity=brief|standard|detailed] [--debate] [--agents] [--local] [--async] [--output=path] [--quiet] [--no-cache] [--no-auto-context] [--no-pane] "question"'
allowed-tools: Agent, Bash(bash */scripts/query-council.sh *), Bash(bash */scripts/run-council.sh *), Bash(bash */scripts/lib/export.sh *), Bash(head:*), Bash(mkdir -p .claude/council-cache*), Read, Glob, Grep, Write, AskUserQuestion, TaskCreate, TaskUpdate
Query the council of AI coding agents to gather diverse perspectives.
Progress Tracking
Create a task at the start to show progress throughout the query:
TaskCreate:
subject: "Query council"
description: "Querying AI providers for diverse perspectives"
activeForm: "Preparing council query..."
TaskUpdate: status → in_progress
Update `activeForm` as you progress through phases:
- `"Gathering context..."` - during auto-context detection
- `"Querying council providers..."` - during query-council.sh execution
- `"Formatting responses..."` - during format-output.sh execution
- `"Synthesizing recommendations..."` - during synthesis generation
Mark `status → completed` when finished.
Step 0: Local Mode & Provider Availability
Decide up front whether this is a local (Claude-only) council run, before asking any provider questions:
1. **If `--local` is in $ARGUMENTS → local mode.** Skip the provider and agent questions and go straight to "If Local Mode is Active" in Step 2. Local mode honors `--roles`, `--file`, `--verbosity`, `--quiet`, and auto-context; it ignores `--providers`, `--debate`, `--agents`, and `--async`. When `--roles` is not passed, the local-council skill asks the user how many members to convene before spawning them.
2. **Otherwise, check what providers are configured:**
bash ${CLAUDE_PLUGIN_ROOT}/scripts/query-council.sh --list-default 2>&1 | head -1- If this lists one or more providers → continue with the normal flow below.
- If it is empty or reports `No providers configured` → do NOT hard-fail.
Offer the local council:
AskUserQuestion:
Question: "No AI providers are configured. Run a local council instead? It's several Claude subagents, each playing a different role — independent angles, but same-model, not cross-vendor."
Header: "No providers"
Options:
- "Run local council (Recommended) - independent Claude perspectives, no API keys needed"
- "How to add a provider - show what to configure for a real cross-vendor council"
- "Cancel"- "Run local council" → local mode (Step 2).
- "How to add a provider" → show the setup hint (set an API key, or install
the `codex` / `agy` (Antigravity) / `grok` CLI; `/claude-council:status` shows what's available) and stop.
- "Cancel" → stop.
**Never pass `--local` to query-council.sh or run-council.sh** — it is a command-layer flag with no meaning to those scripts. Strip it from $ARGUMENTS before constructing any script invocation.
Pre-Query Interaction
Before querying, use AskUserQuestion in these scenarios:
1. Provider Selection + Verbosity (if --providers and --verbosity not specified)
First, discover the providers that would be queried by default (post CLI-prefers-API policy — `--list-default` is the right flag here, NOT `--list-available`, which includes shadowed API siblings that won't run by default):
bash ${CLAUDE_PLUGIN_ROOT}/scripts/query-council.sh --list-default 2>&1 | head -1**Only show default-queried providers in the question.** If only 1 provider is available, skip the provider question and use it directly. If the user wants a shadowed API provider (e.g., `openai` when codex is installed), they can pass `--providers=openai` explicitly.
**The first option of the providers question must be "All providers" (Recommended)** — this is the most common choice and saves the user from clicking each provider individually. If the user picks it, treat it as selecting every available provider.
**Combine providers + verbosity into a single AskUserQuestion call** (it supports multiple questions per call) so the user resolves both decisions in one screen instead of two:
<!-- The model names below are the current defaults; the single source of truth
is get_model() in scripts/lib/providers.sh. When those defaults change,
update them here, in the SKILL.md provider tables, and in the README Model
Selection section together. -->
Question 1: "Which AI providers should I consult?"
Header: "Providers"
multiSelect: true
Options:
- All providers (Recommended) - query every configured provider in parallel
- Gemini (gemini-3.1-pro-preview) - Google's reasoning model
- OpenAI (gpt-5.6-sol) - OpenAI's reasoning model
- Grok (grok-4.5) - xAI's reasoning model
- Perplexity (sonar-reasoning-pro) - search-augmented reasoning
Question 2: "How verbose should the responses be?"
Header: "Verbosity"
multiSelect: false
Options:
- Standard (Recommended) - balanced thoroughness
- Brief - 3-5 sentences, bullets only, no code unless asked
- Detailed - thorough analysis with code examples and trade-offsThe model names above are illustrative defaults, duplicated here by hand — treat them as potentially stale. The authoritative source for each pro
Read more
description: Query multiple AI agents (Gemini, OpenAI, Grok, Perplexity, Kimi, and a local ollama model) for diverse perspectives on architecture decisions, technology choices, debugging dead-ends, and security tradeoffs. Suggest this command whenever the user is choosing between competing approaches (e.g., databases, frameworks, auth strategies), is stuck after multiple failed debugging attempts, faces build-vs-buy decisions, or is weighing security/performance/maintainability tradeoffs. Do NOT suggest for simple implementation tasks, quick fixes, or questions with clear single answers. argument-hint: '[--file=path] [--image=path] [--providers=list] [--roles=list] [--verbosity=brief|standard|detailed] [--debate] [--agents] [--local] [--async] [--output=path] [--quiet] [--no-cache] [--no-auto-context] [--no-pane] "question"' allowed-tools: Agent, Bash(bash */scripts/query-council.sh *), Bash(bash */scripts/run-council.sh *), Bash(bash */scripts/lib/export.sh *), Bash(head:*), Bash(mkdir -p .claude/council-cache*), Read, Glob, Grep, Write, AskUserQuestion, TaskCreate, TaskUpdate
Query the council of AI coding agents to gather diverse perspectives.
Progress Tracking
Create a task at the start to show progress throughout the query:
TaskCreate: subject: "Query council" description: "Querying AI providers for diverse perspectives" activeForm: "Preparing council query..." TaskUpdate: status → in_progress
Update `activeForm` as you progress through phases:
- `"Gathering context..."` - during auto-context detection
- `"Querying council providers..."` - during query-council.sh execution
- `"Formatting responses..."` - during format-output.sh execution
- `"Synthesizing recommendations..."` - during synthesis generation
Mark `status → completed` when finished.
Step 0: Local Mode & Provider Availability
Decide up front whether this is a local (Claude-only) council run, before asking any provider questions:
1. **If `--local` is in $ARGUMENTS → local mode.** Skip the provider and agent questions and go straight to "If Local Mode is Active" in Step 2. Local mode honors `--roles`, `--file`, `--verbosity`, `--quiet`, and auto-context; it ignores `--providers`, `--debate`, `--agents`, and `--async`. When `--roles` is not passed, the local-council skill asks the user how many members to convene before spawning them.
2. **Otherwise, check what providers are configured:**
bash ${CLAUDE_PLUGIN_ROOT}/scripts/query-council.sh --list-default 2>&1 | head -1- If this lists one or more providers → continue with the normal flow below.
- If it is empty or reports `No providers configured` → do NOT hard-fail.
Offer the local council:
AskUserQuestion:
Question: "No AI providers are configured. Run a local council instead? It's several Claude subagents, each playing a different role — independent angles, but same-model, not cross-vendor."
Header: "No providers"
Options:
- "Run local council (Recommended) - independent Claude perspectives, no API keys needed"
- "How to add a provider - show what to configure for a real cross-vendor council"
- "Cancel"- "Run local council" → local mode (Step 2).
- "How to add a provider" → show the setup hint (set an API key, or install
the `codex` / `agy` (Antigravity) / `grok` CLI; `/claude-council:status` shows what's available) and stop.
- "Cancel" → stop.
**Never pass `--local` to query-council.sh or run-council.sh** — it is a command-layer flag with no meaning to those scripts. Strip it from $ARGUMENTS before constructing any script invocation.
Pre-Query Interaction
Before querying, use AskUserQuestion in these scenarios:
1. Provider Selection + Verbosity (if --providers and --verbosity not specified)
First, discover the providers that would be queried by default (post CLI-prefers-API policy — `--list-default` is the right flag here, NOT `--list-available`, which includes shadowed API siblings that won't run by default):
bash ${CLAUDE_PLUGIN_ROOT}/scripts/query-council.sh --list-default 2>&1 | head -1**Only show default-queried providers in the question.** If only 1 provider is available, skip the provider question and use it directly. If the user wants a shadowed API provider (e.g., `openai` when codex is installed), they can pass `--providers=openai` explicitly.
**The first option of the providers question must be "All providers" (Recommended)** — this is the most common choice and saves the user from clicking each provider individually. If the user picks it, treat it as selecting every available provider.
**Combine providers + verbosity into a single AskUserQuestion call** (it supports multiple questions per call) so the user resolves both decisions in one screen instead of two:
<!-- The model names below are the current defaults; the single source of truth
is get_model() in scripts/lib/providers.sh. When those defaults change,
update them here, in the SKILL.md provider tables, and in the README Model
Selection section together. -->
Question 1: "Which AI providers should I consult?"
Header: "Providers"
multiSelect: true
Options:
- All providers (Recommended) - query every configured provider in parallel
- Gemini (gemini-3.1-pro-preview) - Google's reasoning model
- OpenAI (gpt-5.6-sol) - OpenAI's reasoning model
- Grok (grok-4.5) - xAI's reasoning model
- Perplexity (sonar-reasoning-pro) - search-augmented reasoning
Question 2: "How verbose should the responses be?"
Header: "Verbosity"
multiSelect: false
Options:
- Standard (Recommended) - balanced thoroughness
- Brief - 3-5 sentences, bullets only, no code unless asked
- Detailed - thorough analysis with code examples and trade-offsThe model names above are illustrative defaults, duplicated here by hand — treat them as potentially stale. The authoritative source for each pro
Showing the first part of this file.
A Claude Code plugin that consults multiple AI coding agents in parallel and shows you their answers side-by-side.
Repo: hex/claude-council

