@sherwoodagent/cli 0.53.4 → 0.54.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/dist/{abis-Z6M6SRPX.js → abis-VYJH7B2L.js} +2 -2
- package/dist/{agent-ER5GYBVQ.js → agent-VPUXRS7K.js} +2 -2
- package/dist/{chat-JMQNUJGF.js → chat-ZTFSH2BI.js} +5 -5
- package/dist/{chunk-4SZU32RM.js → chunk-2D4CFEU4.js} +25 -2
- package/dist/chunk-2D4CFEU4.js.map +1 -0
- package/dist/{chunk-DICS6PQM.js → chunk-6RPL24V6.js} +2 -2
- package/dist/{chunk-J2FOCXF2.js → chunk-FUH5ZDXH.js} +24 -1
- package/dist/chunk-FUH5ZDXH.js.map +1 -0
- package/dist/{chunk-KIRNQZJS.js → chunk-ZBEDR65Q.js} +2 -2
- package/dist/{chunk-AFLGHTOF.js → chunk-ZN5XF7OO.js} +2 -2
- package/dist/{chunk-MOU5FAEP.js → chunk-ZP64YMHR.js} +2 -2
- package/dist/{eas-U6DMTANA.js → eas-77DQGKWM.js} +3 -3
- package/dist/{governor-4Y6XDEVH.js → governor-65CZTQQQ.js} +7 -3
- package/dist/index.js +52 -18
- package/dist/index.js.map +1 -1
- package/dist/{price-RMH6KUTM.js → price-EIJSN5QA.js} +2 -2
- package/dist/{research-AQE726DA.js → research-7ABHFSI2.js} +3 -3
- package/dist/{session-MVLCQDLG.js → session-HB3XXXKS.js} +5 -5
- package/dist/{trade-FKC57GXZ.js → trade-XMOZ5ULE.js} +6 -6
- package/dist/{xmtp-VJMC2TR2.js → xmtp-OCLOP5OY.js} +3 -3
- package/package.json +1 -1
- package/dist/chunk-4SZU32RM.js.map +0 -1
- package/dist/chunk-J2FOCXF2.js.map +0 -1
- /package/dist/{abis-Z6M6SRPX.js.map → abis-VYJH7B2L.js.map} +0 -0
- /package/dist/{agent-ER5GYBVQ.js.map → agent-VPUXRS7K.js.map} +0 -0
- /package/dist/{chat-JMQNUJGF.js.map → chat-ZTFSH2BI.js.map} +0 -0
- /package/dist/{chunk-DICS6PQM.js.map → chunk-6RPL24V6.js.map} +0 -0
- /package/dist/{chunk-KIRNQZJS.js.map → chunk-ZBEDR65Q.js.map} +0 -0
- /package/dist/{chunk-AFLGHTOF.js.map → chunk-ZN5XF7OO.js.map} +0 -0
- /package/dist/{chunk-MOU5FAEP.js.map → chunk-ZP64YMHR.js.map} +0 -0
- /package/dist/{eas-U6DMTANA.js.map → eas-77DQGKWM.js.map} +0 -0
- /package/dist/{governor-4Y6XDEVH.js.map → governor-65CZTQQQ.js.map} +0 -0
- /package/dist/{price-RMH6KUTM.js.map → price-EIJSN5QA.js.map} +0 -0
- /package/dist/{research-AQE726DA.js.map → research-7ABHFSI2.js.map} +0 -0
- /package/dist/{session-MVLCQDLG.js.map → session-HB3XXXKS.js.map} +0 -0
- /package/dist/{trade-FKC57GXZ.js.map → trade-XMOZ5ULE.js.map} +0 -0
- /package/dist/{xmtp-VJMC2TR2.js.map → xmtp-OCLOP5OY.js.map} +0 -0
package/dist/index.js
CHANGED
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
encodeSwapPath,
|
|
16
16
|
getMultiHopQuote,
|
|
17
17
|
getQuote
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-6RPL24V6.js";
|
|
19
19
|
import {
|
|
20
20
|
chatCompletion,
|
|
21
21
|
checkApiKeyValid,
|
|
@@ -32,14 +32,14 @@ import {
|
|
|
32
32
|
queryJoinRequests,
|
|
33
33
|
revokeJoinRequest,
|
|
34
34
|
stripReferrerPrefix
|
|
35
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-ZP64YMHR.js";
|
|
36
36
|
import {
|
|
37
37
|
createSyndicate,
|
|
38
38
|
getActiveSyndicates,
|
|
39
39
|
getSyndicate,
|
|
40
40
|
subdomainExists,
|
|
41
41
|
updateMetadata
|
|
42
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-ZBEDR65Q.js";
|
|
43
43
|
import {
|
|
44
44
|
approveDepositor,
|
|
45
45
|
deposit,
|
|
@@ -63,11 +63,12 @@ import {
|
|
|
63
63
|
searchSyndicateAcrossChains,
|
|
64
64
|
setTextRecord,
|
|
65
65
|
setVaultAddress
|
|
66
|
-
} from "./chunk-
|
|
66
|
+
} from "./chunk-ZN5XF7OO.js";
|
|
67
67
|
import {
|
|
68
68
|
PROPOSAL_STATE,
|
|
69
69
|
PROPOSAL_STATES,
|
|
70
70
|
VOTE_TYPE,
|
|
71
|
+
bindProposalAdapter,
|
|
71
72
|
cancelProposal,
|
|
72
73
|
emergencyCancel,
|
|
73
74
|
emergencySettle,
|
|
@@ -95,7 +96,7 @@ import {
|
|
|
95
96
|
setVotingPeriod,
|
|
96
97
|
settleProposal,
|
|
97
98
|
vote
|
|
98
|
-
} from "./chunk-
|
|
99
|
+
} from "./chunk-2D4CFEU4.js";
|
|
99
100
|
import {
|
|
100
101
|
AERODROME,
|
|
101
102
|
AGENT_REGISTRY,
|
|
@@ -160,7 +161,7 @@ import {
|
|
|
160
161
|
SWAP_ROUTER_EXACT_INPUT_SINGLE_ABI,
|
|
161
162
|
SYNDICATE_VAULT_ABI,
|
|
162
163
|
VENICE_STAKING_ABI
|
|
163
|
-
} from "./chunk-
|
|
164
|
+
} from "./chunk-FUH5ZDXH.js";
|
|
164
165
|
import {
|
|
165
166
|
fetchMetadata,
|
|
166
167
|
uploadMetadata
|
|
@@ -1538,9 +1539,9 @@ function registerStrategyTemplateCommands(strategy2) {
|
|
|
1538
1539
|
console.error(chalk.red("Missing --name, --performance-fee, or --duration. Use --write-calls to skip proposal submission."));
|
|
1539
1540
|
process.exit(1);
|
|
1540
1541
|
}
|
|
1541
|
-
const { propose: propose2 } = await import("./governor-
|
|
1542
|
+
const { propose: propose2, bindProposalAdapter: bindProposalAdapter2 } = await import("./governor-65CZTQQQ.js");
|
|
1542
1543
|
const { pinJSON } = await import("./ipfs-IGXLLJCF.js");
|
|
1543
|
-
const { parseDuration: parseDuration2 } = await import("./governor-
|
|
1544
|
+
const { parseDuration: parseDuration2 } = await import("./governor-65CZTQQQ.js");
|
|
1544
1545
|
const performanceFeeBps = BigInt(opts.performanceFee);
|
|
1545
1546
|
if (performanceFeeBps < 0n || performanceFeeBps > 10000n) {
|
|
1546
1547
|
console.error(chalk.red("--performance-fee must be 0-10000 (basis points)"));
|
|
@@ -1569,6 +1570,7 @@ function registerStrategyTemplateCommands(strategy2) {
|
|
|
1569
1570
|
process.exit(1);
|
|
1570
1571
|
}
|
|
1571
1572
|
const proposeSpinner = ora("Submitting proposal...").start();
|
|
1573
|
+
let createdProposalId = null;
|
|
1572
1574
|
try {
|
|
1573
1575
|
const { hash, proposalId } = await propose2(
|
|
1574
1576
|
vault,
|
|
@@ -1578,6 +1580,7 @@ function registerStrategyTemplateCommands(strategy2) {
|
|
|
1578
1580
|
executeCalls,
|
|
1579
1581
|
settleCalls
|
|
1580
1582
|
);
|
|
1583
|
+
createdProposalId = proposalId;
|
|
1581
1584
|
proposeSpinner.succeed(`Proposal #${proposalId} created`);
|
|
1582
1585
|
console.log(`Proposal #${proposalId}`);
|
|
1583
1586
|
console.log(chalk.dim(` Tx: ${getExplorerUrl(hash)}`));
|
|
@@ -1587,6 +1590,18 @@ function registerStrategyTemplateCommands(strategy2) {
|
|
|
1587
1590
|
console.error(chalk.red(formatContractError(err)));
|
|
1588
1591
|
process.exit(1);
|
|
1589
1592
|
}
|
|
1593
|
+
if (createdProposalId !== null) {
|
|
1594
|
+
const bindSpinner = ora("Binding adapter for live NAV...").start();
|
|
1595
|
+
try {
|
|
1596
|
+
const bindHash = await bindProposalAdapter2(createdProposalId, clone);
|
|
1597
|
+
bindSpinner.succeed("Adapter bound \u2014 live deposits/withdraws enabled during strategy");
|
|
1598
|
+
console.log(chalk.dim(` Tx: ${getExplorerUrl(bindHash)}`));
|
|
1599
|
+
} catch (err) {
|
|
1600
|
+
bindSpinner.warn(
|
|
1601
|
+
`Adapter bind skipped (${formatContractError(err)}) \u2014 strategy will use queue-only redemptions`
|
|
1602
|
+
);
|
|
1603
|
+
}
|
|
1604
|
+
}
|
|
1590
1605
|
if (templateKey === "venice-inference") {
|
|
1591
1606
|
console.log();
|
|
1592
1607
|
console.log(chalk.yellow("Next steps:"));
|
|
@@ -1647,7 +1662,7 @@ function registerStrategyTemplateCommands(strategy2) {
|
|
|
1647
1662
|
let prices = [];
|
|
1648
1663
|
let priceSource = null;
|
|
1649
1664
|
try {
|
|
1650
|
-
const { getTokenPricesInAsset } = await import("./price-
|
|
1665
|
+
const { getTokenPricesInAsset } = await import("./price-EIJSN5QA.js");
|
|
1651
1666
|
prices = await getTokenPricesInAsset({
|
|
1652
1667
|
tokens: allocations.map((a, i) => ({
|
|
1653
1668
|
token: a.token,
|
|
@@ -2077,7 +2092,7 @@ function registerVeniceCommands(program2) {
|
|
|
2077
2092
|
console.log(chalk2.dim(` Key: ${apiKey.slice(0, 8)}...${apiKey.slice(-4)}`));
|
|
2078
2093
|
console.log(chalk2.dim(" Saved to ~/.sherwood/config.json"));
|
|
2079
2094
|
try {
|
|
2080
|
-
const { createVeniceProvisionAttestation, getEasScanUrl: getEasScanUrl2 } = await import("./eas-
|
|
2095
|
+
const { createVeniceProvisionAttestation, getEasScanUrl: getEasScanUrl2 } = await import("./eas-77DQGKWM.js");
|
|
2081
2096
|
const { uid } = await createVeniceProvisionAttestation(account.address);
|
|
2082
2097
|
if (uid !== "0x0000000000000000000000000000000000000000000000000000000000000000") {
|
|
2083
2098
|
console.log(chalk2.dim(` Attested: ${getEasScanUrl2(uid)}`));
|
|
@@ -2433,7 +2448,7 @@ ${opts.prompt}`;
|
|
|
2433
2448
|
console.log(chalk2.dim(`Model: ${result.model} | Tokens: ${result.usage.promptTokens} in, ${result.usage.completionTokens} out, ${result.usage.totalTokens} total`));
|
|
2434
2449
|
}
|
|
2435
2450
|
try {
|
|
2436
|
-
const { createVeniceInferenceAttestation, getEasScanUrl: getEasScanUrl2 } = await import("./eas-
|
|
2451
|
+
const { createVeniceInferenceAttestation, getEasScanUrl: getEasScanUrl2 } = await import("./eas-77DQGKWM.js");
|
|
2437
2452
|
const { keccak256: keccak2562, toHex, isAddress: isAddr } = await import("viem");
|
|
2438
2453
|
const { getChainContracts: getChainContracts2 } = await import("./config-REASKDIK.js");
|
|
2439
2454
|
const { getChain: getActiveChain } = await import("./network-3ZU7UBDU.js");
|
|
@@ -3609,7 +3624,7 @@ function printSimulationResult(result, callType) {
|
|
|
3609
3624
|
}
|
|
3610
3625
|
async function sendSimulationAlert(subdomain, proposalId, vault, execResult, settleResult) {
|
|
3611
3626
|
try {
|
|
3612
|
-
const xmtp = await import("./xmtp-
|
|
3627
|
+
const xmtp = await import("./xmtp-OCLOP5OY.js");
|
|
3613
3628
|
const { getAccount: getAccount2 } = await import("./client-UHHCB6EZ.js");
|
|
3614
3629
|
const group = await xmtp.getGroup("", subdomain);
|
|
3615
3630
|
const allRisks = [...execResult.risks, ...settleResult?.risks ?? []];
|
|
@@ -3981,6 +3996,25 @@ function registerProposalCommands(program2) {
|
|
|
3981
3996
|
process.exit(1);
|
|
3982
3997
|
}
|
|
3983
3998
|
});
|
|
3999
|
+
proposal.command("bind-adapter").description("Bind a strategy clone to a proposal for live NAV (proposer-only, Draft or Pending, before any co-proposer approval)").requiredOption("--id <proposalId>", "Proposal ID").requiredOption("--adapter <address>", "Strategy clone address").action(async (opts) => {
|
|
4000
|
+
try {
|
|
4001
|
+
const proposalId = parseBigIntArg(opts.id, "proposal ID");
|
|
4002
|
+
if (!isAddress4(opts.adapter)) {
|
|
4003
|
+
console.error(chalk6.red("Invalid adapter address"));
|
|
4004
|
+
process.exit(1);
|
|
4005
|
+
}
|
|
4006
|
+
const adapter = opts.adapter;
|
|
4007
|
+
const spinner = ora5("Binding adapter...").start();
|
|
4008
|
+
const hash = await bindProposalAdapter(proposalId, adapter);
|
|
4009
|
+
spinner.succeed(G2("Adapter bound \u2014 live deposits/withdraws enabled"));
|
|
4010
|
+
console.log(DIM2(` ${getExplorerUrl(hash)}`));
|
|
4011
|
+
console.log();
|
|
4012
|
+
} catch (err) {
|
|
4013
|
+
console.error(chalk6.red(`
|
|
4014
|
+
\u2716 ${formatContractError(err)}`));
|
|
4015
|
+
process.exit(1);
|
|
4016
|
+
}
|
|
4017
|
+
});
|
|
3984
4018
|
proposal.command("execute").description("Execute an approved proposal").requiredOption("--id <proposalId>", "Proposal ID").option("--dry-run", "Simulate execution without sending a transaction").action(async (opts) => {
|
|
3985
4019
|
try {
|
|
3986
4020
|
const proposalId = parseBigIntArg(opts.id, "proposal ID");
|
|
@@ -6993,7 +7027,7 @@ try {
|
|
|
6993
7027
|
var require2 = createRequire(import.meta.url);
|
|
6994
7028
|
var { version: CLI_VERSION } = require2("../package.json");
|
|
6995
7029
|
async function loadXmtp() {
|
|
6996
|
-
return import("./xmtp-
|
|
7030
|
+
return import("./xmtp-OCLOP5OY.js");
|
|
6997
7031
|
}
|
|
6998
7032
|
async function loadCron() {
|
|
6999
7033
|
return import("./cron-EOULYO3R.js");
|
|
@@ -8143,7 +8177,7 @@ ${info.name} (${info.type})`);
|
|
|
8143
8177
|
}
|
|
8144
8178
|
});
|
|
8145
8179
|
try {
|
|
8146
|
-
const { registerChatCommands } = await import("./chat-
|
|
8180
|
+
const { registerChatCommands } = await import("./chat-ZTFSH2BI.js");
|
|
8147
8181
|
registerChatCommands(program);
|
|
8148
8182
|
} catch {
|
|
8149
8183
|
program.command("chat <name> [action] [actionArgs...]").description("Syndicate chat (XMTP) \u2014 requires @xmtp/cli").action(() => {
|
|
@@ -8153,7 +8187,7 @@ try {
|
|
|
8153
8187
|
process.exit(1);
|
|
8154
8188
|
});
|
|
8155
8189
|
}
|
|
8156
|
-
var { registerSessionCommands } = await import("./session-
|
|
8190
|
+
var { registerSessionCommands } = await import("./session-HB3XXXKS.js");
|
|
8157
8191
|
registerSessionCommands(program);
|
|
8158
8192
|
registerVeniceCommands(program);
|
|
8159
8193
|
registerAllowanceCommands(program);
|
|
@@ -8161,11 +8195,11 @@ registerIdentityCommands(program);
|
|
|
8161
8195
|
registerProposalCommands(program);
|
|
8162
8196
|
registerGovernorCommands(program);
|
|
8163
8197
|
registerGuardianCommands(program);
|
|
8164
|
-
var { registerResearchCommands } = await import("./research-
|
|
8198
|
+
var { registerResearchCommands } = await import("./research-7ABHFSI2.js");
|
|
8165
8199
|
registerResearchCommands(program);
|
|
8166
|
-
var { registerAgentCommands } = await import("./agent-
|
|
8200
|
+
var { registerAgentCommands } = await import("./agent-VPUXRS7K.js");
|
|
8167
8201
|
registerAgentCommands(program);
|
|
8168
|
-
var { registerTradeCommands } = await import("./trade-
|
|
8202
|
+
var { registerTradeCommands } = await import("./trade-XMOZ5ULE.js");
|
|
8169
8203
|
registerTradeCommands(program);
|
|
8170
8204
|
registerGridCommand(program);
|
|
8171
8205
|
var configCmd = program.command("config");
|