Features

One agent runtime,
every surface it runs on.

Engine, chat, visual builder, observability, and batch — built on the same durable core, not bolted together.

Core runtime

Everything an agent needs, built in.

A production Python framework for autonomous agents, on FastAPI with full async support, Postgres persistence, and Redis-backed memory.

  • ReAct agent loop (Think → Act → Observe)
  • Multi-agent orchestration & planning
  • Guardrails: PII detection, prompt-injection filtering
  • Three memory tiers: unbounded, sliding-window, token-limited
  • Structured output via Pydantic, plus LLM-as-judge evals
  • Python 3.13, fully async, type-safe throughout
ReAct Agent Loop
  1. User Prompt
  2. Input Guard
  3. Think ⇄ Act ⇄ Observe
    loops until the model decides it's done
  4. Web Surfer · Code Exec · Task Mgr
    tools called from Act, results feed Observe
  5. Output Guard
  6. Response
chat
Extract all invoices from the uploaded folder
Thinking...I'll process each PDF. Found 12 invoices. Extracting fields...
extract_invoice
⏳ Awaiting approval...
Deployed surface

A chat surface the agent already speaks.

Real-time streaming, interactive tool widgets, and human-in-the-loop approvals — no separate chatbot to build.

  • Real-time SSE streaming, token by token
  • Human-in-the-loop tool approvals
  • Interactive MCP App widgets via iframes
  • Kanban task board with live updates
  • Voice: speech-to-text, TTS, real-time speech-to-speech
  • Thread history, file upload, dark/light theme
Visual builder

13 node types, one durable graph.

Drag nodes onto a canvas, connect them, configure parameters. The graph you draw is the graph the runtime executes.

A

Agent

LLM reasoning step with configurable model & prompt

T

Tool

Tool invocation with risk level and HITL mode

S

Skill

Reusable prompt-skill packages

G

Guardrail

Input/output validation layer

R

Router

Classify & branch based on conditions

M

Memory

Session memory backend (Redis/Postgres)

M

MCP

External MCP server connection

C

Condition

Expression-based branching

A

Approval

Human-in-the-loop gate

W

While

Loop construct with max iterations

S

Start / End

Flow anchor points

N

Note

Annotation for documentation

document-processor.pipeline
  1. Start
  2. GPT-4o Agent
  3. Schema Guard
  4. Router
  5. Email Sender · Task Manager
    “urgent” routes to Email Sender, “normal” to Task Manager
  6. End

16 tools, ready to call.

Every name below is a real class in capabilities/tools/ — extend with your own, or connect any MCP server.

WebSurferTool

Browse & extract live pages

WebSearchTool

Search the web

WikipediaTool

Query Wikipedia

CodeInterpreterTool

Sandboxed Python, Firecracker

DocumentAnalyzerTool

Parse PDFs & documents

InvoiceExtractorTool

Extract invoice fields

AskHumanTool

Pause and ask a person

TaskManagerTool

Kanban task boards

EmailSenderTool

Send transactional email

HttpRequestTool

Call any HTTP endpoint

CalculatorTool

Exact numeric operations

KnowledgeSearchTool

RAG vector search

ImageGeneratorTool

Generate images

PipelineManagerTool

Run saved pipelines

MemoryTool

Short & long-term memory

ToolChainTool

Chain tools in sandboxed code

Observability

Every run traced, end to end.

Structured logs, distributed traces, and pre-built Grafana dashboards — see what happened, when, and why.

  • OpenTelemetry tracing → Grafana Tempo
  • Structured JSON logging → Loki
  • Prometheus metrics for latency, throughput, errors
  • Pre-built dashboards: Services Overview + Frontend Logs
  • Per-request trace IDs across all services
observability.log
INFOagent_runtimeAgent "analyst" started run r-3f8a
INFOtool_executorExecuting web_surfer (iteration 1/10)
WARNguardrailsPII detected in output, redacting...
INFOagent_runtimeRun r-3f8a completed (3 iterations, 2.4s)
trace_id: a1b2c3d4e5f6
batch-job.json
Batch Job: Invoice Extraction87% complete
invoice_001.pdf$4,250.00
invoice_002.pdf$1,890.50
invoice_003.pdf...
invoice_004.pdf—
Batch processing

Bulk jobs, tracked to completion.

Submit CSV or JSON batches, watch progress per item, export results — built for document extraction and content generation at scale.

  • Submit CSV/JSON batches via API or dashboard
  • Real-time progress tracking per item
  • Automatic retry on failures
  • Export results as CSV, JSON, or via webhook
  • Rate limiting and concurrency controls