EdgeAI customer lifecycle CLI
Project description
EdgeAI CLI
Customer lifecycle CLI for EdgeAI. The repository is cli; the installed
binary is edgeai.
Installation
Recommended:
pipx install edgeai-cli
edgeai login
edgeai install
Alternatives:
uv tool install edgeai-cli
python3 -m pip install --user edgeai-cli
While this repo is private, GitHub Release binaries are available to repo users. PyPI is the public customer distribution path.
TestPyPI installs
After publishing a test release to TestPyPI, install the exact test version with one of these commands:
uv tool install --default-index https://test.pypi.org/simple/ edgeai-cli==0.1.0
pipx install --pip-args="--index-url https://test.pypi.org/simple/" edgeai-cli==0.1.0
python3 -m pip install --index-url https://test.pypi.org/simple/ edgeai-cli==0.1.0
For a throwaway virtual environment with uv:
uv venv /tmp/edgeai-test
source /tmp/edgeai-test/bin/activate
uv pip install --default-index https://test.pypi.org/simple/ edgeai-cli==0.1.0
edgeai --help
Commands
edgeai login
edgeai login --api-key <key>
edgeai login --no-browser
edgeai whoami
edgeai device register --name shop-floor
edgeai install
edgeai install tts stt agents-sdk hannah
edgeai update
edgeai update tts
edgeai status
edgeai doctor
edgeai install with no product arguments installs every product the API key can
access on the current platform. Explicit product arguments narrow the install or
update to tts, stt, agents-sdk, and/or hannah.
Local state defaults to ~/.edgeai and can be overridden with EDGEAI_DIR.
The API base URL defaults to https://runedge.ai/api and can be overridden with
EDGEAI_API_BASE_URL.
Installed product state is stored in ~/.edgeai/products.json. Product tarballs
and models are downloaded into ~/.edgeai/downloads, extracted under
~/.edgeai/<product>, and launchers are generated in ~/.edgeai/bin.
Shell completion
Completion scripts are generated on demand and are intentionally opt-in:
edgeai completion zsh
edgeai completion bash
edgeai completion fish
Install the generated script using your shell's preferred completion location. The CLI does not edit shell profiles automatically.
Development
go mod tidy
go test ./...
go run ./cmd/edgeai --help
Releases
Release outputs are built by .github/workflows/release.yml:
- Native archives for
darwin-arm64,linux-amd64, andlinux-arm64 checksums.txt- PyPI wheels for the
edgeai-clipackage, installing theedgeaicommand
Build artifacts without publishing:
gh workflow run release.yml \
--ref main \
-f version=0.1.0 \
-f publish_target=none
Publish a test release to TestPyPI:
gh workflow run release.yml \
--ref main \
-f version=0.1.0 \
-f publish_target=testpypi
Then verify the TestPyPI package:
uv tool install --default-index https://test.pypi.org/simple/ edgeai-cli==0.1.0
edgeai --help
Then tag and push the release:
git tag v0.1.0
git push origin v0.1.0
PyPI Trusted Publishing must be configured for the edgeai-cli project with:
- Repository:
RunEdgeAI/cli - Workflow:
release.yml - Environment:
pypi
Configure TestPyPI the same way with environment testpypi.
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 Distributions
Built Distributions
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 edgeai_cli-0.1.0-py3-none-manylinux_2_17_x86_64.whl.
File metadata
- Download URL: edgeai_cli-0.1.0-py3-none-manylinux_2_17_x86_64.whl
- Upload date:
- Size: 8.0 MB
- Tags: Python 3, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b7d8861eb418f4fa8b30fc33aeb357dd40db1279a39efc9e6a9295596f2d901a
|
|
| MD5 |
1c1a724c5262703f19b4228cf74e00ce
|
|
| BLAKE2b-256 |
7e7371f02c12511a460a3b572c9dd134ed2f4240a881cf143b402399c669d257
|
Provenance
The following attestation bundles were made for edgeai_cli-0.1.0-py3-none-manylinux_2_17_x86_64.whl:
Publisher:
release.yml on RunEdgeAI/cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
edgeai_cli-0.1.0-py3-none-manylinux_2_17_x86_64.whl -
Subject digest:
b7d8861eb418f4fa8b30fc33aeb357dd40db1279a39efc9e6a9295596f2d901a - Sigstore transparency entry: 1743328275
- Sigstore integration time:
-
Permalink:
RunEdgeAI/cli@5b645c53ae20c68dfae1b3b120fee09eed0268b1 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/RunEdgeAI
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@5b645c53ae20c68dfae1b3b120fee09eed0268b1 -
Trigger Event:
push
-
Statement type:
File details
Details for the file edgeai_cli-0.1.0-py3-none-manylinux_2_17_aarch64.whl.
File metadata
- Download URL: edgeai_cli-0.1.0-py3-none-manylinux_2_17_aarch64.whl
- Upload date:
- Size: 7.7 MB
- Tags: Python 3, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2abe789b61756079ba4e9056be38e827d3ceb00f6090775f03bc406a8765100b
|
|
| MD5 |
e397b7085cafe5874ec83d4a3bb42440
|
|
| BLAKE2b-256 |
7dddd480c459cf70c7cd488a0510beea9ff1a5c589fd35bc836bc6b0af5be5f5
|
Provenance
The following attestation bundles were made for edgeai_cli-0.1.0-py3-none-manylinux_2_17_aarch64.whl:
Publisher:
release.yml on RunEdgeAI/cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
edgeai_cli-0.1.0-py3-none-manylinux_2_17_aarch64.whl -
Subject digest:
2abe789b61756079ba4e9056be38e827d3ceb00f6090775f03bc406a8765100b - Sigstore transparency entry: 1743328316
- Sigstore integration time:
-
Permalink:
RunEdgeAI/cli@5b645c53ae20c68dfae1b3b120fee09eed0268b1 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/RunEdgeAI
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@5b645c53ae20c68dfae1b3b120fee09eed0268b1 -
Trigger Event:
push
-
Statement type:
File details
Details for the file edgeai_cli-0.1.0-py3-none-macosx_11_0_arm64.whl.
File metadata
- Download URL: edgeai_cli-0.1.0-py3-none-macosx_11_0_arm64.whl
- Upload date:
- Size: 7.9 MB
- Tags: Python 3, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
92b1dbb344e594ae1b86517e23e6003ae4b398b111a8a728cb8500b6d1789c56
|
|
| MD5 |
cb22ca26130cedb7b6879504726fdb18
|
|
| BLAKE2b-256 |
cdaa4e8925ef7d3b2a05ebfc03a705263f259b3e01ac82aa62e5472347b5a364
|
Provenance
The following attestation bundles were made for edgeai_cli-0.1.0-py3-none-macosx_11_0_arm64.whl:
Publisher:
release.yml on RunEdgeAI/cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
edgeai_cli-0.1.0-py3-none-macosx_11_0_arm64.whl -
Subject digest:
92b1dbb344e594ae1b86517e23e6003ae4b398b111a8a728cb8500b6d1789c56 - Sigstore transparency entry: 1743328345
- Sigstore integration time:
-
Permalink:
RunEdgeAI/cli@5b645c53ae20c68dfae1b3b120fee09eed0268b1 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/RunEdgeAI
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@5b645c53ae20c68dfae1b3b120fee09eed0268b1 -
Trigger Event:
push
-
Statement type: