Skip to main content

Repo-native governance kernel for ExoProtocol

Project description

(/)(°,,°)(/)

ExoProtocol

PyPI Python License: MIT

Governance kernel for multi-agent development. Treats AI-agent sessions the way an OS treats processes — with enforceable scope, lifecycle control, audit trails, and crash recovery. Everything lives in your git repo.

Why

When multiple AI agents vibe-code on the same repo, things go wrong silently: scope collisions, forgotten context, ungoverned commits, duplicated work. ExoProtocol gives each agent session a ticket, a scope fence, and a paper trail — without leaving git.

Install

pip install exoprotocol

Quickstart

# 1. Initialize governance (scans your repo, generates rules + adapters)
exo init

# 2. Health check
exo doctor

# 3. Dispatch a ticket
exo next --owner your-name

# 4. Start a governed session
EXO_ACTOR=agent:claude exo session-start \
  --ticket-id TICKET-001 \
  --vendor anthropic --model claude-code \
  --context-window 200000 \
  --task "implement the feature described in the ticket"

# 5. Finish the session
EXO_ACTOR=agent:claude exo session-finish \
  --summary "implemented feature, added tests" \
  --set-status review

Session start generates a bootstrap prompt with governance rules, scope constraints, sibling awareness, and operational learnings from prior sessions. Session finish runs drift detection, feature tracing, and writes a closeout memento.

What session-start does

When an agent session starts, ExoProtocol:

  1. Compiles governance rules from the repo constitution
  2. Loads the ticket's scope, budget, and constraints
  3. Scans for sibling sessions and warns about scope conflicts
  4. Checks for unmerged work on other branches that overlaps your scope
  5. Injects operational learnings from prior sessions
  6. Produces a bootstrap prompt that the agent sees first

The agent works within these boundaries. At session-finish, drift detection scores how well the work stayed in scope.

Architecture

CLI / MCP  →  Orchestrator  →  Stdlib  →  Control  →  Kernel (frozen, 10 functions)

The kernel is intentionally small and frozen — governance compilation, ticket locks, audit log, rule checks. Everything else (session lifecycle, drift detection, feature tracing, dispatch, GC) lives in the stdlib. See docs/architecture.md.

MCP server

pip install exoprotocol[mcp]
exo-mcp
{
  "mcpServers": {
    "exo": {
      "command": "exo-mcp",
      "args": [],
      "env": { "EXO_ACTOR": "agent:claude" }
    }
  }
}

Works with Claude Code, Cursor, and any MCP-compatible client. Every CLI command has a matching MCP tool.

Documentation

License

MIT License. See LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

exoprotocol-0.1.13.tar.gz (266.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

exoprotocol-0.1.13-py3-none-any.whl (198.6 kB view details)

Uploaded Python 3

File details

Details for the file exoprotocol-0.1.13.tar.gz.

File metadata

  • Download URL: exoprotocol-0.1.13.tar.gz
  • Upload date:
  • Size: 266.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for exoprotocol-0.1.13.tar.gz
Algorithm Hash digest
SHA256 c3816c331e47e0b995747b67580c51654d82f13c5922936a96a2dbba068ad0a8
MD5 72af4d9e0a4d43e839498223b1b86989
BLAKE2b-256 dcb9d7c14469c64ea165c2386a9dd024ef24263202e16541fd2ea310c1ba713a

See more details on using hashes here.

File details

Details for the file exoprotocol-0.1.13-py3-none-any.whl.

File metadata

  • Download URL: exoprotocol-0.1.13-py3-none-any.whl
  • Upload date:
  • Size: 198.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for exoprotocol-0.1.13-py3-none-any.whl
Algorithm Hash digest
SHA256 93a60b3af481be24e0abe0ae03bfe4e8e0f07cfde8b003a990a4d2f5770791c8
MD5 849e85e94eeeebab4edbe16f47d8c4b9
BLAKE2b-256 e0bac901568e2ff89c75d62b96c44527063a809675dceb308ffcadd99a7cf44d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page