LlamaAgents

Orchestrate and deploy document-centric applications with asynchronous, event-driven Python workflows.

Stars
★ 464
Last updated
6d ago
License
MIT
Primary language
Python

At a glance

How it runs
Library / SDKSelf-hosted serviceCLI
Works with
Portable with changes
Cost
Free software; you pay for model usage
Setup effort
Medium · a few setup steps
You'll need
Pythonllama-index-workflowsShell / CLINetwork accessLocal filesystem
Typical use
A document-processing team needs to coordinate OCR, extraction, classification, custom validation, and human review in one Python workflow.
Not a fit if
  • Teams wanting built-in document parsing: OCR and extraction require plugging in external services like LlamaParse
  • Users wanting a ready-made chat bot or GUI: this is a Python library and CLI for developers
Source review
66/100 · Some gaps

What does this agent do, and when should you use it?

LlamaAgents is an open-source Python framework for building and shipping document-centric agent applications. Its Agent Workflows core models execution as asynchronous steps that consume and emit events, with support for branching, loops, parallelism, persisted state, and failure recovery. A workflow can run inside a script or notebook, live within a FastAPI or Starlette application, or be exposed through llama-agents-server as a REST API with streaming, persistence, and human-in-the-loop support. llama-agents-client supplies the matching asynchronous client, while llamactl covers project initialization, local development, and deployment. Applications can be delivered to LlamaParse, AWS Bedrock AgentCore, or private infrastructure as headless workflow services, MCP servers, or full-stack applications.

Developers subclass Workflow and mark asynchronous Python functions with @step; each step consumes an event such as StartEvent and returns or emits another event such as StopEvent. Application code can connect OCR, model calls, structured extraction, classification, image analysis, custom validation, and human review, although those processing functions must come from user code or integrated services. The runtime coordinates branches, loops, parallel work, persisted execution state, and recovery from failures, then exposes outputs through values such as StopEvent.result. Workflows can execute in-process through await workflow.run(...), or be registered with WorkflowServer for REST access, streaming responses, persistence, and calls from llama-agents-client. The llamactl CLI initializes projects, runs local development with hot reload, and creates deployments targeting LlamaParse, AWS Bedrock AgentCore, or an organization's own infrastructure.

  1. A document-processing team needs to coordinate OCR, extraction, classification, custom validation, and human review in one Python workflow.
  2. A Python developer is proving a contract-processing flow in a notebook and wants the same workflow code to move into production later.
  3. An enterprise processes high invoice volumes and must execute the application behind a customer's firewall or in another restricted environment.
  4. A backend team wants to mount an asynchronous workflow in an existing FastAPI or Starlette application and expose it as a REST service.
  5. An engineering team frequently revises extraction logic and needs persisted state and recovery to avoid restarting long-running document jobs.
  6. An application team wants a CLI path from a starter project and local hot reload to deployment on LlamaParse, AWS Bedrock AgentCore, or private infrastructure.

How do you install or deploy this agent?

Install the core library mode with:

pip install llama-index-workflows

The supplied material identifies Python as the runtime but does not state a minimum Python version, virtual-environment procedure, or complete dependency matrix. No credentials are documented for a basic in-process workflow. Accounts, credentials, and configuration for LlamaParse, AWS Bedrock AgentCore, or other external services are not specified. To use the deployment CLI, install llamactl with:

uv tool install llamactl

How do you use this agent?

Define a minimal workflow:

from workflows import Workflow, step
from workflows.events import StartEvent, StopEvent

class HelloWorkflow(Workflow):
    @step
    async def greet(self, ev: StartEvent) -> StopEvent:
        return StopEvent(result=f"Hello, {ev.name}")

The documented in-process interface is await workflow.run(...), but the source does not supply a complete executable entry point or the exact event arguments for this example. To register the workflow with a server:

from llama_agents.server import WorkflowServer

server = WorkflowServer()
server.add_workflow("greet", HelloWorkflow())

The supplied material does not include the server launch command, port configuration, or a client request example. The documented llamactl flow is:

llamactl init
llamactl serve
llamactl deployments create

llamactl serve is described as supporting local development with hot reload; authentication and target-specific deployment configuration are not provided.

What are this agent's strengths and limitations?

