@agent-shield/sdk 0.1.6 → 0.3.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.
- package/README.md +14 -12
- package/dist/accounts.d.ts +5 -3
- package/dist/accounts.d.ts.map +1 -1
- package/dist/accounts.js +23 -4
- package/dist/accounts.js.map +1 -1
- package/dist/client.d.ts +24 -5
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +73 -9
- package/dist/client.js.map +1 -1
- package/dist/composer.d.ts.map +1 -1
- package/dist/composer.js +3 -3
- package/dist/composer.js.map +1 -1
- package/dist/idl-json.d.ts +731 -33
- package/dist/idl-json.d.ts.map +1 -1
- package/dist/idl-json.js +1258 -54
- package/dist/idl-json.js.map +1 -1
- package/dist/idl.d.ts +1363 -159
- package/dist/idl.d.ts.map +1 -1
- package/dist/index.d.ts +7 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +26 -1
- package/dist/index.js.map +1 -1
- package/dist/instructions.d.ts +658 -64
- package/dist/instructions.d.ts.map +1 -1
- package/dist/instructions.js +78 -8
- package/dist/instructions.js.map +1 -1
- package/dist/integrations/flash-trade.d.ts.map +1 -1
- package/dist/integrations/flash-trade.js +14 -6
- package/dist/integrations/flash-trade.js.map +1 -1
- package/dist/integrations/jupiter.d.ts.map +1 -1
- package/dist/integrations/jupiter.js +4 -1
- package/dist/integrations/jupiter.js.map +1 -1
- package/dist/oracle.d.ts +31 -0
- package/dist/oracle.d.ts.map +1 -0
- package/dist/oracle.js +57 -0
- package/dist/oracle.js.map +1 -0
- package/dist/rewriter.d.ts +21 -0
- package/dist/rewriter.d.ts.map +1 -0
- package/dist/rewriter.js +33 -0
- package/dist/rewriter.js.map +1 -0
- package/dist/types.d.ts +109 -13
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +15 -1
- package/dist/types.js.map +1 -1
- package/dist/wrap.d.ts +60 -0
- package/dist/wrap.d.ts.map +1 -0
- package/dist/wrap.js +88 -0
- package/dist/wrap.js.map +1 -0
- package/package.json +13 -2
package/README.md
CHANGED
|
@@ -28,9 +28,11 @@ const client = new AgentShieldClient(connection, wallet);
|
|
|
28
28
|
// 1. Create a vault with policy
|
|
29
29
|
await client.createVault({
|
|
30
30
|
vaultId: new BN(1),
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
allowedTokens: [
|
|
31
|
+
dailySpendingCapUsd: new BN(500_000_000), // $500 USD (6 decimals)
|
|
32
|
+
maxTransactionSizeUsd: new BN(100_000_000), // $100 per tx
|
|
33
|
+
allowedTokens: [
|
|
34
|
+
{ mint: USDC_MINT, oracleFeed: PublicKey.default, decimals: 6, dailyCapBase: new BN(0), maxTxBase: new BN(0) },
|
|
35
|
+
],
|
|
34
36
|
allowedProtocols: [JUPITER_PROGRAM_ID],
|
|
35
37
|
maxLeverageBps: 0,
|
|
36
38
|
maxConcurrentPositions: 0,
|
|
@@ -66,7 +68,7 @@ AgentShield uses 4 PDA account types:
|
|
|
66
68
|
| **AgentVault** | `[b"vault", owner, vault_id]` | Holds owner/agent pubkeys, vault status, fee destination |
|
|
67
69
|
| **PolicyConfig** | `[b"policy", vault]` | Spending caps, token/protocol whitelists, leverage limits |
|
|
68
70
|
| **SpendTracker** | `[b"tracker", vault]` | Rolling 24h spend entries + bounded audit log (max 50 txs) |
|
|
69
|
-
| **SessionAuthority** | `[b"session", vault, agent]` | Ephemeral PDA for atomic transaction validation (expires after 20 slots) |
|
|
71
|
+
| **SessionAuthority** | `[b"session", vault, agent, token_mint]` | Ephemeral PDA for atomic transaction validation (expires after 20 slots) |
|
|
70
72
|
|
|
71
73
|
## Instruction Composition Pattern
|
|
72
74
|
|
|
@@ -142,7 +144,7 @@ These methods build atomic transactions in the pattern `[ValidateAndAuthorize, D
|
|
|
142
144
|
const [vaultPDA, bump] = client.getVaultPDA(owner, vaultId);
|
|
143
145
|
const [policyPDA] = client.getPolicyPDA(vaultPDA);
|
|
144
146
|
const [trackerPDA] = client.getTrackerPDA(vaultPDA);
|
|
145
|
-
const [sessionPDA] = client.getSessionPDA(vaultPDA, agent);
|
|
147
|
+
const [sessionPDA] = client.getSessionPDA(vaultPDA, agent, tokenMint);
|
|
146
148
|
```
|
|
147
149
|
|
|
148
150
|
### Account Fetchers
|
|
@@ -163,7 +165,7 @@ const tracker = await client.fetchTrackerByAddress(trackerPDA);
|
|
|
163
165
|
|
|
164
166
|
### Instruction Parameters
|
|
165
167
|
|
|
166
|
-
- **`InitializeVaultParams`** — `vaultId`, `
|
|
168
|
+
- **`InitializeVaultParams`** — `vaultId`, `dailySpendingCapUsd`, `maxTransactionSizeUsd`, `allowedTokens` (`AllowedToken[]`), `allowedProtocols`, `maxLeverageBps`, `maxConcurrentPositions`, `feeDestination`
|
|
167
169
|
- **`UpdatePolicyParams`** — All policy fields as optionals (only set fields are updated)
|
|
168
170
|
- **`AuthorizeParams`** — `actionType`, `tokenMint`, `amount`, `targetProtocol`, `leverageBps?`
|
|
169
171
|
- **`ComposeActionParams`** — Full params for composed transactions including `defiInstructions`, `success?`, token accounts
|
|
@@ -171,9 +173,9 @@ const tracker = await client.fetchTrackerByAddress(trackerPDA);
|
|
|
171
173
|
### Account Types
|
|
172
174
|
|
|
173
175
|
- **`AgentVaultAccount`** — owner, agent, feeDestination, vaultId, status, stats (totalTransactions, totalVolume)
|
|
174
|
-
- **`PolicyConfigAccount`** —
|
|
175
|
-
- **`SpendTrackerAccount`** —
|
|
176
|
-
- **`SessionAuthorityAccount`** — vault, agent, actionType, expiresAt
|
|
176
|
+
- **`PolicyConfigAccount`** — dailySpendingCapUsd, maxTransactionSizeUsd, allowedTokens (`AllowedToken[]`), allowedProtocols, maxLeverageBps, maxConcurrentPositions, developerFeeRate
|
|
177
|
+
- **`SpendTrackerAccount`** — rollingSpends (`SpendEntry[]` with tokenMint, usdAmount, baseAmount, timestamp), recentTransactions (audit log, max 50)
|
|
178
|
+
- **`SessionAuthorityAccount`** — vault, agent, actionType, expiresAt, delegated, delegationTokenAccount
|
|
177
179
|
|
|
178
180
|
### Enums
|
|
179
181
|
|
|
@@ -243,9 +245,9 @@ Owner creates vault with policy → Agent operates within policy constraints
|
|
|
243
245
|
|
|
244
246
|
| Field | Range | Description |
|
|
245
247
|
|-------|-------|-------------|
|
|
246
|
-
| `
|
|
247
|
-
| `
|
|
248
|
-
| `allowedTokens` | max 10 |
|
|
248
|
+
| `dailySpendingCapUsd` | `u64` | Max aggregate USD spend in rolling 24h window (6 decimals) |
|
|
249
|
+
| `maxTransactionSizeUsd` | `u64` | Max single transaction USD value (6 decimals) |
|
|
250
|
+
| `allowedTokens` | max 10 | `AllowedToken[]` — mint, oracleFeed, decimals, dailyCapBase, maxTxBase |
|
|
249
251
|
| `allowedProtocols` | max 10 | Program ID whitelist |
|
|
250
252
|
| `maxLeverageBps` | `u16` | Max leverage in basis points |
|
|
251
253
|
| `maxConcurrentPositions` | `u8` | Max open positions |
|
package/dist/accounts.d.ts
CHANGED
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
import { PublicKey } from "@solana/web3.js";
|
|
2
2
|
import { BN, Program } from "@coral-xyz/anchor";
|
|
3
|
-
import type { AgentShield, AgentVaultAccount, PolicyConfigAccount, SpendTrackerAccount, SessionAuthorityAccount } from "./types";
|
|
3
|
+
import type { AgentShield, AgentVaultAccount, PolicyConfigAccount, SpendTrackerAccount, SessionAuthorityAccount, PendingPolicyUpdateAccount } from "./types";
|
|
4
4
|
export declare function getVaultPDA(owner: PublicKey, vaultId: BN, programId?: PublicKey): [PublicKey, number];
|
|
5
5
|
export declare function getPolicyPDA(vault: PublicKey, programId?: PublicKey): [PublicKey, number];
|
|
6
6
|
export declare function getTrackerPDA(vault: PublicKey, programId?: PublicKey): [PublicKey, number];
|
|
7
|
-
export declare function getSessionPDA(vault: PublicKey, agent: PublicKey, programId?: PublicKey): [PublicKey, number];
|
|
7
|
+
export declare function getSessionPDA(vault: PublicKey, agent: PublicKey, tokenMint: PublicKey, programId?: PublicKey): [PublicKey, number];
|
|
8
|
+
export declare function getPendingPolicyPDA(vault: PublicKey, programId?: PublicKey): [PublicKey, number];
|
|
8
9
|
export declare function fetchVault(program: Program<AgentShield>, owner: PublicKey, vaultId: BN): Promise<AgentVaultAccount>;
|
|
9
10
|
export declare function fetchPolicy(program: Program<AgentShield>, vault: PublicKey): Promise<PolicyConfigAccount>;
|
|
10
11
|
export declare function fetchTracker(program: Program<AgentShield>, vault: PublicKey): Promise<SpendTrackerAccount>;
|
|
11
|
-
export declare function fetchSession(program: Program<AgentShield>, vault: PublicKey, agent: PublicKey): Promise<SessionAuthorityAccount>;
|
|
12
|
+
export declare function fetchSession(program: Program<AgentShield>, vault: PublicKey, agent: PublicKey, tokenMint: PublicKey): Promise<SessionAuthorityAccount>;
|
|
12
13
|
export declare function fetchVaultByAddress(program: Program<AgentShield>, address: PublicKey): Promise<AgentVaultAccount>;
|
|
13
14
|
export declare function fetchPolicyByAddress(program: Program<AgentShield>, address: PublicKey): Promise<PolicyConfigAccount>;
|
|
14
15
|
export declare function fetchTrackerByAddress(program: Program<AgentShield>, address: PublicKey): Promise<SpendTrackerAccount>;
|
|
16
|
+
export declare function fetchPendingPolicy(program: Program<AgentShield>, vault: PublicKey): Promise<PendingPolicyUpdateAccount | null>;
|
|
15
17
|
//# sourceMappingURL=accounts.d.ts.map
|
package/dist/accounts.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../src/accounts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EACV,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,uBAAuB,
|
|
1
|
+
{"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../src/accounts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EACV,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,SAAS,CAAC;AAKjB,wBAAgB,WAAW,CACzB,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,EAAE,EACX,SAAS,GAAE,SAAmC,GAC7C,CAAC,SAAS,EAAE,MAAM,CAAC,CASrB;AAED,wBAAgB,YAAY,CAC1B,KAAK,EAAE,SAAS,EAChB,SAAS,GAAE,SAAmC,GAC7C,CAAC,SAAS,EAAE,MAAM,CAAC,CAKrB;AAED,wBAAgB,aAAa,CAC3B,KAAK,EAAE,SAAS,EAChB,SAAS,GAAE,SAAmC,GAC7C,CAAC,SAAS,EAAE,MAAM,CAAC,CAKrB;AAED,wBAAgB,aAAa,CAC3B,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,SAAS,EACpB,SAAS,GAAE,SAAmC,GAC7C,CAAC,SAAS,EAAE,MAAM,CAAC,CAUrB;AAED,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,SAAS,EAChB,SAAS,GAAE,SAAmC,GAC7C,CAAC,SAAS,EAAE,MAAM,CAAC,CAKrB;AAWD,wBAAsB,UAAU,CAC9B,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,EAC7B,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,EAAE,GACV,OAAO,CAAC,iBAAiB,CAAC,CAK5B;AAED,wBAAsB,WAAW,CAC/B,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,EAC7B,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,mBAAmB,CAAC,CAK9B;AAED,wBAAsB,YAAY,CAChC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,EAC7B,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,mBAAmB,CAAC,CAK9B;AAED,wBAAsB,YAAY,CAChC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,EAC7B,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,uBAAuB,CAAC,CAUlC;AAED,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,EAC7B,OAAO,EAAE,SAAS,GACjB,OAAO,CAAC,iBAAiB,CAAC,CAI5B;AAED,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,EAC7B,OAAO,EAAE,SAAS,GACjB,OAAO,CAAC,mBAAmB,CAAC,CAI9B;AAED,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,EAC7B,OAAO,EAAE,SAAS,GACjB,OAAO,CAAC,mBAAmB,CAAC,CAI9B;AAED,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,EAC7B,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,0BAA0B,GAAG,IAAI,CAAC,CAS5C"}
|
package/dist/accounts.js
CHANGED
|
@@ -4,6 +4,7 @@ exports.getVaultPDA = getVaultPDA;
|
|
|
4
4
|
exports.getPolicyPDA = getPolicyPDA;
|
|
5
5
|
exports.getTrackerPDA = getTrackerPDA;
|
|
6
6
|
exports.getSessionPDA = getSessionPDA;
|
|
7
|
+
exports.getPendingPolicyPDA = getPendingPolicyPDA;
|
|
7
8
|
exports.fetchVault = fetchVault;
|
|
8
9
|
exports.fetchPolicy = fetchPolicy;
|
|
9
10
|
exports.fetchTracker = fetchTracker;
|
|
@@ -11,6 +12,7 @@ exports.fetchSession = fetchSession;
|
|
|
11
12
|
exports.fetchVaultByAddress = fetchVaultByAddress;
|
|
12
13
|
exports.fetchPolicyByAddress = fetchPolicyByAddress;
|
|
13
14
|
exports.fetchTrackerByAddress = fetchTrackerByAddress;
|
|
15
|
+
exports.fetchPendingPolicy = fetchPendingPolicy;
|
|
14
16
|
const web3_js_1 = require("@solana/web3.js");
|
|
15
17
|
const types_1 = require("./types");
|
|
16
18
|
// --- PDA Derivation ---
|
|
@@ -27,8 +29,16 @@ function getPolicyPDA(vault, programId = types_1.AGENT_SHIELD_PROGRAM_ID) {
|
|
|
27
29
|
function getTrackerPDA(vault, programId = types_1.AGENT_SHIELD_PROGRAM_ID) {
|
|
28
30
|
return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from("tracker"), vault.toBuffer()], programId);
|
|
29
31
|
}
|
|
30
|
-
function getSessionPDA(vault, agent, programId = types_1.AGENT_SHIELD_PROGRAM_ID) {
|
|
31
|
-
return web3_js_1.PublicKey.findProgramAddressSync([
|
|
32
|
+
function getSessionPDA(vault, agent, tokenMint, programId = types_1.AGENT_SHIELD_PROGRAM_ID) {
|
|
33
|
+
return web3_js_1.PublicKey.findProgramAddressSync([
|
|
34
|
+
Buffer.from("session"),
|
|
35
|
+
vault.toBuffer(),
|
|
36
|
+
agent.toBuffer(),
|
|
37
|
+
tokenMint.toBuffer(),
|
|
38
|
+
], programId);
|
|
39
|
+
}
|
|
40
|
+
function getPendingPolicyPDA(vault, programId = types_1.AGENT_SHIELD_PROGRAM_ID) {
|
|
41
|
+
return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from("pending_policy"), vault.toBuffer()], programId);
|
|
32
42
|
}
|
|
33
43
|
// --- Account Fetching ---
|
|
34
44
|
// Note: Anchor 0.32.1 generates PascalCase type names but creates camelCase
|
|
@@ -49,8 +59,8 @@ async function fetchTracker(program, vault) {
|
|
|
49
59
|
const [trackerPda] = getTrackerPDA(vault, program.programId);
|
|
50
60
|
return (await accounts(program).spendTracker.fetch(trackerPda));
|
|
51
61
|
}
|
|
52
|
-
async function fetchSession(program, vault, agent) {
|
|
53
|
-
const [sessionPda] = getSessionPDA(vault, agent, program.programId);
|
|
62
|
+
async function fetchSession(program, vault, agent, tokenMint) {
|
|
63
|
+
const [sessionPda] = getSessionPDA(vault, agent, tokenMint, program.programId);
|
|
54
64
|
return (await accounts(program).sessionAuthority.fetch(sessionPda));
|
|
55
65
|
}
|
|
56
66
|
async function fetchVaultByAddress(program, address) {
|
|
@@ -62,4 +72,13 @@ async function fetchPolicyByAddress(program, address) {
|
|
|
62
72
|
async function fetchTrackerByAddress(program, address) {
|
|
63
73
|
return (await accounts(program).spendTracker.fetch(address));
|
|
64
74
|
}
|
|
75
|
+
async function fetchPendingPolicy(program, vault) {
|
|
76
|
+
const [pda] = getPendingPolicyPDA(vault, program.programId);
|
|
77
|
+
try {
|
|
78
|
+
return (await accounts(program).pendingPolicyUpdate.fetch(pda));
|
|
79
|
+
}
|
|
80
|
+
catch {
|
|
81
|
+
return null;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
65
84
|
//# sourceMappingURL=accounts.js.map
|
package/dist/accounts.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accounts.js","sourceRoot":"","sources":["../src/accounts.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"accounts.js","sourceRoot":"","sources":["../src/accounts.ts"],"names":[],"mappings":"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"}
|
package/dist/client.d.ts
CHANGED
|
@@ -1,29 +1,39 @@
|
|
|
1
1
|
import { PublicKey, Connection, TransactionInstruction, VersionedTransaction, Signer } from "@solana/web3.js";
|
|
2
2
|
import { AnchorProvider, BN, Program, Wallet } from "@coral-xyz/anchor";
|
|
3
|
-
import type { AgentShield, AgentVaultAccount, PolicyConfigAccount, SpendTrackerAccount, InitializeVaultParams, UpdatePolicyParams, AuthorizeParams, ComposeActionParams } from "./types";
|
|
3
|
+
import type { AgentShield, AgentVaultAccount, PolicyConfigAccount, SpendTrackerAccount, PendingPolicyUpdateAccount, InitializeVaultParams, UpdatePolicyParams, QueuePolicyUpdateParams, AgentTransferParams, AuthorizeParams, ComposeActionParams } from "./types";
|
|
4
|
+
import { type WrapTransactionParams } from "./wrap";
|
|
4
5
|
import { type JupiterQuoteParams, type JupiterQuoteResponse, type JupiterSwapParams } from "./integrations/jupiter";
|
|
5
6
|
import { type FlashTradeConfig, type FlashOpenPositionParams, type FlashClosePositionParams, type FlashIncreasePositionParams, type FlashDecreasePositionParams, type FlashTradeResult } from "./integrations/flash-trade";
|
|
6
7
|
import { PerpetualsClient, PoolConfig } from "flash-sdk";
|
|
8
|
+
export interface AgentShieldClientOptions {
|
|
9
|
+
programId?: PublicKey;
|
|
10
|
+
idl?: any;
|
|
11
|
+
/** When true, createVault() throws if allowedDestinations is empty */
|
|
12
|
+
requireDestinations?: boolean;
|
|
13
|
+
}
|
|
7
14
|
export declare class AgentShieldClient {
|
|
8
15
|
readonly program: Program<AgentShield>;
|
|
9
16
|
readonly provider: AnchorProvider;
|
|
10
|
-
|
|
17
|
+
private readonly requireDestinations;
|
|
18
|
+
constructor(connection: Connection, wallet: Wallet, programIdOrOptions?: PublicKey | AgentShieldClientOptions, idl?: any);
|
|
11
19
|
getVaultPDA(owner: PublicKey, vaultId: BN): [PublicKey, number];
|
|
12
20
|
getPolicyPDA(vault: PublicKey): [PublicKey, number];
|
|
13
21
|
getTrackerPDA(vault: PublicKey): [PublicKey, number];
|
|
14
|
-
getSessionPDA(vault: PublicKey, agent: PublicKey): [PublicKey, number];
|
|
22
|
+
getSessionPDA(vault: PublicKey, agent: PublicKey, tokenMint: PublicKey): [PublicKey, number];
|
|
23
|
+
getPendingPolicyPDA(vault: PublicKey): [PublicKey, number];
|
|
15
24
|
fetchVault(owner: PublicKey, vaultId: BN): Promise<AgentVaultAccount>;
|
|
16
25
|
fetchVaultByAddress(address: PublicKey): Promise<AgentVaultAccount>;
|
|
17
26
|
fetchPolicy(vault: PublicKey): Promise<PolicyConfigAccount>;
|
|
18
27
|
fetchPolicyByAddress(address: PublicKey): Promise<PolicyConfigAccount>;
|
|
19
28
|
fetchTracker(vault: PublicKey): Promise<SpendTrackerAccount>;
|
|
20
29
|
fetchTrackerByAddress(address: PublicKey): Promise<SpendTrackerAccount>;
|
|
30
|
+
fetchPendingPolicy(vault: PublicKey): Promise<PendingPolicyUpdateAccount | null>;
|
|
21
31
|
createVault(params: InitializeVaultParams): Promise<string>;
|
|
22
32
|
deposit(vault: PublicKey, mint: PublicKey, amount: BN): Promise<string>;
|
|
23
33
|
registerAgent(vault: PublicKey, agent: PublicKey): Promise<string>;
|
|
24
34
|
updatePolicy(vault: PublicKey, params: UpdatePolicyParams): Promise<string>;
|
|
25
|
-
authorizeAction(vault: PublicKey, params: AuthorizeParams): Promise<string>;
|
|
26
|
-
finalizeSession(vault: PublicKey, agent: PublicKey, success: boolean, vaultTokenAccount
|
|
35
|
+
authorizeAction(vault: PublicKey, vaultTokenAccount: PublicKey, params: AuthorizeParams): Promise<string>;
|
|
36
|
+
finalizeSession(vault: PublicKey, agent: PublicKey, tokenMint: PublicKey, success: boolean, vaultTokenAccount: PublicKey, feeDestinationTokenAccount?: PublicKey | null, protocolTreasuryTokenAccount?: PublicKey | null): Promise<string>;
|
|
27
37
|
/**
|
|
28
38
|
* Calculate protocol and developer fees for a given amount.
|
|
29
39
|
*/
|
|
@@ -36,6 +46,10 @@ export declare class AgentShieldClient {
|
|
|
36
46
|
reactivateVault(vault: PublicKey, newAgent?: PublicKey | null): Promise<string>;
|
|
37
47
|
withdraw(vault: PublicKey, mint: PublicKey, amount: BN): Promise<string>;
|
|
38
48
|
closeVault(vault: PublicKey): Promise<string>;
|
|
49
|
+
queuePolicyUpdate(vault: PublicKey, params: QueuePolicyUpdateParams): Promise<string>;
|
|
50
|
+
applyPendingPolicy(vault: PublicKey): Promise<string>;
|
|
51
|
+
cancelPendingPolicy(vault: PublicKey): Promise<string>;
|
|
52
|
+
agentTransfer(vault: PublicKey, params: AgentTransferParams, oracleFeedAccount?: PublicKey): Promise<string>;
|
|
39
53
|
composePermittedAction(params: ComposeActionParams, computeUnits?: number): Promise<TransactionInstruction[]>;
|
|
40
54
|
composePermittedTransaction(params: ComposeActionParams, computeUnits?: number): Promise<VersionedTransaction>;
|
|
41
55
|
composePermittedSwap(params: Omit<ComposeActionParams, "actionType">, computeUnits?: number): Promise<TransactionInstruction[]>;
|
|
@@ -44,6 +58,11 @@ export declare class AgentShieldClient {
|
|
|
44
58
|
* Returns the transaction signature.
|
|
45
59
|
*/
|
|
46
60
|
composeAndSend(params: ComposeActionParams, signers?: Signer[], computeUnits?: number): Promise<string>;
|
|
61
|
+
/**
|
|
62
|
+
* Protocol-agnostic: wrap DeFi instructions, sign, send, and confirm.
|
|
63
|
+
* Handles authority rewriting, delegation, and fee collection automatically.
|
|
64
|
+
*/
|
|
65
|
+
wrapAndSend(params: WrapTransactionParams, signers?: Signer[]): Promise<string>;
|
|
47
66
|
/**
|
|
48
67
|
* Fetch a swap quote from Jupiter V6 API.
|
|
49
68
|
*/
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,UAAU,EACV,sBAAsB,EACtB,oBAAoB,EAEpB,MAAM,EAEP,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,cAAc,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
CHANGED
|
@@ -7,18 +7,33 @@ const types_1 = require("./types");
|
|
|
7
7
|
const accounts_1 = require("./accounts");
|
|
8
8
|
const instructions_1 = require("./instructions");
|
|
9
9
|
const composer_1 = require("./composer");
|
|
10
|
+
const wrap_1 = require("./wrap");
|
|
10
11
|
const jupiter_1 = require("./integrations/jupiter");
|
|
11
12
|
const flash_trade_1 = require("./integrations/flash-trade");
|
|
12
13
|
const idl_json_1 = require("./idl-json");
|
|
13
14
|
class AgentShieldClient {
|
|
14
|
-
constructor(connection, wallet,
|
|
15
|
+
constructor(connection, wallet, programIdOrOptions, idl) {
|
|
15
16
|
// --- Flash Trade Integration ---
|
|
16
17
|
this._perpClient = null;
|
|
17
18
|
this._poolConfig = null;
|
|
18
19
|
this.provider = new anchor_1.AnchorProvider(connection, wallet, {
|
|
19
20
|
commitment: "confirmed",
|
|
20
21
|
});
|
|
21
|
-
|
|
22
|
+
let programId;
|
|
23
|
+
let resolvedIdl;
|
|
24
|
+
if (programIdOrOptions &&
|
|
25
|
+
!(programIdOrOptions instanceof web3_js_1.PublicKey) &&
|
|
26
|
+
typeof programIdOrOptions === "object") {
|
|
27
|
+
const opts = programIdOrOptions;
|
|
28
|
+
programId = opts.programId;
|
|
29
|
+
resolvedIdl = opts.idl ?? idl_json_1.IDL;
|
|
30
|
+
this.requireDestinations = opts.requireDestinations ?? false;
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
programId = programIdOrOptions;
|
|
34
|
+
resolvedIdl = idl ?? idl_json_1.IDL;
|
|
35
|
+
this.requireDestinations = false;
|
|
36
|
+
}
|
|
22
37
|
if (programId) {
|
|
23
38
|
resolvedIdl.address = programId.toBase58();
|
|
24
39
|
}
|
|
@@ -34,8 +49,11 @@ class AgentShieldClient {
|
|
|
34
49
|
getTrackerPDA(vault) {
|
|
35
50
|
return (0, accounts_1.getTrackerPDA)(vault, this.program.programId);
|
|
36
51
|
}
|
|
37
|
-
getSessionPDA(vault, agent) {
|
|
38
|
-
return (0, accounts_1.getSessionPDA)(vault, agent, this.program.programId);
|
|
52
|
+
getSessionPDA(vault, agent, tokenMint) {
|
|
53
|
+
return (0, accounts_1.getSessionPDA)(vault, agent, tokenMint, this.program.programId);
|
|
54
|
+
}
|
|
55
|
+
getPendingPolicyPDA(vault) {
|
|
56
|
+
return (0, accounts_1.getPendingPolicyPDA)(vault, this.program.programId);
|
|
39
57
|
}
|
|
40
58
|
// --- Account Fetching ---
|
|
41
59
|
async fetchVault(owner, vaultId) {
|
|
@@ -56,8 +74,20 @@ class AgentShieldClient {
|
|
|
56
74
|
async fetchTrackerByAddress(address) {
|
|
57
75
|
return (0, accounts_1.fetchTrackerByAddress)(this.program, address);
|
|
58
76
|
}
|
|
77
|
+
async fetchPendingPolicy(vault) {
|
|
78
|
+
return (0, accounts_1.fetchPendingPolicy)(this.program, vault);
|
|
79
|
+
}
|
|
59
80
|
// --- Instruction Execution (sends + confirms) ---
|
|
60
81
|
async createVault(params) {
|
|
82
|
+
const hasDestinations = params.allowedDestinations && params.allowedDestinations.length > 0;
|
|
83
|
+
if (!hasDestinations) {
|
|
84
|
+
if (this.requireDestinations) {
|
|
85
|
+
throw new Error("AgentShield: allowedDestinations is empty but requireDestinations is enabled. " +
|
|
86
|
+
"Pass allowedDestinations to restrict agent transfer targets.");
|
|
87
|
+
}
|
|
88
|
+
console.warn("\u26A0 AgentShield: Vault created with empty allowedDestinations \u2014 " +
|
|
89
|
+
"agent can transfer to ANY address. Pass allowedDestinations to restrict.");
|
|
90
|
+
}
|
|
61
91
|
const owner = this.provider.wallet.publicKey;
|
|
62
92
|
return (0, instructions_1.buildInitializeVault)(this.program, owner, params).rpc();
|
|
63
93
|
}
|
|
@@ -73,13 +103,13 @@ class AgentShieldClient {
|
|
|
73
103
|
const owner = this.provider.wallet.publicKey;
|
|
74
104
|
return (0, instructions_1.buildUpdatePolicy)(this.program, owner, vault, params).rpc();
|
|
75
105
|
}
|
|
76
|
-
async authorizeAction(vault, params) {
|
|
106
|
+
async authorizeAction(vault, vaultTokenAccount, params) {
|
|
77
107
|
const agent = this.provider.wallet.publicKey;
|
|
78
|
-
return (0, instructions_1.buildValidateAndAuthorize)(this.program, agent, vault, params).rpc();
|
|
108
|
+
return (0, instructions_1.buildValidateAndAuthorize)(this.program, agent, vault, vaultTokenAccount, params).rpc();
|
|
79
109
|
}
|
|
80
|
-
async finalizeSession(vault, agent, success, vaultTokenAccount, feeDestinationTokenAccount, protocolTreasuryTokenAccount) {
|
|
110
|
+
async finalizeSession(vault, agent, tokenMint, success, vaultTokenAccount, feeDestinationTokenAccount, protocolTreasuryTokenAccount) {
|
|
81
111
|
const payer = this.provider.wallet.publicKey;
|
|
82
|
-
return (0, instructions_1.buildFinalizeSession)(this.program, payer, vault, agent, success, vaultTokenAccount, feeDestinationTokenAccount, protocolTreasuryTokenAccount).rpc();
|
|
112
|
+
return (0, instructions_1.buildFinalizeSession)(this.program, payer, vault, agent, tokenMint, success, vaultTokenAccount, feeDestinationTokenAccount, protocolTreasuryTokenAccount).rpc();
|
|
83
113
|
}
|
|
84
114
|
/**
|
|
85
115
|
* Calculate protocol and developer fees for a given amount.
|
|
@@ -113,6 +143,22 @@ class AgentShieldClient {
|
|
|
113
143
|
const owner = this.provider.wallet.publicKey;
|
|
114
144
|
return (0, instructions_1.buildCloseVault)(this.program, owner, vault).rpc();
|
|
115
145
|
}
|
|
146
|
+
async queuePolicyUpdate(vault, params) {
|
|
147
|
+
const owner = this.provider.wallet.publicKey;
|
|
148
|
+
return (0, instructions_1.buildQueuePolicyUpdate)(this.program, owner, vault, params).rpc();
|
|
149
|
+
}
|
|
150
|
+
async applyPendingPolicy(vault) {
|
|
151
|
+
const owner = this.provider.wallet.publicKey;
|
|
152
|
+
return (0, instructions_1.buildApplyPendingPolicy)(this.program, owner, vault).rpc();
|
|
153
|
+
}
|
|
154
|
+
async cancelPendingPolicy(vault) {
|
|
155
|
+
const owner = this.provider.wallet.publicKey;
|
|
156
|
+
return (0, instructions_1.buildCancelPendingPolicy)(this.program, owner, vault).rpc();
|
|
157
|
+
}
|
|
158
|
+
async agentTransfer(vault, params, oracleFeedAccount) {
|
|
159
|
+
const agent = this.provider.wallet.publicKey;
|
|
160
|
+
return (0, instructions_1.buildAgentTransfer)(this.program, agent, vault, params, oracleFeedAccount).rpc();
|
|
161
|
+
}
|
|
116
162
|
// --- Composition ---
|
|
117
163
|
async composePermittedAction(params, computeUnits) {
|
|
118
164
|
return (0, composer_1.composePermittedAction)(this.program, params, computeUnits);
|
|
@@ -144,6 +190,21 @@ class AgentShieldClient {
|
|
|
144
190
|
await this.provider.connection.confirmTransaction({ signature: sig, blockhash, lastValidBlockHeight }, "confirmed");
|
|
145
191
|
return sig;
|
|
146
192
|
}
|
|
193
|
+
/**
|
|
194
|
+
* Protocol-agnostic: wrap DeFi instructions, sign, send, and confirm.
|
|
195
|
+
* Handles authority rewriting, delegation, and fee collection automatically.
|
|
196
|
+
*/
|
|
197
|
+
async wrapAndSend(params, signers) {
|
|
198
|
+
const tx = await (0, wrap_1.wrapTransaction)(this.program, this.provider.connection, params);
|
|
199
|
+
if (signers && signers.length > 0) {
|
|
200
|
+
tx.sign(signers);
|
|
201
|
+
}
|
|
202
|
+
const signed = await this.provider.wallet.signTransaction(tx);
|
|
203
|
+
const sig = await this.provider.connection.sendRawTransaction(signed.serialize());
|
|
204
|
+
const { blockhash, lastValidBlockHeight } = await this.provider.connection.getLatestBlockhash();
|
|
205
|
+
await this.provider.connection.confirmTransaction({ signature: sig, blockhash, lastValidBlockHeight }, "confirmed");
|
|
206
|
+
return sig;
|
|
207
|
+
}
|
|
147
208
|
// --- Jupiter Integration ---
|
|
148
209
|
/**
|
|
149
210
|
* Fetch a swap quote from Jupiter V6 API.
|
|
@@ -235,7 +296,10 @@ class AgentShieldClient {
|
|
|
235
296
|
*/
|
|
236
297
|
async executeFlashTrade(result, agent, signers) {
|
|
237
298
|
const tx = await (0, flash_trade_1.composeFlashTradeTransaction)(this.provider.connection, agent, result);
|
|
238
|
-
const allSigners = [
|
|
299
|
+
const allSigners = [
|
|
300
|
+
...(result.additionalSigners || []),
|
|
301
|
+
...(signers || []),
|
|
302
|
+
];
|
|
239
303
|
if (allSigners.length > 0) {
|
|
240
304
|
tx.sign(allSigners);
|
|
241
305
|
}
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/composer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composer.d.ts","sourceRoot":"","sources":["../src/composer.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,sBAAsB,EAEtB,oBAAoB,EAEpB,UAAU,EACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"composer.d.ts","sourceRoot":"","sources":["../src/composer.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,sBAAsB,EAEtB,oBAAoB,EAEpB,UAAU,EACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAShE;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,EAC7B,MAAM,EAAE,mBAAmB,EAC3B,YAAY,GAAE,MAA8B,GAC3C,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAiCnC;AAED;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,EAC7B,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,mBAAmB,EAC3B,YAAY,GAAE,MAA8B,GAC3C,OAAO,CAAC,oBAAoB,CAAC,CAe/B;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,EAC7B,MAAM,EAAE,IAAI,CAAC,mBAAmB,EAAE,YAAY,CAAC,EAC/C,YAAY,GAAE,MAA8B,GAC3C,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAMnC"}
|
package/dist/composer.js
CHANGED
|
@@ -17,14 +17,14 @@ async function composePermittedAction(program, params, computeUnits = DEFAULT_CO
|
|
|
17
17
|
const computeBudgetIx = web3_js_1.ComputeBudgetProgram.setComputeUnitLimit({
|
|
18
18
|
units: computeUnits,
|
|
19
19
|
});
|
|
20
|
-
const validateIx = await (0, instructions_1.buildValidateAndAuthorize)(program, params.agent, params.vault, {
|
|
20
|
+
const validateIx = await (0, instructions_1.buildValidateAndAuthorize)(program, params.agent, params.vault, params.vaultTokenAccount, {
|
|
21
21
|
actionType: params.actionType,
|
|
22
22
|
tokenMint: params.tokenMint,
|
|
23
23
|
amount: params.amount,
|
|
24
24
|
targetProtocol: params.targetProtocol,
|
|
25
25
|
leverageBps: params.leverageBps,
|
|
26
|
-
}).instruction();
|
|
27
|
-
const finalizeIx = await (0, instructions_1.buildFinalizeSession)(program, params.agent, params.vault, params.agent, params.success ?? true, params.vaultTokenAccount, params.feeDestinationTokenAccount, params.protocolTreasuryTokenAccount).instruction();
|
|
26
|
+
}, params.oracleFeedAccount).instruction();
|
|
27
|
+
const finalizeIx = await (0, instructions_1.buildFinalizeSession)(program, params.agent, params.vault, params.agent, params.tokenMint, params.success ?? true, params.vaultTokenAccount, params.feeDestinationTokenAccount, params.protocolTreasuryTokenAccount).instruction();
|
|
28
28
|
return [computeBudgetIx, validateIx, ...params.defiInstructions, finalizeIx];
|
|
29
29
|
}
|
|
30
30
|
/**
|
package/dist/composer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composer.js","sourceRoot":"","sources":["../src/composer.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"composer.js","sourceRoot":"","sources":["../src/composer.ts"],"names":[],"mappings":";;AAwBA,wDAqCC;AAMD,kEAoBC;AAMD,oDAUC;AAvGD,6CAOyB;AAGzB,iDAGwB;AAExB,iEAAiE;AACjE,MAAM,qBAAqB,GAAG,OAAS,CAAC;AAExC;;;;;GAKG;AACI,KAAK,UAAU,sBAAsB,CAC1C,OAA6B,EAC7B,MAA2B,EAC3B,eAAuB,qBAAqB;IAE5C,MAAM,eAAe,GAAG,8BAAoB,CAAC,mBAAmB,CAAC;QAC/D,KAAK,EAAE,YAAY;KACpB,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,MAAM,IAAA,wCAAyB,EAChD,OAAO,EACP,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,iBAAiB,EACxB;QACE,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,WAAW,EAAE,MAAM,CAAC,WAAW;KAChC,EACD,MAAM,CAAC,iBAAiB,CACzB,CAAC,WAAW,EAAE,CAAC;IAEhB,MAAM,UAAU,GAAG,MAAM,IAAA,mCAAoB,EAC3C,OAAO,EACP,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,OAAO,IAAI,IAAI,EACtB,MAAM,CAAC,iBAAiB,EACxB,MAAM,CAAC,0BAA0B,EACjC,MAAM,CAAC,4BAA4B,CACpC,CAAC,WAAW,EAAE,CAAC;IAEhB,OAAO,CAAC,eAAe,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;AAC/E,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,2BAA2B,CAC/C,OAA6B,EAC7B,UAAsB,EACtB,MAA2B,EAC3B,eAAuB,qBAAqB;IAE5C,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAC/C,OAAO,EACP,MAAM,EACN,YAAY,CACb,CAAC;IACF,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,UAAU,CAAC,kBAAkB,EAAE,CAAC;IAE5D,MAAM,SAAS,GAAG,IAAI,4BAAkB,CAAC;QACvC,QAAQ,EAAE,MAAM,CAAC,KAAK;QACtB,eAAe,EAAE,SAAS;QAC1B,YAAY;KACb,CAAC,CAAC,kBAAkB,EAAE,CAAC;IAExB,OAAO,IAAI,8BAAoB,CAAC,SAAS,CAAC,CAAC;AAC7C,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,oBAAoB,CACxC,OAA6B,EAC7B,MAA+C,EAC/C,eAAuB,qBAAqB;IAE5C,OAAO,sBAAsB,CAC3B,OAAO,EACP,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EACvC,YAAY,CACb,CAAC;AACJ,CAAC"}
|