EveryframeDocs
Open Studio ↗
Mining/Day-to-day operations

Day-to-day operations

#Check on your miner

bash
everycli miner status
everycli miner doctor
everycli miner earnings
everycli miner status --json
  • status — local operation phase, exact cloud workload status, the coordinator's signed view of you (attestation, active jobs, model allowlist, routing) and any API failures. Stale local state is never presented as live readiness.
  • doctor — the readiness checklist; exit 2 means not ready.
  • providers — which provider keys are configured and permitted by your release (no key values are printed).
  • earnings — serving fees grouped as review-held, approved and disputed, in USD (microusd in JSON). These are accounting figures for the reward policy, not wallet payouts, on-chain emissions or profit. Automatic payouts are not implemented and upstream expenses are not queried.

Read-only commands never take the mutation lock, so you can run them while another operation is in progress.

#Stop and restart

bash
everycli miner stop --drain-only   # block new assignments, finish the current job
everycli miner status              # wait for active jobs to reach zero
everycli miner stop                # graceful shutdown of the exact saved VM
everycli miner reconcile           # confirm the shutdown actually completed

Draining atomically blocks new assignments but lets the current grant finish. If a job is active, stop returns immediately with a waiting message; run it again when the count is zero. It then requests a graceful shutdown of the saved app. It never deletes the VM and never kills an active render. A stopped VM may still incur storage charges.

If the coordinator is unreachable or your enrolment is not installed, automated shutdown fails closed. Contact the operator to confirm no outstanding work, then shut down the exact VM in the Phala console.

To restart the same VM:

bash
everycli miner start --max-hourly-usd 0.06
everycli miner reconcile
everycli miner doctor
everycli miner resume

start never creates a replacement VM. If your provider key was never activated, run activate before resume.

#Apply an approved update

The operator ships image updates as signed release documents. An update must name your miner, hotkey, app ID and the current compose hash, and carry the new full compose. Mutable tags, foreign targets, untrusted signatures and OS changes are rejected.

bash
everycli miner update --release signed-update.json
everycli miner reconcile
everycli miner doctor
everycli miner activate
# after the new post-restart admission:
everycli miner resume

Updates drain work and replace the provider key with the disabled placeholder until the new release is admitted. There is no automatic rollback to an unreviewed release.

#Invitation expiry

An expired invitation still allows doctor, status, earnings and stop, but not deploy or update. Ask the operator for a renewal, then rerun init with the renewed invitation and your existing credentials file. Renewal can only change issuance and expiry — it cannot silently switch miner, wallet, release or deployment.

#Running more than one miner

Each miner gets its own state directory:

bash
everycli miner status --state-dir /path/to/private-profile
# or
EVERYCLI_DIR=/path/to/private-profile everycli miner status

Each needs its own invitation, hotkey and miner token. One VM per invitation; the CLI will not create a second.

#Non-interactive use

--yes skips the confirmation prompt on mutating commands after you have reviewed the displayed cost and mutation warning. --json gives machine-readable output on read commands. Error output deliberately omits provider request bodies, keys and stack traces — you get a code and a message.