Borrowing it
Nothing to install: this file belongs to chacosoldier/compabob. 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/chacosoldier/compabob/main/.claude/skills/council/SKILL.mdgit clone --depth 1 https://github.com/chacosoldier/compabobWrote 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/chacosoldier/compabob/council)<a href="https://agentmods.dev/skills/chacosoldier/compabob/council"><img src="https://agentmods.dev/badge/skills/chacosoldier/compabob/council/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/chacosoldier/compabob/council"><img src="https://agentmods.dev/badge/skills/chacosoldier/compabob/council.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.00132 | $0.01003 |
| Opus 5.5 | $0.00053 | $0.00401 |
| Sonnet 5.5 | $0.00026 | $0.00201 |
| Haiku 4.5 | $0.00013 | $0.00100 |
Grade A, and why
council 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 1mo 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 — 57 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Council with a mandatory dissenter
A panel of advisors plus one advisor whose only job is to argue the other side, then a synthesis that has to engage that dissent point by point. The point is anti-sycophancy: on the decisions where the user most needs to hear they might be wrong, never hand back one agreeable viewpoint.
Stakes gate
- Run it when the decision is hard to reverse or expensive to get wrong: career moves, hiring or firing, a large spend or commitment, a strategy bet.
- Invoked explicitly as
/council <topic>: always run. - For a reversible or small call ("should I reply today or tomorrow"), do not convene the panel. Answer with the
strategy-advisoragent alone.
Steps
1. Recall
Check whether the user has decided something similar before: search vault/Decisions/ (where /log-decision writes) and memory for the topic. Treat what you find as a prior, never as this decision's answer. If nothing turns up, say so in the synthesis and continue.
2. Frame
- The decision in one sentence.
- The options, or the binary, stated explicitly.
- What would change the recommendation: the one uncertainty that matters most.
- The user's current leaning, if they gave one.
If the real alternatives, the binding constraint, or the timeframe are missing, ask one or two questions before spawning anything.
3. Panel (three Agent calls in ONE message, blind to each other)
Send all three in a single message so they run in parallel, each with the framed decision, the recall, and its own brief, and nothing about the others' output. Pass model: "sonnet" on each call to keep a council run affordable on any plan; drop it if the user wants the panel on their session's model.
strategy-advisor: decision frame, pre-mortem, a steelman of each option.first-principles: what is actually known and at what confidence, base rates, a short scenario tree.- Dissenter (a second
strategy-advisorcall): assign a concrete opposing persona grounded in THIS decision, never a generic devil's advocate. Examples: "the CFO who wants to kill this spend", "you, two years from now, regretting this", "the co-founder who thinks this is a distraction". Brief: "Your only job is the strongest case AGAINST <the leaning option, or the default option if there is no leaning>. Concrete claims with reasons. No hedging, no praise, no restating the plan. You are the only dissenting voice on this panel."
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.
- 1mo ago First seen · 57 lines · 132 tokens per session scan A a43a329933d4
council is a skill published in the GitHub repository chacosoldier/compabob (34 stars, last pushed 5d ago), licensed MIT. It adds 132 tokens to every session and 1,003 once invoked, about $0.0005 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-09-26.
Other skills, from other repositories
ha-logs
A read-only troubleshooting skill for querying Hope Agent’s local SQLite databases, which store logs, conversations, and background-job status.
ha-data-stores
Map of Hope Agent's local data stores and safe read-only query workflow. Use when the user asks where Hope Agent stores data, wants to inspect sessions/messages/memory/logs/background jobs/knowledge indexes/settings, asks the model to query local app data, or debugging requires checking persisted state. Trigger…
vellum-memory-v3-migration
One-time migration of an existing memory-v2 concept corpus into the memory-v3 section-grain "wiki" — topical articles with a stand-alone lead and queryable sections — with loss-proof staging, assistant-reviewed authoring, and a retrieval-eval gate before cutover.
media-processing
Ingest and process media files (video, audio, image).
notifications
Send notifications through the unified notification router.
visualize
Render a polished visual inline in the chat as part of your answer — a diagram, a chart, an interactive explainer, or a UI mockup. Load it proactively whenever an explanation would land better as a picture than as prose. Do not wait to be asked.