Universal cloud CLI — one command for AWS, Azure, and GCP
Project description
⚡ cctl — Universal Cloud CLI
One command for AWS, Azure, and GCP.
cctl installs the cloudctl command — a universal CLI that lets you query and manage AWS, Azure, and GCP resources with one unified syntax, using your existing credentials.
Install
pip install cctl
Quick Start
cloudctl init # detect existing cloud credentials
cloudctl accounts list # show all configured accounts
cloudctl compute list # list EC2 instances
cloudctl storage list # list S3 buckets
cloudctl database list # list RDS instances
cloudctl cost summary # monthly cost breakdown
cloudctl security audit # check for misconfigurations
Commands
| Command | Description |
|---|---|
cloudctl init |
First-run setup — detects AWS/Azure/GCP credentials |
cloudctl accounts list/verify/use |
Manage cloud accounts and profiles |
cloudctl compute list/describe/stop/start |
EC2 instances (VMs coming for Azure/GCP) |
cloudctl storage list/describe/ls/du |
S3 buckets |
cloudctl database list/describe/snapshots |
RDS instances and snapshots |
cloudctl network vpcs/security-groups |
VPCs and security groups |
cloudctl iam roles/users/check |
IAM roles, users, permission checks |
cloudctl cost summary/by-service |
Cost Explorer breakdown |
cloudctl security audit/public-resources |
Security posture checks |
cloudctl pipeline list/analyze |
CodePipeline status |
cloudctl config get/set/list |
Manage cloudctl config |
How It Works
- No new auth — reads your existing
~/.aws/config,~/.azure/, and~/.config/gcloud/ - Auto output — Rich table in terminal, clean JSON when piped
- Multi-account — use
--account prodto target any profile by name - Multi-cloud — use
--cloud allto query across all providers at once (Azure + GCP coming in v0.3.0)
Status
| Cloud | Status |
|---|---|
| AWS | ✅ Implemented |
| Azure | 🔄 In progress (v0.3.0) |
| GCP | 🔄 In progress (v0.3.0) |
Links
- GitHub: https://github.com/cloudctlio/cloudctl
- Issues: https://github.com/cloudctlio/cloudctl/issues
- Security: See SECURITY.md
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cctl-0.2.0.tar.gz.
File metadata
- Download URL: cctl-0.2.0.tar.gz
- Upload date:
- Size: 110.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b3f3f2736f1f25f606e99f47fe4edb72f99dda57f1148d47e46e0b2b05a3a4c1
|
|
| MD5 |
893f114233b12c277bb600fc835b6ee1
|
|
| BLAKE2b-256 |
21c55676cf4ac266ef748be76cf2a37eaa170c002098c61f0d7203d0c095beda
|
Provenance
The following attestation bundles were made for cctl-0.2.0.tar.gz:
Publisher:
publish.yml on cloudctlio/cloudctl
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cctl-0.2.0.tar.gz -
Subject digest:
b3f3f2736f1f25f606e99f47fe4edb72f99dda57f1148d47e46e0b2b05a3a4c1 - Sigstore transparency entry: 1245465305
- Sigstore integration time:
-
Permalink:
cloudctlio/cloudctl@6de714c5aedd4d7e8dffbbad90ef5b7a98e11a65 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/cloudctlio
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@6de714c5aedd4d7e8dffbbad90ef5b7a98e11a65 -
Trigger Event:
release
-
Statement type:
File details
Details for the file cctl-0.2.0-py3-none-any.whl.
File metadata
- Download URL: cctl-0.2.0-py3-none-any.whl
- Upload date:
- Size: 115.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e16164fdea9a56834f6abbe1be99116c2681d2343130a896009045f7b5849db8
|
|
| MD5 |
9fb2c7afb4677ee6de4d010b56356ada
|
|
| BLAKE2b-256 |
107973e23b16bcba0743e077f42483465c6f5fc65cccd268f34f5a3c0ed52c57
|
Provenance
The following attestation bundles were made for cctl-0.2.0-py3-none-any.whl:
Publisher:
publish.yml on cloudctlio/cloudctl
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cctl-0.2.0-py3-none-any.whl -
Subject digest:
e16164fdea9a56834f6abbe1be99116c2681d2343130a896009045f7b5849db8 - Sigstore transparency entry: 1245465308
- Sigstore integration time:
-
Permalink:
cloudctlio/cloudctl@6de714c5aedd4d7e8dffbbad90ef5b7a98e11a65 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/cloudctlio
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@6de714c5aedd4d7e8dffbbad90ef5b7a98e11a65 -
Trigger Event:
release
-
Statement type: