@sherwoodagent/cli 0.90.0 → 0.90.2
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/{agent-QU2OSWS4.js → agent-LVDMPKHK.js} +9 -9
- package/dist/agent-LVDMPKHK.js.map +1 -0
- package/dist/{chat-PFXIL6WT.js → chat-HS7OIE2Y.js} +8 -8
- package/dist/{chunk-KXUA5BEH.js → chunk-5G4SESMO.js} +47 -8
- package/dist/chunk-5G4SESMO.js.map +1 -0
- package/dist/{chunk-KPTKX226.js → chunk-6H6EFHDS.js} +4 -4
- package/dist/{chunk-ZCRVHITI.js → chunk-7GITFGA4.js} +4 -4
- package/dist/{chunk-WIUPOQNS.js → chunk-D5Y73ITZ.js} +2 -2
- package/dist/{chunk-2SIUEMPV.js → chunk-FS5DXFRG.js} +4 -4
- package/dist/{chunk-74QYNLJE.js → chunk-G3LPD43A.js} +3 -3
- package/dist/{chunk-J3JMMJLN.js → chunk-IDMSU2X4.js} +6 -6
- package/dist/{chunk-KRASHQRB.js → chunk-IXU23PP5.js} +3 -3
- package/dist/{chunk-LIW6K4OJ.js → chunk-JDTTJDGP.js} +2 -2
- package/dist/{chunk-3R57ETXQ.js → chunk-LSY4GYJ2.js} +2 -2
- package/dist/{chunk-DQZJULNP.js → chunk-POTFZJYN.js} +4 -4
- package/dist/{chunk-I7NYU4JB.js → chunk-RYKETWBU.js} +5 -3
- package/dist/{chunk-5XMQQ4LX.js → chunk-V6XUXLJF.js} +4 -4
- package/dist/{chunk-XQHRKFFH.js → chunk-WJWLM5QE.js} +6 -6
- package/dist/{chunk-QUAVAJWE.js → chunk-XJR2YQK3.js} +1 -15
- package/dist/chunk-XJR2YQK3.js.map +1 -0
- package/dist/{client-3BFK7TNL.js → client-4CKVYBRP.js} +4 -4
- package/dist/{config-UZ2GIXAO.js → config-WIHIVOGZ.js} +2 -6
- package/dist/{eas-YTAAJSLU.js → eas-JOU76WZ2.js} +6 -6
- package/dist/{governor-53PNPDCZ.js → governor-4XHJ52H4.js} +6 -6
- package/dist/{identity-M6UIVBNX.js → identity-3BLNFZ42.js} +7 -7
- package/dist/index.js +41 -47
- package/dist/index.js.map +1 -1
- package/dist/{launchpad-LHMBN4TV.js → launchpad-ZVC7Z5JJ.js} +8 -6
- package/dist/{lighter-preflight-R7C6HY3M.js → lighter-preflight-ERF425PP.js} +6 -6
- package/dist/{network-EZ5X2BF7.js → network-XQLQ4MSH.js} +3 -3
- package/dist/{price-PBFF6NFU.js → price-4QVQAIHX.js} +6 -6
- package/dist/{providers-22A42FKP.js → providers-P27BDYZ2.js} +5 -5
- package/dist/{research-ZH34O7YL.js → research-N2R76ELJ.js} +9 -9
- package/dist/{session-GSWEE4M3.js → session-ZIJYGOAT.js} +11 -11
- package/dist/{trade-SHK7GKSI.js → trade-2J555BS7.js} +17 -17
- package/dist/{vault-3T6UHCPE.js → vault-WC7AS7SM.js} +8 -8
- package/dist/{xmtp-EOMKXRTB.js → xmtp-NJXD7T7E.js} +6 -6
- package/package.json +1 -2
- package/dist/agent-QU2OSWS4.js.map +0 -1
- package/dist/chunk-KXUA5BEH.js.map +0 -1
- package/dist/chunk-QUAVAJWE.js.map +0 -1
- /package/dist/{chat-PFXIL6WT.js.map → chat-HS7OIE2Y.js.map} +0 -0
- /package/dist/{chunk-KPTKX226.js.map → chunk-6H6EFHDS.js.map} +0 -0
- /package/dist/{chunk-ZCRVHITI.js.map → chunk-7GITFGA4.js.map} +0 -0
- /package/dist/{chunk-WIUPOQNS.js.map → chunk-D5Y73ITZ.js.map} +0 -0
- /package/dist/{chunk-2SIUEMPV.js.map → chunk-FS5DXFRG.js.map} +0 -0
- /package/dist/{chunk-74QYNLJE.js.map → chunk-G3LPD43A.js.map} +0 -0
- /package/dist/{chunk-J3JMMJLN.js.map → chunk-IDMSU2X4.js.map} +0 -0
- /package/dist/{chunk-KRASHQRB.js.map → chunk-IXU23PP5.js.map} +0 -0
- /package/dist/{chunk-LIW6K4OJ.js.map → chunk-JDTTJDGP.js.map} +0 -0
- /package/dist/{chunk-3R57ETXQ.js.map → chunk-LSY4GYJ2.js.map} +0 -0
- /package/dist/{chunk-DQZJULNP.js.map → chunk-POTFZJYN.js.map} +0 -0
- /package/dist/{chunk-I7NYU4JB.js.map → chunk-RYKETWBU.js.map} +0 -0
- /package/dist/{chunk-5XMQQ4LX.js.map → chunk-V6XUXLJF.js.map} +0 -0
- /package/dist/{chunk-XQHRKFFH.js.map → chunk-WJWLM5QE.js.map} +0 -0
- /package/dist/{client-3BFK7TNL.js.map → client-4CKVYBRP.js.map} +0 -0
- /package/dist/{config-UZ2GIXAO.js.map → config-WIHIVOGZ.js.map} +0 -0
- /package/dist/{eas-YTAAJSLU.js.map → eas-JOU76WZ2.js.map} +0 -0
- /package/dist/{governor-53PNPDCZ.js.map → governor-4XHJ52H4.js.map} +0 -0
- /package/dist/{identity-M6UIVBNX.js.map → identity-3BLNFZ42.js.map} +0 -0
- /package/dist/{launchpad-LHMBN4TV.js.map → launchpad-ZVC7Z5JJ.js.map} +0 -0
- /package/dist/{lighter-preflight-R7C6HY3M.js.map → lighter-preflight-ERF425PP.js.map} +0 -0
- /package/dist/{network-EZ5X2BF7.js.map → network-XQLQ4MSH.js.map} +0 -0
- /package/dist/{price-PBFF6NFU.js.map → price-4QVQAIHX.js.map} +0 -0
- /package/dist/{providers-22A42FKP.js.map → providers-P27BDYZ2.js.map} +0 -0
- /package/dist/{research-ZH34O7YL.js.map → research-N2R76ELJ.js.map} +0 -0
- /package/dist/{session-GSWEE4M3.js.map → session-ZIJYGOAT.js.map} +0 -0
- /package/dist/{trade-SHK7GKSI.js.map → trade-2J555BS7.js.map} +0 -0
- /package/dist/{vault-3T6UHCPE.js.map → vault-WC7AS7SM.js.map} +0 -0
- /package/dist/{xmtp-EOMKXRTB.js.map → xmtp-NJXD7T7E.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/lib/config.ts","../src/lib/settings.ts"],"sourcesContent":["/**\n * Local config management — ~/.sherwood/config.json\n *\n * Stores group ID cache, per-chain contract addresses, and wallet config.\n */\n\nimport fs from \"node:fs\";\nimport os from \"node:os\";\nimport path from \"node:path\";\nimport { privateKeyToAccount } from \"viem/accounts\";\nimport { resolveSetting } from \"./settings.js\";\n\nconst CONFIG_DIR = path.join(os.homedir(), \".sherwood\");\nconst CONFIG_PATH = path.join(CONFIG_DIR, \"config.json\");\nconst DASHBOARD_BRIDGE_PATH = path.join(CONFIG_DIR, \"dashboard.json\");\n\n/** Per-chain user-specific addresses (stored by chainId). */\nexport interface ChainContracts {\n vault?: string; // user's default vault address\n}\n\n/** A fund the agent belongs to (creator or member). */\nexport interface FundMembership {\n subdomain: string;\n vault: string;\n role: \"creator\" | \"agent\";\n}\n\nexport interface SherwoodConfig {\n dbEncryptionKey?: string; // legacy — no longer used, XMTP CLI manages its own DB\n privateKey?: string; // wallet private key (0x-prefixed)\n xmtpInboxId?: string;\n groupCache: Record<string, string>; // subdomain → XMTP group ID\n veniceApiKey?: string; // Venice AI inference API key\n agentId?: number; // ERC-8004 identity token ID\n identityProvider?: \"agent0\" | \"virtuals\"; // who issued the identity (absent ⇒ agent0)\n identityChainId?: number; // chain the ERC-8004 NFT lives on (absent ⇒ active chain)\n virtuals?: VirtualsIdentity; // economyOS link details (identityProvider === \"virtuals\")\n contracts?: Record<string, ChainContracts>; // chainId → user addresses\n funds?: Record<string, FundMembership[]>; // chainId → fund memberships\n primaryFund?: Record<string, string>; // chainId → subdomain of the active fund\n rpc?: Record<string, string>; // network name → custom RPC URL\n notifyTo?: string; // destination for cron summaries (Telegram chat ID, phone, etc.)\n uniswapApiKey?: string; // Uniswap Trading API key (from developers.uniswap.org)\n positions?: unknown[]; // open trade positions (typed in positions.ts)\n closedPositions?: unknown[]; // historical closed positions\n _xmtpMigrated?: boolean; // one-time flag: revoked stale installations from ~/.xmtp/ era\n /** Cached swap routes per chain: chainId → { tokenPair → SwapRoute } */\n swapRoutes?: Record<string, Record<string, SwapRoute>>;\n // ── lighter ──\n /** Lighter L2 agent key from `sherwood lighter keygen` (see LighterKeyConfig). */\n lighter?: LighterKeyConfig;\n}\n\n/** Linked Virtuals economyOS identity (see lib/virtuals.ts). */\nexport interface VirtualsIdentity {\n agentId?: string; // Virtuals platform agent ID (opaque, e.g. \"abc-123\")\n wallet: string; // economyOS agent wallet (identity holder)\n binding?: {\n sig: string; // EIP-191 signature by the economyOS wallet\n message: string; // the exact signed binding message\n };\n}\n\n/** Persisted swap route detected by the CLI during portfolio strategy proposal. */\nexport interface SwapRoute {\n mode: \"direct\" | \"multi-hop\";\n feeTier: number; // direct pool fee tier\n hop?: { via: string; feeIn: number; feeOut: number }; // multi-hop details\n detectedAt: number; // unix timestamp\n}\n\nexport function loadConfig(): SherwoodConfig {\n if (fs.existsSync(CONFIG_PATH)) {\n const config = JSON.parse(fs.readFileSync(CONFIG_PATH, \"utf-8\"));\n if (!config.groupCache) config.groupCache = {};\n return config;\n }\n\n return { groupCache: {} };\n}\n\nexport function saveConfig(config: SherwoodConfig): void {\n fs.mkdirSync(CONFIG_DIR, { recursive: true, mode: 0o700 });\n fs.writeFileSync(CONFIG_PATH, JSON.stringify(config, null, 2), { mode: 0o600 });\n writeDashboardBridge(config);\n}\n\n/**\n * Public-safe derivation of config.json for Hermes dashboard plugins to read.\n * Excludes privateKey + every other sensitive field. Hermes' sherwood-companion\n * plugin reads ~/.sherwood/dashboard.json to auto-detect the operator's\n * primary fund without prompting.\n *\n * Wrapped in try/catch — bridge-write failure must not break a config save.\n */\nfunction writeDashboardBridge(config: SherwoodConfig): void {\n try {\n let agentWallet: string | null = null;\n if (config.privateKey) {\n const key = config.privateKey.startsWith(\"0x\")\n ? (config.privateKey as `0x${string}`)\n : (`0x${config.privateKey}` as `0x${string}`);\n agentWallet = privateKeyToAccount(key).address;\n }\n const bridge = {\n version: 1,\n agentWallet,\n funds: config.funds ?? {},\n primaryFund: config.primaryFund ?? {},\n };\n fs.writeFileSync(\n DASHBOARD_BRIDGE_PATH,\n JSON.stringify(bridge, null, 2),\n { mode: 0o600 },\n );\n } catch {\n // Non-fatal: plugin will fall back to manual subdomain entry.\n }\n}\n\nexport function cacheGroupId(subdomain: string, groupId: string): void {\n const config = loadConfig();\n config.groupCache[subdomain] = groupId;\n saveConfig(config);\n}\n\nexport function getCachedGroupId(subdomain: string): string | undefined {\n const config = loadConfig();\n return config.groupCache[subdomain];\n}\n\nexport function invalidateCachedGroupId(subdomain: string): void {\n const config = loadConfig();\n if (config.groupCache[subdomain]) {\n delete config.groupCache[subdomain];\n saveConfig(config);\n }\n}\n\nexport function setVeniceApiKey(apiKey: string): void {\n const config = loadConfig();\n config.veniceApiKey = apiKey;\n saveConfig(config);\n}\n\nexport function getVeniceApiKey(): string | undefined {\n return resolveSetting(\"veniceApiKey\", loadConfig(), process.env);\n}\n\n/**\n * Bind an agent0-minted (or loaded) identity. Clears any previously linked\n * Virtuals state — otherwise `fund join` would emit a vid tag mixing the new\n * agent0 token with the stale economyOS wallet/binding (renders ✘ to\n * creators) and `identity status` would misreport the provider.\n */\nexport function setAgentId(agentId: number): void {\n const config = loadConfig();\n config.agentId = agentId;\n delete config.identityProvider;\n delete config.identityChainId;\n delete config.virtuals;\n saveConfig(config);\n}\n\n/**\n * Persist a linked Virtuals economyOS identity. Sets the ERC-8004 token ID\n * as the active agentId and stamps provider + issuing chain alongside it.\n */\nexport function setVirtualsIdentity(\n tokenId: number,\n issuingChainId: number,\n identity: VirtualsIdentity,\n): void {\n const config = loadConfig();\n config.agentId = tokenId;\n config.identityProvider = \"virtuals\";\n config.identityChainId = issuingChainId;\n config.virtuals = identity;\n saveConfig(config);\n}\n\nexport function getVirtualsIdentity(): VirtualsIdentity | undefined {\n return loadConfig().virtuals;\n}\n\n/** Identity provider for the saved agentId. Absent field ⇒ legacy agent0 mint. */\nexport function getIdentityProvider(): \"agent0\" | \"virtuals\" {\n return loadConfig().identityProvider ?? \"agent0\";\n}\n\nexport function getIdentityChainId(): number | undefined {\n return loadConfig().identityChainId;\n}\n\nexport function getAgentId(): number | undefined {\n return loadConfig().agentId;\n}\n\nexport function setPrivateKey(key: string): void {\n const config = loadConfig();\n config.privateKey = key.startsWith(\"0x\") ? key : `0x${key}`;\n saveConfig(config);\n}\n\n/**\n * Resolve the signing key (config → PRIVATE_KEY env, 0x-normalized) or\n * throw with the canonical setup hint. Every path that signs or derives\n * identity from the key (viem clients, Agent0 SDK, XMTP) must use this,\n * so they can never resolve different keys.\n */\nexport function requirePrivateKey(): `0x${string}` {\n const key = resolveSetting(\"privateKey\", loadConfig(), process.env);\n if (!key) {\n throw new Error(\n \"Private key not found. Run 'sherwood config set --private-key <key>' or set PRIVATE_KEY env var.\",\n );\n }\n return key as `0x${string}`;\n}\n\n// ── Uniswap Trading API Key ──\n\nexport function setUniswapApiKey(apiKey: string): void {\n const config = loadConfig();\n config.uniswapApiKey = apiKey;\n saveConfig(config);\n}\n\nexport function getUniswapApiKey(): string | undefined {\n return resolveSetting(\"uniswapApiKey\", loadConfig(), process.env);\n}\n\n// ── Per-network RPC URLs ──\n\nexport function getConfigRpcUrl(network: string): string | undefined {\n return loadConfig().rpc?.[network];\n}\n\nexport function setConfigRpcUrl(network: string, url: string): void {\n const config = loadConfig();\n if (!config.rpc) config.rpc = {};\n config.rpc[network] = url;\n saveConfig(config);\n}\n\n// ── Per-chain contract addresses ──\n\nexport function getChainContracts(chainId: number): ChainContracts {\n const config = loadConfig();\n return config.contracts?.[String(chainId)] ?? {};\n}\n\nexport function getNotifyTo(): string | undefined {\n return loadConfig().notifyTo;\n}\n\nexport function setNotifyTo(id: string): void {\n const config = loadConfig();\n config.notifyTo = id;\n saveConfig(config);\n}\n\nexport function setChainContract(\n chainId: number,\n key: keyof ChainContracts,\n value: string,\n): void {\n const config = loadConfig();\n if (!config.contracts) config.contracts = {};\n const cid = String(chainId);\n if (!config.contracts[cid]) config.contracts[cid] = {};\n config.contracts[cid][key] = value;\n saveConfig(config);\n}\n\n// ── Fund Membership ──\n\n/**\n * Add (or update) a fund membership. Deduplicates by subdomain.\n * Automatically sets it as primary if it's the first fund on this chain.\n */\nexport function addFund(\n chainId: number,\n membership: FundMembership,\n): void {\n const config = loadConfig();\n const cid = String(chainId);\n if (!config.funds) config.funds = {};\n if (!config.funds[cid]) config.funds[cid] = [];\n\n // Upsert — replace existing entry with same subdomain\n const idx = config.funds[cid].findIndex(\n (s) => s.subdomain === membership.subdomain,\n );\n if (idx >= 0) {\n config.funds[cid][idx] = membership;\n } else {\n config.funds[cid].push(membership);\n }\n\n // Auto-set as primary if it's the first fund (or no primary set)\n if (!config.primaryFund) config.primaryFund = {};\n if (!config.primaryFund[cid]) {\n config.primaryFund[cid] = membership.subdomain;\n }\n\n saveConfig(config);\n}\n\n/** Get all fund memberships for a chain. */\nexport function getFunds(chainId: number): FundMembership[] {\n const config = loadConfig();\n return config.funds?.[String(chainId)] ?? [];\n}\n\n/** Set which fund is the active/primary one for CLI commands. */\nexport function setPrimaryFund(\n chainId: number,\n subdomain: string,\n): void {\n const config = loadConfig();\n if (!config.primaryFund) config.primaryFund = {};\n config.primaryFund[String(chainId)] = subdomain;\n saveConfig(config);\n}\n\n/**\n * Get the primary fund for this chain.\n * Falls back to ChainContracts.vault for backwards compat with older configs.\n */\nexport function getPrimaryFund(\n chainId: number,\n): FundMembership | undefined {\n const config = loadConfig();\n const cid = String(chainId);\n\n // Check new funds store first\n const primarySubdomain = config.primaryFund?.[cid];\n if (primarySubdomain && config.funds?.[cid]) {\n const found = config.funds[cid].find(\n (s) => s.subdomain === primarySubdomain,\n );\n if (found) return found;\n }\n\n // Backwards compat: if funds list has entries but no primary, use the first one\n if (config.funds?.[cid]?.length) {\n return config.funds[cid][0];\n }\n\n // Legacy fallback: config only has a vault address, no subdomain\n const vault = config.contracts?.[cid]?.vault;\n if (vault) {\n return { subdomain: \"\", vault, role: \"creator\" };\n }\n\n return undefined;\n}\n\n// ── Swap Route Cache ──\n\nfunction swapRouteKey(asset: string, token: string): string {\n return `${asset.toLowerCase()}→${token.toLowerCase()}`;\n}\n\n/** Get a cached swap route for a token pair on a chain. */\nexport function getCachedSwapRoute(chainId: number, asset: string, token: string): SwapRoute | undefined {\n const config = loadConfig();\n return config.swapRoutes?.[String(chainId)]?.[swapRouteKey(asset, token)];\n}\n\n/** Save a detected swap route to the config cache. */\nexport function cacheSwapRoute(chainId: number, asset: string, token: string, route: SwapRoute): void {\n const config = loadConfig();\n const cid = String(chainId);\n if (!config.swapRoutes) config.swapRoutes = {};\n if (!config.swapRoutes[cid]) config.swapRoutes[cid] = {};\n config.swapRoutes[cid][swapRouteKey(asset, token)] = route;\n saveConfig(config);\n}\n\n/** Clear all cached swap routes for a chain (e.g. after pool migration). */\nexport function clearSwapRoutes(chainId: number): void {\n const config = loadConfig();\n delete config.swapRoutes?.[String(chainId)];\n saveConfig(config);\n}\n\n// ── lighter ──\n//\n// The Lighter L2 agent key `sherwood lighter keygen` generates. The pubkey goes\n// into a lighter-perp proposal's init data (`--pubkey` defaults to it); the\n// private key is the off-chain agent's TRADE-ONLY secret — it can place and\n// cancel orders on the strategy's account but can never withdraw (withdrawals\n// are venue-authed to the strategy contract). Kept in the 0600 config file.\n\nexport interface LighterKeyConfig {\n pubKey: string; // 40-byte Goldilocks pubkey, 0x-hex\n privateKey: string; // L2 API private key, 0x-hex\n apiKeyIndex: number; // 2..254\n createdAt: string; // ISO timestamp\n}\n\nexport function getLighterKeyConfig(): LighterKeyConfig | undefined {\n return loadConfig().lighter;\n}\n\n/**\n * Saves the L2 PRIVATE key, so it also forces config.json to 0600: saveConfig's\n * `mode` only applies when the file is created, and an existing config may be\n * 0644 (older CLIs, a hand-edit, a restore).\n */\nexport function setLighterKeyConfig(key: LighterKeyConfig): void {\n const config = loadConfig();\n config.lighter = key;\n saveConfig(config);\n fs.chmodSync(CONFIG_PATH, 0o600);\n}\n// ── /lighter ──\n","/**\n * Single owner of config → env resolution for user settings. Every\n * config-or-env setting resolves through the table below — accessors in\n * config.ts and requirePrivateKey() delegate here.\n */\n\nimport { type SherwoodConfig } from \"./config.js\";\n\ntype Env = Record<string, string | undefined>;\n\nconst hex0x = (v: string): string => (v.startsWith(\"0x\") ? v : `0x${v}`);\n\ninterface SettingSpec {\n fromConfig: (c: Partial<SherwoodConfig>) => string | undefined;\n envVar?: string;\n normalize?: (v: string) => string;\n}\n\nconst SETTINGS = {\n privateKey: {\n fromConfig: (c) => c.privateKey,\n envVar: \"PRIVATE_KEY\",\n normalize: hex0x,\n },\n veniceApiKey: {\n fromConfig: (c) => c.veniceApiKey,\n envVar: \"VENICE_API_KEY\",\n },\n uniswapApiKey: {\n fromConfig: (c) => c.uniswapApiKey,\n envVar: \"UNISWAP_API_KEY\",\n },\n} satisfies Record<string, SettingSpec>;\n\nexport type SettingKey = keyof typeof SETTINGS;\n\nexport function resolveSetting(\n key: SettingKey,\n config: Partial<SherwoodConfig>,\n env: Env,\n): string | undefined {\n const spec: SettingSpec = SETTINGS[key];\n // Empty string counts as absent on both sources: an empty config key\n // falls through to the env, and a blank `PRIVATE_KEY=` dotenv line\n // resolves to undefined (so callers show the setup hint) instead of\n // normalizing to a bare \"0x\".\n const raw =\n spec.fromConfig(config) || (spec.envVar ? env[spec.envVar] : undefined);\n if (!raw) return undefined;\n return spec.normalize ? spec.normalize(raw) : raw;\n}\n"],"mappings":"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","names":[]}
|
|
@@ -12,9 +12,9 @@ import {
|
|
|
12
12
|
unstickWallet,
|
|
13
13
|
waitForReceipt,
|
|
14
14
|
writeContractWithRetry
|
|
15
|
-
} from "./chunk-
|
|
16
|
-
import "./chunk-
|
|
17
|
-
import "./chunk-
|
|
15
|
+
} from "./chunk-RYKETWBU.js";
|
|
16
|
+
import "./chunk-JDTTJDGP.js";
|
|
17
|
+
import "./chunk-XJR2YQK3.js";
|
|
18
18
|
export {
|
|
19
19
|
GAS_UNITS,
|
|
20
20
|
detectStuckNonce,
|
|
@@ -30,4 +30,4 @@ export {
|
|
|
30
30
|
waitForReceipt,
|
|
31
31
|
writeContractWithRetry
|
|
32
32
|
};
|
|
33
|
-
//# sourceMappingURL=client-
|
|
33
|
+
//# sourceMappingURL=client-4CKVYBRP.js.map
|
|
@@ -4,7 +4,6 @@ import {
|
|
|
4
4
|
cacheSwapRoute,
|
|
5
5
|
clearSwapRoutes,
|
|
6
6
|
getAgentId,
|
|
7
|
-
getAnthropicApiKey,
|
|
8
7
|
getCachedGroupId,
|
|
9
8
|
getCachedSwapRoute,
|
|
10
9
|
getChainContracts,
|
|
@@ -23,7 +22,6 @@ import {
|
|
|
23
22
|
requirePrivateKey,
|
|
24
23
|
saveConfig,
|
|
25
24
|
setAgentId,
|
|
26
|
-
setAnthropicApiKey,
|
|
27
25
|
setChainContract,
|
|
28
26
|
setConfigRpcUrl,
|
|
29
27
|
setLighterKeyConfig,
|
|
@@ -33,14 +31,13 @@ import {
|
|
|
33
31
|
setUniswapApiKey,
|
|
34
32
|
setVeniceApiKey,
|
|
35
33
|
setVirtualsIdentity
|
|
36
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-XJR2YQK3.js";
|
|
37
35
|
export {
|
|
38
36
|
addFund,
|
|
39
37
|
cacheGroupId,
|
|
40
38
|
cacheSwapRoute,
|
|
41
39
|
clearSwapRoutes,
|
|
42
40
|
getAgentId,
|
|
43
|
-
getAnthropicApiKey,
|
|
44
41
|
getCachedGroupId,
|
|
45
42
|
getCachedSwapRoute,
|
|
46
43
|
getChainContracts,
|
|
@@ -59,7 +56,6 @@ export {
|
|
|
59
56
|
requirePrivateKey,
|
|
60
57
|
saveConfig,
|
|
61
58
|
setAgentId,
|
|
62
|
-
setAnthropicApiKey,
|
|
63
59
|
setChainContract,
|
|
64
60
|
setConfigRpcUrl,
|
|
65
61
|
setLighterKeyConfig,
|
|
@@ -70,4 +66,4 @@ export {
|
|
|
70
66
|
setVeniceApiKey,
|
|
71
67
|
setVirtualsIdentity
|
|
72
68
|
};
|
|
73
|
-
//# sourceMappingURL=config-
|
|
69
|
+
//# sourceMappingURL=config-WIHIVOGZ.js.map
|
|
@@ -23,11 +23,11 @@ import {
|
|
|
23
23
|
revokeAttestation,
|
|
24
24
|
revokeJoinRequest,
|
|
25
25
|
stripReferrerPrefix
|
|
26
|
-
} from "./chunk-
|
|
27
|
-
import "./chunk-
|
|
28
|
-
import "./chunk-
|
|
29
|
-
import "./chunk-
|
|
30
|
-
import "./chunk-
|
|
26
|
+
} from "./chunk-FS5DXFRG.js";
|
|
27
|
+
import "./chunk-LSY4GYJ2.js";
|
|
28
|
+
import "./chunk-RYKETWBU.js";
|
|
29
|
+
import "./chunk-JDTTJDGP.js";
|
|
30
|
+
import "./chunk-XJR2YQK3.js";
|
|
31
31
|
import "./chunk-SCWNKVNW.js";
|
|
32
32
|
export {
|
|
33
33
|
COORDINATION_NETWORK,
|
|
@@ -55,4 +55,4 @@ export {
|
|
|
55
55
|
revokeJoinRequest,
|
|
56
56
|
stripReferrerPrefix
|
|
57
57
|
};
|
|
58
|
-
//# sourceMappingURL=eas-
|
|
58
|
+
//# sourceMappingURL=eas-JOU76WZ2.js.map
|
|
@@ -41,11 +41,11 @@ import {
|
|
|
41
41
|
settleProposal,
|
|
42
42
|
vetoProposal,
|
|
43
43
|
vote
|
|
44
|
-
} from "./chunk-
|
|
45
|
-
import "./chunk-
|
|
46
|
-
import "./chunk-
|
|
47
|
-
import "./chunk-
|
|
48
|
-
import "./chunk-
|
|
44
|
+
} from "./chunk-V6XUXLJF.js";
|
|
45
|
+
import "./chunk-LSY4GYJ2.js";
|
|
46
|
+
import "./chunk-RYKETWBU.js";
|
|
47
|
+
import "./chunk-JDTTJDGP.js";
|
|
48
|
+
import "./chunk-XJR2YQK3.js";
|
|
49
49
|
import "./chunk-SCWNKVNW.js";
|
|
50
50
|
export {
|
|
51
51
|
PROPOSAL_STATE,
|
|
@@ -91,4 +91,4 @@ export {
|
|
|
91
91
|
vetoProposal,
|
|
92
92
|
vote
|
|
93
93
|
};
|
|
94
|
-
//# sourceMappingURL=governor-
|
|
94
|
+
//# sourceMappingURL=governor-4XHJ52H4.js.map
|
|
@@ -2,13 +2,13 @@ import {
|
|
|
2
2
|
lookupAgentIdByWallet,
|
|
3
3
|
lookupAgentIdsByWallet,
|
|
4
4
|
registerIdentityCommands
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-WJWLM5QE.js";
|
|
6
6
|
import "./chunk-GAQMHH44.js";
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-FS5DXFRG.js";
|
|
8
|
+
import "./chunk-LSY4GYJ2.js";
|
|
9
|
+
import "./chunk-RYKETWBU.js";
|
|
10
|
+
import "./chunk-JDTTJDGP.js";
|
|
11
|
+
import "./chunk-XJR2YQK3.js";
|
|
12
12
|
import "./chunk-SCWNKVNW.js";
|
|
13
13
|
import "./chunk-YMB4RJOR.js";
|
|
14
14
|
export {
|
|
@@ -16,4 +16,4 @@ export {
|
|
|
16
16
|
lookupAgentIdsByWallet,
|
|
17
17
|
registerIdentityCommands
|
|
18
18
|
};
|
|
19
|
-
//# sourceMappingURL=identity-
|
|
19
|
+
//# sourceMappingURL=identity-3BLNFZ42.js.map
|
package/dist/index.js
CHANGED
|
@@ -15,17 +15,17 @@ import {
|
|
|
15
15
|
checkApiKeyValid,
|
|
16
16
|
listModels,
|
|
17
17
|
provisionApiKey
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-G3LPD43A.js";
|
|
19
19
|
import {
|
|
20
20
|
createFund,
|
|
21
21
|
getActiveFunds,
|
|
22
22
|
getFund,
|
|
23
23
|
subdomainExists,
|
|
24
24
|
updateMetadata
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-POTFZJYN.js";
|
|
26
26
|
import {
|
|
27
27
|
addLaunchpadTemplateOptions
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-5G4SESMO.js";
|
|
29
29
|
import {
|
|
30
30
|
FORK_UNOBSERVABLE_REASON,
|
|
31
31
|
LIGHTER_API_PROFILES,
|
|
@@ -57,8 +57,8 @@ import {
|
|
|
57
57
|
removeDepositor,
|
|
58
58
|
setAgentFeeBps,
|
|
59
59
|
setVaultAddress
|
|
60
|
-
} from "./chunk-
|
|
61
|
-
import "./chunk-
|
|
60
|
+
} from "./chunk-IDMSU2X4.js";
|
|
61
|
+
import "./chunk-IXU23PP5.js";
|
|
62
62
|
import {
|
|
63
63
|
CL_DEFAULTS,
|
|
64
64
|
DEFAULT_FEE_TIER,
|
|
@@ -92,7 +92,7 @@ import {
|
|
|
92
92
|
selectBestFeeTier,
|
|
93
93
|
twapTickFromCumulatives,
|
|
94
94
|
v3SingleHopExtraData
|
|
95
|
-
} from "./chunk-
|
|
95
|
+
} from "./chunk-7GITFGA4.js";
|
|
96
96
|
import {
|
|
97
97
|
CLAIM_SETTLE_BUFFER_SECONDS,
|
|
98
98
|
DEFAULT_DEADLINE_MARGIN_SECONDS,
|
|
@@ -142,7 +142,7 @@ import {
|
|
|
142
142
|
registerIdentityCommands,
|
|
143
143
|
stripVidTag,
|
|
144
144
|
verifyVidTag
|
|
145
|
-
} from "./chunk-
|
|
145
|
+
} from "./chunk-WJWLM5QE.js";
|
|
146
146
|
import {
|
|
147
147
|
emitCalldata,
|
|
148
148
|
isCalldataOnly,
|
|
@@ -157,13 +157,13 @@ import {
|
|
|
157
157
|
queryJoinRequests,
|
|
158
158
|
revokeJoinRequest,
|
|
159
159
|
stripReferrerPrefix
|
|
160
|
-
} from "./chunk-
|
|
160
|
+
} from "./chunk-FS5DXFRG.js";
|
|
161
161
|
import {
|
|
162
162
|
resolveFund,
|
|
163
163
|
resolveVaultFund,
|
|
164
164
|
searchFundAcrossChains,
|
|
165
165
|
setTextRecord
|
|
166
|
-
} from "./chunk-
|
|
166
|
+
} from "./chunk-6H6EFHDS.js";
|
|
167
167
|
import {
|
|
168
168
|
PROPOSAL_STATE,
|
|
169
169
|
PROPOSAL_STATES,
|
|
@@ -202,7 +202,7 @@ import {
|
|
|
202
202
|
setVotingPeriod,
|
|
203
203
|
settleProposal,
|
|
204
204
|
vote
|
|
205
|
-
} from "./chunk-
|
|
205
|
+
} from "./chunk-V6XUXLJF.js";
|
|
206
206
|
import {
|
|
207
207
|
AERODROME,
|
|
208
208
|
LAUNCH_ADAPTERS,
|
|
@@ -212,7 +212,7 @@ import {
|
|
|
212
212
|
TOKENS,
|
|
213
213
|
UNISWAP,
|
|
214
214
|
VENICE
|
|
215
|
-
} from "./chunk-
|
|
215
|
+
} from "./chunk-LSY4GYJ2.js";
|
|
216
216
|
import {
|
|
217
217
|
GAS_UNITS,
|
|
218
218
|
estimateGasCushion,
|
|
@@ -223,7 +223,7 @@ import {
|
|
|
223
223
|
sendTxWithRetry,
|
|
224
224
|
waitForReceipt,
|
|
225
225
|
writeContractWithRetry
|
|
226
|
-
} from "./chunk-
|
|
226
|
+
} from "./chunk-RYKETWBU.js";
|
|
227
227
|
import {
|
|
228
228
|
DEFAULT_NETWORK,
|
|
229
229
|
VALID_NETWORKS,
|
|
@@ -233,7 +233,7 @@ import {
|
|
|
233
233
|
isTestnet,
|
|
234
234
|
setNetwork,
|
|
235
235
|
withNetwork
|
|
236
|
-
} from "./chunk-
|
|
236
|
+
} from "./chunk-JDTTJDGP.js";
|
|
237
237
|
import {
|
|
238
238
|
addFund,
|
|
239
239
|
cacheGroupId,
|
|
@@ -250,7 +250,6 @@ import {
|
|
|
250
250
|
getVeniceApiKey,
|
|
251
251
|
getVirtualsIdentity,
|
|
252
252
|
loadConfig,
|
|
253
|
-
setAnthropicApiKey,
|
|
254
253
|
setChainContract,
|
|
255
254
|
setConfigRpcUrl,
|
|
256
255
|
setLighterKeyConfig,
|
|
@@ -259,7 +258,7 @@ import {
|
|
|
259
258
|
setPrivateKey,
|
|
260
259
|
setUniswapApiKey,
|
|
261
260
|
setVeniceApiKey
|
|
262
|
-
} from "./chunk-
|
|
261
|
+
} from "./chunk-XJR2YQK3.js";
|
|
263
262
|
import {
|
|
264
263
|
LIGHTER_DEFAULT_API_KEY_INDEX,
|
|
265
264
|
LIGHTER_MAX_DEPOSIT,
|
|
@@ -1776,7 +1775,7 @@ async function resolveChainInputsForTemplate(templateKey, opts, deps = {}) {
|
|
|
1776
1775
|
}
|
|
1777
1776
|
if (templateKey === "lighter-perp") {
|
|
1778
1777
|
if (opts.pubkey) return {};
|
|
1779
|
-
const { getLighterKeyConfig: getLighterKeyConfig2 } = await import("./config-
|
|
1778
|
+
const { getLighterKeyConfig: getLighterKeyConfig2 } = await import("./config-WIHIVOGZ.js");
|
|
1780
1779
|
const saved = getLighterKeyConfig2();
|
|
1781
1780
|
return saved ? { lighterSavedKey: { pubKey: saved.pubKey, apiKeyIndex: saved.apiKeyIndex } } : {};
|
|
1782
1781
|
}
|
|
@@ -2035,7 +2034,7 @@ function registerStrategyProposeCommands(strategy2) {
|
|
|
2035
2034
|
}
|
|
2036
2035
|
}
|
|
2037
2036
|
if (templateKey === "lighter-perp") {
|
|
2038
|
-
const { runLighterProposePreflight } = await import("./lighter-preflight-
|
|
2037
|
+
const { runLighterProposePreflight } = await import("./lighter-preflight-ERF425PP.js");
|
|
2039
2038
|
await runLighterProposePreflight(vault, opts, maxDrawdownBps);
|
|
2040
2039
|
}
|
|
2041
2040
|
} catch (err) {
|
|
@@ -2043,7 +2042,7 @@ function registerStrategyProposeCommands(strategy2) {
|
|
|
2043
2042
|
process.exit(1);
|
|
2044
2043
|
}
|
|
2045
2044
|
if (!opts.agent) opts.agent = proposer;
|
|
2046
|
-
const { parseDuration: parseDuration3, getGovernorOf: getGovernorOf2 } = await import("./governor-
|
|
2045
|
+
const { parseDuration: parseDuration3, getGovernorOf: getGovernorOf2 } = await import("./governor-4XHJ52H4.js");
|
|
2047
2046
|
const strategyDuration2 = parseDuration3(opts.duration);
|
|
2048
2047
|
const chainId = getChain().id;
|
|
2049
2048
|
try {
|
|
@@ -2172,7 +2171,7 @@ function registerStrategyProposeCommands(strategy2) {
|
|
|
2172
2171
|
}
|
|
2173
2172
|
}
|
|
2174
2173
|
if (templateKey === "lighter-perp") {
|
|
2175
|
-
const { runLighterProposePreflight } = await import("./lighter-preflight-
|
|
2174
|
+
const { runLighterProposePreflight } = await import("./lighter-preflight-ERF425PP.js");
|
|
2176
2175
|
await runLighterProposePreflight(vault, opts, maxDrawdownBps);
|
|
2177
2176
|
}
|
|
2178
2177
|
preflightSpinner.succeed("Preflight OK");
|
|
@@ -2289,9 +2288,9 @@ function registerStrategyProposeCommands(strategy2) {
|
|
|
2289
2288
|
console.error(chalk4.red("Missing --name or --duration. Use --write-calls to skip proposal submission."));
|
|
2290
2289
|
process.exit(1);
|
|
2291
2290
|
}
|
|
2292
|
-
const { propose: propose2 } = await import("./governor-
|
|
2291
|
+
const { propose: propose2 } = await import("./governor-4XHJ52H4.js");
|
|
2293
2292
|
const { pinJSON } = await import("./ipfs-M56BLMCW.js");
|
|
2294
|
-
const { parseDuration: parseDuration2 } = await import("./governor-
|
|
2293
|
+
const { parseDuration: parseDuration2 } = await import("./governor-4XHJ52H4.js");
|
|
2295
2294
|
const strategyDuration = parseDuration2(opts.duration);
|
|
2296
2295
|
const metaSpinner = ora2("Pinning metadata to IPFS...").start();
|
|
2297
2296
|
let metadataURI;
|
|
@@ -2323,7 +2322,7 @@ function registerStrategyProposeCommands(strategy2) {
|
|
|
2323
2322
|
metadataURI = `data:application/json;base64,${Buffer.from(inline).toString("base64")}`;
|
|
2324
2323
|
}
|
|
2325
2324
|
try {
|
|
2326
|
-
const { getAgentFeeBps: getAgentFeeBps2 } = await import("./vault-
|
|
2325
|
+
const { getAgentFeeBps: getAgentFeeBps2 } = await import("./vault-WC7AS7SM.js");
|
|
2327
2326
|
const feeBps = await getAgentFeeBps2(vault);
|
|
2328
2327
|
console.log(
|
|
2329
2328
|
chalk4.yellow(
|
|
@@ -2374,7 +2373,7 @@ function registerStrategyProposeCommands(strategy2) {
|
|
|
2374
2373
|
console.log(chalk4.yellow(` asset.approve(${clone}, <repaymentAmount>)`));
|
|
2375
2374
|
}
|
|
2376
2375
|
if (templateKey === "lighter-perp") {
|
|
2377
|
-
const { lighterNextSteps } = await import("./lighter-preflight-
|
|
2376
|
+
const { lighterNextSteps } = await import("./lighter-preflight-ERF425PP.js");
|
|
2378
2377
|
console.log();
|
|
2379
2378
|
for (const line of lighterNextSteps(clone)) console.log(chalk4.yellow(line));
|
|
2380
2379
|
}
|
|
@@ -2646,7 +2645,7 @@ function registerStrategyTemplateCommands(strategy2) {
|
|
|
2646
2645
|
let prices = [];
|
|
2647
2646
|
let priceSource = null;
|
|
2648
2647
|
try {
|
|
2649
|
-
const { getTokenPricesInAsset } = await import("./price-
|
|
2648
|
+
const { getTokenPricesInAsset } = await import("./price-4QVQAIHX.js");
|
|
2650
2649
|
prices = await getTokenPricesInAsset({
|
|
2651
2650
|
tokens: allocations.map((a, i) => ({
|
|
2652
2651
|
token: a.token,
|
|
@@ -3063,7 +3062,7 @@ function registerVeniceCommands(program2) {
|
|
|
3063
3062
|
console.log(chalk6.dim(` Key: ${apiKey.slice(0, 8)}...${apiKey.slice(-4)}`));
|
|
3064
3063
|
console.log(chalk6.dim(" Saved to ~/.sherwood/config.json"));
|
|
3065
3064
|
try {
|
|
3066
|
-
const { createVeniceProvisionAttestation, getEasScanUrl } = await import("./eas-
|
|
3065
|
+
const { createVeniceProvisionAttestation, getEasScanUrl } = await import("./eas-JOU76WZ2.js");
|
|
3067
3066
|
const attestation = await createVeniceProvisionAttestation(account.address);
|
|
3068
3067
|
if (attestation) {
|
|
3069
3068
|
console.log(chalk6.dim(` Attested: ${getEasScanUrl(attestation.uid)}`));
|
|
@@ -3419,10 +3418,10 @@ ${opts.prompt}`;
|
|
|
3419
3418
|
console.log(chalk6.dim(`Model: ${result.model} | Tokens: ${result.usage.promptTokens} in, ${result.usage.completionTokens} out, ${result.usage.totalTokens} total`));
|
|
3420
3419
|
}
|
|
3421
3420
|
try {
|
|
3422
|
-
const { createVeniceInferenceAttestation, getEasScanUrl } = await import("./eas-
|
|
3421
|
+
const { createVeniceInferenceAttestation, getEasScanUrl } = await import("./eas-JOU76WZ2.js");
|
|
3423
3422
|
const { keccak256: keccak2562, toHex, isAddress: isAddr } = await import("viem");
|
|
3424
|
-
const { getChainContracts: getChainContracts2 } = await import("./config-
|
|
3425
|
-
const { getChain: getActiveChain } = await import("./network-
|
|
3423
|
+
const { getChainContracts: getChainContracts2 } = await import("./config-WIHIVOGZ.js");
|
|
3424
|
+
const { getChain: getActiveChain } = await import("./network-XQLQ4MSH.js");
|
|
3426
3425
|
const vaultRecipient = opts.vault && isAddr(opts.vault) ? opts.vault : getChainContracts2(getActiveChain().id).vault;
|
|
3427
3426
|
const promptHash = keccak2562(toHex(userContent)).slice(0, 18);
|
|
3428
3427
|
const attestation = await createVeniceInferenceAttestation(
|
|
@@ -4418,8 +4417,8 @@ function printSimulationResult(result, callType) {
|
|
|
4418
4417
|
}
|
|
4419
4418
|
async function sendSimulationAlert(subdomain, proposalId, vault, execResult, settleResult) {
|
|
4420
4419
|
try {
|
|
4421
|
-
const xmtp = await import("./xmtp-
|
|
4422
|
-
const { getAccount: getAccount2 } = await import("./client-
|
|
4420
|
+
const xmtp = await import("./xmtp-NJXD7T7E.js");
|
|
4421
|
+
const { getAccount: getAccount2 } = await import("./client-4CKVYBRP.js");
|
|
4423
4422
|
const group = await xmtp.getGroup("", subdomain);
|
|
4424
4423
|
const allRisks = [...execResult.risks, ...settleResult?.risks ?? []];
|
|
4425
4424
|
const criticals = allRisks.filter((r) => r.level === "critical");
|
|
@@ -10177,9 +10176,9 @@ try {
|
|
|
10177
10176
|
} catch {
|
|
10178
10177
|
}
|
|
10179
10178
|
var require2 = createRequire(import.meta.url);
|
|
10180
|
-
var CLI_VERSION = "0.90.
|
|
10179
|
+
var CLI_VERSION = "0.90.2";
|
|
10181
10180
|
async function loadXmtp() {
|
|
10182
|
-
return import("./xmtp-
|
|
10181
|
+
return import("./xmtp-NJXD7T7E.js");
|
|
10183
10182
|
}
|
|
10184
10183
|
async function loadCron() {
|
|
10185
10184
|
return import("./cron-E3UAZF5B.js");
|
|
@@ -10856,7 +10855,7 @@ vaultCmd.command("add").description("Register an agent on a vault (creator only)
|
|
|
10856
10855
|
agentId = BigInt(opts.agentId);
|
|
10857
10856
|
} else {
|
|
10858
10857
|
spinner.text = "Looking up ERC-8004 identity from wallet...";
|
|
10859
|
-
const { lookupAgentIdByWallet } = await import("./identity-
|
|
10858
|
+
const { lookupAgentIdByWallet } = await import("./identity-3BLNFZ42.js");
|
|
10860
10859
|
const resolved = await lookupAgentIdByWallet(agentWallet);
|
|
10861
10860
|
if (resolved === null) {
|
|
10862
10861
|
spinner.fail("Agent wallet does not own an ERC-8004 identity NFT");
|
|
@@ -11559,7 +11558,7 @@ vaultCmd.command("redeem").description("Redeem vault shares for the underlying a
|
|
|
11559
11558
|
var strategy = program.command("strategy").description("Strategy templates \u2014 list, clone, propose");
|
|
11560
11559
|
registerStrategyTemplateCommands(strategy);
|
|
11561
11560
|
program.command("providers").description("List available providers (research + swap routing)").action(async () => {
|
|
11562
|
-
const { listProviders } = await import("./providers-
|
|
11561
|
+
const { listProviders } = await import("./providers-P27BDYZ2.js");
|
|
11563
11562
|
for (const info2 of listProviders()) {
|
|
11564
11563
|
console.log(`
|
|
11565
11564
|
${info2.name} (${info2.type})`);
|
|
@@ -11569,7 +11568,7 @@ ${info2.name} (${info2.type})`);
|
|
|
11569
11568
|
}
|
|
11570
11569
|
});
|
|
11571
11570
|
try {
|
|
11572
|
-
const { registerChatCommands } = await import("./chat-
|
|
11571
|
+
const { registerChatCommands } = await import("./chat-HS7OIE2Y.js");
|
|
11573
11572
|
registerChatCommands(program);
|
|
11574
11573
|
} catch {
|
|
11575
11574
|
program.command("chat <name> [action] [actionArgs...]").description("Vault chat (XMTP) \u2014 requires @xmtp/cli").action(() => {
|
|
@@ -11579,7 +11578,7 @@ try {
|
|
|
11579
11578
|
process.exit(1);
|
|
11580
11579
|
});
|
|
11581
11580
|
}
|
|
11582
|
-
var { registerSessionCommands } = await import("./session-
|
|
11581
|
+
var { registerSessionCommands } = await import("./session-ZIJYGOAT.js");
|
|
11583
11582
|
registerSessionCommands(program);
|
|
11584
11583
|
registerVeniceCommands(program);
|
|
11585
11584
|
registerAllowanceCommands(program);
|
|
@@ -11588,18 +11587,18 @@ registerProposalCommands(program);
|
|
|
11588
11587
|
registerQueueCommands(program);
|
|
11589
11588
|
registerGovernorCommands(program);
|
|
11590
11589
|
registerGuardianCommands(program);
|
|
11591
|
-
var { registerResearchCommands } = await import("./research-
|
|
11590
|
+
var { registerResearchCommands } = await import("./research-N2R76ELJ.js");
|
|
11592
11591
|
registerResearchCommands(program);
|
|
11593
|
-
var { registerAgentCommands } = await import("./agent-
|
|
11592
|
+
var { registerAgentCommands } = await import("./agent-LVDMPKHK.js");
|
|
11594
11593
|
registerAgentCommands(program);
|
|
11595
|
-
var { registerTradeCommands } = await import("./trade-
|
|
11594
|
+
var { registerTradeCommands } = await import("./trade-2J555BS7.js");
|
|
11596
11595
|
registerTradeCommands(program);
|
|
11597
11596
|
registerGridCommand(program);
|
|
11598
11597
|
registerLighterCommands(program);
|
|
11599
|
-
var { registerLaunchpadCommands } = await import("./launchpad-
|
|
11598
|
+
var { registerLaunchpadCommands } = await import("./launchpad-ZVC7Z5JJ.js");
|
|
11600
11599
|
registerLaunchpadCommands(program);
|
|
11601
11600
|
var configCmd = program.command("config");
|
|
11602
|
-
configCmd.command("set").description("Save settings to ~/.sherwood/config.json (persists across sessions)").option("--private-key <key>", "Wallet private key (0x-prefixed)").option("--vault <address>", "Default vault address").option("--rpc <url>", "Custom RPC URL for the active --chain network").option("--notify-to <id>", "Destination for cron summaries (Telegram chat ID, phone, etc.)").option("--uniswap-api-key <key>", "Uniswap Trading API key (from developers.uniswap.org)").option("--venice-api-key <key>", "Venice AI inference API key").option("--
|
|
11601
|
+
configCmd.command("set").description("Save settings to ~/.sherwood/config.json (persists across sessions)").option("--private-key <key>", "Wallet private key (0x-prefixed)").option("--vault <address>", "Default vault address").option("--rpc <url>", "Custom RPC URL for the active --chain network").option("--notify-to <id>", "Destination for cron summaries (Telegram chat ID, phone, etc.)").option("--uniswap-api-key <key>", "Uniswap Trading API key (from developers.uniswap.org)").option("--venice-api-key <key>", "Venice AI inference API key").option("--xmtp-group <subdomain:groupId>", "Cache an XMTP group ID for a vault (e.g. my-vault:abc123)").action((opts) => {
|
|
11603
11602
|
let saved = false;
|
|
11604
11603
|
if (opts.privateKey) {
|
|
11605
11604
|
setPrivateKey(opts.privateKey);
|
|
@@ -11638,11 +11637,6 @@ configCmd.command("set").description("Save settings to ~/.sherwood/config.json (
|
|
|
11638
11637
|
console.log(chalk19.green("Venice API key saved to ~/.sherwood/config.json"));
|
|
11639
11638
|
saved = true;
|
|
11640
11639
|
}
|
|
11641
|
-
if (opts.anthropicApiKey) {
|
|
11642
|
-
setAnthropicApiKey(opts.anthropicApiKey);
|
|
11643
|
-
console.log(chalk19.green("Anthropic API key saved to ~/.sherwood/config.json"));
|
|
11644
|
-
saved = true;
|
|
11645
|
-
}
|
|
11646
11640
|
if (opts.xmtpGroup) {
|
|
11647
11641
|
const parts = opts.xmtpGroup.split(":");
|
|
11648
11642
|
if (parts.length !== 2 || !parts[0] || !parts[1]) {
|
|
@@ -11655,7 +11649,7 @@ configCmd.command("set").description("Save settings to ~/.sherwood/config.json (
|
|
|
11655
11649
|
saved = true;
|
|
11656
11650
|
}
|
|
11657
11651
|
if (!saved) {
|
|
11658
|
-
console.log(chalk19.red("Provide at least one of: --private-key, --vault, --rpc, --notify-to, --uniswap-api-key, --venice-api-key, --
|
|
11652
|
+
console.log(chalk19.red("Provide at least one of: --private-key, --vault, --rpc, --notify-to, --uniswap-api-key, --venice-api-key, --xmtp-group"));
|
|
11659
11653
|
process.exit(1);
|
|
11660
11654
|
}
|
|
11661
11655
|
});
|