Getting it into your agent
This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.
/plugin marketplace add rjmurillo/ai-agents/plugin install project-toolkitWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/rjmurillo/ai-agents/decision-question)<a href="https://agentmods.dev/skills/rjmurillo/ai-agents/decision-question"><img src="https://agentmods.dev/badge/skills/rjmurillo/ai-agents/decision-question/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/rjmurillo/ai-agents/decision-question"><img src="https://agentmods.dev/badge/skills/rjmurillo/ai-agents/decision-question.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00078 | $0.01815 |
| Opus 5.5 | $0.00031 | $0.00726 |
| Sonnet 5.5 | $0.00016 | $0.00363 |
| Haiku 4.5 | $0.00008 | $0.00181 |
Grade A, and why
decision-question scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 166 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Decision Question
Ask only when a real user decision is required. When asking, present the smallest complete decision brief that lets the user choose deliberately.
Questions spend user attention. Spend it only on decisions the user owns, and make each question decision-complete. This skill owns how to ask. It does not own whether a mutation is authorized (#5407) or whether a task is finished (#5404).
voice.md routes here and does not carry the protocol. Load the reference and
script only when the routing gate says ask.
Triggers
ask the user to choose between these paths, do I need a user decision here,
present a decision brief, which option should the user pick
Routing gate: when NOT to ask
Multiple implementation choices do not make a user decision. Do not ask when any of these holds:
- the user delegated the choice (
choose the best option and implement it); - repository or safety policy mandates one option;
- existing acceptance criteria already determine the choice;
- the distinction is an implementation detail within authorized scope, and reversible;
- reading available evidence or tools resolves the uncertainty;
- the task is terminal under #5404 and the question would only solicit optional follow-up. The STOP TOKEN wins.
no unresolved user decision -> act within existing authorization
material unresolved user decision -> build the brief below
Process
All commands run ${COPILOT_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT:-.claude}}/skills/decision-question/scripts/decision_question.py
with python3. Output is one JSON object.
-
Route. Apply the gate. If no question is warranted, act and stop.
-
Draft the brief for the earliest load-bearing decision (fields below).
-
Check and plan. Write the brief as JSON and run:
python3 "${COPILOT_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT:-.claude}}/skills/decision-question/scripts/decision_question.py" --brief <brief.json>status: incomplete(exit 2) lists the missing fields. Enrich the brief and rerun.status: revise_recommendation(exit 2) means an earlier answer filtered out the recommended option: pick a remaining option or setno_recommendation, then rerun.status: asklists the promptpagesand thepageto present now. -
Ask, then prune. Present the decision with
AskUserQuestion. Record the answer underanswersand rerun. When the user picks_more, add one to that decision's count underpagingand rerun; the same decision returns its next page. Decisions that depend on an answer are pruned or filtered from that answer, and unresolved IDs are never renumbered. -
Weak evidence on an irreversible choice.
pre_ask_reviewin the output namesdecision-criticandpre-mortem. Run one before asking.
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 3d ago Changed · +13 lines 832fed091bc7
- 4d ago First seen · 153 lines · 78 tokens per session scan A 2695fadad737
decision-question is a skill published in the GitHub repository rjmurillo/ai-agents (48 stars, last pushed today), licensed MIT. It adds 78 tokens to every session and 1,815 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-10-14.
Other skills, from other repositories
architecture-audit
Comprehensive project consistency review across code, documentation, diagrams, and configuration.
code-review
Systematic code review for correctness, security, and growth — not just style enforcement.
semantic-codebase-intelligence
Deep structural analysis of a codebase—dependency mapping, architecture boundary detection, coupling/cohesion scoring, and dead code discovery. Use when asked to "analyze codebase structure", "map dependencies", "find dead code", "architecture analysis", "coupling analysis", "trace dependencies", or "understand this…
deep-review
Adversarial code review with three parallel perspectives — Advocate, Skeptic, Architect — that create productive tension. Use for high-stakes PRs, architectural changes, or when single-pass review would miss issues. Surfaces findings through disagreement, not consensus.
extension-audit-methodology
Systematic 5-dimension audit framework for VS Code extensions — debug hygiene, dead code, performance, menu validation, dependency cleanup.
parity-guard-test-pattern
When checking that all callers of a contract implement it correctly, you get false positives from wrapper delegators.