@absol-labs/agent 0.9.1 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. package/README.md +77 -3
  2. package/dist/cli/amounts.d.ts +26 -0
  3. package/dist/cli/amounts.d.ts.map +1 -0
  4. package/dist/cli/amounts.js +71 -0
  5. package/dist/cli/amounts.js.map +1 -0
  6. package/dist/cli/args.d.ts +32 -0
  7. package/dist/cli/args.d.ts.map +1 -0
  8. package/dist/cli/args.js +119 -0
  9. package/dist/cli/args.js.map +1 -0
  10. package/dist/cli/attesters.d.ts +51 -0
  11. package/dist/cli/attesters.d.ts.map +1 -0
  12. package/dist/cli/attesters.js +58 -0
  13. package/dist/cli/attesters.js.map +1 -0
  14. package/dist/cli/bin.d.ts +3 -0
  15. package/dist/cli/bin.d.ts.map +1 -0
  16. package/dist/cli/bin.js +5 -0
  17. package/dist/cli/bin.js.map +1 -0
  18. package/dist/cli/commands/claim.d.ts +13 -0
  19. package/dist/cli/commands/claim.d.ts.map +1 -0
  20. package/dist/cli/commands/claim.js +86 -0
  21. package/dist/cli/commands/claim.js.map +1 -0
  22. package/dist/cli/commands/close.d.ts +3 -0
  23. package/dist/cli/commands/close.d.ts.map +1 -0
  24. package/dist/cli/commands/close.js +43 -0
  25. package/dist/cli/commands/close.js.map +1 -0
  26. package/dist/cli/commands/discover.d.ts +3 -0
  27. package/dist/cli/commands/discover.d.ts.map +1 -0
  28. package/dist/cli/commands/discover.js +183 -0
  29. package/dist/cli/commands/discover.js.map +1 -0
  30. package/dist/cli/commands/invoke.d.ts +3 -0
  31. package/dist/cli/commands/invoke.d.ts.map +1 -0
  32. package/dist/cli/commands/invoke.js +141 -0
  33. package/dist/cli/commands/invoke.js.map +1 -0
  34. package/dist/cli/commands/mcp.d.ts +3 -0
  35. package/dist/cli/commands/mcp.d.ts.map +1 -0
  36. package/dist/cli/commands/mcp.js +113 -0
  37. package/dist/cli/commands/mcp.js.map +1 -0
  38. package/dist/cli/commands/open.d.ts +3 -0
  39. package/dist/cli/commands/open.d.ts.map +1 -0
  40. package/dist/cli/commands/open.js +279 -0
  41. package/dist/cli/commands/open.js.map +1 -0
  42. package/dist/cli/commands/reclaim-unverified.d.ts +3 -0
  43. package/dist/cli/commands/reclaim-unverified.d.ts.map +1 -0
  44. package/dist/cli/commands/reclaim-unverified.js +164 -0
  45. package/dist/cli/commands/reclaim-unverified.js.map +1 -0
  46. package/dist/cli/commands/reclaim.d.ts +33 -0
  47. package/dist/cli/commands/reclaim.d.ts.map +1 -0
  48. package/dist/cli/commands/reclaim.js +297 -0
  49. package/dist/cli/commands/reclaim.js.map +1 -0
  50. package/dist/cli/commands/status.d.ts +3 -0
  51. package/dist/cli/commands/status.d.ts.map +1 -0
  52. package/dist/cli/commands/status.js +43 -0
  53. package/dist/cli/commands/status.js.map +1 -0
  54. package/dist/cli/commands/streams.d.ts +3 -0
  55. package/dist/cli/commands/streams.d.ts.map +1 -0
  56. package/dist/cli/commands/streams.js +257 -0
  57. package/dist/cli/commands/streams.js.map +1 -0
  58. package/dist/cli/commands/watch.d.ts +3 -0
  59. package/dist/cli/commands/watch.d.ts.map +1 -0
  60. package/dist/cli/commands/watch.js +55 -0
  61. package/dist/cli/commands/watch.js.map +1 -0
  62. package/dist/cli/config.d.ts +61 -0
  63. package/dist/cli/config.d.ts.map +1 -0
  64. package/dist/cli/config.js +140 -0
  65. package/dist/cli/config.js.map +1 -0
  66. package/dist/cli/context.d.ts +29 -0
  67. package/dist/cli/context.d.ts.map +1 -0
  68. package/dist/cli/context.js +2 -0
  69. package/dist/cli/context.js.map +1 -0
  70. package/dist/cli/deps.d.ts +145 -0
  71. package/dist/cli/deps.d.ts.map +1 -0
  72. package/dist/cli/deps.js +227 -0
  73. package/dist/cli/deps.js.map +1 -0
  74. package/dist/cli/descriptor.d.ts +61 -0
  75. package/dist/cli/descriptor.d.ts.map +1 -0
  76. package/dist/cli/descriptor.js +78 -0
  77. package/dist/cli/descriptor.js.map +1 -0
  78. package/dist/cli/errors.d.ts +48 -0
  79. package/dist/cli/errors.d.ts.map +1 -0
  80. package/dist/cli/errors.js +129 -0
  81. package/dist/cli/errors.js.map +1 -0
  82. package/dist/cli/escape-hatch.d.ts +50 -0
  83. package/dist/cli/escape-hatch.d.ts.map +1 -0
  84. package/dist/cli/escape-hatch.js +45 -0
  85. package/dist/cli/escape-hatch.js.map +1 -0
  86. package/dist/cli/index.d.ts +8 -0
  87. package/dist/cli/index.d.ts.map +1 -0
  88. package/dist/cli/index.js +7 -0
  89. package/dist/cli/index.js.map +1 -0
  90. package/dist/cli/listings.d.ts +15 -0
  91. package/dist/cli/listings.d.ts.map +1 -0
  92. package/dist/cli/listings.js +56 -0
  93. package/dist/cli/listings.js.map +1 -0
  94. package/dist/cli/mandate.d.ts +66 -0
  95. package/dist/cli/mandate.d.ts.map +1 -0
  96. package/dist/cli/mandate.js +61 -0
  97. package/dist/cli/mandate.js.map +1 -0
  98. package/dist/cli/output.d.ts +33 -0
  99. package/dist/cli/output.d.ts.map +1 -0
  100. package/dist/cli/output.js +34 -0
  101. package/dist/cli/output.js.map +1 -0
  102. package/dist/cli/preflight.d.ts +38 -0
  103. package/dist/cli/preflight.d.ts.map +1 -0
  104. package/dist/cli/preflight.js +72 -0
  105. package/dist/cli/preflight.js.map +1 -0
  106. package/dist/cli/progress.d.ts +36 -0
  107. package/dist/cli/progress.d.ts.map +1 -0
  108. package/dist/cli/progress.js +40 -0
  109. package/dist/cli/progress.js.map +1 -0
  110. package/dist/cli/run.d.ts +25 -0
  111. package/dist/cli/run.d.ts.map +1 -0
  112. package/dist/cli/run.js +173 -0
  113. package/dist/cli/run.js.map +1 -0
  114. package/dist/cli/scan-range.d.ts +55 -0
  115. package/dist/cli/scan-range.d.ts.map +1 -0
  116. package/dist/cli/scan-range.js +57 -0
  117. package/dist/cli/scan-range.js.map +1 -0
  118. package/dist/cli/status.d.ts +90 -0
  119. package/dist/cli/status.d.ts.map +1 -0
  120. package/dist/cli/status.js +252 -0
  121. package/dist/cli/status.js.map +1 -0
  122. package/dist/cli/timeout.d.ts +30 -0
  123. package/dist/cli/timeout.d.ts.map +1 -0
  124. package/dist/cli/timeout.js +55 -0
  125. package/dist/cli/timeout.js.map +1 -0
  126. package/dist/cli/version.d.ts +12 -0
  127. package/dist/cli/version.d.ts.map +1 -0
  128. package/dist/cli/version.js +22 -0
  129. package/dist/cli/version.js.map +1 -0
  130. package/dist/cli/wallet.d.ts +95 -0
  131. package/dist/cli/wallet.d.ts.map +1 -0
  132. package/dist/cli/wallet.js +169 -0
  133. package/dist/cli/wallet.js.map +1 -0
  134. package/dist/frameworks/crewai.d.ts +10 -0
  135. package/dist/frameworks/crewai.d.ts.map +1 -1
  136. package/dist/frameworks/crewai.js +12 -2
  137. package/dist/frameworks/crewai.js.map +1 -1
  138. package/dist/gateway/server-entry.d.ts +1 -0
  139. package/dist/gateway/server-entry.js +1 -0
  140. package/dist/gateway/server-entry.js.map +1 -1
  141. package/dist/mcp/http-server.d.ts +1 -0
  142. package/dist/mcp/http-server.js +1 -0
  143. package/dist/mcp/http-server.js.map +1 -1
  144. package/dist/mcp/server.d.ts.map +1 -1
  145. package/dist/mcp/server.js +20 -1
  146. package/dist/mcp/server.js.map +1 -1
  147. package/dist/mcp/stdio.d.ts +1 -0
  148. package/dist/mcp/stdio.js +1 -0
  149. package/dist/mcp/stdio.js.map +1 -1
  150. package/dist/sdk/client.d.ts +25 -1
  151. package/dist/sdk/client.d.ts.map +1 -1
  152. package/dist/sdk/client.js +20 -1
  153. package/dist/sdk/client.js.map +1 -1
  154. package/docs/agent-layer.md +2 -1
  155. package/docs/cli.md +569 -0
  156. package/docs/crewai.md +6 -2
  157. package/docs/eliza.md +6 -1
  158. package/docs/mcp-hosted.md +3 -2
  159. package/docs/quickstart.md +18 -5
  160. package/package.json +17 -5
  161. package/src/cli/amounts.ts +102 -0
  162. package/src/cli/args.ts +150 -0
  163. package/src/cli/attesters.ts +86 -0
  164. package/src/cli/bin.ts +5 -0
  165. package/src/cli/commands/claim.ts +100 -0
  166. package/src/cli/commands/close.ts +53 -0
  167. package/src/cli/commands/discover.ts +228 -0
  168. package/src/cli/commands/invoke.ts +177 -0
  169. package/src/cli/commands/mcp.ts +135 -0
  170. package/src/cli/commands/open.ts +331 -0
  171. package/src/cli/commands/reclaim-unverified.ts +206 -0
  172. package/src/cli/commands/reclaim.ts +360 -0
  173. package/src/cli/commands/status.ts +56 -0
  174. package/src/cli/commands/streams.ts +344 -0
  175. package/src/cli/commands/watch.ts +70 -0
  176. package/src/cli/config.ts +208 -0
  177. package/src/cli/context.ts +30 -0
  178. package/src/cli/deps.ts +437 -0
  179. package/src/cli/descriptor.ts +133 -0
  180. package/src/cli/errors.ts +162 -0
  181. package/src/cli/escape-hatch.ts +92 -0
  182. package/src/cli/index.ts +27 -0
  183. package/src/cli/listings.ts +77 -0
  184. package/src/cli/mandate.ts +126 -0
  185. package/src/cli/output.ts +63 -0
  186. package/src/cli/preflight.ts +88 -0
  187. package/src/cli/progress.ts +75 -0
  188. package/src/cli/run.ts +209 -0
  189. package/src/cli/scan-range.ts +76 -0
  190. package/src/cli/status.ts +381 -0
  191. package/src/cli/timeout.ts +64 -0
  192. package/src/cli/version.ts +21 -0
  193. package/src/cli/wallet.ts +241 -0
  194. package/src/frameworks/crewai.ts +13 -2
  195. package/src/gateway/server-entry.ts +1 -0
  196. package/src/mcp/http-server.ts +1 -0
  197. package/src/mcp/server.ts +25 -1
  198. package/src/mcp/stdio.ts +1 -0
  199. package/src/sdk/client.ts +33 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/cli/status.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * How long any single READ is allowed to take before the CLI gives up on it.
