@absol-labs/agent 0.1.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 (83) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +196 -0
  3. package/dist/discovery/registry.d.ts +68 -0
  4. package/dist/discovery/registry.d.ts.map +1 -0
  5. package/dist/discovery/registry.js +148 -0
  6. package/dist/discovery/registry.js.map +1 -0
  7. package/dist/frameworks/agentkit.d.ts +158 -0
  8. package/dist/frameworks/agentkit.d.ts.map +1 -0
  9. package/dist/frameworks/agentkit.js +339 -0
  10. package/dist/frameworks/agentkit.js.map +1 -0
  11. package/dist/frameworks/crewai.d.ts +19 -0
  12. package/dist/frameworks/crewai.d.ts.map +1 -0
  13. package/dist/frameworks/crewai.js +73 -0
  14. package/dist/frameworks/crewai.js.map +1 -0
  15. package/dist/frameworks/eliza.d.ts +393 -0
  16. package/dist/frameworks/eliza.d.ts.map +1 -0
  17. package/dist/frameworks/eliza.js +542 -0
  18. package/dist/frameworks/eliza.js.map +1 -0
  19. package/dist/frameworks/langchain.d.ts +31 -0
  20. package/dist/frameworks/langchain.d.ts.map +1 -0
  21. package/dist/frameworks/langchain.js +206 -0
  22. package/dist/frameworks/langchain.js.map +1 -0
  23. package/dist/index.d.ts +14 -0
  24. package/dist/index.d.ts.map +1 -0
  25. package/dist/index.js +16 -0
  26. package/dist/index.js.map +1 -0
  27. package/dist/mandates/env.d.ts +51 -0
  28. package/dist/mandates/env.d.ts.map +1 -0
  29. package/dist/mandates/env.js +148 -0
  30. package/dist/mandates/env.js.map +1 -0
  31. package/dist/mandates/mandate.d.ts +214 -0
  32. package/dist/mandates/mandate.d.ts.map +1 -0
  33. package/dist/mandates/mandate.js +172 -0
  34. package/dist/mandates/mandate.js.map +1 -0
  35. package/dist/mcp/http-server.d.ts +2 -0
  36. package/dist/mcp/http-server.d.ts.map +1 -0
  37. package/dist/mcp/http-server.js +32 -0
  38. package/dist/mcp/http-server.js.map +1 -0
  39. package/dist/mcp/http.d.ts +114 -0
  40. package/dist/mcp/http.d.ts.map +1 -0
  41. package/dist/mcp/http.js +428 -0
  42. package/dist/mcp/http.js.map +1 -0
  43. package/dist/mcp/server.d.ts +119 -0
  44. package/dist/mcp/server.d.ts.map +1 -0
  45. package/dist/mcp/server.js +679 -0
  46. package/dist/mcp/server.js.map +1 -0
  47. package/dist/mcp/stdio.d.ts +2 -0
  48. package/dist/mcp/stdio.d.ts.map +1 -0
  49. package/dist/mcp/stdio.js +6 -0
  50. package/dist/mcp/stdio.js.map +1 -0
  51. package/dist/sdk/client.d.ts +78 -0
  52. package/dist/sdk/client.d.ts.map +1 -0
  53. package/dist/sdk/client.js +99 -0
  54. package/dist/sdk/client.js.map +1 -0
  55. package/dist/wallet/provider.d.ts +51 -0
  56. package/dist/wallet/provider.d.ts.map +1 -0
  57. package/dist/wallet/provider.js +107 -0
  58. package/dist/wallet/provider.js.map +1 -0
  59. package/dist/x402/facilitator.d.ts +315 -0
  60. package/dist/x402/facilitator.d.ts.map +1 -0
  61. package/dist/x402/facilitator.js +194 -0
  62. package/dist/x402/facilitator.js.map +1 -0
  63. package/dist/zktls/reclaim.d.ts +137 -0
  64. package/dist/zktls/reclaim.d.ts.map +1 -0
  65. package/dist/zktls/reclaim.js +245 -0
  66. package/dist/zktls/reclaim.js.map +1 -0
  67. package/package.json +86 -0
  68. package/src/discovery/registry.ts +255 -0
  69. package/src/frameworks/agentkit.ts +537 -0
  70. package/src/frameworks/crewai.ts +102 -0
  71. package/src/frameworks/eliza.ts +776 -0
  72. package/src/frameworks/langchain.ts +325 -0
  73. package/src/index.ts +179 -0
  74. package/src/mandates/env.ts +222 -0
  75. package/src/mandates/mandate.ts +280 -0
  76. package/src/mcp/http-server.ts +38 -0
  77. package/src/mcp/http.ts +620 -0
  78. package/src/mcp/server.ts +1006 -0
  79. package/src/mcp/stdio.ts +8 -0
  80. package/src/sdk/client.ts +222 -0
  81. package/src/wallet/provider.ts +197 -0
  82. package/src/x402/facilitator.ts +336 -0
  83. package/src/zktls/reclaim.ts +424 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=stdio.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stdio.d.ts","sourceRoot":"","sources":["../../src/mcp/stdio.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ import { startVerifiedStreamMcpServerStdio } from "./server.js";
