Add durable workflows to your application or AI agent to make it resilient to any failure. No infrastructure required, just use Postgres.





Use durable workflows to make AI agents fault-tolerant, observable, and reproducible. Integrate natively with popular agent frameworks like Pydantic AI, LlamaIndex, the OpenAI Agents SDK, and the Vercel AI SDK.
from dbos_openai_agents import DBOSRunner
# Define a tool for your agent
@function_tool
@DBOS.step()
async def get_weather(city: str) -> str:
"""Get the weather for a city."""
return f"Sunny in {city}"
# Create an agentic workflow
@DBOS.workflow()
async def run_agent(user_input: str) -> str:
agent = Agent(name="weather", tools=[get_weather])
result = await DBOSRunner.run(agent, user_input)
return str(result.final_output)Write your business logic in normal code, with branches, loops, subtasks, and retries. DBOS makes it resilient to any failure.
@DBOS.workflow()
def checkout_workflow(items: Items):
# First, create an order
order = create_order()
# Then, reserve inventory
reserve_inventory(order, items)
# Next, process payment
payment_status = process_payment(order, items)
if payment_status == 'paid':
# If payment succeeds, fulfill the order
fulfill_order(order)
else:
# If payment fails, release inventory
# and cancel the order
undo_reserve_inventory(order, items)
cancel_order(order)Use durable queues to simplify fault-tolerant orchestration of thousands of concurrent tasks. Control how many tasks can run concurrently or how often tasks can start.
# Create a named queue for indexing tasks,
# It runs no more than 10 functions concurrently
queue = Queue("indexing_queue", concurrency=10)
@DBOS.workflow()
def indexing_workflow(urls):
handles = []
# Enqueue an index task for each URL
for url in urls:
handle = queue.enqueue(index_doc, url)
handles.append(handle)
# Wait for each task to complete
# and get result
return [h.get_result() for h in handles]Get real-time visibility into workflow health and performance. Inspect workflow executions, track queue metrics, and cancel, resume, or restart your workflows from the dashboard.

Schedule durable workflows to run exactly once per interval. Create, update, or backfill schedules dynamically without managing external schedulers.
Record a stock's price once a minute, migrate customer data once every hour, or send emails to inactive users once a week.
@DBOS.workflow()
def customer_workflow(scheduled_time: datetime, customer_id: str):
# Code to sync customer data
...
def on_customer_registration(customer_id: str):
# Create a schedule dynamically per user
# to run the customer_workflow
DBOS.create_schedule(
schedule_name=f"cus-{customer_id}-sync",
workflow_fn=customer_workflow,
schedule="0 * * * *", # Runs every hour
context=customer_id,
)Run workflows that pause, wait for human input, and resume reliably, even across restarts and redeploys.
Durable sleep and notifications let workflows wait for days or weeks, or until an external signal arrives, before continuing.
@DBOS.workflow()
def durable_agent(request):
# Upon reaching a step that needs approval,
# await an approval notification.
approval = DBOS.recv()
# If approved, continue execution.
# Otherwise, raise an exception to stop execution
if approval is None:
raise Exception("Agent timed out awaiting")
elif approval.response == "deny":
raise Exception("Agent denied approval")
else:
print("Agent approved:", agent_status)
@app.post("/agents/{agent_id}/respond")
def respond_to_agent(agent_id, response):
# Notify an agent it has been approved or denied
DBOS.send(agent_id, response)DBOS takes a radically different approach to durability that can save you millions of dollars relative to costly orchestration servers like Temporal.
DBOS runs wherever your code runs - even in air-gapped environments.
DBOS turns your Postgres DB into an orchestration server. No need to host and operate a separate orchestration server.
DBOS stores workflow data in your Postgres database, totally under your control.
DBOS customers run many thousands of workflows per second with lower latency than Temporal.
DBOS makes it simple to build durable, fault-tolerant applications and AI agents at any scale.
Just install the open-source DBOS library to your code and connect it to a Postgres database. No new infrastructure required.
Annotate workflows and steps in your code to make your applications fault-tolerant and observable by default.
Use DBOS Conductor to facilitate workflow and queue troubleshooting, alerting, and remediation for all your apps.
Monitor and manage performance in real time.
First-party integrations with agent frameworks like OpenAI Agents, LlamaIndex, Pydantic AI, and the Vercel AI SDK.
Monitor and debug your workflows directly from your preferred coding agent.
Using DBOS Conductor, automatically recover failed workflow executions; cancel, resume, or restart workflows from a dashboard; set up alerts when workflows fail; and monitor workflow progress and queue status in real time—across all your AI applications.
DBOS is SOC 2, GDPR and CCPA compliant. DBOS never stores your data and is fully private.
Run on-prem or in any cloud. Self-host DBOS Conductor or connect from any environment.
Define custom alerts to notify your team of workflow orchestration issues.
Helping more devs, AI engineers, and SREs orchestrate fault-tolerant workflows.

"We've been impressed by how lightweight and flexible DBOS is, the speed at which their team ships, and the level of support offered. We, at Yutori, are happy customers and excited to scale with DBOS."

CEO & Co-founder

“DBOS makes it dead simple for our engineering team to build reliable, low-latency, AI-powered user experiences."

CTO and Co-founder
"I love the design of DBOS. If you're a gamer, it's like having a “save point” in your programs. If a function fails, a new function can start, picking up at the last checkpoint."

CEO & Co-Founder

“DBOS is really simple to manage. It gives us durable orchestration and observability without a lot of coding and without having to run additional infrastructure.”

CEO and Co-founder
“We looked at Google Workflows, Temporal, Airflow and Celery but DBOS was the one framework that solved many pieces of the puzzle while giving us implementation flexibility.”

Engineer

"DBOS makes it impossible to screw up."

CTO and Co-founder

"We've been impressed by how lightweight and flexible DBOS is, the speed at which their team ships, and the level of support offered. We, at Yutori, are happy customers and excited to scale with DBOS."

CEO & Co-founder

“DBOS makes it dead simple for our engineering team to build reliable, low-latency, AI-powered user experiences."

CTO and Co-founder
"I love the design of DBOS. If you're a gamer, it's like having a “save point” in your programs. If a function fails, a new function can start, picking up at the last checkpoint."

CEO & Co-Founder

“DBOS is really simple to manage. It gives us durable orchestration and observability without a lot of coding and without having to run additional infrastructure.”

CEO and Co-founder
“We looked at Google Workflows, Temporal, Airflow and Celery but DBOS was the one framework that solved many pieces of the puzzle while giving us implementation flexibility.”

Engineer

"DBOS makes it impossible to screw up."

CTO and Co-founder

"We've been impressed by how lightweight and flexible DBOS is, the speed at which their team ships, and the level of support offered. We, at Yutori, are happy customers and excited to scale with DBOS."

CEO & Co-founder

“DBOS makes it dead simple for our engineering team to build reliable, low-latency, AI-powered user experiences."

CTO and Co-founder
"I love the design of DBOS. If you're a gamer, it's like having a “save point” in your programs. If a function fails, a new function can start, picking up at the last checkpoint."

CEO & Co-Founder

“DBOS is really simple to manage. It gives us durable orchestration and observability without a lot of coding and without having to run additional infrastructure.”

CEO and Co-founder
“We looked at Google Workflows, Temporal, Airflow and Celery but DBOS was the one framework that solved many pieces of the puzzle while giving us implementation flexibility.”

Engineer

"DBOS makes it impossible to screw up."

CTO and Co-founder
The latest in durable execution, AI workflows & more.