← all repositories
yoheinakajima/activegraph

Agents as Event Logs, Not Chat Threads

An event-sourced graph runtime that replaces agent chat loops with a shared, append-only workspace where every mutation is traceable and forkable.

500 stars Python AgentsLLMOps · Eval
activegraph
Collecting fresh signals — velocity needs a few days of history.
collecting data…
star history

What it does

Active Graph is a Python runtime for long-running, stateful agents built around an event-sourced graph. Agents do not message each other directly; instead, reactive behaviors—functions, LLM calls, or logic attached to typed edges—fire in response to changes in a shared graph of objects and relations. Every mutation is an event appended to an immutable log, so the graph state is always a projection of its own history.

The interesting bit

The framework’s most unusual capability is fork-and-diff: branch any agent run at any event, reconfigure it, and structurally diff the result against the parent timeline without re-executing the shared prefix, because deterministic replay caches the common history. The README also treats failures as first-class behavior.failed events rather than exceptions, meaning crashes become audit trail entries instead of stack dumps.

Key highlights

  • Behaviors subscribe to graph shapes using a Cypher subset plus event predicates, including “relation behaviors” that run on edges rather than nodes
  • Strict replay mode re-fires every behavior and fails on divergence; permissive mode reconstructs state without re-execution
  • Isolated EventSink workers stream live events without putting adapter I/O on the runtime hot path
  • Cooperative bounded drains keep reads responsive during large derived-work drains via yielded quanta
  • Core runtime has only two hard dependencies (click and pydantic); LLM providers and storage backends are opt-in extras

Verdict

Worth a look if you are building long-horizon agents where auditability and reproducibility matter. Skip it if you just need a lightweight LLM wrapper or a quick prompt chain.

Frequently asked

What is yoheinakajima/activegraph?
An event-sourced graph runtime that replaces agent chat loops with a shared, append-only workspace where every mutation is traceable and forkable.
Is activegraph open source?
Yes — yoheinakajima/activegraph is open source, released under the Apache-2.0 license.
What language is activegraph written in?
yoheinakajima/activegraph is primarily written in Python.
How popular is activegraph?
yoheinakajima/activegraph has 500 stars on GitHub.
Where can I find activegraph?
yoheinakajima/activegraph is on GitHub at https://github.com/yoheinakajima/activegraph.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.