3
+ *
4
+ * A live acceptance run found `status` calls that ran past two minutes with no
5
+ * output, and a `close` that took 8s once and 142s the next time. An unbounded
6
+ * wait is indistinguishable from a wedged command, and the only honest way to
7
+ * tell them apart is to stop waiting and say so.
8
+ *
9
+ * Deliberately generous: Base Sepolia's public endpoint is load-balanced and
10
+ * occasionally slow, and a timeout that fires on a merely-slow node would turn
11
+ * a working command into a spurious failure.
12
+ */
13
+ export declare const READ_TIMEOUT_MS = 20000;
14
+ /**
15
+ * Per-RPC-call budget handed to viem's HTTP transport, with a bounded retry
16
+ * count so one slow endpoint cannot multiply into minutes of silence. viem
17
+ * retries with exponential backoff, so `retryCount` is a multiplier on this.
18
+ */
19
+ export declare const RPC_TIMEOUT_MS = 15000;
20
+ export declare const RPC_RETRY_COUNT = 2;
21
+ /**
22
+ * Bound a read.
23
+ *
24
+ * ONLY safe for reads. A broadcast must never be abandoned on a timer: the
25
+ * transaction may already be in the mempool, and a CLI that walked away from it
26
+ * would report a failure for something that in fact settled. Write paths keep
27
+ * waiting, and the heartbeat (`./progress.ts`) is what makes that wait legible.
28
+ */
29
+ export declare function withReadTimeout<T>(operation: () => Promise<T>, label: string, timeoutMs?: number): Promise<T>;
30
+ //# sourceMappingURL=timeout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeout.d.ts","sourceRoot":"","sources":["../../src/cli/timeout.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,eAAe,QAAS,CAAC;AAEtC;;;;GAIG;AACH,eAAO,MAAM,cAAc,QAAS,CAAC;AACrC,eAAO,MAAM,eAAe,IAAI,CAAC;AAEjC;;;;;;;GAOG;AACH,wBAAsB,eAAe,CAAC,CAAC,EACrC,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC3B,KAAK,EAAE,MAAM,EACb,SAAS,GAAE,MAAwB,GAClC,OAAO,CAAC,CAAC,CAAC,CA2BZ"}
@@ -0,0 +1,55 @@
1
+ import { CliError } from "./errors.js";
2
+ /**
3
+ * How long any single READ is allowed to take before the CLI gives up on it.
4
+ *
5
+ * A live acceptance run found `status` calls that ran past two minutes with no
6
+ * output, and a `close` that took 8s once and 142s the next time. An unbounded
7
+ * wait is indistinguishable from a wedged command, and the only honest way to
8
+ * tell them apart is to stop waiting and say so.
9
+ *
10
+ * Deliberately generous: Base Sepolia's public endpoint is load-balanced and
11
+ * occasionally slow, and a timeout that fires on a merely-slow node would turn
12
+ * a working command into a spurious failure.
13
+ */
14
+ export const READ_TIMEOUT_MS = 20_000;
15
+ /**
16
+ * Per-RPC-call budget handed to viem's HTTP transport, with a bounded retry
17
+ * count so one slow endpoint cannot multiply into minutes of silence. viem
18
+ * retries with exponential backoff, so `retryCount` is a multiplier on this.
19
+ */
20
+ export const RPC_TIMEOUT_MS = 15_000;
21
+ export const RPC_RETRY_COUNT = 2;
22
+ /**
23
+ * Bound a read.
24
+ *
25
+ * ONLY safe for reads. A broadcast must never be abandoned on a timer: the
26
+ * transaction may already be in the mempool, and a CLI that walked away from it
27
+ * would report a failure for something that in fact settled. Write paths keep
28
+ * waiting, and the heartbeat (`./progress.ts`) is what makes that wait legible.
29
+ */
30
+ export async function withReadTimeout(operation, label, timeoutMs = READ_TIMEOUT_MS) {
31
+ let timer;
32
+ const pending = operation();
33
+ // Attached before the race so an eventual rejection of the abandoned promise
34
+ // is never an unhandled rejection that takes the process down.
35
+ pending.catch(() => { });
36
+ try {
37
+ return await Promise.race([
38
+ pending,
39
+ new Promise((_resolve, reject) => {
40
+ timer = setTimeout(() => {
41
+ reject(new CliError(`${label} did not answer within ${Math.round(timeoutMs / 1000)}s`, {
42
+ exitCode: 4,
43
+ hint: "the endpoint is unreachable or very slow — retry, or point --rpc-url / --oracle-url at a different one.",
44
+ }));
45
+ }, timeoutMs);
46
+ timer.unref?.();
47
+ }),
48
+ ]);
49
+ }
50
+ finally {
51
+ if (timer !== undefined)
52
+ clearTimeout(timer);
53
+ }
54
+ }
55
+ //# sourceMappingURL=timeout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeout.js","sourceRoot":"","sources":["../../src/cli/timeout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC;AAEtC;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC;AACrC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC;AAEjC;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,SAA2B,EAC3B,KAAa,EACb,YAAoB,eAAe;IAEnC,IAAI,KAAgD,CAAC;IACrD,MAAM,OAAO,GAAG,SAAS,EAAE,CAAC;IAC5B,6EAA6E;IAC7E,+DAA+D;IAC/D,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACxB,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC;YACxB,OAAO;YACP,IAAI,OAAO,CAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE;gBACtC,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;oBACtB,MAAM,CACJ,IAAI,QAAQ,CACV,GAAG,KAAK,0BAA0B,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EACjE;wBACE,QAAQ,EAAE,CAAC;wBACX,IAAI,EAAE,yGAAyG;qBAChH,CACF,CACF,CAAC;gBACJ,CAAC,EAAE,SAAS,CAAC,CAAC;gBACd,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;YAClB,CAAC,CAAC;SACH,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,IAAI,KAAK,KAAK,SAAS;YAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * The published version of this package, read from its own manifest.
3
+ *
4
+ * Kept in its own module because both the runner (`--version`) and the MCP
5
+ * config printer need it, and the printer is a command the runner imports — so
6
+ * reading it from `run.ts` would be a cycle.
7
+ *
8
+ * Falls back rather than throwing: a CLI that cannot state its version should
9
+ * still run.
10
+ */
11
+ export declare function packageVersion(): string;
12
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/cli/version.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,wBAAgB,cAAc,IAAI,MAAM,CAQvC"}
@@ -0,0 +1,22 @@
1
+ import { createRequire } from "node:module";
2
+ /**
3
+ * The published version of this package, read from its own manifest.
4
+ *
5
+ * Kept in its own module because both the runner (`--version`) and the MCP
6
+ * config printer need it, and the printer is a command the runner imports — so
7
+ * reading it from `run.ts` would be a cycle.
8
+ *
9
+ * Falls back rather than throwing: a CLI that cannot state its version should
10
+ * still run.
11
+ */
12
+ export function packageVersion() {
13
+ try {
14
+ const require = createRequire(import.meta.url);
15
+ const manifest = require("../../package.json");
16
+ return manifest.version ?? "0.0.0";
17
+ }
18
+ catch {
19
+ return "0.0.0";
20
+ }
21
+ }
22
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/cli/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C;;;;;;;;;GASG;AACH,MAAM,UAAU,cAAc;IAC5B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/C,MAAM,QAAQ,GAAG,OAAO,CAAC,oBAAoB,CAAyB,CAAC;QACvE,OAAO,QAAQ,CAAC,OAAO,IAAI,OAAO,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC;IACjB,CAAC;AACH,CAAC"}
@@ -0,0 +1,95 @@
1
+ import type { LocalAccount } from "viem";
2
+ /**
3
+ * The ONLY place the CLI resolves a signing wallet.
4
+ *
5
+ * There is deliberately NO `--private-key` flag, and no flag for any other
6
+ * credential. A secret passed on the command line lands in shell history, in
7
+ * `ps` output, and in any CI log that echoes the command; an environment
8
+ * variable does none of those. Secrets are also never echoed back: commands
9
+ * print the derived ADDRESS only.
10
+ *
11
+ * ## Resolution order (first match wins, checked in this order)
12
+ *
13
+ * 1. `METRIK_AGENT_PRIVATE_KEY` — a raw Base Sepolia test key.
14
+ * 2. The `CDP_*` / `METRIK_AGENT_CDP_*` quartet — a Coinbase CDP Server Wallet
15
+ * v2 account, resolved through this package's own `resolveAgentWallet()`.
16
+ *
17
+ * The order matches `parseAgentWalletEnv()` (the MCP server's resolution), so
18
+ * one environment configures every surface the same way. It is checked in a
19
+ * FIXED order rather than "whichever is configured", because an environment
20
+ * carrying both is ambiguous about which address funds the stream — and that
21
+ * ambiguity is a fund-moving one. When both are present the private key wins
22
+ * and `resolveCliWallet` says so on stderr rather than silently picking.
23
+ *
24
+ * ## Why CDP is wired and Privy is not
25
+ *
26
+ * CDP is the only wallet path in this package with live CI evidence
27
+ * (`scripts/e2e-cdp.ts` drives the full journey against the real Base Sepolia
28
+ * escrow), and its account signs LOCALLY — `toAccount(cdpServerAccount)` is a
29
+ * viem local account, so it drops straight into the CLI's existing
30
+ * `http(rpcUrl)` transport with no other change.
31
+ *
32
+ * Privy does not. Both Privy adapters in `src/wallet/` produce a JSON-RPC
33
+ * account with no `signTransaction`: they sign and broadcast by sending
34
+ * `eth_sendTransaction` / `eth_signTypedData_v4` to a provider, so they need the
35
+ * wallet client's TRANSPORT to be that provider rather than a plain RPC. Wiring
36
+ * that into the CLI is not a matter of reading three more variables — it
37
+ * changes the transport for every fund-moving command, and `metrik invoke`
38
+ * additionally requires a local signer (`InvokeOptions.buyer: LocalAccount`).
39
+ * `assertLocalSigner` below therefore REFUSES a non-local account with that
40
+ * fact, instead of accepting one and failing later inside viem. See
41
+ * `docs/cli.md` § Wallet.
42
+ */
43
+ export declare const PRIVATE_KEY_ENV = "METRIK_AGENT_PRIVATE_KEY";
44
+ /** Every environment variable the CDP path reads. Named in errors, never printed. */
45
+ export declare const CDP_ENV_VARS: readonly ["CDP_API_KEY_ID", "CDP_API_KEY_SECRET", "CDP_WALLET_SECRET", "METRIK_AGENT_CDP_OWNER_NAME"];
46
+ /**
47
+ * What the key is for, in the words of the command that needs it. `invoke`
48
+ * signs an EIP-712 invocation capability and broadcasts NOTHING; telling its
49
+ * caller "this command signs a transaction" was simply false.
50
+ */
51
+ export type KeyPurpose = "transaction" | "capability";
52
+ /** Which environment configured the signer, for output and for error text. */
53
+ export type CliWalletSource = "private-key" | "cdp";
54
+ export interface CliWallet {
55
+ readonly source: CliWalletSource;
56
+ /**
57
+ * A LOCAL signer. Every CLI path either broadcasts through `http(rpcUrl)`
58
+ * (which cannot sign) or signs EIP-712 off-chain, so a signer that delegates
59
+ * to a remote provider is refused at resolution rather than mid-command.
60
+ */
61
+ readonly account: LocalAccount;
62
+ /** One line naming the signer's origin. Safe to print: no secret in it. */
63
+ readonly description: string;
64
+ }
65
+ /**
66
+ * Resolves the signing wallet, or throws an actionable configuration error.
67
+ *
68
+ * `note` receives one line when the environment is ambiguous (both wallet
69
+ * sources configured). It is optional so `resolveCliWallet` stays usable from a
70
+ * context with no printer; commands always pass `out.note`.
71
+ */
72
+ export declare function resolveCliWallet(env: NodeJS.ProcessEnv, options?: {
73
+ readonly purpose?: KeyPurpose;
74
+ readonly note?: (line: string) => void;
75
+ }): Promise<CliWallet>;
76
+ /**
77
+ * The same resolution, but "nothing configured" is not an error. Used by
78
+ * look-before-you-leap paths (`open --dry-run`, `streams --address`) that
79
+ * broadcast nothing and must therefore work for someone who does not yet have a
80
+ * funded wallet — which is exactly who a dry run is for.
81
+ *
82
+ * A wallet that is PARTIALLY configured is still an error here: "you set three
83
+ * of the four CDP variables" and "you configured no wallet" are different
84
+ * facts, and rendering the first as the second sends the reader looking in the
85
+ * wrong place.
86
+ */
87
+ export declare function optionalCliWallet(env: NodeJS.ProcessEnv, options?: {
88
+ readonly note?: (line: string) => void;
89
+ }): Promise<CliWallet | null>;
90
+ /**
91
+ * The raw `METRIK_AGENT_PRIVATE_KEY` read, kept separate so the wallet-source
92
+ * precedence above reads as one list rather than as nested conditionals.
93
+ */
94
+ export declare function optionalCliAccount(env: NodeJS.ProcessEnv): LocalAccount | null;
95
+ //# sourceMappingURL=wallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../src/cli/wallet.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAW,YAAY,EAAE,MAAM,MAAM,CAAC;AAKlD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,eAAO,MAAM,eAAe,6BAA6B,CAAC;AAE1D,qFAAqF;AACrF,eAAO,MAAM,YAAY,uGAKf,CAAC;AAEX;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG,aAAa,GAAG,YAAY,CAAC;AAQtD,8EAA8E;AAC9E,MAAM,MAAM,eAAe,GAAG,aAAa,GAAG,KAAK,CAAC;AAEpD,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,2EAA2E;IAC3E,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAMD;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,OAAO,GAAE;IACP,QAAQ,CAAC,OAAO,CAAC,EAAE,UAAU,CAAC;IAC9B,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC,GACL,OAAO,CAAC,SAAS,CAAC,CASpB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,OAAO,GAAE;IAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CAAO,GACvD,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAqE3B;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,YAAY,GAAG,IAAI,CASrB"}
@@ -0,0 +1,169 @@
1
+ import { privateKeyToAccount } from "viem/accounts";
2
+ import { resolveAgentWallet } from "../wallet/provider.js";
3
+ import { configError } from "./errors.js";
4
+ /**
5
+ * The ONLY place the CLI resolves a signing wallet.
6
+ *
7
+ * There is deliberately NO `--private-key` flag, and no flag for any other
8
+ * credential. A secret passed on the command line lands in shell history, in
9
+ * `ps` output, and in any CI log that echoes the command; an environment
10
+ * variable does none of those. Secrets are also never echoed back: commands
11
+ * print the derived ADDRESS only.
12
+ *
13
+ * ## Resolution order (first match wins, checked in this order)
14
+ *
15
+ * 1. `METRIK_AGENT_PRIVATE_KEY` — a raw Base Sepolia test key.
16
+ * 2. The `CDP_*` / `METRIK_AGENT_CDP_*` quartet — a Coinbase CDP Server Wallet
17
+ * v2 account, resolved through this package's own `resolveAgentWallet()`.
18
+ *
19
+ * The order matches `parseAgentWalletEnv()` (the MCP server's resolution), so
20
+ * one environment configures every surface the same way. It is checked in a
21
+ * FIXED order rather than "whichever is configured", because an environment
22
+ * carrying both is ambiguous about which address funds the stream — and that
23
+ * ambiguity is a fund-moving one. When both are present the private key wins
24
+ * and `resolveCliWallet` says so on stderr rather than silently picking.
25
+ *
26
+ * ## Why CDP is wired and Privy is not
27
+ *
28
+ * CDP is the only wallet path in this package with live CI evidence
29
+ * (`scripts/e2e-cdp.ts` drives the full journey against the real Base Sepolia
30
+ * escrow), and its account signs LOCALLY — `toAccount(cdpServerAccount)` is a
31
+ * viem local account, so it drops straight into the CLI's existing
32
+ * `http(rpcUrl)` transport with no other change.
33
+ *
34
+ * Privy does not. Both Privy adapters in `src/wallet/` produce a JSON-RPC
35
+ * account with no `signTransaction`: they sign and broadcast by sending
36
+ * `eth_sendTransaction` / `eth_signTypedData_v4` to a provider, so they need the
37
+ * wallet client's TRANSPORT to be that provider rather than a plain RPC. Wiring
38
+ * that into the CLI is not a matter of reading three more variables — it
39
+ * changes the transport for every fund-moving command, and `metrik invoke`
40
+ * additionally requires a local signer (`InvokeOptions.buyer: LocalAccount`).
41
+ * `assertLocalSigner` below therefore REFUSES a non-local account with that
42
+ * fact, instead of accepting one and failing later inside viem. See
43
+ * `docs/cli.md` § Wallet.
44
+ */
45
+ export const PRIVATE_KEY_ENV = "METRIK_AGENT_PRIVATE_KEY";
46
+ /** Every environment variable the CDP path reads. Named in errors, never printed. */
47
+ export const CDP_ENV_VARS = [
48
+ "CDP_API_KEY_ID",
49
+ "CDP_API_KEY_SECRET",
50
+ "CDP_WALLET_SECRET",
51
+ "METRIK_AGENT_CDP_OWNER_NAME",
52
+ ];
53
+ const PURPOSE_TEXT = {
54
+ transaction: "signs a transaction",
55
+ capability: "signs an off-chain EIP-712 invocation capability (no transaction is broadcast)",
56
+ };
57
+ const WALLET_HINT = `export ${PRIVATE_KEY_ENV}=0x… (a funded Base Sepolia test key), or configure a Coinbase CDP wallet with ` +
58
+ `${CDP_ENV_VARS.join(", ")}. Both are read from the environment only — never pass a credential as a command-line flag.`;
59
+ /**
60
+ * Resolves the signing wallet, or throws an actionable configuration error.
61
+ *
62
+ * `note` receives one line when the environment is ambiguous (both wallet
63
+ * sources configured). It is optional so `resolveCliWallet` stays usable from a
64
+ * context with no printer; commands always pass `out.note`.
65
+ */
66
+ export async function resolveCliWallet(env, options = {}) {
67
+ const wallet = await optionalCliWallet(env, options);
68
+ if (wallet === null) {
69
+ throw configError(`this command ${PURPOSE_TEXT[options.purpose ?? "transaction"]} and needs a wallet: neither ${PRIVATE_KEY_ENV} nor the CDP variables are set`, WALLET_HINT);
70
+ }
71
+ return wallet;
72
+ }
73
+ /**
74
+ * The same resolution, but "nothing configured" is not an error. Used by
75
+ * look-before-you-leap paths (`open --dry-run`, `streams --address`) that
76
+ * broadcast nothing and must therefore work for someone who does not yet have a
77
+ * funded wallet — which is exactly who a dry run is for.
78
+ *
79
+ * A wallet that is PARTIALLY configured is still an error here: "you set three
80
+ * of the four CDP variables" and "you configured no wallet" are different
81
+ * facts, and rendering the first as the second sends the reader looking in the
82
+ * wrong place.
83
+ */
84
+ export async function optionalCliWallet(env, options = {}) {
85
+ const privateKeyAccount = optionalCliAccount(env);
86
+ const cdpConfigured = CDP_ENV_VARS.some((name) => isSet(env[name]));
87
+ if (privateKeyAccount !== null) {
88
+ if (cdpConfigured) {
89
+ options.note?.(`warning: both ${PRIVATE_KEY_ENV} and CDP wallet variables are set; using ${PRIVATE_KEY_ENV} (${privateKeyAccount.address}). Unset it to sign with the CDP wallet.`);
90
+ }
91
+ return {
92
+ source: "private-key",
93
+ account: privateKeyAccount,
94
+ description: `${privateKeyAccount.address} (from ${PRIVATE_KEY_ENV})`,
95
+ };
96
+ }
97
+ if (!cdpConfigured)
98
+ return null;
99
+ const missing = CDP_ENV_VARS.filter((name) => !isSet(env[name]));
100
+ if (missing.length > 0) {
101
+ throw configError(`the CDP wallet is partially configured: ${missing.join(", ")} ${missing.length === 1 ? "is" : "are"} not set`, `a CDP wallet needs all of ${CDP_ENV_VARS.join(", ")}. Set the missing one${missing.length === 1 ? "" : "s"}, or unset the others and use ${PRIVATE_KEY_ENV} instead.`);
102
+ }
103
+ // A CDP SMART account is an ERC-4337 contract account at a DIFFERENT address
104
+ // from its owner EOA, and it is reached through a bundler — which this CLI
105
+ // does not route to: every command broadcasts through `http(--rpc-url)`. So a
106
+ // smart-account environment would silently sign and spend from the OWNER,
107
+ // while the user funded the smart account. Refuse instead.
108
+ if (isSet(env.METRIK_AGENT_CDP_SMART_ACCOUNT_NAME) ||
109
+ isTruthy(env.METRIK_AGENT_CDP_CREATE_SMART_ACCOUNT)) {
110
+ throw configError("the CLI cannot sign from a CDP smart account: METRIK_AGENT_CDP_CREATE_SMART_ACCOUNT / METRIK_AGENT_CDP_SMART_ACCOUNT_NAME is set", "a CDP smart account is an ERC-4337 account at a different address from its owner, reached through a bundler; this CLI broadcasts through --rpc-url and would spend from the OWNER address instead. Unset those two variables to use the owner account directly, or use the SDK's account-abstraction path.");
111
+ }
112
+ const ownerName = env.METRIK_AGENT_CDP_OWNER_NAME;
113
+ let account;
114
+ try {
115
+ const resolved = await resolveAgentWallet({
116
+ cdp: {
117
+ apiKeyId: env.CDP_API_KEY_ID,
118
+ apiKeySecret: env.CDP_API_KEY_SECRET,
119
+ walletSecret: env.CDP_WALLET_SECRET,
120
+ ownerName,
121
+ },
122
+ });
123
+ account = resolved.account;
124
+ }
125
+ catch (error) {
126
+ // Reaching CDP is a network call against an authenticated API, so this is
127
+ // where a wrong key, a revoked key or an outage surfaces. Say which wallet
128
+ // failed; the underlying message carries the rest.
129
+ throw configError(`could not resolve the CDP wallet "${ownerName}"`, `check ${CDP_ENV_VARS.join(", ")}, and that '@coinbase/cdp-sdk' (an optional peer dependency) is installed. Underlying error: ${error instanceof Error ? error.message : String(error)}`);
130
+ }
131
+ return {
132
+ source: "cdp",
133
+ account: assertLocalSigner(account, "cdp"),
134
+ description: `${account.address} (CDP account "${ownerName}")`,
135
+ };
136
+ }
137
+ /**
138
+ * The raw `METRIK_AGENT_PRIVATE_KEY` read, kept separate so the wallet-source
139
+ * precedence above reads as one list rather than as nested conditionals.
140
+ */
141
+ export function optionalCliAccount(env) {
142
+ const raw = env[PRIVATE_KEY_ENV];
143
+ if (raw === undefined || raw.length === 0)
144
+ return null;
145
+ if (!/^0x[0-9a-fA-F]{64}$/.test(raw)) {
146
+ throw configError(`${PRIVATE_KEY_ENV} must be a 0x-prefixed 32-byte hex private key`);
147
+ }
148
+ return privateKeyToAccount(raw);
149
+ }
150
+ /**
151
+ * Every CLI signing path needs a LOCAL signer: fund-moving commands broadcast
152
+ * through `http(--rpc-url)`, which cannot sign, and `invoke` needs a
153
+ * `LocalAccount` to sign the EIP-712 capability. A JSON-RPC account (Privy's
154
+ * adapters) would type-check as an `Account` and then fail somewhere inside
155
+ * viem with a message about a missing method, so it is rejected here with the
156
+ * actual reason.
157
+ */
158
+ function assertLocalSigner(account, source) {
159
+ if (account.type === "local")
160
+ return account;
161
+ throw configError(`the ${source} wallet returned a ${account.type} account, which cannot sign locally`, "the CLI broadcasts through --rpc-url and signs EIP-712 capabilities in-process, so it needs a local signer.");
162
+ }
163
+ function isSet(value) {
164
+ return value !== undefined && value.length > 0;
165
+ }
166
+ function isTruthy(value) {
167
+ return value === "true" || value === "1";
168
+ }
169
+ //# sourceMappingURL=wallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/cli/wallet.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,16 @@ export interface CrewAiVerifiedStreamMcpConfigOptions {
14
14
  readonly allowedToolNames?: readonly string[];
