Registry / ai-ml / skypilot-nightly

skypilot-nightly

JSON →
library1.0.0.dev20260614pypypi✓ verified 84d ago

SkyPilot is a system designed to run, manage, and scale AI workloads on any AI infrastructure. It offers a unified interface to leverage reserved GPUs, Kubernetes clusters, Slurm clusters, or over 20 cloud providers, abstracting away complex infrastructure burdens. The `skypilot-nightly` package provides the very latest features, bug fixes, and development builds, focusing on maximizing cost savings, GPU availability, and providing managed execution for AI tasks.

pip install skypilot-nightly
INSTALL
IMPORT
SIG · SKYPILOT-NIGHTLY
S
skypilot-nightly
ai-mlpythonv1.0.0.dev20260614
Install
61.3s avg
Import
7660ms
Disk
415MB
Pass rate
4/ 10
Env Coverage4 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v1.0.0.dev20260614 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
glibc
py 3.10
4/8 runs
✓ 63.1s
py 3.11
4/8 runs
✓ 64.53s
py 3.12
4/8 runs
✓ 58.6s
py 3.13
4/8 runs
✓ 59.1s
py 3.9
4/8 runs
4/8 runs
415MB installed
● package 415MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

sky
import sky
The primary entry point for SkyPilot's Python SDK, used to access tasks, resources, and launch functions.
Task
from sky import Task
Represents a SkyPilot task, defining run commands, setup, and dependencies.
Resources
from sky import Resources
Used to specify the cloud resources (e.g., accelerators, instance types) required for a Task.

This quickstart demonstrates how to define a simple task using the SkyPilot Python SDK and launch it on AWS. The task runs a basic 'Hello, SkyPilot!' command. SkyPilot automatically handles resource provisioning, setup, and execution. You can omit the `cloud=sky.AWS()` specification to allow SkyPilot to automatically select the cheapest and most available cloud resource.