Pros
  • Steps are ordinary asynchronous Python functions connected by events, so workflows do not require a separate orchestration DSL.
  • The same workflow code can progress from a script or notebook to a REST service, a locked-down customer environment, or a replicated deployment.
  • Branching, loops, parallel execution, state persistence, and failure recovery directly address slow, heavy document pipelines.
  • The project covers several delivery boundaries through an embeddable library, WorkflowServer, an asynchronous client, and the llamactl deployment CLI.
  • It can combine LlamaParse document primitives with application-owned orchestration, business logic, and review steps.
Limitations
  • The supplied material does not specify supported Python versions, a production dependency matrix, server startup parameters, or complete configuration steps.
  • OCR, model inference, extraction, and image analysis are not automatically supplied by the orchestration core; adopters must implement steps or integrate services such as LlamaParse.
  • Persistence may use a file or database, but supported databases, connection settings, recovery semantics, and operational examples are not documented here.
  • Deploying to LlamaParse or AWS Bedrock AgentCore introduces platform accounts, networking, and configuration requirements that are not detailed.
  • No native integration with ChatGPT, Codex, Claude, the OpenAI API, or the Anthropic API is explicitly documented, so provider-specific use may require adaptation.

How does this agent compare with similar options?

Key facts side by side with the most closely related agents.

Agent Source review Form / cost Stars Updated Language Full support on
LlamaAgents This agent 66 · Some gaps Library / SDKFree + model costs ★ 464 6d ago Python —
Omnara Managed Agent Platform 65 · Some gaps Hosted serviceFreemium ★ 3.4k 1d ago Go Codex · Claude Code · Claude.ai · OpenAI API · Claude API
AgentField AI Backend 45 · Major gaps CLIFree + model costs ★ 2.6k 2d ago Go Codex · Claude Code
Deuz SDK 69 · Some gaps Library / SDKFree + model costs ★ 508 20d ago TypeScript OpenAI API · Claude API

How does FollowAgents rate this agent?

FollowAgents source review · FARS-2.1
Some gaps
66/ 100 5-point scale 3.3 / 5
This review covers the source as of Sep 17, 2026. The project has shipped 12 stable release(s) since, which have not been re-reviewed. The score and verdict describe the reviewed version only. Recent releases ↓
Trust 17/29
Reliability 9/14
Adaptability 15/18
Convention 11/18
Effectiveness 9/13
Verifiability 5/8
Why each dimension lost points
Trust17 / 29 · 2.9/5

The evidence shows Helm tests separating application and release namespaces, using Roles rather than ClusterRoles, and checking a NetworkPolicy, which supports reasonable permission scoping. Object-storage credentials can come from user-managed, dedicated, or encryption Secrets, with explicit precedence and validation. Dependency controls include a hash-qualified pnpm version, constrained versions, and automated upgrade pull requests. Deductions apply because the complete RBAC templates and an exhaustive data-flow inventory are absent, while inline S3 credentials can still be rendered into a merely base64-encoded Kubernetes Secret. Deployment, networking, object storage, and cloud integrations can create external effects without a demonstrated uniform confirmation gate. Persistence, recovery, human review, and backup paths are mentioned, but no complete undo or deployment-rollback procedure is shown. Repository, package, and copyright attribution are present, although publisher identity is unverified and badge targets mix workflows, llama-agents, and llama-index-workflows names.

Reliability9 / 14 · 3.2/5

The README, workspace configuration, Helm validation workflow, and tests broadly agree on a product comprising asynchronous workflows, server and client packages, and deployment tooling. CI checks Helm linting, generated documentation, server-side dry runs, and multiple configuration branches. Dependency constraints and the documented boto3 compatibility override show active resolution management, while template tests assert concrete messages for missing buckets and incomplete credentials. Deductions apply because the supplied evidence omits core runtime implementations and their unit tests, README badge repository names are inconsistent, top-level pytest defaults only to dev_cli tests, and most dependency evidence uses ranges rather than demonstrating a complete immutable lock.

Adaptability15 / 18 · 4.2/5

The materials explicitly address notebooks, scripts, FastAPI or Starlette applications, locked-down customer environments, standalone deployment, Kubernetes, LlamaParse, AWS Bedrock AgentCore, and self-managed infrastructure. They also describe a progression from an invoked function through serving, durable coordination, and replication, earning full credit for audience coverage and environment fit. Typed events, steps, workflow boundaries, and headless, MCP, or full-stack forms provide a reasonable capability and triggering model. Deductions apply because input validation, ambiguous routing, resource limits, and detailed integration boundaries are not shown, while some scale and no-rewrite portability claims remain README assertions.

