rp CLI is installed with the runpod Python package. Use it to authenticate, develop and deploy apps, and work with Pods and SSH keys. The same CLI is also available under the name runpod, so rp flash deploy and runpod flash deploy are equivalent.
The
rp CLI is separate from runpodctl, which is a standalone binary with a different set of commands.Command summary
rp flash. Login, secrets, registries, logs, updates, SSH, and Pod commands live at the root. Run rp --help or rp COMMAND --help for details on any command.
rp login
Authenticate with Runpod and save your credentials to~/.runpod/config.toml:
--profile PROFILE_NAME with either login method to update only that profile. The default profile is default. To print the approval URL instead of opening a browser, add --no-open.
rp flash init
Scaffold a new app project:main.py (an app with one queue function and a local entrypoint), requirements.txt, and .runpodignore. Existing files aren’t overwritten unless you add --force. See Build an app.
rp flash dev
Run a live development session for the app defined in a file:@runpod.local_entrypoint, and streams worker logs back to your terminal. Edit your code, then press Enter to re-run. Workers pick up the new code automatically.
See Dev sessions for how sessions work. To run the entrypoint once and exit, which is useful for scripts and CI, add --once:
rp flash deploy
Build and deploy the app in the current project:rp flash deploy path/to/project. Flags:
To learn what goes into the artifact, including ignore rules and the size limit, see Deploy an app.
rp flash app
Manage the apps you’ve deployed:rp flash env
Manage an app’s environments, such asdev, staging, and production:
env commands use the app in the current directory. If the directory has no app or more than one, pass --app APP_NAME.
rp flash undeploy
Delete an environment’s endpoints and the environment itself:--app is optional when the current directory has one app. Add --yes to skip the confirmation prompt.
Secrets and registries
Store secrets that your app reads withrunpod.Secret, and save credentials for private container registries:
rp secret add also accepts --value and --description, and rp registry add accepts --username and --password. If you leave them out, the CLI prompts for them, which keeps the values out of your shell history. Reference a secret in code with env={"HF_TOKEN": runpod.Secret("SECRET_NAME")}, and registry credentials with registry_auth="REGISTRY_NAME".
rp logs
Show a Pod’s container and system logs, such as a Pod started by@app.task:
rp update
Update therunpod package, which includes the CLI, to the latest version:
rp ssh
Manage SSH keys on your account and connect to Pods:rp ssh add generates a new key if you don’t pass one. To use an existing key, pass --key or --key-file. Keys are stored in ~/.runpod/ssh/.