Install everycli
Use a prebuilt binary: no compiler, language runtime, Docker or GPU is needed on your computer. The worker runs separately in its cloud VM.
Download everycli from the official GitHub releases. Downloads are public; you do not need a GitHub account or token.
These guides target everycli v0.8.7. This release improves waiting and recovery during worker updates. Run everycli update; for Pika on an existing worker, follow the Pika upgrade steps. Existing automatic controllers continue compatible updates for their current providers. Existing offers, discounts and API keys are preserved. Close and reopen an already running UI after updating. See worker updates, stopped-worker recovery, interrupted preparation recovery and deleted-workload recovery.
#Install with one command
curl --proto '=https' --tlsv1.2 -LsSf \
https://github.com/everyframe-studio/everyframe-miner/releases/latest/download/everycli-installer.sh | shThe installer selects your platform, verifies the binary's SHA-256 checksum and installs into ~/.cargo/bin, or $CARGO_HOME/bin if configured. No development toolchain is installed. No sudo is needed for a normal user-owned installation.
If this directory is already on PATH, use everycli immediately. Otherwise, run the source command printed by the installer or open a new terminal. Then check:
everycli --version
everycli --helpThe installer adds PATH entries to .profile, .bashrc and .zshrc without duplicating them; symlinked profiles are left unchanged. To leave shell profiles untouched, replace | sh with | EVERYCLI_NO_MODIFY_PATH=1 sh and configure PATH yourself. Fish users should use this option.
#Supported platforms
| Platform | Requirement |
|---|---|
| Linux x86-64 / ARM64 | glibc 2.35 or newer, such as Ubuntu 22.04+ |
| macOS Intel | Release CI validates on macOS 15 |
| macOS Apple Silicon | Release CI validates on macOS 14 |
| Windows | Use a compatible Linux distribution under WSL |
Native Windows, Alpine/musl Linux and older macOS versions are not supported or validated by the release workflow. Installation needs curl and either sha256sum or shasum.
#Upgrade everycli
everycli updateThis replaces an official release CLI with the latest stable release, without a miner login. It verifies the checksum and runs a version probe before replacing the executable, retaining the previous binary as everycli.rollback. Failed verification leaves the old executable intact. Source-built binaries are not silently replaced; install the official release separately if you want managed updates. It does not automatically downgrade.
By default, updates show readable stages and download progress: percentage and downloaded/total size when available, or downloaded size when the server does not report a total. Interactive terminals refresh one progress line; redirected logs use plain-text milestones. Progress goes to stderr, and the final result goes to stdout.
For scripts, add --json to suppress progress and return one structured result or error:
everycli update --json
everycli update --check --jsonThe currently installed CLI performs the upgrade. If you are upgrading from an older version, that one upgrade still uses the older output; the new progress display is available once v0.3.2 is installed.
everycli update --check
everycli --versionIf a documented command is missing, check your version and update. If your old CLI has no update command, rerun the installer. Install the current v0.8.7 release with everycli update.
#Automatic CLI updates
Native user installations check for stable CLI releases in the background after successful interactive commands and when everycli ui starts, at most once every six hours. Downloads are checksum-verified and atomically installed for the next invocation. Close and reopen the UI after an update to run the new version. The current command's result is unaffected if the update fails.
everycli auto-update
everycli auto-update --disable
everycli auto-update --enable
everycli auto-update --jsonThe first command shows settings and the last attempt. Automatic updates are enabled by default; EVERYCLI_DISABLE_AUTO_UPDATE=1 disables them for that environment. JSON, CI, non-interactive, help, version and explicit update commands never launch a background check.
This applies only to owner-managed native installs in ~/.cargo/bin/everycli (or $CARGO_HOME/bin/everycli) and ~/.local/bin/everycli. Package-manager paths, symlink launchers, build directories and unsafe permissions stay manual. Preferences and the last result live in ~/.config/everycli-updater/, separately from miner profiles. No daemon is installed. Running workers, keys, bids and jobs are never updated automatically.
#Replacing an older CLI
Back up your private profile first. Do not run two mutating CLI commands against the same profile or replace the binary during an active command.
If another installation shadows the new binary:
command -v everycli
"${CARGO_HOME:-$HOME/.cargo}/bin/everycli" --versionUse the full path or place the new bin directory first on PATH. Installing it does not uninstall older packages.
#Open the local browser UI
everycli uiThe page runs on 127.0.0.1, paired to this CLI session—not on a public server.
It guides setup and offers status, balances, bids, key management, local worker
renaming and confirmed lifecycle actions. Keep the pairing link private. Use
everycli ui --no-open to print the link without opening a browser. Closing the
page does not stop cloud hosting. Follow the everycli UI guide for the complete browser setup and dashboard walkthrough.
#Trust and next steps
The installer executes a shell script from the official GitHub release and may modify PATH configuration. You can download and inspect it first. Checksums detect corrupted or mismatched downloads; they are not independent publisher signatures. Trust in the GitHub repository, release workflow and HTTPS remains necessary.
If a download fails, check the official releases. Do not install a similarly named package from an unofficial source.
Mainnet SN117 is the default, with state in ~/.config/everycli-mainnet117. Use --state-dir for another private profile, and keep each miner's deployment state separate.
Continue with Deploy your miner. New public mainnet miners use local hotkey authentication, not an operator-issued invitation or miner token; exact TEE admission is still required.