@waiaas/skills 2.8.0 → 2.9.0-rc

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@waiaas/skills",
3
- "version": "2.8.0",
3
+ "version": "2.9.0-rc",
4
4
  "description": "WAIaaS skill files for AI agents - install via npx @waiaas/skills add <name>",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -3,7 +3,7 @@ name: "WAIaaS Actions"
3
3
  description: "Action Provider framework: list providers, execute DeFi actions through the 6-stage transaction pipeline"
4
4
  category: "api"
5
5
  tags: [wallet, blockchain, defi, actions, waiass, jupiter, 0x, swap, lifi, bridge, cross-chain, lido, jito, staking, liquid-staking]
6
- version: "2.8.0"
6
+ version: "2.9.0-rc"
7
7
  dispatch:
8
8
  kind: "tool"
9
9
  allowedCommands: ["curl"]
@@ -160,8 +160,8 @@ curl -s -X POST http://localhost:3100/v1/actions/jupiter_swap/swap \
160
160
  | Parameter | Type | Required | Description |
161
161
  | --------- | ---- | -------- | ----------- |
162
162
  | `params` | object | No | Action-specific parameters as key-value pairs. Varies per provider/action. |
163
- | `network` | string | No | Target network. Defaults to wallet's default network. |
164
- | `walletId` | string | No | Target wallet ID. Omit to use the default wallet. |
163
+ | `network` | string | No | Target network. Required for EVM wallets; auto-resolved for Solana. |
164
+ | `walletId` | string | No | Target wallet ID. Required for multi-wallet sessions; auto-resolved for single wallet. |
165
165
 
166
166
  **Single-step response (201):**
167
167
  ```json
@@ -694,7 +694,7 @@ Enable Lido Staking via **Admin UI > Settings > Actions > Lido Staking**, or env
694
694
  ### Chain Support
695
695
 
696
696
  - **Ethereum only** (mainnet and Holesky testnet)
697
- - Address auto-detection: `rpc.evm_default_network` + `deriveEnvironment()` determines mainnet vs Holesky addresses
697
+ - Address auto-detection: `deriveEnvironment()` determines mainnet vs Holesky addresses based on wallet environment
698
698
  - Admin override: empty string default falls back to environment-derived addresses
699
699
 
700
700
  ### Async Unstake Tracking
@@ -3,7 +3,7 @@ name: "WAIaaS Admin"
3
3
  description: "Admin API: daemon status, kill switch, notifications, settings management, JWT rotation, shutdown, oracle status, API key management"
4
4
  category: "api"
5
5
  tags: [wallet, blockchain, admin, security, oracle, defi, waiass]
6
- version: "2.8.0"
6
+ version: "2.9.0-rc"
7
7
  dispatch:
8
8
  kind: "tool"
9
9
  allowedCommands: ["curl"]
@@ -43,13 +43,12 @@ The master password is set in `config.toml` under `[security]` or via environmen
43
43
  curl -s -X POST http://localhost:3100/v1/sessions \
44
44
  -H 'Content-Type: application/json' \
45
45
  -H 'X-Master-Password: <password>' \
46
- -d '{"walletIds": ["wallet-1-uuid", "wallet-2-uuid"], "defaultWalletId": "wallet-1-uuid"}'
46
+ -d '{"walletIds": ["wallet-1-uuid", "wallet-2-uuid"]}'
47
47
  ```
48
48
 
49
49
  Body:
50
- - `walletIds`: string[] -- Connect multiple wallets (new)
50
+ - `walletIds`: string[] -- Connect multiple wallets
51
51
  - `walletId`: string -- Connect single wallet (backward compatible)
52
- - `defaultWalletId`?: string -- Specify default wallet (optional, defaults to first)
53
52
  - `expiresIn`?: number -- TTL in seconds
54
53
 
55
54
  ## Session-Wallet Management (masterAuth required)
@@ -405,8 +404,7 @@ curl -s http://localhost:3100/v1/admin/settings \
405
404
  "rpc.evm_optimism_mainnet": "https://optimism.drpc.org",
