ワンクリックで
panel
Use when asking a multi-peer consensus panel for independent, attributed responses while the host stays a neutral moderator.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Use when asking a multi-peer consensus panel for independent, attributed responses while the host stays a neutral moderator.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Run when you need to evaluate agent instruction file coverage, quality, and drift. Produces a severity-rated analysis artifact. Run before oat-agent-instructions-apply to identify what needs improvement.
Use when OAT work is mentioned in a Cursor Cloud environment. Orients agents to cloud detection, repo-rooted project homes, user-first assets, CLI availability, and Cursor dispatch context without owning lifecycle execution.
Use when an OAT skill or workflow needs provider-neutral selection, launch, recovery, or evidence for bounded subagent work without project lifecycle policy.
Use when an OAT project lifecycle skill needs to translate project state, phase or task scope, gates, and write authority into a provider-neutral subagent dispatch.
Use when the user requests or confirms documenting an active OAT project — e.g. "document the project", "update the docs", "run oat-project-document", or confirms a previously offered documentation run. Do NOT auto-invoke when implementation completes. Analyzes project artifacts, presents a documentation delta plan, and applies approved changes.
Use when plan.md is ready for execution. Dispatches one phase implementer per phase, owns independent phase review and bounded fix routing, and supports plan-declared worktree-isolated parallel phases.
| name | panel |
| description | Use when asking a multi-peer consensus panel for independent, attributed responses while the host stays a neutral moderator. |
| version | 0.1.2 |
| license | MIT |
| compatibility | Agent Skills baseline; requires Node.js 22+ and the generated consensus CLI. |
| allowed-tools | Bash(node:*), Bash(consensus:*), Read, Write |
| argument-hint | --question "<text>" | --question-file <question.md> [--panelists <provider-id,provider-id>] [--panel-size <n>] |
| metadata | {"author":"thomas.stang","version":"0.1.2"} |
Use this skill when the user wants multiple provider-backed AI peers to answer the same question independently, with attribution and diagnostics preserved. The host model is a neutral moderator: frame the approved question, invoke the wrapper, read the JSONL status stream, and present the attributed responses without adding a host-authored panel answer.
This workflow is consensus-panel. It is separate from refine, evaluate,
and phone-a-friend: it does not converge on a revision, judge against a rubric,
or ask one advisory peer that the host dispositions. It gathers side-by-side
panelist positions from at least two provider-backed peers.
Before a run, ensure Node.js 22 or newer is available and the generated
consensus CLI can run. From an installed plugin this may be exposed as
consensus; from a repository checkout the same provider CLI lives at
plugins/consensus/scripts/consensus.mjs and can be run with node.
Check provider inventory and readiness before spending panelist calls:
consensus provider ls --json
consensus preflight --json
From a repository checkout:
node plugins/consensus/scripts/consensus.mjs provider ls --json
node plugins/consensus/scripts/consensus.mjs preflight --json
Relay provider-neutral diagnostics such as missing, auth_required,
unavailable, or unsupported instead of retrying blindly.
Provider run failures are reported in JSON envelopes. Terminal provider failures such as ok: false, PROVIDER_EXIT, PROVIDER_INVALID_JSON, or PROVIDER_SCHEMA_VALIDATION still exit process 0; do not treat $? as success. Parse the envelope fields (ok, code, retryable, and attempts.terminal_reason) and report the structured failure. CLI usage failures (CONSENSUS_CLI_USAGE) exit 2. The peer-facing consensus submit command is different: schema or capture failures exit nonzero so the peer can self-correct in-turn.
Stay neutral before, during, and after the run.
If the user asks for a final recommendation after the panel, make clear that it is a new host disposition step, not part of the panel result.
Panelists run through provider CLIs, so context leaves the host runtime and may be processed by external provider-backed tools. Before sending sensitive, private context, credentials, personal data, customer material, proprietary documents, broad workspace dumps, or anything the user might not expect to share, ask the user to approve the exact context scope.
When approval is needed, ask one focused question:
Which parts of this context are approved to send to the provider-backed panelists?
Do not include unapproved sensitive/private context in --question, a
--question-file, or any file referenced by the question.
Run the wrapper from this skill directory:
node ./scripts/consensus-panel.mjs --question "What are the risks in this design?"
Use a question file for longer prompts:
node ./scripts/consensus-panel.mjs --question-file references/examples/design-risk-question.md
Pass explicit panel controls when the user names them:
node ./scripts/consensus-panel.mjs \
--question-file question.md \
--panelists <provider-id,provider-id> \
--panel-size <n> \
--output panel.md
Use --question <text> for short inline questions and
--question-file <path> for file-backed questions. Exactly one question source
is required. Use --allow-root <path> when question reads, run state, and
artifact writes should be confined to a known workspace.
Read JSONL emitted on stdout. Treat each JSONL line as host coordination data: run status, resolved panel composition, per-panelist availability or completion, artifact path, and final status. Use stderr only as terminal diagnostics, not as the coordination protocol.
Honor explicit user direction first:
--panelists.--panel-size.consensus config, then project config, user config, and built-in fallback in
that order.Use consensus config to inspect or set defaults:
consensus config get --json --scope effective --workflow panel
consensus config set --json --scope user --panelists claude,codex --panel-size 2
consensus config set --json --scope project --panelists claude,codex,cursor --panel-size 3
The effective precedence is invocation flags, then project config, then user
config, then built-in defaults. --panelists <provider-id,provider-id> must name
at least two providers. --panel-size <n> must be 2 or larger. Requested
providers must be present and ready; explicitly requested unavailable panelists
make the run fail rather than silently changing the requested panel.
The wrapper writes a markdown panel artifact. With --output <path>, that path
receives the artifact. Without --output, file-backed questions write a sidecar
named <question-file>.panel.md; inline questions write under
.consensus/panel-<run-id>/panel.md.
The artifact contains:
kind: consensus-panel, status, run_id, created_at,
and config_sourceThe panelist payload schema is schemas/panel-response.schema.json and includes
schema_version, understood_question, response, key_points, risks,
assumptions, and confidence.
After the run, report the artifact path and final status from the run_completed
JSONL event. Present every attributed response and any shortfalls. If the status
is failed, explain whether the run had fewer than two successful panelist
responses or an explicitly requested panelist was unavailable.
Important events include:
run_started - question source and run idpanel_resolved - config source, selected panelists, and warningspanelist_unavailable - readiness shortfall for one panelistpanelist_started - provider turn startedpanelist_completed - provider turn completed with ok or errorartifact_written - output path and run directoryrun_completed - final status, output path, successful response count, and
panel sizeDo not infer success from an artifact path alone. Use run_completed.status and
the artifact status.
V1 is single-round and independent. The wrapper does not show panelist answers to
other panelists, cross-examine them, vote, deliberate, or converge on a shared
answer. If the user asks for a multi-round panel discussion, record or point to
the deferred follow-up BL-260701-add-multi-round-panel and either:
Do not simulate multi-round deliberation in the host.
refine.evaluate.phone-a-friend.BL-260701-add-multi-round-panel.node ./scripts/consensus-panel.mjs \
--question "What migration risks should we inspect before launch?" \
--panelists claude,codex \
--output migration-panel.md
After the run, read JSONL through run_completed, report
migration-panel.md, and present both attributed responses.
node ./scripts/consensus-panel.mjs \
--question-file references/examples/privacy-boundary-question.md \
--panel-size 3 \
--allow-root .
Use this path when the question includes structured background or context that the user has approved for provider-backed panelists.
run_completed.status and the artifact status are reported to the user.For a hands-on walkthrough with explicit panelists, config defaults, expected
JSONL, and artifact review, see references/operator-qa.md. Runnable question
examples live in references/examples/.