agentcash 0.9.0 → 0.9.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/run-server.cjs +30 -10
- package/dist/esm/{add-skill-CPSJHRFF.js → add-skill-U34U44YC.js} +5 -4
- package/dist/esm/{add-skill-CPSJHRFF.js.map → add-skill-U34U44YC.js.map} +1 -1
- package/dist/esm/{check-YVZ3KR2P.js → check-DXJXBWT2.js} +5 -4
- package/dist/esm/{check-YVZ3KR2P.js.map → check-DXJXBWT2.js.map} +1 -1
- package/dist/esm/{chunk-YC3QM3JN.js → chunk-6ZASEAWN.js} +2 -2
- package/dist/esm/{chunk-M7G7WGN7.js → chunk-CGFED7FU.js} +2 -2
- package/dist/esm/{chunk-VC5CLABO.js → chunk-G5IKWSIV.js} +2 -2
- package/dist/esm/chunk-GQTOWVH6.js +7 -0
- package/dist/esm/{chunk-IB75YFBW.js → chunk-IMJKJGRG.js} +2 -2
- package/dist/esm/{chunk-NEJKY3UL.js → chunk-KFJDRCNE.js} +7 -2
- package/dist/esm/{chunk-NEJKY3UL.js.map → chunk-KFJDRCNE.js.map} +1 -1
- package/dist/esm/{chunk-7QBTMZ6P.js → chunk-OJ7TLSTP.js} +2 -2
- package/dist/esm/{chunk-6RYCEJR7.js → chunk-PGMMXO5J.js} +14 -2
- package/dist/esm/{chunk-6RYCEJR7.js.map → chunk-PGMMXO5J.js.map} +1 -1
- package/dist/esm/chunk-TTAO2EJK.js +10 -0
- package/dist/esm/chunk-TTAO2EJK.js.map +1 -0
- package/dist/esm/{chunk-EW25ERKW.js → chunk-UJO2BWV6.js} +2 -2
- package/dist/esm/{fetch-VUI7TYUI.js → fetch-4X4N7TSG.js} +8 -7
- package/dist/esm/{fetch-VUI7TYUI.js.map → fetch-4X4N7TSG.js.map} +1 -1
- package/dist/esm/{fetch-auth-KEO66U6Q.js → fetch-auth-R54NXQBZ.js} +5 -4
- package/dist/esm/{fetch-auth-KEO66U6Q.js.map → fetch-auth-R54NXQBZ.js.map} +1 -1
- package/dist/esm/index.js +21 -20
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/{install-NNR5PKP2.js → install-GB7Z3Y7Y.js} +3 -3
- package/dist/esm/{onboard-ACBXF5EZ.js → onboard-IOSC3DTG.js} +5 -5
- package/dist/esm/{origins-EYBTV3GF.js → origins-GFGI6TY3.js} +5 -4
- package/dist/esm/{origins-EYBTV3GF.js.map → origins-GFGI6TY3.js.map} +1 -1
- package/dist/esm/{report-error-4R6Z2DGD.js → report-error-CSI2EPQJ.js} +7 -6
- package/dist/esm/{report-error-4R6Z2DGD.js.map → report-error-CSI2EPQJ.js.map} +1 -1
- package/dist/esm/{server-ANESRI52.js → server-EM2KLQJY.js} +2 -2
- package/dist/esm/{server-7EZORMAF.js → server-QT37RZYD.js} +15 -10
- package/dist/esm/server-QT37RZYD.js.map +1 -0
- package/dist/esm/{settings-LUYHCU5T.js → settings-I7MPPOB7.js} +4 -3
- package/dist/esm/{settings-LUYHCU5T.js.map → settings-I7MPPOB7.js.map} +1 -1
- package/dist/esm/{try-HRKABFHO.js → try-2XWGGAAP.js} +7 -6
- package/dist/esm/{try-HRKABFHO.js.map → try-2XWGGAAP.js.map} +1 -1
- package/dist/esm/{wallet-DNW6DBSU.js → wallet-3ZWXDQNE.js} +7 -6
- package/dist/esm/{wallet-DNW6DBSU.js.map → wallet-3ZWXDQNE.js.map} +1 -1
- package/package.json +3 -3
- package/dist/esm/chunk-JM7J5ZIS.js +0 -7
- package/dist/esm/server-7EZORMAF.js.map +0 -1
- /package/dist/esm/{chunk-YC3QM3JN.js.map → chunk-6ZASEAWN.js.map} +0 -0
- /package/dist/esm/{chunk-M7G7WGN7.js.map → chunk-CGFED7FU.js.map} +0 -0
- /package/dist/esm/{chunk-VC5CLABO.js.map → chunk-G5IKWSIV.js.map} +0 -0
- /package/dist/esm/{chunk-JM7J5ZIS.js.map → chunk-GQTOWVH6.js.map} +0 -0
- /package/dist/esm/{chunk-IB75YFBW.js.map → chunk-IMJKJGRG.js.map} +0 -0
- /package/dist/esm/{chunk-7QBTMZ6P.js.map → chunk-OJ7TLSTP.js.map} +0 -0
- /package/dist/esm/{chunk-EW25ERKW.js.map → chunk-UJO2BWV6.js.map} +0 -0
- /package/dist/esm/{install-NNR5PKP2.js.map → install-GB7Z3Y7Y.js.map} +0 -0
- /package/dist/esm/{onboard-ACBXF5EZ.js.map → onboard-IOSC3DTG.js.map} +0 -0
- /package/dist/esm/{server-ANESRI52.js.map → server-EM2KLQJY.js.map} +0 -0
|
@@ -1,25 +1,26 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createFetchWithPayment
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-PGMMXO5J.js";
|
|
4
4
|
import {
|
|
5
5
|
MCP_VERSION
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-CGFED7FU.js";
|
|
7
7
|
import "./chunk-6FEDQ4HI.js";
|
|
8
8
|
import "./chunk-RAFN7MFS.js";
|
|
9
9
|
import "./chunk-OKHBFFZP.js";
|
|
10
|
-
import "./chunk-
|
|
10
|
+
import "./chunk-GQTOWVH6.js";
|
|
11
11
|
import "./chunk-G3AVBW3H.js";
|
|
12
12
|
import {
|
|
13
13
|
getWalletOrExit,
|
|
14
14
|
parseRequestInput
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-OJ7TLSTP.js";
|
|
16
16
|
import "./chunk-FRPTMW3B.js";
|
|
17
17
|
import {
|
|
18
18
|
buildRequest
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-IMJKJGRG.js";
|
|
20
20
|
import "./chunk-4AS5OYMF.js";
|
|
21
|
-
import "./chunk-
|
|
21
|
+
import "./chunk-KFJDRCNE.js";
|
|
22
22
|
import "./chunk-7HVLEKUI.js";
|
|
23
|
+
import "./chunk-TTAO2EJK.js";
|
|
23
24
|
import "./chunk-P3Z6XR5A.js";
|
|
24
25
|
import "./chunk-M6OXSG34.js";
|
|
25
26
|
import "./chunk-VDBUUHJF.js";
|
|
@@ -115,4 +116,4 @@ function extractJsonErrorMessage(body) {
|
|
|
115
116
|
export {
|
|
116
117
|
fetchCommand
|
|
117
118
|
};
|
|
118
|
-
//# sourceMappingURL=fetch-
|
|
119
|
+
//# sourceMappingURL=fetch-4X4N7TSG.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/cli/commands/fetch.ts"],"sourcesContent":["import { randomBytes } from 'crypto';\n\nimport {\n successResponse,\n errorResponse,\n fromNeverthrowError,\n outputAndExit,\n type OutputFlags,\n} from '@/cli/output';\n\nimport { buildRequest } from '@/server/tools/lib/request';\nimport { MCP_VERSION } from '@/shared/version';\nimport { safeParseResponse } from '@/shared/neverthrow/fetch';\nimport { createFetchWithPayment } from '@/operations/fetch-with-payment';\nimport { getWalletOrExit, parseRequestInput } from '../lib';\n\nimport type { GlobalFlags } from '@/types';\nimport type { JsonObject } from '@/shared/neverthrow/json/types';\nimport type { PaymentProtocol } from '@/shared/protocols/types';\nimport type { Network } from '@agentcash/networks';\n\nconst SURFACE = 'cli:fetch';\n\ninterface FetchArgs {\n url: string;\n method?: string;\n body?: string;\n headers?: string;\n paymentMethod?: PaymentProtocol;\n paymentNetwork?: Network;\n maxAmount?: number;\n}\n\nexport async function fetchCommand(\n args: FetchArgs,\n flags: GlobalFlags<OutputFlags>\n): Promise<void> {\n const wallets = await getWalletOrExit(flags);\n const sessionId = randomBytes(16).toString('hex');\n\n const input = parseRequestInput(SURFACE, args, flags);\n\n const provider = flags.provider ?? `agentcash@${MCP_VERSION}`;\n\n const request = buildRequest({\n input,\n wallets,\n sessionId,\n provider,\n });\n\n const fetchResult = await createFetchWithPayment({\n surface: SURFACE,\n wallets,\n flags,\n paymentMethod: args.paymentMethod,\n paymentNetwork: args.paymentNetwork,\n maxAmount: args.maxAmount,\n })(request);\n\n if (fetchResult.isErr()) {\n return outputAndExit(fromNeverthrowError(fetchResult), flags);\n }\n\n const { response, paymentInfo } = fetchResult.value;\n\n if (!response.ok) {\n const parseResult = await safeParseResponse(SURFACE, response);\n const details: JsonObject = { statusCode: response.status };\n let serverMessage: string | undefined;\n if (parseResult.isOk()) {\n const { type } = parseResult.value;\n if (type === 'json') {\n details.body = parseResult.value.data;\n serverMessage = extractJsonErrorMessage(parseResult.value.data);\n } else if (type === 'text') {\n details.body = parseResult.value.data;\n serverMessage = parseResult.value.data;\n } else {\n details.bodyType = type;\n }\n }\n return outputAndExit(\n errorResponse({\n code: 'HTTP_ERROR',\n message: serverMessage ?? response.statusText,\n surface: SURFACE,\n cause: 'http',\n details,\n }),\n flags\n );\n }\n\n const parseResponseResult = await safeParseResponse(SURFACE, response);\n if (parseResponseResult.isErr()) {\n return outputAndExit(fromNeverthrowError(parseResponseResult), flags);\n }\n\n // Build response data\n const data =\n parseResponseResult.value.type === 'json'\n ? parseResponseResult.value.data\n : parseResponseResult.value.type === 'text'\n ? parseResponseResult.value.data\n : { type: parseResponseResult.value.type };\n\n // Build metadata from paymentInfo\n const metadata = paymentInfo\n ? {\n protocol: paymentInfo.protocol,\n ...(paymentInfo.price ? { price: paymentInfo.price } : {}),\n ...(paymentInfo.payment ? { payment: paymentInfo.payment } : {}),\n }\n : undefined;\n\n outputAndExit(successResponse(data, metadata), flags);\n}\n\n/**\n * Extract an error message from a JSON response body.\n * Handles common patterns: { error: \"msg\" }, { error: { message: \"msg\" } }, { message: \"msg\" }\n */\nfunction extractJsonErrorMessage(body: JsonObject): string | undefined {\n if (typeof body === 'object' && body !== null) {\n const obj = body as Record<string, unknown>;\n if (typeof obj.error === 'string') return obj.error;\n if (\n typeof obj.error === 'object' &&\n obj.error !== null &&\n typeof (obj.error as Record<string, unknown>).message === 'string'\n ) {\n return (obj.error as Record<string, unknown>).message as string;\n }\n if (typeof obj.message === 'string') return obj.message;\n }\n return undefined;\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../src/cli/commands/fetch.ts"],"sourcesContent":["import { randomBytes } from 'crypto';\n\nimport {\n successResponse,\n errorResponse,\n fromNeverthrowError,\n outputAndExit,\n type OutputFlags,\n} from '@/cli/output';\n\nimport { buildRequest } from '@/server/tools/lib/request';\nimport { MCP_VERSION } from '@/shared/version';\nimport { safeParseResponse } from '@/shared/neverthrow/fetch';\nimport { createFetchWithPayment } from '@/operations/fetch-with-payment';\nimport { getWalletOrExit, parseRequestInput } from '../lib';\n\nimport type { GlobalFlags } from '@/types';\nimport type { JsonObject } from '@/shared/neverthrow/json/types';\nimport type { PaymentProtocol } from '@/shared/protocols/types';\nimport type { Network } from '@agentcash/networks';\n\nconst SURFACE = 'cli:fetch';\n\ninterface FetchArgs {\n url: string;\n method?: string;\n body?: string;\n headers?: string;\n paymentMethod?: PaymentProtocol;\n paymentNetwork?: Network;\n maxAmount?: number;\n}\n\nexport async function fetchCommand(\n args: FetchArgs,\n flags: GlobalFlags<OutputFlags>\n): Promise<void> {\n const wallets = await getWalletOrExit(flags);\n const sessionId = randomBytes(16).toString('hex');\n\n const input = parseRequestInput(SURFACE, args, flags);\n\n const provider = flags.provider ?? `agentcash@${MCP_VERSION}`;\n\n const request = buildRequest({\n input,\n wallets,\n sessionId,\n provider,\n });\n\n const fetchResult = await createFetchWithPayment({\n surface: SURFACE,\n wallets,\n flags,\n paymentMethod: args.paymentMethod,\n paymentNetwork: args.paymentNetwork,\n maxAmount: args.maxAmount,\n })(request);\n\n if (fetchResult.isErr()) {\n return outputAndExit(fromNeverthrowError(fetchResult), flags);\n }\n\n const { response, paymentInfo } = fetchResult.value;\n\n if (!response.ok) {\n const parseResult = await safeParseResponse(SURFACE, response);\n const details: JsonObject = { statusCode: response.status };\n let serverMessage: string | undefined;\n if (parseResult.isOk()) {\n const { type } = parseResult.value;\n if (type === 'json') {\n details.body = parseResult.value.data;\n serverMessage = extractJsonErrorMessage(parseResult.value.data);\n } else if (type === 'text') {\n details.body = parseResult.value.data;\n serverMessage = parseResult.value.data;\n } else {\n details.bodyType = type;\n }\n }\n return outputAndExit(\n errorResponse({\n code: 'HTTP_ERROR',\n message: serverMessage ?? response.statusText,\n surface: SURFACE,\n cause: 'http',\n details,\n }),\n flags\n );\n }\n\n const parseResponseResult = await safeParseResponse(SURFACE, response);\n if (parseResponseResult.isErr()) {\n return outputAndExit(fromNeverthrowError(parseResponseResult), flags);\n }\n\n // Build response data\n const data =\n parseResponseResult.value.type === 'json'\n ? parseResponseResult.value.data\n : parseResponseResult.value.type === 'text'\n ? parseResponseResult.value.data\n : { type: parseResponseResult.value.type };\n\n // Build metadata from paymentInfo\n const metadata = paymentInfo\n ? {\n protocol: paymentInfo.protocol,\n ...(paymentInfo.price ? { price: paymentInfo.price } : {}),\n ...(paymentInfo.payment ? { payment: paymentInfo.payment } : {}),\n }\n : undefined;\n\n outputAndExit(successResponse(data, metadata), flags);\n}\n\n/**\n * Extract an error message from a JSON response body.\n * Handles common patterns: { error: \"msg\" }, { error: { message: \"msg\" } }, { message: \"msg\" }\n */\nfunction extractJsonErrorMessage(body: JsonObject): string | undefined {\n if (typeof body === 'object' && body !== null) {\n const obj = body as Record<string, unknown>;\n if (typeof obj.error === 'string') return obj.error;\n if (\n typeof obj.error === 'object' &&\n obj.error !== null &&\n typeof (obj.error as Record<string, unknown>).message === 'string'\n ) {\n return (obj.error as Record<string, unknown>).message as string;\n }\n if (typeof obj.message === 'string') return obj.message;\n }\n return undefined;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAS,mBAAmB;AAqB5B,IAAM,UAAU;AAYhB,eAAsB,aACpB,MACA,OACe;AACf,QAAM,UAAU,MAAM,gBAAgB,KAAK;AAC3C,QAAM,YAAY,YAAY,EAAE,EAAE,SAAS,KAAK;AAEhD,QAAM,QAAQ,kBAAkB,SAAS,MAAM,KAAK;AAEpD,QAAM,WAAW,MAAM,YAAY,aAAa,WAAW;AAE3D,QAAM,UAAU,aAAa;AAAA,IAC3B;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAED,QAAM,cAAc,MAAM,uBAAuB;AAAA,IAC/C,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA,eAAe,KAAK;AAAA,IACpB,gBAAgB,KAAK;AAAA,IACrB,WAAW,KAAK;AAAA,EAClB,CAAC,EAAE,OAAO;AAEV,MAAI,YAAY,MAAM,GAAG;AACvB,WAAO,cAAc,oBAAoB,WAAW,GAAG,KAAK;AAAA,EAC9D;AAEA,QAAM,EAAE,UAAU,YAAY,IAAI,YAAY;AAE9C,MAAI,CAAC,SAAS,IAAI;AAChB,UAAM,cAAc,MAAM,kBAAkB,SAAS,QAAQ;AAC7D,UAAM,UAAsB,EAAE,YAAY,SAAS,OAAO;AAC1D,QAAI;AACJ,QAAI,YAAY,KAAK,GAAG;AACtB,YAAM,EAAE,KAAK,IAAI,YAAY;AAC7B,UAAI,SAAS,QAAQ;AACnB,gBAAQ,OAAO,YAAY,MAAM;AACjC,wBAAgB,wBAAwB,YAAY,MAAM,IAAI;AAAA,MAChE,WAAW,SAAS,QAAQ;AAC1B,gBAAQ,OAAO,YAAY,MAAM;AACjC,wBAAgB,YAAY,MAAM;AAAA,MACpC,OAAO;AACL,gBAAQ,WAAW;AAAA,MACrB;AAAA,IACF;AACA,WAAO;AAAA,MACL,cAAc;AAAA,QACZ,MAAM;AAAA,QACN,SAAS,iBAAiB,SAAS;AAAA,QACnC,SAAS;AAAA,QACT,OAAO;AAAA,QACP;AAAA,MACF,CAAC;AAAA,MACD;AAAA,IACF;AAAA,EACF;AAEA,QAAM,sBAAsB,MAAM,kBAAkB,SAAS,QAAQ;AACrE,MAAI,oBAAoB,MAAM,GAAG;AAC/B,WAAO,cAAc,oBAAoB,mBAAmB,GAAG,KAAK;AAAA,EACtE;AAGA,QAAM,OACJ,oBAAoB,MAAM,SAAS,SAC/B,oBAAoB,MAAM,OAC1B,oBAAoB,MAAM,SAAS,SACjC,oBAAoB,MAAM,OAC1B,EAAE,MAAM,oBAAoB,MAAM,KAAK;AAG/C,QAAM,WAAW,cACb;AAAA,IACE,UAAU,YAAY;AAAA,IACtB,GAAI,YAAY,QAAQ,EAAE,OAAO,YAAY,MAAM,IAAI,CAAC;AAAA,IACxD,GAAI,YAAY,UAAU,EAAE,SAAS,YAAY,QAAQ,IAAI,CAAC;AAAA,EAChE,IACA;AAEJ,gBAAc,gBAAgB,MAAM,QAAQ,GAAG,KAAK;AACtD;AAMA,SAAS,wBAAwB,MAAsC;AACrE,MAAI,OAAO,SAAS,YAAY,SAAS,MAAM;AAC7C,UAAM,MAAM;AACZ,QAAI,OAAO,IAAI,UAAU,SAAU,QAAO,IAAI;AAC9C,QACE,OAAO,IAAI,UAAU,YACrB,IAAI,UAAU,QACd,OAAQ,IAAI,MAAkC,YAAY,UAC1D;AACA,aAAQ,IAAI,MAAkC;AAAA,IAChD;AACA,QAAI,OAAO,IAAI,YAAY,SAAU,QAAO,IAAI;AAAA,EAClD;AACA,SAAO;AACT;","names":[]}
|
|
@@ -6,14 +6,15 @@ import "./chunk-G3AVBW3H.js";
|
|
|
6
6
|
import {
|
|
7
7
|
getWalletOrExit,
|
|
8
8
|
parseRequestInput
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-OJ7TLSTP.js";
|
|
10
10
|
import "./chunk-FRPTMW3B.js";
|
|
11
11
|
import {
|
|
12
12
|
buildRequest
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-IMJKJGRG.js";
|
|
14
14
|
import "./chunk-4AS5OYMF.js";
|
|
15
|
-
import "./chunk-
|
|
15
|
+
import "./chunk-KFJDRCNE.js";
|
|
16
16
|
import "./chunk-7HVLEKUI.js";
|
|
17
|
+
import "./chunk-TTAO2EJK.js";
|
|
17
18
|
import "./chunk-P3Z6XR5A.js";
|
|
18
19
|
import "./chunk-M6OXSG34.js";
|
|
19
20
|
import "./chunk-VDBUUHJF.js";
|
|
@@ -82,4 +83,4 @@ async function fetchAuthCommand(args, flags) {
|
|
|
82
83
|
export {
|
|
83
84
|
fetchAuthCommand
|
|
84
85
|
};
|
|
85
|
-
//# sourceMappingURL=fetch-auth-
|
|
86
|
+
//# sourceMappingURL=fetch-auth-R54NXQBZ.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/cli/commands/fetch-auth.ts"],"sourcesContent":["import { randomBytes } from 'crypto';\n\nimport {\n successResponse,\n errorResponse,\n fromNeverthrowError,\n outputAndExit,\n type OutputFlags,\n} from '@/cli/output';\n\nimport { buildRequest } from '@/server/tools/lib/request';\nimport {\n DEFAULT_USER_FETCH_TIMEOUT,\n safeParseResponse,\n} from '@/shared/neverthrow/fetch';\nimport { createFetchWithAuth } from '@/operations/fetch-with-auth';\nimport { getWalletOrExit, parseRequestInput } from '../lib';\n\nimport type { GlobalFlags } from '@/types';\nimport type { Network } from '@agentcash/networks';\n\nconst SURFACE = 'cli:fetch-auth';\n\ninterface FetchAuthArgs {\n url: string;\n method?: string;\n body?: string;\n headers?: string;\n paymentNetwork?: Network;\n}\n\nexport async function fetchAuthCommand(\n args: FetchAuthArgs,\n flags: GlobalFlags<OutputFlags>\n): Promise<void> {\n const wallets = await getWalletOrExit(flags);\n const sessionId = randomBytes(16).toString('hex');\n\n const input = parseRequestInput(SURFACE, args, flags);\n\n const result = await createFetchWithAuth({\n surface: SURFACE,\n wallets,\n timeout: input.timeout ?? DEFAULT_USER_FETCH_TIMEOUT,\n paymentNetwork: args.paymentNetwork,\n })(buildRequest({ input, wallets, sessionId }));\n\n if (result.isErr()) {\n return outputAndExit(fromNeverthrowError(result), flags);\n }\n\n const value = result.value;\n\n if (value.outcome === 'no_siwx_extension') {\n return outputAndExit(\n errorResponse({\n code: 'GENERAL_ERROR',\n message:\n 'Endpoint returned 402 but no sign-in-with-x extension found. Use `fetch` for paid endpoints.',\n surface: SURFACE,\n cause: 'no_siwx_extension',\n }),\n flags\n );\n }\n\n const { response } = value;\n\n if (!response.ok) {\n return outputAndExit(\n errorResponse({\n code: 'HTTP_ERROR',\n message: response.statusText,\n surface: SURFACE,\n cause: 'http',\n details: { statusCode: response.status },\n }),\n flags\n );\n }\n\n const parseResult = await safeParseResponse(SURFACE, response);\n if (parseResult.isErr()) {\n return outputAndExit(fromNeverthrowError(parseResult), flags);\n }\n\n const data =\n parseResult.value.type === 'json'\n ? parseResult.value.data\n : parseResult.value.type === 'text'\n ? parseResult.value.data\n : { type: parseResult.value.type };\n\n outputAndExit(successResponse(data), flags);\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../src/cli/commands/fetch-auth.ts"],"sourcesContent":["import { randomBytes } from 'crypto';\n\nimport {\n successResponse,\n errorResponse,\n fromNeverthrowError,\n outputAndExit,\n type OutputFlags,\n} from '@/cli/output';\n\nimport { buildRequest } from '@/server/tools/lib/request';\nimport {\n DEFAULT_USER_FETCH_TIMEOUT,\n safeParseResponse,\n} from '@/shared/neverthrow/fetch';\nimport { createFetchWithAuth } from '@/operations/fetch-with-auth';\nimport { getWalletOrExit, parseRequestInput } from '../lib';\n\nimport type { GlobalFlags } from '@/types';\nimport type { Network } from '@agentcash/networks';\n\nconst SURFACE = 'cli:fetch-auth';\n\ninterface FetchAuthArgs {\n url: string;\n method?: string;\n body?: string;\n headers?: string;\n paymentNetwork?: Network;\n}\n\nexport async function fetchAuthCommand(\n args: FetchAuthArgs,\n flags: GlobalFlags<OutputFlags>\n): Promise<void> {\n const wallets = await getWalletOrExit(flags);\n const sessionId = randomBytes(16).toString('hex');\n\n const input = parseRequestInput(SURFACE, args, flags);\n\n const result = await createFetchWithAuth({\n surface: SURFACE,\n wallets,\n timeout: input.timeout ?? DEFAULT_USER_FETCH_TIMEOUT,\n paymentNetwork: args.paymentNetwork,\n })(buildRequest({ input, wallets, sessionId }));\n\n if (result.isErr()) {\n return outputAndExit(fromNeverthrowError(result), flags);\n }\n\n const value = result.value;\n\n if (value.outcome === 'no_siwx_extension') {\n return outputAndExit(\n errorResponse({\n code: 'GENERAL_ERROR',\n message:\n 'Endpoint returned 402 but no sign-in-with-x extension found. Use `fetch` for paid endpoints.',\n surface: SURFACE,\n cause: 'no_siwx_extension',\n }),\n flags\n );\n }\n\n const { response } = value;\n\n if (!response.ok) {\n return outputAndExit(\n errorResponse({\n code: 'HTTP_ERROR',\n message: response.statusText,\n surface: SURFACE,\n cause: 'http',\n details: { statusCode: response.status },\n }),\n flags\n );\n }\n\n const parseResult = await safeParseResponse(SURFACE, response);\n if (parseResult.isErr()) {\n return outputAndExit(fromNeverthrowError(parseResult), flags);\n }\n\n const data =\n parseResult.value.type === 'json'\n ? parseResult.value.data\n : parseResult.value.type === 'text'\n ? parseResult.value.data\n : { type: parseResult.value.type };\n\n outputAndExit(successResponse(data), flags);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAS,mBAAmB;AAqB5B,IAAM,UAAU;AAUhB,eAAsB,iBACpB,MACA,OACe;AACf,QAAM,UAAU,MAAM,gBAAgB,KAAK;AAC3C,QAAM,YAAY,YAAY,EAAE,EAAE,SAAS,KAAK;AAEhD,QAAM,QAAQ,kBAAkB,SAAS,MAAM,KAAK;AAEpD,QAAM,SAAS,MAAM,oBAAoB;AAAA,IACvC,SAAS;AAAA,IACT;AAAA,IACA,SAAS,MAAM,WAAW;AAAA,IAC1B,gBAAgB,KAAK;AAAA,EACvB,CAAC,EAAE,aAAa,EAAE,OAAO,SAAS,UAAU,CAAC,CAAC;AAE9C,MAAI,OAAO,MAAM,GAAG;AAClB,WAAO,cAAc,oBAAoB,MAAM,GAAG,KAAK;AAAA,EACzD;AAEA,QAAM,QAAQ,OAAO;AAErB,MAAI,MAAM,YAAY,qBAAqB;AACzC,WAAO;AAAA,MACL,cAAc;AAAA,QACZ,MAAM;AAAA,QACN,SACE;AAAA,QACF,SAAS;AAAA,QACT,OAAO;AAAA,MACT,CAAC;AAAA,MACD;AAAA,IACF;AAAA,EACF;AAEA,QAAM,EAAE,SAAS,IAAI;AAErB,MAAI,CAAC,SAAS,IAAI;AAChB,WAAO;AAAA,MACL,cAAc;AAAA,QACZ,MAAM;AAAA,QACN,SAAS,SAAS;AAAA,QAClB,SAAS;AAAA,QACT,OAAO;AAAA,QACP,SAAS,EAAE,YAAY,SAAS,OAAO;AAAA,MACzC,CAAC;AAAA,MACD;AAAA,IACF;AAAA,EACF;AAEA,QAAM,cAAc,MAAM,kBAAkB,SAAS,QAAQ;AAC7D,MAAI,YAAY,MAAM,GAAG;AACvB,WAAO,cAAc,oBAAoB,WAAW,GAAG,KAAK;AAAA,EAC9D;AAEA,QAAM,OACJ,YAAY,MAAM,SAAS,SACvB,YAAY,MAAM,OAClB,YAAY,MAAM,SAAS,SACzB,YAAY,MAAM,OAClB,EAAE,MAAM,YAAY,MAAM,KAAK;AAEvC,gBAAc,gBAAgB,IAAI,GAAG,KAAK;AAC5C;","names":[]}
|
package/dist/esm/index.js
CHANGED
|
@@ -5,16 +5,17 @@ import {
|
|
|
5
5
|
} from "./chunk-O2AS5QAF.js";
|
|
6
6
|
import {
|
|
7
7
|
MCP_VERSION
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-CGFED7FU.js";
|
|
9
9
|
import {
|
|
10
10
|
isMppEnabled
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-GQTOWVH6.js";
|
|
12
12
|
import "./chunk-G3AVBW3H.js";
|
|
13
13
|
import {
|
|
14
14
|
DESCRIPTIONS,
|
|
15
15
|
buildServerInstructions
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-KFJDRCNE.js";
|
|
17
17
|
import "./chunk-7HVLEKUI.js";
|
|
18
|
+
import "./chunk-TTAO2EJK.js";
|
|
18
19
|
import "./chunk-VDBUUHJF.js";
|
|
19
20
|
import "./chunk-C7KWYVS3.js";
|
|
20
21
|
|
|
@@ -98,7 +99,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
98
99
|
description: "Maximum amount (USD) to pay per request. Aborts if the endpoint requests more. Defaults to $5."
|
|
99
100
|
}).epilogue(DESCRIPTIONS.fetch.epilogue),
|
|
100
101
|
async (args) => {
|
|
101
|
-
const { fetchCommand } = await import("./fetch-
|
|
102
|
+
const { fetchCommand } = await import("./fetch-4X4N7TSG.js");
|
|
102
103
|
await fetchCommand(
|
|
103
104
|
{
|
|
104
105
|
...args,
|
|
@@ -135,7 +136,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
135
136
|
choices: ["eip155:8453" /* BASE */, "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp" /* SOLANA */]
|
|
136
137
|
}).epilogue(DESCRIPTIONS.fetchWithAuth.epilogue),
|
|
137
138
|
async (args) => {
|
|
138
|
-
const { fetchAuthCommand } = await import("./fetch-auth-
|
|
139
|
+
const { fetchAuthCommand } = await import("./fetch-auth-R54NXQBZ.js");
|
|
139
140
|
await fetchAuthCommand(
|
|
140
141
|
{
|
|
141
142
|
url: args.url,
|
|
@@ -169,7 +170,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
169
170
|
description: "Additional headers as JSON object"
|
|
170
171
|
}).epilogue(DESCRIPTIONS.checkEndpointSchema.epilogue),
|
|
171
172
|
async (args) => {
|
|
172
|
-
const { checkCommand } = await import("./check-
|
|
173
|
+
const { checkCommand } = await import("./check-DXJXBWT2.js");
|
|
173
174
|
await checkCommand(
|
|
174
175
|
{
|
|
175
176
|
url: args.url,
|
|
@@ -189,7 +190,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
189
190
|
demandOption: true
|
|
190
191
|
}),
|
|
191
192
|
async (args) => {
|
|
192
|
-
const { tryCommand } = await import("./try-
|
|
193
|
+
const { tryCommand } = await import("./try-2XWGGAAP.js");
|
|
193
194
|
await tryCommand({ url: args.url }, args);
|
|
194
195
|
}
|
|
195
196
|
).command(
|
|
@@ -231,7 +232,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
231
232
|
demandOption: true
|
|
232
233
|
}),
|
|
233
234
|
async (args) => {
|
|
234
|
-
const { addSkillCommand } = await import("./add-skill-
|
|
235
|
+
const { addSkillCommand } = await import("./add-skill-U34U44YC.js");
|
|
235
236
|
await addSkillCommand({ url: args.url }, args);
|
|
236
237
|
}
|
|
237
238
|
).command(
|
|
@@ -246,7 +247,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
246
247
|
demandOption: true
|
|
247
248
|
}),
|
|
248
249
|
async (args) => {
|
|
249
|
-
const { originsAddCommand } = await import("./origins-
|
|
250
|
+
const { originsAddCommand } = await import("./origins-GFGI6TY3.js");
|
|
250
251
|
await originsAddCommand({ url: args.url }, args);
|
|
251
252
|
}
|
|
252
253
|
).command(
|
|
@@ -254,7 +255,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
254
255
|
"List all registered origins",
|
|
255
256
|
(yargs3) => yargs3,
|
|
256
257
|
async (args) => {
|
|
257
|
-
const { originsListCommand } = await import("./origins-
|
|
258
|
+
const { originsListCommand } = await import("./origins-GFGI6TY3.js");
|
|
258
259
|
originsListCommand({}, args);
|
|
259
260
|
}
|
|
260
261
|
).command(
|
|
@@ -266,7 +267,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
266
267
|
demandOption: true
|
|
267
268
|
}),
|
|
268
269
|
async (args) => {
|
|
269
|
-
const { originsRemoveCommand } = await import("./origins-
|
|
270
|
+
const { originsRemoveCommand } = await import("./origins-GFGI6TY3.js");
|
|
270
271
|
originsRemoveCommand({ url: args.url }, args);
|
|
271
272
|
}
|
|
272
273
|
).demandCommand(1, "You must specify an origins subcommand").strict(),
|
|
@@ -280,7 +281,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
280
281
|
description: "The invite code to redeem (optional)"
|
|
281
282
|
}),
|
|
282
283
|
async (args) => {
|
|
283
|
-
const { onboardCommand } = await import("./onboard-
|
|
284
|
+
const { onboardCommand } = await import("./onboard-IOSC3DTG.js");
|
|
284
285
|
await onboardCommand({ code: args.code ?? args.invite }, args);
|
|
285
286
|
}
|
|
286
287
|
).command(
|
|
@@ -291,7 +292,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
291
292
|
DESCRIPTIONS.getWalletInfo.cli,
|
|
292
293
|
(yargs3) => yargs3,
|
|
293
294
|
async (args) => {
|
|
294
|
-
const { walletInfoCommand } = await import("./wallet-
|
|
295
|
+
const { walletInfoCommand } = await import("./wallet-3ZWXDQNE.js");
|
|
295
296
|
await walletInfoCommand({}, args);
|
|
296
297
|
}
|
|
297
298
|
).command(
|
|
@@ -303,7 +304,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
303
304
|
demandOption: true
|
|
304
305
|
}),
|
|
305
306
|
async (args) => {
|
|
306
|
-
const { walletRedeemCommand } = await import("./wallet-
|
|
307
|
+
const { walletRedeemCommand } = await import("./wallet-3ZWXDQNE.js");
|
|
307
308
|
await walletRedeemCommand({ code: args.code }, args);
|
|
308
309
|
}
|
|
309
310
|
).command(
|
|
@@ -311,7 +312,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
311
312
|
"Get wallet address",
|
|
312
313
|
(yargs3) => yargs3,
|
|
313
314
|
async (args) => {
|
|
314
|
-
const { walletAddressCommand } = await import("./wallet-
|
|
315
|
+
const { walletAddressCommand } = await import("./wallet-3ZWXDQNE.js");
|
|
315
316
|
await walletAddressCommand({}, args);
|
|
316
317
|
}
|
|
317
318
|
).demandCommand(1, "You must specify a wallet subcommand").strict(),
|
|
@@ -325,7 +326,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
325
326
|
"Show current settings",
|
|
326
327
|
(yargs3) => yargs3,
|
|
327
328
|
async (args) => {
|
|
328
|
-
const { settingsGetCommand } = await import("./settings-
|
|
329
|
+
const { settingsGetCommand } = await import("./settings-I7MPPOB7.js");
|
|
329
330
|
settingsGetCommand({}, args);
|
|
330
331
|
}
|
|
331
332
|
).command(
|
|
@@ -341,7 +342,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
341
342
|
demandOption: true
|
|
342
343
|
}),
|
|
343
344
|
async (args) => {
|
|
344
|
-
const { settingsSetCommand } = await import("./settings-
|
|
345
|
+
const { settingsSetCommand } = await import("./settings-I7MPPOB7.js");
|
|
345
346
|
settingsSetCommand({ key: args.key, value: args.value }, args);
|
|
346
347
|
}
|
|
347
348
|
).demandCommand(1, "You must specify a settings subcommand").strict(),
|
|
@@ -373,7 +374,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
373
374
|
description: "Detailed report with context and repro steps"
|
|
374
375
|
}),
|
|
375
376
|
async (args) => {
|
|
376
|
-
const { reportErrorCommand } = await import("./report-error-
|
|
377
|
+
const { reportErrorCommand } = await import("./report-error-CSI2EPQJ.js");
|
|
377
378
|
await reportErrorCommand(
|
|
378
379
|
{
|
|
379
380
|
tool: args.tool,
|
|
@@ -391,7 +392,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
391
392
|
"Start the MCP server (default when no command specified)",
|
|
392
393
|
(yargs2) => yargs2,
|
|
393
394
|
async (args) => {
|
|
394
|
-
const { serverCommand } = await import("./server-
|
|
395
|
+
const { serverCommand } = await import("./server-EM2KLQJY.js");
|
|
395
396
|
await serverCommand(args);
|
|
396
397
|
}
|
|
397
398
|
).command(
|
|
@@ -404,7 +405,7 @@ void yargs(hideBin(process.argv)).scriptName("agentcash").usage("$0 [command] [o
|
|
|
404
405
|
default: isClaudeCode ? "claude-code" /* ClaudeCode */ : void 0
|
|
405
406
|
}),
|
|
406
407
|
async (args) => {
|
|
407
|
-
const { installMcpServer } = await import("./install-
|
|
408
|
+
const { installMcpServer } = await import("./install-GB7Z3Y7Y.js");
|
|
408
409
|
await installMcpServer(args);
|
|
409
410
|
}
|
|
410
411
|
).command(
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport yargs from 'yargs';\nimport { hideBin } from 'yargs/helpers';\nimport { Clients } from './cli/commands/install/clients';\nimport { isMppEnabled } from '@/shared/mpp-enabled';\nimport { MCP_VERSION } from '@/shared/version';\nimport { DESCRIPTIONS, buildServerInstructions } from '@/shared/descriptions';\nimport { loadUserOrigins } from '@/shared/user-origins';\nimport type { PaymentProtocol } from './shared/protocols/types';\nimport { Network } from '@agentcash/networks';\n\nconst isClaudeCode = Boolean(process.env.CLAUDECODE);\nconst defaultYes = isClaudeCode || Boolean(process.env.CI);\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 })\n .option('provider', {\n type: 'string',\n description: 'Provider to use for the MCP server',\n required: false,\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'],\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 yargs\n .positional('url', {\n type: 'string',\n description: 'The endpoint URL to fetch',\n demandOption: true,\n })\n .option('method', {\n alias: 'm',\n type: 'string',\n description: 'HTTP method',\n choices: ['GET', 'POST', 'PUT', 'DELETE', 'PATCH'],\n default: 'GET',\n })\n .option('body', {\n alias: 'b',\n type: 'string',\n description: 'Request body as JSON string',\n })\n .option('headers', {\n alias: 'H',\n type: 'string',\n description: 'Additional headers as JSON object',\n })\n .option('payment-method', {\n alias: 'p',\n type: 'string',\n description: 'Payment protocol to use',\n choices: isMppEnabled() ? ['x402', 'mpp', 'auto'] : ['x402', 'auto'],\n })\n .option('payment-network', {\n type: 'string',\n description: 'Payment network to use',\n choices: [Network.BASE, Network.SOLANA],\n })\n .option('max-amount', {\n type: 'number',\n description:\n 'Maximum amount (USD) to pay per request. Aborts if the endpoint requests more. Defaults to $5.',\n })\n .epilogue(DESCRIPTIONS.fetch.epilogue),\n async args => {\n const { fetchCommand } = await import('@/cli/commands/fetch');\n await fetchCommand(\n {\n ...args,\n paymentMethod: args.paymentMethod as PaymentProtocol | undefined,\n paymentNetwork: args.paymentNetwork,\n },\n args\n );\n }\n )\n .command(\n 'fetch-auth <url>',\n DESCRIPTIONS.fetchWithAuth.cli,\n yargs =>\n yargs\n .positional('url', {\n type: 'string',\n description: 'The endpoint URL to fetch',\n demandOption: true,\n })\n .option('method', {\n alias: 'm',\n type: 'string',\n description: 'HTTP method',\n choices: ['GET', 'POST', 'PUT', 'DELETE', 'PATCH'],\n default: 'GET',\n })\n .option('body', {\n alias: 'b',\n type: 'string',\n description: 'Request body as JSON string',\n })\n .option('headers', {\n alias: 'H',\n type: 'string',\n description: 'Additional headers as JSON object',\n })\n .option('payment-network', {\n type: 'string',\n description: 'Payment network to use',\n choices: [Network.BASE, Network.SOLANA],\n })\n .epilogue(DESCRIPTIONS.fetchWithAuth.epilogue),\n async args => {\n const { fetchAuthCommand } = await import('@/cli/commands/fetch-auth');\n await fetchAuthCommand(\n {\n url: args.url,\n method: args.method,\n body: args.body,\n headers: args.headers,\n paymentNetwork: args.paymentNetwork,\n },\n args\n );\n }\n )\n .command(\n 'check <url>',\n DESCRIPTIONS.checkEndpointSchema.cli,\n yargs =>\n yargs\n .positional('url', {\n type: 'string',\n description: 'The endpoint URL to check',\n demandOption: true,\n })\n .option('method', {\n alias: 'm',\n type: 'string',\n description:\n 'HTTP method to check. If omitted, all methods declared in the spec are returned.',\n choices: ['GET', 'POST', 'PUT', 'DELETE', 'PATCH'],\n })\n .option('body', {\n alias: 'b',\n type: 'string',\n description: 'Request body as JSON string',\n })\n .option('headers', {\n alias: 'H',\n type: 'string',\n description: 'Additional headers as JSON object',\n })\n .epilogue(DESCRIPTIONS.checkEndpointSchema.epilogue),\n async args => {\n const { checkCommand } = await import('@/cli/commands/check');\n await checkCommand(\n {\n url: args.url,\n method: args.method,\n body: args.body,\n headers: args.headers,\n },\n args\n );\n }\n )\n .command(\n 'try <url>',\n DESCRIPTIONS.try.cli,\n yargs =>\n yargs.positional('url', {\n type: 'string',\n description: 'The origin URL to explore',\n demandOption: true,\n }),\n async args => {\n const { tryCommand } = await import('@/cli/commands/try');\n await tryCommand({ url: args.url }, args);\n }\n )\n .command(\n 'discover <url>',\n DESCRIPTIONS.discoverApiEndpoints.cli,\n yargs =>\n yargs\n .positional('url', {\n type: 'string',\n description: 'The origin URL to discover endpoints from',\n demandOption: true,\n })\n .option('include-guidance', {\n type: 'boolean',\n description:\n 'Guidance override: true=always include, false=never include, omitted=auto by threshold',\n })\n .epilogue(DESCRIPTIONS.discoverApiEndpoints.epilogue),\n async args => {\n const { discoverCommand } = await import('@/cli/commands/discover');\n await discoverCommand(\n { url: args.url, includeGuidance: args.includeGuidance },\n args\n );\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({ url: args.url }, 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: 'The URL of the origin to add',\n demandOption: true,\n }),\n async args => {\n const { addSkillCommand } = await import('@/cli/commands/add-skill');\n await addSkillCommand({ url: args.url }, 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({ url: args.url }, 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 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 originsRemoveCommand({ url: args.url }, 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 '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({ code: args.code ?? args.invite }, args);\n }\n )\n .command(\n 'wallet',\n 'Wallet management commands',\n yargs =>\n yargs\n .command(\n 'info',\n DESCRIPTIONS.getWalletInfo.cli,\n yargs => yargs,\n async args => {\n const { walletInfoCommand } = await import('@/cli/commands/wallet');\n await walletInfoCommand({}, args);\n }\n )\n .command(\n 'redeem <code>',\n DESCRIPTIONS.redeemInvite.cli,\n yargs =>\n yargs.positional('code', {\n type: 'string',\n description: 'The invite code to redeem',\n demandOption: true,\n }),\n async args => {\n const { walletRedeemCommand } =\n await import('@/cli/commands/wallet');\n await walletRedeemCommand({ code: args.code }, args);\n }\n )\n .command(\n 'address',\n 'Get wallet address',\n yargs => yargs,\n async args => {\n const { walletAddressCommand } =\n await import('@/cli/commands/wallet');\n await walletAddressCommand({}, 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 '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 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 settingsSetCommand({ key: args.key, value: args.value }, 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: 'The tool/command that failed',\n demandOption: true,\n })\n .option('summary', {\n type: 'string',\n description: '1-2 sentence summary of the issue',\n demandOption: true,\n })\n .option('error-message', {\n type: 'string',\n description: 'The error message',\n demandOption: true,\n })\n .option('resource', {\n type: 'string',\n description: 'The x402 resource URL (if applicable)',\n })\n .option('stack', {\n type: 'string',\n description: 'Stack trace (if available)',\n })\n .option('full-report', {\n type: 'string',\n description: 'Detailed report with context and repro steps',\n }),\n async args => {\n const { reportErrorCommand } =\n await import('@/cli/commands/report-error');\n await reportErrorCommand(\n {\n tool: args.tool,\n summary: args.summary,\n errorMessage: args.errorMessage,\n resource: args.resource,\n stack: args.stack,\n fullReport: args.fullReport,\n },\n args\n );\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 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 wallet info', 'Get wallet balance')\n .example('$0 wallet 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 from 'yargs';\nimport { hideBin } from 'yargs/helpers';\nimport { Clients } from './cli/commands/install/clients';\nimport { isMppEnabled } from '@/shared/mpp-enabled';\nimport { MCP_VERSION } from '@/shared/version';\nimport { DESCRIPTIONS, buildServerInstructions } from '@/shared/descriptions';\nimport { loadUserOrigins } from '@/shared/user-origins';\nimport type { PaymentProtocol } from './shared/protocols/types';\nimport { Network } from '@agentcash/networks';\n\nconst isClaudeCode = Boolean(process.env.CLAUDECODE);\nconst defaultYes = isClaudeCode || Boolean(process.env.CI);\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 })\n .option('provider', {\n type: 'string',\n description: 'Provider to use for the MCP server',\n required: false,\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'],\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 yargs\n .positional('url', {\n type: 'string',\n description: 'The endpoint URL to fetch',\n demandOption: true,\n })\n .option('method', {\n alias: 'm',\n type: 'string',\n description: 'HTTP method',\n choices: ['GET', 'POST', 'PUT', 'DELETE', 'PATCH'],\n default: 'GET',\n })\n .option('body', {\n alias: 'b',\n type: 'string',\n description: 'Request body as JSON string',\n })\n .option('headers', {\n alias: 'H',\n type: 'string',\n description: 'Additional headers as JSON object',\n })\n .option('payment-method', {\n alias: 'p',\n type: 'string',\n description: 'Payment protocol to use',\n choices: isMppEnabled() ? ['x402', 'mpp', 'auto'] : ['x402', 'auto'],\n })\n .option('payment-network', {\n type: 'string',\n description: 'Payment network to use',\n choices: [Network.BASE, Network.SOLANA],\n })\n .option('max-amount', {\n type: 'number',\n description:\n 'Maximum amount (USD) to pay per request. Aborts if the endpoint requests more. Defaults to $5.',\n })\n .epilogue(DESCRIPTIONS.fetch.epilogue),\n async args => {\n const { fetchCommand } = await import('@/cli/commands/fetch');\n await fetchCommand(\n {\n ...args,\n paymentMethod: args.paymentMethod as PaymentProtocol | undefined,\n paymentNetwork: args.paymentNetwork,\n },\n args\n );\n }\n )\n .command(\n 'fetch-auth <url>',\n DESCRIPTIONS.fetchWithAuth.cli,\n yargs =>\n yargs\n .positional('url', {\n type: 'string',\n description: 'The endpoint URL to fetch',\n demandOption: true,\n })\n .option('method', {\n alias: 'm',\n type: 'string',\n description: 'HTTP method',\n choices: ['GET', 'POST', 'PUT', 'DELETE', 'PATCH'],\n default: 'GET',\n })\n .option('body', {\n alias: 'b',\n type: 'string',\n description: 'Request body as JSON string',\n })\n .option('headers', {\n alias: 'H',\n type: 'string',\n description: 'Additional headers as JSON object',\n })\n .option('payment-network', {\n type: 'string',\n description: 'Payment network to use',\n choices: [Network.BASE, Network.SOLANA],\n })\n .epilogue(DESCRIPTIONS.fetchWithAuth.epilogue),\n async args => {\n const { fetchAuthCommand } = await import('@/cli/commands/fetch-auth');\n await fetchAuthCommand(\n {\n url: args.url,\n method: args.method,\n body: args.body,\n headers: args.headers,\n paymentNetwork: args.paymentNetwork,\n },\n args\n );\n }\n )\n .command(\n 'check <url>',\n DESCRIPTIONS.checkEndpointSchema.cli,\n yargs =>\n yargs\n .positional('url', {\n type: 'string',\n description: 'The endpoint URL to check',\n demandOption: true,\n })\n .option('method', {\n alias: 'm',\n type: 'string',\n description:\n 'HTTP method to check. If omitted, all methods declared in the spec are returned.',\n choices: ['GET', 'POST', 'PUT', 'DELETE', 'PATCH'],\n })\n .option('body', {\n alias: 'b',\n type: 'string',\n description: 'Request body as JSON string',\n })\n .option('headers', {\n alias: 'H',\n type: 'string',\n description: 'Additional headers as JSON object',\n })\n .epilogue(DESCRIPTIONS.checkEndpointSchema.epilogue),\n async args => {\n const { checkCommand } = await import('@/cli/commands/check');\n await checkCommand(\n {\n url: args.url,\n method: args.method,\n body: args.body,\n headers: args.headers,\n },\n args\n );\n }\n )\n .command(\n 'try <url>',\n DESCRIPTIONS.try.cli,\n yargs =>\n yargs.positional('url', {\n type: 'string',\n description: 'The origin URL to explore',\n demandOption: true,\n }),\n async args => {\n const { tryCommand } = await import('@/cli/commands/try');\n await tryCommand({ url: args.url }, args);\n }\n )\n .command(\n 'discover <url>',\n DESCRIPTIONS.discoverApiEndpoints.cli,\n yargs =>\n yargs\n .positional('url', {\n type: 'string',\n description: 'The origin URL to discover endpoints from',\n demandOption: true,\n })\n .option('include-guidance', {\n type: 'boolean',\n description:\n 'Guidance override: true=always include, false=never include, omitted=auto by threshold',\n })\n .epilogue(DESCRIPTIONS.discoverApiEndpoints.epilogue),\n async args => {\n const { discoverCommand } = await import('@/cli/commands/discover');\n await discoverCommand(\n { url: args.url, includeGuidance: args.includeGuidance },\n args\n );\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({ url: args.url }, 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: 'The URL of the origin to add',\n demandOption: true,\n }),\n async args => {\n const { addSkillCommand } = await import('@/cli/commands/add-skill');\n await addSkillCommand({ url: args.url }, 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({ url: args.url }, 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 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 originsRemoveCommand({ url: args.url }, 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 '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({ code: args.code ?? args.invite }, args);\n }\n )\n .command(\n 'wallet',\n 'Wallet management commands',\n yargs =>\n yargs\n .command(\n 'info',\n DESCRIPTIONS.getWalletInfo.cli,\n yargs => yargs,\n async args => {\n const { walletInfoCommand } = await import('@/cli/commands/wallet');\n await walletInfoCommand({}, args);\n }\n )\n .command(\n 'redeem <code>',\n DESCRIPTIONS.redeemInvite.cli,\n yargs =>\n yargs.positional('code', {\n type: 'string',\n description: 'The invite code to redeem',\n demandOption: true,\n }),\n async args => {\n const { walletRedeemCommand } =\n await import('@/cli/commands/wallet');\n await walletRedeemCommand({ code: args.code }, args);\n }\n )\n .command(\n 'address',\n 'Get wallet address',\n yargs => yargs,\n async args => {\n const { walletAddressCommand } =\n await import('@/cli/commands/wallet');\n await walletAddressCommand({}, 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 '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 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 settingsSetCommand({ key: args.key, value: args.value }, 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: 'The tool/command that failed',\n demandOption: true,\n })\n .option('summary', {\n type: 'string',\n description: '1-2 sentence summary of the issue',\n demandOption: true,\n })\n .option('error-message', {\n type: 'string',\n description: 'The error message',\n demandOption: true,\n })\n .option('resource', {\n type: 'string',\n description: 'The x402 resource URL (if applicable)',\n })\n .option('stack', {\n type: 'string',\n description: 'Stack trace (if available)',\n })\n .option('full-report', {\n type: 'string',\n description: 'Detailed report with context and repro steps',\n }),\n async args => {\n const { reportErrorCommand } =\n await import('@/cli/commands/report-error');\n await reportErrorCommand(\n {\n tool: args.tool,\n summary: args.summary,\n errorMessage: args.errorMessage,\n resource: args.resource,\n stack: args.stack,\n fullReport: args.fullReport,\n },\n args\n );\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 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 wallet info', 'Get wallet balance')\n .example('$0 wallet 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"]}
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-ST5ITYIM.js";
|
|
4
4
|
import {
|
|
5
5
|
addServer
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-6ZASEAWN.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-RBEVKU3U.js";
|
|
17
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-CGFED7FU.js";
|
|
18
18
|
import "./chunk-6XGAIMNK.js";
|
|
19
19
|
import {
|
|
20
20
|
getBalance
|
|
@@ -189,4 +189,4 @@ var installMcpServer = async (flags) => {
|
|
|
189
189
|
export {
|
|
190
190
|
installMcpServer
|
|
191
191
|
};
|
|
192
|
-
//# sourceMappingURL=install-
|
|
192
|
+
//# sourceMappingURL=install-GB7Z3Y7Y.js.map
|
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getPlatformPath,
|
|
3
3
|
tryAddServer
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-6ZASEAWN.js";
|
|
5
5
|
import "./chunk-DZNSJ2BA.js";
|
|
6
6
|
import {
|
|
7
7
|
redeemInviteCode
|
|
8
8
|
} from "./chunk-CM6NIM6K.js";
|
|
9
9
|
import "./chunk-RBEVKU3U.js";
|
|
10
|
-
import "./chunk-
|
|
10
|
+
import "./chunk-CGFED7FU.js";
|
|
11
11
|
import {
|
|
12
12
|
getOnboardingCta,
|
|
13
13
|
getWalletInfo
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-UJO2BWV6.js";
|
|
15
15
|
import "./chunk-6XGAIMNK.js";
|
|
16
16
|
import "./chunk-RAFN7MFS.js";
|
|
17
17
|
import {
|
|
18
18
|
getBaseUrl,
|
|
19
19
|
getDepositLink
|
|
20
20
|
} from "./chunk-OKHBFFZP.js";
|
|
21
|
-
import "./chunk-
|
|
21
|
+
import "./chunk-GQTOWVH6.js";
|
|
22
22
|
import "./chunk-G3AVBW3H.js";
|
|
23
23
|
import {
|
|
24
24
|
detect,
|
|
@@ -565,4 +565,4 @@ async function onboardCommand(args, flags) {
|
|
|
565
565
|
export {
|
|
566
566
|
onboardCommand
|
|
567
567
|
};
|
|
568
|
-
//# sourceMappingURL=onboard-
|
|
568
|
+
//# sourceMappingURL=onboard-IOSC3DTG.js.map
|
|
@@ -5,15 +5,16 @@ import {
|
|
|
5
5
|
} from "./chunk-O2AS5QAF.js";
|
|
6
6
|
import {
|
|
7
7
|
resolveOrigin
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-OJ7TLSTP.js";
|
|
9
9
|
import "./chunk-FRPTMW3B.js";
|
|
10
|
-
import "./chunk-
|
|
10
|
+
import "./chunk-IMJKJGRG.js";
|
|
11
11
|
import "./chunk-4AS5OYMF.js";
|
|
12
12
|
import {
|
|
13
13
|
ORIGIN_METADATA,
|
|
14
14
|
PRIMARY_ORIGINS
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-KFJDRCNE.js";
|
|
16
16
|
import "./chunk-7HVLEKUI.js";
|
|
17
|
+
import "./chunk-TTAO2EJK.js";
|
|
17
18
|
import "./chunk-P3Z6XR5A.js";
|
|
18
19
|
import "./chunk-M6OXSG34.js";
|
|
19
20
|
import "./chunk-VDBUUHJF.js";
|
|
@@ -82,4 +83,4 @@ export {
|
|
|
82
83
|
originsListCommand,
|
|
83
84
|
originsRemoveCommand
|
|
84
85
|
};
|
|
85
|
-
//# sourceMappingURL=origins-
|
|
86
|
+
//# sourceMappingURL=origins-GFGI6TY3.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/cli/commands/origins.ts"],"sourcesContent":["import {\n successResponse,\n outputAndExit,\n type OutputFlags,\n errorResponse,\n} from '@/cli/output';\nimport {\n loadUserOrigins,\n addUserOrigin,\n removeUserOrigin,\n} from '@/shared/user-origins';\nimport { PRIMARY_ORIGINS, ORIGIN_METADATA } from '@/shared/descriptions';\nimport { resolveOrigin } from '../lib';\n\nimport type { GlobalFlags } from '@/types';\n\nconst SURFACE = 'cli:origins';\n\ninterface OriginsAddArgs {\n url: string;\n}\n\ninterface OriginsRemoveArgs {\n url: string;\n}\n\nexport async function originsAddCommand(\n args: OriginsAddArgs,\n flags: GlobalFlags<OutputFlags>\n): Promise<void> {\n const resolved = await resolveOrigin(args.url, SURFACE);\n if (!resolved.ok) return outputAndExit(resolved.error, flags);\n\n const origin = addUserOrigin(resolved.origin);\n\n return outputAndExit(\n successResponse({\n url: origin.url,\n title: origin.title,\n description: origin.description,\n note: 'Restart your MCP server for this origin to appear in the model context.',\n ...(resolved.origin.warnings.length > 0 && {\n warnings: resolved.origin.warnings,\n }),\n }),\n flags\n );\n}\n\nexport function originsListCommand(\n _args: object,\n flags: GlobalFlags<OutputFlags>\n): void {\n const primary = PRIMARY_ORIGINS.flatMap(o => {\n const meta = ORIGIN_METADATA[o];\n return meta\n ? [{ url: o, title: meta.title, description: meta.description }]\n : [];\n });\n const added = loadUserOrigins();\n\n return outputAndExit(successResponse({ primary, added }), flags);\n}\n\nexport function originsRemoveCommand(\n args: OriginsRemoveArgs,\n flags: GlobalFlags<OutputFlags>\n): void {\n const url = /^https?:\\/\\//i.test(args.url) ? args.url : `https://${args.url}`;\n\n const result = removeUserOrigin(url);\n\n if (!result.removed) {\n const isPrimary = PRIMARY_ORIGINS.some(o => String(o) === url);\n return outputAndExit(\n errorResponse(\n isPrimary\n ? {\n code: 'GENERAL_ERROR',\n message: `Cannot remove primary origin: ${url}. Only user-added origins can be removed.`,\n surface: SURFACE,\n cause: 'primary_origin',\n }\n : {\n code: 'GENERAL_ERROR',\n message: `Origin not found: ${url}`,\n surface: SURFACE,\n cause: 'not_found',\n }\n ),\n flags\n );\n }\n\n return outputAndExit(successResponse({ removed: true, url }), flags);\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../src/cli/commands/origins.ts"],"sourcesContent":["import {\n successResponse,\n outputAndExit,\n type OutputFlags,\n errorResponse,\n} from '@/cli/output';\nimport {\n loadUserOrigins,\n addUserOrigin,\n removeUserOrigin,\n} from '@/shared/user-origins';\nimport { PRIMARY_ORIGINS, ORIGIN_METADATA } from '@/shared/descriptions';\nimport { resolveOrigin } from '../lib';\n\nimport type { GlobalFlags } from '@/types';\n\nconst SURFACE = 'cli:origins';\n\ninterface OriginsAddArgs {\n url: string;\n}\n\ninterface OriginsRemoveArgs {\n url: string;\n}\n\nexport async function originsAddCommand(\n args: OriginsAddArgs,\n flags: GlobalFlags<OutputFlags>\n): Promise<void> {\n const resolved = await resolveOrigin(args.url, SURFACE);\n if (!resolved.ok) return outputAndExit(resolved.error, flags);\n\n const origin = addUserOrigin(resolved.origin);\n\n return outputAndExit(\n successResponse({\n url: origin.url,\n title: origin.title,\n description: origin.description,\n note: 'Restart your MCP server for this origin to appear in the model context.',\n ...(resolved.origin.warnings.length > 0 && {\n warnings: resolved.origin.warnings,\n }),\n }),\n flags\n );\n}\n\nexport function originsListCommand(\n _args: object,\n flags: GlobalFlags<OutputFlags>\n): void {\n const primary = PRIMARY_ORIGINS.flatMap(o => {\n const meta = ORIGIN_METADATA[o];\n return meta\n ? [{ url: o, title: meta.title, description: meta.description }]\n : [];\n });\n const added = loadUserOrigins();\n\n return outputAndExit(successResponse({ primary, added }), flags);\n}\n\nexport function originsRemoveCommand(\n args: OriginsRemoveArgs,\n flags: GlobalFlags<OutputFlags>\n): void {\n const url = /^https?:\\/\\//i.test(args.url) ? args.url : `https://${args.url}`;\n\n const result = removeUserOrigin(url);\n\n if (!result.removed) {\n const isPrimary = PRIMARY_ORIGINS.some(o => String(o) === url);\n return outputAndExit(\n errorResponse(\n isPrimary\n ? {\n code: 'GENERAL_ERROR',\n message: `Cannot remove primary origin: ${url}. Only user-added origins can be removed.`,\n surface: SURFACE,\n cause: 'primary_origin',\n }\n : {\n code: 'GENERAL_ERROR',\n message: `Origin not found: ${url}`,\n surface: SURFACE,\n cause: 'not_found',\n }\n ),\n flags\n );\n }\n\n return outputAndExit(successResponse({ removed: true, url }), flags);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBA,IAAM,UAAU;AAUhB,eAAsB,kBACpB,MACA,OACe;AACf,QAAM,WAAW,MAAM,cAAc,KAAK,KAAK,OAAO;AACtD,MAAI,CAAC,SAAS,GAAI,QAAO,cAAc,SAAS,OAAO,KAAK;AAE5D,QAAM,SAAS,cAAc,SAAS,MAAM;AAE5C,SAAO;AAAA,IACL,gBAAgB;AAAA,MACd,KAAK,OAAO;AAAA,MACZ,OAAO,OAAO;AAAA,MACd,aAAa,OAAO;AAAA,MACpB,MAAM;AAAA,MACN,GAAI,SAAS,OAAO,SAAS,SAAS,KAAK;AAAA,QACzC,UAAU,SAAS,OAAO;AAAA,MAC5B;AAAA,IACF,CAAC;AAAA,IACD;AAAA,EACF;AACF;AAEO,SAAS,mBACd,OACA,OACM;AACN,QAAM,UAAU,gBAAgB,QAAQ,OAAK;AAC3C,UAAM,OAAO,gBAAgB,CAAC;AAC9B,WAAO,OACH,CAAC,EAAE,KAAK,GAAG,OAAO,KAAK,OAAO,aAAa,KAAK,YAAY,CAAC,IAC7D,CAAC;AAAA,EACP,CAAC;AACD,QAAM,QAAQ,gBAAgB;AAE9B,SAAO,cAAc,gBAAgB,EAAE,SAAS,MAAM,CAAC,GAAG,KAAK;AACjE;AAEO,SAAS,qBACd,MACA,OACM;AACN,QAAM,MAAM,gBAAgB,KAAK,KAAK,GAAG,IAAI,KAAK,MAAM,WAAW,KAAK,GAAG;AAE3E,QAAM,SAAS,iBAAiB,GAAG;AAEnC,MAAI,CAAC,OAAO,SAAS;AACnB,UAAM,YAAY,gBAAgB,KAAK,OAAK,OAAO,CAAC,MAAM,GAAG;AAC7D,WAAO;AAAA,MACL;AAAA,QACE,YACI;AAAA,UACE,MAAM;AAAA,UACN,SAAS,iCAAiC,GAAG;AAAA,UAC7C,SAAS;AAAA,UACT,OAAO;AAAA,QACT,IACA;AAAA,UACE,MAAM;AAAA,UACN,SAAS,qBAAqB,GAAG;AAAA,UACjC,SAAS;AAAA,UACT,OAAO;AAAA,QACT;AAAA,MACN;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAEA,SAAO,cAAc,gBAAgB,EAAE,SAAS,MAAM,IAAI,CAAC,GAAG,KAAK;AACrE;","names":[]}
|
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
import {
|
|
2
2
|
submitErrorReport
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-G5IKWSIV.js";
|
|
4
|
+
import "./chunk-CGFED7FU.js";
|
|
5
5
|
import "./chunk-OKHBFFZP.js";
|
|
6
6
|
import {
|
|
7
7
|
getWalletOrExit
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-OJ7TLSTP.js";
|
|
9
9
|
import "./chunk-FRPTMW3B.js";
|
|
10
|
-
import "./chunk-
|
|
10
|
+
import "./chunk-IMJKJGRG.js";
|
|
11
11
|
import "./chunk-4AS5OYMF.js";
|
|
12
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-KFJDRCNE.js";
|
|
13
13
|
import "./chunk-7HVLEKUI.js";
|
|
14
|
+
import "./chunk-TTAO2EJK.js";
|
|
14
15
|
import "./chunk-P3Z6XR5A.js";
|
|
15
16
|
import "./chunk-M6OXSG34.js";
|
|
16
17
|
import "./chunk-VDBUUHJF.js";
|
|
@@ -60,4 +61,4 @@ async function reportErrorCommand(args, flags) {
|
|
|
60
61
|
export {
|
|
61
62
|
reportErrorCommand
|
|
62
63
|
};
|
|
63
|
-
//# sourceMappingURL=report-error-
|
|
64
|
+
//# sourceMappingURL=report-error-CSI2EPQJ.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/cli/commands/report-error.ts"],"sourcesContent":["import {\n successResponse,\n fromNeverthrowError,\n outputAndExit,\n type OutputFlags,\n} from '@/cli/output';\n\nimport { submitErrorReport } from '@/operations/report-error';\nimport { getWalletOrExit } from '../lib';\n\nimport type { GlobalFlags } from '@/types';\n\nconst SURFACE = 'cli:report-error';\n\ninterface ReportErrorArgs {\n tool: string;\n summary: string;\n errorMessage: string;\n resource?: string;\n stack?: string;\n fullReport?: string;\n}\n\nexport async function reportErrorCommand(\n args: ReportErrorArgs,\n flags: GlobalFlags<OutputFlags>\n): Promise<void> {\n const {\n evmAccount: {\n account: { address },\n },\n } = await getWalletOrExit(flags);\n\n const result = await submitErrorReport(\n SURFACE,\n {\n tool: args.tool,\n summary: args.summary,\n errorMessage: args.errorMessage,\n resource: args.resource,\n stack: args.stack,\n fullReport: args.fullReport,\n },\n address,\n flags.dev\n );\n\n if (result.isErr()) {\n return outputAndExit(fromNeverthrowError(result), flags);\n }\n\n return outputAndExit(\n successResponse({\n submitted: result.value.submitted,\n reportId: result.value.reportId,\n message: result.value.message,\n }),\n flags\n );\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../src/cli/commands/report-error.ts"],"sourcesContent":["import {\n successResponse,\n fromNeverthrowError,\n outputAndExit,\n type OutputFlags,\n} from '@/cli/output';\n\nimport { submitErrorReport } from '@/operations/report-error';\nimport { getWalletOrExit } from '../lib';\n\nimport type { GlobalFlags } from '@/types';\n\nconst SURFACE = 'cli:report-error';\n\ninterface ReportErrorArgs {\n tool: string;\n summary: string;\n errorMessage: string;\n resource?: string;\n stack?: string;\n fullReport?: string;\n}\n\nexport async function reportErrorCommand(\n args: ReportErrorArgs,\n flags: GlobalFlags<OutputFlags>\n): Promise<void> {\n const {\n evmAccount: {\n account: { address },\n },\n } = await getWalletOrExit(flags);\n\n const result = await submitErrorReport(\n SURFACE,\n {\n tool: args.tool,\n summary: args.summary,\n errorMessage: args.errorMessage,\n resource: args.resource,\n stack: args.stack,\n fullReport: args.fullReport,\n },\n address,\n flags.dev\n );\n\n if (result.isErr()) {\n return outputAndExit(fromNeverthrowError(result), flags);\n }\n\n return outputAndExit(\n successResponse({\n submitted: result.value.submitted,\n reportId: result.value.reportId,\n message: result.value.message,\n }),\n flags\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,IAAM,UAAU;AAWhB,eAAsB,mBACpB,MACA,OACe;AACf,QAAM;AAAA,IACJ,YAAY;AAAA,MACV,SAAS,EAAE,QAAQ;AAAA,IACrB;AAAA,EACF,IAAI,MAAM,gBAAgB,KAAK;AAE/B,QAAM,SAAS,MAAM;AAAA,IACnB;AAAA,IACA;AAAA,MACE,MAAM,KAAK;AAAA,MACX,SAAS,KAAK;AAAA,MACd,cAAc,KAAK;AAAA,MACnB,UAAU,KAAK;AAAA,MACf,OAAO,KAAK;AAAA,MACZ,YAAY,KAAK;AAAA,IACnB;AAAA,IACA;AAAA,IACA,MAAM;AAAA,EACR;AAEA,MAAI,OAAO,MAAM,GAAG;AAClB,WAAO,cAAc,oBAAoB,MAAM,GAAG,KAAK;AAAA,EACzD;AAEA,SAAO;AAAA,IACL,gBAAgB;AAAA,MACd,WAAW,OAAO,MAAM;AAAA,MACxB,UAAU,OAAO,MAAM;AAAA,MACvB,SAAS,OAAO,MAAM;AAAA,IACxB,CAAC;AAAA,IACD;AAAA,EACF;AACF;","names":[]}
|
|
@@ -5,10 +5,10 @@ async function serverCommand(flags) {
|
|
|
5
5
|
"MCP server started. If you meant to explore the CLI, run: npx agentcash --help\n"
|
|
6
6
|
);
|
|
7
7
|
}
|
|
8
|
-
const { startServer } = await import("./server-
|
|
8
|
+
const { startServer } = await import("./server-QT37RZYD.js");
|
|
9
9
|
await startServer(flags);
|
|
10
10
|
}
|
|
11
11
|
export {
|
|
12
12
|
serverCommand
|
|
13
13
|
};
|
|
14
|
-
//# sourceMappingURL=server-
|
|
14
|
+
//# sourceMappingURL=server-EM2KLQJY.js.map
|