cloudpathlib
pathlib-style classes for cloud storage services.
Decision gist · record as of 2026-08-14
Yes. The package is actively maintained, has no known vulnerabilities, installs with minimal friction, and solves a real problem—making cloud storage feel like local paths. Use it when you need to work with cloud objects in code that already uses pathlib, or when you want to support multiple cloud providers without rewriting logic for each SDK. The optional extras model means you only install cloud SDKs you actually need.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires installation of at least one cloud SDK (boto3 for S3, google-cloud-storage for GCS, azure-storage-blob for Azure) via extras syntax or separate pip install; cloud credentials must be configured in environment.
- Low friction install with a single runtime dependency (typing-extensions).
- The package is actively maintained with a recent release (106 days ago) and 626 repository stars.
License · maintenance · safety
permissive license (permissive) — Licensed under MIT (permissive), allowing free use, modification, and distribution with minimal restrictions.
last release 2026-04-30 (106 days) · last repo commit 2026-08-04 · 626 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 24,519,111 downloads/mo, #917 on PyPI
Alternatives
Verify before relying
pip install cloudpathlib[s3]
from cloudpathlib import CloudPath
path = CloudPath("s3://bucket/file.txt")
path.write_text("Hello cloud")
data = path.read_text()- Performance characteristics and caching behavior under concurrent access patterns.
- Whether FTP support mentioned as 'on the way' has been implemented in version 0.24.0.
- Specific limitations of HttpsPath implementation relative to other cloud backends.
What it is and what it does
cloudpathlib wraps cloud storage services (S3, Google Cloud Storage, Azure Blob Storage) behind a pathlib-compatible interface, so you can treat cloud objects like local filesystem paths. Instead of learning each cloud SDK's API, you use familiar Path methods: `.read_text()`, `.write_bytes()`, `.glob()`, `.iterdir()`, and path joining with `/`. The library handles authentication via environment variables and manages local caching transparently—files are downloaded only when needed, and you can persist the cache across sessions to avoid re-downloading.
The package is built on extensible base classes, so you can implement custom cloud backends by writing just two small classes. It supports both reading and writing, with automatic uploads on write operations. A local filesystem implementation is provided for unit testing, letting you mock cloud storage without hitting real services. The library requires Python 3.9+ and depends only on typing-extensions at runtime; cloud SDKs are optional extras installed only for the services you actually use.
Use it for
- Read and write files in S3 buckets using Path syntax instead of boto3 directly.
- Glob and iterate over objects in cloud storage with the same patterns you use locally.
- Mock cloud storage in unit tests using the local filesystem implementation.
- Build tools that work across multiple cloud providers (S3, GCS, Azure) with a single code path.
- Cache cloud files locally during processing and reuse them across multiple script runs.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
The package is actively maintained, has no known vulnerabilities, installs with minimal friction, and solves a real problem—making cloud storage feel like local paths. Use it when you need to work with cloud objects in code that already uses pathlib, or when you want to support multiple cloud providers without rewriting logic for each SDK. The optional extras model means you only install cloud SDKs you actually need.
Install
cloudpathlib on PyPI
Before you install
Low friction install with a single runtime dependency (typing-extensions). The package is actively maintained with a recent release (106 days ago) and 626 repository stars. Cloud service SDKs (boto3, google-cloud-storage, azure-storage-blob) are optional extras, installed only when needed.
Requires installation of at least one cloud SDK (boto3 for S3, google-cloud-storage for GCS, azure-storage-blob for Azure) via extras syntax or separate pip install; cloud credentials must be configured in environment.
License in practice
Licensed under MIT (permissive), allowing free use, modification, and distribution with minimal restrictions.
Quickstart
pip install cloudpathlib[s3]
from cloudpathlib import CloudPath
path = CloudPath("s3://bucket/file.txt")
path.write_text("Hello cloud")
data = path.read_text()
Verify before relying
- Performance characteristics and caching behavior under concurrent access patterns.
- Whether FTP support mentioned as 'on the way' has been implemented in version 0.24.0.
- Specific limitations of HttpsPath implementation relative to other cloud backends.
Package facts
| License | permissive license permissive |
| Python support | Supports the current Python release >=3.9 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 1 packagetyping-extensions |
| Maintenance | Actively maintained 106 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 24,519,111 / month, #917 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Intended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.9 |
Evidence: cloudpathlib-0.24.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “azure google s3 paths”
- cloudpathlibProvides pathlib-style classes for reading, writing, and managing…
- pathyPathy provides a pathlib-compatible interface for working with cloud…
- multi-storage-clientUnified Python client providing a generic interface to read, write,…
Give your agent the search over MCP, or paste the wish link into any chat.
Similar packages
Pathy provides a pathlib-compatible interface for working with cloud bucket storage (Google Cloud Storage, Amazon S3, Azure) and local filesystems through a unified Path-like API.
Install it if you work across multiple cloud providers or want to defer cloud decisions during development.
S3Path provides a pathlib-like interface for working with AWS S3 buckets and objects, letting you navigate, query, and manipulate S3 storage using familiar filesystem operations.
s3pathlib provides a pathlib-like object-oriented interface to AWS S3, letting you construct, query, and manipulate S3 objects and directories using familiar Python path syntax.
Universal Pathlib provides a pathlib.Path-like interface for accessing multiple backend filesystems—local, cloud storage, HTTP, SFTP, and others—through a unified API powered by fsspec.
Install it if you work with multiple storage backends or want to future-proof code that might move between local and cloud storage.
Provides a unified Python file interface for reading and writing to local filesystems, Google Cloud Storage, and Azure Blob Storage using an API similar to the built-in `open()` function.
Install only if you actually need multi-cloud or local-plus-cloud file abstraction; if you use only one provider, that provider's native SDK may be more direct.
Provides abstract base classes for implementing path-like objects that work with non-local filesystems, such as archives and remote storage, following the pathlib.Path interface.
However, be aware that maintenance is aging (308 days since last release) and the ABCs are explicitly under active development—expect potential breaking changes…
See also path.py · path · multi-storage-client · pathlib