@aifinpay/agent 1.2.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,7 +1,14 @@
1
1
  # @aifinpay/agent (Node / TypeScript)
2
2
 
3
3
  Non-custodial x402 payment client for autonomous AI agents on
4
- [AiFinPay](https://aifinpay.io).
4
+ [AiFinPay](https://aifinpay.io) — canonical domain **aifinpay.io** (the
5
+ legacy `aifinpay.company` host is retired). SDK settlement: since 1.3.0,
6
+ direct fee-on-top splitter settlement (`AiFinPayAgent.call()`) works on
7
+ Polygon (default), Base, Optimism, Unichain, BOT Chain and XRPL EVM
8
+ (native-token path only — no ERC-20/USDC settlement yet), plus Solana;
9
+ the backend-quoted invoice flow (`/api/b2b/pay-with-split`) remains
10
+ Polygon + Solana. The protocol is live across 13 networks — see
11
+ [aifinpay.io/llms.txt](https://aifinpay.io/llms.txt).
5
12
 
6
13
  The Ed25519 keypair is generated locally with `tweetnacl` and never leaves
7
14
  your process. The SDK only sends a one-time SHA-256 + Ed25519 signature in
package/dist/index.d.ts CHANGED
@@ -18,8 +18,8 @@
18
18
  * await agent.reserveSeatInvoice({ amountUsd: 1.0, asset: "USDC" });
19
19
  * const res = await agent.pay("https://aifinpay.io/api/stats");
20
20
  */
21
- export { AiFinPayAgent } from "./unifiedAgent.js";
22
- export type { AiFinPayAgentOptions, CallOptions, ChainId, ProviderEntry, BalanceSnapshot, ReputationSnapshot, BudgetCaps, SessionHandle, SessionReceipt, NetworkAgent, } from "./unifiedAgent.js";
21
+ export { AiFinPayAgent, SPLITTER_DEPLOYMENTS } from "./unifiedAgent.js";
22
+ export type { AiFinPayAgentOptions, CallOptions, ChainId, SplitterChainName, SplitterDeployment, AnyEvmChainName, ProviderEntry, BalanceSnapshot, ReputationSnapshot, BudgetCaps, SessionHandle, SessionReceipt, NetworkAgent, } from "./unifiedAgent.js";
23
23
  export { ProviderUnknownError, WrongChainBalanceError, InsufficientFundsError, BudgetCapExceededError, SettlementError, SessionExpiredError, } from "./unifiedAgent.js";
24
24
  export { bridgeQuote, bridgeExecute, bridgeWaitForArrival, EVM_CHAINS, USDC_NATIVE, USDC_BRIDGED, } from "./crossChain.js";
25
25
  export type { BridgeQuote, BridgeReceipt, BridgeQuoteOptions, EvmChainName, } from "./crossChain.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,YAAY,EACV,oBAAoB,EACpB,WAAW,EACX,OAAO,EACP,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,UAAU,EACV,aAAa,EACb,cAAc,EACd,YAAY,GACb,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,eAAe,EACf,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAM3B,OAAO,EACL,WAAW,EACX,aAAa,EACb,oBAAoB,EACpB,UAAU,EACV,WAAW,EACX,YAAY,GACb,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,YAAY,GACb,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EACL,aAAa,EACb,8BAA8B,EAC9B,mBAAmB,EACnB,wBAAwB,EACxB,iBAAiB,EACjB,2BAA2B,EAC3B,SAAS,GACV,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,UAAU,EACV,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACV,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,UAAU,GACX,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACxE,YAAY,EACV,oBAAoB,EACpB,WAAW,EACX,OAAO,EACP,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,UAAU,EACV,aAAa,EACb,cAAc,EACd,YAAY,GACb,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,eAAe,EACf,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAM3B,OAAO,EACL,WAAW,EACX,aAAa,EACb,oBAAoB,EACpB,UAAU,EACV,WAAW,EACX,YAAY,GACb,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,YAAY,GACb,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EACL,aAAa,EACb,8BAA8B,EAC9B,mBAAmB,EACnB,wBAAwB,EACxB,iBAAiB,EACjB,2BAA2B,EAC3B,SAAS,GACV,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,UAAU,EACV,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACV,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,UAAU,GACX,MAAM,yBAAyB,CAAC"}
package/dist/index.js CHANGED
@@ -19,7 +19,7 @@
19
19
  * const res = await agent.pay("https://aifinpay.io/api/stats");
20
20
  */
21
21
  // ── Unified surface (Phase 1+) ───────────────────────────────────────────
22
- export { AiFinPayAgent } from "./unifiedAgent.js";
22
+ export { AiFinPayAgent, SPLITTER_DEPLOYMENTS } from "./unifiedAgent.js";
23
23
  export { ProviderUnknownError, WrongChainBalanceError, InsufficientFundsError, BudgetCapExceededError, SettlementError, SessionExpiredError, } from "./unifiedAgent.js";
24
24
  // ── Cross-chain orchestration (Phase 1.5a — EVM↔EVM via LiFi) ────────────
25
25
  // Standalone primitives — also exposed as methods on AiFinPayAgent.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,4EAA4E;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAalD,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,eAAe,EACf,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAE3B,4EAA4E;AAC5E,oEAAoE;AACpE,uEAAuE;AACvE,0EAA0E;AAC1E,OAAO,EACL,WAAW,EACX,aAAa,EACb,oBAAoB,EACpB,UAAU,EACV,WAAW,EACX,YAAY,GACb,MAAM,iBAAiB,CAAC;AAQzB,2EAA2E;AAC3E,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,OAAO,EACL,aAAa,EACb,8BAA8B,EAC9B,mBAAmB,EACnB,wBAAwB,EACxB,iBAAiB,EACjB,2BAA2B,EAC3B,SAAS,GACV,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,UAAU,EACV,iBAAiB,GAClB,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,4EAA4E;AAC5E,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAgBxE,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,eAAe,EACf,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAE3B,4EAA4E;AAC5E,oEAAoE;AACpE,uEAAuE;AACvE,0EAA0E;AAC1E,OAAO,EACL,WAAW,EACX,aAAa,EACb,oBAAoB,EACpB,UAAU,EACV,WAAW,EACX,YAAY,GACb,MAAM,iBAAiB,CAAC;AAQzB,2EAA2E;AAC3E,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,OAAO,EACL,aAAa,EACb,8BAA8B,EAC9B,mBAAmB,EACnB,wBAAwB,EACxB,iBAAiB,EACjB,2BAA2B,EAC3B,SAAS,GACV,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,UAAU,EACV,iBAAiB,GAClB,MAAM,yBAAyB,CAAC"}
@@ -1,8 +1,15 @@
1
1
  import { type PrivateKeyAccount } from "viem/accounts";
2
+ import { type Chain } from "viem/chains";
2
3
  import { AiFinPayError } from "./errors.js";
3
4
  import { Agent, type AgentOptions } from "./agent.js";
4
5
  import { type BridgeQuote, type BridgeReceipt, type EvmChainName } from "./crossChain.js";
5
- export type ChainId = "solana" | "polygon";
6
+ /**
7
+ * Chains the unified agent can settle on. "solana" uses the Anchor
8
+ * b2b_pay_with_split program; every other value is an EVM chain with a
9
+ * verified B2BSplitter deployment (see SPLITTER_DEPLOYMENTS below).
10
+ * Additive union — "polygon" remains the EVM default.
11
+ */
12
+ export type ChainId = "solana" | SplitterChainName;
6
13
  export interface ProviderEntry {
7
14
  name: string;
8
15
  display_name?: string;
@@ -91,15 +98,41 @@ export interface AiFinPayAgentOptions extends AgentOptions {
91
98
  telemetry?: boolean;
92
99
  polygonRpc?: string;
93
100
  solanaRpc?: string;
94
- /** RPC overrides for non-Polygon EVM chains used in bridge flows. */
95
- evmRpcUrls?: Partial<Record<EvmChainName, string>>;
101
+ /** RPC overrides for non-Polygon EVM chains — both bridge-flow chains
102
+ * and splitter-settlement chains (base, optimism, unichain, botchain,
103
+ * xrplevm). Splitter chains fall back to the public RPC listed in
104
+ * SPLITTER_DEPLOYMENTS when no override is given. */
105
+ evmRpcUrls?: Partial<Record<AnyEvmChainName, string>>;
106
+ }
107
+ /** EVM chains with a live, on-chain-verified B2BSplitter deployment. */
108
+ export type SplitterChainName = "polygon" | "base" | "optimism" | "unichain" | "botchain" | "xrplevm";
109
+ export interface SplitterDeployment {
110
+ chainId: number;
111
+ /** viem chain object used for tx signing on this chain. */
112
+ chain: Chain;
113
+ /** Public RPC used when no evmRpcUrls override is supplied. */
114
+ defaultRpc: string;
115
+ /** B2BSplitter contract address (payMatic native-token entrypoint). */
116
+ splitter: `0x${string}`;
96
117
  /**
97
- * Throttle window (ms) for the auto-heartbeat fired opportunistically
98
- * after a successful call()/pay(). Default 5 minutes. See
99
- * `maybeHeartbeat()` for the throttle + balance-reuse rationale.
118
+ * Circle-native USDC on this chain, when one exists. Informational for
119
+ * now: the splitter payment path is native-token only (payMatic) — no
120
+ * ERC-20 settlement path is implemented in the SDK or deployed splitter.
100
121
  */
101
- heartbeatIntervalMs?: number;
122
+ usdc?: `0x${string}`;
123
+ explorer: string;
124
+ /** Env var consulted for the native-token USD price used by the
125
+ * pre-sign challenge guard, and its fallback default. */
126
+ nativeUsdEnv: string;
127
+ nativeUsdDefault: number;
102
128
  }
129
+ export declare const SPLITTER_DEPLOYMENTS: Record<SplitterChainName, SplitterDeployment>;
130
+ /**
131
+ * Union of every EVM chain name the SDK knows an RPC/client for: LiFi
132
+ * bridge chains (EvmChainName) + splitter deployment chains. Used for
133
+ * evmRpcUrls overrides and the internal client cache.
134
+ */
135
+ export type AnyEvmChainName = EvmChainName | SplitterChainName;
103
136
  export declare class ProviderUnknownError extends AiFinPayError {
104
137
  }
105
138
  export declare class WrongChainBalanceError extends AiFinPayError {
@@ -153,17 +186,14 @@ export declare class AiFinPayAgent {
153
186
  private budgetCaps;
154
187
  private spend24h;
155
188
  private telemetry;
156
- private heartbeatIntervalMs;
157
- private lastHeartbeatTs;
158
- private lastBalanceSnapshot?;
159
189
  private _polygonPublic?;
160
190
  private _polygonWallet?;
161
191
  private _evmClients;
162
192
  private evmRpcUrls;
163
- private userSessionCookie?;
164
193
  private constructor();
165
194
  private polygonClients;
166
195
  private evmClients;
196
+ private splitterClients;
167
197
  /**
168
198
  * Generate a fresh agent — new Solana keypair + new EVM keypair.
169
199
  * Use `fromSeed()` to derive both from a single backup phrase instead.
@@ -335,9 +365,11 @@ export declare class AiFinPayAgent {
335
365
  * High-level paid call. Resolves the provider, picks a chain, builds the
336
366
  * payment, sends to the bridge, retries with payment proof.
337
367
  *
338
- * Phase 1 implementation: Polygon per-call splitter via on-chain
339
- * `B2BSplitter.payMatic()`. Solana per-call branch lights up after
340
- * Phase 2 (b2b_pay_with_split deploy via Squads).
368
+ * EVM settlement: per-call splitter via on-chain `B2BSplitter.payMatic()`
369
+ * (generic native-token entrypoint) on any SPLITTER_DEPLOYMENTS chain —
370
+ * polygon (default), base, optimism, unichain, botchain, xrplevm. Pass
371
+ * `chain` in CallOptions to override (the provider must accept it).
372
+ * Solana settlement: b2b_pay_with_split (live since 2026-05-18).
341
373
  *
342
374
  * Returns `null` (instead of a `Response`) iff a budget cap was hit
343
375
  * AND budget.on_limit_exceeded is set to "skip" — the call is dropped
@@ -373,7 +405,8 @@ export declare class AiFinPayAgent {
373
405
  */
374
406
  private fetchSolanaUsdc;
375
407
  private splitterTreasuryCache;
376
- /** Read + cache B2BSplitter.treasury(). Returns null on RPC failure. */
408
+ /** Read + cache B2BSplitter.treasury() on the given chain (default
409
+ * polygon for back-compat). Returns null on RPC failure. */
377
410
  private splitterTreasury;
378
411
  /**
379
412
  * Read the native Polygon USDC (Circle-issued, 6 decimals) balance for the
@@ -385,75 +418,6 @@ export declare class AiFinPayAgent {
385
418
  * TODO(phase-4 / phase-5): query operator backend reputation engine.
386
419
  */
387
420
  reputation(): Promise<ReputationSnapshot>;
388
- /**
389
- * Establish the operator's user-session by hitting a magic-link URL —
390
- * same mechanism `agent_claim_self` (MCP) uses inline: the link is a
391
- * one-shot, ~15-min-TTL sign-in URL like
392
- * `https://aifinpay.io/api/auth/verify?token=…` that the user pastes in
393
- * after signing in at https://aifinpay.io/login. The resulting session
394
- * cookie (`__aifinpay_user_session`) is cached on this instance and
395
- * reused by `listMyAgents()` — call this once per process, not per call.
396
- */
397
- establishUserSession(magicLinkUrl: string): Promise<void>;
398
- /**
399
- * Adopt an already-computed session cookie header (e.g. one the MCP
400
- * `agent_claim_self` tool derived from the same magic link while doing
401
- * its own claim flow) without re-fetching the magic link. Lets
402
- * `listMyAgents()` reuse a session established by a sibling flow.
403
- */
404
- adoptUserSessionCookie(cookieHeader: string): void;
405
- /**
406
- * List agents owned by the signed-in operator, with balance/spend/health
407
- * fields for each, over a rolling window. Requires `establishUserSession()`
408
- * (or the MCP `agent_claim_self` flow, which also captures the cookie on
409
- * this same agent instance) to have run first — otherwise throws.
410
- *
411
- * Calls `GET {baseUrl}/api/me/agents/overview` — owner-gated, same
412
- * `__aifinpay_user_session` cookie as `/api/me/agents/challenge` and
413
- * `/api/me/agents/claim`. Returns the parsed `agents` array from
414
- * `{ window, agents: [...] }`.
415
- */
416
- listMyAgents(): Promise<Array<Record<string, unknown>>>;
417
421
  private reportTelemetry;
418
- /**
419
- * Opt-in "advisory" heartbeat — reports the agent's own view of its
420
- * budget caps, 24h spend, and balances so an operator dashboard can show
421
- * "reported by your agent" liveness. This is NOT server-enforced: the
422
- * backend does not verify these numbers on-chain, it just displays what
423
- * the agent self-reports. Respects the same `telemetry: false` opt-out
424
- * as `call()`'s per-request reporting. Fire-and-forget — never throws.
425
- */
426
- reportHeartbeat(): void;
427
- /**
428
- * Opportunistic, throttled heartbeat — called internally after a
429
- * SUCCESSFUL call()/pay() so the dashboard's "agent-reported caps"
430
- * section stays warm without every caller having to remember to invoke
431
- * reportHeartbeat() by hand.
432
- *
433
- * Throttle: at most once per `heartbeatIntervalMs` (default 5 min),
434
- * tracked via `lastHeartbeatTs` — never fires more often than that
435
- * regardless of call volume.
436
- *
437
- * Cost control: does NOT force a fresh balance() RPC round-trip on every
438
- * heartbeat. It reuses `lastBalanceSnapshot` if one exists and is no
439
- * older than `heartbeatIntervalMs`; otherwise it sends budget_caps +
440
- * spend_24h only (balances omitted) rather than paying for a live RPC
441
- * call on this opportunistic path. Call `balance()` or `reportHeartbeat()`
442
- * explicitly if you want a heartbeat with a guaranteed-fresh balance.
443
- *
444
- * Always fire-and-forget: never awaited by call()/pay(), never throws.
445
- */
446
- private maybeHeartbeat;
447
- /**
448
- * Generic x402 payment with telemetry — thin wrapper over
449
- * `inner.pay(url)` that reports a `kind:"call", via:"pay"` telemetry
450
- * event on success, mirroring the reporting `call()` already does for
451
- * registry-resolved payments. Unlike `call()`, the generic x402 flow
452
- * (native AiFinPay + Coinbase facilitators) does not settle through a
453
- * bridge that returns a verifiable tx hash here, so `cost` reflects the
454
- * caller's declared `options.maxAmountUsd` cap (if any) rather than a
455
- * confirmed on-chain amount — same "advisory" caveat as heartbeat.
456
- */
457
- pay(url: string, init?: Parameters<Agent["pay"]>[1]): Promise<Response>;
458
422
  }
459
423
  //# sourceMappingURL=unifiedAgent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"unifiedAgent.d.ts","sourceRoot":"","sources":["../src/unifiedAgent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unifiedAgent.d.ts","sourceRoot":"","sources":["../src/unifiedAgent.ts"],"names":[],"mappings":"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"}
@@ -14,12 +14,17 @@ import bs58 from "bs58";
14
14
  import { createHash } from "node:crypto";
15
15
  import { createPublicClient, createWalletClient, http, } from "viem";
16
16
  import { privateKeyToAccount, generatePrivateKey, } from "viem/accounts";
17
- import { polygon, base, arbitrum, optimism, bsc, mainnet } from "viem/chains";
17
+ import { defineChain } from "viem";
18
+ import { polygon, base, arbitrum, optimism, bsc, mainnet, unichain } from "viem/chains";
18
19
  import { Connection, Keypair, PublicKey, SystemProgram, Transaction, TransactionInstruction, sendAndConfirmTransaction, } from "@solana/web3.js";
19
20
  import { AiFinPayError, X402Error, } from "./errors.js";
20
21
  import { Agent } from "./agent.js";
21
22
  import { bridgeQuote as crossChainQuote, bridgeExecute as crossChainExecute, bridgeWaitForArrival, USDC_NATIVE, } from "./crossChain.js";
22
- // ── B2BSplitter contract (deployed at 0xE34Fc0…8440 on Polygon mainnet) ──
23
+ // ── B2BSplitter contract ABI ─────────────────────────────────────────────
24
+ // `payMatic` is the splitter's generic NATIVE-token payment entrypoint —
25
+ // the name is a Polygon-era legacy. On Base/Optimism/Unichain it settles
26
+ // ETH, on BOT Chain BOT, on XRPL EVM XRP. There is no ERC-20/USDC path in
27
+ // the deployed splitter payment flow yet — native-token only.
23
28
  const SPLITTER_PAY_MATIC_ABI = [
24
29
  {
25
30
  type: "function",
@@ -33,6 +38,94 @@ const SPLITTER_PAY_MATIC_ABI = [
33
38
  outputs: [],
34
39
  },
35
40
  ];
41
+ // ── B2BSplitter multi-chain deployment registry ──────────────────────────
42
+ //
43
+ // Chains where the fee-on-top B2BSplitter contract is DEPLOYED AND VERIFIED
44
+ // on-chain (eth_getCode returned bytecode for every address below,
45
+ // 2026-07-15). Do NOT add chains here without re-running that check.
46
+ //
47
+ // BOT Chain (677) and XRPL EVM (1440000) are not shipped with viem/chains,
48
+ // so we defineChain() them locally.
49
+ const botchain = defineChain({
50
+ id: 677,
51
+ name: "BOT Chain",
52
+ nativeCurrency: { name: "BOT", symbol: "BOT", decimals: 18 },
53
+ rpcUrls: { default: { http: ["https://rpc.botchain.ai"] } },
54
+ blockExplorers: {
55
+ default: { name: "BOT Chain Explorer", url: "https://scan.botchain.ai" },
56
+ },
57
+ });
58
+ const xrplevm = defineChain({
59
+ id: 1440000,
60
+ name: "XRPL EVM",
61
+ nativeCurrency: { name: "XRP", symbol: "XRP", decimals: 18 },
62
+ rpcUrls: { default: { http: ["https://rpc.xrplevm.org"] } },
63
+ blockExplorers: {
64
+ default: { name: "XRPL EVM Explorer", url: "https://explorer.xrplevm.org" },
65
+ },
66
+ });
67
+ export const SPLITTER_DEPLOYMENTS = {
68
+ polygon: {
69
+ chainId: 137,
70
+ chain: polygon,
71
+ defaultRpc: "https://polygon.drpc.org",
72
+ splitter: "0xE34Fc0E6694821c600Fa0955C0F74720ea6d8440",
73
+ usdc: "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
74
+ explorer: "https://polygonscan.com",
75
+ nativeUsdEnv: "AIFINPAY_MATIC_USD", // legacy name kept for back-compat
76
+ nativeUsdDefault: 0.70,
77
+ },
78
+ base: {
79
+ chainId: 8453,
80
+ chain: base,
81
+ defaultRpc: "https://mainnet.base.org",
82
+ splitter: "0x8Ad9830D16b1f10333866a3f38C949CbB19f4BAD",
83
+ usdc: "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
84
+ explorer: "https://basescan.org",
85
+ nativeUsdEnv: "AIFINPAY_ETH_USD",
86
+ nativeUsdDefault: 3000,
87
+ },
88
+ optimism: {
89
+ chainId: 10,
90
+ chain: optimism,
91
+ defaultRpc: "https://mainnet.optimism.io",
92
+ splitter: "0xeE92807decAa3A02F1e165dd7Efcd92ab9aA83CB",
93
+ usdc: "0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85",
94
+ explorer: "https://optimistic.etherscan.io",
95
+ nativeUsdEnv: "AIFINPAY_ETH_USD",
96
+ nativeUsdDefault: 3000,
97
+ },
98
+ unichain: {
99
+ chainId: 130,
100
+ chain: unichain,
101
+ defaultRpc: "https://mainnet.unichain.org",
102
+ splitter: "0xeE92807decAa3A02F1e165dd7Efcd92ab9aA83CB",
103
+ usdc: "0x078D782b760474a361dDA0AF3839290b0EF57AD6",
104
+ explorer: "https://uniscan.xyz",
105
+ nativeUsdEnv: "AIFINPAY_ETH_USD",
106
+ nativeUsdDefault: 3000,
107
+ },
108
+ botchain: {
109
+ chainId: 677,
110
+ chain: botchain,
111
+ defaultRpc: "https://rpc.botchain.ai",
112
+ splitter: "0x271870ABb6e6756D97191eBdb27C1873911bb587",
113
+ // no USDC on BOT Chain — native BOT only
114
+ explorer: "https://scan.botchain.ai",
115
+ nativeUsdEnv: "AIFINPAY_BOT_USD",
116
+ nativeUsdDefault: 1, // no reliable public feed; set the env var
117
+ },
118
+ xrplevm: {
119
+ chainId: 1440000,
120
+ chain: xrplevm,
121
+ defaultRpc: "https://rpc.xrplevm.org",
122
+ splitter: "0xeE92807decAa3A02F1e165dd7Efcd92ab9aA83CB",
123
+ // no verified USDC on XRPL EVM — native XRP only
124
+ explorer: "https://explorer.xrplevm.org",
125
+ nativeUsdEnv: "AIFINPAY_XRP_USD",
126
+ nativeUsdDefault: 2,
127
+ },
128
+ };
36
129
  // ── EVM chain object lookup — viem chains keyed by our EvmChainName ─────
37
130
  const EVM_CHAIN_OBJECTS = {
38
131
  ethereum: mainnet,
@@ -42,6 +135,10 @@ const EVM_CHAIN_OBJECTS = {
42
135
  optimism,
43
136
  base,
44
137
  };
138
+ function evmChainObject(name) {
139
+ return (EVM_CHAIN_OBJECTS[name]
140
+ ?? SPLITTER_DEPLOYMENTS[name]?.chain);
141
+ }
45
142
  // Mainnet USDC SPL mint on Solana (Circle native, not Wormhole-wrapped USDCet)
46
143
  const USDC_SOLANA_MINT = "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v";
47
144
  // Native Polygon USDC ERC20 (Circle-native, not bridged USDC.e)
@@ -137,26 +234,12 @@ export class AiFinPayAgent {
137
234
  budgetCaps;
138
235
  spend24h = new SpendTracker();
139
236
  telemetry;
140
- // Auto-heartbeat throttle (see maybeHeartbeat()). lastHeartbeatTs=0 means
141
- // "never fired yet this process" so the first opportunistic heartbeat
142
- // always goes out.
143
- heartbeatIntervalMs;
144
- lastHeartbeatTs = 0;
145
- // Cheap reuse: the last balance() snapshot taken by ANY caller (explicit
146
- // agent.balance() or a prior heartbeat). maybeHeartbeat() reuses it if
147
- // fresh enough instead of forcing a new RPC round-trip.
148
- lastBalanceSnapshot;
149
237
  _polygonPublic;
150
238
  _polygonWallet;
151
239
  // Multi-chain client cache for cross-chain orchestration (bridge flows).
152
240
  // Keyed by EVM chain name (see crossChain.ts EVM_CHAINS).
153
241
  _evmClients = new Map();
154
242
  evmRpcUrls = {};
155
- // Cookie for the operator's user-session (magic-link login), captured by
156
- // establishUserSession(). Same mechanism the MCP agent_claim_self tool
157
- // uses inline; here it's held on the instance so subsequent calls
158
- // (listMyAgents()) can reuse it without re-clicking the magic link.
159
- userSessionCookie;
160
243
  constructor(inner, evmAccount, opts = {}) {
161
244
  this.inner = inner;
162
245
  this.evmAccount = evmAccount;
@@ -164,7 +247,6 @@ export class AiFinPayAgent {
164
247
  ?? `${inner.baseUrl}${DEFAULT_REGISTRY_PATH}`;
165
248
  this.budgetCaps = opts.budgetCaps ?? {};
166
249
  this.telemetry = opts.telemetry !== false;
167
- this.heartbeatIntervalMs = opts.heartbeatIntervalMs ?? 5 * 60 * 1000;
168
250
  this.polygonRpc = opts.polygonRpc ?? "https://polygon.drpc.org";
169
251
  this.solanaRpc = opts.solanaRpc
170
252
  ?? process.env.AIFINPAY_SOLANA_RPC
@@ -195,19 +277,22 @@ export class AiFinPayAgent {
195
277
  }
196
278
  return { publicClient: this._polygonPublic, walletClient: this._polygonWallet };
197
279
  }
198
- // Multi-EVM-chain client cache. Used by bridge orchestration to sign source
199
- // and (optionally) dest transactions on chains other than Polygon. Picks
200
- // viem's built-in chain definitions; an optional RPC override per chain
201
- // can be supplied via opts.evmRpcUrls.
280
+ // Multi-EVM-chain client cache. Used by bridge orchestration AND splitter
281
+ // settlement on chains other than Polygon. Picks viem's built-in chain
282
+ // definitions (or our defineChain() entries for botchain/xrplevm); an
283
+ // optional RPC override per chain can be supplied via opts.evmRpcUrls,
284
+ // else splitter chains use SPLITTER_DEPLOYMENTS.defaultRpc, else viem's
285
+ // chain default.
202
286
  evmClients(name) {
203
287
  const cached = this._evmClients.get(name);
204
288
  if (cached)
205
289
  return cached;
206
- const chain = EVM_CHAIN_OBJECTS[name];
290
+ const chain = evmChainObject(name);
207
291
  if (!chain) {
208
292
  throw new AiFinPayError(`evmClients: unsupported EVM chain "${name}"`);
209
293
  }
210
- const rpcUrl = this.evmRpcUrls[name];
294
+ const rpcUrl = this.evmRpcUrls[name]
295
+ ?? SPLITTER_DEPLOYMENTS[name]?.defaultRpc;
211
296
  const transport = rpcUrl ? http(rpcUrl) : http();
212
297
  const publicClient = createPublicClient({ chain, transport });
213
298
  const walletClient = createWalletClient({ chain, transport, account: this.evmAccount });
@@ -215,6 +300,14 @@ export class AiFinPayAgent {
215
300
  this._evmClients.set(name, pair);
216
301
  return pair;
217
302
  }
303
+ // Clients for a splitter-settlement chain. Polygon keeps its dedicated
304
+ // client pair (honours the polygonRpc option byte-for-byte); every other
305
+ // registry chain goes through the generic evmClients cache.
306
+ splitterClients(name) {
307
+ if (name === "polygon")
308
+ return this.polygonClients();
309
+ return this.evmClients(name);
310
+ }
218
311
  // ── Constructors ─────────────────────────────────────────────────────────
219
312
  /**
220
313
  * Generate a fresh agent — new Solana keypair + new EVM keypair.
@@ -576,9 +669,11 @@ export class AiFinPayAgent {
576
669
  * High-level paid call. Resolves the provider, picks a chain, builds the
577
670
  * payment, sends to the bridge, retries with payment proof.
578
671
  *
579
- * Phase 1 implementation: Polygon per-call splitter via on-chain
580
- * `B2BSplitter.payMatic()`. Solana per-call branch lights up after
581
- * Phase 2 (b2b_pay_with_split deploy via Squads).
672
+ * EVM settlement: per-call splitter via on-chain `B2BSplitter.payMatic()`
673
+ * (generic native-token entrypoint) on any SPLITTER_DEPLOYMENTS chain —
674
+ * polygon (default), base, optimism, unichain, botchain, xrplevm. Pass
675
+ * `chain` in CallOptions to override (the provider must accept it).
676
+ * Solana settlement: b2b_pay_with_split (live since 2026-05-18).
582
677
  *
583
678
  * Returns `null` (instead of a `Response`) iff a budget cap was hit
584
679
  * AND budget.on_limit_exceeded is set to "skip" — the call is dropped
@@ -628,7 +723,6 @@ export class AiFinPayAgent {
628
723
  // Nothing was paid, so the call does NOT count against budget caps.
629
724
  if (this.telemetry)
630
725
  this.reportTelemetry({ kind: "call", provider: provider.name, chain, cost, free: true });
631
- this.maybeHeartbeat();
632
726
  return initialResp;
633
727
  }
634
728
  let challenge;
@@ -669,7 +763,6 @@ export class AiFinPayAgent {
669
763
  this.spend24h.add(cost);
670
764
  if (this.telemetry)
671
765
  this.reportTelemetry({ kind: "call", provider: provider.name, chain, cost, tx: solTxSig });
672
- this.maybeHeartbeat();
673
766
  // @internal — attach settlement metadata for consumers (MCP, telemetry
674
767
  // dashboards) that need to surface the tx hash without an extra RPC
675
768
  // call. Response headers are read-only after construction so we use
@@ -678,32 +771,50 @@ export class AiFinPayAgent {
678
771
  paidResp.aifinpayChain = "solana";
679
772
  return paidResp;
680
773
  }
681
- // ── Polygon branch (B2BSplitter.payMatic atomic split, legacy default) ──
774
+ // ── EVM branch (B2BSplitter.payMatic — generic native-token atomic split) ──
775
+ // Settles on any chain in SPLITTER_DEPLOYMENTS (polygon default; base,
776
+ // optimism, unichain, botchain, xrplevm). Native token only — the
777
+ // deployed splitter payment path has no ERC-20/USDC entrypoint.
682
778
  if (!challenge.pay_matic) {
683
779
  throw new X402Error(`bridge ${provider.name} returned 402 but no pay_matic block — only legacy AiFinPay/Coinbase facilitators not yet wired into AiFinPayAgent.call()`);
684
780
  }
685
781
  const pm = challenge.pay_matic;
782
+ const deployment = SPLITTER_DEPLOYMENTS[chain];
783
+ if (!deployment) {
784
+ throw new AiFinPayError(`No B2BSplitter deployment registered for chain "${chain}" — supported: ${Object.keys(SPLITTER_DEPLOYMENTS).join(", ")}`);
785
+ }
786
+ // Refuse to pay a quote denominated for another chain's native token:
787
+ // total_wei quoted for POL on Polygon would be a massive overpay if
788
+ // blindly re-sent as ETH on Base. Legacy bridges always emit "polygon".
789
+ if (pm.chain && pm.chain !== chain) {
790
+ throw new X402Error(`bridge ${provider.name} quoted pay_matic for chain "${pm.chain}" but the call was routed to "${chain}" — refusing cross-denomination payment`);
791
+ }
686
792
  // Guard: same ballpark check as the Solana branch — never sign for an
687
- // amount wildly above the declared cost / per-call cap.
793
+ // amount wildly above the declared cost / per-call cap. Native-token
794
+ // USD price per chain via SPLITTER_DEPLOYMENTS.nativeUsdEnv.
688
795
  {
689
796
  const wei = Number(pm.total_wei);
690
- const maticUsd = parseFloat(process.env.AIFINPAY_MATIC_USD ?? "0.70");
691
- const estUsd = (Number.isFinite(wei) ? wei / 1e18 : 0) * maticUsd;
797
+ const nativeUsd = parseFloat(process.env[deployment.nativeUsdEnv] ?? String(deployment.nativeUsdDefault));
798
+ const estUsd = (Number.isFinite(wei) ? wei / 1e18 : 0) * nativeUsd;
692
799
  const guarded = this.guardChallengeAmount(estUsd, cost, provider.name);
693
800
  if (!guarded)
694
801
  return null;
695
802
  }
696
- // 2. Submit B2BSplitter.payMatic on Polygon mainnet.
803
+ // 2. Submit B2BSplitter.payMatic on the selected chain's mainnet.
804
+ // Prefer the challenge's splitter address (current bridge behaviour);
805
+ // fall back to the registry address for bridges that omit it.
697
806
  // ipCreator routing: prefer the challenge's explicit ip_creator; else
698
807
  // route the royalty slot to the splitter's treasury (mirrors the Solana
699
808
  // branch). Passing address(0) would skip the transfer and permanently
700
809
  // strand the 1bp inside B2BSplitter — the contract has no sweep function.
810
+ const splitterAddress = pm.splitter
811
+ ?? deployment.splitter;
701
812
  const ipCreator = pm.ip_creator
702
- ?? await this.splitterTreasury(pm.splitter)
813
+ ?? await this.splitterTreasury(splitterAddress, chain)
703
814
  ?? "0x0000000000000000000000000000000000000000";
704
- const { publicClient, walletClient } = this.polygonClients();
815
+ const { publicClient, walletClient } = this.splitterClients(chain);
705
816
  const txHash = await walletClient.writeContract({
706
- address: pm.splitter,
817
+ address: splitterAddress,
707
818
  abi: SPLITTER_PAY_MATIC_ABI,
708
819
  functionName: "payMatic",
709
820
  args: [
@@ -712,13 +823,13 @@ export class AiFinPayAgent {
712
823
  pm.order_id,
713
824
  ],
714
825
  value: BigInt(pm.total_wei),
715
- chain: polygon,
826
+ chain: deployment.chain,
716
827
  account: this.evmAccount,
717
828
  });
718
- // 3. Wait for receipt (we only need inclusion for Polygon's 2s blocks).
829
+ // 3. Wait for receipt (inclusion is enough on these fast-block chains).
719
830
  const receipt = await publicClient.waitForTransactionReceipt({ hash: txHash });
720
831
  if (receipt.status !== "success") {
721
- throw new AiFinPayError(`Polygon tx reverted: ${txHash}`);
832
+ throw new AiFinPayError(`${deployment.chain.name} tx reverted: ${txHash}`);
722
833
  }
723
834
  // 4. Retry the bridge with payment proof.
724
835
  const paidResp = await this.inner.fetchImpl(fullUrl, buildInit({
@@ -732,10 +843,9 @@ export class AiFinPayAgent {
732
843
  this.spend24h.add(cost);
733
844
  if (this.telemetry)
734
845
  this.reportTelemetry({ kind: "call", provider: provider.name, chain, cost, tx: txHash });
735
- this.maybeHeartbeat();
736
846
  // @internal — see Solana branch above for rationale on property-attach.
737
847
  paidResp.aifinpayTx = txHash;
738
- paidResp.aifinpayChain = "polygon";
848
+ paidResp.aifinpayChain = chain;
739
849
  return paidResp;
740
850
  }
741
851
  // ── Solana b2b_pay_with_split — build, sign, send via @solana/web3.js ───
@@ -825,7 +935,7 @@ export class AiFinPayAgent {
825
935
  const solanaUsd = solana * solUsd;
826
936
  const solanaUsdcUsd = solana_usdc; // USDC ≈ $1
827
937
  const polygonUsdcUsd = polygon_usdc; // USDC ≈ $1
828
- const snapshot = {
938
+ return {
829
939
  agent_balance_usd: polygonUsd + solanaUsd + solanaUsdcUsd + polygonUsdcUsd,
830
940
  chains: {
831
941
  solana: { sol: solana, usdc: solana_usdc, msecco_balance: 0 },
@@ -835,9 +945,6 @@ export class AiFinPayAgent {
835
945
  budget_caps: this.budgetCaps,
836
946
  priced_at: Math.floor(Date.now() / 1000),
837
947
  };
838
- // Cache for maybeHeartbeat() reuse — see rationale there.
839
- this.lastBalanceSnapshot = { at: Date.now(), snapshot };
840
- return snapshot;
841
948
  }
842
949
  async fetchPolygonNative() {
843
950
  const { publicClient } = this.polygonClients();
@@ -907,15 +1014,17 @@ export class AiFinPayAgent {
907
1014
  return 0; // never block balance() on Solana RPC issues
908
1015
  }
909
1016
  }
910
- // Cache: splitter address → treasury address (constant per deployment).
1017
+ // Cache: "chain:splitter address" → treasury address (constant per deployment).
911
1018
  splitterTreasuryCache = new Map();
912
- /** Read + cache B2BSplitter.treasury(). Returns null on RPC failure. */
913
- async splitterTreasury(splitter) {
914
- const cached = this.splitterTreasuryCache.get(splitter.toLowerCase());
1019
+ /** Read + cache B2BSplitter.treasury() on the given chain (default
1020
+ * polygon for back-compat). Returns null on RPC failure. */
1021
+ async splitterTreasury(splitter, chainName = "polygon") {
1022
+ const cacheKey = `${chainName}:${splitter.toLowerCase()}`;
1023
+ const cached = this.splitterTreasuryCache.get(cacheKey);
915
1024
  if (cached)
916
1025
  return cached;
917
1026
  try {
918
- const { publicClient } = this.polygonClients();
1027
+ const { publicClient } = this.splitterClients(chainName);
919
1028
  const treasury = await publicClient.readContract({
920
1029
  address: splitter,
921
1030
  abi: SPLITTER_TREASURY_ABI,
@@ -923,7 +1032,7 @@ export class AiFinPayAgent {
923
1032
  });
924
1033
  if (!treasury || treasury === "0x0000000000000000000000000000000000000000")
925
1034
  return null;
926
- this.splitterTreasuryCache.set(splitter.toLowerCase(), treasury);
1035
+ this.splitterTreasuryCache.set(cacheKey, treasury);
927
1036
  return treasury;
928
1037
  }
929
1038
  catch {
@@ -964,69 +1073,6 @@ export class AiFinPayAgent {
964
1073
  flags: [],
965
1074
  };
966
1075
  }
967
- // ── Owner user-session (magic-link) ───────────────────────────────────
968
- /**
969
- * Establish the operator's user-session by hitting a magic-link URL —
970
- * same mechanism `agent_claim_self` (MCP) uses inline: the link is a
971
- * one-shot, ~15-min-TTL sign-in URL like
972
- * `https://aifinpay.io/api/auth/verify?token=…` that the user pastes in
973
- * after signing in at https://aifinpay.io/login. The resulting session
974
- * cookie (`__aifinpay_user_session`) is cached on this instance and
975
- * reused by `listMyAgents()` — call this once per process, not per call.
976
- */
977
- async establishUserSession(magicLinkUrl) {
978
- const res = await fetch(magicLinkUrl, { redirect: "manual" });
979
- const setCookie = res.headers.get("set-cookie");
980
- if (!setCookie) {
981
- throw new AiFinPayError(`Magic link did not return a session cookie (HTTP ${res.status}). Link may be expired or already used.`);
982
- }
983
- // Some setups split multiple cookies; keep the header verbatim minus
984
- // attributes (Path=/, HttpOnly, …) — same trim as agent-claim-self.ts.
985
- this.userSessionCookie = setCookie
986
- .split(",")
987
- .map((c) => c.trim().split(";")[0])
988
- .join("; ");
989
- }
990
- /**
991
- * Adopt an already-computed session cookie header (e.g. one the MCP
992
- * `agent_claim_self` tool derived from the same magic link while doing
993
- * its own claim flow) without re-fetching the magic link. Lets
994
- * `listMyAgents()` reuse a session established by a sibling flow.
995
- */
996
- adoptUserSessionCookie(cookieHeader) {
997
- this.userSessionCookie = cookieHeader;
998
- }
999
- /**
1000
- * List agents owned by the signed-in operator, with balance/spend/health
1001
- * fields for each, over a rolling window. Requires `establishUserSession()`
1002
- * (or the MCP `agent_claim_self` flow, which also captures the cookie on
1003
- * this same agent instance) to have run first — otherwise throws.
1004
- *
1005
- * Calls `GET {baseUrl}/api/me/agents/overview` — owner-gated, same
1006
- * `__aifinpay_user_session` cookie as `/api/me/agents/challenge` and
1007
- * `/api/me/agents/claim`. Returns the parsed `agents` array from
1008
- * `{ window, agents: [...] }`.
1009
- */
1010
- async listMyAgents() {
1011
- if (!this.userSessionCookie) {
1012
- throw new AiFinPayError("No user session established. Run the claim flow first — " +
1013
- "sign in at https://aifinpay.io/login, then call " +
1014
- "establishUserSession(magicLinkUrl) (Node) with the emailed link, " +
1015
- "or use the MCP agent_claim_self tool, before calling listMyAgents().");
1016
- }
1017
- const r = await this.inner.fetchImpl(`${this.inner.baseUrl}/api/me/agents/overview`, {
1018
- method: "GET",
1019
- headers: { accept: "application/json", cookie: this.userSessionCookie },
1020
- });
1021
- if (r.status === 401) {
1022
- throw new AiFinPayError("User session expired or invalid — re-run establishUserSession() with a fresh magic link.");
1023
- }
1024
- if (!r.ok) {
1025
- throw new AiFinPayError(`GET /api/me/agents/overview → ${r.status}`);
1026
- }
1027
- const j = (await r.json());
1028
- return j.agents ?? [];
1029
- }
1030
1076
  // ── Telemetry (opt-out) ─────────────────────────────────────────────────
1031
1077
  reportTelemetry(payload) {
1032
1078
  // Fire-and-forget. No body content, only metadata.
@@ -1036,96 +1082,6 @@ export class AiFinPayAgent {
1036
1082
  body: JSON.stringify({ agent_id: this.id, ...payload, ts: Date.now() }),
1037
1083
  }).catch(() => { });
1038
1084
  }
1039
- /**
1040
- * Opt-in "advisory" heartbeat — reports the agent's own view of its
1041
- * budget caps, 24h spend, and balances so an operator dashboard can show
1042
- * "reported by your agent" liveness. This is NOT server-enforced: the
1043
- * backend does not verify these numbers on-chain, it just displays what
1044
- * the agent self-reports. Respects the same `telemetry: false` opt-out
1045
- * as `call()`'s per-request reporting. Fire-and-forget — never throws.
1046
- */
1047
- reportHeartbeat() {
1048
- if (!this.telemetry)
1049
- return;
1050
- void this.balance()
1051
- .then((bal) => {
1052
- this.reportTelemetry({
1053
- kind: "heartbeat",
1054
- budget_caps: this.budgetCaps,
1055
- spend_24h_usd: bal.spend_24h_usd,
1056
- balances: bal.chains,
1057
- });
1058
- this.lastHeartbeatTs = Date.now();
1059
- })
1060
- .catch(() => { });
1061
- }
1062
- /**
1063
- * Opportunistic, throttled heartbeat — called internally after a
1064
- * SUCCESSFUL call()/pay() so the dashboard's "agent-reported caps"
1065
- * section stays warm without every caller having to remember to invoke
1066
- * reportHeartbeat() by hand.
1067
- *
1068
- * Throttle: at most once per `heartbeatIntervalMs` (default 5 min),
1069
- * tracked via `lastHeartbeatTs` — never fires more often than that
1070
- * regardless of call volume.
1071
- *
1072
- * Cost control: does NOT force a fresh balance() RPC round-trip on every
1073
- * heartbeat. It reuses `lastBalanceSnapshot` if one exists and is no
1074
- * older than `heartbeatIntervalMs`; otherwise it sends budget_caps +
1075
- * spend_24h only (balances omitted) rather than paying for a live RPC
1076
- * call on this opportunistic path. Call `balance()` or `reportHeartbeat()`
1077
- * explicitly if you want a heartbeat with a guaranteed-fresh balance.
1078
- *
1079
- * Always fire-and-forget: never awaited by call()/pay(), never throws.
1080
- */
1081
- maybeHeartbeat() {
1082
- if (!this.telemetry)
1083
- return;
1084
- const now = Date.now();
1085
- if (now - this.lastHeartbeatTs < this.heartbeatIntervalMs)
1086
- return;
1087
- this.lastHeartbeatTs = now; // claim the slot before the async work starts
1088
- const fresh = this.lastBalanceSnapshot
1089
- && (now - this.lastBalanceSnapshot.at) < this.heartbeatIntervalMs
1090
- ? this.lastBalanceSnapshot.snapshot
1091
- : undefined;
1092
- const payload = {
1093
- kind: "heartbeat",
1094
- budget_caps: this.budgetCaps,
1095
- spend_24h_usd: this.spend24h.total24h(),
1096
- };
1097
- if (fresh)
1098
- payload.balances = fresh.chains;
1099
- this.reportTelemetry(payload);
1100
- }
1101
- /**
1102
- * Generic x402 payment with telemetry — thin wrapper over
1103
- * `inner.pay(url)` that reports a `kind:"call", via:"pay"` telemetry
1104
- * event on success, mirroring the reporting `call()` already does for
1105
- * registry-resolved payments. Unlike `call()`, the generic x402 flow
1106
- * (native AiFinPay + Coinbase facilitators) does not settle through a
1107
- * bridge that returns a verifiable tx hash here, so `cost` reflects the
1108
- * caller's declared `options.maxAmountUsd` cap (if any) rather than a
1109
- * confirmed on-chain amount — same "advisory" caveat as heartbeat.
1110
- */
1111
- async pay(url, init = {}) {
1112
- const resp = await this.inner.pay(url, init);
1113
- if (this.telemetry) {
1114
- let host = null;
1115
- try {
1116
- host = new URL(url).host;
1117
- }
1118
- catch { /* leave null */ }
1119
- this.reportTelemetry({
1120
- kind: "call",
1121
- via: "pay",
1122
- provider: host,
1123
- cost: init.options?.maxAmountUsd ?? null,
1124
- });
1125
- }
1126
- this.maybeHeartbeat();
1127
- return resp;
1128
- }
1129
1085
  }
1130
1086
  // ── Internal hex helpers (small, no extra deps) ────────────────────────────
1131
1087
  function hexToBytes(hex) {
@@ -1 +1 @@
1
- {"version":3,"file":"unifiedAgent.js","sourceRoot":"","sources":["../src/unifiedAgent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unifiedAgent.js","sourceRoot":"","sources":["../src/unifiedAgent.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aifinpay/agent",
3
- "version": "1.2.0",
4
- "description": "Unified agent-economy SDK for autonomous AI agents — chain-opaque AiFinPayAgent surface (call/openSession/balance/verify) over Polygon and Solana execution environments.",
3
+ "version": "1.3.0",
4
+ "description": "Unified agent-economy SDK for autonomous AI agents — chain-opaque AiFinPayAgent surface (call/openSession/balance/verify) over Solana and EVM execution environments (Polygon default; Base, Optimism, Unichain, BOT Chain, XRPL EVM splitter settlement).",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
@@ -66,8 +66,5 @@
66
66
  },
67
67
  "publishConfig": {
68
68
  "access": "public"
69
- },
70
- "bin": {
71
- "aifinpay": "./dist/cli.js"
72
69
  }
73
70
  }