sanerai
Installer for the cmdop CLI — run one AI agent that reaches every machine you own.
pip install sanerai
sanerai
That's it. sanerai detects your platform, downloads the cmdop binary,
verifies it against the published checksums, installs it, and hands over.
Work is scattered across machines: a laptop, a build box, a server, something at home. Each one has its own tools and its own state, and the usual answer is to SSH into each in turn and remember which is which.
cmdop puts the same binary on each of them and connects them into a fleet. This package installs that binary on one machine; you repeat it wherever you want reach.
How does CMDOP compare? CMDOP Skills vs OpenClaw: two approaches to AI agent skills →
Machines join a fleet, not a dashboard
Each machine keeps its own tools, its own files, and its own credentials — the fleet is how you address them, not a place their data is copied to.
Adding the next machine is the same two commands as the first, which is what makes it worth doing for the fourth and fifth.
What is cmdop
One executable that is the agent, the relay, the local server and the web console at once. There is no gateway, backend, database server or broker to stand up — you add one binary to a machine you already own.
- run an AI agent on your own machine, with your own tools
- reach it from anywhere: terminal, files, remote execution
- connect machines into a fleet
- works with Claude Code and other agent engines under the hood
Full documentation: docs.cmdop.com
Usage
sanerai # install cmdop (if needed), then run it
sanerai --install-only # install, don't hand over
sanerai --prefix ~/bin # choose the install directory
sanerai --force # reinstall even if already present
sanerai --quiet # print only the installed path
sanerai -- --help # everything after `--` goes to cmdop
Default install directory is ~/.local/bin (%LOCALAPPDATA%\cmdop\bin on
Windows). No sudo, no system directories.
What it does, precisely
- Detects your OS and architecture.
- Fetches
SHA256SUMSfrominstall.cmdop.com. - Downloads the matching binary to a temporary file.
- Verifies the SHA-256 against the published checksum. On mismatch it aborts and installs nothing.
- Moves the verified binary into the install directory and marks it executable.
- Runs it.
Supported: macOS (Apple Silicon, Intel), Linux (x64, arm64), Windows (x64).
What it does not do
- No side effects at install time.
pip install saneraionly unpacks files. Nothing is downloaded or executed until you runsanerai. - No network access on import.
import saneraitouches nothing. - No telemetry. The package sends no analytics, ever.
- No dependencies. Standard library only, so there is nothing to conflict with what you already have installed.
Python API
The installer is importable if you would rather script it:
import sanerai
target = sanerai.detect()
print(target.label, target.asset)
result = sanerai.install()
print(result.path, result.sha256)
sanerai.install() raises sanerai.InstallError with a user-facing message
on any failure, and sanerai.UnsupportedPlatform when there is no published
binary for the current machine.
Links
- Website — https://cmdop.com
- Documentation — https://docs.cmdop.com
- Downloads — https://cmdop.com/download
License
MIT
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 sanerai-2.0.1.tar.gz.
File metadata
- Download URL: sanerai-2.0.1.tar.gz
- Upload date:
- Size: 9.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f084aaaf3a442ee1785257a6b35c19eecd61e265ab77ec4fe0cb817e53de1bfb
|
|
| MD5 |
5e7546050aed5d5fa636b8eed405c35c
|
|
| BLAKE2b-256 |
dd13350b351c894ff436ecffaeb2cd2d45e4176d201804a01094f80df9d3750a
|
File details
Details for the file sanerai-2.0.1-py3-none-any.whl.
File metadata
- Download URL: sanerai-2.0.1-py3-none-any.whl
- Upload date:
- Size: 10.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6ed9f0fd8caa2a445dbab2c67de947111a292580a43463d623ffccf136302bb7
|
|
| MD5 |
0e9e7366d694168ab95371075b8a811b
|
|
| BLAKE2b-256 |
ddc7529fe6ed6347eb90d4a37ceb10e2a01399a218a3558b78dbfc5b7530e6c0
|
Release history Release notifications | RSS feed
2026.3.20 yanked
Reason this release was yanked:
Superseded by 2.0.0 — this release fails on import.
2026.3.12 yanked
Reason this release was yanked:
Superseded by 2.0.0 — this release fails on import.
2026.3.11 yanked
Reason this release was yanked:
Superseded by 2.0.0 — this release fails on import.
2026.3.10 yanked
Reason this release was yanked:
Superseded by 2.0.0 — this release fails on import.
2026.2.28 yanked
Reason this release was yanked:
Superseded by 2.0.0 — this release fails on import.