Skip to main content

Sign in from your terminal and pull the optimized model packages your workspace owns

Project description

runinfra-cli

Sign in from your terminal and pull the optimized model packages your workspace owns.

$ pip install runinfra-cli
$ runinfra login
$ runinfra pull <slug> --out ./models

Replace <slug> with the slug shown on your package's page under Optimized models on runinfra.ai.

No Node.js required. This distribution carries a self contained program, so pip install is the only step. That is the point of publishing here: the hosts these packages get pulled onto usually have Python and often do not have Node.


Which package do I want?

There are two, they do different jobs, and installing the wrong one is the most common mistake we see.

Install What it gives you Use it when
pip install runinfra-cli The runinfra command You want to sign in and download the packages your workspace bought
pip install runinfra The Python SDK, import runinfra You want to call an optimized endpoint from your code

They are separate products on separate release cycles and they do not conflict. Installing both in the same environment is fine and supported.


Commands

Command What it does
runinfra login [--device] Connects this terminal by having you approve it in a browser
runinfra pull <slug> [--out DIR] [--concurrency N] Downloads a package this workspace owns, resumable
runinfra logout Deletes the local credential and tells you where to revoke the key
runinfra whoami Shows what this machine has stored, and when its access expires

Run runinfra --help for the full grammar.

Signing in on a machine with no browser

That is the normal case on a GPU host, and it is handled:

$ runinfra login --device

The terminal prints a short code that you type into the approval page on whatever device does have a browser. The code never arrives inside a link. A link that shows up with the code already in it did not come from us.

Downloads resume

Kits are large. If a transfer stops, for any reason including Ctrl-C, run the same runinfra pull command again and it continues from where it stopped rather than starting over.


Exit codes

These are a contract, not an implementation detail. Scripts branch on them, so they do not change without a major version.

Code Meaning
0 Success
2 Bad usage, or this machine cannot run the command
3 Not signed in, denied, or expired
4 The workspace does not own it
5 Network or server failure
6 Integrity failure, such as a checksum mismatch
7 No disk space, or the destination is not writable
130 Interrupted

The split matters in automation. A 5 is worth retrying. A 4 never will be.

Installing through pip does not change any of this. The runinfra command installed here hands control straight to the program and returns its exit code untouched, including 130 from Ctrl-C.


Supported platforms

Operating system Processor
Linux (glibc 2.17 and newer) x86-64, arm64
Linux (musl, such as Alpine) x86-64, arm64
macOS 11 and newer Apple silicon, Intel
Windows 10 and newer x86-64

Python 3.8 or newer. There is nothing to compile and no build step, so the install is a download and an unpack.

If pip install runinfra-cli reports that no matching distribution was found, your platform is not published yet. Tell us which one you need at https://runinfra.ai/contact.

If the runinfra command is not found after a successful install, your environment's scripts directory is not on PATH. python -m runinfra_cli does the same thing and always works.


What the CLI never does

  • It never sees your password. Sign in happens in your browser, in your existing session. The CLI only ever holds an authorization code and, after the exchange, the key that code bought.
  • It never asks you to paste an API key. Approving in the browser mints one, the CLI writes it to a file only you can read, and revoking it in Settings kills it.
  • It never prints the key. whoami and logout show a redacted form.
  • The key it holds cannot spend money. It opens exactly one door, downloading a package your workspace already owns.

Credentials are stored in $XDG_CONFIG_HOME/runinfra/credentials.json on Linux and macOS, and under %LOCALAPPDATA%\runinfra\ on Windows. Set RUNINFRA_CONFIG_DIR to put them somewhere else.

You can revoke this machine's access at any time from Settings, API keys on runinfra.ai.


Licence and support

Licensed for use with the RunInfra service. The full text ships in the package and is reproduced on the product pages. The packages this CLI downloads are covered by their own licences, stated on each package's page and included in each kit.

