@thirdfy/agent-cli 0.2.4 → 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 +9 -1
- package/README.md +4 -6
- package/package.json +1 -1
- package/src/runtime/actions/selection.mjs +16 -0
- package/src/runtime/providerHints.mjs +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,14 @@ 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
|
+
|
|
7
15
|
## [0.2.4] - 2026-05-28
|
|
8
16
|
|
|
9
17
|
### Changed
|
|
@@ -201,7 +209,7 @@ All notable changes to `@thirdfy/agent-cli` are documented here. The format is b
|
|
|
201
209
|
|
|
202
210
|
### Added
|
|
203
211
|
|
|
204
|
-
- **Earn partners (Vaults.fyi and Yield.xyz):** `thirdfy-agent actions --provider vaults-fyi|yield-xyz` returns catalog-aligned hints (`
|
|
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.
|
|
205
213
|
|
|
206
214
|
### Changed
|
|
207
215
|
|
package/README.md
CHANGED
|
@@ -40,13 +40,11 @@ Run without global install:
|
|
|
40
40
|
npx @thirdfy/agent-cli --help
|
|
41
41
|
```
|
|
42
42
|
|
|
43
|
-
## What's new in v0.2.
|
|
43
|
+
## What's new in v0.2.5
|
|
44
44
|
|
|
45
|
-
-
|
|
46
|
-
-
|
|
47
|
-
-
|
|
48
|
-
|
|
49
|
-
Older versions: [CHANGELOG.md](./CHANGELOG.md) and [GitHub Releases](https://github.com/thirdfy/agent-cli/releases).
|
|
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.
|
|
50
48
|
|
|
51
49
|
Older versions: [CHANGELOG.md](./CHANGELOG.md) and [GitHub Releases](https://github.com/thirdfy/agent-cli/releases).
|
|
52
50
|
|
package/package.json
CHANGED
|
@@ -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
|
-
'
|
|
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: '
|
|
338
|
+
canonicalReadAction: 'get-vaults-fyi-vaults',
|
|
339
339
|
canonicalWriteAction: 'deposit_earn_position',
|
|
340
|
-
readActions: ['
|
|
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': '
|
|
390
|
+
'vaults-fyi': 'get-vaults-fyi-vaults',
|
|
391
391
|
'yield-xyz': 'get_yield_xyz_opportunities',
|
|
392
392
|
prediction: 'get_prediction_markets',
|
|
393
393
|
};
|