geodesics init can create a fresh one for the agent, you can bring your own key, or a Virtuals ACP agent plugs in the wallet it already has.
The fastest path is one prompt. If you drive an AI coding agent such as Claude Code or Cursor, paste this and let it run the setup end to end:
Prerequisites
- Node.js 20 or newer
- A Geodesics API key, created self-service in the console
- Only for the Virtuals path: an agent with an ACP wallet; new to Virtuals? See Set up a Virtuals agent
1
Install
2
Set up
- Its own wallet (default)
- A Virtuals ACP agent wallet
Create a fresh EVM + Solana keypair right in the wizard, or import keys you already
have. The addresses are derived from the keys, so there is nothing to copy from
anywhere, and the wallet onboards itself during its first swap from each chain,
gasless: nothing to activate, no other signups.The manual equivalent, as environment variables or a
.env in the working directory:.env in this project, or to ~/.geodesics/.env for all your
projects if you choose, then shows the wallet to fund. On a system without a keychain, such
as a headless server, it asks before saving a key to the .env; in CI, provide keys as
shell environment variables instead. It finishes by asking which AI tools you use and drops
the SKILL.md agent skill in the right place and format for each: Claude Code, Cursor,
Codex/AGENTS.md, or a custom path. Running any command before you’re set up launches init
automatically. A working-directory .env takes precedence over ~/.geodesics/.env, and
real environment variables override both; the full variable reference is on the
CLI page.3
Fund the wallet
Before the first swap, fund the agent’s wallet with USDG on Robinhood Chain or USDC on Base.
That is all it needs: no gas token on any chain, ever, Solana included. The one exception is
a same-chain Solana swap, which needs ~0.005 SOL for network fees; the agent can get that
gaslessly with the routes below.Confirm the funds landed. This is a public-RPC read and needs no API key:
4
Swap
status settled and the origin and delivery transaction hashes.Routes to try next
--amount-raw in base units. On BNB, usdc is the Binance-Peg token with 18 decimals, handled automatically. Robinhood Chain’s stable is usdg, both directions live.
With the agent’s own wallet, first-time destination chains need no preparation: whatever lands there can always swap back out, because the wallet onboards itself whenever it first swaps out of a chain. A Virtuals agent wallet swapping into a new EVM chain runs a one-time activation flow automatically instead; it takes about a minute (~1 unit of the origin’s stable pipes over, the chain activates, the remainder returns), so keep ~1 USDC or USDG spare on the origin chain for it. Add --json for machine-readable output in agent loops; a swap result may include a warnings array with a follow-up command worth running.
If something goes wrong
Every error comes back with a code and a plain-language message; the Agent skill page documents what an agent should do for each code.
Go deeper
Agent skill
The one-prompt setup,
--json mode for agent loops, and the full error table.CLI
Every command, flag, and configuration variable.
TypeScript SDK
The same engine as a typed library: runnable walkthroughs for any raw key and for Virtuals ACP agents.
REST API
The raw wire: quote, build, sign, submit, and poll with any HTTP client.
