Remote cluster controller: push, pull, run, shell over SSH + rsync
Project description
rcc
Remote cluster controller. Generalizes the classic ssh host "cd dir && cmd" +
rsync project/ host:dir/ workflow into a small CLI with per-project config.
Install
uv tool install remote-cluster-controller
# or
pipx install remote-cluster-controller
Quickstart
cd my-project
rcc init
# edit .rcc/config.toml to set host and remote_dir
rcc push --dry-run
rcc push
rcc run -- nvidia-smi
rcc run -t -- htop
rcc shell
rcc pull
rcc status
rcc close
Configuration
.rcc/config.toml (per project, gitignored):
default = "myhost"
[profiles.myhost]
host = "myhost"
remote_dir = "/abs/path/on/remote"
Per-command overrides: --profile, --host, --remote-dir.
Excludes: edit .rcc/rccignore (gitignore syntax).
Release
make publish-dry-run # build and validate without uploading
make publish-test # upload to TestPyPI
make publish # upload to PyPI
The PyPI project name is remote-cluster-controller; the installed executable is still rcc.
Use a PyPI API token with either form:
PYPI_API_TOKEN=pypi-... make publish
# or
UV_PUBLISH_TOKEN=pypi-... make publish
You can also use UV_PUBLISH_USERNAME / UV_PUBLISH_PASSWORD or trusted publishing.
See docs/superpowers/specs/2026-04-23-rcc-design.md for the full spec.
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 remote_cluster_controller-0.1.0.tar.gz.
File metadata
- Download URL: remote_cluster_controller-0.1.0.tar.gz
- Upload date:
- Size: 75.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8a2143b5d0b3dea2895830d969a4759755ec683ce90e2553874ad9ac63e49395
|
|
| MD5 |
0fbf124b140ff9c2393c9d9612b0b890
|
|
| BLAKE2b-256 |
8f045401377544a1070b77380e7f7897a645009eb32453989479f9009116e6b0
|
File details
Details for the file remote_cluster_controller-0.1.0-py3-none-any.whl.
File metadata
- Download URL: remote_cluster_controller-0.1.0-py3-none-any.whl
- Upload date:
- Size: 17.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
85309c7915846a9c603d13c2fe1870f2962f023c8962677c4bec1da682d14bc2
|
|
| MD5 |
0ba2197973dcab9a254cffdc7fcd0df2
|
|
| BLAKE2b-256 |
45b4bba08f7969c7a564293e9f92ca34856af5fa32f6372ea1d73e079382e0e9
|