Convention11 / 18 · 3.1/5

The README organizes entry points by library, server, client, CLI, and cloud integration and supplies pip, uv, Python, and deployment examples. Workspace membership and type-checking environments identify the principal packages. The complete MIT text agrees with both project manifests, fully supporting the license score. Changesets scripts and the automated dependency-bump workflow establish an update path. Deductions apply for the lack of an explicit FAQ, centralized known limitations, and a supplied changelog. LlamaAgents, Agent Workflows, llama-index-workflows, llama-agents, and older link targets coexist, weakening naming stability. Organizational ownership, copyright, and automation suggest maintenance responsibility, but contributor ownership and security contact details are absent.

Effectiveness9 / 13 · 3.5/5

The examples provide usable starting points for a Python workflow, REST service, and CLI deployment. Persistence, recovery, branching, parallel execution, human review, and pluggable backends offer plausible value over hand-built orchestration, while library, embedded-server, and deployment modes provide graduated adoption costs. Deductions apply because the supplied files contain no statically verifiable measurements of performance, resource use, migration effort, operational burden, or comparisons with alternatives. Claims concerning million-document workloads and reliable production operation are not thoroughly substantiated by the included evidence.

Verifiability5 / 8 · 3.1/5

Many concrete claims trace to pyproject, package.json, CI, and Helm tests, including supported Python versions, package structure, S3 settings, Secret precedence, namespaces, and failure messages. Package declarations and chart tests partially corroborate the README's deployment structure. Deductions apply because core implementation files, release history, and linked documentation pages are not included, preventing direct verification of persistence, replication, human-in-the-loop, and scale claims. The README also does not consistently distinguish demonstrated behavior, design intent, and promotional inference.

Risks and how to mitigate them
  • This is a static review of only the supplied files; no code, tests, containers, Helm charts, or deployments were executed.
  • Before production use, inspect the complete RBAC and NetworkPolicy templates, all outbound data flows, cloud integrations, and default permissions.
  • Avoid supplying durable S3 credentials through inline values; prefer managed Secrets and verify backup encryption and credential-rotation procedures.
  • Independently validate the README claims about persistence, recovery, replication, human review, and high-volume processing.
  • Confirm that the installed packages, documentation, and badge targets correspond to the reviewed revision, particularly because several historical names coexist.
Evidence confidence: Low Reviewed Sep 17, 2026 Reviewed revision 6e81ae0c8c57 New commits since this review; the score may not cover them
See the full review method →

Recent releases

Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.

  1. [email protected]
    Release notes excerpt
    Patch Changes - 9bf7f4a: Release the chart whenever the operator, appserver, or control plane image it ships is bumped.
    View on GitHub ↗
  2. [email protected]
    Release notes excerpt
    Patch Changes - 64fbd6c: Builds link the UI output at /opt/app/.llama-ui so nginx serves the UI for pushed deployments. - 3ac8112: Keep UI directory redirects on the public host when serving built files behind a proxy.
    View on GitHub ↗
  3. [email protected]
    Release notes excerpt
    Patch Changes - 64fbd6c: Builds link the UI output at /opt/app/.llama-ui so nginx serves the UI for pushed deployments.
    View on GitHub ↗

FAQ

Can it run entirely in my own environment?
The library can be embedded in scripts, notebooks, servers, locked-down customer environments, and private infrastructure. Individual steps still need network access and credentials if they call cloud models or LlamaParse.
Does it include OCR and structured-extraction models?
The material assigns OCR, structured extraction, classification, and splitting to LlamaParse. LlamaAgents itself focuses on orchestration, business logic, and review.
Must a failed long-running workflow restart from the beginning?
The framework states that it supports persisted state and failure recovery, with runs saved to a file or connected to a database. Exact recovery guarantees and configuration examples are not provided.
Can a workflow include human review?
Yes. llama-agents-server explicitly supports human-in-the-loop operation, although the review interface, permission model, and API details are not described.
What does it cost to adopt?
The repository uses the MIT license. Costs for the core packages, LlamaParse, AWS Bedrock AgentCore, model calls, and hosting are not stated in the supplied material.
View on GitHub ↗ Install ↓

Compare agents like this one

The same FARS review applied across the shortlist this agent qualifies for.

Related agents