--- id: taskcluster version: "105.0.0" license: MPL-2.0 license_treatment: copyleft maintenance: active --- # taskcluster — Python client for Taskcluster License: copyleft · Maintenance: active · Downloads: 987.9K/mo ## What it is and what it does Taskcluster is a Python client library that wraps the Taskcluster API, a distributed task execution and scheduling platform. It provides both synchronous (taskcluster.*) and asynchronous (taskcluster.aio.*) client classes for each Taskcluster service—Queue, Auth, Index, Secrets, and others—allowing you to create tasks, manage credentials, and interact with the platform programmatically. The library handles authentication via Hawk protocol (through the mohawk dependency), credential generation and temporary credential creation, timestamp handling for task expiration and deadlines, and URL generation for both public and signed API endpoints. It reads standard Taskcluster environment variables automatically and supports scoped authorization, making it suitable for both standalone scripts and tasks running within a Taskcluster deployment. Use it for: - Submitting and monitoring tasks to a Taskcluster queue from a CI/CD pipeline or build orchestration system. - Generating temporary credentials with limited scopes for third-party services or delegated task execution. - Building task scheduling and workflow automation tools that interact with Taskcluster's task graph and queue APIs. - Querying task history, logs, and status from the Index and Queue services in monitoring or reporting applications. - Creating signed URLs for secure API access without embedding long-lived credentials in client code. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. A complete Python client library for Taskcluster that provides both synchronous and asynchronous interfaces to all Taskcluster API methods, including authentication, credential generation, and URL building. Yes. The package is actively maintained, has no known vulnerabilities, supports current Python versions (3.9–3.14), and is widely used (top 5000 PyPI). The MPL-2.0 copyleft license is standard for Mozilla projects and poses no barrier to internal or open-source use. Install it if you need to interact with a Taskcluster deployment from Python. ## Install pip install taskcluster uv add taskcluster poetry add taskcluster ## Installing taskcluster Before you install: Low install friction with a pure-Python wheel distribution. The package is actively maintained with a recent release and no known vulnerabilities. It depends on common, well-established libraries like aiohttp, requests, and python-dateutil. License in practice: Licensed under MPL-2.0 (copyleft). You must disclose source code modifications and distribute under the same license if you modify and redistribute the package, though internal use does not trigger these obligations. Quickstart: import taskcluster # Create a client with environment-based configuration queue = taskcluster.Queue(taskcluster.optionsFromEnvironment()) # Or with explicit credentials index = taskcluster.Index({ "rootUrl": "https://tc.example.com", "credentials": {"clientId": "id", "accessToken": "token"} }) # For async usage import taskcluster.aio queue_async = taskcluster.aio.Queue(taskcluster.optionsFromEnvironment()) Requires Python 3.9 or later. Taskcluster deployment URL (rootUrl) is required; credentials are optional depending on API method authentication requirements. Verify before relying: - Whether the library handles automatic credential refresh or expiration management for long-running applications. - Performance characteristics and rate-limiting behavior when making high-volume API requests. - Compatibility and behavior differences between sync and async variants beyond the calling convention. ## Package facts - License: MPL-2.0 (copyleft) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 987.9K/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags taskcluster api client, async taskcluster python, taskcluster queue auth, taskcluster credentials, taskcluster synchronous client, taskcluster task management, taskcluster http api wrapper, task-scheduling, distributed-computing, async-support [View on SkillFed](https://skillfed.io/packages/taskcluster) · [View on PyPI](https://pypi.org/project/taskcluster/)