@absol-labs/agent 0.6.0 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/README.md +21 -5
  2. package/dist/index.d.ts +6 -1
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +6 -1
  5. package/dist/index.js.map +1 -1
  6. package/dist/wallet/autonomous-wallet-broker.d.ts +97 -0
  7. package/dist/wallet/autonomous-wallet-broker.d.ts.map +1 -0
  8. package/dist/wallet/autonomous-wallet-broker.js +478 -0
  9. package/dist/wallet/autonomous-wallet-broker.js.map +1 -0
  10. package/dist/wallet/autonomous-wallet-protocol.d.ts +56 -0
  11. package/dist/wallet/autonomous-wallet-protocol.d.ts.map +1 -0
  12. package/dist/wallet/autonomous-wallet-protocol.js +15 -0
  13. package/dist/wallet/autonomous-wallet-protocol.js.map +1 -0
  14. package/dist/wallet/autonomous-wallet.d.ts +106 -0
  15. package/dist/wallet/autonomous-wallet.d.ts.map +1 -0
  16. package/dist/wallet/autonomous-wallet.js +494 -0
  17. package/dist/wallet/autonomous-wallet.js.map +1 -0
  18. package/dist/wallet/privy-broker-server-entry.d.ts +2 -0
  19. package/dist/wallet/privy-broker-server-entry.d.ts.map +1 -0
  20. package/dist/wallet/privy-broker-server-entry.js +8 -0
  21. package/dist/wallet/privy-broker-server-entry.js.map +1 -0
  22. package/dist/wallet/privy-broker-server.d.ts +29 -0
  23. package/dist/wallet/privy-broker-server.d.ts.map +1 -0
  24. package/dist/wallet/privy-broker-server.js +480 -0
  25. package/dist/wallet/privy-broker-server.js.map +1 -0
  26. package/dist/wallet/privy-session-broker.d.ts +109 -0
  27. package/dist/wallet/privy-session-broker.d.ts.map +1 -0
  28. package/dist/wallet/privy-session-broker.js +372 -0
  29. package/dist/wallet/privy-session-broker.js.map +1 -0
  30. package/dist/wallet/privy-session-provider.d.ts +21 -0
  31. package/dist/wallet/privy-session-provider.d.ts.map +1 -0
  32. package/dist/wallet/privy-session-provider.js +94 -0
  33. package/dist/wallet/privy-session-provider.js.map +1 -0
  34. package/dist/wallet/provider.d.ts +51 -2
  35. package/dist/wallet/provider.d.ts.map +1 -1
  36. package/dist/wallet/provider.js +138 -1
  37. package/dist/wallet/provider.js.map +1 -1
  38. package/package.json +3 -1
  39. package/src/index.ts +73 -0
  40. package/src/wallet/autonomous-wallet-broker.ts +774 -0
  41. package/src/wallet/autonomous-wallet-protocol.ts +71 -0
  42. package/src/wallet/autonomous-wallet.ts +779 -0
  43. package/src/wallet/privy-broker-server-entry.ts +9 -0
  44. package/src/wallet/privy-broker-server.ts +573 -0
  45. package/src/wallet/privy-session-broker.ts +634 -0
  46. package/src/wallet/privy-session-provider.ts +129 -0
  47. package/src/wallet/provider.ts +260 -3
package/README.md CHANGED
@@ -13,7 +13,7 @@ to the on-chain metered escrow. This layer wraps that client in the guardrails a
13
13
  integration surfaces an agent actually needs: owner-signed spend mandates that gate every
14
14
  fund move, an x402 facilitator that turns a `402` into a verified stream, an MCP server
15
15
  that exposes hire/monitor/reclaim as agent tools, adapters for the major agent frameworks,
16
- Reclaim consumer zkTLS for buyer-side delivery proofs, and non-custodial Coinbase CDP
16
+ Reclaim consumer zkTLS for buyer-side delivery proofs, and non-custodial Coinbase CDP/Privy
17
17
  wallets so Metrik never holds a key.
18
18
 
