@thirdfy/agent-cli 0.2.3 → 0.2.5

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/CHANGELOG.md CHANGED
@@ -4,6 +4,20 @@ All notable changes to `@thirdfy/agent-cli` are documented here. The format is b
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.2.5] - 2026-05-31
8
+
9
+ ### Fixed
10
+
11
+ - Vaults.fyi provider hints now report `get-vaults-fyi-vaults` as the canonical read action.
12
+ - Legacy `get_vaults_fyi_vaults` requests resolve to `get-vaults-fyi-vaults` before ambiguous alias matching.
13
+ - Public action inventory docs now match the hyphenated Vaults.fyi discovery action used by Thirdfy API and MCP.
14
+
15
+ ## [0.2.4] - 2026-05-28
16
+
17
+ ### Changed
18
+
19
+ - Hyperliquid docs: `complete_hyperliquid_onboarding` as the preferred runtime-owned setup action; clarify separated Hyperliquid main wallet vs managed API/execution wallet params (`mainWalletAddress`, `apiWalletAddress`, order `userAddress`).
20
+
7
21
  ## [0.2.3] - 2026-05-26
8
22
 
9
23
  ### Added
@@ -195,7 +209,7 @@ All notable changes to `@thirdfy/agent-cli` are documented here. The format is b
195
209
 
196
210
  ### Added
197
211
 
198
- - **Earn partners (Vaults.fyi and Yield.xyz):** `thirdfy-agent actions --provider vaults-fyi|yield-xyz` returns catalog-aligned hints (`get_vaults_fyi_vaults` / `get_yield_xyz_opportunities`, generic Earn reads, `deposit_earn_position` / `withdraw_earn_position`). Provider inference and `--provider earn` filtering include these providers alongside Morpho and Curve.
212
+ - **Earn partners (Vaults.fyi and Yield.xyz):** `thirdfy-agent actions --provider vaults-fyi|yield-xyz` returns catalog-aligned hints (`get-vaults-fyi-vaults` / `get_yield_xyz_opportunities`, generic Earn reads, `deposit_earn_position` / `withdraw_earn_position`). Provider inference and `--provider earn` filtering include these providers alongside Morpho and Curve.
199
213
 
200
214
  ### Changed
201
215
 
package/README.md CHANGED
@@ -40,12 +40,11 @@ Run without global install:
40
40
  npx @thirdfy/agent-cli --help
