Skip to content

Instantly share code, notes, and snippets.

@typhdotcom
Created March 26, 2026 00:33
Show Gist options
  • Select an option

  • Save typhdotcom/6ec1d056310dcbfc9b4a4eeb3ba57b11 to your computer and use it in GitHub Desktop.

Select an option

Save typhdotcom/6ec1d056310dcbfc9b4a4eeb3ba57b11 to your computer and use it in GitHub Desktop.
Quorum - Ad-hoc parallel adversarial debate skill
description Use when the user asks to "call a quorum" or "assemble a quorum"
argument-hint
topic

Derive TOPIC from $ARGUMENTS and conversation context.

Process

  1. Derive candidates. From TOPIC, identify what intellectual traditions, disciplines, or specific thinkers would create productive friction on this subject.

  2. Present candidates and team size using AskUserQuestion — two questions in one call:

    • Thinkers (multi-select): 3 individual thinkers that genuinely clash on TOPIC. 1-line description per option. Do not group or cluster — present single people.
    • Team size: options 3, 2, 1. Header: "Team size". Recommend 3 unless the topic is narrow.
    • Clustering: "mixed" (tension within each team) or "aligned" (like-minded teams, tension between teams). Recommend mixed.
  3. Extrapolate to 4 teams. From the user's selections (and any they typed), fill out 4 teams of the chosen size. Compose teams according to the clustering choice.

  4. Present the full roster — all 4 teams and members — then confirm via AskUserQuestion:

    • Yes — dispatch as shown. Annotations: additional instructions for the agents.
    • Reroll — re-extrapolate teams. Annotations: what to change.
    • No — abort.
  5. Dispatch 4 background agents in parallel (all in a single message). Every agent receives the same context as each other:

    • A standalone framing of TOPIC with enough context for the agent to say something useful back to this conversation
    • Its team members by name only

    Instruction to each agent: argue in character toward a convergent insight. Do not use any tools. Output: core disagreement, where each thinker lands, convergent insight.

    Use subagent_type: "general-purpose", run_in_background: true, and model: "opus" for each agent. Name each agent after its team members (e.g. "Dijkstra + Metz").

  6. As agents complete, report each team's results. After all 4 finish, synthesize a convergence table: what the teams agree on, where they diverge, and the sharpest insight that emerged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment