| name | cavos-cli |
| description | Interact with the Cavos CLI for Starknet wallet operations. Use for transfers, approvals, contract calls, session management, and transaction monitoring. |
| metadata | {"openclaw":{"requires":{"bins":["npx"]}}} |
Cavos CLI Skill
This skill allows you to interact with the Cavos CLI (@cavos/cli) to manage Starknet wallets, perform transfers, and execute contract calls.
Core Commands
Always use the --json flag when possible to get structured output.
1. Identity & Session
- Who Am I: Check current session and wallet address.
npx @cavos/cli whoami --json
- Session Status: Check if the session is active/expired.
npx @cavos/cli session-status --json
- Import Session: Import a session token provisioned from the Dashboard.
npx @cavos/cli session import <token>
2. Assets & Transfers
3. Contract Interactions
- Approve Spending:
npx @cavos/cli approve --spender <address> --amount <amount> --token <token> --json
- Execute Call:
npx @cavos/cli execute --contract <address> --entrypoint <method> --calldata <comma_separated_vals> --json
- Read Call:
npx @cavos/cli call --contract <address> --entrypoint <method> --calldata <vals> --json
4. Advanced Operations
- Multicall: Batch multiple calls.
npx @cavos/cli multicall --calls '<json_array>' --json
- Simulate/Estimate: Check tx before sending.
npx @cavos/cli simulate --contract <addr> --entrypoint <method> --calldata <vals> --json
- Transaction Status:
npx @cavos/cli tx status <hash> --json
Best Practices
- Verify Balance: Always run
balance before a transfer.
- Check Session: Run
whoami or session-status at the start of a workflow to ensure authentication.
- Use JSON: Parsing JSON output is safer than regexing stdout.
- Calldata: Calldata for
execute and call should be comma-separated strings (e.g., 0x1,100).