vera

A durable, open agent runtime and harness.

Use the SDK library and workflow to script in Python and build your application.

  • Code with an agent in your terminal.
  • Write workflows in plain Python. Steps retry, branch, pick up after a crash, and wait for a person when they need one.
  • Add extensions, or use the SDK to build your own agents.

Being built in public.

Vera in action

A recorded Vera session: an answer, then switching models and filtering them by score.

Install

From a Vera checkout, install dependencies and activate a local release. Then run vera in your project directory.

Installation instructions

bun install
bun run install:local

Connect a provider to start using a model.

Workflows in plain Python

Write each step as a function. Steps retry, branch like any Python, pick up after a crash, and can stop to ask a person.

Workflows are under heavy development, and the API will change.

Write your first workflow

from vera.workflow.api import ask, step, workflow

@step(retries=3)
def fetch(url: str) -> str: ...

@step
def publish(page: str) -> None: ...

@workflow
def review(url: str) -> str:
    page = fetch(url)
    if ask("Publish this page?") == "yes":
        publish(page)
    return page