15
15
  readonly cacheToolsList?: boolean;
16
16
  }
17
+ /**
18
+ * The default launcher: the `metrik-mcp` bin this package ships.
19
+ *
20
+ * It used to be `pnpm mcp:stdio`, which only resolves INSIDE this repository —
21
+ * a CrewAI user who installed `@absol-labs/agent` from npm got a config that
22
+ * could never start. `metrik-mcp` is on `PATH` wherever the package is
23
+ * installed (npm/pnpm link it into `node_modules/.bin`), and `npx` resolves it
24
+ * with no install at all.
25
+ */
26
+ export declare const CREWAI_DEFAULT_MCP_COMMAND = "metrik-mcp";
17
27
  export declare function createCrewAiVerifiedStreamMcpConfig(options?: CrewAiVerifiedStreamMcpConfigOptions): CrewAiVerifiedStreamMcpConfig;
18
28
  export declare function renderCrewAiVerifiedStreamPythonExample(options?: CrewAiVerifiedStreamMcpConfigOptions): string;
19
29
  //# sourceMappingURL=crewai.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"crewai.d.ts","sourceRoot":"","sources":["../../src/frameworks/crewai.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iCAAiC,mHAMpC,CAAC;AAEX,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/C,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;CAClC;AAED,MAAM,WAAW,oCAAoC;IACnD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAChD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9C,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;CACnC;AAED,wBAAgB,mCAAmC,CACjD,OAAO,GAAE,oCAAyC,GACjD,6BAA6B,CAU/B;AAED,wBAAgB,uCAAuC,CACrD,OAAO,GAAE,oCAAyC,GACjD,MAAM,CAiDR"}
