From council
Probe installed CLIs and write the per-host council profile
How this skill is triggered — by the user, by Claude, or both
Slash command
/council:council-initThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
**SCOPE**: Run `council init`, report what it produced. Nothing else.
SCOPE: Run council init, report what it produced. Nothing else.
which council
If missing: go install github.com/fitz123/council/cmd/council@latest.
council init only writes ~/.config/council/default.yaml, but council
itself resolves profiles in this order on every run:
./.council/default.yaml (cwd-local — wins if present)~/.config/council/default.yaml (user-global)A cwd-local profile silently shadows whatever init produces. Probe both:
test -f .council/default.yaml && echo "local: found .council/default.yaml" || echo "local: missing .council/default.yaml"
test -f ~/.config/council/default.yaml && echo "global: found ~/.config/council/default.yaml" || echo "global: missing ~/.config/council/default.yaml"
If global exists: ask via AskUserQuestion whether to keep or regenerate
(Keep current exits, Regenerate runs council init --force). If a
local profile also exists, warn that it shadows the global one — /council
will keep using the local file regardless of what init writes.
for b in claude codex gemini; do
if command -v "$b" >/dev/null 2>&1; then
echo "$b: $(command -v "$b")"
else
echo "$b: not found"
fi
done
Each is subscription-based — no API keys:
| Executor | Binary | Install | Auth |
|---|---|---|---|
claude-code | claude | https://docs.claude.com/claude-code | claude /login |
codex | codex | brew install codex (or per-platform release) | codex login |
gemini-cli | gemini | brew install gemini-cli (or per-platform release) | run gemini once → OAuth browser flow |
Proceed regardless — init writes a profile with whatever subset is verified.
Strip CLAUDECODE so the live-probe of the claude-code executor (which
spawns claude -p) does not trip the nested-CLI guard:
env -u CLAUDECODE -u CLAUDE_CODE_ENTRYPOINT council init
…or council init --force when regenerating. Report verified / skipped
CLIs from stderr.
ls -la ~/.config/council/default.yaml
head -20 ~/.config/council/default.yaml
If ./.council/default.yaml exists, repeat the shadowing warning — /council
will keep using the local file until it is removed or edited.
Quorum scales as min(2, len(verified)). Zero verified is a hard error.
STOP. Do not offer to run a debate.
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub fitz123/council --plugin council