@xona-labs/xpay 0.2.22 → 0.2.24

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 (41) hide show
  1. package/CHANGELOG.md +57 -1
  2. package/README.md +35 -5
  3. package/SKILL.md +10 -3
  4. package/dist/cli/balance.d.ts.map +1 -1
  5. package/dist/cli/balance.js +9 -8
  6. package/dist/cli/balance.js.map +1 -1
  7. package/dist/cli/discover.js +6 -0
  8. package/dist/cli/discover.js.map +1 -1
  9. package/dist/discover/index.d.ts.map +1 -1
  10. package/dist/discover/index.js +15 -1
  11. package/dist/discover/index.js.map +1 -1
  12. package/dist/index.d.ts +1 -1
  13. package/dist/profile/index.d.ts.map +1 -1
  14. package/dist/profile/index.js +10 -1
  15. package/dist/profile/index.js.map +1 -1
  16. package/dist/shop/index.d.ts +84 -8
  17. package/dist/shop/index.d.ts.map +1 -1
  18. package/dist/shop/index.js +148 -15
  19. package/dist/shop/index.js.map +1 -1
  20. package/dist/signers/raw-evm.d.ts.map +1 -1
  21. package/dist/signers/raw-evm.js +20 -5
  22. package/dist/signers/raw-evm.js.map +1 -1
  23. package/dist/tools/index.d.ts.map +1 -1
  24. package/dist/tools/index.js +143 -11
  25. package/dist/tools/index.js.map +1 -1
  26. package/dist/transfer/index.d.ts +4 -3
  27. package/dist/transfer/index.d.ts.map +1 -1
  28. package/dist/transfer/index.js +36 -16
  29. package/dist/transfer/index.js.map +1 -1
  30. package/dist/types.d.ts +5 -1
  31. package/dist/types.d.ts.map +1 -1
  32. package/dist/types.js.map +1 -1
  33. package/dist/use/index.js +4 -0
  34. package/dist/use/index.js.map +1 -1
  35. package/dist/wallet/index.d.ts.map +1 -1
  36. package/dist/wallet/index.js +2 -0
  37. package/dist/wallet/index.js.map +1 -1
  38. package/dist/x402/evm-payment.d.ts.map +1 -1
  39. package/dist/x402/evm-payment.js +1 -0
  40. package/dist/x402/evm-payment.js.map +1 -1
  41. package/package.json +3 -1