1
+ {"version":3,"file":"crewai.d.ts","sourceRoot":"","sources":["../../src/frameworks/crewai.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iCAAiC,mHAMpC,CAAC;AAEX,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/C,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;CAClC;AAED,MAAM,WAAW,oCAAoC;IACnD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAChD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9C,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;CACnC;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,0BAA0B,eAAe,CAAC;AAEvD,wBAAgB,mCAAmC,CACjD,OAAO,GAAE,oCAAyC,GACjD,6BAA6B,CAU/B;AAED,wBAAgB,uCAAuC,CACrD,OAAO,GAAE,oCAAyC,GACjD,MAAM,CAiDR"}
@@ -5,11 +5,21 @@ export const CREWAI_VERIFIED_STREAM_TOOL_NAMES = [
5
5
  "reclaim_unspent",
6
6
  "list_streams",
7
7
  ];
8
+ /**
9
+ * The default launcher: the `metrik-mcp` bin this package ships.
10
+ *
11
+ * It used to be `pnpm mcp:stdio`, which only resolves INSIDE this repository —
12
+ * a CrewAI user who installed `@absol-labs/agent` from npm got a config that
13
+ * could never start. `metrik-mcp` is on `PATH` wherever the package is
14
+ * installed (npm/pnpm link it into `node_modules/.bin`), and `npx` resolves it
15
+ * with no install at all.
16
+ */
17
+ export const CREWAI_DEFAULT_MCP_COMMAND = "metrik-mcp";
8
18
  export function createCrewAiVerifiedStreamMcpConfig(options = {}) {
9
19
  return {
10
20
  transport: "stdio",
11
- command: options.command ?? "pnpm",
12
- args: options.args ?? ["mcp:stdio"],
21
+ command: options.command ?? CREWAI_DEFAULT_MCP_COMMAND,
22
+ args: options.args ?? [],
13
23
  env: options.env ?? {},
14
24
  allowedToolNames: options.allowedToolNames ?? CREWAI_VERIFIED_STREAM_TOOL_NAMES,
15
25
  cacheToolsList: options.cacheToolsList ?? true,
@@ -1 +1 @@
1
- {"version":3,"file":"crewai.js","sourceRoot":"","sources":["../../src/frameworks/crewai.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,iCAAiC,GAAG;IAC/C,mBAAmB;IACnB,uBAAuB;IACvB,qBAAqB;IACrB,iBAAiB;IACjB,cAAc;CACN,CAAC;AAmBX,MAAM,UAAU,mCAAmC,CACjD,UAAgD,EAAE;IAElD,OAAO;QACL,SAAS,EAAE,OAAO;QAClB,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,MAAM;QAClC,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC;QACnC,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI,EAAE;QACtB,gBAAgB,EACd,OAAO,CAAC,gBAAgB,IAAI,iCAAiC;QAC/D,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,IAAI;KAC/C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uCAAuC,CACrD,UAAgD,EAAE;IAElD,MAAM,MAAM,GAAG,mCAAmC,CAAC,OAAO,CAAC,CAAC;IAC5D,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC;SAC1C,GAAG,CACF,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACf,YAAY,kBAAkB,CAAC,GAAG,CAAC,OAAO,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAC1E;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,MAAM,SAAS,GAAG,MAAM,CAAC,gBAAgB;SACtC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,gBAAgB,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC;SAC3D,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,OAAO;QACL,sCAAsC;QACtC,uCAAuC;QACvC,0DAA0D;QAC1D,EAAE;QACF,8BAA8B;QAC9B,gBAAgB,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;QACtD,YAAY,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG;QAC5C,WAAW;QACX,UAAU;QACV,QAAQ;QACR,4CAA4C;QAC5C,8BAA8B;QAC9B,SAAS;QACT,WAAW;QACX,QAAQ;QACR,wBAAwB,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,GAAG;QACnE,GAAG;QACH,EAAE;QACF,sBAAsB;QACtB,oCAAoC;QACpC,qFAAqF;QACrF,2EAA2E;QAC3E,wBAAwB;QACxB,GAAG;QACH,EAAE;QACF,cAAc;QACd,6GAA6G;QAC7G,6EAA6E;QAC7E,wBAAwB;QACxB,GAAG;QACH,EAAE;QACF,iDAAiD;QACjD,yBAAyB;QACzB,eAAe;QACf,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAyB;IACjD,MAAM,QAAQ,GAAG,MAAM;SACpB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC;SAChD,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,IAAI,QAAQ,GAAG,CAAC;AACzB,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa;IACvC,OAAO,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AAC/D,CAAC"}
1
+ {"version":3,"file":"crewai.js","sourceRoot":"","sources":["../../src/frameworks/crewai.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,iCAAiC,GAAG;IAC/C,mBAAmB;IACnB,uBAAuB;IACvB,qBAAqB;IACrB,iBAAiB;IACjB,cAAc;CACN,CAAC;AAmBX;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,YAAY,CAAC;AAEvD,MAAM,UAAU,mCAAmC,CACjD,UAAgD,EAAE;IAElD,OAAO;QACL,SAAS,EAAE,OAAO;QAClB,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,0BAA0B;QACtD,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE;QACxB,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI,EAAE;QACtB,gBAAgB,EACd,OAAO,CAAC,gBAAgB,IAAI,iCAAiC;QAC/D,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,IAAI;KAC/C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uCAAuC,CACrD,UAAgD,EAAE;IAElD,MAAM,MAAM,GAAG,mCAAmC,CAAC,OAAO,CAAC,CAAC;IAC5D,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC;SAC1C,GAAG,CACF,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACf,YAAY,kBAAkB,CAAC,GAAG,CAAC,OAAO,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAC1E;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,MAAM,SAAS,GAAG,MAAM,CAAC,gBAAgB;SACtC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,gBAAgB,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC;SAC3D,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,OAAO;QACL,sCAAsC;QACtC,uCAAuC;QACvC,0DAA0D;QAC1D,EAAE;QACF,8BAA8B;QAC9B,gBAAgB,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;QACtD,YAAY,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG;QAC5C,WAAW;QACX,UAAU;QACV,QAAQ;QACR,4CAA4C;QAC5C,8BAA8B;QAC9B,SAAS;QACT,WAAW;QACX,QAAQ;QACR,wBAAwB,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,GAAG;QACnE,GAAG;QACH,EAAE;QACF,sBAAsB;QACtB,oCAAoC;QACpC,qFAAqF;QACrF,2EAA2E;QAC3E,wBAAwB;QACxB,GAAG;QACH,EAAE;QACF,cAAc;QACd,6GAA6G;QAC7G,6EAA6E;QAC7E,wBAAwB;QACxB,GAAG;QACH,EAAE;QACF,iDAAiD;QACjD,yBAAyB;QACzB,eAAe;QACf,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAyB;IACjD,MAAM,QAAQ,GAAG,MAAM;SACpB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC;SAChD,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,IAAI,QAAQ,GAAG,CAAC;AACzB,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa;IACvC,OAAO,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AAC/D,CAAC"}
@@ -1,2 +1,3 @@
1
+ #!/usr/bin/env node
1
2
  export {};
2
3
  //# sourceMappingURL=server-entry.d.ts.map
@@ -1,3 +1,4 @@
1
+ #!/usr/bin/env node
1
2
  import { startCallerAuthGatewayServerFromEnv } from "./http-server.js";
2
3
  /**
3
4
  * Runnable entrypoint for the reference caller-auth gateway (metrik-agent#63).
@@ -1 +1 @@
1
- {"version":3,"file":"server-entry.js","sourceRoot":"","sources":["../../src/gateway/server-entry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mCAAmC,EAAE,MAAM,kBAAkB,CAAC;AAEvE;;;;;;;GAOG;AACH,KAAK,UAAU,IAAI;IACjB,MAAM,MAAM,GAAG,MAAM,mCAAmC,EAAE,CAAC;IAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,SAAS,CAAC;IAC1D,OAAO,CAAC,KAAK,CACX,oDAAoD,IAAI,IAAI,MAAM,CAAC,SAAS,EAAE,CAC/E,CAAC;IAEF,MAAM,QAAQ,GAAG,CAAC,MAAc,EAAE,EAAE;QAClC,OAAO,CAAC,KAAK,CACX,gCAAgC,MAAM,2BAA2B,CAClE,CAAC;QACF,MAAM;aACH,KAAK,EAAE;aACP,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aAC3B,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC,CAAC;IACF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CACX,KAAK,YAAY,KAAK;QACpB,CAAC,CAAC,KAAK,CAAC,OAAO;QACf,CAAC,CAAC,4CAA4C,CACjD,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"server-entry.js","sourceRoot":"","sources":["../../src/gateway/server-entry.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,mCAAmC,EAAE,MAAM,kBAAkB,CAAC;AAEvE;;;;;;;GAOG;AACH,KAAK,UAAU,IAAI;IACjB,MAAM,MAAM,GAAG,MAAM,mCAAmC,EAAE,CAAC;IAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,SAAS,CAAC;IAC1D,OAAO,CAAC,KAAK,CACX,oDAAoD,IAAI,IAAI,MAAM,CAAC,SAAS,EAAE,CAC/E,CAAC;IAEF,MAAM,QAAQ,GAAG,CAAC,MAAc,EAAE,EAAE;QAClC,OAAO,CAAC,KAAK,CACX,gCAAgC,MAAM,2BAA2B,CAClE,CAAC;QACF,MAAM;aACH,KAAK,EAAE;aACP,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aAC3B,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC,CAAC;IACF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CACX,KAAK,YAAY,KAAK;QACpB,CAAC,CAAC,KAAK,CAAC,OAAO;QACf,CAAC,CAAC,4CAA4C,CACjD,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -1,2 +1,3 @@
1
+ #!/usr/bin/env node
1
2
  export {};
2
3
  //# sourceMappingURL=http-server.d.ts.map
@@ -1,3 +1,4 @@
1
+ #!/usr/bin/env node
1
2
  import { startHostedMcpHttpServerFromEnv } from "./http.js";
2
3
  /**
3
4
  * Runnable entrypoint for the hosted, multi-tenant MCP server over Streamable
@@ -1 +1 @@
1
- {"version":3,"file":"http-server.js","sourceRoot":"","sources":["../../src/mcp/http-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,WAAW,CAAC;AAE5D;;;;;;;GAOG;AACH,KAAK,UAAU,IAAI;IACjB,MAAM,MAAM,GAAG,MAAM,+BAA+B,EAAE,CAAC;IACvD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,MAAM,CAAC;IACnD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,SAAS,CAAC;IACtD,oDAAoD;IACpD,OAAO,CAAC,KAAK,CACX,+CAA+C,IAAI,IAAI,MAAM,CAAC,SAAS,GAAG,IAAI,EAAE,CACjF,CAAC;IAEF,MAAM,QAAQ,GAAG,CAAC,MAAc,EAAE,EAAE;QAClC,OAAO,CAAC,KAAK,CAAC,2BAA2B,MAAM,2BAA2B,CAAC,CAAC;QAC5E,MAAM;aACH,KAAK,EAAE;aACP,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aAC3B,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC,CAAC;IACF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CACX,KAAK,YAAY,KAAK;QACpB,CAAC,CAAC,KAAK,CAAC,OAAO;QACf,CAAC,CAAC,mCAAmC,CACxC,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"http-server.js","sourceRoot":"","sources":["../../src/mcp/http-server.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,+BAA+B,EAAE,MAAM,WAAW,CAAC;AAE5D;;;;;;;GAOG;AACH,KAAK,UAAU,IAAI;IACjB,MAAM,MAAM,GAAG,MAAM,+BAA+B,EAAE,CAAC;IACvD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,MAAM,CAAC;IACnD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,SAAS,CAAC;IACtD,oDAAoD;IACpD,OAAO,CAAC,KAAK,CACX,+CAA+C,IAAI,IAAI,MAAM,CAAC,SAAS,GAAG,IAAI,EAAE,CACjF,CAAC;IAEF,MAAM,QAAQ,GAAG,CAAC,MAAc,EAAE,EAAE;QAClC,OAAO,CAAC,KAAK,CAAC,2BAA2B,MAAM,2BAA2B,CAAC,CAAC;QAC5E,MAAM;aACH,KAAK,EAAE;aACP,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aAC3B,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC,CAAC;IACF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CACX,KAAK,YAAY,KAAK;QACpB,CAAC,CAAC,KAAK,CAAC,OAAO;QACf,CAAC,CAAC,mCAAmC,CACxC,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
@@ -516,8 +516,27 @@ export function createVerifiedStreamMcpServer(options) {
516
516
  },
517
517
  };
518
518
  }
519
+ /** One readable line per invalid or missing environment variable. */
520
+ function describeEnvIssues(error) {
521
+ const seen = new Set();
522
+ for (const issue of error.issues) {
523
+ const name = issue.path.join(".");
524
+ seen.add(issue.code === "invalid_type" && issue.received === "undefined"
525
+ ? `${name} is not set`
526
+ : `${name} is invalid (${issue.message})`);
527
+ }
528
+ return [...seen].join("; ");
529
+ }
519
530
  export function parseMetrikAgentEnv(env = process.env) {
520
- const parsed = metrikAgentEnvSchema.parse(env);
531
+ const result = metrikAgentEnvSchema.safeParse(env);
532
+ if (!result.success) {
533
+ // `.parse()` threw a ZodError whose message is a JSON array of issue
534
+ // objects. `metrik-mcp` is started by an MCP host and fails closed on stdio,
535
+ // so that array was the ONLY thing an operator ever saw — a correct failure
536
+ // rendered as noise. Name the variables instead.
537
+ throw new Error(`metrik-mcp is not configured: ${describeEnvIssues(result.error)}. Set METRIK_AGENT_RPC_URL (an http(s) URL), METRIK_AGENT_ESCROW and METRIK_AGENT_USDC (EVM addresses), plus a wallet (METRIK_AGENT_PRIVATE_KEY, or the CDP/Privy variables). METRIK_AGENT_CHAIN_ID defaults to Base Sepolia (${baseSepolia.id}).`);
538
+ }
539
+ const parsed = result.data;
521
540
  const chainId = Number(parsed.METRIK_AGENT_CHAIN_ID ?? baseSepolia.id);
522
541
  if (!Number.isInteger(chainId) || chainId <= 0) {
523
542
  throw new Error("METRIK_AGENT_CHAIN_ID must be a positive integer");