406
405
  "rpc.evm_optimism_sepolia": "https://optimism-sepolia.drpc.org",
407
406
  "rpc.evm_base_mainnet": "https://base.drpc.org",
408
- "rpc.evm_base_sepolia": "https://base-sepolia.drpc.org",
409
- "rpc.evm_default_network": "ethereum-sepolia"
407
+ "rpc.evm_base_sepolia": "https://base-sepolia.drpc.org"
410
408
  },
411
409
  "security": {
412
410
  "security.session_ttl": "86400",
@@ -467,7 +465,7 @@ curl -s http://localhost:3100/v1/admin/settings \
467
465
  | Category | Keys | Description |
468
466
  | --------------- | ------------------------------------------------------- | -------------------------------------- |
469
467
  | `notifications` | enabled, telegram_*, discord_*, ntfy_*, slack_*, locale, rate_limit_rpm | Notification channel configuration. |
470
- | `rpc` | solana_*, evm_*, evm_default_network | Blockchain RPC endpoint URLs. |
468
+ | `rpc` | solana_*, evm_* | Blockchain RPC endpoint URLs. |
471
469
  | `security` | session_ttl, max_sessions_*, rate_limit_*, policy_defaults_* | Security and rate limiting. |
472
470
  | `daemon` | log_level | Daemon runtime settings. |
473
471
  | `walletconnect` | project_id | WalletConnect project configuration. |
@@ -547,7 +545,6 @@ RPC:
547
545
  - `rpc.evm_optimism_sepolia` -- Optimism Sepolia testnet RPC URL
548
546
  - `rpc.evm_base_mainnet` -- Base mainnet RPC URL
549
547
  - `rpc.evm_base_sepolia` -- Base Sepolia testnet RPC URL
550
- - `rpc.evm_default_network` -- Default EVM network for new wallets
551
548
 
552
549
  Security:
553
550
  - `security.session_ttl` -- Default session TTL in seconds (default: "86400")
@@ -3,7 +3,7 @@ name: "WAIaaS Policies"
3
3
  description: "Policy engine CRUD: 12 policy types for spending limits, whitelists, time restrictions, rate limits, token/contract/approve controls, network restrictions, x402 domain controls"
4
4
  category: "api"
5
5
  tags: [wallet, blockchain, policies, security, waiass]
6
- version: "2.8.0"
6
+ version: "2.9.0-rc"
7
7
  dispatch:
8
8
  kind: "tool"
9
9
  allowedCommands: ["curl"]
@@ -3,7 +3,7 @@ name: "WAIaaS Quickset"
3
3
  description: "End-to-end quickset: create wallet, session, check balance, send first transfer"
4
4
  category: "api"
5
5
  tags: [wallet, blockchain, solana, ethereum, quickset, quickstart, waiass]
6
- version: "2.8.0"
6
+ version: "2.9.0-rc"
7
7
  dispatch:
8
8
  kind: "tool"
9
9
  allowedCommands: ["curl"]
@@ -52,7 +52,7 @@ curl -s http://localhost:3100/v1/connect-info \
52
52
 
53
53
  If using MCP, call the `connect_info` tool instead.
54
54
 
55
- For multi-wallet sessions, specify `wallet_id` parameter to target a specific wallet. Omit to use the default wallet.
55
+ For multi-wallet sessions, specify `wallet_id` parameter to target a specific wallet. Required for multi-wallet sessions; auto-resolved when session has a single wallet.
56
56
 
57
57
  ## Step-by-Step Workflow
58
58
 
@@ -124,7 +124,7 @@ Response (201):
124
124
  }