19
19
  Live on Base Sepolia (chainId `84532`), testnet only. App: [app.metrik.live](https://app.metrik.live).
@@ -27,7 +27,9 @@ pnpm add @absol-labs/agent
27
27
 
28
28
  The package is **ESM-only** (`"type": "module"`) and targets **Node `>=20 <21`**. It ships
29
29
  `@absol-labs/sdk`, `@absol-labs/shared`, `viem`, `zod`, the Reclaim zkTLS SDKs, the
30
- Coinbase CDP SDK, and the MCP SDK as dependencies. The agent-framework packages
30
+ Coinbase CDP SDK, and the MCP SDK as dependencies. The autonomous wallet path also
31
+ installs a prebuilt native OS-keyring binding; it is
32
+ loaded only when that secure-store path is used. The agent-framework packages
31
33
  (`@coinbase/agentkit`, `@elizaos/core`, `@langchain/core`) are **optional peer
32
34
  dependencies** — install only the one you use.
33
35
 
@@ -58,9 +60,23 @@ response it received, bound to its stream context. This is the L2 delivery signa
58
60
  Metrik's verification stack — dispute evidence that complements, and never replaces, the
59
61
  oracle's L1 observations.
60
62
 
61
- **Non-custodial wallets**: `resolveAgentWallet()` accepts either an injected viem signer or
62
- a provisioned Coinbase CDP Server Wallet v2 account. CDP mode uses Coinbase-managed remote
63
- signing, so no private key is ever read or exported.
63
+ **Non-custodial wallets**: `resolveAgentWallet()` accepts an injected viem signer, a
64
+ provisioned Coinbase CDP Server Wallet v2 account, or an authenticated Privy embedded EOA.
65
+ CDP mode uses Coinbase-managed remote signing, while Privy mode adapts the host application's
66
+ authenticated EIP-1193 provider; neither path reads or exports a private key. See
67
+ [`docs/privy-embedded-wallet.md`](./docs/privy-embedded-wallet.md). The Privy adapter does
68
+ not itself authenticate users. The optional scoped-session broker performs unattended
69
+ signing behind a user-approved Privy policy and signed Metrik mandate; its first write can
70
+ request Privy gas sponsorship.
71
+
72
+ For a fresh autonomous agent, the default headless path is
73
+ `provisionMetrikAutonomousWallet()`: it generates a P-256 authorization key locally,
74
+ stores it in the host OS credential manager, and asks the public Metrik broker to create a
75
+ policy-bound Privy EOA owned by that key. No Privy secret, OTP, browser, clipboard, or
76
+ plaintext key file is required, and every later write is signed locally over the exact
77
+ prepared Privy request. See
78
+ [`docs/autonomous-privy-wallet.md`](./docs/autonomous-privy-wallet.md). The authenticated
79
+ user-owned Privy flow remains available as an optional recoverable mode.
64
80
 
65
81
  ## Usage
66
82
 
package/dist/index.d.ts CHANGED
@@ -5,7 +5,12 @@ export { DEFAULT_METRIK_REGISTRY_URL, DEMO_SEED_LISTING, DEMO_SEED_SERVICE_REF,
5
5
  export { METRIK_MCP_TOOLS, STREAMPROOF_MCP_TOOLS, FileStreamRegistry, InMemoryStreamRegistry, createVerifiedStreamMcpServer, createVerifiedStreamMcpServerFromEnv, createVerifiedStreamMcpServerOptionsFromEnv, parseMetrikAgentEnv, startVerifiedStreamMcpServerStdio, type McpToolSpec, type ParsedMetrikAgentEnv, type StoredStreamRecord, type StreamRegistry, type VerifiedStreamMcpClient, type VerifiedStreamMcpServerOptions, type VerifiedStreamMcpServerRuntime, } from "./mcp/server.js";
6
6
  export { StaticTenantResolver, createHostedMcpHttpServer, createHostedMcpTenants, parseHostedMcpServerConfig, startHostedMcpHttpServerFromEnv, type HostedMcpHttpServer, type HostedMcpHttpServerOptions, type HostedMcpServerConfig, type HostedMcpTenant, type HostedMcpTenantConfig, type TenantResolver, } from "./mcp/http.js";
7
7
  export { MandateDeniedError, VerifiedStreamAgentClient, type AgentSdkClient, type AgentSdkClientFactory, type MandateAuthorizedStreamActionInput, type OpenVerifiedStreamInput, type ReclaimAuthorizedStreamInput, type ReclaimVerifiedStreamOptions, type ReclaimVerifiedStreamResult, type StreamStatusView, type VerifiedStreamAgentOpener, } from "./sdk/client.js";
8
- export { AgentWalletConfigError, createWalletBackedAgentClient, parseAgentWalletEnv, resolveAgentWallet, type AgentWalletInput, type CdpClientLike, type CdpWalletConfig, type ResolvedAgentWallet, type WalletBackedAgentClient, } from "./wallet/provider.js";
8
+ export { AgentWalletConfigError, createPrivyEmbeddedAccount, createWalletBackedAgentClient, parseAgentWalletEnv, PrivyEmbeddedWalletError, resolveAgentWallet, type AgentWalletInput, type CdpClientLike, type CdpWalletConfig, type PrivyEip1193Provider, type PrivyEmbeddedWalletConfig, type ResolvedAgentWallet, type WalletBackedAgentClient, } from "./wallet/provider.js";
9
+ export { InMemoryPrivyBrokerSessionStore, PRIVY_BROKER_CAIP2, PRIVY_BROKER_CHAIN_ID, PRIVY_BROKER_ESCROW, PRIVY_BROKER_USDC, PRIVY_MAX_SESSION_SECONDS, PRIVY_POLICY_MAX_DURATION_SECONDS, PRIVY_POLICY_MAX_RATE_USDC, PRIVY_POLICY_MAX_TOTAL_USDC, PrivySessionBroker, PrivySessionBrokerError, type BrokerStreamReader, type CreatePrivyBrokerSessionInput, type PrivyBrokerProvider, type PrivyBrokerRpcInput, type PrivyBrokerSession, type PrivyBrokerSessionStore, } from "./wallet/privy-session-broker.js";
10
+ export { createPrivySessionProvider, PrivySessionProviderError, type PrivySessionProviderConfig, } from "./wallet/privy-session-provider.js";
11
+ export { JsonAutonomousWalletBrokerStore, JsonPrivyBrokerSessionStore, startPrivyBrokerServer, } from "./wallet/privy-broker-server.js";
12
+ export { AUTONOMOUS_WALLET_CAIP2, AUTONOMOUS_WALLET_CHAIN_ID, AUTONOMOUS_WALLET_VERSION, METRIK_AUTONOMOUS_WALLET_BROKER_URL, AutonomousWalletError, HttpAutonomousWalletBroker, InMemoryAutonomousWalletStore, OsCredentialStore, autonomousProofBytes, createAutonomousWalletAccount, createAutonomousWalletProvider, createDefaultAutonomousWalletStore, provisionAutonomousWallet, provisionMetrikAutonomousWallet, type AutonomousWalletBroker as AutonomousWalletClientBroker, type AutonomousWalletCredentialStore, type AutonomousWalletProof, type AutonomousWalletRecord, type CreateAutonomousWalletProviderOptions, type PreparedPrivyRequest, type ProvisionAutonomousWalletOptions, type ProvisionMetrikAutonomousWalletOptions, } from "./wallet/autonomous-wallet.js";
13
+ export { AutonomousWalletBroker, AutonomousWalletBrokerError, InMemoryAutonomousWalletBrokerStore, createPrivyAutonomousProvider, type AutonomousPreparedRequest, type AutonomousPrivyProvider, type AutonomousWalletBrokerOptions, type AutonomousWalletBrokerStore, type AutonomousWalletProvision, } from "./wallet/autonomous-wallet-broker.js";
9
14
  export { UnsupportedFaucetChainError, faucetHint, getWalletBalances, requestCdpFaucet, type BalanceReader, type CdpFaucetClientLike, type FaucetHint, type FaucetRequestResult, type FaucetToken, type GetWalletBalancesOptions, type RequestCdpFaucetOptions, type WalletBalances, } from "./wallet/lifecycle.js";
10
15
  export { ReclaimConsumerProofService, ResponseProofUnavailableError, ResponseProofVerificationError, buildDeliveryContextEnvelopeV2, createReclaimConsumerProofServiceFromEnv, deliveryContextEnvelopeV2Schema, parseReclaimProofEnv, type ConsumerDeliveryProofService, type DeliveryContextEnvelopeV2, type DeliveryContextEnvelopeV2Input, type DeliveryProofBinding, type HttpsResponseMatch, type HttpsResponseRedaction, type ParsedReclaimProofEnv, type ProveConsumedHttpsResponseInput, type ReclaimClientLike, type ReclaimProof, type ReclaimProofServiceConfig, type VerifiedConsumedHttpsResponseProof, type VerifyProofFn, } from "./zktls/reclaim.js";
11
16
  export { NoDeliveryAttestorConfiguredError, PaidRouteNonceInjectionError, ReclaimDeliveryProofAttestor, buildT2DeliveryProofSubmission, createReclaimT2AttestorFromEnv, deliveryProofRequestBodySchema, toWireDeliveryReceipt, type BuildT2DeliveryProofInput, type BuildT2DeliveryProofResult, type DeliveryProofAttestor, type DeliveryProofRequestBody, type PaidRouteRequestSpec, type ProveDeliveryResponseInput, type T2NonceInjection, type WireDeliveryReceipt, } from "./zktls/t2-delivery-proof.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -5,7 +5,12 @@ export { DEFAULT_METRIK_REGISTRY_URL, DEMO_SEED_LISTING, DEMO_SEED_SERVICE_REF,
5
5
  export { METRIK_MCP_TOOLS, STREAMPROOF_MCP_TOOLS, FileStreamRegistry, InMemoryStreamRegistry, createVerifiedStreamMcpServer, createVerifiedStreamMcpServerFromEnv, createVerifiedStreamMcpServerOptionsFromEnv, parseMetrikAgentEnv, startVerifiedStreamMcpServerStdio, } from "./mcp/server.js";
6
6
  export { StaticTenantResolver, createHostedMcpHttpServer, createHostedMcpTenants, parseHostedMcpServerConfig, startHostedMcpHttpServerFromEnv, } from "./mcp/http.js";
7
7
  export { MandateDeniedError, VerifiedStreamAgentClient, } from "./sdk/client.js";
8
- export { AgentWalletConfigError, createWalletBackedAgentClient, parseAgentWalletEnv, resolveAgentWallet, } from "./wallet/provider.js";
8
+ export { AgentWalletConfigError, createPrivyEmbeddedAccount, createWalletBackedAgentClient, parseAgentWalletEnv, PrivyEmbeddedWalletError, resolveAgentWallet, } from "./wallet/provider.js";
9
+ export { InMemoryPrivyBrokerSessionStore, PRIVY_BROKER_CAIP2, PRIVY_BROKER_CHAIN_ID, PRIVY_BROKER_ESCROW, PRIVY_BROKER_USDC, PRIVY_MAX_SESSION_SECONDS, PRIVY_POLICY_MAX_DURATION_SECONDS, PRIVY_POLICY_MAX_RATE_USDC, PRIVY_POLICY_MAX_TOTAL_USDC, PrivySessionBroker, PrivySessionBrokerError, } from "./wallet/privy-session-broker.js";
10
+ export { createPrivySessionProvider, PrivySessionProviderError, } from "./wallet/privy-session-provider.js";
11
+ export { JsonAutonomousWalletBrokerStore, JsonPrivyBrokerSessionStore, startPrivyBrokerServer, } from "./wallet/privy-broker-server.js";
12
+ export { AUTONOMOUS_WALLET_CAIP2, AUTONOMOUS_WALLET_CHAIN_ID, AUTONOMOUS_WALLET_VERSION, METRIK_AUTONOMOUS_WALLET_BROKER_URL, AutonomousWalletError, HttpAutonomousWalletBroker, InMemoryAutonomousWalletStore, OsCredentialStore, autonomousProofBytes, createAutonomousWalletAccount, createAutonomousWalletProvider, createDefaultAutonomousWalletStore, provisionAutonomousWallet, provisionMetrikAutonomousWallet, } from "./wallet/autonomous-wallet.js";
13
+ export { AutonomousWalletBroker, AutonomousWalletBrokerError, InMemoryAutonomousWalletBrokerStore, createPrivyAutonomousProvider, } from "./wallet/autonomous-wallet-broker.js";
9
14
  export { UnsupportedFaucetChainError, faucetHint, getWalletBalances, requestCdpFaucet, } from "./wallet/lifecycle.js";
10
15
  export { ReclaimConsumerProofService, ResponseProofUnavailableError, ResponseProofVerificationError, buildDeliveryContextEnvelopeV2, createReclaimConsumerProofServiceFromEnv, deliveryContextEnvelopeV2Schema, parseReclaimProofEnv, } from "./zktls/reclaim.js";
11
16
  export { NoDeliveryAttestorConfiguredError, PaidRouteNonceInjectionError, ReclaimDeliveryProofAttestor, buildT2DeliveryProofSubmission, createReclaimT2AttestorFromEnv, deliveryProofRequestBodySchema, toWireDeliveryReceipt, } from "./zktls/t2-delivery-proof.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAC3B,kBAAkB,EAClB,wBAAwB,EACxB,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,2BAA2B,EAC3B,kBAAkB,EAClB,qBAAqB,GAMtB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,kCAAkC,EAClC,wBAAwB,EACxB,yBAAyB,EACzB,iBAAiB,GAGlB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,EAC7B,gBAAgB,EAChB,gCAAgC,EAChC,6BAA6B,EAC7B,WAAW,EACX,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACtB,gCAAgC,EAChC,yBAAyB,EACzB,qBAAqB,GAOtB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,2BAA2B,EAC3B,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,0BAA0B,EAC1B,gBAAgB,GAGjB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,6BAA6B,EAC7B,oCAAoC,EACpC,2CAA2C,EAC3C,mBAAmB,EACnB,iCAAiC,GAQlC,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,sBAAsB,EACtB,0BAA0B,EAC1B,+BAA+B,GAOhC,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,kBAAkB,EAClB,yBAAyB,GAU1B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,sBAAsB,EACtB,6BAA6B,EAC7B,mBAAmB,EACnB,kBAAkB,GAMnB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,2BAA2B,EAC3B,UAAU,EACV,iBAAiB,EACjB,gBAAgB,GASjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,2BAA2B,EAC3B,6BAA6B,EAC7B,8BAA8B,EAC9B,8BAA8B,EAC9B,wCAAwC,EACxC,+BAA+B,EAC/B,oBAAoB,GAcrB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,iCAAiC,EACjC,4BAA4B,EAC5B,4BAA4B,EAC5B,8BAA8B,EAC9B,8BAA8B,EAC9B,8BAA8B,EAC9B,qBAAqB,GAStB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,sBAAsB,EACtB,8BAA8B,EAC9B,4BAA4B,EAC5B,kCAAkC,EAClC,sCAAsC,EACtC,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,8BAA8B,EAC9B,iCAAiC,EACjC,0BAA0B,EAC1B,6BAA6B,EAC7B,uBAAuB,EACvB,iCAAiC,EACjC,wBAAwB,EACxB,gCAAgC,GAKjC,MAAM,uCAAuC,CAAC;AAE/C,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,yBAAyB,EACzB,qBAAqB,GAQtB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,6BAA6B,EAC7B,+BAA+B,EAC/B,mCAAmC,GAIpC,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,eAAe,EACf,6BAA6B,EAC7B,wBAAwB,EACxB,0BAA0B,EAC1B,aAAa,EACb,2BAA2B,EAC3B,MAAM,EACN,yBAAyB,GAS1B,MAAM,iBAAiB,CAAC;AAEzB,gFAAgF;AAChF,2EAA2E;AAC3E,+EAA+E;AAC/E,0EAA0E;AAC1E,2EAA2E;AAC3E,EAAE;AACF,uEAAuE;AACvE,iEAAiE;AACjE,sFAAsF;AACtF,oFAAoF"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,97 @@
1
+ import { type PrivyClient } from "@privy-io/node";
2
+ import { type Address, type Hex } from "viem";
3
+ import { type AutonomousWalletBroker as AutonomousWalletClientBroker, type PreparedPrivyRequest } from "./autonomous-wallet-protocol.js";
4
+ import { type BrokerStreamReader } from "./privy-session-broker.js";
5
+ export interface AutonomousWalletBrokerStore {
6
+ findProvisionByPublicKey(publicKey: string): Promise<AutonomousWalletProvision | null>;
7
+ findProvisionByNonce(nonce: string): Promise<AutonomousWalletProvision | null>;
8
+ putProvision(provision: AutonomousWalletProvision): Promise<void>;
9
+ getPrepared(requestId: string): Promise<AutonomousPreparedRequest | null>;
10
+ putPrepared(request: AutonomousPreparedRequest): Promise<void>;
11
+ completePrepared(requestId: string, result: Hex, consumedAt: number): Promise<AutonomousPreparedRequest | null>;
12
+ }
13
+ export interface AutonomousWalletProvision {
14
+ readonly publicKey: string;
15
+ readonly nonce: string;
16
+ readonly walletId: string;
17
+ readonly address: Address;
18
+ readonly policyId: string;
19
+ }
20
+ export interface AutonomousPreparedRequest extends PreparedPrivyRequest {
21
+ readonly publicKey: string;
22
+ readonly idempotencyKey: string;
23
+ readonly requestExpiryMs: number;
24
+ readonly body: Record<string, unknown>;
25
+ readonly consumedAt?: number;
26
+ readonly result?: Hex;
27
+ }
28
+ export interface AutonomousPrivyProvider {
29
+ createWallet(input: {
30
+ readonly publicKey: string;
31
+ readonly policyId: string;
32
+ readonly idempotencyKey: string;
33
+ }): Promise<{
34
+ readonly walletId: string;
35
+ readonly address: Address;
36
+ readonly policyId: string;
37
+ }>;
38
+ executeRpc(input: {
39
+ readonly walletId: string;
40
+ readonly body: Record<string, unknown>;
41
+ readonly idempotencyKey: string;
42
+ readonly requestExpiryMs: number;
43
+ readonly signature: string;
44
+ }): Promise<Hex>;
45
+ }
46
+ export declare class AutonomousWalletBrokerError extends Error {
47
+ readonly code: "invalid-request" | "unauthorized" | "replay" | "policy-denied" | "provider-error";
48
+ constructor(code: "invalid-request" | "unauthorized" | "replay" | "policy-denied" | "provider-error", message: string, options?: {
49
+ readonly cause?: unknown;
50
+ });
51
+ }
52
+ export interface AutonomousWalletBrokerOptions {
53
+ readonly appId: string;
54
+ /** The one policy that is approved for Metrik autonomous wallets. */
55
+ readonly policyId: string;
56
+ readonly provider: AutonomousPrivyProvider;
57
+ readonly store: AutonomousWalletBrokerStore;
58
+ readonly streamReader: BrokerStreamReader;
59
+ readonly nowSeconds?: () => number;
60
+ readonly proofMaxAgeSeconds?: number;
61
+ readonly requestTtlSeconds?: number;
62
+ /** Must match the base URL used by the Privy client, without a trailing slash. */
63
+ readonly privyApiBaseUrl?: string;
64
+ }
65
+ /**
66
+ * Broker for the agent-owned path. The server knows the wallet ID and Privy
67
+ * app credentials, but never receives or stores the agent's private key. Every
68
+ * RPC is frozen into a short-lived request; the agent signs those exact bytes,
69
+ * then the broker forwards that signature as Privy's authorization context.
70
+ */
71
+ export declare class AutonomousWalletBroker implements AutonomousWalletClientBroker {
72
+ private readonly options;
73
+ private readonly locks;
74
+ private readonly nowSeconds;
75
+ private readonly proofMaxAge;
76
+ private readonly requestTtl;
77
+ private readonly privyApiBaseUrl;
78
+ constructor(options: AutonomousWalletBrokerOptions);
79
+ provision(input: Parameters<AutonomousWalletClientBroker["provision"]>[0]): Promise<AutonomousWalletProvision>;
80
+ private provisionUnlocked;
81
+ prepare(input: Parameters<AutonomousWalletClientBroker["prepare"]>[0]): Promise<PreparedPrivyRequest>;
82
+ execute(input: Parameters<AutonomousWalletClientBroker["execute"]>[0]): Promise<Hex>;
83
+ private withLock;
84
+ }
85
+ /** Adapts the installed @privy-io/node client without giving it an agent key. */
86
+ export declare function createPrivyAutonomousProvider(client: PrivyClient): AutonomousPrivyProvider;
87
+ export declare class InMemoryAutonomousWalletBrokerStore implements AutonomousWalletBrokerStore {
88
+ private readonly provisions;
89
+ private readonly prepared;
90
+ findProvisionByPublicKey(key: string): Promise<AutonomousWalletProvision | null>;
91
+ findProvisionByNonce(nonce: string): Promise<AutonomousWalletProvision | null>;
92
+ putProvision(value: AutonomousWalletProvision): Promise<void>;
93
+ getPrepared(id: string): Promise<AutonomousPreparedRequest | null>;
94
+ putPrepared(value: AutonomousPreparedRequest): Promise<void>;
95
+ completePrepared(id: string, result: Hex, consumedAt: number): Promise<AutonomousPreparedRequest | null>;
96
+ }
97
+ //# sourceMappingURL=autonomous-wallet-broker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"autonomous-wallet-broker.d.ts","sourceRoot":"","sources":["../../src/wallet/autonomous-wallet-broker.ts"],"names":[],"mappings":"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"}