package/CHANGELOG.md CHANGED
@@ -6,7 +6,63 @@ versioning follows [Semantic Versioning](https://semver.org/).
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
- ## [0.2.22] – 2026-07-26
9
+ ## [0.2.24] – 2026-08-07
10
+
11
+ ### Added
12
+ - **Stable chain (eip155:988) as a first-class wallet network.** xpay is now
13
+ an agent wallet on Tether/Bitfinex's payments L1, matching xona's
14
+ `/stable/*` x402 route family. It settles **USDT0**
15
+ (`0x779Ded0c9e1022225f8E0630b35a9b54bE713736`, 6 decimals as an ERC-20)
16
+ rather than USDC.
17
+ - A Stable signer is registered on every profile from the existing derived
18
+ EVM key — same treatment as Robinhood Chain — so `stable` works without
19
+ re-running `xpay init` or editing `networks`.
20
+ - `xpay balance` / `xpay_balance` show a `stable` row: USDT0 plus the native
21
+ USDT gas coin (18 decimals, listed separately since the two share a name).
22
+ USDT0 counts toward the stablecoin total.
23
+ - Payment routing: a 402 quoting `eip155:988` resolves to the Stable signer,
24
+ and the balance-aware picker compares USDT0 against the quoted price.
25
+ Payment stays gasless — the EIP-3009 typed-data path reads USDT0's EIP-712
26
+ domain (`USDT0` / `1`) from the live challenge's `extra`, which is the only
27
+ reliable source since `version()` and `eip712Domain()` revert on that
28
+ contract.
29
+ - `xpay transfer --network stable` sends USDT0. Accepts `USDT0`, `USDT`, or
30
+ `USDC` as the token name on that chain.
31
+ - RPC override via profile `rpcs.stable` (default `https://rpc.stable.xyz`).
32
+
33
+ ### Fixed
34
+ - `discover({ networks })` / `--network` now resolve named EVM slugs to the
35
+ CAIP-2 ids catalogs actually publish. `--network base` previously matched
36
+ nothing, since every EVM listing carries `eip155:8453`.
37
+ - EVM network auto-detection in `transfer` now considers only networks the
38
+ profile opted into, instead of a hardcoded list. Always-registered signers
39
+ (Robinhood, Stable) no longer make every EVM transfer ambiguous, and a
40
+ profile configured for an EVM chain outside the old literal is no longer
41
+ reported as having no EVM signer.
42
+
43
+ ## [0.2.23] – 2026-08-02
44
+
45
+ ### Added
46
+ - **Shop lens: image-based product discovery** (xona shop partner
47
+ integration). `xpay_shop_lens` MCP tool answers "what is this, and where
48
+ do I buy it" from a photo via xona's x402-paywalled `/shop/lens`:
49
+ `mode=identify` (default, ~$0.02 USDC) returns Google Lens visual matches
50
+ plus a derived product name, `mode=shop` (~$0.04 for all three
51
+ marketplaces) additionally runs that name through the Google
52
+ Shopping/Amazon/eBay comparison, nested as `marketplace_comparison`.
53
+ `xpay_shop_lens_quote` is the free preflight: validates the image URL is
54
+ publicly reachable and reports the exact price, no wallet.
55
+ - The image can be given as exactly one of `image_url`, `image_path`
56
+ (local file), or `image_base64` (raw or data URI). The lens engine only
57
+ accepts public http(s) URLs, so local/base64 inputs are first uploaded,
58
+ free, to xona's public image host (JPEG/PNG/GIF/WebP, type sniffed from
59
+ magic bytes, 25MB cap) and the hosted URL is echoed back as
60
+ `hosted_image_url` for reuse. This makes images from chat clients that
61
+ upload attachments (Hermes and friends) work without a manual hosting
62
+ step.
63
+ - `compactShopResult` now also compacts the nested
64
+ `marketplace_comparison` result list, so lens `mode=shop` responses stay
65
+ context-friendly over MCP.
10
66
 
11
67
  ### Added
12
68
  - **RWA discovery on Solana.** `xpay token rwa [query]` CLI, `xpay_rwa_find`
package/README.md CHANGED
@@ -65,7 +65,7 @@ xpay pay https://orbisapi.com/proxy/image-alt-text-generator-api-1c9472
65
65
  |---|---|
66
66
  | `xpay init [name]` | Create a profile (Solana + EVM keys from one BIP-39 seed). `--import` to restore from a phrase, `--no-encrypt` for dev wallets, `--workspace` to store locally. |
67
67
  | `xpay accounts list \| show \| use` | List profiles, inspect one, or set the active profile. |
