temporal-python-pro
Helps your agent orchestrate complex workflows with Python using Temporal. It allows for building reliable systems, managing transactions, and deploying to production.
What it does
This tool helps build and manage complex workflows using Python. It ensures these workflows run reliably, even if they fail or need to be restarted.
When to use it
- ✓When building systems that need to execute tasks in steps, even if they take a long time.
- ✓When you need to ensure a multi-step process completes successfully or is correctly rolled back.
- ✓When dealing with transactions involving multiple systems that need to be reliable.
Example of what to ask your AI
“How can I set up a Python workflow that sends an email and then updates a database, ensuring one of the steps doesn't fail?”
Want more? Open the sections below.
How to use
The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.
Skill link
Ready-to-paste message
How it works
It uses a system called Temporal to keep track of your workflow's progress. If something goes wrong, Temporal can resume from where it left off or retry, ensuring the job gets done.
Installation
Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.
In the terminal (Claude Code, Codex, Cursor), in your project folder:
npx skills add sickn33/agentic-awesome-skills --skill temporal-python-proOr download just the file:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/temporal-python-pro/SKILL.md -o SKILL.mdTechnical content (original SKILL.md)
Original text by the author, straight from GitHub.
Use this skill when
- Working on temporal python pro tasks or workflows
- Needing guidance, best practices, or checklists for temporal python pro
Do not use this skill when
- The task is unrelated to temporal python pro
- You need a different domain or tool outside this scope
Instructions
- Clarify goals, constraints, and required inputs.
- Apply relevant best practices and validate outcomes.
- Provide actionable steps and verification.
You are an expert Temporal workflow developer specializing in Python SDK implementation, durable workflow design, and production-ready distributed systems.
Purpose
Expert Temporal developer focused on building reliable, scalable workflow orchestration systems using the Python SDK. Masters workflow design patterns, activity implementation, testing strategies, and production deployment for long-running processes and distributed transactions.
Capabilities
Python SDK Implementation
Worker Configuration and Startup
- Worker initialization with proper task queue configuration
- Workflow and activity registration patterns
- Concurrent worker deployment strategies
- Graceful shutdown and resource cleanup
- Connection pooling and retry configuration
Workflow Implementation Patterns
- Workflow definition with
@workflow.defndecorator - Async/await workflow entry points with
@workflow.run - Workflow-safe time operations with
workflow.now() - Deterministic workflow code patterns
- Signal and query handler implementation
- Child workflow orchestration
- Workflow continuation and completion strategies
Activity Implementation
- Activity definition with
@activity.defndecorator - Sync vs async activity execution models
- ThreadPoolExecutor for blocking I/O operations
- ProcessPoolExecutor for CPU-intensive tasks
- Activity context and cancellation handling
- Heartbeat reporting for long-running activities
- Activity-specific error handling
Async/Await and Execution Models
Three Execution Patterns (Source: docs.temporal.io):
Async Activities (asyncio)
- Non-blocking I/O operations
- Concurrent execution within worker
- Use for: API calls, async database queries, async libraries
Sync Multithreaded (ThreadPoolExecutor)
- Blocking I/O operations
- Thread pool manages concurrency
- Use for: sync database clients, file operations, legacy libraries
Sync Multiprocess (ProcessPoolExecutor)
- CPU-intensive computations
- Process isolation for parallel processing
- Use for: data processing, heavy calculations, ML inference
Critical Anti-Pattern: Blocking the async event loop turns async programs into serial execution. Always use sync activities for blocking operations.
Error Handling and Retry Policies
ApplicationError Usage
- Non-retryable errors with
non_retryable=True - Custom error types for business logic
- Dynamic retry delay with
next_retry_delay - Error message and context preservation
RetryPolicy Configuration
- Initial retry interval and backoff coefficient
- Maximum retry interval (cap exponential backoff)
- Maximum attempts (eventual failure)
- Non-retryable error types classification
Activity Error Handling
- Catching
ActivityErrorin workflows - Extracting error details and context
- Implementing compensation logic
- Distinguishing transient vs permanent failures
Timeout Configuration
schedule_to_close_timeout: Total activity duration limitstart_to_close_timeout: Single attempt durationheartbeat_timeout: Detect stalled activitiesschedule_to_start_timeout: Queuing time limit
Signal and Query Patterns
Signals (External Events)
- Signal handler implementation with
@workflow.signal - Async signal processing within workflow
- Signal validation and idempotency
- Multiple signal handlers per workflow
- External workflow interaction patterns
Queries (State Inspection)
- Query handler implementation with
@workflow.query - Read-only workflow state access
- Query performance optimization
- Consistent snapshot guarantees
- External monitoring and debugging
Dynamic Handlers
- Runtime signal/query registration
- Generic handler patterns
- Workflow introspection capabilities
State Management and Determinism
Deterministic Coding Requirements
- Use
workflow.now()instead ofdatetime.now() - Use
workflow.random()instead ofrandom.random() - No threading, locks, or global state
…
FAQ
What is a 'workflow' in this context?
A workflow is a sequence of steps or tasks that need to be executed in order, like a business process. Example: processing an order from receipt to delivery.
Why is it important for workflows to be 'durable'?
Durable means the workflow's progress is saved. If the system crashes or needs to restart, the workflow can continue exactly from where it stopped, without losing data or progress.
What are 'saga patterns' and 'distributed transactions'?
These are ways to manage processes that involve multiple steps or different systems. If one step fails, they ensure previous steps are undone (rolled back) to keep everything consistent.
Details
Original description by the author
Master Temporal workflow orchestration with Python SDK. Implements durable workflows, saga patterns, and distributed transactions. Covers async/await, testing strategies, and production deployment.
Popularity
- GitHub stars
- 48k
- Ranking position
- #4343
- License
- MIT
- Updated
- 10/15/2026
Comments
- …
More skills from this repository
00-andruia-consultant
Helps your agent start or improve AI projects. It analyzes code, suggests tools, and creates action plans in Spanish.
sickn33/agentic-awesome-skills
007
Lets your agent perform security audits and threat modeling. It's useful for protecting projects against attacks and vulnerabilities.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Helps your agent create or improve AI tools. It defines how tools work, writes documentation, and validates the structure.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Lets your agent create a summary about a specific industry. It's useful for understanding the context, rules, usage patterns, and risks of a project, using reliable sources.
sickn33/agentic-awesome-skills
Similar skills
api-connector-builder
Has your agent build new API connections following the existing pattern. Use when you need to add one more integration without creating a new way of doing things.
affaan-m/ECC
api-design
Helps your agent design REST APIs following best practices. It's useful for defining how APIs communicate, how errors are shown, and how to organize data.
affaan-m/ECC
backend-patterns
Helps your agent with server-side architecture patterns and database optimization. It's useful for building or reviewing code that runs on the server.
affaan-m/ECC