41
41
  ```
42
42
 
43
- ## What's new in v0.2.3
43
+ ## What's new in v0.2.5
44
44
 
45
- - **Hyperliquid** and **Polymarket** provider discovery now include `recoveryActions` and `decommissionExample` for fund recovery before runtime delete.
46
- - Hyperliquid recovery path: `get_hyperliquid_user_state` `withdraw_hyperliquid_to_arbitrum` withdraw execution wallet to owner.
47
- - Polymarket recovery path: `get_polymarket_recovery_status` `withdraw_polymarket_collateral` withdraw execution wallet to owner.
48
- - Pairs with Thirdfy API **v3.4.42+** managed recovery actions and EarnClaw runtime decommission flows.
45
+ - Vaults.fyi provider hints now report `get-vaults-fyi-vaults` as the canonical read action.
46
+ - The legacy underscore request `get_vaults_fyi_vaults` resolves to the hyphenated catalog action before ambiguous alias matching.
47
+ - Public action inventory docs use the same hyphenated Vaults.fyi discovery action as Thirdfy API and MCP.
49
48
 
50
49
  Older versions: [CHANGELOG.md](./CHANGELOG.md) and [GitHub Releases](https://github.com/thirdfy/agent-cli/releases).
51
50
 
@@ -182,7 +181,7 @@ Auth expectations by mode:
182
181
  - `hybrid`: requires execution identity and governed mirror semantics (`--hybrid-wallet-mode self|agent_wallet`, default `self`).
183
182
  - `thirdfy`: requires execution identity and delegated governance path.
184
183
  - `agent_wallet`: requires execution identity and owner `userDid`, but does not require subscriber delegation when the owner identity matches the agent wallet/creator. Thirdfy credits/free quota still gate execution; Privy gas sponsorship only covers network gas when enabled.
185
- - Hyperliquid Bridge2 setup is the Arbitrum exception to the Base-focused `agent_wallet` rule: Bridge2 credits the transaction sender. Pass **`--estimated-amount-usd`** as a top-level flag (not inside `--params`). When USDC sits on your linked email-login wallet (`primaryEvmWallet`) instead of the managed execution wallet, Thirdfy API returns **`FUND_AGENT_EXECUTION_WALLET`** / **`MANUAL_BRIDGE2_DEPOSIT_REQUIRED`** with `fundedWallet` and `executionWalletAddress`; move native Arbitrum USDC to `executionWalletAddress` and retry.
184
+ - Hyperliquid setup uses `complete_hyperliquid_onboarding` for runtime-owned funding/setup. It can submit Li.Fi and Bridge2 steps automatically, then return `bridge2_submitted` while Hyperliquid credits the deposit. Bridge2 setup is the Arbitrum exception to the Base-focused `agent_wallet` rule: Bridge2 credits the transaction sender. Pass **`--estimated-amount-usd`** as a top-level flag (not inside `--params`). The normal solo `agent_wallet` path uses the managed execution wallet as the Hyperliquid main wallet. If margin already sits on a different Hyperliquid main wallet, pass that wallet as `mainWalletAddress` / order `userAddress`, and pass the approved execution/API wallet as `apiWalletAddress`. When USDC sits on your linked email-login wallet (`primaryEvmWallet`) instead of the managed execution wallet, Thirdfy API returns **`FUND_AGENT_EXECUTION_WALLET`** / **`MANUAL_BRIDGE2_DEPOSIT_REQUIRED`** with `fundedWallet` and `executionWalletAddress`; move native Arbitrum USDC to `executionWalletAddress` and retry.
186
185
  - custody mode defaults are profile-aware:
187
186
  - `managed` default for `thirdfy`
188
187
  - `external` default for `self` and `hybrid`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thirdfy/agent-cli",
3
- "version": "0.2.3",
3
+ "version": "0.2.5",
4
4
  "description": "Thirdfy Agent CLI for onboarding, governance preflight, execute-intent, and status polling.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -276,6 +276,22 @@ async function resolveActionSelection(ctx, flags) {
276
276
  return { requestedAction, resolvedAction: requestedAction, resolvedActionMeta: null };
277
277
  }
278
278
 
279
+ const canonicalAliasOverrides = {
280
+ get_vaults_fyi_vaults: 'get-vaults-fyi-vaults',
281
+ get_vaults_fyi_opportunities: 'get-vaults-fyi-vaults',
282
+ };
283
+ const canonicalOverride = canonicalAliasOverrides[requestedLower];
284
+ if (canonicalOverride) {
285
+ const overrideEntry = keyed.find((entry) => entry.key.toLowerCase() === canonicalOverride);
286
+ if (overrideEntry) {
287
+ return {
288
+ requestedAction,
289
+ resolvedAction: overrideEntry.key,
290
+ resolvedActionMeta: overrideEntry.action || null,
291
+ };
292
+ }
293
+ }
294
+
279
295
  // Prefer direct action id matches over alias matches.
280
296
  // This keeps UX simple for commands like `--action swap` when another action aliases to "swap".
281
297
  const exactKey = keyed.filter((entry) => entry.key.toLowerCase() === requestedLower);
@@ -250,7 +250,7 @@ export function createProviderHints({ getNegotiatedCapabilitiesCache }) {
250
250
  'get_aegis_pool_state',
251
251
  'get_aegis_vault_state',
252
252
  'get_curve_pools',
253
- 'get_vaults_fyi_vaults',
253
+ 'get-vaults-fyi-vaults',
254
254
  'get_yield_xyz_opportunities',
255
255
  ],
256
256
  orderManagementActions: ['deposit_earn_position', 'withdraw_earn_position'],
@@ -335,9 +335,9 @@ export function createProviderHints({ getNegotiatedCapabilitiesCache }) {
335
335
  return {
336
336
  provider,
337
337
  category: 'earn',
338
- canonicalReadAction: 'get_vaults_fyi_vaults',
338
+ canonicalReadAction: 'get-vaults-fyi-vaults',
339
339
  canonicalWriteAction: 'deposit_earn_position',
340
- readActions: ['get_vaults_fyi_vaults', 'get_earn_opportunities', 'get_earn_provider', 'get_earn_position'],
340
+ readActions: ['get-vaults-fyi-vaults', 'get_earn_opportunities', 'get_earn_provider', 'get_earn_position'],
341
341
  orderManagementActions: ['deposit_earn_position', 'withdraw_earn_position'],
342
342
  laneCompatibility:
343
343
  'Vaults.fyi writes are transaction-prep first. Thirdfy validates partner payloads, chain/user context, and allowed targets before returning or submitting prepared calls.',
@@ -387,7 +387,7 @@ export function createProviderHints({ getNegotiatedCapabilitiesCache }) {
387
387
  morpho: 'get_morpho_vaults',
388
388
  aegis: 'get_aegis_pools',
389
389
  curve: 'get_curve_pools',
390
- 'vaults-fyi': 'get_vaults_fyi_vaults',
390
+ 'vaults-fyi': 'get-vaults-fyi-vaults',
391
391
  'yield-xyz': 'get_yield_xyz_opportunities',
392
392
  prediction: 'get_prediction_markets',
393
393
  };