moltycash 8.2.1 โ†’ 8.4.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.
@@ -0,0 +1,9 @@
1
+ export type MppNetwork = 'tempo' | 'stellar' | 'monad';
2
+ export interface MppFetchSetup {
3
+ mppFetch: typeof globalThis.fetch;
4
+ walletLabel: string;
5
+ network: MppNetwork;
6
+ }
7
+ export declare function hasMppKey(): boolean;
8
+ export declare function buildMppFetch(): Promise<MppFetchSetup>;
9
+ //# sourceMappingURL=mppNetwork.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mppNetwork.d.ts","sourceRoot":"","sources":["../../lib/mppNetwork.ts"],"names":[],"mappings":"AAiBA,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;AAEvD,MAAM,WAAW,aAAa;IAC1B,QAAQ,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,UAAU,CAAC;CACvB;AAED,wBAAgB,SAAS,IAAI,OAAO,CAMnC;AAED,wBAAsB,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC,CA6C5D"}
@@ -0,0 +1,64 @@
1
+ import { privateKeyToAccount } from "viem/accounts";
2
+ import { Mppx } from "@stellar/mpp/charge/client";
3
+ import { stellar } from "@stellar/mpp/charge/client";
4
+ import { tempo } from "mppx/client";
5
+ import { monad } from "@monad-crypto/mpp/client";
6
+ export function hasMppKey() {
7
+ return !!(process.env.TEMPO_PRIVATE_KEY
8
+ || process.env.STELLAR_SECRET_KEY
9
+ || process.env.MONAD_PRIVATE_KEY);
10
+ }
11
+ export async function buildMppFetch() {
12
+ const tempoKey = process.env.TEMPO_PRIVATE_KEY;
13
+ const stellarKey = process.env.STELLAR_SECRET_KEY;
14
+ const monadKey = process.env.MONAD_PRIVATE_KEY;
15
+ const keyCount = [tempoKey, stellarKey, monadKey].filter(Boolean).length;
16
+ if (keyCount === 0)
17
+ throw new Error("No MPP private key set (TEMPO_PRIVATE_KEY / STELLAR_SECRET_KEY / MONAD_PRIVATE_KEY)");
18
+ if (keyCount > 1)
19
+ throw new Error("Multiple MPP keys set. Unset the ones you don't want to use โ€” only one chain per call.");
20
+ if (monadKey) {
21
+ if (!monadKey.startsWith("0x"))
22
+ throw new Error("MONAD_PRIVATE_KEY must start with '0x'");
23
+ const account = privateKeyToAccount(monadKey);
24
+ const mppClient = Mppx.create({
25
+ methods: [monad.charge({ account })],
26
+ polyfill: false,
27
+ });
28
+ return { mppFetch: mppClient.fetch, walletLabel: account.address, network: 'monad' };
29
+ }
30
+ if (tempoKey) {
31
+ if (!tempoKey.startsWith("0x"))
32
+ throw new Error("TEMPO_PRIVATE_KEY must start with '0x'");
33
+ const account = privateKeyToAccount(tempoKey);
34
+ const mppClient = Mppx.create({
35
+ methods: [tempo.charge({ account })],
36
+ polyfill: false,
37
+ });
38
+ return { mppFetch: mppClient.fetch, walletLabel: account.address, network: 'tempo' };
39
+ }
40
+ // Stellar
41
+ const mppClient = Mppx.create({
42
+ methods: [
43
+ stellar.charge({
44
+ secretKey: stellarKey,
45
+ onProgress: (event) => {
46
+ if (event.type === 'challenge')
47
+ console.log(` ๐Ÿ’ฐ ${event.amount} stroops โ†’ ${event.recipient}`);
48
+ if (event.type === 'signing')
49
+ console.log(" ๐Ÿ” Signing Soroban transaction...");
50
+ if (event.type === 'paying')
51
+ console.log(" ๐Ÿ“ค Submitting payment...");
52
+ if (event.type === 'paid')
53
+ console.log(` โœ… Paid! Hash: ${event.hash}`);
54
+ },
55
+ }),
56
+ ],
57
+ polyfill: false,
58
+ });
59
+ // We don't have a clean way to derive the Stellar public address from the
60
+ // secret without an SDK import โ€” use a placeholder; the server resolves
61
+ // the actual payer from the settled payment anyway.
62
+ return { mppFetch: mppClient.fetch, walletLabel: 'stellar-signer', network: 'stellar' };
63
+ }
64
+ //# sourceMappingURL=mppNetwork.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mppNetwork.js","sourceRoot":"","sources":["../../lib/mppNetwork.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export interface X402SignerSetup {
2
+ client: any;
3
+ walletLabel: string;
4
+ network: 'base' | 'solana' | 'worldchain' | 'skale';
5
+ }
6
+ export declare function buildX402Signer(): Promise<X402SignerSetup>;
7
+ //# sourceMappingURL=x402Network.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"x402Network.d.ts","sourceRoot":"","sources":["../../lib/x402Network.ts"],"names":[],"mappings":"AAqBA,MAAM,WAAW,eAAe;IAC5B,MAAM,EAAE,GAAG,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,GAAG,QAAQ,GAAG,YAAY,GAAG,OAAO,CAAC;CACvD;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,eAAe,CAAC,CAsDhE"}
@@ -0,0 +1,58 @@
1
+ import { privateKeyToAccount } from "viem/accounts";
2
+ import { x402Client } from "@x402/core/client";
3
+ import { registerExactEvmScheme } from "@x402/evm/exact/client";
4
+ import { registerExactSvmScheme } from "@x402/svm/exact/client";
5
+ import { createKeyPairSignerFromBytes } from "@solana/kit";
6
+ import bs58 from "bs58";
7
+ const SKALE_CHAIN_ID = 1187947933;
8
+ const SKALE_NETWORK_ID = `eip155:${SKALE_CHAIN_ID}`;
9
+ export async function buildX402Signer() {
10
+ const evmKey = process.env.EVM_PRIVATE_KEY;
11
+ const svmKey = process.env.SVM_PRIVATE_KEY;
12
+ const worldchainKey = process.env.WORLDCHAIN_PRIVATE_KEY;
13
+ const skaleKey = process.env.SKALE_PRIVATE_KEY;
14
+ const keyCount = [evmKey, svmKey, worldchainKey, skaleKey].filter(Boolean).length;
15
+ if (keyCount === 0) {
16
+ throw new Error("Set one of: EVM_PRIVATE_KEY (Base), SVM_PRIVATE_KEY (Solana), WORLDCHAIN_PRIVATE_KEY, SKALE_PRIVATE_KEY");
17
+ }
18
+ if (keyCount > 1) {
19
+ throw new Error("Multiple chain keys set. Unset the ones you don't want to use โ€” only one chain per call.");
20
+ }
21
+ const client = new x402Client();
22
+ if (svmKey) {
23
+ const keyBytes = bs58.decode(svmKey);
24
+ const signer = await createKeyPairSignerFromBytes(keyBytes);
25
+ registerExactSvmScheme(client, { signer });
26
+ return { client, walletLabel: signer.address, network: 'solana' };
27
+ }
28
+ if (worldchainKey) {
29
+ if (!worldchainKey.startsWith("0x"))
30
+ throw new Error("WORLDCHAIN_PRIVATE_KEY must start with '0x'");
31
+ const account = privateKeyToAccount(worldchainKey);
32
+ registerExactEvmScheme(client, {
33
+ signer: account,
34
+ networks: ["eip155:480"],
35
+ paymentRequirementsSelector: (_ver, reqs) => reqs.find((r) => r.network === "eip155:480") || reqs[0],
36
+ });
37
+ return { client, walletLabel: account.address, network: 'worldchain' };
38
+ }
39
+ if (skaleKey) {
40
+ if (!skaleKey.startsWith("0x"))
41
+ throw new Error("SKALE_PRIVATE_KEY must start with '0x'");
42
+ const account = privateKeyToAccount(skaleKey);
43
+ registerExactEvmScheme(client, {
44
+ signer: account,
45
+ networks: [SKALE_NETWORK_ID],
46
+ paymentRequirementsSelector: (_ver, reqs) => reqs.find((r) => r.network === SKALE_NETWORK_ID) || reqs[0],
47
+ });
48
+ return { client, walletLabel: account.address, network: 'skale' };
49
+ }
50
+ // EVM Base default
51
+ if (!evmKey || !evmKey.startsWith("0x")) {
52
+ throw new Error("EVM_PRIVATE_KEY must start with '0x'");
53
+ }
54
+ const account = privateKeyToAccount(evmKey);
55
+ registerExactEvmScheme(client, { signer: account });
56
+ return { client, walletLabel: account.address, network: 'base' };
57
+ }
58
+ //# sourceMappingURL=x402Network.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"x402Network.js","sourceRoot":"","sources":["../../lib/x402Network.ts"],"names":[],"mappings":"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"}
package/dist/reward.js CHANGED
@@ -1,12 +1,10 @@
1
1
  import "dotenv/config";
