Hanzo Tasks
Durable Workflow Execution
Build invincible applications. Workflows that survive crashes, retries that never give up, and sagas that always compensate. Your code runs to completion or rolls back cleanly. Every time.
Workflows That Never Fail
Every primitive you need for building reliable distributed systems.
Durable Execution
Workflows survive process crashes, server restarts, and network partitions. State is persisted automatically.
Saga Compensation
Define compensating actions for every step. Automatic rollback on failure. Distributed transactions done right.
Scheduled Workflows
Cron expressions, delayed starts, and recurring schedules. Timezone-aware. No external scheduler needed.
Signals & Queries
Send signals to running workflows. Query workflow state at any point. Real-time coordination between workflows.
Full History & Replay
Complete event history for every workflow execution. Deterministic replay for debugging. Audit trail built in.
KMS Secrets
Inject secrets from Hanzo KMS into workflow activities. Rotated automatically. Never stored in workflow history.
IAM Integration
Hanzo IAM for authentication and authorization. Namespace-level RBAC. Org-scoped data isolation.
Multi-Tenant
Namespace isolation per team or customer. Resource quotas. Independent scaling. Shared nothing architecture.
Child Workflows
Spawn child workflows from parents. Fan-out/fan-in patterns. Hierarchical execution with independent lifecycles.
Built for Real Workloads
From AI agents to payment sagas, Tasks handles the hard parts.
AI Agent Orchestration
Coordinate multi-step agent workflows with tool calls, human approval gates, and automatic retry on LLM failures. Durable state means agents can run for hours or days.
Commerce Sagas
Payment capture, inventory reservation, shipping, and notification as a single durable saga. Automatic compensation if any step fails. No lost orders.
CI/CD Pipelines
Build, test, deploy, and verify as a durable workflow. Retry flaky tests. Wait for manual approval. Roll back on failure. Full execution history.
Scheduled Jobs
Replace fragile cron with durable scheduled workflows. Timezone-aware. Exactly-once execution guarantees. Built-in monitoring and alerting.
Human-in-the-Loop
Pause workflows waiting for human input. Approval gates, review steps, and escalation timeouts. Resume exactly where you left off.
Native SDKs for Every Stack
Write workflows in Go, Python, TypeScript, or Java. Same durable guarantees everywhere.
func OrderWorkflow(ctx workflow.Context,
order Order) error {
// Step 1: Reserve inventory
err := workflow.ExecuteActivity(ctx,
ReserveInventory, order).Get(ctx, nil)
// Step 2: Charge payment
err = workflow.ExecuteActivity(ctx,
ChargePayment, order).Get(ctx, nil)
// Step 3: Ship order
return workflow.ExecuteActivity(ctx,
ShipOrder, order).Get(ctx, nil)
}async function orderWorkflow(
order: Order
): Promise<void> {
// Step 1: Reserve inventory
await reserveInventory(order)
// Step 2: Charge payment
await chargePayment(order)
// Step 3: Ship order
await shipOrder(order)
// If any step fails, saga
// compensation runs automatically
}How It Works
Durable execution powered by event sourcing.
+------------------+ +-------------------+
| Your Code | | Hanzo Tasks |
| | | Server |
| Workflow Def ---------> Scheduler |
| Activity Impl --------> Event History |
| Worker Pool ----------> State Store |
| | | |
+------------------+ +--------+----------+
|
+---------------+---------------+
| | |
+-----------+ +-----------+ +-----------+
| Hanzo SQL | | Hanzo KV | | Hanzo KMS |
| (History) | | (Queues) | | (Secrets) |
+-----------+ +-----------+ +-----------+
Simple, Predictable Pricing
Pay per action. An action is a workflow start, activity execution, signal, or timer fire.
Free
For prototyping and small projects
Pro
1M actions included per month
Team
10M actions included per month
Enterprise
Dedicated resources & SLAs
Build Invincible Applications
Free tier includes 25K actions per month. No credit card required.
Open source
Forked from Temporal (MIT). We track upstream and contribute fixes back where possible.