import sky task = sky.Task( run='echo "Hello, SkyPilot!"', resources=sky.Resources(cloud=sky.AWS()) ) # Launch the task on AWS. SkyPilot will provision resources and run the command. # For multi-cloud optimization, remove 'cloud=sky.AWS()' and let SkyPilot choose. cluster_name = "my-first-sky-cluster" request_id = sky.launch(task, cluster_name=cluster_name) print(f"Launched cluster '{cluster_name}' with request ID: {request_id}") print(f"To view logs: sky logs {cluster_name}") print(f"To stop and delete: sky down {cluster_name}") # Example of checking status asynchronously # from sky.client import sdk_async as sdk # import asyncio # async def get_status(): # status = await sdk.status() # print(status) # asyncio.run(get_status())
sky --version
Debug
Known issues
breakingSkyPilot v0.12.0 and newer releases (including nightly) require Python 3.9 or higher. Python 3.7 and 3.8 are no longer supported.
fix
Upgrade your Python environment to 3.9, 3.10, 3.11, 3.12, or 3.13. Create a new virtual environment if necessary.
affects: v0.12.0+
breakingThe `sky.jobs.queue(version=1)` API is deprecated in v0.12.0 and will be removed in v0.13. It returns simpler metadata.
fix
Migrate to `sky.jobs.queue(version=2)` to receive richer job metadata as dictionaries.
affects: v0.12.0+
gotchaWhen using a remote SkyPilot API server, upgrading the client library (skypilot-nightly) often requires upgrading the API server deployment as well to ensure compatibility and access new features/fixes.
fix
Follow the API server upgrade instructions provided in the release notes or documentation for your specific deployment method (e.g., Helm upgrade).
affects: All versions with API server deployments
gotchaNightly builds (`skypilot-nightly`) are development versions and may contain instabilities, bugs, or undocumented breaking changes. They are not recommended for production environments.
fix
For stability, use the stable `skypilot` package (`pip install skypilot`). If using nightly, frequently check GitHub issues and releases for updates and potential workarounds.
affects: All nightly builds
gotchaSkyPilot's local API server uses SQLite by default, which can lead to `sqlite3.OperationalError: database is locked` under high concurrency or many simultaneous operations. [cite: 0 (release notes for v0.11.1), 36, 38, 39]
fix
Reduce concurrent SkyPilot operations. For team deployments or high-concurrency use cases, consider configuring SkyPilot to use an external PostgreSQL database instead of SQLite.
affects: All versions using default SQLite for local API server
gotchaIncorrect file permissions for SSH keys can cause `Permission denied (publickey)` errors when SkyPilot tries to SSH into remote clusters. [cite: 0 (release notes for v0.11.2rc1), 28, 29, 30]
fix
Ensure your private SSH key (`~/.ssh/id_rsa` or similar) has `600` permissions (`chmod 600 ~/.ssh/id_rsa`) and the `.ssh` directory has `700` permissions (`chmod 700 ~/.ssh`).
affects: All versions
Errors
Common errors & fixes
sqlite3.OperationalError: database is locked
The SQLite database used by the local SkyPilot API server is experiencing high contention or is locked by another process/thread. [cite: 0 (release notes for v0.11.1), 36, 38, 39]
fix
Restart the SkyPilot API server (`sky api stop; sky api start`). If the issue persists with heavy usage, configure SkyPilot to use an external PostgreSQL database for the API server. For temporary local fixes, reduce concurrent `sky` commands.
AttributeError: 'Config' object has no attribute 'setup_event_loop'
This error occurs due to a breaking change in `uvicorn` (version 0.36.0 and higher) where `Config.setup_event_loop` was removed and replaced. SkyPilot v0.10.3.post1 explicitly pinned `uvicorn` to mitigate this. [cite: 0 (release notes for v0.10.3.post1), 23, 27, 34, 37]
fix
Upgrade your `skypilot-nightly` installation to the latest version, which should include the necessary `uvicorn` dependency pinning or compatibility fixes. If not, manually pin `uvicorn<0.36.0`.
Permission denied (publickey)
SSH authentication failed, often due to incorrect file permissions on SSH keys or the `.ssh` directory on the local machine or remote host.
fix
Set appropriate permissions: `chmod 700 ~/.ssh/` for the directory and `chmod 600 ~/.ssh/id_rsa` for your private key. Ensure the public key on the remote server (`~/.ssh/authorized_keys`) also has correct permissions (`chmod 600 ~/.ssh/authorized_keys`).
Error from server (Forbidden): roles.rbac.authorization.k8s.io is forbidden: User "system:serviceaccount:..." cannot list resource "roles" in API group "rbac.authorization.k8s.io" in the namespace "..." (or similar 403 Kubernetes API errors)
SkyPilot's Kubernetes integration is encountering a 403 Forbidden error when trying to interact with the Kubernetes API, typically due to insufficient RBAC permissions for the service account being used. This could be transient or persistent. [cite: 0 (release notes for v0.10.3.post2), 31, 32, 33]
fix
Ensure that the Kubernetes service account SkyPilot uses (or your `kubeconfig` context if running locally) has the necessary `Role` and `RoleBinding` permissions to manage resources (pods, services, deployments, etc.) in the target namespace. For transient errors, SkyPilot v0.10.3.post2 and later include retries and fallbacks. Verify `kubectl get nodes` works without errors.
Upgrade
Version history
1.0.0.dev20260614latest on PyPI · released Jun 14, 2026
Audit
Dependencies
skypilot[aws]optionalEnables support for AWS cloud resources.
skypilot[gcp]optionalEnables support for Google Cloud Platform resources.
skypilot[azure]optionalEnables support for Microsoft Azure cloud resources.
skypilot[kubernetes]optionalEnables support for Kubernetes clusters.
skypilot[all]optionalInstalls dependencies for all supported cloud providers and orchestration systems. Use with caution due to large number of dependencies.
Agent activity
43 hits · last 30 days
node
34
OpenAI (training)
1
Resources