Skip to content
Back to skills

Council

ASecurity

Decides one closed question by independent votes of fresh agents with different stances, and reports the majority with the dissent. Use when asked to let a council, a panel or several agents vote on a choice.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 11, 2026
developmentpythongo

Security analysis

A100/100

Pro scans all 3 files and shows the line behind each finding

Scanned November 11, 2026

npx -y skills add niksavis/handily --skill council --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Council?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Council
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/niksavis-council/badge)](https://www.skillsdirectory.com/skills/niksavis-council)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: council
description: Decides one closed question by independent votes of fresh agents with different stances, and reports the majority with the dissent. Use when asked to let a council, a panel or several agents vote on a choice.
---
<!-- Generated by `basicly skills-build` from skill.yaml. Do not edit; edit the source. -->

# Council

Decide one closed question by independent votes. This skill uses the `swarm` steps; read that skill first.

The script is `${CLAUDE_SKILL_DIR}/../swarm/scripts/swarm.py`, in the `swarm` skill folder beside this one. `DIR` is a new folder per council in the session scratchpad.

## Steps

1. **Ask one question.** Write the decision, 2 to 4 option labels and the facts with sources, as [the question guide](references/question.md) says. For an open question, run `swarm` on the goal with the lenses feasibility, spec and simplicity, and take its numbered decisions as the 2 to 4 labels. A closed question with no labels: ask the user for them.
2. **Pick voters.** Choose 3 stances from [stances](assets/stances.md), one voter each. Choose 5 when the decision is hard to undo.
3. **Vote.** Run the `swarm` steps Brief, Launch and Collect; the tally replaces the swarm Check. Each brief carries the question, the exact labels and the stance as its lens. No voter sees another vote. Rerun once each voter that is not run.
4. **Tally.** Run:

   ```sh
   python3 -B ${CLAUDE_SKILL_DIR}/../swarm/scripts/swarm.py tally --voters user,safety,skeptic --options per-event,shards --dir DIR
   ```

   Replace the voters, options and folder with yours. Exit 0 prints the decision and each dissenting vote with its reason. Exit 2 means no option has a majority of all voters; the user decides.
5. **Verify.** When the winning reason rests on a number or a root cause, run `falsify-first` on it with an agent that did not vote.
6. **Report.** Give the vote table, the decision, the strongest dissent, each voter that is not run, and how the decision can fail. State that each voter voted blind, without seeing another vote.

## Rules

- A vote that is not run or names an unknown label counts against every option; the script takes 3 or 5 voters and refuses any other count or a repeated label.
- When the options turn out wrong, change the question and vote again with fresh agents.

Files in this skill

  • SKILL.md2.3 KB
  • assets/stances.md693 B
  • references/question.md363 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

View all in development →

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.