Skip to main content

High-performance multi-agent framework for stateful batched execution.

Project description

Efficient Agent Protocol (EAP)

CI Python

Status: Experimental (pre-1.0). APIs and schema may change. See STABILITY.md and ROADMAP.md for guarantees and planned milestones. Latest stable release: v0.1.6

Efficient Agent Protocol is a local-first framework for multi-step tool workflows. It stores large outputs as pointer-backed state (ptr_*) and runs dependency-aware DAG steps in parallel.

Who This Is For

  • Python developers building local-first agent/tool orchestration
  • Teams that need pointer-backed state and execution trace visibility

Not ideal yet for:

  • strict long-term API compatibility requirements before v1.0
  • non-technical users expecting zero-configuration onboarding

What You Get

  • Pointer-based state to keep prompts small
  • Parallel DAG execution with retries and validation
  • Built-in chat UI (Streamlit) with trace + data inspection
  • Conversation memory (full/window/summary)
  • Pluggable pointer storage backends (SQLite, Redis, PostgreSQL)

Quickstart (GitHub-first)

Requirements:

  • Python 3.9+
  1. Install
git clone https://github.com/GenieWeenie/efficient-agent-protocol.git
cd efficient-agent-protocol
pip install -e .
  1. Configure
cp .env.example .env

Minimum variables:

EAP_BASE_URL=http://localhost:1234
EAP_MODEL=nemotron-orchestrator-8b
EAP_API_KEY=not-needed
  1. Smoke test
python -m examples.01_minimal
  1. Run dashboard
pip install streamlit pandas
streamlit run app.py
  1. Use it
  • Open http://localhost:8501
  • In Agent Chat, ask for a task
  • Check Data Inspector for pointer payloads
  • Check Execution Trace for step timing/retries/errors

Programmatic Example

from eap.protocol import StateManager
from eap.environment import AsyncLocalExecutor, ToolRegistry
from eap.environment.tools import read_local_file, READ_FILE_SCHEMA
from eap.agent import AgentClient

state_manager = StateManager()
registry = ToolRegistry()
registry.register("read_local_file", read_local_file, READ_FILE_SCHEMA)
executor = AsyncLocalExecutor(state_manager, registry)

architect = AgentClient(
    base_url="http://localhost:1234",
    model_name="nemotron-orchestrator-8b",
    provider_name="local",
)

manifest = registry.get_agent_manifest()
macro = architect.generate_macro("Read README.md and summarize setup steps", manifest)
# asyncio.run(executor.execute_macro(macro))

Common Commands

python3 -m pytest -q
pre-commit run --all-files
python3 scripts/migrate_state_db.py --db-path agent_state.db --dry-run
python3 scripts/export_metrics.py --db-path agent_state.db --output metrics/latest.json
python3 -m build

Docs

  • STABILITY.md
  • ROADMAP.md
  • docs/v1_contract.md
  • docs/release_notes_template.md
  • docs/benchmarks.md
  • docs/release.md
  • docs/v1_stabilization_checklist.md
  • docs/migrations.md
  • docs/observability.md
  • docs/maintainer_runbook.md
  • SECURITY.md
  • CONTRIBUTING.md
  • GitHub roadmap board: https://github.com/users/GenieWeenie/projects/1
  • docs/configuration.md
  • docs/architecture.md
  • docs/tools.md
  • docs/workflow_schema.md
  • docs/storage_lifecycle.md
  • docs/storage_backends.md
  • docs/sdk_contract.md
  • docs/distributed_execution.md
  • docs/troubleshooting.md
  • docs/eap_proof_sheet.md

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

efficient_agent_protocol-0.1.6.tar.gz (45.7 kB view details)

Uploaded Source

Built Distribution

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

efficient_agent_protocol-0.1.6-py3-none-any.whl (59.5 kB view details)

Uploaded Python 3

File details

Details for the file efficient_agent_protocol-0.1.6.tar.gz.

File metadata

  • Download URL: efficient_agent_protocol-0.1.6.tar.gz
  • Upload date:
  • Size: 45.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for efficient_agent_protocol-0.1.6.tar.gz
Algorithm Hash digest
SHA256 0e36962114b16b96eb5511343a43d874ae1a60befa2c0a136550a4273855db03
MD5 99b54d74e1b6cb3907e6d2341735b729
BLAKE2b-256 a1904d92a6b2ceedd69980308cfeeb278f4861901e13e3635c83b348f7cc3f11

See more details on using hashes here.

File details

Details for the file efficient_agent_protocol-0.1.6-py3-none-any.whl.

File metadata

File hashes

Hashes for efficient_agent_protocol-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 04ed6b91fdd86e009a926354351f1f033965b85836e7682fd2b1cf637ad979a1
MD5 69d7c2df571365a70ce3c6cb3af3563f
BLAKE2b-256 3cca98b812c175524fd91696a714f75799cd478ea36b252bcc51a4df5aeaacbe

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