2
2
  import minimist from "minimist";
3
3
  import axios from "axios";
4
- import { privateKeyToAccount } from "viem/accounts";
5
- import { x402Client } from "@x402/core/client";
6
- import { registerExactEvmScheme } from "@x402/evm/exact/client";
7
4
  import { readCachedSession, readLatestSession } from "./lib/session.js";
8
5
  import { buildExplorerUrl } from "./lib/explorer.js";
9
- const privateKey = process.env.EVM_PRIVATE_KEY;
6
+ import { buildX402Signer } from "./lib/x402Network.js";
7
+ import { hasMppKey, buildMppFetch } from "./lib/mppNetwork.js";
10
8
  const baseURL = process.env.RESOURCE_SERVER_URL || "https://api.molty.cash";
11
9
  const X402_EXTENSION_URI = "https://github.com/google-a2a/a2a-x402/v0.1";
12
10
  let rpcIdCounter = 1;
@@ -53,20 +51,9 @@ async function rpcA2A(method, params) {
53
51
  return response.data.result;
54
52
  }
55
53
  async function resolveWalletLabel() {
56
- const svm = process.env.SVM_PRIVATE_KEY;
57
- if (svm && !privateKey) {
58
- const { createKeyPairSignerFromBytes } = await import("@solana/kit");
59
- const bs58Mod = await import("bs58");
60
- const decoder = bs58Mod.default ?? bs58Mod;
61
- const keyBytes = decoder.decode(svm);
62
- const signer = await createKeyPairSignerFromBytes(keyBytes);
63
- return signer.address;
64
- }
65
- if (privateKey && privateKey.startsWith("0x")) {
66
- const account = privateKeyToAccount(privateKey);
67
- return account.address;
68
- }
69
- throw new Error("Set EVM_PRIVATE_KEY (Base) or SVM_PRIVATE_KEY (Solana)");
54
+ // Reuse the x402 signer setup so we accept the same chain set everywhere.
55
+ const { walletLabel } = await buildX402Signer();
56
+ return walletLabel;
70
57
  }
