@thirdfy/agent-cli 0.2.84 → 0.2.86

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,18 @@ All notable changes to `@thirdfy/agent-cli` are documented here. The format is b
4
4
 
5
5
  ## Unreleased
6
6
 
7
+ ## [0.2.86] - 2026-10-10
8
+
9
+ ### Changed
10
+
11
+ - **Bermuda hint: no privacy fee at launch.** The hint said private swaps carry a privacy fee. Thirdfy API turned the fee off (private actions pay only `write_private` credits), so the hint now says any fee is reported as `privacyFee` (0 at launch). `docs/providers/bermuda.md` says the same.
12
+
13
+ ## [0.2.85] - 2026-10-10
14
+
15
+ ### Fixed
16
+
17
+ - **`run --action bermuda_stealth_swap` was refused before reaching the API.** The swap amount check applied to every action whose resolved name ends in `-swap`, so `bermuda-stealth-swap` (which takes `amount`) stopped with `AMOUNT_UNIT_MISSING`. Found by testing 0.2.84 against Thirdfy api-test. It now keeps its own `amount`; `swap` (private or not) still takes the `amountIn` contract. Pin: `test/mcp-api-parity.test.cjs`.
18
+
7
19
  ## [0.2.84] - 2026-10-10
8
20
 
9
21
  ### Added
package/README.md CHANGED
@@ -40,10 +40,10 @@ Run without global install:
40
40
  npx @thirdfy/agent-cli --help
41
41
  ```
42
42
 
43
- ## What's new in v0.2.84
43
+ ## What's new in v0.2.86
44
44
 
45
- - **Private actions (Bermuda, Base Sepolia).** Hints cover `bermuda_stealth_exit`, `bermuda_stealth_swap` and `bermuda_sweep_burners`, plus `private: true` on `swap`, `deposit_earn_position` and `withdraw_earn_position` (Thirdfy API: the action runs from the shielded balance on a fresh burner where a Bermuda pool exists, or is refused; it never falls back to a public action). See [docs/providers/bermuda.md](./docs/providers/bermuda.md).
46
- - **`run` no longer blocks private writes on the public balance check.** `private: true` and Bermuda writes (except `bermuda_deposit`) spend the shielded balance, so the execution wallet's `tokenIn` balance is not checked.
45
+ - **Private actions bill credits only.** The Bermuda hint no longer says private swaps carry a privacy fee: Thirdfy charges the `write_private` credit tier and reports any fee as `privacyFee` (0 at launch).
46
+ - 0.2.85: `bermuda_stealth_swap` runs from `run` (it was refused with `AMOUNT_UNIT_MISSING`). 0.2.84: `private: true` on `swap`, `deposit_earn_position` and `withdraw_earn_position`, and the Bermuda private writes. See [docs/providers/bermuda.md](./docs/providers/bermuda.md).
47
47
  - See [CHANGELOG.md](./CHANGELOG.md) and GitHub Releases for older versions.
48
48
 
49
49
  ## Quick start
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thirdfy/agent-cli",
3
- "version": "0.2.84",
3
+ "version": "0.2.86",
4
4
  "description": "Thirdfy Agent CLI for onboarding, governance preflight, execute-intent, and status polling.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,8 +1,12 @@
1
1
  import { parseJsonFlag } from '../../core/args.mjs';
2
2
  import { createCliError } from '../../core/envelope.mjs';
3
3
  export function createExecutionAmounts() {
4
+ /** Swaps with their own amount field, not the `amountIn` contract (Bermuda private swaps take `amount`). */
5
+ const OWN_AMOUNT_SWAP_ACTIONS = new Set(['bermuda-stealth-swap']);
6
+
4
7
  function shouldApplySwapAmountContract(actionName) {
5
8
  const action = String(actionName || '').trim().toLowerCase();
9
+ if (OWN_AMOUNT_SWAP_ACTIONS.has(action.replace(/_/g, '-').replace(/^.*:/, ''))) return false;
6
10
  return action === 'swap' || action === 'execute_optimal_swap' || /(^|:|-)swap$/.test(action);
7
11
  }
8
12
 
@@ -823,7 +823,7 @@ export function createProviderHints({ getNegotiatedCapabilitiesCache }) {
823
823
  ],
824
824
  supportedChains: [84532],
825
825
  laneCompatibility:
826
- 'Base Sepolia shielded accounts (USDC, WETH, MetaMorpho vault shares). Catalog is flag-gated on the API host. Deposit is sent from the execution wallet; every other write is proven and relayed, so the execution wallet never appears: transfer, withdraw, private vault entry/exit (stealth earn/exit), private swap (stealth swap, best of Thirdfy routes and Uniswap v3, fresh burner per trade) and burner sweep. The regular swap takes private: true for the same private swap. Writes are capped at 5 USD; the sweep has no cap. Private writes bill the write_private tier and private swaps carry a privacy fee. Responses include privacyNotes.',
826
+ 'Base Sepolia shielded accounts (USDC, WETH, MetaMorpho vault shares). Catalog is flag-gated on the API host. Deposit is sent from the execution wallet; every other write is proven and relayed, so the execution wallet never appears: transfer, withdraw, private vault entry/exit (stealth earn/exit), private swap (stealth swap, best of Thirdfy routes and Uniswap v3, fresh burner per trade) and burner sweep. The regular swap takes private: true for the same private swap. Writes are capped at 5 USD; the sweep has no cap. Private writes bill the write_private credit tier; any privacy fee is reported as privacyFee (0 at launch). Responses include privacyNotes.',
827
827
  example:
828
828
  'thirdfy-agent run --action get_bermuda_setup_status --params \'{"chainId":84532}\' --provider bermuda --json',
829
829
  };