Skip to main content

Deterministic execution engine with traceable, immutable history

Project description

Anusara

Deterministic execution runtime for agent workflows.

CI PyPI Python License Architecture


What is Anusara?

Anusara is a deterministic runtime for executing agent workflows.

Anusara makes agent workflows deterministic, observable, and replayable by design.

It executes graphs of agents using:

  • deterministic scheduling
  • event-sourced execution history
  • replay-driven state reconstruction

Every execution becomes:

  • replayable
  • inspectable
  • debuggable
  • reproducible

Anusara treats workflow execution as a runtime system problem, not a collection of loosely connected function calls.


🚀 Quickstart (2 minutes)

Install

pip install anusara[api]

Run the server

PYTHONPATH=src python -m uvicorn anusara.adapters.http.app:create_app --factory --reload

Register agent

curl -X POST http://127.0.0.1:8000/agents/register \
  -H "Content-Type: application/json" \
  -d '{"name": "hello"}'

Execute

curl -X POST http://127.0.0.1:8000/executions \
  -H "Content-Type: application/json" \
  -d '{"entry_nodes": ["hello"]}'

👉 You just ran your first deterministic workflow.

➡️ Full guide: docs/guides/http-api-quickstart.md


The Mental Model

Agent Graph
     ↓
Deterministic Execution Engine
     ↓
Event Log (source of truth)
     ↓
Replay • Debug • Observability

Execution is not hidden state.

It is a recorded, replayable system.


Why Anusara?

Most agent orchestration systems rely on implicit runtime behavior.

This leads to:

  • nondeterministic execution
  • difficult debugging
  • hidden state transitions
  • unreliable retries
  • poor reproducibility

Anusara solves this by enforcing:

  • deterministic execution
  • event log authority
  • replay-based debugging
  • explicit lifecycle guarantees

Architecture Overview

flowchart LR
    Client["Client / API / CLI"] --> Runtime

    Runtime["Execution Runtime"]
    Runtime --> Graph["Graph Compiler"]
    Runtime --> Registry["Agent Registry"]
    Runtime --> Router["Router"]
    Runtime --> Mutation["Mutation Engine"]

    Runtime --> EventLog[("Event Log")]

    EventLog --> Replay["Replay Engine"]
    EventLog --> Debugger["Debugger / Analysis"]

    Runtime --> Observability["Observability"]

Core Responsibilities

Layer Responsibility
Runtime deterministic execution of workflows
Event Log authoritative execution history
Registry agent lifecycle & resolution
Router execution decision logic
Mutation Engine controlled graph evolution
Observability debugging, metrics, visualization

Local Python Example

import asyncio
from anusara import ExecutionEngine, ExecutionRequest, AgentRegistry

engine = ExecutionEngine()

registry = AgentRegistry()
registry.register("hello", HelloAgent())

request = ExecutionRequest(
    request_id="demo",
    entry_nodes=["hello"],
    payload={},
    metadata={},
)

asyncio.run(engine.execute(request, registry))

Key Features

  • deterministic execution
  • event-sourced execution history
  • replayable workflows
  • HTTP + CLI + Python runtime
  • agent lifecycle management
  • built-in observability
  • controlled workflow mutation

Documentation

🚀 Getting Started

  • docs/guides/http-api-quickstart.md
  • docs/guides/running-anusara-locally.md
  • docs/guides/creating-your-first-agent.md

📚 Concepts

  • agents
  • deterministic execution
  • event sourcing
  • replay

🏗 Architecture

  • execution model
  • runtime architecture
  • event log
  • mutation model

📖 Reference

  • HTTP API
  • agent registry
  • execution engine

Project Status

Anusara is under active development.

Current focus:

  • developer experience (HTTP API & usability)
  • onboarding and documentation
  • production readiness

Contributing

Contributions and discussions are welcome.

  • CONTRIBUTING.md
  • CODE_OF_CONDUCT.md
  • SECURITY.md

Security

Anusara Docker images are built on python:3.12-slim-bookworm and regularly updated to minimize vulnerabilities.

We prioritize:

  • eliminating high/critical vulnerabilities
  • maintaining minimal runtime footprint
  • reproducible builds

Low-severity base image CVEs are tracked but not always actionable.


License

MIT 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

anusara-1.3.5.tar.gz (90.3 kB view details)

Uploaded Source

Built Distribution

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

anusara-1.3.5-py3-none-any.whl (134.3 kB view details)

Uploaded Python 3

File details

Details for the file anusara-1.3.5.tar.gz.

File metadata

  • Download URL: anusara-1.3.5.tar.gz
  • Upload date:
  • Size: 90.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for anusara-1.3.5.tar.gz
Algorithm Hash digest
SHA256 f6786b72c49a4fd6761dc2a837c689011e482bc92572f30c69be656b4e0650ce
MD5 b232f80a9eabf0f8c73b4a3fba5752bf
BLAKE2b-256 7fbf77d4792428482ca846c42829d2d1b0b44493e27d55ce8a1e096936b5b79f

See more details on using hashes here.

File details

Details for the file anusara-1.3.5-py3-none-any.whl.

File metadata

  • Download URL: anusara-1.3.5-py3-none-any.whl
  • Upload date:
  • Size: 134.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for anusara-1.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 5f7fae1c64043055508599af0e9c2d946dad06815004d8f6ee4871199b3d6046
MD5 e8a792edc8a51e09069ea6b8317cb68c
BLAKE2b-256 6ccc00b0e493eea3c8778e1a921ab3b2b30e6c03e3f4b9e1e8d80c9a3e230cf9

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