@virtuals-protocol/acp-node-v2 0.1.1 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -20
- package/dist/acpAgent.d.ts +64 -4
- package/dist/acpAgent.d.ts.map +1 -1
- package/dist/acpAgent.js +207 -15
- package/dist/acpAgent.js.map +1 -1
- package/dist/acpJob.d.ts +4 -2
- package/dist/acpJob.d.ts.map +1 -1
- package/dist/acpJob.js +5 -3
- package/dist/acpJob.js.map +1 -1
- package/dist/clients/evmAcpClient.d.ts +2 -1
- package/dist/clients/evmAcpClient.d.ts.map +1 -1
- package/dist/clients/evmAcpClient.js +19 -2
- package/dist/clients/evmAcpClient.js.map +1 -1
- package/dist/core/agentAuth.d.ts +22 -0
- package/dist/core/agentAuth.d.ts.map +1 -0
- package/dist/core/agentAuth.js +27 -0
- package/dist/core/agentAuth.js.map +1 -0
- package/dist/core/approvalGate.d.ts +28 -0
- package/dist/core/approvalGate.d.ts.map +1 -0
- package/dist/core/approvalGate.js +63 -0
- package/dist/core/approvalGate.js.map +1 -0
- package/dist/core/chains.d.ts +1 -0
- package/dist/core/chains.d.ts.map +1 -1
- package/dist/core/chains.js +12 -1
- package/dist/core/chains.js.map +1 -1
- package/dist/core/constants.d.ts +12 -0
- package/dist/core/constants.d.ts.map +1 -1
- package/dist/core/constants.js +27 -2
- package/dist/core/constants.js.map +1 -1
- package/dist/core/hookEncoding.d.ts +10 -0
- package/dist/core/hookEncoding.d.ts.map +1 -0
- package/dist/core/hookEncoding.js +34 -0
- package/dist/core/hookEncoding.js.map +1 -0
- package/dist/core/multiHookRouterAbi.d.ts +465 -0
- package/dist/core/multiHookRouterAbi.d.ts.map +1 -0
- package/dist/core/multiHookRouterAbi.js +326 -0
- package/dist/core/multiHookRouterAbi.js.map +1 -0
- package/dist/core/operations.d.ts +6 -0
- package/dist/core/operations.d.ts.map +1 -1
- package/dist/core/subscriptionHookAbi.d.ts +239 -0
- package/dist/core/subscriptionHookAbi.d.ts.map +1 -0
- package/dist/core/subscriptionHookAbi.js +199 -0
- package/dist/core/subscriptionHookAbi.js.map +1 -0
- package/dist/core/subscriptionStateAbi.d.ts +256 -0
- package/dist/core/subscriptionStateAbi.d.ts.map +1 -0
- package/dist/core/subscriptionStateAbi.js +176 -0
- package/dist/core/subscriptionStateAbi.js.map +1 -0
- package/dist/events/acpHttpClient.d.ts.map +1 -1
- package/dist/events/acpHttpClient.js +12 -3
- package/dist/events/acpHttpClient.js.map +1 -1
- package/dist/events/sseTransport.d.ts +11 -4
- package/dist/events/sseTransport.d.ts.map +1 -1
- package/dist/events/sseTransport.js +104 -44
- package/dist/events/sseTransport.js.map +1 -1
- package/dist/events/types.d.ts +17 -5
- package/dist/events/types.d.ts.map +1 -1
- package/dist/events/types.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/jobSession.d.ts +4 -1
- package/dist/jobSession.d.ts.map +1 -1
- package/dist/jobSession.js +126 -10
- package/dist/jobSession.js.map +1 -1
- package/dist/providers/evm/privyAlchemyEvmProviderAdapter.d.ts +12 -2
- package/dist/providers/evm/privyAlchemyEvmProviderAdapter.d.ts.map +1 -1
- package/dist/providers/evm/privyAlchemyEvmProviderAdapter.js +264 -60
- package/dist/providers/evm/privyAlchemyEvmProviderAdapter.js.map +1 -1
- package/dist/providers/evm/types.d.ts +24 -0
- package/dist/providers/evm/types.d.ts.map +1 -0
- package/dist/providers/evm/types.js +2 -0
- package/dist/providers/evm/types.js.map +1 -0
- package/dist/providers/providerAuthClient.d.ts +2 -2
- package/dist/providers/providerAuthClient.d.ts.map +1 -1
- package/dist/providers/providerAuthClient.js +10 -4
- package/dist/providers/providerAuthClient.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -20,7 +20,6 @@ The Agent Commerce Protocol (ACP) Node SDK v2 is a ground-up rewrite of the ACP
|
|
|
20
20
|
- [Agent Discovery](#agent-discovery)
|
|
21
21
|
- [LLM Integration](#llm-integration)
|
|
22
22
|
- [Provider Adapters](#provider-adapters)
|
|
23
|
-
- [Transport Options](#transport-options)
|
|
24
23
|
- [Fund Transfer Jobs](#fund-transfer-jobs)
|
|
25
24
|
- [Examples](#examples)
|
|
26
25
|
- [Migrating from v1](#migrating-from-v1)
|
|
@@ -36,7 +35,7 @@ The Agent Commerce Protocol (ACP) Node SDK v2 is a ground-up rewrite of the ACP
|
|
|
36
35
|
- **Event-Driven Architecture** -- Single `agent.on("entry", handler)` for all job events and messages.
|
|
37
36
|
- **LLM-Native** -- `session.availableTools()`, `session.toMessages()`, and `session.executeTool()` for plug-and-play LLM agent loops.
|
|
38
37
|
- **Multi-Chain** -- One agent, multiple chains. Specify chain per job with `agent.createJob(chainId, ...)`.
|
|
39
|
-
- **
|
|
38
|
+
- **SSE event stream** -- low-overhead push transport for live job entries.
|
|
40
39
|
- **EVM + Solana** -- Provider adapters for Alchemy smart accounts, Privy wallets, and Solana.
|
|
41
40
|
- **Role-Based Tools** -- `JobSession` automatically gates available actions by your role (client/provider/evaluator) and job status.
|
|
42
41
|
|
|
@@ -44,7 +43,7 @@ The Agent Commerce Protocol (ACP) Node SDK v2 is a ground-up rewrite of the ACP
|
|
|
44
43
|
|
|
45
44
|
Register your agent with the [Service Registry](https://app.virtuals.io/acp/new) before interacting with other agents. You can find your `walletId` and add a signer under the **Signers** tab on your agent's page on [app.virtuals.io](https://app.virtuals.io/acp/agents/). Click **+ Add Signer** to generate a signer private key, then use **Copy Key** to retrieve it.
|
|
46
45
|
|
|
47
|
-
Your `builderCode` (e.g. `bc-...`) can
|
|
46
|
+
Your `builderCode` (e.g. `bc-...`) is a [Base builder code](https://docs.base.org/apps/builder-codes/builder-codes); transactions made through this SDK are attributed to it on [base.dev](https://base.dev). You can find it under the **Settings** tab on your agent's page on [app.virtuals.io](https://app.virtuals.io/acp/agents/). Optional but recommended.
|
|
48
47
|
|
|
49
48
|
## Installation
|
|
50
49
|
|
|
@@ -403,18 +402,6 @@ All EVM provider adapters implement the `IEvmProviderAdapter` interface, which i
|
|
|
403
402
|
- `readContract(chainId, params)` — Read contract state
|
|
404
403
|
- `getLogs(chainId, params)` — Query event logs
|
|
405
404
|
|
|
406
|
-
## Transport Options
|
|
407
|
-
|
|
408
|
-
```typescript
|
|
409
|
-
// SSE (default -- no argument needed)
|
|
410
|
-
const agent = await AcpAgent.create({ provider });
|
|
411
|
-
|
|
412
|
-
// WebSocket
|
|
413
|
-
const agent = await AcpAgent.create({
|
|
414
|
-
provider,
|
|
415
|
-
});
|
|
416
|
-
```
|
|
417
|
-
|
|
418
405
|
## Fund Transfer Jobs
|
|
419
406
|
|
|
420
407
|
For jobs that involve transferring funds to the provider on submission:
|
|
@@ -440,11 +427,13 @@ await session.setBudgetWithFundRequest(
|
|
|
440
427
|
|
|
441
428
|
Runnable buyer/seller pairs are organized by use case under [`src/examples/`](./src/examples/):
|
|
442
429
|
|
|
443
|
-
| Folder
|
|
444
|
-
|
|
|
445
|
-
| [`basic/`](./src/examples/basic/)
|
|
446
|
-
| [`fund-transfer/`](./src/examples/fund-transfer/)
|
|
447
|
-
| [`
|
|
430
|
+
| Folder | Best for |
|
|
431
|
+
| ------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
432
|
+
| [`basic/`](./src/examples/basic/) | Default flow — manual control, buyer is its own evaluator. Start here. |
|
|
433
|
+
| [`fund-transfer/`](./src/examples/fund-transfer/) | Jobs that forward USDC on submission: buyer uses `createJobFromOffering` when `requiredFunds`; seller uses `setBudgetWithFundRequest`. |
|
|
434
|
+
| [`subscription/`](./src/examples/subscription/) | Jobs that activate (or renew) an on-chain `SubscriptionHook` package via `createJobFromOffering({ packageId })` + `setBudgetWithSubscription`. |
|
|
435
|
+
| [`subscription-fund-transfer/`](./src/examples/subscription-fund-transfer/) | Multi-hook variant: subscription + per-job fund forwarding in a single job (`setBudgetWithSubscriptionAndFundRequest`). |
|
|
436
|
+
| [`llm/`](./src/examples/llm/) | Both sides driven by Claude through `session.availableTools()` + `session.executeTool()`. Requires `ANTHROPIC_API_KEY`. |
|
|
448
437
|
|
|
449
438
|
Each folder has its own README with the lifecycle, expected log output, and any
|
|
450
439
|
variant-specific gotchas. The shared env setup, `tsx` invocation, and
|
package/dist/acpAgent.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { type Address, type Hex } from "viem";
|
|
2
2
|
import { type AcpClient, type CreateAcpClientInput } from "./clientFactory.js";
|
|
3
3
|
import type { CompleteParams, CreateJobParams, RejectParams, SubmitParams } from "./core/operations.js";
|
|
4
|
+
import { type MultiHookConfig } from "./core/hookEncoding.js";
|
|
4
5
|
import { AssetToken } from "./core/assetToken.js";
|
|
5
6
|
import { JobSession } from "./jobSession.js";
|
|
6
|
-
import type { AcpAgentDetail, AcpAgentOffering, AcpChatTransport, AcpJobApi, BrowseAgentParams, JobRoomEntry } from "./events/types.js";
|
|
7
|
+
import type { AcpAgentDetail, AcpAgentOffering, AcpChatTransport, AcpJobApi, BrowseAgentParams, JobRoomEntry, SupportedStreams } from "./events/types.js";
|
|
7
8
|
export type EntryHandler = (session: JobSession, entry: JobRoomEntry) => void | Promise<void>;
|
|
8
9
|
export type CreateAgentInput = CreateAcpClientInput & {
|
|
9
10
|
transport?: AcpChatTransport;
|
|
@@ -37,6 +38,44 @@ export type SubmitWithTransferParams = {
|
|
|
37
38
|
transferAmount: AssetToken;
|
|
38
39
|
hookAddress?: string;
|
|
39
40
|
};
|
|
41
|
+
export type SetBudgetWithSubscriptionParams = {
|
|
42
|
+
jobId: bigint;
|
|
43
|
+
amount: AssetToken;
|
|
44
|
+
duration: bigint;
|
|
45
|
+
packageId: bigint;
|
|
46
|
+
};
|
|
47
|
+
export type FundWithSubscriptionParams = {
|
|
48
|
+
jobId: bigint;
|
|
49
|
+
amount: AssetToken;
|
|
50
|
+
duration: bigint;
|
|
51
|
+
packageId: bigint;
|
|
52
|
+
};
|
|
53
|
+
export type SetBudgetWithSubscriptionAndFundRequestParams = {
|
|
54
|
+
jobId: bigint;
|
|
55
|
+
amount: AssetToken;
|
|
56
|
+
duration: bigint;
|
|
57
|
+
packageId: bigint;
|
|
58
|
+
transferAmount: AssetToken;
|
|
59
|
+
destination: Address;
|
|
60
|
+
};
|
|
61
|
+
export type FundViaRouterParams = {
|
|
62
|
+
jobId: bigint;
|
|
63
|
+
amount: AssetToken;
|
|
64
|
+
hookConfigs: string[];
|
|
65
|
+
subscriptionTerms?: {
|
|
66
|
+
duration: bigint;
|
|
67
|
+
packageId: bigint;
|
|
68
|
+
};
|
|
69
|
+
transferAmount?: AssetToken;
|
|
70
|
+
destination?: Address;
|
|
71
|
+
fundHookAddress?: string;
|
|
72
|
+
};
|
|
73
|
+
export type BatchConfigureHooksAgentParams = {
|
|
74
|
+
jobId: bigint;
|
|
75
|
+
selectors: Hex[];
|
|
76
|
+
hooksPerSelector: string[][];
|
|
77
|
+
routerAddress: string;
|
|
78
|
+
};
|
|
40
79
|
export declare class AcpAgent {
|
|
41
80
|
private readonly client;
|
|
42
81
|
private readonly transport;
|
|
@@ -53,10 +92,11 @@ export declare class AcpAgent {
|
|
|
53
92
|
getSupportedChainIds(): number[];
|
|
54
93
|
browseAgents(keyword: string, params?: BrowseAgentParams): Promise<Array<AcpAgentDetail>>;
|
|
55
94
|
getAgentByWalletAddress(walletAddress: string): Promise<AcpAgentDetail | null>;
|
|
95
|
+
getMe(): Promise<AcpAgentDetail>;
|
|
56
96
|
getAddress(): Promise<string>;
|
|
57
97
|
on(_event: "entry", handler: EntryHandler): this;
|
|
58
98
|
private buildTransportContext;
|
|
59
|
-
start(onConnected?: () => void): Promise<void>;
|
|
99
|
+
start(onConnected?: () => void, streams?: SupportedStreams[]): Promise<void>;
|
|
60
100
|
stop(): Promise<void>;
|
|
61
101
|
private hydrateSessions;
|
|
62
102
|
private getSessionKey;
|
|
@@ -89,16 +129,18 @@ export declare class AcpAgent {
|
|
|
89
129
|
private inferRoles;
|
|
90
130
|
private dispatch;
|
|
91
131
|
private fireHandler;
|
|
92
|
-
sendJobMessage(chainId: number, jobId: string, content: string, contentType?: string): void;
|
|
132
|
+
sendJobMessage(chainId: number, jobId: string, content: string, contentType?: string, packageId?: number): void;
|
|
93
133
|
/**
|
|
94
134
|
* One-shot message send via REST. Does not require start()/stop().
|
|
95
135
|
* Authenticates, POSTs the message, and returns.
|
|
96
136
|
*/
|
|
97
|
-
sendMessage(chainId: number, jobId: string, content: string, contentType?: string): Promise<void>;
|
|
137
|
+
sendMessage(chainId: number, jobId: string, content: string, contentType?: string, packageId?: number): Promise<void>;
|
|
98
138
|
resolveAssetToken(address: Address, amount: number, chainId: number): Promise<AssetToken>;
|
|
99
139
|
resolveRawAssetToken(address: Address, rawAmount: bigint, chainId: number): Promise<AssetToken>;
|
|
100
140
|
createJob(chainId: number, params: CreateJobParams): Promise<bigint>;
|
|
101
141
|
createFundTransferJob(chainId: number, params: CreateJobParams): Promise<bigint>;
|
|
142
|
+
createSubscriptionJob(chainId: number, params: CreateJobParams): Promise<bigint>;
|
|
143
|
+
createMultiHookJob(chainId: number, params: CreateJobParams, hookConfig?: MultiHookConfig): Promise<bigint>;
|
|
102
144
|
/**
|
|
103
145
|
* Create a job from a registry offering and send the requirement message.
|
|
104
146
|
*
|
|
@@ -133,6 +175,7 @@ export declare class AcpAgent {
|
|
|
133
175
|
createJobFromOffering(chainId: number, offering: AcpAgentOffering, providerAddress: string, requirementData: Record<string, unknown> | string, opts?: {
|
|
134
176
|
evaluatorAddress?: string;
|
|
135
177
|
hookAddress?: string;
|
|
178
|
+
packageId?: number;
|
|
136
179
|
}): Promise<bigint>;
|
|
137
180
|
/**
|
|
138
181
|
* Convenience wrapper: looks up the provider, finds the offering by name,
|
|
@@ -148,7 +191,15 @@ export declare class AcpAgent {
|
|
|
148
191
|
createJobByOfferingName(chainId: number, offeringName: string, providerAddress: string, requirementData: Record<string, unknown> | string, opts?: {
|
|
149
192
|
evaluatorAddress?: string;
|
|
150
193
|
hookAddress?: string;
|
|
194
|
+
packageId?: number;
|
|
151
195
|
}): Promise<bigint>;
|
|
196
|
+
batchConfigureHooks(chainId: number, params: BatchConfigureHooksAgentParams): Promise<string | string[]>;
|
|
197
|
+
getSubscriptionExpiry(chainId: number, client: string, provider: string, packageId: number): Promise<bigint>;
|
|
198
|
+
isSubscriptionActive(chainId: number, client: string, provider: string, packageId: number): Promise<boolean>;
|
|
199
|
+
getProposedSubscriptionTerms(chainId: number, jobId: bigint): Promise<{
|
|
200
|
+
duration: bigint;
|
|
201
|
+
packageId: bigint;
|
|
202
|
+
}>;
|
|
152
203
|
/** @internal */
|
|
153
204
|
internalSetBudget(chainId: number, params: SetBudgetParams): Promise<string | string[]>;
|
|
154
205
|
/** @internal */
|
|
@@ -164,6 +215,15 @@ export declare class AcpAgent {
|
|
|
164
215
|
/** @internal */
|
|
165
216
|
internalFundWithTransfer(chainId: number, params: FundWithTransferParams): Promise<string | string[]>;
|
|
166
217
|
/** @internal */
|
|
218
|
+
internalSetBudgetWithSubscription(chainId: number, params: SetBudgetWithSubscriptionParams): Promise<string | string[]>;
|
|
219
|
+
/** @internal */
|
|
220
|
+
internalFundWithSubscription(chainId: number, params: FundWithSubscriptionParams): Promise<string | string[]>;
|
|
221
|
+
/** @internal */
|
|
222
|
+
internalSetBudgetWithSubscriptionAndFundRequest(chainId: number, params: SetBudgetWithSubscriptionAndFundRequestParams): Promise<string | string[]>;
|
|
223
|
+
getRouterHooks(chainId: number, jobId: bigint, selector: Hex): Promise<Address[]>;
|
|
224
|
+
/** @internal */
|
|
225
|
+
internalFundViaRouter(chainId: number, params: FundViaRouterParams): Promise<string | string[]>;
|
|
226
|
+
/** @internal */
|
|
167
227
|
internalSubmitWithTransfer(chainId: number, params: SubmitWithTransferParams): Promise<string | string[]>;
|
|
168
228
|
}
|
|
169
229
|
//# sourceMappingURL=acpAgent.d.ts.map
|
package/dist/acpAgent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acpAgent.d.ts","sourceRoot":"","sources":["../src/acpAgent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoC,KAAK,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,MAAM,CAAC;AAKhF,OAAO,EACL,KAAK,SAAS,EACd,KAAK,oBAAoB,EAE1B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EACV,cAAc,EACd,eAAe,EACf,YAAY,EACZ,YAAY,EACb,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"acpAgent.d.ts","sourceRoot":"","sources":["../src/acpAgent.ts"],"names":[],"mappings":"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"}
|
package/dist/acpAgent.js
CHANGED
|
@@ -5,12 +5,16 @@ const Ajv = require("ajv");
|
|
|
5
5
|
const addFormats = require("ajv-formats");
|
|
6
6
|
import { createAcpClient, } from "./clientFactory.js";
|
|
7
7
|
import { EvmAcpClient } from "./clients/evmAcpClient.js";
|
|
8
|
-
import { FUND_TRANSFER_HOOK_ADDRESSES, getAddressForChain, MIN_SLA_MINS, BUFFER_SECONDS, } from "./core/constants.js";
|
|
8
|
+
import { FUND_TRANSFER_HOOK_ADDRESSES, MULTI_HOOK_ROUTER_ADDRESSES, SUBSCRIPTION_HOOK_ADDRESSES, SUBSCRIPTION_STATE_ADDRESSES, getAddressForChain, MIN_SLA_MINS, BUFFER_SECONDS, } from "./core/constants.js";
|
|
9
|
+
import { SUBSCRIPTION_STATE_ABI } from "./core/subscriptionStateAbi.js";
|
|
10
|
+
import { SUBSCRIPTION_HOOK_ABI } from "./core/subscriptionHookAbi.js";
|
|
11
|
+
import { MULTI_HOOK_ROUTER_ABI } from "./core/multiHookRouterAbi.js";
|
|
12
|
+
import { buildSubscriptionWithFundsHookConfig, encodeFundTransferOptParams, encodeRouterOptParams, encodeSubscriptionOptParams, } from "./core/hookEncoding.js";
|
|
9
13
|
import { AssetToken } from "./core/assetToken.js";
|
|
10
14
|
import { JobSession } from "./jobSession.js";
|
|
11
15
|
import { AcpApiClient } from "./events/acpApiClient.js";
|
|
12
16
|
import { AcpHttpClient } from "./events/acpHttpClient.js";
|
|
13
|
-
import { SseTransport } from "./events/sseTransport.js";
|
|
17
|
+
import { DEFAULT_STREAMS, SseTransport } from "./events/sseTransport.js";
|
|
14
18
|
// ---------------------------------------------------------------------------
|
|
15
19
|
// AcpAgent
|
|
16
20
|
// ---------------------------------------------------------------------------
|
|
@@ -58,6 +62,14 @@ export class AcpAgent {
|
|
|
58
62
|
async getAgentByWalletAddress(walletAddress) {
|
|
59
63
|
return this.api.getAgentByWalletAddress(walletAddress);
|
|
60
64
|
}
|
|
65
|
+
async getMe() {
|
|
66
|
+
const address = await this.getAddress();
|
|
67
|
+
const agent = await this.api.getAgentByWalletAddress(address);
|
|
68
|
+
if (!agent) {
|
|
69
|
+
throw new Error(`No agent found for wallet address: ${address}`);
|
|
70
|
+
}
|
|
71
|
+
return agent;
|
|
72
|
+
}
|
|
61
73
|
async getAddress() {
|
|
62
74
|
if (!this.address) {
|
|
63
75
|
this.address = await this.client.getAddress();
|
|
@@ -86,21 +98,21 @@ export class AcpAgent {
|
|
|
86
98
|
contractAddresses: this.client.getContractAddresses(),
|
|
87
99
|
providerSupportedChainIds: providerChainIds,
|
|
88
100
|
client: this.client,
|
|
89
|
-
|
|
101
|
+
signTypedData: (chainId, typedData) => {
|
|
90
102
|
if (this.client instanceof EvmAcpClient) {
|
|
91
|
-
return this.client.getProvider().
|
|
103
|
+
return this.client.getProvider().signTypedData(chainId, typedData);
|
|
92
104
|
}
|
|
93
|
-
throw new Error("
|
|
105
|
+
throw new Error("signTypedData is not supported for this provider");
|
|
94
106
|
},
|
|
95
107
|
};
|
|
96
108
|
}
|
|
97
|
-
async start(onConnected) {
|
|
109
|
+
async start(onConnected, streams = DEFAULT_STREAMS) {
|
|
98
110
|
if (this.started) {
|
|
99
111
|
throw new Error("Agent already started. Call stop() first.");
|
|
100
112
|
}
|
|
101
113
|
this.started = true;
|
|
102
114
|
this.transport.onEntry((entry) => this.dispatch(entry).catch(console.error));
|
|
103
|
-
await this.transport.connect(onConnected);
|
|
115
|
+
await this.transport.connect(onConnected, streams);
|
|
104
116
|
await this.hydrateSessions();
|
|
105
117
|
}
|
|
106
118
|
async stop() {
|
|
@@ -233,17 +245,17 @@ export class AcpAgent {
|
|
|
233
245
|
// -------------------------------------------------------------------------
|
|
234
246
|
// Messaging (delegates to transport)
|
|
235
247
|
// -------------------------------------------------------------------------
|
|
236
|
-
sendJobMessage(chainId, jobId, content, contentType = "text") {
|
|
248
|
+
sendJobMessage(chainId, jobId, content, contentType = "text", packageId) {
|
|
237
249
|
if (!this.started)
|
|
238
250
|
throw new Error("Agent not started");
|
|
239
|
-
this.transport.sendMessage(chainId, jobId, content, contentType);
|
|
251
|
+
this.transport.sendMessage(chainId, jobId, content, contentType, packageId);
|
|
240
252
|
}
|
|
241
253
|
/**
|
|
242
254
|
* One-shot message send via REST. Does not require start()/stop().
|
|
243
255
|
* Authenticates, POSTs the message, and returns.
|
|
244
256
|
*/
|
|
245
|
-
async sendMessage(chainId, jobId, content, contentType = "text") {
|
|
246
|
-
await this.transport.postMessage(chainId, jobId, content, contentType);
|
|
257
|
+
async sendMessage(chainId, jobId, content, contentType = "text", packageId) {
|
|
258
|
+
await this.transport.postMessage(chainId, jobId, content, contentType, packageId);
|
|
247
259
|
}
|
|
248
260
|
// -------------------------------------------------------------------------
|
|
249
261
|
// Token helpers
|
|
@@ -273,6 +285,29 @@ export class AcpAgent {
|
|
|
273
285
|
hookAddress: params.hookAddress ?? defaultHook,
|
|
274
286
|
});
|
|
275
287
|
}
|
|
288
|
+
async createSubscriptionJob(chainId, params) {
|
|
289
|
+
const defaultHook = getAddressForChain(SUBSCRIPTION_HOOK_ADDRESSES, chainId, "SubscriptionHook");
|
|
290
|
+
return this.createJob(chainId, {
|
|
291
|
+
...params,
|
|
292
|
+
hookAddress: params.hookAddress ?? defaultHook,
|
|
293
|
+
});
|
|
294
|
+
}
|
|
295
|
+
async createMultiHookJob(chainId, params, hookConfig) {
|
|
296
|
+
const routerAddress = getAddressForChain(MULTI_HOOK_ROUTER_ADDRESSES, chainId, "MultiHookRouter");
|
|
297
|
+
const jobId = await this.createJob(chainId, {
|
|
298
|
+
...params,
|
|
299
|
+
hookAddress: routerAddress,
|
|
300
|
+
});
|
|
301
|
+
if (hookConfig) {
|
|
302
|
+
await this.batchConfigureHooks(chainId, {
|
|
303
|
+
jobId,
|
|
304
|
+
selectors: hookConfig.selectors,
|
|
305
|
+
hooksPerSelector: hookConfig.hooksPerSelector,
|
|
306
|
+
routerAddress,
|
|
307
|
+
});
|
|
308
|
+
}
|
|
309
|
+
return jobId;
|
|
310
|
+
}
|
|
276
311
|
/**
|
|
277
312
|
* Create a job from a registry offering and send the requirement message.
|
|
278
313
|
*
|
|
@@ -325,9 +360,29 @@ export class AcpAgent {
|
|
|
325
360
|
description: offering.name,
|
|
326
361
|
...(opts?.hookAddress ? { hookAddress: opts.hookAddress } : {}),
|
|
327
362
|
};
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
363
|
+
let packageId;
|
|
364
|
+
let jobId;
|
|
365
|
+
if (opts?.packageId) {
|
|
366
|
+
const subscription = offering.subscriptions?.find((s) => s.packageId === Number(opts.packageId));
|
|
367
|
+
if (!subscription) {
|
|
368
|
+
throw new Error(`Package ID ${opts.packageId} not found in offerings`);
|
|
369
|
+
}
|
|
370
|
+
packageId = Number(opts.packageId);
|
|
371
|
+
}
|
|
372
|
+
if (packageId) {
|
|
373
|
+
if (offering.requiredFunds) {
|
|
374
|
+
const hookConfig = buildSubscriptionWithFundsHookConfig(chainId);
|
|
375
|
+
jobId = await this.createMultiHookJob(chainId, jobParams, hookConfig);
|
|
376
|
+
}
|
|
377
|
+
else {
|
|
378
|
+
jobId = await this.createSubscriptionJob(chainId, jobParams);
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
else {
|
|
382
|
+
jobId = offering.requiredFunds
|
|
383
|
+
? await this.createFundTransferJob(chainId, jobParams)
|
|
384
|
+
: await this.createJob(chainId, jobParams);
|
|
385
|
+
}
|
|
331
386
|
// Send first message with requirement data.
|
|
332
387
|
// The chat room may not be ready immediately after on-chain job creation,
|
|
333
388
|
// so retry a few times with a short delay.
|
|
@@ -335,7 +390,7 @@ export class AcpAgent {
|
|
|
335
390
|
const retryDelayMs = 2000;
|
|
336
391
|
for (let attempt = 1; attempt <= maxRetries; attempt++) {
|
|
337
392
|
try {
|
|
338
|
-
await this.sendMessage(chainId, jobId.toString(), JSON.stringify(requirementData), "requirement");
|
|
393
|
+
await this.sendMessage(chainId, jobId.toString(), JSON.stringify(requirementData), "requirement", packageId);
|
|
339
394
|
break;
|
|
340
395
|
}
|
|
341
396
|
catch (err) {
|
|
@@ -372,6 +427,51 @@ export class AcpAgent {
|
|
|
372
427
|
}
|
|
373
428
|
return this.createJobFromOffering(chainId, matchingOfferings[0], providerAddress, requirementData, opts);
|
|
374
429
|
}
|
|
430
|
+
async batchConfigureHooks(chainId, params) {
|
|
431
|
+
if (!(this.client instanceof EvmAcpClient)) {
|
|
432
|
+
throw new Error("batchConfigureHooks is only supported on EVM chains");
|
|
433
|
+
}
|
|
434
|
+
const prepared = await this.client.batchConfigureHooks(chainId, {
|
|
435
|
+
routerAddress: params.routerAddress,
|
|
436
|
+
jobId: params.jobId,
|
|
437
|
+
selectors: params.selectors,
|
|
438
|
+
hooksPerSelector: params.hooksPerSelector,
|
|
439
|
+
});
|
|
440
|
+
return this.client.submitPrepared(chainId, [prepared]);
|
|
441
|
+
}
|
|
442
|
+
// -------------------------------------------------------------------------
|
|
443
|
+
// Subscription state reads
|
|
444
|
+
// -------------------------------------------------------------------------
|
|
445
|
+
async getSubscriptionExpiry(chainId, client, provider, packageId) {
|
|
446
|
+
if (!(this.client instanceof EvmAcpClient)) {
|
|
447
|
+
throw new Error("getSubscriptionExpiry is only supported on EVM chains");
|
|
448
|
+
}
|
|
449
|
+
const stateAddress = getAddressForChain(SUBSCRIPTION_STATE_ADDRESSES, chainId, "SubscriptionState");
|
|
450
|
+
const result = await this.client.getProvider().readContract(chainId, {
|
|
451
|
+
address: stateAddress,
|
|
452
|
+
abi: SUBSCRIPTION_STATE_ABI,
|
|
453
|
+
functionName: "getSubscriptionExpiry",
|
|
454
|
+
args: [client, provider, BigInt(packageId)],
|
|
455
|
+
});
|
|
456
|
+
return result;
|
|
457
|
+
}
|
|
458
|
+
async isSubscriptionActive(chainId, client, provider, packageId) {
|
|
459
|
+
const expiry = await this.getSubscriptionExpiry(chainId, client, provider, packageId);
|
|
460
|
+
return expiry > BigInt(Math.floor(Date.now() / 1000));
|
|
461
|
+
}
|
|
462
|
+
async getProposedSubscriptionTerms(chainId, jobId) {
|
|
463
|
+
if (!(this.client instanceof EvmAcpClient)) {
|
|
464
|
+
throw new Error("getProposedSubscriptionTerms is only supported on EVM chains");
|
|
465
|
+
}
|
|
466
|
+
const hookAddress = getAddressForChain(SUBSCRIPTION_HOOK_ADDRESSES, chainId, "SubscriptionHook");
|
|
467
|
+
const result = (await this.client.getProvider().readContract(chainId, {
|
|
468
|
+
address: hookAddress,
|
|
469
|
+
abi: SUBSCRIPTION_HOOK_ABI,
|
|
470
|
+
functionName: "getProposedTerms",
|
|
471
|
+
args: [jobId],
|
|
472
|
+
}));
|
|
473
|
+
return { duration: result.duration, packageId: result.packageId };
|
|
474
|
+
}
|
|
375
475
|
// -------------------------------------------------------------------------
|
|
376
476
|
// Internal on-chain actions (called by JobSession)
|
|
377
477
|
// -------------------------------------------------------------------------
|
|
@@ -465,6 +565,98 @@ export class AcpAgent {
|
|
|
465
565
|
]);
|
|
466
566
|
}
|
|
467
567
|
/** @internal */
|
|
568
|
+
async internalSetBudgetWithSubscription(chainId, params) {
|
|
569
|
+
const optParams = encodeSubscriptionOptParams(params.duration, params.packageId);
|
|
570
|
+
return this.internalSetBudget(chainId, {
|
|
571
|
+
jobId: params.jobId,
|
|
572
|
+
amount: params.amount,
|
|
573
|
+
optParams,
|
|
574
|
+
});
|
|
575
|
+
}
|
|
576
|
+
/** @internal */
|
|
577
|
+
async internalFundWithSubscription(chainId, params) {
|
|
578
|
+
const approvePrepared = await this.client.approveAllowance(chainId, {
|
|
579
|
+
tokenAddress: params.amount.address,
|
|
580
|
+
spenderAddress: this.client.getContractAddress(chainId),
|
|
581
|
+
amount: params.amount.rawAmount,
|
|
582
|
+
});
|
|
583
|
+
const optParams = encodeSubscriptionOptParams(params.duration, params.packageId);
|
|
584
|
+
const fundPrepared = await this.client.fund(chainId, {
|
|
585
|
+
jobId: params.jobId,
|
|
586
|
+
expectedBudget: params.amount.rawAmount,
|
|
587
|
+
optParams,
|
|
588
|
+
});
|
|
589
|
+
return this.client.submitPrepared(chainId, [approvePrepared, fundPrepared]);
|
|
590
|
+
}
|
|
591
|
+
/** @internal */
|
|
592
|
+
async internalSetBudgetWithSubscriptionAndFundRequest(chainId, params) {
|
|
593
|
+
const subSlice = encodeSubscriptionOptParams(params.duration, params.packageId);
|
|
594
|
+
const fundSlice = encodeFundTransferOptParams(params.transferAmount.address, params.transferAmount.rawAmount, params.destination);
|
|
595
|
+
const optParams = encodeRouterOptParams([subSlice, fundSlice]);
|
|
596
|
+
return this.internalSetBudget(chainId, {
|
|
597
|
+
jobId: params.jobId,
|
|
598
|
+
amount: params.amount,
|
|
599
|
+
optParams,
|
|
600
|
+
});
|
|
601
|
+
}
|
|
602
|
+
async getRouterHooks(chainId, jobId, selector) {
|
|
603
|
+
if (!(this.client instanceof EvmAcpClient)) {
|
|
604
|
+
throw new Error("getRouterHooks is only supported on EVM chains");
|
|
605
|
+
}
|
|
606
|
+
const router = getAddressForChain(MULTI_HOOK_ROUTER_ADDRESSES, chainId, "MultiHookRouter");
|
|
607
|
+
const result = await this.client.getProvider().readContract(chainId, {
|
|
608
|
+
address: router,
|
|
609
|
+
abi: MULTI_HOOK_ROUTER_ABI,
|
|
610
|
+
functionName: "getHooks",
|
|
611
|
+
args: [jobId, selector],
|
|
612
|
+
});
|
|
613
|
+
return result;
|
|
614
|
+
}
|
|
615
|
+
/** @internal */
|
|
616
|
+
async internalFundViaRouter(chainId, params) {
|
|
617
|
+
const approveAcp = await this.client.approveAllowance(chainId, {
|
|
618
|
+
tokenAddress: params.amount.address,
|
|
619
|
+
spenderAddress: this.client.getContractAddress(chainId),
|
|
620
|
+
amount: params.amount.rawAmount,
|
|
621
|
+
});
|
|
622
|
+
const subHookAddr = SUBSCRIPTION_HOOK_ADDRESSES[chainId]?.toLowerCase() ?? "";
|
|
623
|
+
const fundHookAddr = FUND_TRANSFER_HOOK_ADDRESSES[chainId]?.toLowerCase() ?? "";
|
|
624
|
+
const slices = [];
|
|
625
|
+
const prepared = [approveAcp];
|
|
626
|
+
for (const hook of params.hookConfigs) {
|
|
627
|
+
const normalizedHook = hook.toLowerCase();
|
|
628
|
+
if (subHookAddr && normalizedHook === subHookAddr) {
|
|
629
|
+
if (!params.subscriptionTerms) {
|
|
630
|
+
throw new Error("SubscriptionHook is configured on the router but no subscriptionTerms were provided");
|
|
631
|
+
}
|
|
632
|
+
slices.push(encodeSubscriptionOptParams(params.subscriptionTerms.duration, params.subscriptionTerms.packageId));
|
|
633
|
+
}
|
|
634
|
+
else if (fundHookAddr && normalizedHook === fundHookAddr) {
|
|
635
|
+
if (!params.transferAmount || !params.destination) {
|
|
636
|
+
throw new Error("FundTransferHook is configured on the router but no transferAmount/destination were provided");
|
|
637
|
+
}
|
|
638
|
+
const approveHook = await this.client.approveAllowance(chainId, {
|
|
639
|
+
tokenAddress: params.transferAmount.address,
|
|
640
|
+
spenderAddress: hook,
|
|
641
|
+
amount: params.transferAmount.rawAmount,
|
|
642
|
+
});
|
|
643
|
+
prepared.push(approveHook);
|
|
644
|
+
slices.push(encodeFundTransferOptParams(params.transferAmount.address, params.transferAmount.rawAmount, params.destination));
|
|
645
|
+
}
|
|
646
|
+
else {
|
|
647
|
+
throw new Error(`Unknown sub-hook configured on router at ${hook}. The SDK can only build optParams slices for SubscriptionHook and FundTransferHook.`);
|
|
648
|
+
}
|
|
649
|
+
}
|
|
650
|
+
const optParams = encodeRouterOptParams(slices);
|
|
651
|
+
const fundPrepared = await this.client.fund(chainId, {
|
|
652
|
+
jobId: params.jobId,
|
|
653
|
+
expectedBudget: params.amount.rawAmount,
|
|
654
|
+
optParams,
|
|
655
|
+
});
|
|
656
|
+
prepared.push(fundPrepared);
|
|
657
|
+
return this.client.submitPrepared(chainId, prepared);
|
|
658
|
+
}
|
|
659
|
+
/** @internal */
|
|
468
660
|
async internalSubmitWithTransfer(chainId, params) {
|
|
469
661
|
await this.api.postDeliverable(chainId, params.jobId.toString(), params.deliverable);
|
|
470
662
|
const hookAddr = params.hookAddress ??
|
package/dist/acpAgent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acpAgent.js","sourceRoot":"","sources":["../src/acpAgent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acpAgent.js","sourceRoot":"","sources":["../src/acpAgent.ts"],"names":[],"mappings":"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"}
|
package/dist/acpJob.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AssetToken } from "./core/assetToken.js";
|
|
2
2
|
import type { AcpClient } from "./clientFactory.js";
|
|
3
3
|
import type { OnChainJob } from "./core/operations.js";
|
|
4
|
-
import { AcpJobStatus, type OffChainIntent, type OffChainJob } from "./events/types.js";
|
|
4
|
+
import { AcpJobStatus, type OffChainIntent, type OffChainJob, type OffChainSubscription } from "./events/types.js";
|
|
5
5
|
export declare class AcpIntent {
|
|
6
6
|
readonly intentId: string;
|
|
7
7
|
readonly actor: string;
|
|
@@ -27,7 +27,9 @@ export declare class AcpJob {
|
|
|
27
27
|
readonly hookAddress: string;
|
|
28
28
|
readonly intents: AcpIntent[];
|
|
29
29
|
readonly deliverable: string | null;
|
|
30
|
-
|
|
30
|
+
readonly hookConfigs: Record<string, string[]> | null;
|
|
31
|
+
readonly clientSubscription: OffChainSubscription | null;
|
|
32
|
+
constructor(chainId: number, data: OnChainJob, intents?: AcpIntent[], deliverable?: string | null, hookConfigs?: Record<string, string[]> | null, clientSubscription?: OffChainSubscription | null);
|
|
31
33
|
getFundRequestIntent(): AcpIntent | null;
|
|
32
34
|
getFundTransferIntent(): AcpIntent | null;
|
|
33
35
|
static fromOffChain(data: OffChainJob): AcpJob;
|