2
+ startVerifiedStreamMcpServerStdio().catch((error) => {
3
+ console.error(error instanceof Error ? error.message : "failed to start MCP server");
4
+ process.exit(1);
5
+ });
6
+ //# sourceMappingURL=stdio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stdio.js","sourceRoot":"","sources":["../../src/mcp/stdio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iCAAiC,EAAE,MAAM,aAAa,CAAC;AAEhE,iCAAiC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IAClD,OAAO,CAAC,KAAK,CACX,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,4BAA4B,CACtE,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -0,0 +1,78 @@
1
+ import { StreamProofClient, type HireComputeResult, type StreamProofClientConfig, type StreamProofStream } from "@absol-labs/sdk";
2
+ import { type MandateDecision, type SignedSpendMandate } from "../mandates/mandate.js";
3
+ export interface OpenVerifiedStreamInput {
4
+ readonly operator: `0x${string}`;
5
+ readonly serviceRef: `0x${string}`;
6
+ readonly budgetUsdc: bigint;
7
+ readonly ratePerSecondUsdc: bigint;
8
+ readonly maxDurationSeconds: number;
9
+ readonly signedMandate: SignedSpendMandate;
10
+ readonly spentSoFarUsdc: bigint;
11
+ readonly nowSeconds: number;
12
+ readonly revokedMandateIds?: Iterable<`0x${string}`>;
13
+ }
14
+ export interface StreamStatusView {
15
+ readonly stream: StreamProofStream;
16
+ readonly claimable: bigint;
17
+ readonly reclaimable: bigint;
18
+ }
19
+ export interface ReclaimVerifiedStreamOptions {
20
+ readonly closeFirst?: boolean;
21
+ }
22
+ export interface ReclaimVerifiedStreamResult {
23
+ readonly closeResult: StreamProofTransactionResult | null;
24
+ readonly reclaimResult: StreamProofTransactionResult;
25
+ }
26
+ export type StreamProofTransactionResult = Awaited<ReturnType<StreamProofClient["claim"]>>;
27
+ export interface MandateAuthorizedStreamActionInput {
28
+ readonly streamId: `0x${string}`;
29
+ readonly signedMandate: SignedSpendMandate;
30
+ readonly spentSoFarUsdc: bigint;
31
+ readonly nowSeconds: number;
32
+ readonly revokedMandateIds?: Iterable<`0x${string}`>;
33
+ }
34
+ export interface ReclaimAuthorizedStreamInput extends MandateAuthorizedStreamActionInput, ReclaimVerifiedStreamOptions {
35
+ }
36
+ export interface AgentSdkClient {
37
+ hireAkashCompute(input: {
38
+ readonly operator: `0x${string}`;
39
+ readonly serviceRef: `0x${string}`;
40
+ readonly budgetUsdc: bigint;
41
+ readonly ratePerSecond: bigint;
42
+ readonly maxDurationSeconds: number;
43
+ }): Promise<HireComputeResult>;
44
+ getStream(streamId: `0x${string}`): Promise<StreamProofStream>;
45
+ claimable(streamId: `0x${string}`): Promise<bigint>;
46
+ reclaimable(streamId: `0x${string}`): Promise<bigint>;
47
+ claim(streamId: `0x${string}`): Promise<StreamProofTransactionResult>;
48
+ close(streamId: `0x${string}`): Promise<StreamProofTransactionResult>;
49
+ reclaim(streamId: `0x${string}`): Promise<StreamProofTransactionResult>;
50
+ }
51
+ export type AgentSdkClientFactory = (config: StreamProofClientConfig) => AgentSdkClient;
52
+ export interface VerifiedStreamAgentOpener {
53
+ openVerifiedStream(input: OpenVerifiedStreamInput): Promise<HireComputeResult>;
54
+ }
55
+ export declare class MandateDeniedError extends Error {
56
+ readonly reason: NonNullable<MandateDecision["reason"]>;
57
+ constructor(reason: NonNullable<MandateDecision["reason"]>);
58
+ }
59
+ export declare class VerifiedStreamAgentClient implements VerifiedStreamAgentOpener {
60
+ private readonly sdkClient;
61
+ constructor(config: StreamProofClientConfig, options?: {
62
+ readonly createSdkClient?: AgentSdkClientFactory;
63
+ });
64
+ openVerifiedStream(input: OpenVerifiedStreamInput): Promise<HireComputeResult>;
65
+ getStreamStatus(streamId: `0x${string}`): Promise<StreamStatusView>;
66
+ claimStream(input: MandateAuthorizedStreamActionInput): Promise<StreamProofTransactionResult>;
67
+ closeStream(input: MandateAuthorizedStreamActionInput): Promise<StreamProofTransactionResult>;
68
+ reclaimStream(input: ReclaimAuthorizedStreamInput): Promise<ReclaimVerifiedStreamResult>;
69
+ /**
70
+ * Authorizes a BUYER-RECOVERY action (close / reclaim). These only return
71
+ * unspent funds to the buyer or stop payment, so they are authorized on
72
+ * mandate-owner signature ALONE — never gated by expiry, revocation, or caps,
73
+ * which would otherwise let a lapsed mandate strand the buyer's own funds.
74
+ */
75
+ private authorizeBuyerRecovery;
76
+ private authorizeExistingStreamAction;
77
+ }
78
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/sdk/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,99 @@
1
+ import { StreamProofClient, } from "@absol-labs/sdk";
2
+ import { checkMandate, verifyMandateOwnerSignature, } from "../mandates/mandate.js";
3
+ export class MandateDeniedError extends Error {
4
+ reason;
5
+ constructor(reason) {
6
+ super(`mandate denied: ${reason}`);
7
+ this.name = "MandateDeniedError";
8
+ this.reason = reason;
9
+ }
10
+ }
11
+ export class VerifiedStreamAgentClient {
12
+ sdkClient;
13
+ constructor(config, options = {}) {
14
+ this.sdkClient = (options.createSdkClient ?? defaultSdkClientFactory)(config);
15
+ }
16
+ async openVerifiedStream(input) {
17
+ const decision = await checkMandate(input.signedMandate, toHireRequest(input), input.spentSoFarUsdc, {
18
+ nowSeconds: input.nowSeconds,
19
+ ...(input.revokedMandateIds === undefined
20
+ ? {}
21
+ : { revokedMandateIds: input.revokedMandateIds }),
22
+ });
23
+ if (!decision.allowed) {
24
+ throw new MandateDeniedError(decision.reason ?? "mandate-expired");
25
+ }
26
+ return await this.sdkClient.hireAkashCompute({
27
+ operator: input.operator,
28
+ serviceRef: input.serviceRef,
29
+ budgetUsdc: input.budgetUsdc,
30
+ ratePerSecond: input.ratePerSecondUsdc,
31
+ maxDurationSeconds: input.maxDurationSeconds,
32
+ });
33
+ }
34
+ async getStreamStatus(streamId) {
35
+ const [stream, claimable, reclaimable] = await Promise.all([
36
+ this.sdkClient.getStream(streamId),
37
+ this.sdkClient.claimable(streamId),
38
+ this.sdkClient.reclaimable(streamId),
39
+ ]);
40
+ return { stream, claimable, reclaimable };
41
+ }
42
+ async claimStream(input) {
43
+ await this.authorizeExistingStreamAction(input);
44
+ return await this.sdkClient.claim(input.streamId);
45
+ }
46
+ async closeStream(input) {
47
+ await this.authorizeBuyerRecovery(input);
48
+ return await this.sdkClient.close(input.streamId);
49
+ }
50
+ async reclaimStream(input) {
51
+ await this.authorizeBuyerRecovery(input);
52
+ const closeResult = input.closeFirst
53
+ ? await this.sdkClient.close(input.streamId)
54
+ : null;
55
+ const reclaimResult = await this.sdkClient.reclaim(input.streamId);
56
+ return { closeResult, reclaimResult };
57
+ }
58
+ /**
59
+ * Authorizes a BUYER-RECOVERY action (close / reclaim). These only return
60
+ * unspent funds to the buyer or stop payment, so they are authorized on
61
+ * mandate-owner signature ALONE — never gated by expiry, revocation, or caps,
62
+ * which would otherwise let a lapsed mandate strand the buyer's own funds.
63
+ */
64
+ async authorizeBuyerRecovery(input) {
65
+ const decision = await verifyMandateOwnerSignature(input.signedMandate);
66
+ if (!decision.allowed) {
67
+ throw new MandateDeniedError(decision.reason ?? "invalid-signature");
68
+ }
69
+ }
70
+ async authorizeExistingStreamAction(input) {
71
+ const stream = await this.sdkClient.getStream(input.streamId);
72
+ const decision = await checkMandate(input.signedMandate, {
73
+ operator: stream.operator,
74
+ budgetUsdc: 0n,
75
+ ratePerSecondUsdc: 0n,
76
+ maxDurationSeconds: 0,
77
+ }, input.spentSoFarUsdc, {
78
+ nowSeconds: input.nowSeconds,
79
+ ...(input.revokedMandateIds === undefined
80
+ ? {}
81
+ : { revokedMandateIds: input.revokedMandateIds }),
82
+ });
83
+ if (!decision.allowed) {
84
+ throw new MandateDeniedError(decision.reason ?? "mandate-expired");
85
+ }
86
+ }
87
+ }
88
+ function defaultSdkClientFactory(config) {
89
+ return new StreamProofClient(config);
90
+ }
91
+ function toHireRequest(input) {
92
+ return {
93
+ operator: input.operator,
94
+ budgetUsdc: input.budgetUsdc,
95
+ ratePerSecondUsdc: input.ratePerSecondUsdc,
96
+ maxDurationSeconds: input.maxDurationSeconds,
97
+ };
98
+ }
99
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/sdk/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,GAIlB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,YAAY,EACZ,2BAA2B,GAI5B,MAAM,wBAAwB,CAAC;AAsEhC,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAClC,MAAM,CAAyC;IAExD,YAAY,MAA8C;QACxD,KAAK,CAAC,mBAAmB,MAAM,EAAE,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CACF;AAED,MAAM,OAAO,yBAAyB;IACnB,SAAS,CAAiB;IAE3C,YACE,MAA+B,EAC/B,UAAgE,EAAE;QAElE,IAAI,CAAC,SAAS,GAAG,CAAC,OAAO,CAAC,eAAe,IAAI,uBAAuB,CAAC,CACnE,MAAM,CACP,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,KAA8B;QAE9B,MAAM,QAAQ,GAAG,MAAM,YAAY,CACjC,KAAK,CAAC,aAAa,EACnB,aAAa,CAAC,KAAK,CAAC,EACpB,KAAK,CAAC,cAAc,EACpB;YACE,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,GAAG,CAAC,KAAK,CAAC,iBAAiB,KAAK,SAAS;gBACvC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAAE,CAAC;SACpD,CACF,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtB,MAAM,IAAI,kBAAkB,CAAC,QAAQ,CAAC,MAAM,IAAI,iBAAiB,CAAC,CAAC;QACrE,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC;YAC3C,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,aAAa,EAAE,KAAK,CAAC,iBAAiB;YACtC,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;SAC7C,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,QAAuB;QAC3C,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACzD,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC;YAClC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC;YAClC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC;SACrC,CAAC,CAAC;QAEH,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,WAAW,CACf,KAAyC;QAEzC,MAAM,IAAI,CAAC,6BAA6B,CAAC,KAAK,CAAC,CAAC;QAChD,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,WAAW,CACf,KAAyC;QAEzC,MAAM,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;QACzC,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,KAAmC;QAEnC,MAAM,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;QACzC,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU;YAClC,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC5C,CAAC,CAAC,IAAI,CAAC;QACT,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACnE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC;IACxC,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,sBAAsB,CAClC,KAAyC;QAEzC,MAAM,QAAQ,GAAG,MAAM,2BAA2B,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACxE,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtB,MAAM,IAAI,kBAAkB,CAAC,QAAQ,CAAC,MAAM,IAAI,mBAAmB,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,6BAA6B,CACzC,KAAyC;QAEzC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC9D,MAAM,QAAQ,GAAG,MAAM,YAAY,CACjC,KAAK,CAAC,aAAa,EACnB;YACE,QAAQ,EAAE,MAAM,CAAC,QAAyB;YAC1C,UAAU,EAAE,EAAE;YACd,iBAAiB,EAAE,EAAE;YACrB,kBAAkB,EAAE,CAAC;SACtB,EACD,KAAK,CAAC,cAAc,EACpB;YACE,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,GAAG,CAAC,KAAK,CAAC,iBAAiB,KAAK,SAAS;gBACvC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAAE,CAAC;SACpD,CACF,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtB,MAAM,IAAI,kBAAkB,CAAC,QAAQ,CAAC,MAAM,IAAI,iBAAiB,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;CACF;AAED,SAAS,uBAAuB,CAC9B,MAA+B;IAE/B,OAAO,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,aAAa,CAAC,KAA8B;IACnD,OAAO;QACL,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;QAC1C,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;KAC7C,CAAC;AACJ,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { type StreamProofClientConfig } from "@absol-labs/sdk";
2
+ import { type EvmServerAccount, type EvmSmartAccount } from "@coinbase/cdp-sdk";
3
+ import type { Account } from "viem";
4
+ import { VerifiedStreamAgentClient, type AgentSdkClientFactory } from "../sdk/client.js";
5
+ export declare class AgentWalletConfigError extends Error {
6
+ constructor(message: string);
7
+ }
8
+ export interface CdpWalletConfig {
9
+ readonly apiKeyId?: string;
10
+ readonly apiKeySecret?: string;
11
+ readonly walletSecret?: string;
12
+ readonly ownerName: string;
13
+ readonly smartAccountName?: string;
14
+ readonly createSmartAccount?: boolean;
15
+ }
16
+ export type AgentWalletInput = {
17
+ readonly injectedAccount: Account;
18
+ } | {
19
+ readonly cdp: CdpWalletConfig;
20
+ };
21
+ export interface ResolvedAgentWallet {
22
+ readonly source: "injected" | "cdp";
23
+ readonly account: Account;
24
+ readonly cdpOwner?: EvmServerAccount;
25
+ readonly smartAccount?: EvmSmartAccount;
26
+ }
27
+ export interface CdpClientLike {
28
+ readonly evm: {
29
+ getOrCreateAccount(options: {
30
+ readonly name: string;
31
+ }): Promise<EvmServerAccount>;
32
+ getOrCreateSmartAccount(options: {
33
+ readonly name: string;
34
+ readonly owner: EvmServerAccount;
35
+ }): Promise<EvmSmartAccount>;
36
+ };
37
+ }
38
+ export interface ResolveAgentWalletOptions {
39
+ readonly createCdpClient?: (config: CdpWalletConfig) => CdpClientLike;
40
+ }
41
+ export interface CreateWalletBackedAgentClientOptions extends ResolveAgentWalletOptions {
42
+ readonly createSdkClient?: AgentSdkClientFactory;
43
+ }
44
+ export interface WalletBackedAgentClient {
45
+ readonly wallet: ResolvedAgentWallet;
46
+ readonly agentClient: VerifiedStreamAgentClient;
47
+ }
48
+ export declare function resolveAgentWallet(input: AgentWalletInput, options?: ResolveAgentWalletOptions): Promise<ResolvedAgentWallet>;
49
+ export declare function createWalletBackedAgentClient(sdkConfig: StreamProofClientConfig, walletInput: AgentWalletInput, options?: CreateWalletBackedAgentClientOptions): Promise<WalletBackedAgentClient>;
50
+ export declare function parseAgentWalletEnv(env?: NodeJS.ProcessEnv): AgentWalletInput;
51
+ //# sourceMappingURL=provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/wallet/provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAIpC,OAAO,EACL,yBAAyB,EACzB,KAAK,qBAAqB,EAC3B,MAAM,kBAAkB,CAAC;AAoB1B,qBAAa,sBAAuB,SAAQ,KAAK;gBACnC,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;CACvC;AAED,MAAM,MAAM,gBAAgB,GACxB;IACE,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;CACnC,GACD;IACE,QAAQ,CAAC,GAAG,EAAE,eAAe,CAAC;CAC/B,CAAC;AAEN,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,KAAK,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IACrC,QAAQ,CAAC,YAAY,CAAC,EAAE,eAAe,CAAC;CACzC;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,GAAG,EAAE;QACZ,kBAAkB,CAAC,OAAO,EAAE;YAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;SACvB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC9B,uBAAuB,CAAC,OAAO,EAAE;YAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;YACtB,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC;SAClC,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;KAC9B,CAAC;CACH;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,aAAa,CAAC;CACvE;AAED,MAAM,WAAW,oCAAqC,SAAQ,yBAAyB;IACrF,QAAQ,CAAC,eAAe,CAAC,EAAE,qBAAqB,CAAC;CAClD;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;IACrC,QAAQ,CAAC,WAAW,EAAE,yBAAyB,CAAC;CACjD;AAED,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,gBAAgB,EACvB,OAAO,GAAE,yBAA8B,GACtC,OAAO,CAAC,mBAAmB,CAAC,CA2B9B;AAED,wBAAsB,6BAA6B,CACjD,SAAS,EAAE,uBAAuB,EAClC,WAAW,EAAE,gBAAgB,EAC7B,OAAO,GAAE,oCAAyC,GACjD,OAAO,CAAC,uBAAuB,CAAC,CAelC;AAED,wBAAgB,mBAAmB,CACjC,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,gBAAgB,CAwClB"}
@@ -0,0 +1,107 @@
1
+ import { CdpClient, } from "@coinbase/cdp-sdk";
2
+ import { privateKeyToAccount, toAccount } from "viem/accounts";
3
+ import { z } from "zod";
4
+ import { VerifiedStreamAgentClient, } from "../sdk/client.js";
5
+ const privateKeySchema = z
6
+ .string()
7
+ .regex(/^0x[0-9a-fA-F]{64}$/, "must be a 32-byte private key");
8
+ const booleanStringSchema = z
9
+ .enum(["true", "false", "1", "0"])
10
+ .transform((value) => value === "true" || value === "1");
11
+ const cdpWalletEnvSchema = z.object({
12
+ CDP_API_KEY_ID: z.string().min(1, "CDP_API_KEY_ID is required"),
13
+ CDP_API_KEY_SECRET: z.string().min(1, "CDP_API_KEY_SECRET is required"),
14
+ CDP_WALLET_SECRET: z.string().min(1, "CDP_WALLET_SECRET is required"),
15
+ METRIK_AGENT_CDP_OWNER_NAME: z
16
+ .string()
17
+ .min(1, "METRIK_AGENT_CDP_OWNER_NAME is required"),
18
+ METRIK_AGENT_CDP_SMART_ACCOUNT_NAME: z.string().optional(),
19
+ METRIK_AGENT_CDP_CREATE_SMART_ACCOUNT: booleanStringSchema.optional(),
20
+ });
21
+ export class AgentWalletConfigError extends Error {
22
+ constructor(message) {
23
+ super(message);
24
+ this.name = "AgentWalletConfigError";
25
+ }
26
+ }
27
+ export async function resolveAgentWallet(input, options = {}) {
28
+ if ("injectedAccount" in input) {
29
+ return {
30
+ source: "injected",
31
+ account: input.injectedAccount,
32
+ };
33
+ }
34
+ const cdpClient = (options.createCdpClient ?? defaultCdpClientFactory)(input.cdp);
35
+ const owner = await cdpClient.evm.getOrCreateAccount({
36
+ name: input.cdp.ownerName,
37
+ });
38
+ const smartAccount = input.cdp.createSmartAccount
39
+ ? await cdpClient.evm.getOrCreateSmartAccount({
40
+ name: input.cdp.smartAccountName ?? `${input.cdp.ownerName}-smart`,
41
+ owner,
42
+ })
43
+ : undefined;
44
+ return {
45
+ source: "cdp",
46
+ account: toAccount(owner),
47
+ cdpOwner: owner,
48
+ ...(smartAccount === undefined ? {} : { smartAccount }),
49
+ };
50
+ }
51
+ export async function createWalletBackedAgentClient(sdkConfig, walletInput, options = {}) {
52
+ const wallet = await resolveAgentWallet(walletInput, options);
53
+ const agentClient = new VerifiedStreamAgentClient({
54
+ ...sdkConfig,
55
+ account: wallet.account,
56
+ }, {
57
+ ...(options.createSdkClient === undefined
58
+ ? {}
59
+ : { createSdkClient: options.createSdkClient }),
60
+ });
61
+ return { wallet, agentClient };
62
+ }
63
+ export function parseAgentWalletEnv(env = process.env) {
64
+ if (env.METRIK_AGENT_PRIVATE_KEY !== undefined) {
65
+ const privateKey = privateKeySchema.safeParse(env.METRIK_AGENT_PRIVATE_KEY);
66
+ if (!privateKey.success) {
67
+ throw new AgentWalletConfigError(privateKey.error.issues.map((issue) => issue.message).join("; "));
68
+ }
69
+ return {
70
+ injectedAccount: privateKeyToAccount(privateKey.data),
71
+ };
72
+ }
73
+ const parsed = cdpWalletEnvSchema.safeParse(env);
74
+ if (!parsed.success) {
75
+ throw new AgentWalletConfigError(parsed.error.issues.map((issue) => issue.message).join("; "));
76
+ }
77
+ return {
78
+ cdp: {
79
+ apiKeyId: parsed.data.CDP_API_KEY_ID,
80
+ apiKeySecret: parsed.data.CDP_API_KEY_SECRET,
81
+ walletSecret: parsed.data.CDP_WALLET_SECRET,
82
+ ownerName: parsed.data.METRIK_AGENT_CDP_OWNER_NAME,
83
+ ...(parsed.data.METRIK_AGENT_CDP_SMART_ACCOUNT_NAME === undefined
84
+ ? {}
85
+ : {
86
+ smartAccountName: parsed.data.METRIK_AGENT_CDP_SMART_ACCOUNT_NAME,
87
+ }),
88
+ ...(parsed.data.METRIK_AGENT_CDP_CREATE_SMART_ACCOUNT === undefined
89
+ ? {}
90
+ : {
91
+ createSmartAccount: parsed.data.METRIK_AGENT_CDP_CREATE_SMART_ACCOUNT,
92
+ }),
93
+ },
94
+ };
95
+ }
96
+ function defaultCdpClientFactory(config) {
97
+ return new CdpClient({
98
+ ...(config.apiKeyId === undefined ? {} : { apiKeyId: config.apiKeyId }),
99
+ ...(config.apiKeySecret === undefined
100
+ ? {}
101
+ : { apiKeySecret: config.apiKeySecret }),
102
+ ...(config.walletSecret === undefined
103
+ ? {}
104
+ : { walletSecret: config.walletSecret }),
105
+ });
106
+ }
107
+ //# sourceMappingURL=provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/wallet/provider.ts"],"names":[],"mappings":"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"}