@suisei-mcp/mcp 0.1.0 → 0.1.2

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.
Files changed (43) hide show
  1. package/README.md +22 -24
  2. package/dist/coins.d.ts +1 -1
  3. package/dist/http.d.ts +3 -3
  4. package/dist/http.js +2 -2
  5. package/dist/index.d.ts +1 -1
  6. package/dist/index.js +1 -1
  7. package/dist/node.d.ts +1 -1
  8. package/dist/node.js +1 -1
  9. package/dist/serve.d.ts +1 -1
  10. package/dist/serve.js +1 -1
  11. package/dist/server.d.ts +2 -2
  12. package/dist/server.js +16 -16
  13. package/dist/server.js.map +1 -1
  14. package/dist/sui-client.d.ts +1 -1
  15. package/dist/sui-client.js +4 -4
  16. package/dist/tools/agent_wallet_sweep.js +1 -1
  17. package/dist/tools/sui_decode_tx_bytes.d.ts +3 -3
  18. package/dist/tools/sui_decode_tx_bytes.js +4 -4
  19. package/dist/tools/sui_deepbook_quote.d.ts +1 -1
  20. package/dist/tools/sui_deepbook_quote.js +1 -1
  21. package/dist/tools/sui_deepbook_swap.d.ts +2 -2
  22. package/dist/tools/sui_deepbook_swap.js +2 -2
  23. package/dist/tools/sui_get_coin_metadata.d.ts +1 -1
  24. package/dist/tools/sui_get_coin_metadata.js +1 -1
  25. package/dist/tools/sui_get_coins.js +1 -1
  26. package/dist/tools/sui_get_coins.js.map +1 -1
  27. package/dist/tools/sui_get_dynamic_fields.d.ts +1 -1
  28. package/dist/tools/sui_get_dynamic_fields.js +1 -1
  29. package/dist/tools/sui_get_owned_badges.js +2 -2
  30. package/dist/tools/sui_get_owned_badges.js.map +1 -1
  31. package/dist/tools/sui_get_stakes.d.ts +1 -1
  32. package/dist/tools/sui_get_stakes.js +1 -1
  33. package/dist/tools/sui_get_validator.d.ts +1 -1
  34. package/dist/tools/sui_get_validator.js +1 -1
  35. package/dist/tools/sui_get_validators.js +1 -1
  36. package/dist/tools/sui_move_call.d.ts +2 -2
  37. package/dist/tools/sui_move_call.js +2 -2
  38. package/dist/tools/sui_pay_many.js +1 -1
  39. package/dist/tools/sui_query_events.d.ts +3 -3
  40. package/dist/tools/sui_query_events.js +3 -3
  41. package/dist/tools/sui_resolve_coin.d.ts +1 -1
  42. package/dist/tools/sui_resolve_coin.js +1 -1
  43. package/package.json +5 -5
package/README.md CHANGED
@@ -1,16 +1,15 @@
1
- # @suisei-mcp/mcp Suisei MCP
1
+ # @suisei-mcp/mcp - Suisei MCP
2
2
 
3
3
  The Sui Stack as one-line tools, exposed over the Model Context Protocol