68
- | `xpay balance` | USDC balance per network for the active profile. |
68
+ | `xpay balance` | Token balances per network for the active profile, plus a stablecoin total. Covers Solana, Base and other EVM chains, Robinhood Chain, and [Stable](#stable-chain). `--network`. |
69
69
  | `xpay discover [query]` | Search 21k+ x402 services across chains — Solana, Base, **BNB Chain**, and other EVM networks — plus **AgenC marketplace** agent listings (cached on disk). `--network`, `--limit`, `--json`. |
70
70
  | `xpay pay <url>` | Pay an x402 endpoint. Works on catalog URLs and any URL that returns 402. `--max-usd`, `--body`, `-y`. |
71
71
  | `xpay agenc hire <listingPda>` | Hire an [AgenC marketplace](#agenc-marketplace-hire-on-chain-agents) listing — escrows its SOL price on-chain; the provider works asynchronously. `--max-usd`, `--review-window`, `-y`. |
@@ -80,7 +80,7 @@ xpay pay https://orbisapi.com/proxy/image-alt-text-generator-api-1c9472
80
80
  | `xpay zauth status <sessionToken>` | Check a running zauth scan (free, read-only, no wallet). `--json`. |
81
81
  | `xpay shop search "<query>"` | [Product discovery](#xona-shop-product-discovery) across Google Shopping, Amazon, and eBay from one query (~$0.02 USDC via x402, less for fewer marketplaces). `--marketplaces`, `--price-min/max`, `--condition`, `--sort`, `--json`, `-y`. |
82
82
  | `xpay shop quote "<query>"` | Free preflight: exact search price + how the query parses (no wallet). `--json`. |
83
- | `xpay transfer <amount> USDC <to>` | Direct USDC transfer, subject to the guardrail. `--network`, `-y`. |
83
+ | `xpay transfer <amount> USDC <to>` | Direct stablecoin transfer (USDC, or USDT0 on [Stable](#stable-chain)), subject to the guardrail. `--network`, `-y`. |
84
84
  | `xpay report` | Comprehensive USDC activity report — totals, net flow, timeline, top counterparties, biggest txs. `--period daily\|weekly\|monthly`, `--network`, `--json`. |
85
85
  | `xpay guardrail show \| set \| clear` | Inspect or edit spending caps and allowed hosts. |
86
86
  | `xpay biometric status \| enable \| disable` | Touch ID unlock for the wallet passphrase (macOS). |
@@ -179,7 +179,7 @@ That's the whole setup. The generated wallet's **Solana address is printed to
179
179
  stderr on first run** — fund it with USDC and the agent can pay. It persists
180
180
  under `~/.xpay` and is reused on every later boot, so the address is stable.
181
181
 
182
- The host sees the core tools: `xpay_discover`, `xpay_use`, `xpay_do`, `xpay_transfer`, `xpay_balance`, `xpay_report`, `xpay_guardrail`, `xpay_token_find`, `xpay_swap`, `xpay_trending_tokens`, `xpay_trade_quote`, `xpay_trade`, `xpay_x_user`, `xpay_x_posts`, `xpay_zauth_reposcan`, `xpay_zauth_scan_status`, `xpay_shop_search`, `xpay_shop_quote`, `xpay_rwa_find`, `xpay_agenc_status`, plus `xpay_bento_status` / `xpay_bento_enable` / `xpay_bento_disable` to manage the [intent firewall](#security--bento-intent-firewall-optional). If you've linked a Sana key (see below), eight additional `sana_*` tools are also registered automatically.
182
+ The host sees the core tools: `xpay_discover`, `xpay_use`, `xpay_do`, `xpay_transfer`, `xpay_balance`, `xpay_report`, `xpay_guardrail`, `xpay_token_find`, `xpay_swap`, `xpay_trending_tokens`, `xpay_trade_quote`, `xpay_trade`, `xpay_x_user`, `xpay_x_posts`, `xpay_zauth_reposcan`, `xpay_zauth_scan_status`, `xpay_shop_search`, `xpay_shop_quote`, `xpay_shop_lens`, `xpay_shop_lens_quote`, `xpay_rwa_find`, `xpay_agenc_status`, plus `xpay_bento_status` / `xpay_bento_enable` / `xpay_bento_disable` to manage the [intent firewall](#security--bento-intent-firewall-optional). If you've linked a Sana key (see below), eight additional `sana_*` tools are also registered automatically.
183
183
 
184
184
  **Bring your own wallet instead** — the wallet source order is *existing profile → key env → auto-generate*, so any of these overrides the generated wallet:
185
185
 
@@ -473,6 +473,14 @@ xpay shop search "sony wh-1000xm5" --marketplaces amazon,ebay --sort price_asc
473
473
 
474
474
  MCP: `xpay_shop_search` (paid) / `xpay_shop_quote` (free preflight: agents should quote first when a query is ambiguous). MCP results are compacted for context (image/position/scoring fields dropped); `xpay shop search --json` keeps the full payload. Endpoint override: `XPAY_SHOP_ENDPOINT`.
475
475
 
476
+ ### Shop lens: image-based discovery
477
+
478
+ The same partner also answers "what is this, and where do I buy it" from a photo. Give `/shop/lens` an image and Google Lens identifies the product and the retailers selling it, normalized into the same schema as `/shop/search`. Two modes: `identify` (default, ~$0.02 USDC) returns the visual matches plus a derived product name; `shop` (~$0.04 for all three marketplaces) additionally runs that name through Google Shopping, Amazon, and eBay for a price comparison.
479
+
480
+ The lens engine itself only accepts a publicly reachable http(s) URL (SerpAPI fetches the image; data URIs are rejected), so the MCP tool takes the image as exactly one of three inputs: `image_url` (used as-is), `image_path` (local file), or `image_base64` (raw or data URI). Local files and base64 are first uploaded, free, to xona's public image host (JPEG/PNG/GIF/WebP, type sniffed from magic bytes, 25MB cap) and the hosted URL is echoed back as `hosted_image_url` for reuse. This is what makes images from chat clients that upload attachments (Hermes and friends) work: bytes in, public URL bridged automatically.
481
+
482
+ MCP: `xpay_shop_lens` (paid) / `xpay_shop_lens_quote` (free preflight: validates an image URL is publicly reachable and reports the exact price, no wallet). Agents should quote first when passing `image_url`, since the paid door charges even when the URL turns out to be unusable; uploads need no preflight because the hosted URL is always reachable. If the response flags the image as not a product photo, a `mode=shop` retry will not help.
483
+
476
484
  ## Multi-network
477
485
 
478
486
  `init` configures Solana and Base by default. Add or change via `~/.xpay/<name>/config.json`:
@@ -480,17 +488,39 @@ MCP: `xpay_shop_search` (paid) / `xpay_shop_quote` (free preflight: agents shoul
480
488
  ```json
481
489
  {
482
490
  "version": 1,
483
- "networks": ["solana", "base", "arbitrum"],
491
+ "networks": ["solana", "base", "arbitrum", "stable"],
484
492
  "defaultNetwork": "solana",
485
493
  "rpcs": {
486
494
  "solana": "https://your-helius-endpoint",
487
- "base": "https://your-alchemy-endpoint"
495
+ "base": "https://your-alchemy-endpoint",
496
+ "stable": "https://rpc.stable.xyz"
488
497
  }
489
498
  }
490
499
  ```
491
500
 
492
501
  Public RPCs work for development but rate-limit hard. Production deployments should configure dedicated RPC endpoints.
493
502
 
503
+ ### Stable chain
504
+
505
+ **Stable** (chain `988`, Tether/Bitfinex's payments L1) is supported as a first-class wallet network. It settles **USDT0** — the LayerZero OFT at `0x779Ded0c9e1022225f8E0630b35a9b54bE713736`, 6 decimals as an ERC-20 — not USDC.
506
+
507
+ The same derived EVM key covers it, so a Stable signer is registered on **every** profile whether or not `stable` is in `networks`. You get it without re-running `xpay init`:
508
+
509
+ ```bash
510
+ xpay balance # includes a stable row: USDT0 + native USDT gas
511
+ xpay balance --network stable
512
+ xpay discover "image generation" --network stable
513
+ xpay transfer 1.5 0xRecipient --network stable # sends USDT0
514
+ ```
515
+
516
+ Notes:
517
+
518
+ - **Payments are gasless.** x402 calls on Stable sign an EIP-3009 `transferWithAuthorization` and the facilitator broadcasts, so the wallet needs USDT0 only — no native gas. Direct `xpay transfer` *is* broadcast from your wallet, so that path needs a little native USDT for gas.
519
+ - **The EIP-712 domain is `USDT0` / `1`, not the USDC default.** xpay never hardcodes it: the domain is read from `extra` on the live 402 challenge, which is the only reliable source (`version()` and `eip712Domain()` both revert on this contract).
520
+ - **Two tokens share a name.** The native gas coin is USDT at 18 decimals; the ERC-20 that x402 settles is USDT0 at 6. `xpay balance` lists them separately.
521
+ - **Routing is automatic.** A 402 quoting `eip155:988` resolves to the Stable signer, and `use()` compares USDT0 balance against the price when several chains are offered.
522
+ - RPC override: profile `rpcs.stable` (default `https://rpc.stable.xyz`). Explorer: [stablescan.xyz](https://stablescan.xyz).
523
+
494
524
  ## How it works
495
525
 
496
526
  - **Keys** — One BIP-39 mnemonic per profile derives Solana (`m/44'/501'/0'/0'`, Phantom-compatible) and EVM (`m/44'/60'/0'/0/0`, MetaMask-compatible) keypairs. Encrypted at rest with scrypt + AES-256-GCM.
package/SKILL.md CHANGED
@@ -41,7 +41,7 @@ the MCP `env`. To require an explicit wallet (no auto-generation), set
41
41
  | `xpay_discover` | Find paid services by natural-language query. Returns ranked candidates with price, network, and payee. |
42
42
  | `xpay_use` | Pay for and call a specific service. Pass the full `resource` object from `xpay_discover` (preferred), or a `resourceUrl`. Handles the x402 402-challenge → pay → retry flow. |
43
43
  | `xpay_do` | One step: discover the best service for an intent **and** call it. Use when you don't need to compare options. |
44
- | `xpay_transfer` | Send USDC (or any Solana SPL token) directly to an address. Executes immediately, gated by the user's guardrail — confirm amount + destination with the user before calling. |
44
+ | `xpay_transfer` | Send USDC (or any Solana SPL token, or USDT0 on Stable) directly to an address. Executes immediately, gated by the user's guardrail — confirm amount + destination with the user before calling. |
45
45
  | `xpay_token_find` | Find Solana tokens by ticker, name, or mint (price, mcap, liquidity, `verified` flag). Read-only. |
46
46
  | `xpay_rwa_find` | List tradable RWA tokens on Solana: tokenized stocks/ETFs (xStocks, Ondo, Remora) + treasury-backed USDY. Free, read-only; results swappable via `xpay_swap`. |
47
47
  | `xpay_swap` | Swap tokens inside the wallet via Jupiter (Solana only). Irreversible; guardrail-gated. Confirm with the user first. |
@@ -70,9 +70,16 @@ balance covers the cost, so a $0 Base wallet falls through to a funded Solana
70
70
  one. If no network has the funds, the call fails fast with a clear
71
71
  "insufficient balance" message naming each network's balance.
72
72
 
73
+ Networks the wallet can pay from: Solana, Base and the other EVM chains,
74
+ Robinhood Chain, and **Stable** (chain 988, Tether's payments L1). Stable
75
+ settles in **USDT0**, not USDC — one derived EVM key covers it, so it is
76
+ always available and needs no setup. Fund it with USDT0; payments there are
77
+ gasless, so no native gas token is needed to pay.
78
+
73
79
  The agent pays from its own wallet, so **it must be funded first**. If a call
74
- fails for lack of funds, ask the user to send USDC to the address from
75
- `xpay_balance` (Solana mainnet or Base).
80
+ fails for lack of funds, ask the user to send the right stablecoin to the
81
+ matching address from `xpay_balance` — USDC on Solana mainnet or Base, USDT0
82
+ on Stable.
76
83
 
77
84
  ## AgenC marketplace listings — a different execution rail
78
85
 
@@ -1 +1 @@
1
- {"version":3,"file":"balance.d.ts","sourceRoot":"","sources":["../../src/cli/balance.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAQH,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2EvE"}
1
+ {"version":3,"file":"balance.d.ts","sourceRoot":"","sources":["../../src/cli/balance.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAQH,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4EvE"}
@@ -14,15 +14,14 @@ export async function runBalance(opts) {
14
14
  const profile = await unlockActive(opts);
15
15
  const name = profile.name;
16
16
  const signers = signersFromProfile(profile);
17
- // Robinhood Chain always has a signer (see signersFromProfile) even when it's
18
- // not in the profile's `networks`, so surface it in the default view too —
19
- // handy as the deposit address for funding trades.
17
+ // Robinhood Chain and Stable always have a signer (see signersFromProfile)
18
+ // even when they're not in the profile's `networks`, so surface them in the
19
+ // default view too — handy as the deposit address for funding trades and
20
+ // for /stable/* x402 calls.
20
21
  const configured = profile.config.networks;
21
22
  const networks = opts.network
22
23
  ? [opts.network]
23
- : configured.includes("robinhood")
24
- ? configured
25
- : [...configured, "robinhood"];
24
+ : [...configured, ...["robinhood", "stable"].filter((n) => !configured.includes(n))];
26
25
  console.log("");
27
26
  console.log(chalk.bold(`Profile "${name}"`));
28
27
  console.log("");
@@ -59,7 +58,9 @@ export async function runBalance(opts) {
59
58
  const usd = t.usdValue !== undefined ? chalk.dim(`≈ $${t.usdValue.toFixed(2)}`) : "";
60
59
  const flag = t.verified === false && !t.isNative ? chalk.yellow(" ⚠ unverified") : "";
61
60
  console.log(` ${label.padEnd(18)} ${chalk.white(val.padEnd(14))} ${usd}${flag}`);
62
- if (t.symbol === "USDC" || t.symbol === "USDT")
61
+ // USDT0 is Stable's USDT (an ERC-20 OFT), and its native gas coin
62
+ // reports as USDT — both are dollars, so both count.
63
+ if (t.symbol === "USDC" || t.symbol === "USDT" || t.symbol === "USDT0")
63
64
  usdcTotal += t.balance;
64
65
  if (t.usdValue !== undefined)
65
66
  portfolioUsd += t.usdValue;
@@ -76,7 +77,7 @@ export async function runBalance(opts) {
76
77
  }
77
78
  console.log("");
78
79
  }
79
- console.log(` ${chalk.bold(`$${usdcTotal.toFixed(4)}`)} ${chalk.dim("stablecoin total (USDC + USDT)")}`);
80
+ console.log(` ${chalk.bold(`$${usdcTotal.toFixed(4)}`)} ${chalk.dim("stablecoin total (USDC + USDT + USDT0)")}`);
80
81
  if (portfolioUsd > 0) {
81
82
  console.log(` ${chalk.bold(`$${portfolioUsd.toFixed(2)}`)} ${chalk.dim(`portfolio total${portfolioComplete ? "" : " (some tokens unpriced)"}`)}`);
82
83
  }
@@ -1 +1 @@
1
- {"version":3,"file":"balance.js","sourceRoot":"","sources":["../../src/cli/balance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"balance.js","sourceRoot":"","sources":["../../src/cli/balance.ts"],"names":[],"mappings":"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"}
@@ -79,6 +79,12 @@ function normalizeNetwork(raw) {
79
79
  return "ethereum";
80
80
  if (raw === "eip155:42161")
81
81
  return "arbitrum";
82
+ if (raw === "eip155:10")
83
+ return "optimism";
84
+ if (raw === "eip155:4663")
85
+ return "robinhood";
86
+ if (raw === "eip155:988")
87
+ return "stable";
82
88
  if (raw.startsWith("solana"))
83
89
  return "solana";
84
90
  return raw;
@@ -1 +1 @@
1
- {"version":3,"file":"discover.js","sourceRoot":"","sources":["../../src/cli/discover.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"discover.js","sourceRoot":"","sources":["../../src/cli/discover.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/discover/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAK7D,OAAO,EAAE,WAAW,EAAE,UAAU,IAAI,eAAe,EAAE,MAAM,YAAY,CAAC;AAExE,UAAU,uBAAwB,SAAQ,eAAe;IACvD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAaD,4EAA4E;AAC5E,wBAAgB,oBAAoB,IAAI,MAAM,EAAE,CAE/C;AAED,wBAAsB,QAAQ,CAAC,IAAI,GAAE,uBAA4B,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAmEtF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/discover/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAK7D,OAAO,EAAE,WAAW,EAAE,UAAU,IAAI,eAAe,EAAE,MAAM,YAAY,CAAC;AAExE,UAAU,uBAAwB,SAAQ,eAAe;IACvD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AA2BD,4EAA4E;AAC5E,wBAAgB,oBAAoB,IAAI,MAAM,EAAE,CAE/C;AAED,wBAAsB,QAAQ,CAAC,IAAI,GAAE,uBAA4B,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAoEtF"}
@@ -22,6 +22,19 @@ const DEFAULT_SOURCES = ["orbitx402", "agenc"];
22
22
  * back to local filtering. The real API returns a few dozen ranked matches.
23
23
  */
24
24
  const SERVER_QUERY_MAX = 1000;
25
+ /**
26
+ * Named EVM slugs → the CAIP-2 id catalogs actually publish. Without this,
27
+ * filtering on `stable` or `base` matches nothing, since every EVM listing
28
+ * carries `eip155:<id>`.
29
+ */
30
+ const NETWORK_ALIASES = {
31
+ base: "eip155:8453",
32
+ ethereum: "eip155:1",
33
+ arbitrum: "eip155:42161",
34
+ optimism: "eip155:10",
35
+ robinhood: "eip155:4663",
36
+ stable: "eip155:988",
37
+ };
25
38
  let warnings = [];
26
39
  /** Non-fatal source failures from the most recent {@link discover} call. */
27
40
  export function lastDiscoverWarnings() {
@@ -63,7 +76,8 @@ export async function discover(opts = {}) {
63
76
  // Network filter — prefix match so "solana" matches "solana:5eykt4..."
64
77
  // and "eip155:8453" matches exactly. The APIs have no network param yet.
65
78
  if (opts.networks?.length) {
66
- const matchesNet = (r) => r.accepts.some((a) => opts.networks.some((n) => a.network === n || a.network.startsWith(n + ":")));
79
+ const wanted = opts.networks.map((n) => NETWORK_ALIASES[n] ?? n);
80
+ const matchesNet = (r) => r.accepts.some((a) => wanted.some((n) => a.network === n || a.network.startsWith(n + ":")));
67
81
  orbit = orbit.filter(matchesNet);
68
82
  agenc = agenc.filter(matchesNet);
69
83
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/discover/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/discover/index.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -92,7 +92,7 @@ export interface XPay {
92
92
  /**
93
93
  * Direct token transfer (no x402). Subject to the same guardrail.
94
94
  * Solana: USDC, USDT, wSOL, BONK, JUP, PYTH, or any mint address.
95
- * EVM: USDC only.
95
+ * EVM: the network's stablecoin only — USDC, or USDT0 on Stable.
96
96
  * Pass private:true for MagicBlock PER privacy (Solana only).
97
97
  */
98
98
  transfer(args: {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/profile/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/profile/index.ts"],"names":[],"mappings":"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"}
@@ -71,7 +71,7 @@ export function signersFromProfile(profile) {
71
71
  rpcUrl: profile.config.rpcs?.solana,
72
72
  });
73
73
  }
74
- else if (["base", "ethereum", "arbitrum", "optimism", "robinhood"].includes(network)) {
74
+ else if (["base", "ethereum", "arbitrum", "optimism", "robinhood", "stable"].includes(network)) {
75
75
  out[network] = rawEvmSigner({
76
76
  privateKey: keys.evm.privateKey,
77
77
  network,
@@ -89,6 +89,15 @@ export function signersFromProfile(profile) {
89
89
  network: "robinhood",
90
90
  rpcUrl: profile.config.rpcs?.robinhood,
91
91
  });
92
+ // Same for Stable (chain 988): one derived EVM key covers every EIP-155
93
+ // chain, so registering it unconditionally lets any profile read its USDT0
94
+ // balance and pay /stable/* x402 routes without re-running `xpay init`.
95
+ // Payment routing only picks it when a 402 actually quotes eip155:988.
96
+ out.stable ??= rawEvmSigner({
97
+ privateKey: keys.evm.privateKey,
98
+ network: "stable",
99
+ rpcUrl: profile.config.rpcs?.stable,
100
+ });
92
101
  return out;
93
102
  }
94
103
  // -----------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/profile/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/profile/index.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,16 @@
1
1
  /**
2
2
  * xona shop partner integration: product discovery across Google Shopping,
3
- * Amazon, and eBay behind xona's x402-paywalled /shop/search endpoint.
3
+ * Amazon, and eBay behind xona's x402-paywalled /shop/search endpoint, and
4
+ * image-based discovery (Google Lens) behind /shop/lens.
4
5
  *
5
- * Flow differs from zauth in one important way: there is a FREE preflight
6
- * (POST /api/shop/quote) that parses the query server-side and reports the
7
- * exact price plus whether the query is even a product search. Callers should
8
- * quote first, then pay: the paid door rejects non-product queries but still
9
- * charges for the parse, so the free quote is what keeps agents from paying
10
- * for a query that returns nothing. The search itself is synchronous, so
11
- * there is no polling step.
6
+ * Flow differs from zauth in one important way: both doors have a FREE
7
+ * preflight (POST /api/shop/quote, POST /api/shop/lens/quote) that validates
8
+ * the input server-side and reports the exact price a paid call would cost.
9
+ * Callers should quote first, then pay: the paid doors reject bad input
10
+ * (non-product query, unreachable image URL) but still charge for the
11
+ * attempt, so the free quote is what keeps agents from paying for a call
12
+ * that returns nothing. Searches are synchronous, so there is no polling
13
+ * step.
12
14
  */
13
15
  export declare const SHOP_BASE: string;
14
16
  /** Marketplaces the resource can fan out to. Price scales with how many are searched. */
@@ -36,6 +38,80 @@ export interface ShopQuote {
36
38
  intent?: Record<string, unknown>;
37
39
  [key: string]: unknown;
38
40
  }
41
+ /** Lens engine modes: identify = 1 Lens credit, shop = identify + marketplace fan-out. */
42
+ export declare const SHOP_LENS_MODES: readonly ["identify", "shop"];
43
+ export interface ShopLensParams {
44
+ /** Publicly reachable http(s) image URL. Data URIs and uploads are not supported. */
45
+ image_url: string;
46
+ /** identify (default, cheaper) or shop (adds the marketplace price comparison). */
47
+ mode?: string;
48
+ /** Optional text refinement applied alongside the image ("in black", "size 10"). */
49
+ q?: string;
50
+ price_min?: number;
51
+ price_max?: number;
52
+ /** new | open_box | refurbished | used | for_parts */
53
+ condition?: string;
54
+ /** relevance | price_asc | price_desc | rating | reviews | discount | newest */
55
+ sort?: string;
56
+ country?: string;
57
+ /** Max results. Server default 20. */
58
+ limit?: number;
59
+ /** mode=shop only: restrict the comparison to a subset of marketplaces (lowers the price). */
60
+ marketplaces?: string[];
61
+ }
62
+ export interface ShopLensQuote {
63
+ success: boolean;
64
+ image_url_valid: boolean;
65
+ mode: string;
66
+ price_usd: number;
67
+ [key: string]: unknown;
68
+ }
69
+ /**
70
+ * The lens door only accepts a publicly reachable URL (SerpAPI fetches the
71
+ * image, xona never proxies the bytes), so local files and base64 payloads
72
+ * are bridged through xona's free public image host first: uploads land in
73
+ * object storage with a public-read ACL and the returned URL passes the lens
74
+ * validation. Everything below up to fetchShopLensQuote implements that
75
+ * bridge.
76
+ */
77
+ /**
78
+ * Cap on bytes we will upload. The host itself allows far more, but a lens
79
+ * image is a product photo; anything bigger than this is almost certainly a
80
+ * mistake (raw video frame, wrong file) and would waste upload time before
81
+ * the paid call even starts.
82
+ */
83
+ export declare const SHOP_IMAGE_MAX_BYTES: number;
84
+ /**
85
+ * Upload image bytes to xona's public image host and return the public URL.
86
+ * Free (no wallet): this is the general-purpose upload endpoint, not an x402
87
+ * door. The type is sniffed from magic bytes rather than trusted from the
88
+ * caller, because the endpoint rejects non-image types anyway.
89
+ */
90
+ export declare function uploadShopImage(bytes: Uint8Array, filename?: string): Promise<string>;
91
+ export interface LensImageInput {
92
+ /** Publicly reachable http(s) URL: used as-is, no upload. */
93
+ image_url?: string;
94
+ /** Local file path: read and uploaded to xona's public image host first. */
95
+ image_path?: string;
96
+ /** Base64 image bytes (raw or data URI): uploaded to xona's public image host first. */
97
+ image_base64?: string;
98
+ }
99
+ /**
100
+ * Resolve whichever image input the caller provided into the public URL the
101
+ * lens door requires. Exactly one of the three fields must be set: silently
102
+ * preferring one over another would hide a caller bug (two different images).
103
+ */
104
+ export declare function resolveLensImageUrl(input: LensImageInput): Promise<{
105
+ image_url: string;
106
+ uploaded: boolean;
107
+ }>;
108
+ /**
109
+ * Free preflight against /api/shop/lens/quote. Validates the image URL is a
110
+ * publicly reachable http(s) URL (the dominant failure mode) and reports the
111
+ * exact price the paid call would cost for the requested mode. No wallet, no
112
+ * Lens credit spent.
113
+ */
114
+ export declare function fetchShopLensQuote(params: ShopLensParams): Promise<ShopLensQuote>;
39
115
  /** Free preflight against /api/shop/quote. No wallet, no SerpAPI credit spent. */
40
116
  export declare function fetchShopQuote(params: ShopSearchParams): Promise<ShopQuote>;
41
117
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/shop/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,eAAO,MAAM,SAAS,QAAiE,CAAC;AAExF,yFAAyF;AACzF,eAAO,MAAM,iBAAiB,gDAAiD,CAAC;AAEhF,MAAM,WAAW,gBAAgB;IAC/B,yGAAyG;IACzG,KAAK,EAAE,MAAM,CAAC;IACd,uGAAuG;IACvG,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gFAAgF;IAChF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,kFAAkF;AAClF,wBAAsB,cAAc,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,CAqBjF;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAoBxD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/shop/index.ts"],"names":[],"mappings":"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"}