Borrowing it
Nothing to install: this file belongs to hlop3z/claude-ai-dangerous. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/hlop3z/claude-ai-dangerous/main/.claude/commands/ai/decide.mdgit clone --depth 1 https://github.com/hlop3z/claude-ai-dangerousWrote 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/commands/hlop3z/claude-ai-dangerous/decide)<a href="https://agentmods.dev/commands/hlop3z/claude-ai-dangerous/decide"><img src="https://agentmods.dev/badge/commands/hlop3z/claude-ai-dangerous/decide/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/commands/hlop3z/claude-ai-dangerous/decide"><img src="https://agentmods.dev/badge/commands/hlop3z/claude-ai-dangerous/decide.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.00033 | $0.01367 |
| Opus 5 | $0.00016 | $0.00683 |
| Sonnet 5 | $0.00007 | $0.00273 |
| Haiku 4.5 | $0.00003 | $0.00137 |
Grade A, and why
AI: Decide 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 9d 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 — 109 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Resolve the build-vs-adopt question for a piece of work before implementing it.
For each critical concern, walk the hierarchy Rent > Adopt > Extend > Fork > Build, research
current options, recommend one, and record the decision as an ADR block. Choosing to build
something a mature tool already does well is the failure this gate prevents.
This command is self-contained. It works inside the OpenSpec pipeline when OpenSpec is
present, and equally well without it — the hierarchy and rubric below are the authority, not a
pointer into openspec/. If .canon/guidelines.md exists it is the fuller reference and wins
on any detail; if it doesn't, nothing here degrades.
Input: Optionally a scope name (e.g. /ai:decide add-auth) — an OpenSpec change name, a
feature name, or nothing. If omitted, infer from context; if ambiguous, ask via
AskUserQuestion. Announce: "Deciding for: ".
Steps
-
Resolve where the decision gets recorded — take the first that applies:
Condition Target openspecCLI available and an active change matchesopenspec status --change "<name>" --json→artifactPaths.design.resolvedOutputPathopenspec/changes/<scope>/design.mdexists on diskthat file PROJECT.mdexists (post-/ai:migration)its ## Decisions (ADRs)sectionnone of the above ask the user; default DECISIONS.mdat the project rootRead whatever context exists for the scope (proposal, specs, design, or the surrounding code) before deciding. If the CLI reports
actionContext.mode: workspace-planning, STOP — not supported here. -
List the critical concerns — the correctness-, security-, or reliability-sensitive parts of this work. Take them from the proposal's flagged capabilities if present; otherwise scan the scope and propose a short list, then confirm with the user.
-
For each concern, run the gate:
- Infrastructure? → decision is
Rent, no further evaluation. - On the never-hand-roll list? → the decision is which tool, never whether to build.
- Otherwise research with WebSearch — find current, actively-maintained options. Do NOT rely on memory; tooling moves.
- Score candidates against the maturity rubric. Apply hard rejects.
- Present at most 3 options as pure-build vs adopt-a-tool, each a one-line trade-off, and always end with a clear recommendation (which, and why) plus its hierarchy tier.
- Wait for the user's pick before treating any tool as settled. Each decision is
draftuntil the user confirms, thenapproved. (No "rejected" state — an unpicked option is simply dropped.)
- Infrastructure? → decision is
-
Record it — append/update a
## Decisionssection in the target, one block per concern:### Decision: <concern> — <Rent|Adopt|Extend|Fork|Build> <tool-or-"hand-written"> - **Status**: approved - **Why**: <one line> - **Considered**: <other 1–2 options, one line each> - **Isolation**: <the adapter/boundary the choice lives behind>Concrete tool names live here only — never push them into
config.yamlorspecs/, which stay abstract. If the target isPROJECT.md, match its existing ADR shape instead. -
Summary — each concern → decision → status. Note any left in
draft.
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.
- 9d ago First seen · 109 lines · 33 tokens per session scan A 3d7405ea6353
AI: Decide is a command published in the GitHub repository hlop3z/claude-ai-dangerous (2 stars, last pushed 23d ago), licensed MIT. It adds 33 tokens to every session and 1,367 once invoked, about $0.0002 per session on Opus 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-08-31.
Other commands, from other repositories
adr.template
Date: [Current date and time with timezone in ISO format] Git Commit: [Current commit hash] Branch: [Current branch name] Repository: [Repository name] Status: [proposed|accepted|rejected|deprecated|superseded].
sruja-bugfix-triage
Systematic workflow for triaging and fixing bugs with architecture grounding.
check
Universal pre-flight check that validates project readiness.
smart-help
Context-aware help that suggests relevant commands.
triage
AI-powered reachability triage for dependency vulnerabilities. Scans for CVEs then searches your source code to estimate whether each vulnerable API is actually called. Outputs a prioritized FOUNDINSOURCE / UNCERTAIN / NOTFOUNDINGREP report.
scaffold-component
Scaffold a single named component from the architecture blueprint with production-depth code.