4
- so any MCP-aware client (Claude Desktop, Cursor, Windsurf, your own
4
+ - so any MCP-aware client (Claude Desktop, Cursor, Windsurf, your own
5
5
  agent) can build on Sui. The server identifies itself as **Suisei** to
6
6
  the agent. Tool names keep the `sui_` prefix because they wrap the Sui
7
- chain Suisei is the agent toolkit; Sui is the chain it speaks.
8
- [Suisei the teaching agent](https://suisei.dev) is a showcase built
9
- entirely on these tools.
7
+ chain - Suisei is the agent toolkit; Sui is the chain it speaks.
8
+ Suisei (the teaching agent) is a showcase built entirely on these tools.
10
9
 
11
- > **Status:** Alpha. Thirty-three tools spanning the core build loop
10
+ > **Status:** Alpha. Thirty-three tools spanning the core build loop -
12
11
  > read chain state, build any transaction, simulate it, decode it,
13
- > submit it plus native staking (stake, unstake, live APY, validator
12
+ > submit it - plus native staking (stake, unstake, live APY, validator
14
13
  > set, position tracking), DeepBook quotes & swaps, batch payouts,
15
14
  > historical events, coin metadata + symbol registry, Tier-1
16
15
  > agent-wallet lifecycle, and Walrus storage. Next up: the on-chain
@@ -19,7 +18,7 @@ entirely on these tools.
19
18
  ## Why
20
19
 
21
20
  Most Sui SDKs assume you're writing application code. This package
22
- assumes you're writing **agent** code short tool calls, structured
21
+ assumes you're writing **agent** code - short tool calls, structured
23
22
  JSON in, structured JSON out, no React, no UI. The agent decides what
24
23
  to do; the tool does it.
25
24
 
@@ -48,7 +47,7 @@ Edit `~/Library/Application Support/Claude/claude_desktop_config.json`
48
47
  Restart Claude Desktop. You can now ask the agent things like:
49
48
 
50
49
  > "What's the balance of `alice.sui`?"
51
- > "Mint a badge to `0x1234…` for completing the zkLogin quest."
50
+ > "Mint a badge to `0x1234...` for completing the zkLogin quest."
52
51
  > "Publish this paragraph to Walrus and give me the blob id."
53
52
 
54
53
  The agent picks the right tool. You see the result.
@@ -58,7 +57,7 @@ The agent picks the right tool. You see the result.
58
57
  Stdio only works where the host can spawn a local process (Claude
59
58
  Desktop, Cursor). To use the toolkit from the **Claude web and mobile
60
59
  apps**, run it as a **remote MCP server** and add the URL as a Custom
61
- Connector (Settings Connectors).
60
+ Connector (Settings -> Connectors).
62
61
 
63
62
  Host it anywhere with the bundled HTTP server:
64
63
 
@@ -67,23 +66,23 @@ PORT=8787 SUISEI_MCP_TOKEN=your-secret npx suisei-mcp-serve
67
66
  # serves Streamable HTTP at http://localhost:8787/ (front with HTTPS in prod)
68
67
  ```
69
68
 
70
- On serverless, import the runtime-agnostic Fetch handler directly it
69
+ On serverless, import the runtime-agnostic Fetch handler directly - it
71
70
  runs on Vercel Edge, Cloudflare Workers, Deno, and Bun:
72
71
 
73
72
  ```ts
74
- // api/mcp.ts (Vercel Edge) needs `@suisei-mcp/mcp` as a dependency
73
+ // api/mcp.ts (Vercel Edge) - needs `@suisei-mcp/mcp` as a dependency
75
74
  export const config = { runtime: 'edge' };
76
75
  import { handleMcpRequest } from '@suisei-mcp/mcp/http';
77
76
  export default (req: Request) => handleMcpRequest(req);
78
77
  ```
79
78
 
80
79
  Set `SUISEI_MCP_TOKEN` so the endpoint requires
81
- `Authorization: Bearer <token>` a public MCP URL without a token is
80
+ `Authorization: Bearer <token>` - a public MCP URL without a token is
82
81
  open to the world.
83
82
 
84
83
  **Signing caveat.** Reads (balances, coins, objects, transactions,
85
84
  dynamic fields, gas, Walrus) work over a remote connector immediately.
86
- The transaction-building tools still return *unsigned* bytes signing
85
+ The transaction-building tools still return *unsigned* bytes - signing
87
86
  happens host-side, and a remote host (mobile) has no local wallet, so it
88
87
  needs its own signing path (e.g. an Enoki-sponsored flow or a wallet
89
88
  deep-link) to submit.
@@ -94,7 +93,7 @@ deep-link) to submit.
94
93
 
95
94
  | Tool | What it does |
96
95
  | ----------------------- | ------------------------------------------------------------ |
97
- | `sui_resolve_address` | SuiNS name 0x address (idempotent on 0x inputs) |
96
+ | `sui_resolve_address` | SuiNS name -> 0x address (idempotent on 0x inputs) |
98
97
  | `sui_get_balance` | SUI balance (in MIST + human-readable SUI) |
99
98
  | `sui_get_all_balances` | Every coin balance a wallet holds, not just SUI |
100
99
  | `sui_get_object` | Any object's type, owner, fields, and Display |
@@ -110,15 +109,15 @@ deep-link) to submit.
110
109
  | `sui_get_validator` | One validator, with APY + commission + stake merged |
111
110
  | `sui_query_events` | Historical events: filter by type / module / sender / tx |
112
111
  | `sui_get_coin_metadata` | Live coin metadata (symbol, decimals, name, icon URL) |
113
- | `sui_resolve_coin` | Symbol coin type from a built-in registry (USDC, DEEP, ) |
112
+ | `sui_resolve_coin` | Symbol -> coin type from a built-in registry (USDC, DEEP, ...) |
114
113
  | `sui_deepbook_quote` | Read-only DeepBook v3 quote: expected out + DEEP fee |
115
114
  | `agent_wallet_status` | An agent wallet's SUI balance + whether it's funded |
116
115
 
117
- **Build a transaction (never signed bytes returned for the host)**
116
+ **Build a transaction (never signed - bytes returned for the host)**
118
117
 
119
118
  | Tool | What it does |
120
119
  | ----------------------- | ------------------------------------------------------------ |
121
- | `sui_move_call` | Build a call to ANY Move entry function the universal write |
120
+ | `sui_move_call` | Build a call to ANY Move entry function - the universal write |
122
121
  | `sui_transfer` | Build a transfer of SUI and/or whole objects |
123
122
  | `sui_pay_many` | Build a batch payout: N recipients, N amounts, one atomic tx |
124
123
  | `sui_stake` | Build a native staking delegation to a validator |
@@ -143,8 +142,7 @@ deep-link) to submit.
143
142
  | `walrus_publish` | Publish a blob to Walrus testnet/mainnet |
144
143
  | `walrus_fetch` | Fetch a blob from Walrus by id |
145
144
 
146
- The build loop is: a `*_build`-style tool returns base64 tx bytes
147
- `sui_dry_run` to verify → the host signs → `sui_execute_signed_tx` to
145
+ The build loop is: a `*_build`-style tool returns base64 tx bytes -> `sui_dry_run` to verify -> the host signs -> `sui_execute_signed_tx` to
148
146
  submit. The toolkit never holds keys.
149
147
 
150
148
  All tools return structured JSON in the `text` content block. The
@@ -163,8 +161,8 @@ calling agent is expected to parse it.
163
161
  ## Transport &amp; deprecation
164
162
 
165
163
  Sui is deprecating public JSON-RPC fullnode endpoints (~mid-2026) in
166
- favour of gRPC and GraphQL. Transport is chosen in one place
167
- `src/sui-client.ts` so the rest of the toolkit never imports a client
164
+ favour of gRPC and GraphQL. Transport is chosen in one place -
165
+ `src/sui-client.ts` - so the rest of the toolkit never imports a client
168
166
  directly.
169
167
 
170
168
  Today `clientFor()` returns the JSON-RPC client, because building a
@@ -175,12 +173,12 @@ supported"/"not supported yet"). Reads already work over gRPC via
175
173
  `grpcClientFor()`, also in that file.
176
174
 
177
175
  When the SDK ships transaction-building over gRPC, the cutover is a
178
- one-line change in `clientFor()` no tool touches transport directly.
176
+ one-line change in `clientFor()` - no tool touches transport directly.
179
177
 
180
178
  ## Development
181
179
 
182
180
  ```bash
183
- git clone https://github.com/eienel/blockbuilders
181
+ git clone https://github.com/eienel/suisei
184
182
  cd blockbuilders/packages/mcp
185
183
  npm install
186
184
  npm run build
package/dist/coins.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import type { Network } from './sui-client.js';
2
2
  /**
3
- * Coin metadata registry the "what is USDC's coin type" table. Static
3
+ * Coin metadata registry - the "what is USDC's coin type" table. Static
4
4
  * because mainnet/testnet coin types are upgrade-stable; if Sui ever
5
5
  * redeploys one, override the type explicitly in any tool that takes
6
6
  * coin_type, or update this file. Decimals are cached here so an agent
package/dist/http.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Remote (Streamable HTTP) entrypoint Web Standards flavour.
2
+ * Remote (Streamable HTTP) entrypoint - Web Standards flavour.
3
3
  *
4
4
  * `handleMcpRequest(request)` is a runtime-agnostic Fetch handler: it runs
5
5
  * on Vercel Edge, Cloudflare Workers, Deno, Bun, and Node 18+. Wire it to
@@ -8,14 +8,14 @@
8
8
  *
9
9
  * Stateless: a fresh server + transport per request (no session store),
10
10
  * which is what serverless wants. Reads work great over a remote
11
- * connector; transaction-building tools return unsigned bytes signing
11
+ * connector; transaction-building tools return unsigned bytes - signing
12
12
  * still happens host-side, so a remote host needs its own signing path.
13
13
  */
14
14
  export interface McpHttpOptions {
15
15
  /**
16
16
  * If set, requests must carry `Authorization: Bearer <token>`. Falls
17
17
  * back to the SUISEI_MCP_TOKEN env var (with SUI_SKILLS_MCP_TOKEN kept
18
- * as a compatibility alias). Leave unset only for local testing a
18
+ * as a compatibility alias). Leave unset only for local testing - a
19
19
  * public endpoint without a token is open to the world.
20
20
  */
21
21
  authToken?: string;
package/dist/http.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Remote (Streamable HTTP) entrypoint Web Standards flavour.
2
+ * Remote (Streamable HTTP) entrypoint - Web Standards flavour.
3
3
  *
4
4
  * `handleMcpRequest(request)` is a runtime-agnostic Fetch handler: it runs
5
5
  * on Vercel Edge, Cloudflare Workers, Deno, Bun, and Node 18+. Wire it to
@@ -8,7 +8,7 @@
8
8
  *
9
9
  * Stateless: a fresh server + transport per request (no session store),
10
10
  * which is what serverless wants. Reads work great over a remote
11
- * connector; transaction-building tools return unsigned bytes signing
11
+ * connector; transaction-building tools return unsigned bytes - signing
12
12
  * still happens host-side, so a remote host needs its own signing path.
13
13
  */
14
14
  import { WebStandardStreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/webStandardStreamableHttp.js';
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * @suisei-mcp/mcp stdio entrypoint.
3
+ * @suisei-mcp/mcp - stdio entrypoint.
4
4
  *
5
5
  * The product: the Suisei MCP server for the Sui stack. Plug into Claude
6
6
  * Desktop, Cursor, or any MCP-aware agent and you get one-line tools to
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * @suisei-mcp/mcp stdio entrypoint.
3
+ * @suisei-mcp/mcp - stdio entrypoint.
4
4
  *
5
5
  * The product: the Suisei MCP server for the Sui stack. Plug into Claude
6
6
  * Desktop, Cursor, or any MCP-aware agent and you get one-line tools to
package/dist/node.d.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  * Node HTTP bridge for the Streamable HTTP transport.
3
3
  *
4
4
  * `handleMcpRequest` (http.ts) speaks the Web Fetch API. This adapter lets
5
- * it serve Node `http`-style handlers used by both the standalone server
5
+ * it serve Node `http`-style handlers - used by both the standalone server
6
6
  * (serve.ts) and a Vercel Node serverless function. Node runtime is needed
7
7
  * (not Edge) because some tools use the Node `Buffer` global.
8
8
  */
package/dist/node.js CHANGED
@@ -2,7 +2,7 @@
2
2
  * Node HTTP bridge for the Streamable HTTP transport.
3
3
  *
4
4
  * `handleMcpRequest` (http.ts) speaks the Web Fetch API. This adapter lets
5
- * it serve Node `http`-style handlers used by both the standalone server
5
+ * it serve Node `http`-style handlers - used by both the standalone server
6
6
  * (serve.ts) and a Vercel Node serverless function. Node runtime is needed
7
7
  * (not Edge) because some tools use the Node `Buffer` global.
8
8
  */
package/dist/serve.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * Standalone HTTP entrypoint host the Suisei MCP anywhere.
3
+ * Standalone HTTP entrypoint - host the Suisei MCP anywhere.
4
4
  *
5
5
  * PORT=8787 SUISEI_MCP_TOKEN=secret npx suisei-mcp-serve
6
6
  *
package/dist/serve.js CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * Standalone HTTP entrypoint host the Suisei MCP anywhere.
3
+ * Standalone HTTP entrypoint - host the Suisei MCP anywhere.
4
4
  *
5
5
  * PORT=8787 SUISEI_MCP_TOKEN=secret npx suisei-mcp-serve
6
6
  *
package/dist/server.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @suisei-mcp/mcp server factory.
2
+ * @suisei-mcp/mcp - server factory.
3
3
  *
4
4
  * Builds the Suisei MCP server with the full Sui-stack tool registry.
5
5
  * Transport is chosen by the entrypoint: `index.ts` (stdio) for local
@@ -7,7 +7,7 @@
7
7
  * remote hosts like Claude's Custom Connectors (web + mobile). Both call
8
8
  * createServer() so there is exactly one tool registry.
9
9
  *
10
- * Write tools never hold keys they return unsigned tx bytes for the
10
+ * Write tools never hold keys - they return unsigned tx bytes for the
11
11
  * host to sign, then sui_execute_signed_tx submits the signed result.
12
12
  *
13
13
  * The server identifies itself as "suisei" over the MCP protocol; tool
package/dist/server.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @suisei-mcp/mcp server factory.
2
+ * @suisei-mcp/mcp - server factory.
3
3
  *
4
4
  * Builds the Suisei MCP server with the full Sui-stack tool registry.
5
5
  * Transport is chosen by the entrypoint: `index.ts` (stdio) for local
@@ -7,7 +7,7 @@
7
7
  * remote hosts like Claude's Custom Connectors (web + mobile). Both call
8
8
  * createServer() so there is exactly one tool registry.
9
9
  *
10
- * Write tools never hold keys they return unsigned tx bytes for the
10
+ * Write tools never hold keys - they return unsigned tx bytes for the
11
11
  * host to sign, then sui_execute_signed_tx submits the signed result.
12
12
  *
13
13
  * The server identifies itself as "suisei" over the MCP protocol; tool
@@ -51,7 +51,7 @@ import { suiExecuteSignedTx } from './tools/sui_execute_signed_tx.js';
51
51
  import { walrusPublish } from './tools/walrus_publish.js';
52
52
  import { walrusFetch } from './tools/walrus_fetch.js';
53
53
  export const PKG_VERSION = '0.1.0';
54
- /** Shared network selector every tool defaults to testnet. */
54
+ /** Shared network selector - every tool defaults to testnet. */
55
55
  const networkSchema = z
56
56
  .enum(['testnet', 'mainnet', 'devnet'])
57
57
  .default('testnet')
@@ -61,7 +61,7 @@ const tools = [
61
61
  name: 'sui_resolve_address',
62
62
  description: 'Resolve a Sui address from a SuiNS name (e.g. "alice.sui") or echo back a 0x address if already canonical. Use this whenever the user gives you a human-readable name.',
63
63
  inputSchema: z.object({
64
- name_or_address: z.string().describe('A SuiNS name or 0x address.'),
64
+ name_or_address: z.string().describe('A SuiNS name or 0x... address.'),
65
65
  network: networkSchema,
66
66
  }),
67
67
  handler: suiResolveAddress,
@@ -86,7 +86,7 @@ const tools = [
86
86
  },
87
87
  {
88
88
  name: 'sui_get_object',
89
- description: "Read any on-chain object: its Move type, owner, version, content fields, and Display metadata. The general read primitive use it to inspect any object id.",
89
+ description: "Read any on-chain object: its Move type, owner, version, content fields, and Display metadata. The general read primitive - use it to inspect any object id.",
90
90
  inputSchema: z.object({
91
91
  object_id: z.string().describe('The 0x object id to read.'),
92
92
  network: networkSchema,
@@ -95,7 +95,7 @@ const tools = [
95
95
  },
96
96
  {
97
97
  name: 'sui_get_owned_objects',
98
- description: 'List objects owned by an address, optionally filtered to one Move struct type (e.g. "0x2::coin::Coin<0x2::sui::SUI>"). Paginated pass the returned next_cursor to continue.',
98
+ description: 'List objects owned by an address, optionally filtered to one Move struct type (e.g. "0x2::coin::Coin<0x2::sui::SUI>"). Paginated - pass the returned next_cursor to continue.',
99
99
  inputSchema: z.object({
100
100
  address: z.string().describe('Wallet address whose objects to list.'),
101
101
  struct_type: z
@@ -155,7 +155,7 @@ const tools = [
155
155
  },
156
156
  {
157
157
  name: 'sui_get_dynamic_fields',
158
- description: 'List the dynamic fields attached to a parent object how Sui stores Tables, Bags, and other on-chain collections. Returns each field name, type, and child object id. Paginated.',
158
+ description: 'List the dynamic fields attached to a parent object - how Sui stores Tables, Bags, and other on-chain collections. Returns each field name, type, and child object id. Paginated.',
159
159
  inputSchema: z.object({
160
160
  parent_id: z.string().describe('Object id whose dynamic fields to list.'),
161
161
  cursor: z.string().optional().describe('Pagination cursor from a previous call.'),
@@ -198,7 +198,7 @@ const tools = [
198
198
  },
199
199
  {
200
200
  name: 'sui_get_validator',
201
- description: 'One validator with APY merged: name, address, commission, total stake, voting power, project URL, and the live APY the chain computes from recent rewards. Fuses sui_get_validators + sui_get_validators_apy into a single read so a staking app doesnt join them by hand.',
201
+ description: "One validator with APY merged: name, address, commission, total stake, voting power, project URL, and the live APY the chain computes from recent rewards. Fuses sui_get_validators + sui_get_validators_apy into a single read so a staking app doesn't join them by hand.",
202
202
  inputSchema: z.object({
203
203
  validator_address: z.string().describe('Validator 0x address.'),
204
204
  network: networkSchema,
@@ -207,7 +207,7 @@ const tools = [
207
207
  },
208
208
  {
209
209
  name: 'sui_query_events',
210
- description: 'Query historical Move events. Powers reactive agents react to swaps, mints, transfers, anything that emits an event. Filter by event_type (full type), package+module (both required together), sender, or transaction. Paginated; pass back next_cursor_tx_digest + next_cursor_event_seq to continue. At least one filter is required.',
210
+ description: 'Query historical Move events. Powers reactive agents - react to swaps, mints, transfers, anything that emits an event. Filter by event_type (full type), package+module (both required together), sender, or transaction. Paginated; pass back next_cursor_tx_digest + next_cursor_event_seq to continue. At least one filter is required.',
211
211
  inputSchema: z.object({
212
212
  event_type: z.string().optional().describe('Full Move event type, e.g. "0x2::coin::CurrencyCreated<0x2::sui::SUI>".'),
213
213
  package: z.string().optional().describe('Package id to filter by.'),
@@ -224,7 +224,7 @@ const tools = [
224
224
  },
225
225
  {
226
226
  name: 'sui_get_coin_metadata',
227
- description: "Live coin metadata: symbol, name, decimals, description, icon URL. Pass coin_type ('0x') or symbol ('USDC'); a symbol resolves via the local registry first. Decimals are critical for every DeFi flow '5 USDC' = 5e6 smallest units (6 decimals), not 5e9.",
227
+ description: "Live coin metadata: symbol, name, decimals, description, icon URL. Pass coin_type ('0x...') or symbol ('USDC'); a symbol resolves via the local registry first. Decimals are critical for every DeFi flow - '5 USDC' = 5e6 smallest units (6 decimals), not 5e9.",
228
228
  inputSchema: z.object({
229
229
  coin_type: z.string().optional().describe('Fully-qualified coin type.'),
230
230
  symbol: z.string().optional().describe('Symbol to look up in the local registry (e.g. "USDC").'),
@@ -234,7 +234,7 @@ const tools = [
234
234
  },
235
235
  {
236
236
  name: 'sui_resolve_coin',
237
- description: 'Resolve a coin symbol (e.g. "USDC", "DEEP", "SUI") to its fully-qualified coin type on the chosen network, or with no symbol list every known symbol. Stops agents from hallucinating coin types.',
237
+ description: 'Resolve a coin symbol (e.g. "USDC", "DEEP", "SUI") to its fully-qualified coin type on the chosen network, or - with no symbol - list every known symbol. Stops agents from hallucinating coin types.',
238
238
  inputSchema: z.object({
239
239
  symbol: z.string().optional().describe('Symbol to resolve. Omit to list known symbols.'),
240
240
  network: networkSchema,
@@ -257,7 +257,7 @@ const tools = [
257
257
  },
258
258
  {
259
259
  name: 'sui_move_call',
260
- description: 'Build (do not sign) a transaction calling ANY Move entry function the universal write primitive. Each argument is a string: "object:<id>", or "pure:<type>:<value>" where type is address|id|bool|string|u8|u16|u32|u64|u128|u256. Vectors/structs are out of scope; use a dedicated tool for those. Returns base64 tx bytes.',
260
+ description: 'Build (do not sign) a transaction calling ANY Move entry function - the universal write primitive. Each argument is a string: "object:<id>", or "pure:<type>:<value>" where type is address|id|bool|string|u8|u16|u32|u64|u128|u256. Vectors/structs are out of scope; use a dedicated tool for those. Returns base64 tx bytes.',
261
261
  inputSchema: z.object({
262
262
  target: z
263
263
  .string()
@@ -346,7 +346,7 @@ const tools = [
346
346
  },
347
347
  {
348
348
  name: 'sui_deepbook_swap',
349
- description: 'Build (do not sign) a DeepBook v3 market swap the universal liquidity primitive. Pass a known pool key (e.g. "SUI_DBUSDC" on testnet, "SUI_USDC" on mainnet) or explicit pool_id + base_type + quote_type. amount and min_out are raw smallest-unit strings (caller handles decimals and slippage). DeepBook charges fees in DEEP: whitelisted pools take deep_amount "0", others require the sender to hold DEEP. Returns base64 tx bytes.',
349
+ description: 'Build (do not sign) a DeepBook v3 market swap - the universal liquidity primitive. Pass a known pool key (e.g. "SUI_DBUSDC" on testnet, "SUI_USDC" on mainnet) or explicit pool_id + base_type + quote_type. amount and min_out are raw smallest-unit strings (caller handles decimals and slippage). DeepBook charges fees in DEEP: whitelisted pools take deep_amount "0", others require the sender to hold DEEP. Returns base64 tx bytes.',
350
350
  inputSchema: z.object({
351
351
  sender: z.string().describe('0x address that will sign, pay, and receive the output.'),
352
352
  direction: z
@@ -385,7 +385,7 @@ const tools = [
385
385
  },
386
386
  {
387
387
  name: 'agent_wallet_fund',
388
- description: "Build (do not sign) a tx that funds an agent wallet: split amount_mist from the OWNER's gas and send it to the agent address. The owner signs this with their own wallet the agent never touches the owner's key. This sets the agent's allowance: its spending power is bounded by what's funded here. Returns base64 tx bytes.",
388
+ description: "Build (do not sign) a tx that funds an agent wallet: split amount_mist from the OWNER's gas and send it to the agent address. The owner signs this with their own wallet - the agent never touches the owner's key. This sets the agent's allowance: its spending power is bounded by what's funded here. Returns base64 tx bytes.",
389
389
  inputSchema: z.object({
390
390
  owner: z.string().describe("0x address of the owner funding (signs and pays)."),
391
391
  agent: z.string().describe('0x address of the agent wallet to fund.'),
@@ -419,7 +419,7 @@ const tools = [
419
419
  },
420
420
  {
421
421
  name: 'sui_decode_tx_bytes',
422
- description: 'Decode unsigned tx bytes (from any builder tool) into a structured, human-readable summary: sender, gas data, inputs, and a step-by-step list of commands ("split N MIST from gas", "transfer to 0x", "call pkg::module::fn()"). The "look before you sign" tool verifies a built tx matches its stated intent. Pure offline decode, no RPC.',
422
+ description: 'Decode unsigned tx bytes (from any builder tool) into a structured, human-readable summary: sender, gas data, inputs, and a step-by-step list of commands ("split N MIST from gas", "transfer to 0x...", "call pkg::module::fn(...)"). The "look before you sign" tool - verifies a built tx matches its stated intent. Pure offline decode, no RPC.',
423
423
  inputSchema: z.object({
424
424
  tx_bytes_base64: z.string().describe('Base64 tx bytes from a builder tool.'),
425
425
  }),
@@ -521,7 +521,7 @@ export function createServer() {
521
521
  return server;
522
522
  }
523
523
  /**
524
- * Minimal Zod JSON-Schema converter for the inputs we actually use
524
+ * Minimal Zod -> JSON-Schema converter for the inputs we actually use
525
525
  * here. Avoids pulling a 50KB schema library into a server that just
526
526
  * needs to describe a handful of flat tool-input objects.
527
527
  */
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC;AASnC,gEAAgE;AAChE,MAAM,aAAa,GAAG,CAAC;KACpB,IAAI,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;KACtC,OAAO,CAAC,SAAS,CAAC;KAClB,QAAQ,CAAC,uBAAuB,CAAC,CAAC;AAErC,MAAM,KAAK,GAAc;IACvB;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EACT,wKAAwK;QAC1K,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;YACpE,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,iBAAiB;KAC3B;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EACT,gHAAgH;QAClH,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YACjD,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,aAAa;KACvB;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EACT,mLAAmL;QACrL,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YACjD,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,iBAAiB;KAC3B;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,8JAA8J;QAChK,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;YAC3D,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,YAAY;KACtB;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EACT,+KAA+K;QACjL,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;YACrE,WAAW,EAAE,CAAC;iBACX,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,gDAAgD,CAAC;YAC7D,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YACjF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;YAClD,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,kBAAkB;KAC5B;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EACT,6LAA6L;QAC/L,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;YACpE,aAAa,EAAE,CAAC;iBACb,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,4HAA4H,CAC7H;YACH,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,iBAAiB;KAC3B;IACD;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,yPAAyP;QAC3P,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;YACnE,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,mEAAmE,CAAC;YAChF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YACjF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;YAClD,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,WAAW;KACrB;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EACT,iNAAiN;QACnN,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;YACjE,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,iBAAiB;KAC3B;IACD;QACE,IAAI,EAAE,6BAA6B;QACnC,WAAW,EACT,uIAAuI;QACzI,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,uBAAuB;KACjC;IACD;QACE,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EACT,mLAAmL;QACrL,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YACzE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YACjF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;YACjD,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,mBAAmB;KAC7B;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,mSAAmS;QACrS,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;YACpE,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,YAAY;KACtB;IACD;QACE,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EACT,2SAA2S;QAC7S,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,0CAA0C,CAAC;YACvD,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;YAChE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;YACvF,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,mBAAmB;KAC7B;IACD;QACE,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EACT,qTAAqT;QACvT,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;YACvF,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,gBAAgB;KAC1B;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,WAAW,EACT,6QAA6Q;QAC/Q,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;YAC/D,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,eAAe;KACzB;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EACT,4UAA4U;QAC9U,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yEAAyE,CAAC;YACrH,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;YACnE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;YAC/E,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;YACzE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;YAC/E,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YAC3F,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YAC3F,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;YACjD,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;YAC3E,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,cAAc;KACxB;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EACT,gQAAgQ;QAClQ,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;YACvE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;YAChG,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,kBAAkB;KAC5B;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EACT,uMAAuM;QACzM,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;YACxF,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,cAAc;KACxB;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,8OAA8O;QAChP,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;YACjE,QAAQ,EAAE,CAAC;iBACR,MAAM,EAAE;iBACR,QAAQ,CAAC,gDAAgD,CAAC;YAC7D,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;YAC9C,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;YACzB,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,YAAY;KACtB;IACD;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,iUAAiU;QACnU,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,MAAM,EAAE,CAAC;iBACN,MAAM,EAAE;iBACR,QAAQ,CAAC,2CAA2C,CAAC;YACxD,cAAc,EAAE,CAAC;iBACd,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;iBACjB,OAAO,CAAC,EAAE,CAAC;iBACX,QAAQ,CAAC,+DAA+D,CAAC;YAC5E,SAAS,EAAE,CAAC;iBACT,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;iBACjB,OAAO,CAAC,EAAE,CAAC;iBACX,QAAQ,CAAC,gEAAgE,CAAC;YAC7E,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;YAC5E,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,WAAW;KACrB;IACD;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EACT,mKAAmK;QACrK,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;YACxE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YACzE,WAAW,EAAE,CAAC;iBACX,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,uEAAuE,CAAC;YACpF,UAAU,EAAE,CAAC;iBACV,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;iBACjB,QAAQ,EAAE;iBACV,QAAQ,CAAC,+BAA+B,CAAC;YAC5C,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,WAAW;KACrB;IACD;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EACT,gQAAgQ;QAClQ,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;YACxE,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YACnF,YAAY,EAAE,CAAC;iBACZ,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;iBACjB,QAAQ,CAAC,oEAAoE,CAAC;YACjF,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,UAAU;KACpB;IACD;QACE,IAAI,EAAE,WAAW;QACjB,WAAW,EACT,+MAA+M;QACjN,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;YACxE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YAC3E,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;YAC7E,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,QAAQ;KAClB;IACD;QACE,IAAI,EAAE,aAAa;QACnB,WAAW,EACT,uKAAuK;QACzK,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yDAAyD,CAAC;YACtF,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YAC7E,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,UAAU;KACpB;IACD;QACE,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EACT,mYAAmY;QACrY,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,SAAS,EAAE,CAAC;iBACT,IAAI,CAAC,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;iBACxC,QAAQ,CAAC,2DAA2D,CAAC;YACxE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0DAA0D,CAAC;YACvF,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;YACzF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;YACnF,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YACpF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;YACtF,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;YACrF,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,gBAAgB;KAC1B;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,WAAW,EACT,+aAA+a;QACjb,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yDAAyD,CAAC;YACtF,SAAS,EAAE,CAAC;iBACT,IAAI,CAAC,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;iBACxC,QAAQ,CAAC,uDAAuD,CAAC;YACpE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0DAA0D,CAAC;YACvF,OAAO,EAAE,CAAC;iBACP,MAAM,EAAE;iBACR,OAAO,CAAC,GAAG,CAAC;iBACZ,QAAQ,CAAC,6EAA6E,CAAC;YAC1F,WAAW,EAAE,CAAC;iBACX,MAAM,EAAE;iBACR,OAAO,CAAC,GAAG,CAAC;iBACZ,QAAQ,CAAC,uEAAuE,CAAC;YACpF,IAAI,EAAE,CAAC;iBACJ,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,0EAA0E,CAAC;YACvF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;YACnF,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YACpF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;YACtF,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;YACrF,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;YACzE,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,eAAe;KACzB;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EACT,mTAAmT;QACrT,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;YAC1D,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,iBAAiB;KAC3B;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,WAAW,EACT,oUAAoU;QACtU,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;YAC/E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YACrE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;YAC1E,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,eAAe;KACzB;IACD;QACE,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EACT,8TAA8T;QAChU,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kDAAkD,CAAC;YAC9E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;YAC5D,UAAU,EAAE,CAAC;iBACV,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;iBACjB,QAAQ,EAAE;iBACV,QAAQ,CAAC,0DAA0D,CAAC;YACvE,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,gBAAgB;KAC1B;IACD;QACE,IAAI,EAAE,aAAa;QACnB,WAAW,EACT,oMAAoM;QACtM,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YAC/E,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,SAAS;KACnB;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EACT,kVAAkV;QACpV,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;SAC7E,CAAC;QACF,OAAO,EAAE,gBAAgB;KAC1B;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EACT,wLAAwL;QAC1L,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;YACzE,UAAU,EAAE,CAAC;iBACV,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;iBACjB,QAAQ,CAAC,gEAAgE,CAAC;YAC7E,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,OAAO,EAAE,kBAAkB;KAC5B;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,iNAAiN;QACnN,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,OAAO,EAAE,CAAC;iBACP,MAAM,EAAE;iBACR,QAAQ,CAAC,kEAAkE,CAAC;YAC/E,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;YACpD,MAAM,EAAE,CAAC;iBACN,MAAM,EAAE;iBACR,GAAG,EAAE;iBACL,GAAG,CAAC,CAAC,CAAC;iBACN,OAAO,CAAC,CAAC,CAAC;iBACV,QAAQ,CAAC,gDAAgD,CAAC;YAC7D,aAAa,EAAE,CAAC;iBACb,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,yCAAyC,CAAC;SACvD,CAAC;QACF,OAAO,EAAE,aAAa;KACvB;IACD;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EACT,uFAAuF;QACzF,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;YAC9E,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;YAC9C,cAAc,EAAE,CAAC;iBACd,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,0CAA0C,CAAC;SACxD,CAAC;QACF,OAAO,EAAE,WAAW;KACrB;CACF,CAAC;AAEF,qEAAqE;AACrE,MAAM,UAAU,YAAY;IAC1B,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,EACxC,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAChC,CAAC;IAEF,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;QAC5D,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACvB,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,WAAW,EAAE,eAAe,CAAC,CAAC,CAAC,WAAW,CAAC;SAC5C,CAAC,CAAC;KACJ,CAAC,CAAC,CAAC;IAEJ,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QAC5D,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;gBACrE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,qBAAqB,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE;qBAChE;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC7C,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QAC/C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,QAAQ,IAAI,CAAC,IAAI,YAAY,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;qBAChF;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CAAC,MAAkC;IACzD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,MAAM,UAAU,GAA4B,EAAE,CAAC;IAC/C,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,UAAU,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;YAC1E,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IACD,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,UAAU;QACV,QAAQ;QACR,oBAAoB,EAAE,KAAK;KAC5B,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,KAAmB;IACxC,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,SAAS,CAAC;IACnD,MAAM,IAAI,GAAG,CAAC,GAA4B,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAE7F,IAAI,KAAK,YAAY,CAAC,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;IAClE,IAAI,KAAK,YAAY,CAAC,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;IAClE,IAAI,KAAK,YAAY,CAAC,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;IACpE,IAAI,KAAK,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,OAAmB,EAAE,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,KAAK,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,OAAuB,CAAC,EAAE,CAAC,CAAC;IACtF,CAAC;IACD,IAAI,KAAK,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;QACnC,OAAO,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,KAAK,YAAY,CAAC,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,SAAyB,CAAC,CAAC;QAClE,OAAO,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;IAC1D,CAAC;IACD,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ export type Network = 'testnet' | 'mainnet' | 'devnet';
7
7
  */
8
8
  export declare function clientFor(network: Network): SuiClient;
9
9
  /**
10
- * gRPC client the forward-looking transport. Reads (balances, coins,
10
+ * gRPC client - the forward-looking transport. Reads (balances, coins,
11
11
  * owned objects, dynamic fields, gas price, getTransaction, dryRun,
12
12
  * execute) work today; transaction *building* does not yet. Exposed so
13
13
  * read tools can migrate incrementally and so the eventual cutover is a
@@ -12,9 +12,9 @@ import { SuiGrpcClient } from '@mysten/sui/grpc';
12
12
  * resolution* (resolving object refs and gas coins). As of @mysten/sui
13
13
  * 1.45.x that is implemented only for the JSON-RPC `SuiClient`. Verified
14
14
  * against testnet:
15
- * - SuiGrpcClient "Transaction resolution is not supported with
15
+ * - SuiGrpcClient -> "Transaction resolution is not supported with
16
16
  * the GRPC client"
17
- * - SuiGraphQLClient "GraphQL client does not support transaction
17
+ * - SuiGraphQLClient -> "GraphQL client does not support transaction
18
18
  * resolution yet"
19
19
  * So every transaction-building tool (move_call, transfer, stake,
20
20
  * unstake, mint_badge) must stay on JSON-RPC until the SDK ships build
@@ -23,7 +23,7 @@ import { SuiGrpcClient } from '@mysten/sui/grpc';
23
23
  * Migration trigger: once `tx.build({ client: grpcClientFor(net) })`
24
24
  * succeeds on a current SDK, switch `clientFor` to return the gRPC client
25
25
  * and delete this note. Reads already work over gRPC today via
26
- * `grpcClientFor()` below wire individual read tools to it whenever we
26
+ * `grpcClientFor()` below - wire individual read tools to it whenever we
27
27
  * choose to move them off JSON-RPC ahead of the cutoff.
28
28
  */
29
29
  /** gRPC-web fullnode endpoints, by network. */
@@ -47,7 +47,7 @@ export function clientFor(network) {
47
47
  return c;
48
48
  }
49
49
  /**
50
- * gRPC client the forward-looking transport. Reads (balances, coins,
50
+ * gRPC client - the forward-looking transport. Reads (balances, coins,
51
51
  * owned objects, dynamic fields, gas price, getTransaction, dryRun,
52
52
  * execute) work today; transaction *building* does not yet. Exposed so
53
53
  * read tools can migrate incrementally and so the eventual cutover is a
@@ -17,7 +17,7 @@ export async function agentWalletSweep(raw) {
17
17
  const tx = new Transaction();
18
18
  tx.setSender(agent);
19
19
  // Transferring the gas coin sends its remaining balance (after gas) to
20
- // the owner i.e. sweeps all native SUI.
20
+ // the owner - i.e. sweeps all native SUI.
21
21
  const toMove = [tx.gas, ...(object_ids ?? []).map((id) => tx.object(id))];
22
22
  tx.transferObjects(toMove, tx.pure.address(owner));
23
23
  const tx_bytes_base64 = await buildToB64(tx, client);
@@ -1,12 +1,12 @@
1
1
  /**
2
2
  * Decode unsigned tx bytes (from any builder tool) back into a structured,
3
3
  * human-readable summary: sender, gas data, inputs, and a step-by-step
4
- * list of commands ("split N MIST from gas", "transfer to 0x",
4
+ * list of commands ("split N MIST from gas", "transfer to 0x...",
5
5
  * "call pkg::module::function with [args]").
6
6
  *
7
7
  * The "look before you sign" tool. A wallet shows the user what they're
8
- * authorising; this lets an agent or a person reading the agent's
9
- * output verify a built tx matches the stated intent. Pairs naturally
8
+ * authorising; this lets an agent - or a person reading the agent's
9
+ * output - verify a built tx matches the stated intent. Pairs naturally
10
10
  * with sui_dry_run for cost; this one is about *meaning*.
11
11
  *
12
12
  * Works offline (no RPC). All addresses are kept full-form so the caller
@@ -3,12 +3,12 @@ import { bcs } from '@mysten/sui/bcs';
3
3
  /**
4
4
  * Decode unsigned tx bytes (from any builder tool) back into a structured,
5
5
  * human-readable summary: sender, gas data, inputs, and a step-by-step
6
- * list of commands ("split N MIST from gas", "transfer to 0x",
6
+ * list of commands ("split N MIST from gas", "transfer to 0x...",
7
7
  * "call pkg::module::function with [args]").
8
8
  *
9
9
  * The "look before you sign" tool. A wallet shows the user what they're
10
- * authorising; this lets an agent or a person reading the agent's
11
- * output verify a built tx matches the stated intent. Pairs naturally
10
+ * authorising; this lets an agent - or a person reading the agent's
11
+ * output - verify a built tx matches the stated intent. Pairs naturally
12
12
  * with sui_dry_run for cost; this one is about *meaning*.
13
13
  *
14
14
  * Works offline (no RPC). All addresses are kept full-form so the caller
@@ -37,7 +37,7 @@ export async function suiDecodeTxBytes(raw) {
37
37
  command_count: commands.length,
38
38
  commands,
39
39
  plain_english: commands.map((c) => `${c.index + 1}. ${c.summary}`).join('\n'),
40
- note: 'Decoded from BCS offline. Compare against the agents stated intent before signing.',
40
+ note: "Decoded from BCS offline. Compare against the agent's stated intent before signing.",
41
41
  });
42
42
  }
43
43
  function describeInput(input, i) {
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Read-only DeepBook v3 quote. Calls pool::get_quote_quantity_out (selling
3
- * base) or get_base_quantity_out (selling quote) via devInspect no gas,
3
+ * base) or get_base_quantity_out (selling quote) via devInspect - no gas,
4
4
  * no signing, no funds. Returns the expected output and the DEEP fee
5
5
  * required, so an agent can size min_out for sui_deepbook_swap before
6
6
  * building the real transaction.
@@ -4,7 +4,7 @@ import { clientFor } from '../sui-client.js';
4
4
  import { DEEPBOOK_PACKAGE_ID, POOLS } from '../deepbook.js';
5
5
  /**
6
6
  * Read-only DeepBook v3 quote. Calls pool::get_quote_quantity_out (selling
7
- * base) or get_base_quantity_out (selling quote) via devInspect no gas,
7
+ * base) or get_base_quantity_out (selling quote) via devInspect - no gas,
8
8
  * no signing, no funds. Returns the expected output and the DEEP fee
9
9
  * required, so an agent can size min_out for sui_deepbook_swap before
10
10
  * building the real transaction.
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Build (do not sign) a DeepBook v3 market swap. Mirrors the exact PTB the
3
- * official @mysten/deepbook-v3 SDK emits pool::swap_exact_base_for_quote
4
- * / swap_exact_quote_for_base but on @mysten/sui v1, so the toolkit
3
+ * official @mysten/deepbook-v3 SDK emits - pool::swap_exact_base_for_quote
4
+ * / swap_exact_quote_for_base - but on @mysten/sui v1, so the toolkit
5
5
  * stays non-custodial and on its current SDK.
6
6
  *
7
7
  * Amounts are raw smallest-unit strings (like MIST): the caller handles
@@ -5,8 +5,8 @@ import { buildToB64 } from '../tx.js';
5
5
  import { DEEPBOOK_PACKAGE_ID, DEEP_TYPE, POOLS } from '../deepbook.js';
6
6
  /**
7
7
  * Build (do not sign) a DeepBook v3 market swap. Mirrors the exact PTB the
8
- * official @mysten/deepbook-v3 SDK emits pool::swap_exact_base_for_quote
9
- * / swap_exact_quote_for_base but on @mysten/sui v1, so the toolkit
8
+ * official @mysten/deepbook-v3 SDK emits - pool::swap_exact_base_for_quote
9
+ * / swap_exact_quote_for_base - but on @mysten/sui v1, so the toolkit
10
10
  * stays non-custodial and on its current SDK.
11
11
  *
12
12
  * Amounts are raw smallest-unit strings (like MIST): the caller handles
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Live coin metadata: symbol, name, decimals, description, icon URL. Pass
3
3
  * coin_type (e.g. "0x2::sui::SUI") or symbol (e.g. "USDC"). With symbol,
4
- * the local registry resolves to a coin_type first this works even when
4
+ * the local registry resolves to a coin_type first - this works even when
5
5
  * the on-chain CoinMetadata is absent or slow.
6
6
  *
7
7
  * Decimals are critical for every DeFi flow: a "5 USDC" transfer is 5e6
@@ -3,7 +3,7 @@ import { findCoin } from '../coins.js';
3
3
  /**
4
4
  * Live coin metadata: symbol, name, decimals, description, icon URL. Pass
5
5
  * coin_type (e.g. "0x2::sui::SUI") or symbol (e.g. "USDC"). With symbol,
6
- * the local registry resolves to a coin_type first this works even when
6
+ * the local registry resolves to a coin_type first - this works even when
7
7
  * the on-chain CoinMetadata is absent or slow.
8
8
  *
9
9
  * Decimals are critical for every DeFi flow: a "5 USDC" transfer is 5e6
@@ -9,7 +9,7 @@ export async function suiGetCoins(raw) {
9
9
  const client = clientFor(network);
10
10
  const res = await client.getCoins({
11
11
  owner: address,
12
- coinType: coin_type, // undefined native 0x2::sui::SUI
12
+ coinType: coin_type, // undefined -> native 0x2::sui::SUI
13
13
  cursor: cursor ?? null,
14
14
  limit,
15
15
  });
@@ -1 +1 @@
1
- {"version":3,"file":"sui_get_coins.js","sourceRoot":"","sources":["../../src/tools/sui_get_coins.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgB,MAAM,kBAAkB,CAAC;AAU3D;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,GAAY;IAC5C,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,GAAW,CAAC;IACnE,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAElC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC;QAChC,KAAK,EAAE,OAAO;QACd,QAAQ,EAAE,SAAS,EAAE,mCAAmC;QACxD,MAAM,EAAE,MAAM,IAAI,IAAI;QACtB,KAAK;KACN,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,OAAO;QACP,OAAO;QACP,SAAS,EAAE,SAAS,IAAI,eAAe;QACvC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM;QACtB,aAAa,EAAE,GAAG,CAAC,WAAW;QAC9B,WAAW,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI;QACnC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1B,cAAc,EAAE,CAAC,CAAC,YAAY;YAC9B,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,MAAM,EAAE,CAAC,CAAC,MAAM;SACjB,CAAC,CAAC;KACJ,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"sui_get_coins.js","sourceRoot":"","sources":["../../src/tools/sui_get_coins.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgB,MAAM,kBAAkB,CAAC;AAU3D;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,GAAY;IAC5C,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,GAAW,CAAC;IACnE,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAElC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC;QAChC,KAAK,EAAE,OAAO;QACd,QAAQ,EAAE,SAAS,EAAE,oCAAoC;QACzD,MAAM,EAAE,MAAM,IAAI,IAAI;QACtB,KAAK;KACN,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,OAAO;QACP,OAAO;QACP,SAAS,EAAE,SAAS,IAAI,eAAe;QACvC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM;QACtB,aAAa,EAAE,GAAG,CAAC,WAAW;QAC9B,WAAW,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI;QACnC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1B,cAAc,EAAE,CAAC,CAAC,YAAY;YAC9B,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,MAAM,EAAE,CAAC,CAAC,MAAM;SACjB,CAAC,CAAC;KACJ,CAAC,CAAC;AACL,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * List the dynamic fields attached to a parent object the way Sui
2
+ * List the dynamic fields attached to a parent object - the way Sui
3
3
  * stores Tables, Bags, and other on-chain collections. Returns each
4
4
  * field's name, type, and the child object id. Paginated.
5
5
  */
@@ -1,6 +1,6 @@
1
1
  import { clientFor } from '../sui-client.js';
2
2
  /**
3
- * List the dynamic fields attached to a parent object the way Sui
3
+ * List the dynamic fields attached to a parent object - the way Sui
4
4
  * stores Tables, Bags, and other on-chain collections. Returns each
5
5
  * field's name, type, and the child object id. Paginated.
6
6
  */
@@ -6,8 +6,8 @@ import { clientFor } from '../sui-client.js';
6
6
  * or pass `badge_package` explicitly.
7
7
  */
8
8
  const DEFAULT_BADGE_PACKAGE = {
9
- // testnet: '0x', // paste published package id here
10
- // mainnet: '0x',
9
+ // testnet: '0x...', // paste published package id here
10
+ // mainnet: '0x...',
11
11
  };
12
12
  export async function suiGetOwnedBadges(raw) {
13
13
  const { address, badge_package, network } = raw;
@@ -1 +1 @@
1
- {"version":3,"file":"sui_get_owned_badges.js","sourceRoot":"","sources":["../../src/tools/sui_get_owned_badges.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgB,MAAM,kBAAkB,CAAC;AAQ3D;;;;;GAKG;AACH,MAAM,qBAAqB,GAAqC;AAC9D,sDAAsD;AACtD,kBAAkB;CACnB,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,GAAY;IAClD,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,GAAW,CAAC;IACxD,MAAM,GAAG,GACP,aAAa;QACb,OAAO,CAAC,GAAG,CAAC,oBAAoB;QAChC,qBAAqB,CAAC,OAAO,CAAC,CAAC;IACjC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CACb,wBAAwB,OAAO,oFAAoF,CACpH,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAClC,MAAM,SAAS,GAAG,GAAG,GAAG,gBAAgB,CAAC;IACzC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC;QACzC,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE;QACjC,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;KAC/C,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;SAC9B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC;QAChC,MAAM,MAAM,GACV,OAAO,IAAI,OAAO,CAAC,QAAQ,KAAK,YAAY;YAC1C,CAAC,CAAE,OAAO,CAAC,MAAkC;YAC7C,CAAC,CAAC,IAAI,CAAC;QACX,OAAO;YACL,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ;YAC3B,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI;YAClB,QAAQ,EAAE,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC;YAC9C,YAAY,EAAE,MAAM,EAAE,YAAY;YAClC,YAAY,EAAE,MAAM,EAAE,YAAY;SACnC,CAAC;IACJ,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAEhC,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,OAAO;QACP,aAAa,EAAE,GAAG;QAClB,OAAO;QACP,KAAK,EAAE,MAAM,CAAC,MAAM;QACpB,MAAM;KACP,CAAC,CAAC;AACL,CAAC;AAED,iFAAiF;AACjF,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,KAAiB,CAAC,CAAC,CAAC;QACrE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"sui_get_owned_badges.js","sourceRoot":"","sources":["../../src/tools/sui_get_owned_badges.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgB,MAAM,kBAAkB,CAAC;AAQ3D;;;;;GAKG;AACH,MAAM,qBAAqB,GAAqC;AAC9D,wDAAwD;AACxD,oBAAoB;CACrB,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,GAAY;IAClD,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,GAAW,CAAC;IACxD,MAAM,GAAG,GACP,aAAa;QACb,OAAO,CAAC,GAAG,CAAC,oBAAoB;QAChC,qBAAqB,CAAC,OAAO,CAAC,CAAC;IACjC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CACb,wBAAwB,OAAO,oFAAoF,CACpH,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAClC,MAAM,SAAS,GAAG,GAAG,GAAG,gBAAgB,CAAC;IACzC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC;QACzC,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE;QACjC,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;KAC/C,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;SAC9B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC;QAChC,MAAM,MAAM,GACV,OAAO,IAAI,OAAO,CAAC,QAAQ,KAAK,YAAY;YAC1C,CAAC,CAAE,OAAO,CAAC,MAAkC;YAC7C,CAAC,CAAC,IAAI,CAAC;QACX,OAAO;YACL,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ;YAC3B,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI;YAClB,QAAQ,EAAE,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC;YAC9C,YAAY,EAAE,MAAM,EAAE,YAAY;YAClC,YAAY,EAAE,MAAM,EAAE,YAAY;SACnC,CAAC;IACJ,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAEhC,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,OAAO;QACP,aAAa,EAAE,GAAG;QAClB,OAAO;QACP,KAAK,EAAE,MAAM,CAAC,MAAM;QACpB,MAAM;KACP,CAAC,CAAC;AACL,CAAC;AAED,iFAAiF;AACjF,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,KAAiB,CAAC,CAAC,CAAC;QACrE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * List an address's active native stakes, grouped by validator. For each
3
3
  * StakedSui the chain returns the principal, the (estimated) rewards
4
- * accrued so far, and the activation epoch everything a staking app
4
+ * accrued so far, and the activation epoch - everything a staking app
5
5
  * needs to show "you staked X, you've earned Y". Read-only: no gas, no
6
6
  * signing.
7
7
  *
@@ -3,7 +3,7 @@ const toSui = (mist) => Number(BigInt(mist)) / 1e9;
3
3
  /**
4
4
  * List an address's active native stakes, grouped by validator. For each
5
5
  * StakedSui the chain returns the principal, the (estimated) rewards
6
- * accrued so far, and the activation epoch everything a staking app
6
+ * accrued so far, and the activation epoch - everything a staking app
7
7
  * needs to show "you staked X, you've earned Y". Read-only: no gas, no
8
8
  * signing.
9
9
  *
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * One validator's full picture, with APY merged: name, address, commission,
3
- * total stake, voting power, project URL plus the live APY the chain
3
+ * total stake, voting power, project URL - plus the live APY the chain
4
4
  * computes from recent epoch rewards. Fuses sui_get_validators and
5
5
  * sui_get_validators_apy into a single read so a staking app doesn't have
6
6
  * to join them by hand.
@@ -2,7 +2,7 @@ import { clientFor } from '../sui-client.js';
2
2
  const toSui = (mist) => Number(BigInt(mist)) / 1e9;
3
3
  /**
4
4
  * One validator's full picture, with APY merged: name, address, commission,
5
- * total stake, voting power, project URL plus the live APY the chain
5
+ * total stake, voting power, project URL - plus the live APY the chain
6
6
  * computes from recent epoch rewards. Fuses sui_get_validators and
7
7
  * sui_get_validators_apy into a single read so a staking app doesn't have
8
8
  * to join them by hand.
@@ -25,7 +25,7 @@ export async function suiGetValidators(raw) {
25
25
  next_epoch_stake_mist: v.nextEpochStake,
26
26
  voting_power: Number(v.votingPower),
27
27
  }));
28
- // Largest first a reasonable default for a validator picker.
28
+ // Largest first - a reasonable default for a validator picker.
29
29
  validators.sort((a, b) => Number(BigInt(b.staking_pool_sui_balance_mist) - BigInt(a.staking_pool_sui_balance_mist)));
30
30
  if (typeof limit === 'number') {
31
31
  validators = validators.slice(0, limit);
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Build (do not sign) a transaction that calls ANY Move entry function.
3
- * This is the universal write primitive the generic form of every
3
+ * This is the universal write primitive - the generic form of every
4
4
  * purpose-built mint/transfer tool.
5
5
  *
6
6
  * Each argument is a string in one of these forms:
@@ -12,7 +12,7 @@
12
12
  * - `pure:u8|u16|u32|u64|u128|u256:<number>`
13
13
  *
14
14
  * Vector and nested-struct arguments are intentionally out of scope for
15
- * the generic tool write a dedicated tool for those so the schema
15
+ * the generic tool - write a dedicated tool for those so the schema
16
16
  * stays unambiguous for the calling agent.
17
17
  */
18
18
  export declare function suiMoveCall(raw: unknown): Promise<string>;
@@ -3,7 +3,7 @@ import { clientFor } from '../sui-client.js';
3
3
  import { buildToB64 } from '../tx.js';
4
4
  /**
5
5
  * Build (do not sign) a transaction that calls ANY Move entry function.
6
- * This is the universal write primitive the generic form of every
6
+ * This is the universal write primitive - the generic form of every
7
7
  * purpose-built mint/transfer tool.
8
8
  *
9
9
  * Each argument is a string in one of these forms:
@@ -15,7 +15,7 @@ import { buildToB64 } from '../tx.js';
15
15
  * - `pure:u8|u16|u32|u64|u128|u256:<number>`
16
16
  *
17
17
  * Vector and nested-struct arguments are intentionally out of scope for
18
- * the generic tool write a dedicated tool for those so the schema
18
+ * the generic tool - write a dedicated tool for those so the schema
19
19
  * stays unambiguous for the calling agent.
20
20
  */
21
21
  export async function suiMoveCall(raw) {
@@ -34,7 +34,7 @@ export async function suiPayMany(raw) {
34
34
  payout_count: recipients.length,
35
35
  total_mist: total,
36
36
  total_sui: Number(BigInt(total)) / 1e9,
37
- next_step: 'Dry-run with sui_dry_run, sign, and submit with sui_execute_signed_tx. All N payouts settle atomically they all land or none do.',
37
+ next_step: 'Dry-run with sui_dry_run, sign, and submit with sui_execute_signed_tx. All N payouts settle atomically - they all land or none do.',
38
38
  });
39
39
  }
40
40
  //# sourceMappingURL=sui_pay_many.js.map
@@ -1,12 +1,12 @@
1
1
  /**
2
2
  * Query historical events. Powers reactive agents: react to swaps on a
3
- * pool, badge mints, NFT transfers anything that emits a Move event.
4
- * Filter by full event_type, by Move module (package + module both
3
+ * pool, badge mints, NFT transfers - anything that emits a Move event.
4
+ * Filter by full event_type, by Move module (package + module - both
5
5
  * required together), by sender, or by transaction. Paginated; pass back
6
6
  * next_cursor_* to continue.
7
7
  *
8
8
  * Sui's event index requires at least one filter; an unfiltered scan
9
9
  * would return the whole chain. Package-only filtering is not supported
10
- * by the fullnode pair package with module.
10
+ * by the fullnode - pair package with module.
11
11
  */
12
12
  export declare function suiQueryEvents(raw: unknown): Promise<string>;
@@ -1,14 +1,14 @@
1
1
  import { clientFor } from '../sui-client.js';
2
2
  /**
3
3
  * Query historical events. Powers reactive agents: react to swaps on a
4
- * pool, badge mints, NFT transfers anything that emits a Move event.
5
- * Filter by full event_type, by Move module (package + module both
4
+ * pool, badge mints, NFT transfers - anything that emits a Move event.
5
+ * Filter by full event_type, by Move module (package + module - both
6
6
  * required together), by sender, or by transaction. Paginated; pass back
7
7
  * next_cursor_* to continue.
8
8
  *
9
9
  * Sui's event index requires at least one filter; an unfiltered scan
10
10
  * would return the whole chain. Package-only filtering is not supported
11
- * by the fullnode pair package with module.
11
+ * by the fullnode - pair package with module.
12
12
  */
13
13
  export async function suiQueryEvents(raw) {
14
14
  const a = raw;
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Resolve a coin symbol (e.g. "USDC", "DEEP", "SUI") to its fully-qualified
3
3
  * coin type on the chosen network. Without a symbol, lists every known
4
- * symbol useful when the agent isn't sure what's available.
4
+ * symbol - useful when the agent isn't sure what's available.
5
5
  *
6
6
  * This is the coin-side mirror of sui_resolve_address: stops the agent
7
7
  * from hallucinating coin types ("oh USDC must be 0x2::usdc::USDC right?").
@@ -2,7 +2,7 @@ import { COINS, findCoin, knownSymbols } from '../coins.js';
2
2
  /**
3
3
  * Resolve a coin symbol (e.g. "USDC", "DEEP", "SUI") to its fully-qualified
4
4
  * coin type on the chosen network. Without a symbol, lists every known
5
- * symbol useful when the agent isn't sure what's available.
5
+ * symbol - useful when the agent isn't sure what's available.
6
6
  *
7
7
  * This is the coin-side mirror of sui_resolve_address: stops the agent
8
8
  * from hallucinating coin types ("oh USDC must be 0x2::usdc::USDC right?").
package/package.json CHANGED
@@ -1,17 +1,17 @@
1
1
  {
2
2
  "name": "@suisei-mcp/mcp",
3
- "version": "0.1.0",
4
- "description": "Suisei the Sui Stack as one-line tools, exposed over the Model Context Protocol so any agent can build on Sui.",
3
+ "version": "0.1.2",
4
+ "description": "Suisei - the Sui Stack as one-line tools, exposed over the Model Context Protocol so any agent can build on Sui.",
5
5
  "license": "MIT",
6
6
  "type": "module",
7
- "homepage": "https://suisei.dev",
7
+ "homepage": "https://github.com/eienel/suisei/tree/main/packages/mcp",
8
8
  "repository": {
9
9
  "type": "git",
10
- "url": "git+https://github.com/eienel/blockbuilders.git",
10
+ "url": "git+https://github.com/eienel/suisei.git",
11
11
  "directory": "packages/mcp"
12
12
  },
13
13
  "bugs": {
14
- "url": "https://github.com/eienel/blockbuilders/issues"
14
+ "url": "https://github.com/eienel/suisei/issues"
15
15
  },
16
16
  "publishConfig": {
17
17
  "access": "public"