AOMI CLI

The current Aomi CLI ships with @aomi-labs/client and exposes the aomi executable.

Use it to:

  • chat with an Aomi backend from the terminal
  • persist and resume local sessions
  • inspect pending wallet requests and sign them
  • ingest per-session secrets with aomi --secret ... or aomi secret ...

Installation

One-off usage

npx @aomi-labs/client --version
npx @aomi-labs/client --help

Global install

npm install -g @aomi-labs/client
aomi --version
aomi --help

Core Commands

aomi chat "swap 1 ETH for USDC"
aomi chat "swap 1 ETH for USDC" --model claude-sonnet-4
aomi chat "swap 1 ETH" --verbose

aomi app list
aomi app current

aomi model list
aomi model current
aomi model set claude-sonnet-4

aomi chain list
aomi --version

aomi secret list
aomi secret clear
aomi --secret ALCHEMY_API_KEY=... TENDERLY_ACCESS_TOKEN=...

aomi session list
aomi session resume session-2
aomi session delete session-2

aomi log
aomi tx
aomi sign tx-1 --private-key 0x...
aomi status
aomi events
aomi close

Secrets

The CLI supports per-session secret ingestion. This is the feature that lets the backend refer to opaque handles instead of raw secret values.

Ingest secrets

aomi --secret ALCHEMY_API_KEY=sk_live_123

You can ingest multiple values in one call:

aomi --secret \
  ALCHEMY_API_KEY=sk_live_123 \
  TENDERLY_ACCESS_TOKEN=tok_456

You can also prepend --secret to another command. The CLI ingests the values first, then runs the command:

aomi --secret ALCHEMY_API_KEY=sk_live_123 chat "check my Base wallet activity"

Inspect or clear secrets

aomi secret list
aomi secret clear

aomi secret clear removes all configured secrets for the active session.

Transaction Flow

The backend prepares wallet requests. The CLI stores them locally and submits them when you call aomi sign.

$ aomi chat "swap 1 ETH for USDC on Uniswap" --public-key 0xYourAddr --chain 1
 Wallet request queued: tx-1
Run `aomi tx` to see pending transactions, `aomi sign <id>` to sign.

$ aomi tx
Pending (1):
 tx-1  to: 0x3fC9...7FAD  value: 1000000000000000000  chain: 1

$ aomi sign tx-1 --private-key 0xabc...
Signer:  0xYourAddr
IDs:     tx-1
Kind:    transaction
Exec:    aa (alchemy, 7702; fallback: eoa)
 Sent! Hash: 0xabc123...

Signing Modes

aomi sign supports three modes:

  • default: account abstraction first, then automatic EOA fallback
  • --aa: require account abstraction and do not fall back
  • --eoa: force direct EOA execution

You can further constrain AA execution with:

  • --aa-provider alchemy|pimlico
  • --aa-mode 4337|7702

Options

These flags match the current CLI help output:

FlagEnvDescription
--backend-urlAOMI_BACKEND_URLBackend URL
--api-keyAOMI_API_KEYAPI key for non-default apps
--appAOMI_APPApp name
--modelAOMI_MODELModel rig to apply before chat
--secret <NAME=value>Ingest secret values for the active session
--public-keyAOMI_PUBLIC_KEYWallet address shared with the agent
--private-keyPRIVATE_KEYHex private key for aomi sign
--rpc-urlCHAIN_RPC_URLRPC URL for transaction submission
--chainAOMI_CHAIN_IDChain ID (1, 137, 42161, 8453, 10, 11155111)
--verbose, -vStream tool calls and agent responses live
--version, -VPrint the installed CLI version

Session State

The CLI is not a daemon. Each command starts, reads local state, talks to the backend, and exits.

By default it stores session files under ~/.aomi/:

  • sessionId: active backend conversation
  • clientId: stable client identity used for secret handles
  • model: last selected model
  • publicKey: persisted wallet address
  • chainId: persisted active chain
  • secretHandles: ingested secret handles for the session
  • pendingTxs: unsigned wallet requests
  • signedTxs: completed transactions

Examples

# Start a session
aomi chat "hello"

# Switch models
aomi model set gpt-5

# Inject a secret, then use it immediately
aomi --secret ALCHEMY_API_KEY=sk_live_123 chat "simulate a swap on Base"

# Review local session state
aomi status
aomi log

# Close the active local session pointer
aomi close

On this page