workflow-orchestration-patterns
Design durable workflows with Temporal for distributed systems. Covers workflow vs activity separation, saga patterns, state management, and determinism constraints. Use when building long-running processes, distributed transactions, or microservice orchestration.
Author
Category
Development ToolsInstall
Download and extract to your skills directory
Copy command and send to OpenClaw for auto-install:
Workflow Orchestration Patterns - Temporal
Skills Overview
Master the workflow orchestration architecture for building reliable distributed systems with Temporal. Cover key patterns such as separation of workflows and activities, the Saga compensation pattern, state management, and determinism constraints. Use these patterns to build long-running processes, distributed transactions, and microservice orchestration.
Use Cases
Core Capabilities
Common Questions
What is the fundamental difference between Workflow and Activity in Temporal?
A Workflow is the orchestration logic layer. It contains business decision-making and coordination logic, must be deterministic (the same inputs produce the same outputs), and cannot directly call external systems. An Activity is the external interaction layer that handles all non-deterministic operations such as API calls, database writes, and network requests. Quick summary: Workflow decides “what to do,” Activity executes “how to do it.”
When should you not use Temporal workflow orchestration?
For scenarios such as simple CRUD operations (directly using APIs), pure data-processing pipelines (use Airflow or batch processing), stateless request-response (use standard REST APIs), and real-time stream processing (use Kafka or event processors). In these cases, you don’t need the complexity of workflow orchestration.
Why must Activities be idempotent?
Temporal automatically retries Activities in cases like network failures or timeouts. This means the same Activity may be executed multiple times. Idempotency ensures “executing N times is equivalent to executing 1 time.” Common approaches include using idempotency keys for deduplication, performing checks before operations with unique constraints, using Upsert instead of Insert, and tracking already processed request IDs.