Skip to content

Saalis — ثالث

CI PyPI version Python 3.11+ License

Governance and evidence layer for multi-agent AI decision arbitration.

When multiple AI agents produce conflicting outputs, Saalis provides configurable resolution strategies, policy enforcement, explainability, and audit logging.


Install

pip install saalis
# or
uv add saalis

Minimal example

import asyncio
from saalis import build_arbitrator, Decision, Proposal, Agent

async def main():
    decision = Decision(
        question="Should we deploy to production?",
        agents=[Agent(id="a1", name="GPT-4o", weight=1.0),
                Agent(id="a2", name="Claude", weight=1.5)],
        proposals=[
            Proposal(agent_id="a1", content="Deploy now",    confidence=0.9),
            Proposal(agent_id="a2", content="Wait for tests", confidence=0.8),
        ],
    )
    arb = build_arbitrator(strategy="weighted_vote")
    verdict = await arb.arbitrate(decision)
    print(verdict.render("markdown"))

asyncio.run(main())

What's inside

Feature Description
Strategies WeightedVote, LLMJudge, DeferToHuman
Policy Pre/post-arbitration rules: min confidence, agent blocklist
Audit Append-only event log — JSONL or SQLite
Rendering Verdicts as plain text, Markdown, or JSON
HTTP Sidecar Standalone FastAPI service — Docker-ready
MCP Server Native MCP tools for Claude Desktop and any MCP orchestrator
Integrations LangGraph node, CrewAI tool