Watch the network from the command line

What the network is doing, from a shell: which parts are up, what the agents have run and spent, what the wallets hold, what is for sale and who sells it, and one paid call from your own wallet with a budget you set, to see a service for yourself. These are the commands to run while your agents and listings work, and the ones a script or a cron job runs to keep watch.

What you need

  • The CLI, with the stack running.
  • For aioum call and your own balances, AIOUM_PRIVATE_KEY and AIOUM_DEPLOYMENTS. Everything else reads public endpoints and signs nothing.
  • jq, for the last steps.

Steps

  1. Probe every part.

    npx aioum status
    

    One row per part, ok or DOWN, what it said and how long it took, then all good or something is down with the counts: listings, agents, runs and how many are running.

  2. See what happened lately.

    npx aioum activity --limit 20
    

    The runner's totals, agents, runs, USDC spent, calls made, agents published and runs going now, then the latest runs (20 unless --limit says otherwise), one row each: run id, agent, status, how it started, when it started and finished, what it spent, how many calls it made, and the error when it failed.

  3. See the wallets.

    npx aioum wallet
    

    Under runner: its address, chain id, whether it is on the local development network (where it funds itself), its USDC and its ETH. Under you, with a key and deployments set: your address with its ZAI, USDC and ETH.

  4. Search the marketplace.

    npx aioum services --q price --live --limit 10
    

    One row per listing from the index whose category, descriptor or tools contain every word: service id, category, price per call, whether it is live, operator and tools (--json adds the descriptor, the stake and the node). --category <name> narrows to one group; without --live, offline listings are in the list too.

  5. One listing in full.

    npx aioum service <serviceId>
    

    Everything the index knows about it: the id, category and descriptor, the price per call, the operator, whether it is live and active, the stake behind it, its node's URL, its model when it has one, its tools with what each does, and its reputation.

  6. One operator.

    npx aioum operator <address>
    

    Their address, the stake behind them in ZAI, their reputation, and every service they list.

  7. Refresh the directory.

    npx aioum refresh
    

    The indexer re-scans now instead of on its own timer, so a listing that went live a moment ago shows in services right after.

  8. The tools an agent can pay for.

    npx aioum tools --q swap --refresh
    

    The runner's view of the marketplace, live listings only, one row per tool with its price and what it does (--json adds the input schema): what an agent sees when it plans. --refresh makes the runner re-read the directory first.

  9. Pay for one call yourself. This spends USDC from your wallet.

    npx aioum call <serviceId> price --args '{"ids":"bitcoin","vs":"usd"}' --budget "1 USDC"
    

    The tool and its arguments are the listing's, from step 5. The CLI opens a session key from your wallet with that budget (10 USDC and 24 hours when unset; on the local development network it mints test USDC first), pays the listing's node for one call, and prints the text the tool returned, then one line with what the call cost in USDC, the session id, what is left of the budget, and the node's URL. The session can never spend past the budget, whatever the node asks.

  10. See the runs going now.

    npx aioum runs --limit 5
    

    The five latest runs across every agent, with their status; the ones still running are the ones to watch. npx aioum run stop <run-id> stops one and prints stopped run <id>.

  11. Follow one run to its end. --json prints the run as the runner returns it, so jq reads its status.

    while npx aioum run get <run-id> --json | jq -e '.status | IN("queued","running")' >/dev/null
    do sleep 3; done
    

    The loop ends when the run is done, failed or stopped; npx aioum run get <run-id> then prints its steps, its receipts and its output. A run you start yourself needs none of this: npx aioum agent run <agent-id> --wait waits for you.

What you have now

The whole network in a few commands: health, wallets, runs and what they cost, every listing and operator, and a paid call of your own with a receipt; text for you, JSON for whatever script you put behind it.

Next: With Claude and MCP — the same network, driven from a conversation.