|
| 1 | +# Temporal Workflow Streams |
| 2 | + |
| 3 | +> ⚠️ **This package is currently at an experimental release stage.** ⚠️ |
| 4 | +
|
| 5 | +**Workflow Streams** is a Temporal Python SDK contrib library that gives a |
| 6 | +Workflow a durable, offset-addressed event channel for keeping outside |
| 7 | +observers updated on the progress of the Workflow and its Activities. |
| 8 | +Typical uses include driving a UI for a long-running AI agent, surfacing |
| 9 | +status during in-flight payment or order processing, and reporting progress |
| 10 | +from data pipelines. It is not designed for ultra-low-latency applications |
| 11 | +such as real-time voice; per-roundtrip latency is around 100ms, and cost |
| 12 | +scales with durable batches rather than tokens. |
| 13 | + |
| 14 | +Under the hood the stream is built directly on Temporal's existing |
| 15 | +message-passing primitives: Signals carry publishes, Updates serve |
| 16 | +long-poll subscriptions, and a Query exposes the current global offset. |
| 17 | +The library packages the boilerplate that turns those primitives into |
| 18 | +a usable stream: batching to amortize per-event overhead, deduplication |
| 19 | +for exactly-once delivery, topic filtering, and continue-as-new helpers |
| 20 | +that hand stream state across Workflow runs. |
| 21 | + |
| 22 | +## Documentation |
| 23 | + |
| 24 | +📖 **The full guide lives in the Temporal documentation site:** |
| 25 | +**[Workflow Streams — Python SDK](https://docs.temporal.io/develop/python/libraries/workflow-streams)** |
| 26 | + |
| 27 | +It covers installation, enabling streaming on a Workflow, publishing from |
| 28 | +Workflows and Activities, subscribing, continue-as-new, delivery semantics, |
| 29 | +codec and payload encoding, architecture, and caveats — with runnable code |
| 30 | +snippets throughout. |
| 31 | + |
| 32 | +For runnable end-to-end examples, see the |
| 33 | +[Workflow Streams samples](https://github.com/temporalio/samples-python/tree/main/workflow-streams). |
0 commit comments