agentcash 0.16.2 → 0.17.1
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/dist/cjs/run-server.cjs +106704 -123049
- package/dist/esm/{add-skill-DPQR466Y.js → add-skill-CFGMBWS4.js} +4 -4
- package/dist/esm/{bridge-JNIOVDD3.js → bridge-4SWPSBWP.js} +3 -3
- package/dist/esm/{check-LR3CSSJF.js → check-PGUEDKO5.js} +4 -4
- package/dist/esm/{chunk-V264YU5J.js → chunk-574342U7.js} +2 -2
- package/dist/esm/{chunk-7WQMJKJR.js → chunk-6IYTF6NV.js} +2 -2
- package/dist/esm/{chunk-3XQN4TFL.js → chunk-6YIG64RH.js} +2 -2
- package/dist/esm/{chunk-H5V6L7NG.js → chunk-CCWBMXQT.js} +3 -3
- package/dist/esm/chunk-CCWBMXQT.js.map +1 -0
- package/dist/esm/{chunk-C5TXI374.js → chunk-G6MIWS35.js} +3 -3
- package/dist/esm/{chunk-WPCEYCCK.js → chunk-H7ES5FU5.js} +2 -2
- package/dist/esm/{chunk-Q5YKPVXL.js → chunk-MCJ446SE.js} +2 -2
- package/dist/esm/{chunk-7VILIGSP.js → chunk-QFYKR3H3.js} +2 -2
- package/dist/esm/{chunk-CQ5ZSAKD.js → chunk-XU7NVHOY.js} +2 -2
- package/dist/esm/{chunk-F4YE5YSG.js → chunk-YIECO2O4.js} +22 -3
- package/dist/esm/chunk-YIECO2O4.js.map +1 -0
- package/dist/esm/{chunk-M3YTSL6T.js → chunk-YOY6D3SX.js} +3 -3
- package/dist/esm/{discover-EIFUI6QT.js → discover-OGK3JBEU.js} +3 -3
- package/dist/esm/{fetch-OXPSOIQ3.js → fetch-SC43UYLV.js} +17 -10
- package/dist/esm/fetch-SC43UYLV.js.map +1 -0
- package/dist/esm/index.js +21 -21
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/{install-RCJYUZA6.js → install-ONQHFNPS.js} +3 -3
- package/dist/esm/{onboard-263VMOOP.js → onboard-VZ4MNINC.js} +3 -3
- package/dist/esm/{origins-ZXQOPPWV.js → origins-YOHZN3QI.js} +4 -4
- package/dist/esm/{register-35JC4M2E.js → register-NMKUVK6Z.js} +2 -2
- package/dist/esm/{report-error-TXNPOHTY.js → report-error-HQBVDKDU.js} +3 -3
- package/dist/esm/{search-ZFXKWMRP.js → search-H32FUHXO.js} +4 -4
- package/dist/esm/{server-ABCU7Y46.js → server-MKLACHXU.js} +23 -20
- package/dist/esm/server-MKLACHXU.js.map +1 -0
- package/dist/esm/{server-ECAFH7U2.js → server-YVMRCPCF.js} +2 -2
- package/dist/esm/{try-3CZ3JFD2.js → try-NEU56CHG.js} +3 -3
- package/package.json +7 -7
- package/dist/esm/chunk-F4YE5YSG.js.map +0 -1
- package/dist/esm/chunk-H5V6L7NG.js.map +0 -1
- package/dist/esm/fetch-OXPSOIQ3.js.map +0 -1
- package/dist/esm/server-ABCU7Y46.js.map +0 -1
- /package/dist/esm/{add-skill-DPQR466Y.js.map → add-skill-CFGMBWS4.js.map} +0 -0
- /package/dist/esm/{bridge-JNIOVDD3.js.map → bridge-4SWPSBWP.js.map} +0 -0
- /package/dist/esm/{check-LR3CSSJF.js.map → check-PGUEDKO5.js.map} +0 -0
- /package/dist/esm/{chunk-V264YU5J.js.map → chunk-574342U7.js.map} +0 -0
- /package/dist/esm/{chunk-7WQMJKJR.js.map → chunk-6IYTF6NV.js.map} +0 -0
- /package/dist/esm/{chunk-3XQN4TFL.js.map → chunk-6YIG64RH.js.map} +0 -0
- /package/dist/esm/{chunk-C5TXI374.js.map → chunk-G6MIWS35.js.map} +0 -0
- /package/dist/esm/{chunk-WPCEYCCK.js.map → chunk-H7ES5FU5.js.map} +0 -0
- /package/dist/esm/{chunk-Q5YKPVXL.js.map → chunk-MCJ446SE.js.map} +0 -0
- /package/dist/esm/{chunk-7VILIGSP.js.map → chunk-QFYKR3H3.js.map} +0 -0
- /package/dist/esm/{chunk-CQ5ZSAKD.js.map → chunk-XU7NVHOY.js.map} +0 -0
- /package/dist/esm/{chunk-M3YTSL6T.js.map → chunk-YOY6D3SX.js.map} +0 -0
- /package/dist/esm/{discover-EIFUI6QT.js.map → discover-OGK3JBEU.js.map} +0 -0
- /package/dist/esm/{install-RCJYUZA6.js.map → install-ONQHFNPS.js.map} +0 -0
- /package/dist/esm/{onboard-263VMOOP.js.map → onboard-VZ4MNINC.js.map} +0 -0
- /package/dist/esm/{origins-ZXQOPPWV.js.map → origins-YOHZN3QI.js.map} +0 -0
- /package/dist/esm/{register-35JC4M2E.js.map → register-NMKUVK6Z.js.map} +0 -0
- /package/dist/esm/{report-error-TXNPOHTY.js.map → report-error-HQBVDKDU.js.map} +0 -0
- /package/dist/esm/{search-ZFXKWMRP.js.map → search-H32FUHXO.js.map} +0 -0
- /package/dist/esm/{server-ECAFH7U2.js.map → server-YVMRCPCF.js.map} +0 -0
- /package/dist/esm/{try-3CZ3JFD2.js.map → try-NEU56CHG.js.map} +0 -0
package/dist/esm/index.js
CHANGED
|
@@ -7,17 +7,17 @@ import {
|
|
|
7
7
|
} from "./chunk-27DZCYDB.js";
|
|
8
8
|
import {
|
|
9
9
|
MCP_VERSION
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-574342U7.js";
|
|
11
11
|
import {
|
|
12
12
|
paymentNetworks,
|
|
13
13
|
paymentProtocols,
|
|
14
14
|
requestMethodValues
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-MCJ446SE.js";
|
|
16
16
|
import {
|
|
17
17
|
DESCRIPTIONS,
|
|
18
18
|
TOOL_PARAMS,
|
|
19
19
|
buildServerInstructions
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-CCWBMXQT.js";
|
|
21
21
|
import "./chunk-LNJIXYCU.js";
|
|
22
22
|
import "./chunk-HTGTKVXB.js";
|
|
23
23
|
import "./chunk-KVSTJRSJ.js";
|
|
@@ -120,7 +120,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
120
120
|
DESCRIPTIONS.fetch.epilogue
|
|
121
121
|
),
|
|
122
122
|
async (args) => {
|
|
123
|
-
const { fetchCommand } = await import("./fetch-
|
|
123
|
+
const { fetchCommand } = await import("./fetch-SC43UYLV.js");
|
|
124
124
|
await fetchCommand(args);
|
|
125
125
|
}
|
|
126
126
|
).command(
|
|
@@ -132,7 +132,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
132
132
|
DESCRIPTIONS.fetchWithAuth.epilogue
|
|
133
133
|
),
|
|
134
134
|
async (args) => {
|
|
135
|
-
const { fetchCommand } = await import("./fetch-
|
|
135
|
+
const { fetchCommand } = await import("./fetch-SC43UYLV.js");
|
|
136
136
|
await fetchCommand(args);
|
|
137
137
|
}
|
|
138
138
|
).command(
|
|
@@ -158,7 +158,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
158
158
|
description: TOOL_PARAMS.checkEndpointSchema.headers
|
|
159
159
|
}).epilogue(DESCRIPTIONS.checkEndpointSchema.epilogue),
|
|
160
160
|
async (args) => {
|
|
161
|
-
const { checkCommand } = await import("./check-
|
|
161
|
+
const { checkCommand } = await import("./check-PGUEDKO5.js");
|
|
162
162
|
await checkCommand({
|
|
163
163
|
...args,
|
|
164
164
|
url: args.url,
|
|
@@ -176,7 +176,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
176
176
|
demandOption: true
|
|
177
177
|
}),
|
|
178
178
|
async (args) => {
|
|
179
|
-
const { tryCommand } = await import("./try-
|
|
179
|
+
const { tryCommand } = await import("./try-NEU56CHG.js");
|
|
180
180
|
await tryCommand(args);
|
|
181
181
|
}
|
|
182
182
|
).command(
|
|
@@ -198,7 +198,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
198
198
|
description: TOOL_PARAMS.search.page
|
|
199
199
|
}),
|
|
200
200
|
async (args) => {
|
|
201
|
-
const { searchCommand } = await import("./search-
|
|
201
|
+
const { searchCommand } = await import("./search-H32FUHXO.js");
|
|
202
202
|
await searchCommand(args);
|
|
203
203
|
}
|
|
204
204
|
).command(
|
|
@@ -213,7 +213,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
213
213
|
description: TOOL_PARAMS.discoverApiEndpoints.includeGuidance
|
|
214
214
|
}).epilogue(DESCRIPTIONS.discoverApiEndpoints.epilogue),
|
|
215
215
|
async (args) => {
|
|
216
|
-
const { discoverCommand } = await import("./discover-
|
|
216
|
+
const { discoverCommand } = await import("./discover-OGK3JBEU.js");
|
|
217
217
|
await discoverCommand(args);
|
|
218
218
|
}
|
|
219
219
|
).command(
|
|
@@ -225,7 +225,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
225
225
|
demandOption: true
|
|
226
226
|
}),
|
|
227
227
|
async (args) => {
|
|
228
|
-
const { registerCommand } = await import("./register-
|
|
228
|
+
const { registerCommand } = await import("./register-NMKUVK6Z.js");
|
|
229
229
|
await registerCommand(args);
|
|
230
230
|
}
|
|
231
231
|
).command(
|
|
@@ -237,7 +237,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
237
237
|
demandOption: true
|
|
238
238
|
}),
|
|
239
239
|
async (args) => {
|
|
240
|
-
const { addSkillCommand } = await import("./add-skill-
|
|
240
|
+
const { addSkillCommand } = await import("./add-skill-CFGMBWS4.js");
|
|
241
241
|
await addSkillCommand(args);
|
|
242
242
|
}
|
|
243
243
|
).command(
|
|
@@ -252,7 +252,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
252
252
|
demandOption: true
|
|
253
253
|
}),
|
|
254
254
|
async (args) => {
|
|
255
|
-
const { originsAddCommand } = await import("./origins-
|
|
255
|
+
const { originsAddCommand } = await import("./origins-YOHZN3QI.js");
|
|
256
256
|
await originsAddCommand(args);
|
|
257
257
|
}
|
|
258
258
|
).command(
|
|
@@ -260,7 +260,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
260
260
|
"List all registered origins",
|
|
261
261
|
(yargs3) => yargs3,
|
|
262
262
|
async (args) => {
|
|
263
|
-
const { originsListCommand } = await import("./origins-
|
|
263
|
+
const { originsListCommand } = await import("./origins-YOHZN3QI.js");
|
|
264
264
|
await originsListCommand(args);
|
|
265
265
|
}
|
|
266
266
|
).command(
|
|
@@ -272,7 +272,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
272
272
|
demandOption: true
|
|
273
273
|
}),
|
|
274
274
|
async (args) => {
|
|
275
|
-
const { originsRemoveCommand } = await import("./origins-
|
|
275
|
+
const { originsRemoveCommand } = await import("./origins-YOHZN3QI.js");
|
|
276
276
|
await originsRemoveCommand(args);
|
|
277
277
|
}
|
|
278
278
|
).demandCommand(1, "You must specify an origins subcommand").strict(),
|
|
@@ -316,7 +316,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
316
316
|
description: "The invite code to redeem (optional)"
|
|
317
317
|
}),
|
|
318
318
|
async (args) => {
|
|
319
|
-
const { onboardCommand } = await import("./onboard-
|
|
319
|
+
const { onboardCommand } = await import("./onboard-VZ4MNINC.js");
|
|
320
320
|
await onboardCommand({ ...args, code: args.code ?? args.invite });
|
|
321
321
|
}
|
|
322
322
|
).command(
|
|
@@ -445,7 +445,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
445
445
|
description: TOOL_PARAMS.reportError.fullReport
|
|
446
446
|
}),
|
|
447
447
|
async (args) => {
|
|
448
|
-
const { reportErrorCommand } = await import("./report-error-
|
|
448
|
+
const { reportErrorCommand } = await import("./report-error-HQBVDKDU.js");
|
|
449
449
|
await reportErrorCommand(args);
|
|
450
450
|
}
|
|
451
451
|
).command(
|
|
@@ -467,7 +467,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
467
467
|
required: true
|
|
468
468
|
}),
|
|
469
469
|
async (args) => {
|
|
470
|
-
const { bridgeCommand } = await import("./bridge-
|
|
470
|
+
const { bridgeCommand } = await import("./bridge-4SWPSBWP.js");
|
|
471
471
|
await bridgeCommand(args);
|
|
472
472
|
}
|
|
473
473
|
).command(
|
|
@@ -475,7 +475,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
475
475
|
"Start the MCP server (default when no command specified)",
|
|
476
476
|
(yargs2) => yargs2,
|
|
477
477
|
async (args) => {
|
|
478
|
-
const { serverCommand } = await import("./server-
|
|
478
|
+
const { serverCommand } = await import("./server-YVMRCPCF.js");
|
|
479
479
|
await serverCommand(args);
|
|
480
480
|
}
|
|
481
481
|
).command(
|
|
@@ -489,7 +489,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
489
489
|
default: isClaudeCode ? "claude-code" /* ClaudeCode */ : void 0
|
|
490
490
|
}),
|
|
491
491
|
async (args) => {
|
|
492
|
-
const { installMcpServer } = await import("./install-
|
|
492
|
+
const { installMcpServer } = await import("./install-ONQHFNPS.js");
|
|
493
493
|
await installMcpServer(args);
|
|
494
494
|
}
|
|
495
495
|
).command(
|
|
@@ -501,10 +501,10 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
501
501
|
await fundMcpServer(args);
|
|
502
502
|
}
|
|
503
503
|
).example(
|
|
504
|
-
`$0 fetch "https://stableenrich.dev/api/
|
|
504
|
+
`$0 fetch "https://stableenrich.dev/api/pdl/people-enrich" -m POST -b '{"profile":"https://www.linkedin.com/in/example"}'`,
|
|
505
505
|
"Fetch with x402 payment"
|
|
506
506
|
).example(
|
|
507
|
-
'$0 check "https://stableenrich.dev/api/
|
|
507
|
+
'$0 check "https://stableenrich.dev/api/fullenrich/people-search"',
|
|
508
508
|
"Check endpoint pricing"
|
|
509
509
|
).example(
|
|
510
510
|
'$0 discover "https://stableenrich.dev"',
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport yargs, { type Argv } from 'yargs';\nimport { hideBin } from 'yargs/helpers';\nimport { clients, Clients } from './cli/commands/install/clients';\nimport {\n paymentNetworks,\n paymentProtocols,\n requestMethodValues,\n} from '@/shared/request/schemas/core';\nimport { MCP_VERSION } from '@/shared/version';\nimport {\n DESCRIPTIONS,\n TOOL_PARAMS,\n buildServerInstructions,\n} from '@/shared/descriptions';\nimport { loadUserOrigins } from '@/shared/user-origins';\nimport { randomBytes } from 'crypto';\nimport type { GlobalFlags } from './types';\n\nconst isClaudeCode = Boolean(process.env.CLAUDECODE);\nconst defaultYes = isClaudeCode || Boolean(process.env.CI);\n\nconst configureFetchCommand = (\n command: Argv<GlobalFlags>,\n params: typeof TOOL_PARAMS.fetch,\n epilogue: string\n) =>\n command\n .positional('url', {\n type: 'string',\n description: params.url,\n demandOption: true,\n })\n .option('method', {\n alias: 'm',\n type: 'string',\n description: params.method,\n choices: requestMethodValues,\n })\n .option('body', {\n alias: 'b',\n type: 'string',\n description: params.body,\n })\n .option('headers', {\n alias: ['H', 'header'],\n type: 'string',\n array: true,\n description: params.headers,\n })\n .option('timeout', {\n type: 'number',\n description: params.timeout,\n })\n .option('payment-protocol', {\n alias: 'p',\n type: 'string',\n description: params.paymentProtocol,\n choices: paymentProtocols,\n })\n .option('payment-network', {\n type: 'string',\n description: params.paymentNetwork,\n choices: paymentNetworks,\n })\n .option('max-amount', {\n type: 'number',\n description: params.maxAmount,\n })\n .option('stream', {\n type: 'boolean',\n description: params.stream,\n })\n .epilogue(epilogue);\n\nvoid yargs(hideBin(process.argv))\n .scriptName('agentcash')\n .usage('$0 [command] [options]')\n .option('dev', {\n type: 'boolean',\n description: 'Enable dev mode (use localhost endpoints)',\n default: false,\n })\n .option('invite', {\n type: 'string',\n description: 'Invite code to redeem for starter money',\n required: false,\n })\n .option('yes', {\n alias: 'y',\n type: 'boolean',\n description: 'Yes to all prompts',\n default: defaultYes ? true : undefined,\n })\n .option('sessionId', {\n type: 'string',\n description:\n 'Session ID for matching requests (auto-generated if not provided)',\n required: false,\n default: randomBytes(16).toString('hex'),\n })\n .option('provider', {\n type: 'string',\n description: 'Provider to use for the MCP server',\n required: false,\n default: `agentcash@${MCP_VERSION}`,\n })\n .option('format', {\n type: 'string',\n description:\n 'Output format: json (default for pipes) or pretty (default for TTY)',\n choices: ['json', 'pretty'] as const,\n default: process.stdout.isTTY ? ('pretty' as const) : ('json' as const),\n })\n .option('quiet', {\n alias: 'q',\n type: 'boolean',\n description: 'Suppress stderr output',\n default: false,\n })\n .option('verbose', {\n alias: 'v',\n type: 'boolean',\n description: 'Enable verbose logging (debug output to stderr)',\n default: false,\n })\n .middleware(async argv => {\n // Configure CLI context for shared modules (like logging)\n if (argv.verbose) {\n const { configureCliContext } = await import('@/cli/lib/context');\n configureCliContext({ verbose: true });\n }\n })\n // ============================================================\n // Core CLI Commands (for agent/programmatic use)\n // ============================================================\n .command(\n 'fetch <url>',\n DESCRIPTIONS.fetch.cli,\n yargs =>\n configureFetchCommand(\n yargs,\n TOOL_PARAMS.fetch,\n DESCRIPTIONS.fetch.epilogue\n ),\n async args => {\n const { fetchCommand } = await import('@/cli/commands/fetch');\n await fetchCommand(args);\n }\n )\n .command(\n 'fetch-auth <url>',\n DESCRIPTIONS.fetchWithAuth.cli,\n yargs =>\n configureFetchCommand(\n yargs,\n TOOL_PARAMS.fetchWithAuth,\n DESCRIPTIONS.fetchWithAuth.epilogue\n ),\n async args => {\n const { fetchCommand } = await import('@/cli/commands/fetch');\n await fetchCommand(args);\n }\n )\n .command(\n 'check <url>',\n DESCRIPTIONS.checkEndpointSchema.cli,\n yargs =>\n yargs\n .positional('url', {\n type: 'string',\n description: TOOL_PARAMS.checkEndpointSchema.url,\n demandOption: true,\n })\n .option('method', {\n alias: 'm',\n type: 'string',\n description: TOOL_PARAMS.checkEndpointSchema.method,\n choices: requestMethodValues,\n })\n .option('body', {\n alias: 'b',\n type: 'string',\n description: TOOL_PARAMS.checkEndpointSchema.body,\n })\n .option('headers', {\n alias: ['H', 'header'],\n type: 'string',\n array: true,\n description: TOOL_PARAMS.checkEndpointSchema.headers,\n })\n .epilogue(DESCRIPTIONS.checkEndpointSchema.epilogue),\n async args => {\n const { checkCommand } = await import('@/cli/commands/check');\n await checkCommand({\n ...args,\n url: args.url,\n method: args.method,\n body: args.body,\n headers: args.headers,\n });\n }\n )\n .command(\n 'try <url>',\n DESCRIPTIONS.try.cli,\n yargs =>\n yargs.positional('url', {\n type: 'string',\n description: TOOL_PARAMS.try.url,\n demandOption: true,\n }),\n async args => {\n const { tryCommand } = await import('@/cli/commands/try');\n await tryCommand(args);\n }\n )\n .command(\n 'search <query>',\n DESCRIPTIONS.search.cli,\n yargs =>\n yargs\n .positional('query', {\n type: 'string',\n description: TOOL_PARAMS.search.query,\n demandOption: true,\n })\n .option('broad', {\n type: 'boolean',\n description: TOOL_PARAMS.search.broad,\n default: false,\n })\n .option('limit', {\n type: 'number',\n description: TOOL_PARAMS.search.limit,\n })\n .option('page', {\n type: 'number',\n description: TOOL_PARAMS.search.page,\n }),\n async args => {\n const { searchCommand } = await import('@/cli/commands/search');\n await searchCommand(args);\n }\n )\n .command(\n 'discover <url>',\n DESCRIPTIONS.discoverApiEndpoints.cli,\n yargs =>\n yargs\n .positional('url', {\n type: 'string',\n description: TOOL_PARAMS.discoverApiEndpoints.url,\n demandOption: true,\n })\n .option('include-guidance', {\n type: 'boolean',\n description: TOOL_PARAMS.discoverApiEndpoints.includeGuidance,\n })\n .epilogue(DESCRIPTIONS.discoverApiEndpoints.epilogue),\n async args => {\n const { discoverCommand } = await import('@/cli/commands/discover');\n await discoverCommand(args);\n }\n )\n .command(\n 'register <url>',\n 'Register an origin with agentcash (discover + index endpoints)',\n yargs =>\n yargs.positional('url', {\n type: 'string',\n description: 'The origin URL to register',\n demandOption: true,\n }),\n async args => {\n const { registerCommand } = await import('@/cli/commands/register');\n await registerCommand(args);\n }\n )\n .command(\n 'add <url>',\n 'Add an origin and install its skill to agent clients. The origin is added to the MCP server description.',\n yargs =>\n yargs.positional('url', {\n type: 'string',\n description: TOOL_PARAMS.add.url,\n demandOption: true,\n }),\n async args => {\n const { addSkillCommand } = await import('@/cli/commands/add-skill');\n await addSkillCommand(args);\n }\n )\n .command(\n 'origins',\n 'Manage registered origins',\n yargs =>\n yargs\n .command(\n 'add <url>',\n 'Add an origin to agent clients. The origin is added to the MCP server description.',\n yargs =>\n yargs.positional('url', {\n type: 'string',\n description: 'The origin URL to register',\n demandOption: true,\n }),\n async args => {\n const { originsAddCommand } =\n await import('@/cli/commands/origins');\n await originsAddCommand(args);\n }\n )\n .command(\n 'list',\n 'List all registered origins',\n yargs => yargs,\n async args => {\n const { originsListCommand } =\n await import('@/cli/commands/origins');\n await originsListCommand(args);\n }\n )\n .command(\n 'remove <url>',\n 'Remove a user-added origin',\n yargs =>\n yargs.positional('url', {\n type: 'string',\n description: 'The origin URL to remove',\n demandOption: true,\n }),\n async args => {\n const { originsRemoveCommand } =\n await import('@/cli/commands/origins');\n await originsRemoveCommand(args);\n }\n )\n .demandCommand(1, 'You must specify an origins subcommand')\n .strict(),\n () => {\n // Show help for origins command\n }\n )\n .command(\n 'sessions',\n 'Manage MPP session payment channels',\n yargs =>\n yargs\n .command(\n 'close <channelId>',\n DESCRIPTIONS.closeSession.cli,\n yargs =>\n yargs\n .positional('channelId', {\n type: 'string',\n description: TOOL_PARAMS.closeSession.channelId,\n demandOption: true,\n })\n .option('url', {\n type: 'string',\n description: TOOL_PARAMS.closeSession.url,\n demandOption: true,\n })\n .option('cumulative-amount-raw', {\n type: 'string',\n description: TOOL_PARAMS.closeSession.cumulativeAmountRaw,\n })\n .epilogue(DESCRIPTIONS.closeSession.epilogue),\n async args => {\n const { sessionsCloseCommand } =\n await import('@/cli/commands/sessions');\n await sessionsCloseCommand({\n ...args,\n channelId: args.channelId,\n url: args.url,\n cumulativeAmountRaw: args.cumulativeAmountRaw,\n });\n }\n )\n .demandCommand(1, 'You must specify a sessions subcommand')\n .strict(),\n () => {\n // Show help for sessions command\n }\n )\n .command(\n 'onboard [code]',\n 'Non-interactive onboarding flow for agentcash wallet + MCP setup',\n yargs =>\n yargs.positional('code', {\n type: 'string',\n description: 'The invite code to redeem (optional)',\n }),\n async args => {\n const { onboardCommand } = await import('@/cli/commands/onboard');\n await onboardCommand({ ...args, code: args.code ?? args.invite });\n }\n )\n .command(\n 'wallet',\n 'Deprecated wallet command aliases',\n yargs =>\n yargs\n .command(\n 'info',\n \"Deprecated alias. Prints migration guidance for 'balance' and 'accounts'.\",\n yargs => yargs,\n async args => {\n const { legacyWalletInfoCommand } =\n await import('@/cli/commands/wallet');\n await legacyWalletInfoCommand(args);\n }\n )\n .command(\n 'balance',\n \"Deprecated alias. Prints migration guidance for 'balance'.\",\n yargs => yargs,\n async args => {\n const { legacyWalletBalanceCommand } =\n await import('@/cli/commands/wallet');\n await legacyWalletBalanceCommand(args);\n }\n )\n .command(\n 'redeem <code>',\n \"Deprecated alias. Prints migration guidance for 'redeem <code>'.\",\n yargs =>\n yargs.positional('code', {\n type: 'string',\n description: TOOL_PARAMS.redeemInvite.code,\n demandOption: true,\n }),\n async args => {\n const { legacyWalletRedeemCommand } =\n await import('@/cli/commands/wallet');\n await legacyWalletRedeemCommand(args);\n }\n )\n .command(\n 'address',\n 'Deprecated alias for wallet address lookup.',\n yargs => yargs,\n async args => {\n const { legacyWalletAddressCommand } =\n await import('@/cli/commands/wallet');\n await legacyWalletAddressCommand(args);\n }\n )\n .demandCommand(1, 'You must specify a wallet subcommand')\n .strict(),\n () => {\n // Show help for wallet command\n }\n )\n .command(\n 'balance',\n DESCRIPTIONS.getBalance.cli,\n yargs => yargs,\n async args => {\n const { getBalanceCommand } = await import('@/cli/commands/wallet');\n await getBalanceCommand(args);\n }\n )\n .command(\n 'accounts',\n DESCRIPTIONS.listAccounts.cli,\n yargs => yargs,\n async args => {\n const { listAccountsCommand } = await import('@/cli/commands/wallet');\n await listAccountsCommand(args);\n }\n )\n .command(\n 'redeem <code>',\n DESCRIPTIONS.redeemInvite.cli,\n yargs =>\n yargs.positional('code', {\n type: 'string',\n description: TOOL_PARAMS.redeemInvite.code,\n demandOption: true,\n }),\n async args => {\n const { walletRedeemCommand } = await import('@/cli/commands/wallet');\n await walletRedeemCommand(args);\n }\n )\n .command(\n 'settings',\n 'View and update user settings',\n yargs =>\n yargs\n .command(\n 'get',\n 'Show current settings',\n yargs => yargs,\n async args => {\n const { settingsGetCommand } =\n await import('@/cli/commands/settings');\n await settingsGetCommand(args);\n }\n )\n .command(\n 'set <key> <value>',\n 'Update a setting (e.g. settings set maxAmount 10)',\n yargs =>\n yargs\n .positional('key', {\n type: 'string',\n description: 'Setting name (e.g. maxAmount)',\n demandOption: true,\n })\n .positional('value', {\n type: 'string',\n description: 'Setting value',\n demandOption: true,\n }),\n async args => {\n const { settingsSetCommand } =\n await import('@/cli/commands/settings');\n await settingsSetCommand(args);\n }\n )\n .demandCommand(1, 'You must specify a settings subcommand')\n .strict(),\n () => {\n // Show help for settings command\n }\n )\n .command(\n 'report-error',\n DESCRIPTIONS.reportError.cli,\n yargs =>\n yargs\n .option('tool', {\n type: 'string',\n description: TOOL_PARAMS.reportError.tool,\n demandOption: true,\n })\n .option('summary', {\n type: 'string',\n description: TOOL_PARAMS.reportError.summary,\n demandOption: true,\n })\n .option('error-message', {\n type: 'string',\n description: TOOL_PARAMS.reportError.errorMessage,\n demandOption: true,\n })\n .option('resource', {\n type: 'string',\n description: TOOL_PARAMS.reportError.resource,\n })\n .option('stack', {\n type: 'string',\n description: TOOL_PARAMS.reportError.stack,\n })\n .option('full-report', {\n type: 'string',\n description: TOOL_PARAMS.reportError.fullReport,\n }),\n async args => {\n const { reportErrorCommand } =\n await import('@/cli/commands/report-error');\n await reportErrorCommand(args);\n }\n )\n .command(\n DESCRIPTIONS.bridge.toolNames.cli,\n DESCRIPTIONS.bridge.cli,\n yargs =>\n yargs\n .option('from', {\n type: 'string',\n description: TOOL_PARAMS.bridge.from,\n choices: paymentNetworks,\n required: true,\n })\n .option('to', {\n type: 'string',\n description: TOOL_PARAMS.bridge.to,\n choices: paymentNetworks,\n required: true,\n })\n .option('amount', {\n type: 'number',\n description: TOOL_PARAMS.bridge.amount,\n required: true,\n }),\n async args => {\n const { bridgeCommand } = await import('@/cli/commands/bridge');\n await bridgeCommand(args);\n }\n )\n // ============================================================\n // Server & Installation Commands\n // ============================================================\n .command(\n ['$0', 'server'],\n 'Start the MCP server (default when no command specified)',\n yargs => yargs,\n async args => {\n const { serverCommand } = await import('@/cli/commands/server');\n await serverCommand(args);\n }\n )\n .command(\n 'install',\n 'Install the MCP server configuration for a client',\n yargs =>\n yargs.option('client', {\n type: 'string',\n description: 'The client name',\n choices: clients,\n required: false,\n default: isClaudeCode ? Clients.ClaudeCode : undefined,\n }),\n async args => {\n const { installMcpServer } = await import('@/cli/commands/install');\n await installMcpServer(args);\n }\n )\n .command(\n 'fund',\n 'Open the funding page to add USDC to your wallet',\n yargs => yargs,\n async args => {\n const { fundMcpServer } = await import('@/cli/commands/fund');\n await fundMcpServer(args);\n }\n )\n .example(\n '$0 fetch \"https://stableenrich.dev/api/apollo/people-enrich\" -m POST -b \\'{\"email\":\"user@example.com\"}\\'',\n 'Fetch with x402 payment'\n )\n .example(\n '$0 check \"https://stableenrich.dev/api/apollo/people-enrich\"',\n 'Check endpoint pricing'\n )\n .example(\n '$0 discover \"https://stableenrich.dev\"',\n 'Discover endpoints on origin'\n )\n .example(\n '$0 register \"https://stableenrich.dev\"',\n 'Register origin with agentcash'\n )\n .example(\n '$0 onboard ABC123',\n 'Install onboarding skill, configure MCP, and redeem an invite'\n )\n .example('$0 search \"flight data\"', 'Search for APIs by description')\n .example('$0 balance', 'Get wallet balance')\n .example('$0 accounts', 'List wallet accounts by network')\n .example('$0 redeem ABC123', 'Redeem invite code')\n .example('$0', 'Start MCP server (default)')\n .example('$0 install --client cursor', 'Install MCP for Cursor')\n .strict()\n .epilogue(buildServerInstructions(loadUserOrigins()))\n .help()\n .version(MCP_VERSION)\n .parseAsync()\n .catch(err => {\n // Output error in JSON format for agent consumption\n const response = {\n success: false,\n error: {\n code: 'GENERAL_ERROR',\n message: err instanceof Error ? err.message : String(err),\n surface: 'cli',\n cause: 'unknown',\n },\n };\n console.log(JSON.stringify(response, null, 2));\n process.exit(1);\n });\n"],"mappings":"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","names":["yargs"]}
|
|
1
|
+
{"version":3,"sources":["../../src/index.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport yargs, { type Argv } from 'yargs';\nimport { hideBin } from 'yargs/helpers';\nimport { clients, Clients } from './cli/commands/install/clients';\nimport {\n paymentNetworks,\n paymentProtocols,\n requestMethodValues,\n} from '@/shared/request/schemas/core';\nimport { MCP_VERSION } from '@/shared/version';\nimport {\n DESCRIPTIONS,\n TOOL_PARAMS,\n buildServerInstructions,\n} from '@/shared/descriptions';\nimport { loadUserOrigins } from '@/shared/user-origins';\nimport { randomBytes } from 'crypto';\nimport type { GlobalFlags } from './types';\n\nconst isClaudeCode = Boolean(process.env.CLAUDECODE);\nconst defaultYes = isClaudeCode || Boolean(process.env.CI);\n\nconst configureFetchCommand = (\n command: Argv<GlobalFlags>,\n params: typeof TOOL_PARAMS.fetch,\n epilogue: string\n) =>\n command\n .positional('url', {\n type: 'string',\n description: params.url,\n demandOption: true,\n })\n .option('method', {\n alias: 'm',\n type: 'string',\n description: params.method,\n choices: requestMethodValues,\n })\n .option('body', {\n alias: 'b',\n type: 'string',\n description: params.body,\n })\n .option('headers', {\n alias: ['H', 'header'],\n type: 'string',\n array: true,\n description: params.headers,\n })\n .option('timeout', {\n type: 'number',\n description: params.timeout,\n })\n .option('payment-protocol', {\n alias: 'p',\n type: 'string',\n description: params.paymentProtocol,\n choices: paymentProtocols,\n })\n .option('payment-network', {\n type: 'string',\n description: params.paymentNetwork,\n choices: paymentNetworks,\n })\n .option('max-amount', {\n type: 'number',\n description: params.maxAmount,\n })\n .option('stream', {\n type: 'boolean',\n description: params.stream,\n })\n .epilogue(epilogue);\n\nvoid yargs(hideBin(process.argv))\n .scriptName('agentcash')\n .usage('$0 [command] [options]')\n .option('dev', {\n type: 'boolean',\n description: 'Enable dev mode (use localhost endpoints)',\n default: false,\n })\n .option('invite', {\n type: 'string',\n description: 'Invite code to redeem for starter money',\n required: false,\n })\n .option('yes', {\n alias: 'y',\n type: 'boolean',\n description: 'Yes to all prompts',\n default: defaultYes ? true : undefined,\n })\n .option('sessionId', {\n type: 'string',\n description:\n 'Session ID for matching requests (auto-generated if not provided)',\n required: false,\n default: randomBytes(16).toString('hex'),\n })\n .option('provider', {\n type: 'string',\n description: 'Provider to use for the MCP server',\n required: false,\n default: `agentcash@${MCP_VERSION}`,\n })\n .option('format', {\n type: 'string',\n description:\n 'Output format: json (default for pipes) or pretty (default for TTY)',\n choices: ['json', 'pretty'] as const,\n default: process.stdout.isTTY ? ('pretty' as const) : ('json' as const),\n })\n .option('quiet', {\n alias: 'q',\n type: 'boolean',\n description: 'Suppress stderr output',\n default: false,\n })\n .option('verbose', {\n alias: 'v',\n type: 'boolean',\n description: 'Enable verbose logging (debug output to stderr)',\n default: false,\n })\n .middleware(async argv => {\n // Configure CLI context for shared modules (like logging)\n if (argv.verbose) {\n const { configureCliContext } = await import('@/cli/lib/context');\n configureCliContext({ verbose: true });\n }\n })\n // ============================================================\n // Core CLI Commands (for agent/programmatic use)\n // ============================================================\n .command(\n 'fetch <url>',\n DESCRIPTIONS.fetch.cli,\n yargs =>\n configureFetchCommand(\n yargs,\n TOOL_PARAMS.fetch,\n DESCRIPTIONS.fetch.epilogue\n ),\n async args => {\n const { fetchCommand } = await import('@/cli/commands/fetch');\n await fetchCommand(args);\n }\n )\n .command(\n 'fetch-auth <url>',\n DESCRIPTIONS.fetchWithAuth.cli,\n yargs =>\n configureFetchCommand(\n yargs,\n TOOL_PARAMS.fetchWithAuth,\n DESCRIPTIONS.fetchWithAuth.epilogue\n ),\n async args => {\n const { fetchCommand } = await import('@/cli/commands/fetch');\n await fetchCommand(args);\n }\n )\n .command(\n 'check <url>',\n DESCRIPTIONS.checkEndpointSchema.cli,\n yargs =>\n yargs\n .positional('url', {\n type: 'string',\n description: TOOL_PARAMS.checkEndpointSchema.url,\n demandOption: true,\n })\n .option('method', {\n alias: 'm',\n type: 'string',\n description: TOOL_PARAMS.checkEndpointSchema.method,\n choices: requestMethodValues,\n })\n .option('body', {\n alias: 'b',\n type: 'string',\n description: TOOL_PARAMS.checkEndpointSchema.body,\n })\n .option('headers', {\n alias: ['H', 'header'],\n type: 'string',\n array: true,\n description: TOOL_PARAMS.checkEndpointSchema.headers,\n })\n .epilogue(DESCRIPTIONS.checkEndpointSchema.epilogue),\n async args => {\n const { checkCommand } = await import('@/cli/commands/check');\n await checkCommand({\n ...args,\n url: args.url,\n method: args.method,\n body: args.body,\n headers: args.headers,\n });\n }\n )\n .command(\n 'try <url>',\n DESCRIPTIONS.try.cli,\n yargs =>\n yargs.positional('url', {\n type: 'string',\n description: TOOL_PARAMS.try.url,\n demandOption: true,\n }),\n async args => {\n const { tryCommand } = await import('@/cli/commands/try');\n await tryCommand(args);\n }\n )\n .command(\n 'search <query>',\n DESCRIPTIONS.search.cli,\n yargs =>\n yargs\n .positional('query', {\n type: 'string',\n description: TOOL_PARAMS.search.query,\n demandOption: true,\n })\n .option('broad', {\n type: 'boolean',\n description: TOOL_PARAMS.search.broad,\n default: false,\n })\n .option('limit', {\n type: 'number',\n description: TOOL_PARAMS.search.limit,\n })\n .option('page', {\n type: 'number',\n description: TOOL_PARAMS.search.page,\n }),\n async args => {\n const { searchCommand } = await import('@/cli/commands/search');\n await searchCommand(args);\n }\n )\n .command(\n 'discover <url>',\n DESCRIPTIONS.discoverApiEndpoints.cli,\n yargs =>\n yargs\n .positional('url', {\n type: 'string',\n description: TOOL_PARAMS.discoverApiEndpoints.url,\n demandOption: true,\n })\n .option('include-guidance', {\n type: 'boolean',\n description: TOOL_PARAMS.discoverApiEndpoints.includeGuidance,\n })\n .epilogue(DESCRIPTIONS.discoverApiEndpoints.epilogue),\n async args => {\n const { discoverCommand } = await import('@/cli/commands/discover');\n await discoverCommand(args);\n }\n )\n .command(\n 'register <url>',\n 'Register an origin with agentcash (discover + index endpoints)',\n yargs =>\n yargs.positional('url', {\n type: 'string',\n description: 'The origin URL to register',\n demandOption: true,\n }),\n async args => {\n const { registerCommand } = await import('@/cli/commands/register');\n await registerCommand(args);\n }\n )\n .command(\n 'add <url>',\n 'Add an origin and install its skill to agent clients. The origin is added to the MCP server description.',\n yargs =>\n yargs.positional('url', {\n type: 'string',\n description: TOOL_PARAMS.add.url,\n demandOption: true,\n }),\n async args => {\n const { addSkillCommand } = await import('@/cli/commands/add-skill');\n await addSkillCommand(args);\n }\n )\n .command(\n 'origins',\n 'Manage registered origins',\n yargs =>\n yargs\n .command(\n 'add <url>',\n 'Add an origin to agent clients. The origin is added to the MCP server description.',\n yargs =>\n yargs.positional('url', {\n type: 'string',\n description: 'The origin URL to register',\n demandOption: true,\n }),\n async args => {\n const { originsAddCommand } =\n await import('@/cli/commands/origins');\n await originsAddCommand(args);\n }\n )\n .command(\n 'list',\n 'List all registered origins',\n yargs => yargs,\n async args => {\n const { originsListCommand } =\n await import('@/cli/commands/origins');\n await originsListCommand(args);\n }\n )\n .command(\n 'remove <url>',\n 'Remove a user-added origin',\n yargs =>\n yargs.positional('url', {\n type: 'string',\n description: 'The origin URL to remove',\n demandOption: true,\n }),\n async args => {\n const { originsRemoveCommand } =\n await import('@/cli/commands/origins');\n await originsRemoveCommand(args);\n }\n )\n .demandCommand(1, 'You must specify an origins subcommand')\n .strict(),\n () => {\n // Show help for origins command\n }\n )\n .command(\n 'sessions',\n 'Manage MPP session payment channels',\n yargs =>\n yargs\n .command(\n 'close <channelId>',\n DESCRIPTIONS.closeSession.cli,\n yargs =>\n yargs\n .positional('channelId', {\n type: 'string',\n description: TOOL_PARAMS.closeSession.channelId,\n demandOption: true,\n })\n .option('url', {\n type: 'string',\n description: TOOL_PARAMS.closeSession.url,\n demandOption: true,\n })\n .option('cumulative-amount-raw', {\n type: 'string',\n description: TOOL_PARAMS.closeSession.cumulativeAmountRaw,\n })\n .epilogue(DESCRIPTIONS.closeSession.epilogue),\n async args => {\n const { sessionsCloseCommand } =\n await import('@/cli/commands/sessions');\n await sessionsCloseCommand({\n ...args,\n channelId: args.channelId,\n url: args.url,\n cumulativeAmountRaw: args.cumulativeAmountRaw,\n });\n }\n )\n .demandCommand(1, 'You must specify a sessions subcommand')\n .strict(),\n () => {\n // Show help for sessions command\n }\n )\n .command(\n 'onboard [code]',\n 'Non-interactive onboarding flow for agentcash wallet + MCP setup',\n yargs =>\n yargs.positional('code', {\n type: 'string',\n description: 'The invite code to redeem (optional)',\n }),\n async args => {\n const { onboardCommand } = await import('@/cli/commands/onboard');\n await onboardCommand({ ...args, code: args.code ?? args.invite });\n }\n )\n .command(\n 'wallet',\n 'Deprecated wallet command aliases',\n yargs =>\n yargs\n .command(\n 'info',\n \"Deprecated alias. Prints migration guidance for 'balance' and 'accounts'.\",\n yargs => yargs,\n async args => {\n const { legacyWalletInfoCommand } =\n await import('@/cli/commands/wallet');\n await legacyWalletInfoCommand(args);\n }\n )\n .command(\n 'balance',\n \"Deprecated alias. Prints migration guidance for 'balance'.\",\n yargs => yargs,\n async args => {\n const { legacyWalletBalanceCommand } =\n await import('@/cli/commands/wallet');\n await legacyWalletBalanceCommand(args);\n }\n )\n .command(\n 'redeem <code>',\n \"Deprecated alias. Prints migration guidance for 'redeem <code>'.\",\n yargs =>\n yargs.positional('code', {\n type: 'string',\n description: TOOL_PARAMS.redeemInvite.code,\n demandOption: true,\n }),\n async args => {\n const { legacyWalletRedeemCommand } =\n await import('@/cli/commands/wallet');\n await legacyWalletRedeemCommand(args);\n }\n )\n .command(\n 'address',\n 'Deprecated alias for wallet address lookup.',\n yargs => yargs,\n async args => {\n const { legacyWalletAddressCommand } =\n await import('@/cli/commands/wallet');\n await legacyWalletAddressCommand(args);\n }\n )\n .demandCommand(1, 'You must specify a wallet subcommand')\n .strict(),\n () => {\n // Show help for wallet command\n }\n )\n .command(\n 'balance',\n DESCRIPTIONS.getBalance.cli,\n yargs => yargs,\n async args => {\n const { getBalanceCommand } = await import('@/cli/commands/wallet');\n await getBalanceCommand(args);\n }\n )\n .command(\n 'accounts',\n DESCRIPTIONS.listAccounts.cli,\n yargs => yargs,\n async args => {\n const { listAccountsCommand } = await import('@/cli/commands/wallet');\n await listAccountsCommand(args);\n }\n )\n .command(\n 'redeem <code>',\n DESCRIPTIONS.redeemInvite.cli,\n yargs =>\n yargs.positional('code', {\n type: 'string',\n description: TOOL_PARAMS.redeemInvite.code,\n demandOption: true,\n }),\n async args => {\n const { walletRedeemCommand } = await import('@/cli/commands/wallet');\n await walletRedeemCommand(args);\n }\n )\n .command(\n 'settings',\n 'View and update user settings',\n yargs =>\n yargs\n .command(\n 'get',\n 'Show current settings',\n yargs => yargs,\n async args => {\n const { settingsGetCommand } =\n await import('@/cli/commands/settings');\n await settingsGetCommand(args);\n }\n )\n .command(\n 'set <key> <value>',\n 'Update a setting (e.g. settings set maxAmount 10)',\n yargs =>\n yargs\n .positional('key', {\n type: 'string',\n description: 'Setting name (e.g. maxAmount)',\n demandOption: true,\n })\n .positional('value', {\n type: 'string',\n description: 'Setting value',\n demandOption: true,\n }),\n async args => {\n const { settingsSetCommand } =\n await import('@/cli/commands/settings');\n await settingsSetCommand(args);\n }\n )\n .demandCommand(1, 'You must specify a settings subcommand')\n .strict(),\n () => {\n // Show help for settings command\n }\n )\n .command(\n 'report-error',\n DESCRIPTIONS.reportError.cli,\n yargs =>\n yargs\n .option('tool', {\n type: 'string',\n description: TOOL_PARAMS.reportError.tool,\n demandOption: true,\n })\n .option('summary', {\n type: 'string',\n description: TOOL_PARAMS.reportError.summary,\n demandOption: true,\n })\n .option('error-message', {\n type: 'string',\n description: TOOL_PARAMS.reportError.errorMessage,\n demandOption: true,\n })\n .option('resource', {\n type: 'string',\n description: TOOL_PARAMS.reportError.resource,\n })\n .option('stack', {\n type: 'string',\n description: TOOL_PARAMS.reportError.stack,\n })\n .option('full-report', {\n type: 'string',\n description: TOOL_PARAMS.reportError.fullReport,\n }),\n async args => {\n const { reportErrorCommand } =\n await import('@/cli/commands/report-error');\n await reportErrorCommand(args);\n }\n )\n .command(\n DESCRIPTIONS.bridge.toolNames.cli,\n DESCRIPTIONS.bridge.cli,\n yargs =>\n yargs\n .option('from', {\n type: 'string',\n description: TOOL_PARAMS.bridge.from,\n choices: paymentNetworks,\n required: true,\n })\n .option('to', {\n type: 'string',\n description: TOOL_PARAMS.bridge.to,\n choices: paymentNetworks,\n required: true,\n })\n .option('amount', {\n type: 'number',\n description: TOOL_PARAMS.bridge.amount,\n required: true,\n }),\n async args => {\n const { bridgeCommand } = await import('@/cli/commands/bridge');\n await bridgeCommand(args);\n }\n )\n // ============================================================\n // Server & Installation Commands\n // ============================================================\n .command(\n ['$0', 'server'],\n 'Start the MCP server (default when no command specified)',\n yargs => yargs,\n async args => {\n const { serverCommand } = await import('@/cli/commands/server');\n await serverCommand(args);\n }\n )\n .command(\n 'install',\n 'Install the MCP server configuration for a client',\n yargs =>\n yargs.option('client', {\n type: 'string',\n description: 'The client name',\n choices: clients,\n required: false,\n default: isClaudeCode ? Clients.ClaudeCode : undefined,\n }),\n async args => {\n const { installMcpServer } = await import('@/cli/commands/install');\n await installMcpServer(args);\n }\n )\n .command(\n 'fund',\n 'Open the funding page to add USDC to your wallet',\n yargs => yargs,\n async args => {\n const { fundMcpServer } = await import('@/cli/commands/fund');\n await fundMcpServer(args);\n }\n )\n .example(\n '$0 fetch \"https://stableenrich.dev/api/pdl/people-enrich\" -m POST -b \\'{\"profile\":\"https://www.linkedin.com/in/example\"}\\'',\n 'Fetch with x402 payment'\n )\n .example(\n '$0 check \"https://stableenrich.dev/api/fullenrich/people-search\"',\n 'Check endpoint pricing'\n )\n .example(\n '$0 discover \"https://stableenrich.dev\"',\n 'Discover endpoints on origin'\n )\n .example(\n '$0 register \"https://stableenrich.dev\"',\n 'Register origin with agentcash'\n )\n .example(\n '$0 onboard ABC123',\n 'Install onboarding skill, configure MCP, and redeem an invite'\n )\n .example('$0 search \"flight data\"', 'Search for APIs by description')\n .example('$0 balance', 'Get wallet balance')\n .example('$0 accounts', 'List wallet accounts by network')\n .example('$0 redeem ABC123', 'Redeem invite code')\n .example('$0', 'Start MCP server (default)')\n .example('$0 install --client cursor', 'Install MCP for Cursor')\n .strict()\n .epilogue(buildServerInstructions(loadUserOrigins()))\n .help()\n .version(MCP_VERSION)\n .parseAsync()\n .catch(err => {\n // Output error in JSON format for agent consumption\n const response = {\n success: false,\n error: {\n code: 'GENERAL_ERROR',\n message: err instanceof Error ? err.message : String(err),\n surface: 'cli',\n cause: 'unknown',\n },\n };\n console.log(JSON.stringify(response, null, 2));\n process.exit(1);\n });\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAO,WAA0B;AACjC,SAAS,eAAe;AAcxB,SAAS,mBAAmB;AAG5B,IAAM,eAAe,QAAQ,QAAQ,IAAI,UAAU;AACnD,IAAM,aAAa,gBAAgB,QAAQ,QAAQ,IAAI,EAAE;AAEzD,IAAM,wBAAwB,CAC5B,SACA,QACA,aAEA,QACG,WAAW,OAAO;AAAA,EACjB,MAAM;AAAA,EACN,aAAa,OAAO;AAAA,EACpB,cAAc;AAChB,CAAC,EACA,OAAO,UAAU;AAAA,EAChB,OAAO;AAAA,EACP,MAAM;AAAA,EACN,aAAa,OAAO;AAAA,EACpB,SAAS;AACX,CAAC,EACA,OAAO,QAAQ;AAAA,EACd,OAAO;AAAA,EACP,MAAM;AAAA,EACN,aAAa,OAAO;AACtB,CAAC,EACA,OAAO,WAAW;AAAA,EACjB,OAAO,CAAC,KAAK,QAAQ;AAAA,EACrB,MAAM;AAAA,EACN,OAAO;AAAA,EACP,aAAa,OAAO;AACtB,CAAC,EACA,OAAO,WAAW;AAAA,EACjB,MAAM;AAAA,EACN,aAAa,OAAO;AACtB,CAAC,EACA,OAAO,oBAAoB;AAAA,EAC1B,OAAO;AAAA,EACP,MAAM;AAAA,EACN,aAAa,OAAO;AAAA,EACpB,SAAS;AACX,CAAC,EACA,OAAO,mBAAmB;AAAA,EACzB,MAAM;AAAA,EACN,aAAa,OAAO;AAAA,EACpB,SAAS;AACX,CAAC,EACA,OAAO,cAAc;AAAA,EACpB,MAAM;AAAA,EACN,aAAa,OAAO;AACtB,CAAC,EACA,OAAO,UAAU;AAAA,EAChB,MAAM;AAAA,EACN,aAAa,OAAO;AACtB,CAAC,EACA,SAAS,QAAQ;AAEtB,KAAK,MAAM,QAAQ,QAAQ,IAAI,CAAC,EAC7B,WAAW,WAAW,EACtB,MAAM,wBAAwB,EAC9B,OAAO,OAAO;AAAA,EACb,MAAM;AAAA,EACN,aAAa;AAAA,EACb,SAAS;AACX,CAAC,EACA,OAAO,UAAU;AAAA,EAChB,MAAM;AAAA,EACN,aAAa;AAAA,EACb,UAAU;AACZ,CAAC,EACA,OAAO,OAAO;AAAA,EACb,OAAO;AAAA,EACP,MAAM;AAAA,EACN,aAAa;AAAA,EACb,SAAS,aAAa,OAAO;AAC/B,CAAC,EACA,OAAO,aAAa;AAAA,EACnB,MAAM;AAAA,EACN,aACE;AAAA,EACF,UAAU;AAAA,EACV,SAAS,YAAY,EAAE,EAAE,SAAS,KAAK;AACzC,CAAC,EACA,OAAO,YAAY;AAAA,EAClB,MAAM;AAAA,EACN,aAAa;AAAA,EACb,UAAU;AAAA,EACV,SAAS,aAAa,WAAW;AACnC,CAAC,EACA,OAAO,UAAU;AAAA,EAChB,MAAM;AAAA,EACN,aACE;AAAA,EACF,SAAS,CAAC,QAAQ,QAAQ;AAAA,EAC1B,SAAS,QAAQ,OAAO,QAAS,WAAsB;AACzD,CAAC,EACA,OAAO,SAAS;AAAA,EACf,OAAO;AAAA,EACP,MAAM;AAAA,EACN,aAAa;AAAA,EACb,SAAS;AACX,CAAC,EACA,OAAO,WAAW;AAAA,EACjB,OAAO;AAAA,EACP,MAAM;AAAA,EACN,aAAa;AAAA,EACb,SAAS;AACX,CAAC,EACA,WAAW,OAAM,SAAQ;AAExB,MAAI,KAAK,SAAS;AAChB,UAAM,EAAE,oBAAoB,IAAI,MAAM,OAAO,uBAAmB;AAChE,wBAAoB,EAAE,SAAS,KAAK,CAAC;AAAA,EACvC;AACF,CAAC,EAIA;AAAA,EACC;AAAA,EACA,aAAa,MAAM;AAAA,EACnB,CAAAA,WACE;AAAA,IACEA;AAAA,IACA,YAAY;AAAA,IACZ,aAAa,MAAM;AAAA,EACrB;AAAA,EACF,OAAM,SAAQ;AACZ,UAAM,EAAE,aAAa,IAAI,MAAM,OAAO,qBAAsB;AAC5D,UAAM,aAAa,IAAI;AAAA,EACzB;AACF,EACC;AAAA,EACC;AAAA,EACA,aAAa,cAAc;AAAA,EAC3B,CAAAA,WACE;AAAA,IACEA;AAAA,IACA,YAAY;AAAA,IACZ,aAAa,cAAc;AAAA,EAC7B;AAAA,EACF,OAAM,SAAQ;AACZ,UAAM,EAAE,aAAa,IAAI,MAAM,OAAO,qBAAsB;AAC5D,UAAM,aAAa,IAAI;AAAA,EACzB;AACF,EACC;AAAA,EACC;AAAA,EACA,aAAa,oBAAoB;AAAA,EACjC,CAAAA,WACEA,OACG,WAAW,OAAO;AAAA,IACjB,MAAM;AAAA,IACN,aAAa,YAAY,oBAAoB;AAAA,IAC7C,cAAc;AAAA,EAChB,CAAC,EACA,OAAO,UAAU;AAAA,IAChB,OAAO;AAAA,IACP,MAAM;AAAA,IACN,aAAa,YAAY,oBAAoB;AAAA,IAC7C,SAAS;AAAA,EACX,CAAC,EACA,OAAO,QAAQ;AAAA,IACd,OAAO;AAAA,IACP,MAAM;AAAA,IACN,aAAa,YAAY,oBAAoB;AAAA,EAC/C,CAAC,EACA,OAAO,WAAW;AAAA,IACjB,OAAO,CAAC,KAAK,QAAQ;AAAA,IACrB,MAAM;AAAA,IACN,OAAO;AAAA,IACP,aAAa,YAAY,oBAAoB;AAAA,EAC/C,CAAC,EACA,SAAS,aAAa,oBAAoB,QAAQ;AAAA,EACvD,OAAM,SAAQ;AACZ,UAAM,EAAE,aAAa,IAAI,MAAM,OAAO,qBAAsB;AAC5D,UAAM,aAAa;AAAA,MACjB,GAAG;AAAA,MACH,KAAK,KAAK;AAAA,MACV,QAAQ,KAAK;AAAA,MACb,MAAM,KAAK;AAAA,MACX,SAAS,KAAK;AAAA,IAChB,CAAC;AAAA,EACH;AACF,EACC;AAAA,EACC;AAAA,EACA,aAAa,IAAI;AAAA,EACjB,CAAAA,WACEA,OAAM,WAAW,OAAO;AAAA,IACtB,MAAM;AAAA,IACN,aAAa,YAAY,IAAI;AAAA,IAC7B,cAAc;AAAA,EAChB,CAAC;AAAA,EACH,OAAM,SAAQ;AACZ,UAAM,EAAE,WAAW,IAAI,MAAM,OAAO,mBAAoB;AACxD,UAAM,WAAW,IAAI;AAAA,EACvB;AACF,EACC;AAAA,EACC;AAAA,EACA,aAAa,OAAO;AAAA,EACpB,CAAAA,WACEA,OACG,WAAW,SAAS;AAAA,IACnB,MAAM;AAAA,IACN,aAAa,YAAY,OAAO;AAAA,IAChC,cAAc;AAAA,EAChB,CAAC,EACA,OAAO,SAAS;AAAA,IACf,MAAM;AAAA,IACN,aAAa,YAAY,OAAO;AAAA,IAChC,SAAS;AAAA,EACX,CAAC,EACA,OAAO,SAAS;AAAA,IACf,MAAM;AAAA,IACN,aAAa,YAAY,OAAO;AAAA,EAClC,CAAC,EACA,OAAO,QAAQ;AAAA,IACd,MAAM;AAAA,IACN,aAAa,YAAY,OAAO;AAAA,EAClC,CAAC;AAAA,EACL,OAAM,SAAQ;AACZ,UAAM,EAAE,cAAc,IAAI,MAAM,OAAO,sBAAuB;AAC9D,UAAM,cAAc,IAAI;AAAA,EAC1B;AACF,EACC;AAAA,EACC;AAAA,EACA,aAAa,qBAAqB;AAAA,EAClC,CAAAA,WACEA,OACG,WAAW,OAAO;AAAA,IACjB,MAAM;AAAA,IACN,aAAa,YAAY,qBAAqB;AAAA,IAC9C,cAAc;AAAA,EAChB,CAAC,EACA,OAAO,oBAAoB;AAAA,IAC1B,MAAM;AAAA,IACN,aAAa,YAAY,qBAAqB;AAAA,EAChD,CAAC,EACA,SAAS,aAAa,qBAAqB,QAAQ;AAAA,EACxD,OAAM,SAAQ;AACZ,UAAM,EAAE,gBAAgB,IAAI,MAAM,OAAO,wBAAyB;AAClE,UAAM,gBAAgB,IAAI;AAAA,EAC5B;AACF,EACC;AAAA,EACC;AAAA,EACA;AAAA,EACA,CAAAA,WACEA,OAAM,WAAW,OAAO;AAAA,IACtB,MAAM;AAAA,IACN,aAAa;AAAA,IACb,cAAc;AAAA,EAChB,CAAC;AAAA,EACH,OAAM,SAAQ;AACZ,UAAM,EAAE,gBAAgB,IAAI,MAAM,OAAO,wBAAyB;AAClE,UAAM,gBAAgB,IAAI;AAAA,EAC5B;AACF,EACC;AAAA,EACC;AAAA,EACA;AAAA,EACA,CAAAA,WACEA,OAAM,WAAW,OAAO;AAAA,IACtB,MAAM;AAAA,IACN,aAAa,YAAY,IAAI;AAAA,IAC7B,cAAc;AAAA,EAChB,CAAC;AAAA,EACH,OAAM,SAAQ;AACZ,UAAM,EAAE,gBAAgB,IAAI,MAAM,OAAO,yBAA0B;AACnE,UAAM,gBAAgB,IAAI;AAAA,EAC5B;AACF,EACC;AAAA,EACC;AAAA,EACA;AAAA,EACA,CAAAA,WACEA,OACG;AAAA,IACC;AAAA,IACA;AAAA,IACA,CAAAA,WACEA,OAAM,WAAW,OAAO;AAAA,MACtB,MAAM;AAAA,MACN,aAAa;AAAA,MACb,cAAc;AAAA,IAChB,CAAC;AAAA,IACH,OAAM,SAAQ;AACZ,YAAM,EAAE,kBAAkB,IACxB,MAAM,OAAO,uBAAwB;AACvC,YAAM,kBAAkB,IAAI;AAAA,IAC9B;AAAA,EACF,EACC;AAAA,IACC;AAAA,IACA;AAAA,IACA,CAAAA,WAASA;AAAA,IACT,OAAM,SAAQ;AACZ,YAAM,EAAE,mBAAmB,IACzB,MAAM,OAAO,uBAAwB;AACvC,YAAM,mBAAmB,IAAI;AAAA,IAC/B;AAAA,EACF,EACC;AAAA,IACC;AAAA,IACA;AAAA,IACA,CAAAA,WACEA,OAAM,WAAW,OAAO;AAAA,MACtB,MAAM;AAAA,MACN,aAAa;AAAA,MACb,cAAc;AAAA,IAChB,CAAC;AAAA,IACH,OAAM,SAAQ;AACZ,YAAM,EAAE,qBAAqB,IAC3B,MAAM,OAAO,uBAAwB;AACvC,YAAM,qBAAqB,IAAI;AAAA,IACjC;AAAA,EACF,EACC,cAAc,GAAG,wCAAwC,EACzD,OAAO;AAAA,EACZ,MAAM;AAAA,EAEN;AACF,EACC;AAAA,EACC;AAAA,EACA;AAAA,EACA,CAAAA,WACEA,OACG;AAAA,IACC;AAAA,IACA,aAAa,aAAa;AAAA,IAC1B,CAAAA,WACEA,OACG,WAAW,aAAa;AAAA,MACvB,MAAM;AAAA,MACN,aAAa,YAAY,aAAa;AAAA,MACtC,cAAc;AAAA,IAChB,CAAC,EACA,OAAO,OAAO;AAAA,MACb,MAAM;AAAA,MACN,aAAa,YAAY,aAAa;AAAA,MACtC,cAAc;AAAA,IAChB,CAAC,EACA,OAAO,yBAAyB;AAAA,MAC/B,MAAM;AAAA,MACN,aAAa,YAAY,aAAa;AAAA,IACxC,CAAC,EACA,SAAS,aAAa,aAAa,QAAQ;AAAA,IAChD,OAAM,SAAQ;AACZ,YAAM,EAAE,qBAAqB,IAC3B,MAAM,OAAO,wBAAyB;AACxC,YAAM,qBAAqB;AAAA,QACzB,GAAG;AAAA,QACH,WAAW,KAAK;AAAA,QAChB,KAAK,KAAK;AAAA,QACV,qBAAqB,KAAK;AAAA,MAC5B,CAAC;AAAA,IACH;AAAA,EACF,EACC,cAAc,GAAG,wCAAwC,EACzD,OAAO;AAAA,EACZ,MAAM;AAAA,EAEN;AACF,EACC;AAAA,EACC;AAAA,EACA;AAAA,EACA,CAAAA,WACEA,OAAM,WAAW,QAAQ;AAAA,IACvB,MAAM;AAAA,IACN,aAAa;AAAA,EACf,CAAC;AAAA,EACH,OAAM,SAAQ;AACZ,UAAM,EAAE,eAAe,IAAI,MAAM,OAAO,uBAAwB;AAChE,UAAM,eAAe,EAAE,GAAG,MAAM,MAAM,KAAK,QAAQ,KAAK,OAAO,CAAC;AAAA,EAClE;AACF,EACC;AAAA,EACC;AAAA,EACA;AAAA,EACA,CAAAA,WACEA,OACG;AAAA,IACC;AAAA,IACA;AAAA,IACA,CAAAA,WAASA;AAAA,IACT,OAAM,SAAQ;AACZ,YAAM,EAAE,wBAAwB,IAC9B,MAAM,OAAO,sBAAuB;AACtC,YAAM,wBAAwB,IAAI;AAAA,IACpC;AAAA,EACF,EACC;AAAA,IACC;AAAA,IACA;AAAA,IACA,CAAAA,WAASA;AAAA,IACT,OAAM,SAAQ;AACZ,YAAM,EAAE,2BAA2B,IACjC,MAAM,OAAO,sBAAuB;AACtC,YAAM,2BAA2B,IAAI;AAAA,IACvC;AAAA,EACF,EACC;AAAA,IACC;AAAA,IACA;AAAA,IACA,CAAAA,WACEA,OAAM,WAAW,QAAQ;AAAA,MACvB,MAAM;AAAA,MACN,aAAa,YAAY,aAAa;AAAA,MACtC,cAAc;AAAA,IAChB,CAAC;AAAA,IACH,OAAM,SAAQ;AACZ,YAAM,EAAE,0BAA0B,IAChC,MAAM,OAAO,sBAAuB;AACtC,YAAM,0BAA0B,IAAI;AAAA,IACtC;AAAA,EACF,EACC;AAAA,IACC;AAAA,IACA;AAAA,IACA,CAAAA,WAASA;AAAA,IACT,OAAM,SAAQ;AACZ,YAAM,EAAE,2BAA2B,IACjC,MAAM,OAAO,sBAAuB;AACtC,YAAM,2BAA2B,IAAI;AAAA,IACvC;AAAA,EACF,EACC,cAAc,GAAG,sCAAsC,EACvD,OAAO;AAAA,EACZ,MAAM;AAAA,EAEN;AACF,EACC;AAAA,EACC;AAAA,EACA,aAAa,WAAW;AAAA,EACxB,CAAAA,WAASA;AAAA,EACT,OAAM,SAAQ;AACZ,UAAM,EAAE,kBAAkB,IAAI,MAAM,OAAO,sBAAuB;AAClE,UAAM,kBAAkB,IAAI;AAAA,EAC9B;AACF,EACC;AAAA,EACC;AAAA,EACA,aAAa,aAAa;AAAA,EAC1B,CAAAA,WAASA;AAAA,EACT,OAAM,SAAQ;AACZ,UAAM,EAAE,oBAAoB,IAAI,MAAM,OAAO,sBAAuB;AACpE,UAAM,oBAAoB,IAAI;AAAA,EAChC;AACF,EACC;AAAA,EACC;AAAA,EACA,aAAa,aAAa;AAAA,EAC1B,CAAAA,WACEA,OAAM,WAAW,QAAQ;AAAA,IACvB,MAAM;AAAA,IACN,aAAa,YAAY,aAAa;AAAA,IACtC,cAAc;AAAA,EAChB,CAAC;AAAA,EACH,OAAM,SAAQ;AACZ,UAAM,EAAE,oBAAoB,IAAI,MAAM,OAAO,sBAAuB;AACpE,UAAM,oBAAoB,IAAI;AAAA,EAChC;AACF,EACC;AAAA,EACC;AAAA,EACA;AAAA,EACA,CAAAA,WACEA,OACG;AAAA,IACC;AAAA,IACA;AAAA,IACA,CAAAA,WAASA;AAAA,IACT,OAAM,SAAQ;AACZ,YAAM,EAAE,mBAAmB,IACzB,MAAM,OAAO,wBAAyB;AACxC,YAAM,mBAAmB,IAAI;AAAA,IAC/B;AAAA,EACF,EACC;AAAA,IACC;AAAA,IACA;AAAA,IACA,CAAAA,WACEA,OACG,WAAW,OAAO;AAAA,MACjB,MAAM;AAAA,MACN,aAAa;AAAA,MACb,cAAc;AAAA,IAChB,CAAC,EACA,WAAW,SAAS;AAAA,MACnB,MAAM;AAAA,MACN,aAAa;AAAA,MACb,cAAc;AAAA,IAChB,CAAC;AAAA,IACL,OAAM,SAAQ;AACZ,YAAM,EAAE,mBAAmB,IACzB,MAAM,OAAO,wBAAyB;AACxC,YAAM,mBAAmB,IAAI;AAAA,IAC/B;AAAA,EACF,EACC,cAAc,GAAG,wCAAwC,EACzD,OAAO;AAAA,EACZ,MAAM;AAAA,EAEN;AACF,EACC;AAAA,EACC;AAAA,EACA,aAAa,YAAY;AAAA,EACzB,CAAAA,WACEA,OACG,OAAO,QAAQ;AAAA,IACd,MAAM;AAAA,IACN,aAAa,YAAY,YAAY;AAAA,IACrC,cAAc;AAAA,EAChB,CAAC,EACA,OAAO,WAAW;AAAA,IACjB,MAAM;AAAA,IACN,aAAa,YAAY,YAAY;AAAA,IACrC,cAAc;AAAA,EAChB,CAAC,EACA,OAAO,iBAAiB;AAAA,IACvB,MAAM;AAAA,IACN,aAAa,YAAY,YAAY;AAAA,IACrC,cAAc;AAAA,EAChB,CAAC,EACA,OAAO,YAAY;AAAA,IAClB,MAAM;AAAA,IACN,aAAa,YAAY,YAAY;AAAA,EACvC,CAAC,EACA,OAAO,SAAS;AAAA,IACf,MAAM;AAAA,IACN,aAAa,YAAY,YAAY;AAAA,EACvC,CAAC,EACA,OAAO,eAAe;AAAA,IACrB,MAAM;AAAA,IACN,aAAa,YAAY,YAAY;AAAA,EACvC,CAAC;AAAA,EACL,OAAM,SAAQ;AACZ,UAAM,EAAE,mBAAmB,IACzB,MAAM,OAAO,4BAA6B;AAC5C,UAAM,mBAAmB,IAAI;AAAA,EAC/B;AACF,EACC;AAAA,EACC,aAAa,OAAO,UAAU;AAAA,EAC9B,aAAa,OAAO;AAAA,EACpB,CAAAA,WACEA,OACG,OAAO,QAAQ;AAAA,IACd,MAAM;AAAA,IACN,aAAa,YAAY,OAAO;AAAA,IAChC,SAAS;AAAA,IACT,UAAU;AAAA,EACZ,CAAC,EACA,OAAO,MAAM;AAAA,IACZ,MAAM;AAAA,IACN,aAAa,YAAY,OAAO;AAAA,IAChC,SAAS;AAAA,IACT,UAAU;AAAA,EACZ,CAAC,EACA,OAAO,UAAU;AAAA,IAChB,MAAM;AAAA,IACN,aAAa,YAAY,OAAO;AAAA,IAChC,UAAU;AAAA,EACZ,CAAC;AAAA,EACL,OAAM,SAAQ;AACZ,UAAM,EAAE,cAAc,IAAI,MAAM,OAAO,sBAAuB;AAC9D,UAAM,cAAc,IAAI;AAAA,EAC1B;AACF,EAIC;AAAA,EACC,CAAC,MAAM,QAAQ;AAAA,EACf;AAAA,EACA,CAAAA,WAASA;AAAA,EACT,OAAM,SAAQ;AACZ,UAAM,EAAE,cAAc,IAAI,MAAM,OAAO,sBAAuB;AAC9D,UAAM,cAAc,IAAI;AAAA,EAC1B;AACF,EACC;AAAA,EACC;AAAA,EACA;AAAA,EACA,CAAAA,WACEA,OAAM,OAAO,UAAU;AAAA,IACrB,MAAM;AAAA,IACN,aAAa;AAAA,IACb,SAAS;AAAA,IACT,UAAU;AAAA,IACV,SAAS,gDAAoC;AAAA,EAC/C,CAAC;AAAA,EACH,OAAM,SAAQ;AACZ,UAAM,EAAE,iBAAiB,IAAI,MAAM,OAAO,uBAAwB;AAClE,UAAM,iBAAiB,IAAI;AAAA,EAC7B;AACF,EACC;AAAA,EACC;AAAA,EACA;AAAA,EACA,CAAAA,WAASA;AAAA,EACT,OAAM,SAAQ;AACZ,UAAM,EAAE,cAAc,IAAI,MAAM,OAAO,oBAAqB;AAC5D,UAAM,cAAc,IAAI;AAAA,EAC1B;AACF,EACC;AAAA,EACC;AAAA,EACA;AACF,EACC;AAAA,EACC;AAAA,EACA;AACF,EACC;AAAA,EACC;AAAA,EACA;AACF,EACC;AAAA,EACC;AAAA,EACA;AACF,EACC;AAAA,EACC;AAAA,EACA;AACF,EACC,QAAQ,2BAA2B,gCAAgC,EACnE,QAAQ,cAAc,oBAAoB,EAC1C,QAAQ,eAAe,iCAAiC,EACxD,QAAQ,oBAAoB,oBAAoB,EAChD,QAAQ,MAAM,4BAA4B,EAC1C,QAAQ,8BAA8B,wBAAwB,EAC9D,OAAO,EACP,SAAS,wBAAwB,gBAAgB,CAAC,CAAC,EACnD,KAAK,EACL,QAAQ,WAAW,EACnB,WAAW,EACX,MAAM,SAAO;AAEZ,QAAM,WAAW;AAAA,IACf,SAAS;AAAA,IACT,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS,eAAe,QAAQ,IAAI,UAAU,OAAO,GAAG;AAAA,MACxD,SAAS;AAAA,MACT,OAAO;AAAA,IACT;AAAA,EACF;AACA,UAAQ,IAAI,KAAK,UAAU,UAAU,MAAM,CAAC,CAAC;AAC7C,UAAQ,KAAK,CAAC;AAChB,CAAC;","names":["yargs"]}
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-C7B6LEPE.js";
|
|
4
4
|
import {
|
|
5
5
|
addServer
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-6YIG64RH.js";
|
|
7
7
|
import {
|
|
8
8
|
wait
|
|
9
9
|
} from "./chunk-DZNSJ2BA.js";
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
Clients,
|
|
15
15
|
clientMetadata
|
|
16
16
|
} from "./chunk-27DZCYDB.js";
|
|
17
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-574342U7.js";
|
|
18
18
|
import "./chunk-ISF2WVEZ.js";
|
|
19
19
|
import {
|
|
20
20
|
getBalance
|
|
@@ -176,4 +176,4 @@ var installMcpServer = async (args) => {
|
|
|
176
176
|
export {
|
|
177
177
|
installMcpServer
|
|
178
178
|
};
|
|
179
|
-
//# sourceMappingURL=install-
|
|
179
|
+
//# sourceMappingURL=install-ONQHFNPS.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getPlatformPath,
|
|
3
3
|
tryAddServer
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-6YIG64RH.js";
|
|
5
5
|
import "./chunk-DZNSJ2BA.js";
|
|
6
6
|
import {
|
|
7
7
|
installGitHubSkill
|
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
detectAgents
|
|
14
14
|
} from "./chunk-FVVSNDQR.js";
|
|
15
15
|
import "./chunk-27DZCYDB.js";
|
|
16
|
-
import "./chunk-
|
|
16
|
+
import "./chunk-574342U7.js";
|
|
17
17
|
import {
|
|
18
18
|
getOnboardingCta,
|
|
19
19
|
getWalletInfo
|
|
@@ -381,4 +381,4 @@ var onboardCommand = async (args) => {
|
|
|
381
381
|
export {
|
|
382
382
|
onboardCommand
|
|
383
383
|
};
|
|
384
|
-
//# sourceMappingURL=onboard-
|
|
384
|
+
//# sourceMappingURL=onboard-VZ4MNINC.js.map
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import {
|
|
2
2
|
resolveOrigin
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-6IYTF6NV.js";
|
|
4
4
|
import {
|
|
5
5
|
addUserOrigin,
|
|
6
6
|
loadUserOrigins,
|
|
7
7
|
removeUserOrigin
|
|
8
8
|
} from "./chunk-YIU364NZ.js";
|
|
9
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-H7ES5FU5.js";
|
|
10
10
|
import {
|
|
11
11
|
ORIGIN_METADATA,
|
|
12
12
|
PRIMARY_ORIGINS
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-CCWBMXQT.js";
|
|
14
14
|
import "./chunk-KVSTJRSJ.js";
|
|
15
15
|
import {
|
|
16
16
|
ensureProtocol
|
|
@@ -80,4 +80,4 @@ export {
|
|
|
80
80
|
originsListCommand,
|
|
81
81
|
originsRemoveCommand
|
|
82
82
|
};
|
|
83
|
-
//# sourceMappingURL=origins-
|
|
83
|
+
//# sourceMappingURL=origins-YOHZN3QI.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
executeFetch
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-YIECO2O4.js";
|
|
4
4
|
import "./chunk-H2JGMFEG.js";
|
|
5
5
|
import "./chunk-4TIYIVZF.js";
|
|
6
6
|
import "./chunk-IKPLMFAK.js";
|
|
@@ -189,4 +189,4 @@ var registerCommand = async (args) => {
|
|
|
189
189
|
export {
|
|
190
190
|
registerCommand
|
|
191
191
|
};
|
|
192
|
-
//# sourceMappingURL=register-
|
|
192
|
+
//# sourceMappingURL=register-NMKUVK6Z.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
submitErrorReport
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-XU7NVHOY.js";
|
|
4
|
+
import "./chunk-574342U7.js";
|
|
5
5
|
import "./chunk-RAS5DZPQ.js";
|
|
6
6
|
import {
|
|
7
7
|
getWalletOrExit
|
|
@@ -33,4 +33,4 @@ var reportErrorCommand = async (args) => {
|
|
|
33
33
|
export {
|
|
34
34
|
reportErrorCommand
|
|
35
35
|
};
|
|
36
|
-
//# sourceMappingURL=report-error-
|
|
36
|
+
//# sourceMappingURL=report-error-HQBVDKDU.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
2
|
search
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
5
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-G6MIWS35.js";
|
|
4
|
+
import "./chunk-CCWBMXQT.js";
|
|
5
|
+
import "./chunk-YIECO2O4.js";
|
|
6
6
|
import "./chunk-H2JGMFEG.js";
|
|
7
7
|
import "./chunk-4TIYIVZF.js";
|
|
8
8
|
import "./chunk-IKPLMFAK.js";
|
|
@@ -55,4 +55,4 @@ var searchCommand = async (input) => {
|
|
|
55
55
|
export {
|
|
56
56
|
searchCommand
|
|
57
57
|
};
|
|
58
|
-
//# sourceMappingURL=search-
|
|
58
|
+
//# sourceMappingURL=search-H32FUHXO.js.map
|
|
@@ -6,22 +6,22 @@ import {
|
|
|
6
6
|
} from "./chunk-BIO4Y27B.js";
|
|
7
7
|
import {
|
|
8
8
|
submitErrorReport
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-XU7NVHOY.js";
|
|
10
10
|
import {
|
|
11
11
|
bridge,
|
|
12
12
|
bridgeSchema
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-QFYKR3H3.js";
|
|
14
14
|
import {
|
|
15
15
|
loadUserOrigins
|
|
16
16
|
} from "./chunk-YIU364NZ.js";
|
|
17
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-574342U7.js";
|
|
18
18
|
import {
|
|
19
19
|
checkEndpoint
|
|
20
20
|
} from "./chunk-5CMVFNXO.js";
|
|
21
21
|
import {
|
|
22
22
|
coreRequestSchema,
|
|
23
23
|
fetchShape
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-MCJ446SE.js";
|
|
25
25
|
import {
|
|
26
26
|
getBalances,
|
|
27
27
|
listAccountsWithBalances
|
|
@@ -30,19 +30,20 @@ import "./chunk-ISF2WVEZ.js";
|
|
|
30
30
|
import {
|
|
31
31
|
search,
|
|
32
32
|
searchSchema
|
|
33
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-G6MIWS35.js";
|
|
34
34
|
import {
|
|
35
35
|
discoverResources,
|
|
36
36
|
discoverResourcesSchema
|
|
37
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-H7ES5FU5.js";
|
|
38
38
|
import {
|
|
39
39
|
DESCRIPTIONS,
|
|
40
40
|
TOOL_PARAMS,
|
|
41
41
|
buildServerInstructions
|
|
42
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-CCWBMXQT.js";
|
|
43
43
|
import {
|
|
44
|
-
executeFetch
|
|
45
|
-
|
|
44
|
+
executeFetch,
|
|
45
|
+
getFetchResultMetadata
|
|
46
|
+
} from "./chunk-YIECO2O4.js";
|
|
46
47
|
import "./chunk-H2JGMFEG.js";
|
|
47
48
|
import {
|
|
48
49
|
DEFAULT_MAX_AMOUNT,
|
|
@@ -115,8 +116,12 @@ var parsedResponseToToolContentPart = (data) => {
|
|
|
115
116
|
|
|
116
117
|
// src/server/tools/response/error.ts
|
|
117
118
|
var buildMcpError = (content, options) => {
|
|
119
|
+
const extraContent = options?.extra === void 0 ? [] : safeStringifyJson("mcp-error-extra", options.extra).match(
|
|
120
|
+
(success) => [{ type: "text", text: success }],
|
|
121
|
+
() => []
|
|
122
|
+
);
|
|
118
123
|
return {
|
|
119
|
-
content,
|
|
124
|
+
content: [...content, ...extraContent],
|
|
120
125
|
// Default: omit isError so siblings survive parallel calls.
|
|
121
126
|
// Tools with outputSchema MUST pass isError: true so the SDK
|
|
122
127
|
// skips output validation on error paths.
|
|
@@ -157,8 +162,8 @@ var mcpError = async (err, options) => {
|
|
|
157
162
|
}
|
|
158
163
|
return mcpErrorJson({ ...error }, options);
|
|
159
164
|
};
|
|
160
|
-
var mcpErrorFetch = async (surface, response) => {
|
|
161
|
-
return mcpError(fetchHttpErr(surface, response));
|
|
165
|
+
var mcpErrorFetch = async (surface, response, extra) => {
|
|
166
|
+
return mcpError(fetchHttpErr(surface, response), { extra });
|
|
162
167
|
};
|
|
163
168
|
|
|
164
169
|
// src/server/tools/response/success.ts
|
|
@@ -256,17 +261,15 @@ var registerFetchTool = (props) => {
|
|
|
256
261
|
return mcpError(fetchResult);
|
|
257
262
|
}
|
|
258
263
|
const { response, paymentInfo } = fetchResult.value;
|
|
264
|
+
const resultMetadata = getFetchResultMetadata(response, paymentInfo);
|
|
259
265
|
if (!response.ok) {
|
|
260
|
-
return mcpErrorFetch(TOOL_NAME, response);
|
|
266
|
+
return mcpErrorFetch(TOOL_NAME, response, resultMetadata);
|
|
261
267
|
}
|
|
262
268
|
const parseResponseResult = await safeParseResponse(TOOL_NAME, response);
|
|
263
269
|
if (parseResponseResult.isErr()) {
|
|
264
|
-
return mcpError(parseResponseResult);
|
|
270
|
+
return mcpError(parseResponseResult, { extra: resultMetadata });
|
|
265
271
|
}
|
|
266
|
-
return mcpSuccessResponse(
|
|
267
|
-
parseResponseResult.value,
|
|
268
|
-
paymentInfo ?? void 0
|
|
269
|
-
);
|
|
272
|
+
return mcpSuccessResponse(parseResponseResult.value, resultMetadata);
|
|
270
273
|
})
|
|
271
274
|
);
|
|
272
275
|
};
|
|
@@ -737,7 +740,7 @@ import { dirname, join } from "path";
|
|
|
737
740
|
import { fileURLToPath } from "url";
|
|
738
741
|
function getVersion() {
|
|
739
742
|
if (true) {
|
|
740
|
-
return "0.
|
|
743
|
+
return "0.17.1";
|
|
741
744
|
}
|
|
742
745
|
const __dirname2 = dirname(fileURLToPath(import.meta.url));
|
|
743
746
|
const pkg = JSON.parse(
|
|
@@ -804,4 +807,4 @@ var startServer = async (flags) => {
|
|
|
804
807
|
export {
|
|
805
808
|
startServer
|
|
806
809
|
};
|
|
807
|
-
//# sourceMappingURL=server-
|
|
810
|
+
//# sourceMappingURL=server-MKLACHXU.js.map
|