Give your agent a wallet from the terminal

The WaaP CLI creates a wallet for an agent, applies your spending policy, and signs real transactions without ever exposing a private key. This walkthrough uses Sui testnet, so no real money moves.

Sui testnetAbout 10 minutesNode 24Tested Oct 2026
Why builders use it
A wallet per agent, in one commandSignup sends you an email; the wallet exists only after you approve it.
The key never leaves WaaPSigning happens inside WaaP. The CLI never exports a raw private key, so your agent's code can't leak one.
Limits you set, enforced for youEach wallet has a policy: a daily spend limit, plus email approval for risky actions.
One login, three chainsThe same account holds EVM, Sui and Solana addresses.
Same wallet in the browserLog in at waap.xyz with the same email to see and manage exactly what your agent holds.
Made for automation--json output with stable error codes, --wait for confirmation, and an isolated session per agent.
Steps
  1. Use the current CLI

    Older global installs point at retired servers. Pin the version and give this agent its own session folder.

    alias waap="npx -y @human.tech/waap-cli@2.2.1" export WAAP_CLI_SESSION_DIR="$HOME/.waap-basecamp" waap --version
    2.2.1
  2. Create the agent wallet

    Pick a password of 12–64 characters. Type it at the hidden prompt; it never appears on screen or in your history. Then open the email and approve.

    read -rs P; printf '%s\n' "$P" | waap signup --email you+agent@example.com --password-stdin; unset P
    Prints your EVM, Sui and Solana addresses once you approve

    Already use WaaP in the browser with a magic link? That account has no password yet. Run waap reset-password --email you@example.com, set one from the email link, then waap login --email you@example.com --password-stdin.

  3. See who the agent is and what it may do

    waap whoami waap policy get
    twoFactorMethod EMAIL_AUTHZ · dailySpendLimitUsd 5000 · minRiskFor2FA HighWarn
  4. Get testnet Sui

    Open faucet.sui.io, choose Testnet, paste your Sui address and request. It takes about a minute of proof of work in the browser.

    waap wallet-balance --chain sui:testnet
    balanceFormatted 1
  5. Send a transaction

    Pair with a neighbor and send to their Sui address. Small amounts confirm without an approval email under the default policy.

    waap send-tx --chain sui:testnet --to <neighbor's Sui address> --value 0.001 --wait --json
    "status":"confirmed", "txHash":"…" (about 7 seconds)
  6. Check what actually happened

    The agent's report is a claim; the chain is the evidence. Paste your txHash here:

    Opens the transaction checker: status, sender, balance changes, gas and a Suiscan link.

  7. Log out when you're done

    waap logout
    LoggedOut true · RemoteRevoked true
If something goes wrong
unknown command 'reset-password' or a connection error
You're running an old global CLI. Use the alias from step 1.
Login failed (401): Invalid email or password
Either the password is wrong or that email has no CLI password yet. The message is the same for both. Use waap reset-password.
Signup is still waiting
Approve the email link. If your terminal closed, run waap signup --resume with the same session folder.
The faucet says try later
Ask a neighbor who already has testnet Sui to send you some with step 5.