A round machined base with radial slides whose differently shaped stylus tips all press on one central block, cut open to show an electric-blue channel rising from the block up a spindle into a ring at the top.
Research

Council

Multi-agent collaborative debate producing visible round-by-round transcripts with real intellectual friction — members are topic-briefed custom agents, run as a 3-round DEBATE or a 1-round QUICK check, to find the best path

02
Workflows
00
Tools
03
References
08
Triggers

The Problem

Asking an AI to give you multiple perspectives usually produces a single voice wearing different hats. The "devil's advocate" agrees with the main position at the end. The "skeptic" shares no domain expertise with the topic at hand. You get the appearance of debate without the actual friction that makes it useful.

How This Skill Approaches It

Council composes 4-6 custom agents via ComposeAgent with domain expertise and personality traits tailored to the specific question — never generic types. Those agents run in parallel within each round, read each other's actual arguments, and respond to them directly. Three sequential rounds let positions evolve through genuine friction. The DEBATE workflow produces a full round-by-round transcript plus synthesis; QUICK produces first-round positions for a fast sanity check. The collaborative-adversarial framing keeps it aimed at finding the best path rather than just attacking, which separates it from RedTeam.

Not for pure adversarial attack (use RedTeam)

In Action

What you say to your DA, and what the Council skill actually does.

  • You say "council: should we use WebSockets or SSE for real-time updates?"
    Composes 4 agents with traits drawn from real-time systems, frontend, ops, and protocol research; runs the DEBATE workflow across 3 rounds with a full transcript showing how positions shift as each agent responds to the others' actual arguments.
  • You say "quick council check: is this API design reasonable?"
    Runs the QUICK workflow — one round of initial positions from custom-composed agents with API-relevant expertise — fast enough to serve as a sanity check before committing to the design.

Inside the Skill

The thinking, frameworks, and architecture that distinguish this skill from a generic version of the same task.

Ideal State

  • Every council is four different topic-specific member briefs, written before the first round runs, each giving a name, the member's role/expertise, the stance they hold, and what they'll push on; no member is a bare built-in agent type with no persona.
  • The members are split across vendors so the debate never shares one lineage's blind spots; a member that failed or did not run on its requested vendor is named in the transcript, never silently dropped or kept.
  • Every member argues from the full context the request supplied (the measured facts, files, quotes and constraints), so positions engage the actual decision rather than a generic version of it.
  • Members answer each other's actual points by name, and the transcript shows that friction round by round.
  • The output ends in a usable verdict (a recommended path for DEBATE, proceed / reconsider / escalate for QUICK) that states remaining disagreement instead of forcing consensus.
  • The answer delivered is the finished debate; no member's work is still running when it is handed over.

Intent Routing

Intent Trigger File
Debate "council", "debate", full structured debate (3 rounds, transcript + synthesis) Intents/Debate.md
Quick "quick council check", fast perspective check (1 round, initial positions only) Intents/Quick.md
File Read when
CouncilMembers.md writing member briefs, default perspective slots, and the launch command (vendor split, level, no fallback)
OutputFormat.md length, tone and naming rules for every member answer, in both intents
Setup.md first-time setup: the OpenAI login the second vendor needs, and a read-only check

Council is collaborative-adversarial (debate to find the best path) and produces visible transcripts; pure adversarial attack is not a Council intent — redirect to the RedTeam skill.

Data & Config

User customizations live at <configRoot>/LIFEOS/USER/CUSTOMIZATIONS/SKILLS/Council/ (configRoot is $CLAUDE_CONFIG_DIR when set, else ~/.claude). When that directory exists, its PREFERENCES.md, configurations and resources override the defaults here; when it is absent, the defaults stand.

First-time setup for the vendor split is in Setup.md.

Integration

Works well with:

  • RedTeam - Pure adversarial attack after collaborative discussion
  • Research - Gather context before convening the council

Gotchas

  • There is no composition tool and no trait matrix. Members are inline briefs (CouncilMembers.md § The brief), each run as one direct call, with an Agent spawn only when the member must fetch something live; in the 2026-09-18 paired probe each subagent member cost about 100k tokens of injected context and one wrapped its answer in a report about itself (CouncilMembers.md § Launch).
  • More agents ≠ better debate. 4-6 well-briefed agents outperform 12 generic ones.

Examples

User: "Council: Should we use WebSockets or SSE?"
→ Debate intent: a real-time architect, a frontend-DX advocate, an ops skeptic and a researcher
→ A 3-round transcript ending in a recommended path, the strongest objection still standing, and what would flip it

User: "Quick council check: Is this API design reasonable?"
→ Quick intent: four API-relevant members
→ One round of 30-50 word takes and a Proceed / Reconsider / Need full debate call

User: "Council: Is AI overhyped?"
→ Debate intent: an AI builder, a security skeptic, a pragmatic engineer and an evidence analyst
→ A 3-round transcript where at least one stance sharpens under challenge, with disagreements left standing

Workflows & Routing · 2

Each workflow is one job the skill runs. The trigger phrases route your request to the right one — this is the skill's routing table.

  1. 01
    Debate Intents/Debate.md

    council, debate, full structured debate (3 rounds, transcript + synthesis)

  2. 02
    Quick Intents/Quick.md

    quick council check, fast perspective check (1 round, initial positions only)

How to Invoke

Say any of these to your DA and LifeOS activates the Council skill automatically:

  • "council"
  • "debate"
  • "multiple perspectives"
  • "weigh options"
  • "deliberate"
  • "get different views"
  • "what would experts say"
  • "pros and cons"

Or invoke explicitly:

Skill("Council")

References · 3

Auxiliary files the skill loads at runtime — frameworks, guides, configs.

  • CouncilMembers
  • OutputFormat
  • Setup

References & Credits

The thinkers, books, frameworks, and research this skill is built on. The ideas belong to them — the integration belongs to LifeOS.

Want LifeOS to do this for you?

Install LifeOS on your machine — your DA gets the Council skill plus 96 others, all hooked into one Life OS.