71
58
  async function handleBalance() {
72
59
  // Prefer the wallet-specific session if any env key is set; otherwise just
@@ -111,15 +98,42 @@ async function handleClaim(args) {
111
98
  console.error("โŒ --destination <0x...> is required (Base EVM address that receives the $moltycash)");
112
99
  process.exit(1);
113
100
  }
114
- if (!privateKey || !privateKey.startsWith("0x")) {
115
- console.error("โŒ EVM_PRIVATE_KEY required (the wallet that pays the USDC exit tax)");
116
- process.exit(1);
101
+ // MPP chains (Tempo / Stellar / Monad) โ€” single POST with Authorization
102
+ // header, server handles 402 cycle, returns flat result.
103
+ if (hasMppKey()) {
104
+ const { mppFetch, walletLabel, network } = await buildMppFetch();
105
+ console.log(`๐ŸŽ Claiming $moltycash for ${walletLabel} (${network}) โ†’ ${destination}`);
106
+ console.log(`๐Ÿ’ณ Signing USDC exit-tax via MPP (${network})...`);
107
+ const body = JSON.stringify({ jsonrpc: "2.0", id: 1, method: "reward.claim", params: { destination } });
108
+ const resp = await mppFetch(`${baseURL}/a2a`, {
109
+ method: "POST",
110
+ headers: { "Content-Type": "application/json" },
111
+ body,
112
+ });
113
+ const data = await resp.json();
114
+ if (data.error) {
115
+ const e = new Error(data.error.message || "MPP reward.claim failed");
116
+ e.code = data.error.code;
117
+ e.data = data.error.data;
118
+ throw e;
119
+ }
120
+ const receipt = data.result;
121
+ console.log("");
122
+ console.log(`โœ… Claimed ${(receipt.claimed_tokens || 0).toLocaleString()} $moltycash`);
123
+ console.log(` Destination: ${receipt.destination}`);
124
+ console.log(` Fee paid: $${receipt.fee_paid_usd} USDC (${receipt.fee_network || network})`);
125
+ const feeExplorer = buildExplorerUrl(receipt.fee_tx, receipt.fee_network) || receipt.fee_tx;
126
+ console.log(` Fee tx: ${feeExplorer}`);
127
+ const sweepExplorer = buildExplorerUrl(receipt.sweep_tx, receipt.sweep_network || 'base') || receipt.sweep_tx;
128
+ console.log(` Sweep tx: ${sweepExplorer}`);
129
+ return;
117
130
  }
118
- const account = privateKeyToAccount(privateKey);
119
- console.log(`๐ŸŽ Claiming $moltycash for ${account.address} โ†’ ${destination}`);
120
- // Set up x402 client to sign the USDC exit tax
121
- const client = new x402Client();
122
- registerExactEvmScheme(client, { signer: account });
131
+ // Build x402 client for whichever chain has a private key configured. The
132
+ // signing chain doesn't have to match the destination โ€” destination is
133
+ // always Base EVM (where the sweep lands); fee can be paid from any
134
+ // supported x402 chain (Base / Solana / World Chain / SKALE).
135
+ const { client, walletLabel, network } = await buildX402Signer();
136
+ console.log(`๐ŸŽ Claiming $moltycash for ${walletLabel} (${network}) โ†’ ${destination}`);
123
137
  // Phase 1: request fee challenge
124
138
  console.log("๐Ÿ’ณ Phase 1: requesting USDC exit-tax challenge...");
125
139
  const phase1 = await rpcA2A("reward.claim", { destination });
@@ -1 +1 @@
1
- {"version":3,"file":"reward.js","sourceRoot":"","sources":["../reward.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AACvB,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,eAAsB,CAAC;AACtD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,wBAAwB,CAAC;AAC5E,MAAM,kBAAkB,GAAG,6CAA6C,CAAC;AAEzE,IAAI,YAAY,GAAG,CAAC,CAAC;AAErB,KAAK,UAAU,cAAc,CAAC,MAAc,EAAE,MAA+B,EAAE,YAAoB;IAC/F,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,MAAM,EAAE;QAChD,OAAO,EAAE,KAAK;QACd,EAAE,EAAE,YAAY,EAAE;QAClB,MAAM;QACN,MAAM;KACT,EAAE;QACC,OAAO,EAAE;YACL,cAAc,EAAE,kBAAkB;YAClC,uBAAuB,EAAE,YAAY;SACxC;KACJ,CAAC,CAAC;IACH,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;QAChC,MAAM,CAAC,GAAQ,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,IAAI,oBAAoB,CAAC,CAAC;QAC9D,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;QAClB,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;QAClB,MAAM,CAAC,CAAC;IACZ,CAAC;IACD,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;AAChC,CAAC;AAED,KAAK,UAAU,MAAM,CAAC,MAAc,EAAE,MAA+B;IACjE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,MAAM,EAAE;QAChD,OAAO,EAAE,KAAK;QACd,EAAE,EAAE,YAAY,EAAE;QAClB,MAAM;QACN,MAAM;KACT,EAAE;QACC,OAAO,EAAE;YACL,cAAc,EAAE,kBAAkB;YAClC,kBAAkB,EAAE,kBAAkB;SACzC;KACJ,CAAC,CAAC;IACH,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;QAChC,MAAM,CAAC,GAAQ,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,IAAI,oBAAoB,CAAC,CAAC;QAC9D,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;QAClB,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;QAClB,MAAM,CAAC,CAAC;IACZ,CAAC;IACD,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;AAChC,CAAC;AAED,KAAK,UAAU,kBAAkB;IAC7B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;IACxC,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QACrB,MAAM,EAAE,4BAA4B,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAQ,CAAC;QAC5E,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,OAAO,GAAI,OAAe,CAAC,OAAO,IAAI,OAAO,CAAC;QACpD,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,4BAA4B,CAAC,QAAQ,CAAC,CAAC;QAC5D,OAAO,MAAM,CAAC,OAAO,CAAC;IAC1B,CAAC;IACD,IAAI,UAAU,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAChD,OAAO,OAAO,CAAC,OAAO,CAAC;IAC3B,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;AAC9E,CAAC;AAED,KAAK,UAAU,aAAa;IACxB,2EAA2E;IAC3E,oEAAoE;IACpE,IAAI,MAAM,GAAG,IAAI,CAAC;IAClB,IAAI,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,kBAAkB,EAAE,CAAC;QACzC,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC,CAAC,8CAA8C,CAAC,CAAC;IAC1D,IAAI,CAAC,MAAM;QAAE,MAAM,GAAG,iBAAiB,EAAE,CAAC;IAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAC5C,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC3D,OAAO,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC1D,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,iCAAiC,MAAM,CAAC,cAAc,KAAK,CAAC,CAAC;IACzE,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,gBAAgB,EAAE,EAAE,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;IAChF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,wBAAwB,MAAM,CAAC,YAAY,IAAI,iBAAiB,EAAE,CAAC,CAAC;IAChF,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAc,IAAI,CAAC,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;IACrF,IAAI,MAAM,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;IACtF,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,8BAA8B,MAAM,CAAC,kBAAkB,IAAI,GAAG,UAAU,CAAC,CAAC,MAAM,CAAC,YAAY,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACvI,IAAI,MAAM,CAAC,oBAAoB,EAAE,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,wBAAwB,MAAM,CAAC,oBAAoB,CAAC,cAAc,EAAE,iBAAiB,CAAC,MAAM,CAAC,cAAc,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACnJ,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,wBAAwB,MAAM,CAAC,sBAAsB,CAAC,cAAc,EAAE,eAAe,MAAM,CAAC,mBAAmB,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;IACpJ,OAAO,CAAC,GAAG,CAAC,yBAAyB,MAAM,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM,cAAc,CAAC,CAAC;IACnG,OAAO,CAAC,GAAG,CAAC,wBAAwB,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,sBAAsB,EAAE,CAAC,CAAC;IACzF,IAAI,MAAM,CAAC,cAAc;QAAE,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;AAChF,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,IAAyB;IAChD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,EAAE,CAAC;IAChD,IAAI,CAAC,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;QAC9F,OAAO,CAAC,KAAK,CAAC,qFAAqF,CAAC,CAAC;QACrG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9C,OAAO,CAAC,KAAK,CAAC,qEAAqE,CAAC,CAAC;QACrF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,MAAM,OAAO,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAChD,OAAO,CAAC,GAAG,CAAC,8BAA8B,OAAO,CAAC,OAAO,MAAM,WAAW,EAAE,CAAC,CAAC;IAE9E,+CAA+C;IAC/C,MAAM,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;IAChC,sBAAsB,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;IAEpD,iCAAiC;IACjC,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;IACjE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,cAAc,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;IAC7D,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACvE,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,uBAAuB,CAAC,CAAC;IACpF,IAAI,CAAC,eAAe;QAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IAErF,qCAAqC;IACrC,MAAM,OAAO,GAAG,CAAC,eAAe,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC;IAChJ,IAAI,OAAO,EAAE,CAAC;QACV,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,yBAAyB,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACnE,CAAC;IAED,yBAAyB;IACzB,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;IACjE,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,eAAe,CAAC,CAAC;IACzE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,cAAc,EAAE;QACxC,WAAW;QACX,MAAM,EAAE,MAAM,CAAC,EAAE;QACjB,OAAO,EAAE,aAAa;KACzB,CAAC,CAAC;IAEH,uBAAuB;IACvB,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;IACzC,IAAI,OAAO,GAAQ,IAAI,CAAC;IACxB,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YACT,IAAI,CAAC;gBACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACpE,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;oBAClB,OAAO,GAAG,MAAM,CAAC;oBACjB,MAAM;gBACV,CAAC;YACL,CAAC;YAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QAC5B,CAAC;IACL,CAAC;IACD,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,oDAAoD;QACpD,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK;YACrC,EAAE,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;aACtC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;aACvB,IAAI,CAAC,IAAI,CAAC,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,+CAA+C,CAAC,CAAC;IAC5E,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,aAAa,OAAO,CAAC,cAAc,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;IAC/E,OAAO,CAAC,GAAG,CAAC,sBAAsB,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,CAAC,uBAAuB,OAAO,CAAC,YAAY,UAAU,OAAO,CAAC,WAAW,IAAI,MAAM,GAAG,CAAC,CAAC;IACnG,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC;IAC5F,OAAO,CAAC,GAAG,CAAC,sBAAsB,WAAW,EAAE,CAAC,CAAC;IACjD,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,aAAa,IAAI,MAAM,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC;IAC9G,OAAO,CAAC,GAAG,CAAC,sBAAsB,aAAa,EAAE,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;IACzC,MAAM,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC;CAChC,CAAC,CAAC;AACH,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAE7B,KAAK,UAAU,IAAI;IACf,IAAI,CAAC;QACD,QAAQ,UAAU,EAAE,CAAC;YACjB,KAAK,SAAS;gBACV,MAAM,aAAa,EAAE,CAAC;gBACtB,MAAM;YACV,KAAK,OAAO;gBACR,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;gBACxB,MAAM;YACV;gBACI,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACxB,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;gBAC5C,OAAO,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;gBAChE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAClB,OAAO,CAAC,KAAK,CAAC,4EAA4E,CAAC,CAAC;gBAC5F,OAAO,CAAC,KAAK,CAAC,4EAA4E,CAAC,CAAC;gBAC5F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC;IACL,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC;QAC9D,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,uBAAuB,EAAE,CAAC,CAAC;QACrD,IAAI,GAAG,CAAC,IAAI;YAAE,OAAO,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACL,CAAC;AAED,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"reward.js","sourceRoot":"","sources":["../reward.ts"],"names":[],"mappings":"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"}
package/dist/session.js CHANGED
@@ -1,11 +1,9 @@
1
1
  import "dotenv/config";
2
2
  import minimist from "minimist";
3
3
  import axios from "axios";
4
- import { privateKeyToAccount } from "viem/accounts";
5
- import { x402Client } from "@x402/core/client";
6
- import { registerExactEvmScheme } from "@x402/evm/exact/client";
7
4
  import { writeCachedSession, readCachedSession } from "./lib/session.js";
8
- const privateKey = process.env.EVM_PRIVATE_KEY;
5
+ import { buildX402Signer } from "./lib/x402Network.js";
6
+ import { hasMppKey, buildMppFetch } from "./lib/mppNetwork.js";
9
7
  const baseURL = process.env.RESOURCE_SERVER_URL || "https://api.molty.cash";
10
8
  const X402_EXTENSION_URI = "https://github.com/google-a2a/a2a-x402/v0.1";
11
9
  let rpcIdCounter = 1;
@@ -26,28 +24,45 @@ async function a2aCall(method, params) {
26
24
  return response.data.result;
27
25
  }
28
26
  async function handleSessionCreate() {
29
- if (!privateKey || !privateKey.startsWith("0x")) {
30
- console.error("โŒ EVM_PRIVATE_KEY required (Base wallet 0x...)");
31
- process.exit(1);
27
+ // MPP chains (Tempo / Stellar / Monad) take a different transport โ€” single
28
+ // POST with Authorization: Payment header, mppFetch auto-handles 402 cycle.
29
+ if (hasMppKey()) {
30
+ const { mppFetch, walletLabel, network } = await buildMppFetch();
31
+ console.log(`๐Ÿ”ง Wallet: ${walletLabel} (${network})`);
32
+ console.log(`๐Ÿ’ณ Signing USDC auth payment via MPP (${network})...`);
33
+ const body = JSON.stringify({ jsonrpc: "2.0", id: 1, method: "session.create", params: {} });
34
+ const resp = await mppFetch(`${baseURL}/a2a`, {
35
+ method: "POST",
36
+ headers: { "Content-Type": "application/json" },
37
+ body,
38
+ });
39
+ const data = await resp.json();
40
+ if (data.error)
41
+ throw new Error(data.error.message || "MPP session.create failed");
42
+ const issued = data.result;
43
+ if (!issued?.session_token)
44
+ throw new Error("session_token missing from MPP response");
45
+ writeCachedSession(issued);
46
+ const expiresIn = Math.max(0, issued.session_expires_at - Math.floor(Date.now() / 1000));
47
+ console.log(`โœ… Session token cached for wallet ${issued.session_wallet}`);
48
+ console.log(` Expires in ${Math.floor(expiresIn / 3600)}h ${Math.floor((expiresIn % 3600) / 60)}m`);
49
+ return;
32
50
  }
33
- const account = privateKeyToAccount(privateKey);
34
- console.log(`๐Ÿ”ง Wallet: ${account.address}`);
35
- const client = new x402Client();
36
- registerExactEvmScheme(client, { signer: account });
37
- console.log("๐Ÿ’ณ Phase 1: requesting 1ยข auth payment challenge...");
51
+ const { client, walletLabel, network } = await buildX402Signer();
52
+ console.log(`๐Ÿ”ง Wallet: ${walletLabel} (${network})`);
53
+ console.log("๐Ÿ’ณ Phase 1: requesting USDC auth payment challenge...");
38
54
  const phase1 = await a2aCall("session.create", {});
39
55
  if (!phase1.id)
40
56
  throw new Error("Missing task ID in Phase 1 response");
41
57
  const paymentRequired = phase1.status?.message?.metadata?.["x402.payment.required"];
42
58
  if (!paymentRequired)
43
59
  throw new Error("No payment requirements found");
44
- console.log("๐Ÿ” Phase 2: signing 1ยข payment + submitting...");
60
+ console.log("๐Ÿ” Phase 2: signing payment + submitting...");
45
61
  const signedPayment = await client.createPaymentPayload(paymentRequired);
46
62
  const phase2 = await a2aCall("session.create", {
47
63
  taskId: phase1.id,
48
64
  payment: signedPayment,
49
65
  });
50
- // Extract session_token from task artifacts
51
66
  const artifacts = phase2.artifacts || [];
52
67
  let issued = null;
53
68
  for (const a of artifacts) {
@@ -69,6 +84,17 @@ async function handleSessionCreate() {
69
84
  console.log(`โœ… Session token cached for wallet ${issued.session_wallet}`);
70
85
  console.log(` Expires in ${Math.floor(expiresIn / 3600)}h ${Math.floor((expiresIn % 3600) / 60)}m`);
71
86
  }
87
+ async function handleSessionStatus() {
88
+ const { walletLabel } = await buildX402Signer();
89
+ const cached = readCachedSession(walletLabel);
90
+ if (!cached) {
91
+ console.log(`No active session for ${walletLabel}. Run: moltycash session create`);
92
+ return;
93
+ }
94
+ const expiresIn = Math.max(0, cached.session_expires_at - Math.floor(Date.now() / 1000));
95
+ console.log(`Wallet: ${cached.session_wallet}`);
96
+ console.log(`Expires: ${Math.floor(expiresIn / 3600)}h ${Math.floor((expiresIn % 3600) / 60)}m from now`);
97
+ }
72
98
  const args = minimist(process.argv.slice(2));
73
99
  const subcommand = args._[0];
74
100
  async function main() {
@@ -77,23 +103,9 @@ async function main() {
77
103
  case "create":
78
104
  await handleSessionCreate();
79
105
  break;
80
- case "status": {
81
- if (!privateKey) {
82
- console.error("โŒ EVM_PRIVATE_KEY required");
83
- process.exit(1);
84
- }
85
- const account = privateKeyToAccount(privateKey);
86
- const cached = readCachedSession(account.address);
87
- if (!cached) {
88
- console.log(`No active session for ${account.address}. Run: moltycash session create`);
89
- }
90
- else {
91
- const expiresIn = Math.max(0, cached.session_expires_at - Math.floor(Date.now() / 1000));
92
- console.log(`Wallet: ${cached.session_wallet}`);
93
- console.log(`Expires in ${Math.floor(expiresIn / 3600)}h ${Math.floor((expiresIn % 3600) / 60)}m`);
94
- }
106
+ case "status":
107
+ await handleSessionStatus();
95
108
  break;
96
- }
97
109
  default:
98
110
  console.error("Usage: moltycash session <create|status>");
99
111
  process.exit(1);
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../session.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "moltycash",
3
- "version": "8.2.1",
3
+ "version": "8.4.0",
4
4
  "description": "CLI tool for sending USDC payments and managing gigs via molty.cash using x402 and MPP protocols",
5
5
  "type": "module",
6
6
  "bin": {