Integrations
Compose Ablo's authoritative shared-state operations with the runtimes that execute, schedule, or ingest work in your application.
Integrations live at the application edge. Ablo continues to own typed reads and writes, idempotency, claims, and authoritative confirmation; the external runtime keeps owning the job it was designed for.
| Category | Integration | Status | Use it for |
|---|---|---|---|
| Long-running tasks | Temporal | Available | Durable Workflows, Activity retries, timers, cancellation, and durable AI SDK calls |
| Long-running tasks | Inngest | Available | Event-driven durable functions, retriable steps, flow control, and checkpointed AI SDK calls |
| Data ingestion | Connector runtimes | Planned | Bringing external data into Ablo-backed models without creating a second write authority |
An integration gets its own guide when there is runnable application code and the boundary has been tested. A dedicated package comes later still: only repeated production integrations that reveal substantial reusable behavior justify adding another public runtime dependency.
Long-running tasks
Use Temporal when work must survive process failure, retry Activities, wait on timers, or preserve a durable model loop. Temporal owns execution history. Each tool or Activity that touches shared state calls the branded Ablo model API at the application edge.
The complete example lives in examples/temporal-agent and includes retry,
replay, cancellation, claim release, and Workflow-bundle tests.
Use Inngest when durable work starts from events
and should be expressed as independently retriable steps behind an application
HTTP endpoint. Inngest owns event delivery, step checkpoints, and flow control.
Each step.run() that touches shared state calls the same branded Ablo model
API used elsewhere in the application.
The complete example lives in examples/inngest-agent and includes
confirmed-write response-loss replay, key/body conflict, checkpoint reuse,
claim cleanup, and endpoint-discovery tests.
Data ingestion
Data ingestion is separate from the Inngest durable-execution integration. A connector or ingestion runtime belongs in this section when its public contract exists. The same ownership rule will apply:
- the ingestion runtime owns connectors, polling, checkpoints, parsing, and backpressure;
- Ablo owns validated model writes, idempotency, coordination, and confirmed outcomes;
- the consuming application owns field mapping and business policy.
Until that contract and a runnable example exist, this page records the category without publishing placeholder imports or configuration.