agent.transactions.list() returns all observed session movements, including venue fills, on hosted targets; local circuit run rejects it. Rows contain operationId, observationIndex, role (principal, or network_fee for gas the session wallet paid), network, canonical assetKey, signed whole-token amount, nullable priceUsd, timestamp and typed references. Negative quantities are debits; positive quantities are credits. Perp movements retain fill prices. References may be empty; order IDs are never transaction hashes.
Use external SDKs for discovery, verified identities, live reads and unsigned construction beyond the typed catalog. Circuit’s wallet owns signing and execution. Size effects from session allocation, not whole-wallet balances.
wallet.transactions.preview({ network, request }) accepts EVM { toAddress, data, valueWei }, or Solana { hexTransaction }, an unsigned serialized version 1 transaction; Circuit rejects legacy and version 0 transactions with INVALID_INPUT. wallet.transactions.create({ network, request }, options?) accepts the same request directly. Preview is optional and carries no execution authority; create always validates and simulates through engine preparation before admission and rechecks live facts before execution. It returns a completed operation; options can persist its admitted reference. Input cannot select another signer, and preview does not enforce allocation. An optional gasBalanceWarning reports a projected ETH balance below 0.002 without blocking spending.
Decoded Solana requests may instead provide { instructions }: each has programAddress, ordered accounts (address/isSigner/isWritable), and ordered data parts: integer (value and bytes 1/2/4/8/16), address, utf8, hex or anchor. The engine constructs the initial message and blockhash; supplied serialized messages retain their blockhash.
Ethereum mainnet broadcasts identical signed bytes concurrently to Alchemy and MEV Blocker fullprivacy. Either acknowledgment starts chain observation. MEV Blocker offers no backrun rebates; Alchemy retains its own privacy policy. There is no public-mempool fallback or next-block guarantee. Explicit local RPC overrides use only that endpoint.
wallet.messages.sign signs EIP-191 or EIP-712 and returns v/r/s plus the signature. Signatures may authorize external effects; their use is not constrained by allocation.