io.github.naruminho/synod-council

Registre officiel IA et agents

Durable symmetric deliberation between two AI agents, with isolated worktrees and peer review.

Installation

Les étapes d'installation sont dans la documentation ci-dessous. Documentation

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. Synod
  2. Why
  3. Install
  4. Usage
  5. How a deliberation flows
  6. Status
  7. License

Synod

Durable, symmetric deliberation between two AI agents — with isolated git worktrees, peer review, automated validation, and an explicit approval workflow.

Synod started life as the "council" inside a personal AI infrastructure where two autonomous agents (an orchestrator and an executor) needed to make real decisions and real code changes together — without one of them silently becoming the other's rubber stamp.

Why

Most multi-agent frameworks are orchestration theater: one agent calls another as a tool and calls the output "collaboration". Synod is built around a different premise — two agents that are peers by construction:

  • Symmetric protocol — either agent can initiate; the protocol has no privileged side.
  • Identity contract — every prompt re-establishes who the agent is, so a weak or distracted model can't drift into answering as its peer.
  • Bias-resistant synthesis — the synthesizer for each problem is chosen by hashing the problem text, not by who spoke first.
  • Durable state — every session lives in SQLite with explicit stages (plan, review, synthesize, ratify, ...). A crashed run leaves an inspectable trail, not a mystery.
  • Code changes land through worktrees — each session gets its own git worktree and branch. Agents never push to main; a human-facing approval step stands between "looks done" and "published".
  • Validation with remediation — checks run after implementation, failures go back to the implementing agent with bounded retries before a human ever sees it.

Install

pipx install synod-council

Or from source:

git clone https://github.com/naruminho/synod-council
cd synod && pip install .

Usage

Library
from synod.deliberation import Deliberator, Store, HTTPAdapter

adapters = {
    "Alice": HTTPAdapter("Alice", "http://127.0.0.1:9001/ask"),
    "Bob":   HTTPAdapter("Bob",   "http://127.0.0.1:9002/ask"),
}
synod = Deliberator(adapters, Store("council.db"))
result = synod.run("Should we use SQLite or Postgres for this workload?", initiator="Alice")
print(result.decision, result.confidence, result.status)  # consensus | reconciled
MCP server

Synod ships an MCP server so any MCP-capable client (Claude Desktop, Claude Code, Cursor, ...) can start a deliberation:

synod-mcp   # stdio transport

Add it to your client config and ask your agents to deliberate instead of guessing.

HTTP server
synod-server --port 8790
curl -X POST http://127.0.0.1:8790/run -d '{"problem": "...", "initiator": "Alice"}'

How a deliberation flows

plan (parallel) → cross-review (parallel) → synthesis → [ratification → reconciliation?]

If reviewers raise unresolved blockers, or confidence lands below 0.7, the candidate decision goes to ratification by the non-synthesizing peer; a rejection forces explicit reconciliation instead of silent consensus.

Status

Extracted and battle-tested from a production personal infrastructure where it has been deciding architecture and shipping code since 2026. The two-agent design is intentional; N-participant support is on the roadmap.

License

MIT

Questions fréquentes

Qu'est-ce que io.github.naruminho/synod-council ?

Durable symmetric deliberation between two AI agents, with isolated worktrees and peer review.

Comment installer io.github.naruminho/synod-council ?

Suivez les étapes d'installation de sa documentation, affichée sur cette page et dans son dépôt.

io.github.naruminho/synod-council est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient io.github.naruminho/synod-council ?

Il est publié par naruminho. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.