@@ -17,267 +17,139 @@ samples:
1717 description : Basic hello world samples (activity, signal, query, etc.)
1818 dependencies :
1919 - temporalio>=1.23.0,<2
20- commands :
21- - cmd : uv run hello/hello_activity.py
2220 - path : hello_standalone_activity
2321 description : Execute Activities directly from a Client, without a Workflow
2422 dependencies :
2523 - temporalio>=1.23.0,<2
26- commands :
27- - cmd : uv run hello_standalone_activity/worker.py
28- - cmd : uv run hello_standalone_activity/execute_activity.py
29- new_terminal : true
3024 - path : hello_nexus
3125 description : Nexus service definition, operation handlers, and workflow calls
3226 dependencies :
3327 - temporalio>=1.23.0,<2
3428 - nexus-rpc>=1.1.0,<2
35- commands :
36- - cmd : temporal operator namespace create --namespace hello-nexus-basic-handler-namespace
37- - cmd : temporal operator namespace create --namespace hello-nexus-basic-caller-namespace
38- - cmd : temporal operator nexus endpoint create --name hello-nexus-basic-nexus-endpoint --target-namespace hello-nexus-basic-handler-namespace --target-task-queue my-handler-task-queue --description-file hello_nexus/endpoint_description.md
39- - cmd : uv run hello_nexus/handler/worker.py
40- - cmd : uv run hello_nexus/caller/app.py
41- new_terminal : true
4229 - path : nexus_cancel
4330 description : Fan out Nexus operations, take first result, cancel the rest
4431 dependencies :
4532 - temporalio>=1.23.0,<2
4633 - nexus-rpc>=1.1.0,<2
47- commands :
48- - cmd : temporal operator namespace create --namespace nexus-cancel-handler-namespace
49- - cmd : temporal operator namespace create --namespace nexus-cancel-caller-namespace
50- - cmd : temporal operator nexus endpoint create --name nexus-cancel-endpoint --target-namespace nexus-cancel-handler-namespace --target-task-queue nexus-cancel-handler-task-queue
51- - cmd : uv run nexus_cancel/handler/worker.py
52- - cmd : uv run nexus_cancel/caller/app.py
53- new_terminal : true
5434 - path : nexus_multiple_args
5535 description : Map a Nexus operation to a handler workflow with multiple arguments
5636 dependencies :
5737 - temporalio>=1.23.0,<2
5838 - nexus-rpc>=1.1.0,<2
59- commands :
60- - cmd : temporal operator namespace create --namespace nexus-multiple-args-handler-namespace
61- - cmd : temporal operator namespace create --namespace nexus-multiple-args-caller-namespace
62- - cmd : temporal operator nexus endpoint create --name nexus-multiple-args-nexus-endpoint --target-namespace nexus-multiple-args-handler-namespace --target-task-queue nexus-multiple-args-handler-task-queue
63- - cmd : uv run nexus_multiple_args/handler/worker.py
64- - cmd : uv run nexus_multiple_args/caller/app.py
65- new_terminal : true
6639 - path : nexus_sync_operations
6740 description : Nexus service backed by a long-running workflow with updates and queries
6841 dependencies :
6942 - temporalio>=1.23.0,<2
7043 - nexus-rpc>=1.1.0,<2
71- commands :
72- - cmd : temporal operator namespace create --namespace nexus-sync-operations-handler-namespace
73- - cmd : temporal operator namespace create --namespace nexus-sync-operations-caller-namespace
74- - cmd : temporal operator nexus endpoint create --name nexus-sync-operations-nexus-endpoint --target-namespace nexus-sync-operations-handler-namespace --target-task-queue nexus-sync-operations-handler-task-queue --description-file nexus_sync_operations/endpoint_description.md
75- - cmd : uv run nexus_sync_operations/handler/worker.py
76- - cmd : uv run nexus_sync_operations/caller/app.py
77- new_terminal : true
7844 - path : openai_agents
7945 description : OpenAI Agents SDK with Temporal durable execution
8046 dependencies :
8147 - openai-agents[litellm]==0.3.2
8248 - temporalio[openai-agents]>=1.18.0
8349 - requests>=2.32.0,<3
84- commands :
85- - cmd : uv run openai_agents/basic/run_worker.py
86- - cmd : uv run openai_agents/basic/run_hello_world_workflow.py
87- new_terminal : true
8850 - path : langchain
8951 description : Orchestrate LangChain workflows with LangSmith tracing
9052 dependencies :
9153 - langchain>=0.1.7,<0.2
9254 - langchain-openai>=0.0.6,<0.0.7
9355 - openai>=1.4.0,<2
94- commands :
95- - cmd : uv run langchain/worker.py
96- - cmd : uv run langchain/starter.py
97- new_terminal : true
98- - cmd : curl -X POST "http://localhost:8000/translate?phrase=hello%20world&language1=Spanish&language2=French&language3=Russian"
99- new_terminal : true
10056 - path : bedrock
10157 description : Amazon Bedrock AI chatbot with durable execution
10258 dependencies :
10359 - temporalio>=1.23.0,<2
10460 - boto3>=1.34.92,<2
105- commands :
106- - cmd : uv run bedrock/basic/run_worker.py
107- - cmd : uv run bedrock/basic/send_message.py 'What animals are marsupials?'
108- new_terminal : true
10961 - path : encryption
11062 description : End-to-end encryption codec, compatible with TypeScript and Go
11163 dependencies :
11264 - temporalio>=1.23.0,<2
11365 - cryptography>=38.0.1,<39
11466 - aiohttp>=3.8.1,<4
115- commands :
116- - cmd : uv run encryption/worker.py
117- - cmd : uv run encryption/starter.py
118- new_terminal : true
11967 - path : dsl
12068 description : Workflow interpreter for arbitrary steps defined in YAML DSL
12169 dependencies :
12270 - temporalio>=1.23.0,<2
12371 - pyyaml>=6.0.1,<7
12472 - dacite>=1.8.1,<2
125- commands :
126- - cmd : uv run dsl/worker.py
127- - cmd : uv run dsl/starter.py dsl/workflow1.yaml
128- new_terminal : true
12973 - path : schedules
13074 description : Schedule a Workflow Execution and control actions
13175 dependencies :
13276 - temporalio>=1.23.0,<2
133- commands :
134- - cmd : uv run schedules/run_worker.py
135- - cmd : uv run schedules/start_schedule.py
136- new_terminal : true
13777 - path : activity_worker
13878 description : Cross-language sample with a Go workflow calling a Python activity
13979 dependencies :
14080 - temporalio>=1.23.0,<2
141- commands :
142- - cmd : uv run activity_worker/activity_worker.py
14381 - path : batch_sliding_window
14482 description : Batch processing with a sliding window of parallel child workflows
14583 dependencies :
14684 - temporalio>=1.23.0,<2
147- commands :
148- - cmd : uv run batch_sliding_window/worker.py
149- - cmd : uv run batch_sliding_window/starter.py
150- new_terminal : true
15185 - path : context_propagation
15286 description : Propagate contextual information through workflows and activities via interceptors
15387 dependencies :
15488 - temporalio>=1.23.0,<2
155- commands :
156- - cmd : uv run context_propagation/worker.py
157- - cmd : uv run context_propagation/starter.py
158- new_terminal : true
15989 - path : custom_converter
16090 description : Custom payload converter for types not natively supported by Temporal
16191 dependencies :
16292 - temporalio>=1.23.0,<2
163- commands :
164- - cmd : uv run custom_converter/worker.py
165- - cmd : uv run custom_converter/starter.py
166- new_terminal : true
16793 - path : custom_decorator
16894 description : Auto-heartbeater decorator for automatic activity heartbeating
16995 dependencies :
17096 - temporalio>=1.23.0,<2
171- commands :
172- - cmd : uv run custom_decorator/worker.py
173- - cmd : uv run custom_decorator/starter.py
174- new_terminal : true
17597 - path : custom_metric
17698 description : Custom Prometheus metric with an interceptor for activity schedule-to-start latency
17799 dependencies :
178100 - temporalio>=1.23.0,<2
179- commands :
180- - cmd : uv run custom_metric/worker.py
181- - cmd : uv run custom_metric/starter.py
182- new_terminal : true
183101 - path : eager_wf_start
184102 description : Eager Workflow Start for low-latency first-task execution
185103 dependencies :
186104 - temporalio>=1.23.0,<2
187- commands :
188- - cmd : uv run eager_wf_start/run.py
189105 - path : env_config
190106 description : Configure a Temporal Client from a TOML file with profile support
191107 dependencies :
192108 - temporalio>=1.23.0,<2
193- commands :
194- - cmd : uv run env_config/load_from_file.py
195109 - path : message_passing
196110 description : Introduction to Query, Signal, and Update message-passing patterns
197111 dependencies :
198112 - temporalio>=1.23.0,<2
199- commands :
200- - cmd : uv run message_passing/introduction/worker.py
201- - cmd : uv run message_passing/introduction/starter.py
202- new_terminal : true
203113 - path : patching
204114 description : Safely alter workflow code using patched and deprecate_patch in stages
205115 dependencies :
206116 - temporalio>=1.23.0,<2
207- commands :
208- - cmd : uv run patching/worker.py --workflow initial
209- - cmd : uv run patching/starter.py --start-workflow initial-workflow-id
210- new_terminal : true
211117 - path : polling
212118 description : Best practices for frequent, infrequent, and periodic polling patterns
213119 dependencies :
214120 - temporalio>=1.23.0,<2
215- commands :
216- - cmd : uv run polling/frequent/run_worker.py
217- - cmd : uv run polling/frequent/run_frequent.py
218- new_terminal : true
219121 - path : prometheus
220122 description : Expose SDK Prometheus metrics via HTTP endpoint
221123 dependencies :
222124 - temporalio>=1.23.0,<2
223- commands :
224- - cmd : uv run prometheus/worker.py
225- - cmd : uv run prometheus/starter.py
226- new_terminal : true
227125 - path : replay
228126 description : Verify workflow code changes are compatible with existing histories
229127 dependencies :
230128 - temporalio>=1.23.0,<2
231- commands :
232- - cmd : uv run replay/worker.py
233- - cmd : uv run replay/starter.py
234- new_terminal : true
235129 - path : resource_pool
236130 description : Long-lived workflow for resource allocation and serialized access control
237131 dependencies :
238132 - temporalio>=1.23.0,<2
239- commands :
240- - cmd : uv run resource_pool/worker.py
241- - cmd : uv run resource_pool/starter.py
242- new_terminal : true
243133 - path : sleep_for_days
244134 description : Long-running workflow that sends periodic emails with durable timers
245135 dependencies :
246136 - temporalio>=1.23.0,<2
247- commands :
248- - cmd : uv run sleep_for_days/worker.py
249- - cmd : uv run sleep_for_days/starter.py
250- new_terminal : true
251137 - path : updatable_timer
252138 description : Blocking sleep that can be updated at any moment via signals
253139 dependencies :
254140 - temporalio>=1.23.0,<2
255- commands :
256- - cmd : uv run updatable_timer/worker.py
257- - cmd : uv run updatable_timer/starter.py
258- new_terminal : true
259141 - path : worker_multiprocessing
260142 description : Run multiple workflow worker processes using ProcessPoolExecutor
261143 dependencies :
262144 - temporalio>=1.23.0,<2
263- commands :
264- - cmd : uv run worker_multiprocessing/worker.py
265- - cmd : uv run worker_multiprocessing/starter.py
266- new_terminal : true
267145 - path : worker_specific_task_queues
268146 description : Pin activities to a specific worker using unique task queues
269147 dependencies :
270148 - temporalio>=1.23.0,<2
271- commands :
272- - cmd : uv run worker_specific_task_queues/worker.py
273- - cmd : uv run worker_specific_task_queues/starter.py
274- new_terminal : true
275149 - path : worker_versioning
276150 description : Safe worker deployments with auto-upgrading and pinned workflow versions
277151 dependencies :
278152 - temporalio>=1.23.0,<2
279- commands :
280- - cmd : uv run worker_versioning/app.py
281153 - path : cloud_export_to_parquet
282154 description : Convert Temporal Cloud exported proto files to Parquet format
283155 dependencies :
@@ -286,62 +158,34 @@ samples:
286158 - numpy>=1.26.0,<2
287159 - boto3>=1.34.89,<2
288160 - pyarrow>=19.0.1
289- commands :
290- - cmd : uv run cloud_export_to_parquet/run_worker.py
291- - cmd : uv run cloud_export_to_parquet/create_schedule.py
292- new_terminal : true
293161 - path : gevent_async
294162 description : Run Temporal in a gevent-patched environment with a custom executor
295163 dependencies :
296164 - temporalio>=1.23.0,<2
297165 - gevent>=25.4.2
298- commands :
299- - cmd : uv run gevent_async/worker.py
300- - cmd : uv run gevent_async/starter.py
301- new_terminal : true
302166 - path : open_telemetry
303167 description : Configure OpenTelemetry to capture workflow traces and SDK metrics
304168 dependencies :
305169 - temporalio[opentelemetry]>=1.23.0,<2
306170 - opentelemetry-exporter-otlp-proto-grpc
307- commands :
308- - cmd : uv run open_telemetry/worker.py
309- - cmd : uv run open_telemetry/starter.py
310- new_terminal : true
311171 - path : pydantic_converter
312172 description : Use the Pydantic data converter for workflow and activity I/O
313173 dependencies :
314174 - temporalio>=1.23.0,<2
315175 - pydantic>=2.10.6,<3
316- commands :
317- - cmd : uv run pydantic_converter/worker.py
318- - cmd : uv run pydantic_converter/starter.py
319- new_terminal : true
320176 - path : pydantic_converter_v1
321177 description : Pydantic v1 data converter (use v2 pydantic_converter instead if possible)
322178 dependencies :
323179 - temporalio>=1.23.0,<2
324180 - pydantic>=2.10.6,<3
325- commands :
326- - cmd : uv run pydantic_converter_v1/worker.py
327- - cmd : uv run pydantic_converter_v1/starter.py
328- new_terminal : true
329181 - path : sentry
330182 description : Capture workflow and activity errors with Sentry SDK v2 integration
331183 dependencies :
332184 - temporalio>=1.23.0,<2
333185 - sentry-sdk>=2.13.0
334- commands :
335- - cmd : uv run sentry/worker.py
336- - cmd : uv run sentry/starter.py
337- new_terminal : true
338186 - path : trio_async
339187 description : Use Temporal asyncio with Trio via trio-asyncio bridge
340188 dependencies :
341189 - temporalio>=1.23.0,<2
342190 - trio>=0.28.0,<0.29
343191 - trio-asyncio>=0.15.0,<0.16
344- commands :
345- - cmd : uv run trio_async/worker.py
346- - cmd : uv run trio_async/starter.py
347- new_terminal : true
0 commit comments