Start here
Simple Compute Market (SCM) is CLI- and API-first market infrastructure:
participation happens through the market command line and signed HTTP role
protocols, not through a hosted checkout. This page takes you from nothing to
a locally verified CLI and one read-only market query, then hands you to the
path for your role.
Outcome. A working, locally verified market CLI with minimal buyer
configuration, one successful read-only listing query against a Registry you
chose, and a clear next step as a buyer, seller, or Registry operator.
Prerequisites
- Linux or macOS (on Windows, use WSL).
uvfor the recommended install path. The CLI needs Python 3.12+, whichuvprovisions itself — a systempython3.12is not required.- Nothing else for this page. A funded wallet, an RPC URL, and an SSH keypair become prerequisites only when you continue to the buyer quickstart and actually buy.
Install the CLI
The market console script ships in arkhai-core-buyer; arkhai-vms-buyer
adds the virtual-machine compute plugin:
uv tool install arkhai-core-buyer --with arkhai-vms-buyer
Alternative installs — the released build script and the from-repository build — are covered in the synchronized buyer quickstart.
The unversioned PyPI command above and the quickstart's releases/latest
shortcut install moving released packages. They may not match the inspected
development revision that grounds these docs. For exact reproduction, use the
quickstart's source-install path and detach the checkout at the manifest SHA
shown on Source and revisions before building.
Verify the install locally
Before touching any network, confirm the CLI itself:
market --version
market --help
Expected output: market --version prints
market (arkhai-core-buyer) version <installed-version>, followed by one
line per installed domain plugin with its contract version. market --help
lists the command groups the installed plugins registered — with the VM
plugin these include listing, config, logs, escrow, buy,
negotiate, settle, chain, and plugins. Both commands run entirely
locally. The version format and command registry are defined in the pinned
CLI source:
core_buyer/cli.py.
Minimal configuration
market reads ~/.config/arkhai/buyer.toml. Scaffold it:
market config init-user
For a read-only query, only the Registry list matters:
[registry]
# Any listing Registry you choose to query, for example a self-hosted one:
urls = ["http://<REGISTRY_HOST>:8080"]
Buyers choose which Registries to query; sellers choose which Registries to publish to. The wallet, chain, and negotiation sections of the same file matter once you buy — the buyer quickstart documents them all.
Target environment
The synchronized quickstarts pin their examples to Base Sepolia
(chain ID 84532) with test USDC, and name one public preproduction
Registry, http://34.41.205.175/registry. You may use it as an optional
read target for this page's query. That endpoint was observed to be
read-open on 2026-08-13; this is not a promise of continuing access, and
write authority was not tested or granted. It is preproduction
infrastructure for Base Sepolia listings: at the pinned revision it is
documented in the quickstart configuration examples, and it can legitimately
serve an empty listing set. Nothing on this page or this site implies live
inventory or availability.
First read-only market query
market listing list
This queries every URL in [registry] urls in parallel, deduplicates the
results, and prints raw JSON. It reads; it never commits to anything.
Expected output
The query is read-only, so success looks like data, not a state change. With a reachable Registry that has no open listings, the CLI prints an empty JSON array:
[]
With open listings, each array entry is one listing record in the Registry's
domain vocabulary. The raw-JSON contract comes from the pinned CLI source
(listing list is documented there as "List open listings from the
configured registries as raw JSON"), and the Registry's own response shape —
items, count, total_after_filter — from the pinned Registry service:
registry listing routes.
Annotated record examples live in
Machine-readable records.
Choose your role path
- Buy compute — fund a wallet, discover listings, accept a listed price (or negotiate, where configured), and receive seller-delivered access: Buyer quickstart.
- Sell compute — run a storefront, publish signing-address-attributed listings through authenticated requests, and keep delivery under your control: Seller quickstart.
- Operate a Registry — run the discovery surface itself and set its access policy and filter vocabulary: Registry quickstart.
The Market page is a human-readable presentation layer over the same listing concepts and includes website review projections; it is not a canonical Registry response or a checkout. Actual participation stays with the CLI and signed APIs.
Troubleshooting
market: command not found—uv tool installplaces executables in~/.local/bin; ensure it is onPATH, or restart your shell.- A Registry read returns HTTP 401 — that Registry gates reads. Add a
bearer token under
[registry.auth], and note the key must match the URL in[registry] urlsexactly (scheme, host, port, no trailing slash) — a mismatch silently sends unauthenticated requests. []even though you expected listings — an empty array is a valid response; confirm the Registry URL, then filter deliberately (for examplemarket listing list --gpu-model H200) only after a bare query works.
Next steps
Older links to the former one-page reference land here. The same material is now split into task and reference pages:
- Understand who controls what: Roles and authority.
- Follow one deal end to end: From listing to delivery.
- Inspect role interfaces: Signed interfaces.
- Compare domain contracts: Domains overview.
- Audit the exact evidence pin: Source and revisions.
- See every configurable hook: Configuration.
- Check what this documentation deliberately does not claim: Known boundaries.