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.4

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.0.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.0-py3-none-any.whl (59.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: efficient_agent_protocol-0.1.0.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.0.tar.gz
Algorithm Hash digest
SHA256 6a3352352e68c9612e3783f7ddcdda2ef820e4814ac18d3c77ba9eb65342b97f
MD5 845311cde331a323b913dd7c402d1f1e
BLAKE2b-256 1cf21924c5bef5438245345e21b0662b5a41068fc977e6f3fdf57325b472c8ff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for efficient_agent_protocol-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b428abf5653e14ea724f007324927bdb4b3f9edac9b702ceb26229126e2687aa
MD5 d601d878c5fa0a02bef1001a2f7749bf
BLAKE2b-256 90f05b10e5cb762aee4830b366ead0eb0eaa8ccbc3d0841313fefecc912c41f0

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