@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 +1 -1
- package/skills/actions.skill.md +4 -4
- package/skills/admin.skill.md +5 -8
- package/skills/policies.skill.md +1 -1
- package/skills/quickstart.skill.md +6 -6
- package/skills/session-recovery.skill.md +1 -1
- package/skills/setup.skill.md +1 -1
- package/skills/transactions.skill.md +9 -9
- package/skills/wallet.skill.md +23 -99
- package/skills/x402.skill.md +1 -1
package/package.json
CHANGED
package/skills/actions.skill.md
CHANGED
|
@@ -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.
|
|
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.
|
|
164
|
-
| `walletId` | string | No | Target wallet ID.
|
|
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: `
|
|
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
|
package/skills/admin.skill.md
CHANGED
|
@@ -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.
|
|
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"]
|
|
46
|
+
-d '{"walletIds": ["wallet-1-uuid", "wallet-2-uuid"]}'
|
|
47
47
|
```
|
|
48
48
|
|
|
49
49
|
Body:
|
|
50
|
-
- `walletIds`: string[] -- Connect multiple wallets
|
|
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_
|
|
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")
|
package/skills/policies.skill.md
CHANGED
|
@@ -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.
|
|
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.
|
|
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.
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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.
|
|
6
|
+
version: "2.9.0-rc"
|
|
7
7
|
dispatch:
|
|
8
8
|
kind: "tool"
|
|
9
9
|
allowedCommands: ["curl"]
|
package/skills/setup.skill.md
CHANGED
|
@@ -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.
|
|
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.
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
608
|
+
| network | string | No | Target network. Required for EVM wallets; auto-resolved for Solana. |
|
|
609
609
|
|
|
610
610
|
**Response (200):**
|
|
611
611
|
|
package/skills/wallet.skill.md
CHANGED
|
@@ -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.
|
|
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,
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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"
|
|
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
|
|
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`.
|
|
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`.
|
|
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"]
|
|
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 |
|
|
772
|
-
|
|
773
|
-
| `solana` | `testnet` | `devnet
|
|
774
|
-
| `solana` | `mainnet` | `mainnet` |
|
|
775
|
-
| `ethereum` | `testnet` | `ethereum-sepolia
|
|
776
|
-
| `ethereum` | `mainnet` | `ethereum-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
|
|
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
|
-
-
|
|
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
|
-
-
|
|
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
|
|
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,
|
|
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.
|
|
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
|
package/skills/x402.skill.md
CHANGED
|
@@ -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.
|
|
6
|
+
version: "2.9.0-rc"
|
|
7
7
|
dispatch:
|
|
8
8
|
kind: "tool"
|
|
9
9
|
allowedCommands: ["curl"]
|