Account & identity
Commands that read the linked wallet, and commands that prove the agent's identity. Setup commands (status, init, refreshJWT, check-wallet, link-wallet) are on Setup.
Every command here needs an initialised agent. All except version and agent-vc also need a linked wallet.
wallet-address
Prints the address of the linked user's wallet. Use it when the user wants to deposit USDC on Base.
fluxa-wallet wallet-address
# 0x1234567890abcdef1234567890abcdef12345678No options. Prints the bare address with no JSON envelope.
balance
Prints the linked wallet's balances as bare JSON. A currency appears only if the wallet holds it.
fluxa-wallet balance
fluxa-wallet balance --network base| Flag | Type | Required | Default | Description |
|---|---|---|---|---|
--network | string | No | base | Network for the USDC balance |
{
"usdc": { "available": "4115834", "availableFormatted": "4.115834" },
"credits": { "available": "6968", "availableFormatted": "69.68" }
}Each amount is an atomic-unit string with a …Formatted decimal next to it. USDC and XRP have 6 decimals; credits have 2. Output trimmed.
mandates
Lists the agent's spending mandates with their limits and what's left, plus counts of open and total mandates. Run this before creating a new mandate: an existing signed one may already cover the task.
fluxa-wallet mandatesNo options. Prints bare JSON:
{
"open": 1,
"total": 3,
"items": [
{
"mandateId": "mand_xxxxxxxxxxxxx",
"status": "signed",
"currency": "USDC",
"naturalLanguage": "Spend up to 1 USDC on search APIs for 2 weeks",
"limitAmount": "1000000",
"spentAmount": "120000",
"remainingAmount": "880000",
"validUntil": "2026-11-10T00:00:00.000Z"
}
],
"itemsTruncated": false
}Output trimmed. itemsTruncated: true means the list was cut short. To look up a specific mandate, use mandate-status.
recent-transactions
Lists the agent's most recent spends (USDC, XRP and credits), newest first. Credit top-ups, grants and redemptions are left out, and so are payments the agent received. For those, see received-records.
fluxa-wallet recent-transactions --limit 50| Flag | Type | Required | Default | Description |
|---|---|---|---|---|
--limit | integer 1–100 | No | 20 | Number of transactions |
Prints a bare JSON array.
| Error | What to do |
|---|---|
--limit must be an integer in [1, 100] | Pass a value from 1 to 100 |
agent-vc
Issues a short-lived verifiable credential (VC) that proves this agent's identity to a third-party service, for example for single sign-on or account binding. The VC is tied to one audience. It cannot be used to call FluxA's own APIs, so it's safe to hand to the third party. The third party verifies it themselves, using FluxA's published keys. See Verify FluxA Agent ID.
fluxa-wallet agent-vc --audience "https://thirdparty.example.com" --challenge "user-42"
fluxa-wallet agent-vc --audience "https://sso.example.com" --challenge "nonce-abc" --ttl 600| Flag | Type | Required | Default | Description |
|---|---|---|---|---|
--audience | string | Yes | — | Identifier of the third party, usually its URL |
--challenge | string, ≤ 4096 bytes UTF-8 | Yes | — | Value from the third party (nonce, user ID) that gets bound into the VC |
--ttl | integer seconds, 1–86400 | No | 3600 | Lifetime |
{
"success": true,
"data": {
"vc": "eyJhbGciOi...",
"jti": "vc_xxxxxxxx",
"issued_at": 1761500000,
"expires_at": 1761503600,
"kid": "key-2026-10"
}
}Send data.vc to the third party. Use the shortest TTL that works for the hand-off.
| Error | What to do |
|---|---|
Missing required parameter: --audience / --challenge | Supply the flag |
challenge too large (max 4096 bytes) | Shorten the challenge |
ttl must be an integer in [1, 86400] | Use a TTL of at most one day |
version
fluxa-wallet version # also --version, -v
# 0.5.3Prints the installed CLI version. No initialisation needed.