125
125
  ```
126
126
 
127
- The `network` field shows the wallet's default network, automatically assigned based on the chain and environment. For Solana mainnet, the default is `mainnet`. For Ethereum mainnet, the default is `ethereum-mainnet`.
127
+ The `network` field shows the wallet's primary network. Solana has a single auto-resolved network per environment (e.g., `mainnet`). EVM wallets require explicit network specification (e.g., `ethereum-mainnet`, `polygon-mainnet`).
128
128
 
129
129
  The `session` field contains the auto-created session token. Save the `token` value -- use it as `Authorization: Bearer <token>` for all wallet operations below. To skip auto-session creation, set `createSession: false`.
130
130
 
@@ -162,7 +162,7 @@ curl -s http://localhost:3100/v1/wallet/balance \
162
162
  -H 'Authorization: Bearer wai_sess_eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...'
163
163
  ```
164
164
 
165
- Optional: Append `?network=<network>` to query a specific network (defaults to the wallet's default network).
165
+ Optional: Append `?network=<network>` to query a specific network. Required for EVM wallets; auto-resolved for Solana.
166
166
 
167
167
  Response:
168
168
  ```json
@@ -188,7 +188,7 @@ curl -s http://localhost:3100/v1/wallet/assets \
188
188
  -H 'Authorization: Bearer wai_sess_eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...'
189
189
  ```
190
190
 
191
- Optional: Append `?network=<network>` to query a specific network (defaults to the wallet's default network).
191
+ Optional: Append `?network=<network>` to query a specific network. Required for EVM wallets; auto-resolved for Solana.
192
192
 
193
193
  Response:
194
194
  ```json
@@ -238,7 +238,7 @@ Parameters:
238
238
  - `to` (required): recipient wallet address
239
239
  - `amount` (required): string of digits in smallest unit (lamports for SOL, wei for ETH)
240
240
  - `memo` (optional): max 256 characters
241
- - `network` (optional): target network for this transaction (defaults to wallet's default network)
241
+ - `network`: target network for this transaction. Required for EVM wallets; auto-resolved for Solana.
242
242
 
243
243
  Response (201):
244
244
  ```json
@@ -3,7 +3,7 @@ name: "WAIaaS Session Recovery"
3
3
  description: "Recover from expired or permanently expired session tokens"
4
4
  category: "api"
5
5
  tags: [wallet, blockchain, session, recovery, token, expired, waiass]
6
- version: "2.8.0"
6
+ version: "2.9.0-rc"
7
7
  dispatch:
8
8
  kind: "tool"
9
9
  allowedCommands: ["curl"]
@@ -3,7 +3,7 @@ name: "WAIaaS Setup"
3
3
  description: "Zero-state daemon setup: install CLI, initialize, start daemon, create wallet, configure session"
4
4
  category: "api"
5
5
  tags: [wallet, blockchain, solana, ethereum, setup, install, waiass]
6
- version: "2.8.0"
6
+ version: "2.9.0-rc"
7
7
  dispatch:
8
8
  kind: "tool"
9
9
  allowedCommands: ["curl", "npm", "npx", "waiaas", "which"]
@@ -3,7 +3,7 @@ name: "WAIaaS Transactions"
3
3
  description: "All 5 transaction types (TRANSFER, TOKEN_TRANSFER, CONTRACT_CALL, APPROVE, BATCH) with lifecycle management"
4
4
  category: "api"
5
5
  tags: [wallet, blockchain, solana, ethereum, transactions, waiass]
6
- version: "2.8.0"
6
+ version: "2.9.0-rc"
7
7
  dispatch:
8
8
  kind: "tool"
9
9
  allowedCommands: ["curl"]
@@ -44,7 +44,7 @@ WAIaaS uses a **discriminatedUnion 5-type** system for transactions. The `type`
44
44
 
45
45
  All transaction types use `POST /v1/transactions/send` with the appropriate `type` field.
46
46
 
47
- All transaction types accept an optional `network` parameter to specify the target network for the transaction. If omitted, the wallet's default network is used. The specified network must be valid for the wallet's environment.
47
+ All transaction types accept a `network` parameter to specify the target network for the transaction. Required for EVM wallets; auto-resolved for Solana wallets. Must be valid for the wallet's environment.
48
48
 
49
49
  ## 2. Type 1: TRANSFER (Native SOL/ETH)
50
50
 
@@ -69,7 +69,7 @@ Parameters:
69
69
  - `to` (required): recipient address (base58 for Solana, 0x-hex for EVM)
70
70
  - `amount` (required): string of digits in smallest unit (lamports for SOL, wei for ETH)
71
71
  - `memo` (optional): string, max 256 characters
72
- - `network` (optional): target network for this transaction. Defaults to wallet's default network. Must be valid for the wallet's environment.
72
+ - `network`: target network for this transaction. Required for EVM wallets; auto-resolved for Solana. Must be valid for the wallet's environment.
73
73
 
74
74
  ### Response (201)
75
75
 
@@ -142,7 +142,7 @@ Parameters:
142
142
  - `symbol` (required): string, 1-10 characters
143
143
  - `assetId` (optional): CAIP-19 asset identifier (e.g., `"eip155:1/erc20:0xa0b8..."`). Cross-validated against `address` when provided.
144
144
  - `memo` (optional): string, max 256 characters
145
- - `network` (optional): target network for this transaction. Defaults to wallet's default network. Must be valid for the wallet's environment.
145
+ - `network`: target network for this transaction. Required for EVM wallets; auto-resolved for Solana. Must be valid for the wallet's environment.
146
146
 
147
147
  ## 4. Type 3: CONTRACT_CALL (Arbitrary Contract)
148
148
 
@@ -189,7 +189,7 @@ EVM-specific parameters:
189
189
  - `calldata` (optional): hex-encoded calldata (e.g., `"0x095ea7b3..."`)
190
190
  - `abi` (optional): JSON ABI fragment array for the function being called
191
191
  - `value` (optional): native token value to send with call, string of digits in wei
192
- - `network` (optional): target network for this transaction. Defaults to wallet's default network. Must be valid for the wallet's environment.
192
+ - `network`: target network for this transaction. Required for EVM wallets; auto-resolved for Solana. Must be valid for the wallet's environment.
193
193
 
194
194
  ### Solana Program Call
195
195
 
@@ -216,7 +216,7 @@ Solana-specific parameters:
216
216
  - `pubkey`: account public key
217
217
  - `isSigner`: boolean
218
218
  - `isWritable`: boolean
219
- - `network` (optional): target network for this transaction. Defaults to wallet's default network. Must be valid for the wallet's environment.
219
+ - `network`: target network for this transaction. Required for EVM wallets; auto-resolved for Solana. Must be valid for the wallet's environment.
220
220
 
221
221
  ## 5. Type 4: APPROVE (Token Spending Approval)
222
222
 
@@ -269,7 +269,7 @@ Parameters:
269
269
  - `symbol` (required): string, 1-10 characters
270
270
  - `assetId` (optional): CAIP-19 asset identifier. Cross-validated against `address` when provided.
271
271
  - `amount` (required): string of digits, max approval amount in token's smallest unit
272
- - `network` (optional): target network for this transaction. Defaults to wallet's default network. Must be valid for the wallet's environment.
272
+ - `network`: target network for this transaction. Required for EVM wallets; auto-resolved for Solana. Must be valid for the wallet's environment.
273
273
 
274
274
  ## 6. Type 5: BATCH (Multiple Instructions)
275
275
 
@@ -299,7 +299,7 @@ curl -s -X POST http://localhost:3100/v1/transactions/send \
299
299
  Parameters:
300
300
  - `type` (required): `"BATCH"`
301
301
  - `instructions` (required): array of 2-20 instruction objects. Each instruction follows the schema of TRANSFER, TOKEN_TRANSFER, CONTRACT_CALL, or APPROVE (without the `type` field)
302
- - `network` (optional): target network for this transaction. Defaults to wallet's default network. Must be valid for the wallet's environment.
302
+ - `network`: target network for this transaction. Required for EVM wallets; auto-resolved for Solana. Must be valid for the wallet's environment.
303
303
 
304
304
  Batch instruction examples:
305
305
 
@@ -605,7 +605,7 @@ Sign an externally built unsigned transaction after policy evaluation. The signe
605
605
  | Field | Type | Required | Description |
606
606
  |-------|------|----------|-------------|
607
607
  | transaction | string | Yes | Unsigned transaction (base64 for Solana, 0x-hex for EVM) |
608
- | network | string | No | Target network (defaults to wallet default) |
608
+ | network | string | No | Target network. Required for EVM wallets; auto-resolved for Solana. |
609
609
 
610
610
  **Response (200):**
611
611
 
@@ -3,7 +3,7 @@ name: "WAIaaS Wallet Management"
3
3
  description: "Wallet CRUD, asset queries, session management, token registry, MCP provisioning, owner management"
4
4
  category: "api"
5
5
  tags: [wallet, blockchain, solana, ethereum, sessions, tokens, mcp, waiass]
6
- version: "2.8.0"
6
+ version: "2.9.0-rc"
7
7
  dispatch:
8
8
  kind: "tool"
9
9
  allowedCommands: ["curl"]
@@ -26,7 +26,7 @@ Complete reference for wallet CRUD operations, asset queries, session management
26
26
  - Create/list/delete sessions, manage session-wallet links
27
27
  - Create/delete MCP tokens
28
28
  - Register/remove custom tokens
29
- - Set owner addresses, default network, additional networks
29
+ - Set owner addresses, manage networks
30
30
  - WalletConnect pairing management
31
31
 
32
32
  > AI agents must NEVER request the master password. Use only your session token.
@@ -37,7 +37,7 @@ All wallet CRUD endpoints require **masterAuth** (`X-Master-Password` header), e
37
37
 
38
38
  ### POST /v1/wallets -- Create Wallet (masterAuth)
39
39
 
40
- Create a new wallet with an auto-generated key pair. Each wallet belongs to an **environment** (testnet or mainnet) which determines the available networks and default network.
40
+ Create a new wallet with an auto-generated key pair. Each wallet belongs to an **environment** (testnet or mainnet) which determines the available networks.
41
41
 
42
42
  ```bash
43
43
  curl -s -X POST http://localhost:3100/v1/wallets \
@@ -49,7 +49,7 @@ curl -s -X POST http://localhost:3100/v1/wallets \
49
49
  Parameters:
50
50
  - `name` (required): string, 1-100 characters
51
51
  - `chain` (optional): `"solana"` (default) or `"ethereum"`
52
- - `environment` (optional): `"mainnet"` (default) or `"testnet"` -- determines available networks and default network
52
+ - `environment` (optional): `"mainnet"` (default) or `"testnet"` -- determines available networks
53
53
  - `createSession` (optional): boolean, default `true` -- auto-creates a session token in the response
54
54
 
55
55
  Response (201):
@@ -71,7 +71,7 @@ Response (201):
71
71
  }
72
72
  ```
73
73
 
74
- The `network` field shows the wallet's default network, automatically derived from `chain` + `environment`. The `session` field is included when `createSession` is `true` (default); set to `false` to create the wallet without a session.
74
+ The `network` field shows the wallet's primary network (chain-dependent: Solana has a single auto-resolved network; EVM requires explicit network specification). The `session` field is included when `createSession` is `true` (default); set to `false` to create the wallet without a session.
75
75
 
76
76
  ### GET /v1/wallets -- List Wallets (masterAuth)
77
77
 
@@ -100,7 +100,7 @@ Response (200):
100
100
 
101
101
  ### GET /v1/wallets/{id} -- Wallet Detail (masterAuth)
102
102
 
103
- Returns full wallet info including owner state and default network.
103
+ Returns full wallet info including owner state and available networks.
104
104
 
105
105
  ```bash
106
106
  curl -s http://localhost:3100/v1/wallets/01958f3a-1234-7000-8000-abcdef123456 \
@@ -115,7 +115,6 @@ Response (200):
115
115
  "chain": "solana",
116
116
  "network": "mainnet",
117
117
  "environment": "mainnet",
118
- "defaultNetwork": "mainnet",
119
118
  "publicKey": "7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU",
120
119
  "status": "ACTIVE",
121
120
  "ownerAddress": null,
@@ -236,31 +235,6 @@ Errors:
236
235
  - `INVALID_SIGNATURE` (401): Signature verification failed
237
236
  - LOCKED state returns 200 (no-op, already verified)
238
237
 
239
- ### PUT /v1/wallets/{id}/default-network -- Change Default Network (masterAuth)
240
-
241
- Change the wallet's default network. The new network must be valid for the wallet's environment.
242
-
243
- ```bash
244
- curl -s -X PUT http://localhost:3100/v1/wallets/01958f3a-1234-7000-8000-abcdef123456/default-network \
245
- -H 'Content-Type: application/json' \
246
- -H 'X-Master-Password: your-master-password' \
247
- -d '{"network": "testnet"}'
248
- ```
249
-
250
- Parameters:
251
- - `network` (required): new default network identifier. Must be valid for the wallet's chain + environment.
252
-
253
- Response (200):
254
- ```json
255
- {
256
- "id": "01958f3a-1234-7000-8000-abcdef123456",
257
- "defaultNetwork": "testnet",
258
- "previousNetwork": "devnet"
259
- }
260
- ```
261
-
262
- Error: `ENVIRONMENT_NETWORK_MISMATCH` (400) if the specified network is not valid for the wallet's environment.
263
-
264
238
  ### GET /v1/wallets/{id}/networks -- List Available Networks (masterAuth)
265
239
 
266
240
  Get all networks available for a wallet based on its chain and environment.
@@ -276,9 +250,8 @@ Response (200):
276
250
  "id": "01958f3a-1234-7000-8000-abcdef123456",
277
251
  "chain": "solana",
278
252
  "environment": "mainnet",
279
- "defaultNetwork": "mainnet",
280
253
  "availableNetworks": [
281
- {"network": "mainnet", "isDefault": true}
254
+ {"network": "mainnet"}
282
255
  ]
283
256
  }
284
257
  ```
@@ -288,7 +261,7 @@ Response (200):
288
261
  When your session has multiple wallets, you can target a specific wallet:
289
262
  - GET requests: add `?walletId=<id>` query parameter
290
263
  - POST requests: add `walletId` field in request body
291
- - Omitting walletId uses the session's default wallet
264
+ - Omitting walletId auto-resolves when session has a single wallet
292
265
 
293
266
  Example:
294
267
  ```bash
@@ -337,7 +310,7 @@ curl -s http://localhost:3100/v1/wallet/balance \
337
310
  -H 'Authorization: Bearer wai_sess_eyJ...'
338
311
  ```
339
312
 
340
- Query a specific network by appending `?network=devnet`. Defaults to the wallet's default network.
313
+ Query a specific network by appending `?network=devnet`. Required for EVM wallets; auto-resolved for Solana.
341
314
 
342
315
  Response (200):
343
316
  ```json
@@ -390,7 +363,7 @@ curl -s http://localhost:3100/v1/wallet/assets \
390
363
  -H 'Authorization: Bearer wai_sess_eyJ...'
391
364
  ```
392
365
 
393
- Query a specific network by appending `?network=devnet`. Defaults to the wallet's default network.
366
+ Query a specific network by appending `?network=devnet`. Required for EVM wallets; auto-resolved for Solana.
394
367
 
395
368
  Response (200):
396
369
  ```json
@@ -489,31 +462,6 @@ The following MCP tools support an optional `display_currency` parameter:
489
462
  - `get_balance` -- includes `displayBalance`/`displayCurrency` in response
490
463
  - `get_assets` -- includes `assets[].displayValue`/`displayCurrency` in response
491
464
 
492
- ### PUT /v1/wallet/default-network -- Change Default Network (sessionAuth)
493
-
494
- Session-scoped endpoint to change the wallet's default network. The network must be valid for the wallet's chain + environment.
495
-
496
- ```bash
497
- curl -s -X PUT http://localhost:3100/v1/wallet/default-network \
498
- -H 'Content-Type: application/json' \
499
- -H 'Authorization: Bearer wai_sess_eyJ...' \
500
- -d '{"network": "polygon-amoy"}'
501
- ```
502
-
503
- Parameters:
504
- - `network` (required): new default network identifier
505
-
506
- Response (200):
507
- ```json
508
- {
509
- "id": "01958f3a-1234-7000-8000-abcdef123456",
510
- "defaultNetwork": "polygon-amoy",
511
- "previousNetwork": "ethereum-sepolia"
512
- }
513
- ```
514
-
515
- Error: `ENVIRONMENT_NETWORK_MISMATCH` (400) if the specified network is not valid for the wallet's environment.
516
-
517
465
  ## 4. Session Management
518
466
 
519
467
  Session creation and listing require **masterAuth**. Revocation requires **masterAuth**. Renewal requires **sessionAuth** (the session's own token).
@@ -533,13 +481,12 @@ curl -s -X POST http://localhost:3100/v1/sessions \
533
481
  curl -s -X POST http://localhost:3100/v1/sessions \
534
482
  -H 'Content-Type: application/json' \
535
483
  -H 'X-Master-Password: your-master-password' \
536
- -d '{"walletIds": ["wallet-1-uuid", "wallet-2-uuid"], "defaultWalletId": "wallet-1-uuid"}'
484
+ -d '{"walletIds": ["wallet-1-uuid", "wallet-2-uuid"]}'
537
485
  ```
538
486
 
539
487
  Parameters:
540
488
  - `walletId` (string): UUID of a single wallet (backward compatible)
541
489
  - `walletIds` (string[]): UUIDs of multiple wallets (mutually exclusive with walletId)
542
- - `defaultWalletId` (optional): specify default wallet (defaults to first in walletIds)
543
490
  - `ttl` (optional): session lifetime in seconds, 300-604800 (default: 86400 = 24 hours)
544
491
  - `constraints` (optional): custom constraints object
545
492
 
@@ -768,12 +715,12 @@ The nonce is a random 32-byte hex string valid for 5 minutes. Used by owner wall
768
715
 
769
716
  ### Environment-Network Reference
770
717
 
771
- | Chain | Environment | Default Network | Available Networks |
772
- |-------|-------------|-----------------|-------------------|
773
- | `solana` | `testnet` | `devnet` | `devnet`, `testnet` |
774
- | `solana` | `mainnet` | `mainnet` | `mainnet` |
775
- | `ethereum` | `testnet` | `ethereum-sepolia` | `ethereum-sepolia`, `polygon-amoy`, `arbitrum-sepolia`, `optimism-sepolia`, `base-sepolia` |
776
- | `ethereum` | `mainnet` | `ethereum-mainnet` | `ethereum-mainnet`, `polygon-mainnet`, `arbitrum-mainnet`, `optimism-mainnet`, `base-mainnet` |
718
+ | Chain | Environment | Available Networks |
719
+ |-------|-------------|-------------------|
720
+ | `solana` | `testnet` | `devnet`, `testnet` |
721
+ | `solana` | `mainnet` | `mainnet` |
722
+ | `ethereum` | `testnet` | `ethereum-sepolia`, `polygon-amoy`, `arbitrum-sepolia`, `optimism-sepolia`, `base-sepolia` |
723
+ | `ethereum` | `mainnet` | `ethereum-mainnet`, `polygon-mainnet`, `arbitrum-mainnet`, `optimism-mainnet`, `base-mainnet` |
777
724
 
778
725
  ### Key Differences
779
726
 
@@ -789,53 +736,36 @@ The nonce is a random 32-byte hex string valid for 5 minutes. Used by owner wall
789
736
 
790
737
  ## 9. MCP Tools Reference
791
738
 
792
- The MCP server exposes 25 tools for AI agents. Key wallet management tools:
793
-
794
- ### set_default_network
795
-
796
- Changes the wallet's default network for subsequent operations (session-scoped).
797
-
798
- Parameters:
799
- - `network` (required): New default network identifier (e.g., `polygon-amoy`, `ethereum-sepolia`)
800
-
801
- Calls `PUT /v1/wallet/default-network` internally. Returns the updated default network and previous network.
739
+ The MCP server exposes 24 tools for AI agents. Key wallet management tools:
802
740
 
803
741
  ### get_balance
804
742
 
805
743
  Get native token balance. Supports `network` parameter:
806
- - Omitted: uses wallet default network
744
+ - Required for EVM wallets; auto-resolved for Solana
807
745
  - Specific network name: queries that network
808
746
  - `"all"`: returns balances for all networks in the wallet's environment
809
747
 
810
748
  ### get_assets
811
749
 
812
750
  Get all assets (native + tokens). Same `network` parameter support as `get_balance`:
813
- - Omitted: uses wallet default network
751
+ - Required for EVM wallets; auto-resolved for Solana
814
752
  - Specific network name: queries that network
815
753
  - `"all"`: returns assets for all networks in the wallet's environment
816
754
 
817
755
  ### get_wallet_info
818
756
 
819
- Combined wallet information including address, chain, environment, and available networks with their default status.
757
+ Combined wallet information including address, chain, environment, and all available networks.
820
758
 
821
759
  ## 10. CLI Commands
822
760
 
823
761
  ### waiaas wallet info
824
762
 
825
- Displays wallet information including chain, environment, address, default network, and all available networks.
763
+ Displays wallet information including chain, environment, address, and all available networks.
826
764
 
827
765
  ```bash
828
766
  waiaas wallet info
829
767
  ```
830
768
 
831
- ### waiaas wallet set-default-network
832
-
833
- Changes the wallet's default network.
834
-
835
- ```bash
836
- waiaas wallet set-default-network polygon-amoy
837
- ```
838
-
839
769
  ## 11. SDK Methods
840
770
 
841
771
  ### TypeScript SDK
@@ -848,9 +778,6 @@ const client = new WAIaaSClient({ baseUrl: 'http://localhost:3100', sessionToken
848
778
  // Wallet info
849
779
  const info = await client.getWalletInfo();
850
780
 
851
- // Change default network
852
- await client.setDefaultNetwork('polygon-amoy');
853
-
854
781
  // Get all balances across networks
855
782
  const allBalances = await client.getAllBalances();
856
783
  // Returns: { walletId, chain, environment, balances: [{ network, balance, decimals, symbol } | { network, error }] }
@@ -869,9 +796,6 @@ async with WAIaaSClient("http://localhost:3100", "wai_sess_...") as client:
869
796
  # Wallet info
870
797
  info = await client.get_wallet_info()
871
798
 
872
- # Change default network
873
- await client.set_default_network("polygon-amoy")
874
-
875
799
  # Get all balances across networks
876
800
  all_balances = await client.get_all_balances()
877
801
 
@@ -1242,7 +1166,7 @@ curl -s http://localhost:3100/v1/wallet/positions \
1242
1166
  ```
1243
1167
 
1244
1168
  Query Parameters:
1245
- - `wallet_id` (optional): Target wallet ID. Omit to use the default wallet.
1169
+ - `wallet_id` (optional): Target wallet ID. Required for multi-wallet sessions; auto-resolved for single wallet.
1246
1170
 
1247
1171
  Response (200):
1248
1172
  ```json
@@ -3,7 +3,7 @@ name: "WAIaaS x402"
3
3
  description: "x402 auto-payment protocol: fetch URLs with automatic cryptocurrency payments"
4
4
  category: "api"
5
5
  tags: [wallet, blockchain, x402, payments, waiass]
6
- version: "2.8.0"
6
+ version: "2.9.0-rc"
7
7
  dispatch:
8
8
  kind: "tool"
9
9
  allowedCommands: ["curl"]