Questions, or a platform you need: https://runinfra.ai/contact

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

runinfra_cli-0.2.0-py3-none-win_amd64.whl (42.6 MB view details)

Uploaded Python 3Windows x86-64

runinfra_cli-0.2.0-py3-none-musllinux_1_2_x86_64.whl (38.1 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

runinfra_cli-0.2.0-py3-none-musllinux_1_2_aarch64.whl (37.1 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

runinfra_cli-0.2.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (40.5 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

runinfra_cli-0.2.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (39.2 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

runinfra_cli-0.2.0-py3-none-macosx_11_0_arm64.whl (22.9 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

runinfra_cli-0.2.0-py3-none-macosx_10_12_x86_64.whl (25.1 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file runinfra_cli-0.2.0-py3-none-win_amd64.whl.

File metadata

  • Download URL: runinfra_cli-0.2.0-py3-none-win_amd64.whl
  • Upload date:
  • Size: 42.6 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for runinfra_cli-0.2.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 a07a1811f254e874c9ea9f5fadec041effb0e3426d882229dcf50bd1bfc5f0d8
MD5 017b633afc4b797e2b196bb19a927ffb
BLAKE2b-256 30fedf7f5fa902841bcd533a0172eb756a72add32ce7456c8122ab26cde32a30

See more details on using hashes here.

File details

Details for the file runinfra_cli-0.2.0-py3-none-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for runinfra_cli-0.2.0-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 7bb061b1f731e345accade1bb216615f1ad023104c7e804a0b5b41d9bdaaec58
MD5 098d04f4bfdc1ea8acdeca90f7c25834
BLAKE2b-256 495bb8851c1e5b5fb2d4111a085cef89911bb29e24d0d8f3e6c9444c6e6b4c6d

See more details on using hashes here.

File details

Details for the file runinfra_cli-0.2.0-py3-none-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for runinfra_cli-0.2.0-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 8d29fa20a53eaff06b96d38826dc8d2c60e55079ba7ec81d1e47cc0e0cbcf067
MD5 00f01f6176f9218bbe7a319cb435c6a4
BLAKE2b-256 cce6b508dc2a53c95519532aaf040b8f649603aa770adbba7accd47e471ce8cd

See more details on using hashes here.

File details

Details for the file runinfra_cli-0.2.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for runinfra_cli-0.2.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 af0fde5eb7c87e14d8c150aaa91e9d27412bd73f866200c5cfa1c5a55ff11827
MD5 525b32f75ea34e433b07c3e1b57b7e78
BLAKE2b-256 9d75a5faa48320cc7bb68f3dbedcde1e94a650ae6db07f39a36b5c8e4eab384f

See more details on using hashes here.

File details

Details for the file runinfra_cli-0.2.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for runinfra_cli-0.2.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a33ebca668f146211d48108b2ab7fb50d04b8bb920af056f8104801a09a4b9e9
MD5 71088b5775efc57f172a4690ba629db6
BLAKE2b-256 3de23d0dfe2d4aae060b89702ab10fdd58cf2201a9adef19b812c6b259df77a4

See more details on using hashes here.

File details

Details for the file runinfra_cli-0.2.0-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for runinfra_cli-0.2.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c4a27618976674d31c40776219eec6263664dff54822b0b95298978eb432814e
MD5 a07b749b7d56bdbd0f47d908b73c0106
BLAKE2b-256 041f29bfe4a65902d2686228c70e5b5ac37923064ea8d009f93920fc8fa1bcbc

See more details on using hashes here.

File details

Details for the file runinfra_cli-0.2.0-py3-none-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for runinfra_cli-0.2.0-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 505f552f241e6fee6c609a9d5550a4290e93f070199119eaad9302a08016e894
MD5 42681641a554d5dad823bca32b5be630
BLAKE2b-256 aeffdaf38dbb3c8cfc90f0453e157a87cad87a84262def2ded55c8e08be19bea

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page