DEV.co
AI Frameworks · apache

burr

Apache Burr is a Python framework for building stateful AI applications (chatbots, agents, simulations) using a state-machine model. It provides built-in monitoring, tracing, and persistence capabilities, plus a web UI for real-time inspection and debugging.

Source: GitHub — github.com/apache/burr
2.5k
GitHub stars
169
Forks
Python
Primary language
Apache-2.0
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
Repositoryapache/burr
Ownerapache
Primary languagePython
LicenseApache-2.0 — OSI-approved
Stars2.5k
Forks169
Open issues118
Latest releasev0.42.0-incubating (2026-05-10)
Last updated2026-06-28
Sourcehttps://github.com/apache/burr

What burr is

Burr models application logic as a directed graph of actions with explicit state transitions, reads/writes declarations, and pluggable persisters. It includes a telemetry UI, integrates with LLM frameworks, and works with non-LLM workflows; released under Apache 2.0 and currently in incubating status.

Quickstart

Get the burr source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/apache/burr.gitcd burr# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

LLM-driven conversational systems

Chatbots, RAG assistants, and multi-turn dialogue systems that require state management between API calls and explicit tracking of conversation history.

Multi-step agentic workflows

Decision trees, human-in-the-loop approval processes, and orchestrated task pipelines where explicit state transitions and auditability are critical.

Non-LLM stateful applications

Time-series simulations, hyperparameter tuning loops, and general workflows that benefit from graph-based state management and built-in tracing.

Implementation considerations

  • State machine model requires upfront design clarity; actions must declare reads/writes to enable proper dependency tracking and persistence.
  • UI telemetry is optional but recommended; understand how persister backends (in-memory, database, cloud) integrate with your infrastructure.
  • LLM integrations are framework-agnostic but require manual setup; examples show OpenAI, but you configure prompting, API calls, and error handling yourself.
  • Python-only; no Go, Node, or JVM support—ensure team expertise and deployment environment support Python runtimes.
  • Incubating status means API surface may shift; pin versions carefully and monitor release notes for breaking changes.

When to avoid it — and what to weigh

  • Asynchronous event-driven requirements — If your system requires event queues, pub/sub, or reactive event streams (e.g., real-time data pipelines), temporal orchestrators or event frameworks are better suited.
  • Low-latency synchronous APIs — Burr's execution model and UI tracking may add overhead; if sub-millisecond latency is critical, consider lightweight libraries or purpose-built systems.
  • Incubating stability concerns — Project is marked incubating; breaking changes are possible. If you need production-hardened, stable APIs, defer until graduation or use a mature alternative.
  • Simple stateless request-response logic — For trivial CRUD or REST endpoints without state management complexity, Burr's graph abstraction introduces unnecessary overhead.

License & commercial use

Apache License 2.0 (Apache-2.0): permissive open-source license allowing commercial use, modification, and distribution. Requires preservation of license text, copyright notices, and NOTICE file; provides liability and warranty disclaimers.

Apache 2.0 permits commercial use, including in proprietary products. No copyleft requirement. However, projects under ASF incubation may have governance or support implications—verify your organization's open-source policy and consider support arrangements separately.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationAdequate
License clarityClear
Deployment complexityLow
DEV.co fitGood
Assessment confidenceHigh
Security considerations

No explicit security audit or threat model provided in available data. Considerations: (1) state persister backends must be secured (credentials, encryption at rest/transit); (2) UI telemetry server should not expose sensitive state without authentication; (3) LLM API keys and prompts should not leak into logs; (4) incubating projects may not have undergone formal security review—assess before handling sensitive data.

Alternatives to consider

LangGraph

Also models state machines with graph-based workflows for LLM agents; has official LangChain integration; but lacks built-in open-source UI and is tightly coupled to LangChain ecosystem.

Temporal

Mature, distributed workflow orchestration with durability guarantees; supports asynchronous, event-driven patterns; but does not explicitly model state machines and has higher operational complexity.

Apache Hamilton

DAG-based data transformation and orchestration framework from same ecosystem; works with non-LLM workflows; but is acyclic and lacks built-in tracing UI, hence Burr was created to add state-machine semantics.

Software development agency

Build on burr with DEV.co software developers

Contact our team to evaluate Burr for your use case, design your state machine architecture, or integrate it with your existing infrastructure and observability stack.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

burr FAQ

Can I use Burr in production today?
The project is active and functional, but carries 'incubating' status under Apache governance. Before production deployment, verify your risk tolerance for potential breaking changes, conduct security review of your persister backend, and test thoroughly in your infrastructure.
Do I have to use an LLM with Burr?
No. Burr is a general state-machine framework. LLM examples are prominent in docs, but you can use it for any multi-step, stateful workflow (simulations, tuning loops, approval chains, etc.).
How do I persist state between application restarts?
Burr provides pluggable persisters (e.g., memory, database adapters). You configure a persister during application setup; state is serialized/deserialized on save/load. Details depend on your persister implementation.
Is there a managed hosting option?
Not mentioned in provided data. Apache Burr is open-source and self-hosted. Verify with project maintainers or community whether commercial hosting or support services exist.

Custom software development services

Need help beyond evaluating burr? DEV.co is a software development agency offering software development services and web development for teams of every size. Our software developers and web developers build custom software, web applications, APIs, and ai frameworks integrations — and maintain them long-term.

Ready to build stateful AI applications?

Contact our team to evaluate Burr for your use case, design your state machine architecture, or integrate it with your existing infrastructure and observability stack.