Wrapper to manage lightning ai studios
Project description
take-me-cloud
take-me-cloud is a CLI for working with Lightning AI studios from your shell. It can list every studio you can access, sync Lightning SSH entries into ~/.ssh/config, create or replace studios from a local config file, and bootstrap a fresh studio for repository work.
Introduction
The CLI authenticates with Lightning AI through LIGHTNING_API_KEY and either LIGHTNING_USER_ID or LIGHTNING_USERNAME. It uses those credentials to discover your organizations, teamspaces, and studios.
Installation
pip install take_me_cloud
uv tool install take_me_cloud
For development:
pip install -e .
Configuration
Create ~/.config/take_me_cloud_config.yaml with a Lightning AI section:
Lightning AI:
machine_default: T4
cloud_provider: AWS
teamspace:
- name: rwth-gut/skillcomp
owner_type: org
- name: vaishnavahari/myml
owner_type: user
machine_default: CPU
teamspace entries are shown interactively when you create a studio. Each entry must use owner/teamspace naming.
Usage
List studios
take-me-cloud --list
take-me-cloud -ls
The output is grouped by teamspace and shows the studio name, owner, machine type, and current state.
Sync SSH config
take-me-cloud --lock-ssh
This preserves non-Lightning SSH hosts, removes stale Lightning entries, and writes the current accessible studios into ~/.ssh/config.
Create or replace a studio
take-me-cloud --create-replace my-studio
The CLI prompts for a teamspace from the config file, deletes any existing studio with the same name, starts the replacement with the configured machine type, and appends common setup commands to ~/.bash_history.
Go studio
take-me-cloud --go-studio my-repo
This creates or replaces a studio, clones svaichu/my-repo into the studio home directory, writes .vscode/settings.json, and installs the requested VS Code extensions on the remote environment.
Version
take-me-cloud --version
take-me-cloud -v
Development
Run the tests with:
uv run python -m unittest discover -s tests -v
Project Layout
take_me_cloud/base.py: Lightning helpers and SSH/config logictake_me_cloud/cli.py: Argument parsing and command dispatchtests/: Unit tests for the core flows
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 take_me_cloud-0.1.3.tar.gz.
File metadata
- Download URL: take_me_cloud-0.1.3.tar.gz
- Upload date:
- Size: 12.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b782e18d665b0416dd4654e62be0e28567fc23818bcd08984a4c6161b16ac19a
|
|
| MD5 |
2071eaafba1efb265ba1c4a5c8c09bdc
|
|
| BLAKE2b-256 |
877bfcc9f5d727f06f1a62d0cf7a26cfdb5707a8bf62da4b47c0244837d8dada
|
Provenance
The following attestation bundles were made for take_me_cloud-0.1.3.tar.gz:
Publisher:
python-publish.yml on svaichu/take_me_cloud
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
take_me_cloud-0.1.3.tar.gz -
Subject digest:
b782e18d665b0416dd4654e62be0e28567fc23818bcd08984a4c6161b16ac19a - Sigstore transparency entry: 1560187410
- Sigstore integration time:
-
Permalink:
svaichu/take_me_cloud@c8a442bcf0dd6a2b4ddd3b19d198138bb1470fa5 -
Branch / Tag:
refs/tags/0.1.3 - Owner: https://github.com/svaichu
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@c8a442bcf0dd6a2b4ddd3b19d198138bb1470fa5 -
Trigger Event:
release
-
Statement type:
File details
Details for the file take_me_cloud-0.1.3-py3-none-any.whl.
File metadata
- Download URL: take_me_cloud-0.1.3-py3-none-any.whl
- Upload date:
- Size: 9.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7ed6911548f0230e78546a848a3a90e338b88681fecc1fcb34a40109a8f151a5
|
|
| MD5 |
1462a005c81500a670e987f4c61c17e4
|
|
| BLAKE2b-256 |
3821db0004c1e3e0d18bdc6bd4929da67a2cc585963c36eaef6ffeb920e8ff71
|
Provenance
The following attestation bundles were made for take_me_cloud-0.1.3-py3-none-any.whl:
Publisher:
python-publish.yml on svaichu/take_me_cloud
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
take_me_cloud-0.1.3-py3-none-any.whl -
Subject digest:
7ed6911548f0230e78546a848a3a90e338b88681fecc1fcb34a40109a8f151a5 - Sigstore transparency entry: 1560187518
- Sigstore integration time:
-
Permalink:
svaichu/take_me_cloud@c8a442bcf0dd6a2b4ddd3b19d198138bb1470fa5 -
Branch / Tag:
refs/tags/0.1.3 - Owner: https://github.com/svaichu
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@c8a442bcf0dd6a2b4ddd3b19d198138bb1470fa5 -
Trigger Event:
release
-
Statement type: