@vultisig/cli 2.19.11 → 2.19.18

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
@@ -1,5 +1,23 @@
1
1
  # @vultisig/cli
2
2
 
3
+ ## 2.19.18
4
+
5
+ ### Patch Changes
6
+
7
+ - [#1223](https://github.com/vultisig/vultisig-sdk/pull/1223) [`6296248`](https://github.com/vultisig/vultisig-sdk/commit/62962482d8499f697e0634260a2e6083b944e649) Thanks [@neavra](https://github.com/neavra)! - Fix `agent ask` headless signing so a vault unlocked via `VAULT_PASSWORD` (or the OS keyring) can sign without also passing `--password`. The sign-time gate now keys off whether a password is actually needed — an encrypted vault that is still locked with no password in hand — and retries the same non-interactive chain (cache → keyring → `VAULT_PASSWORDS`/`VAULT_PASSWORD`) before prompting, instead of always re-prompting when `--password` was absent. Unencrypted vaults skip the gate entirely. The transaction confirmation gate is unchanged. Also corrects the `VAULT_PASSWORD` help text.
8
+
9
+ ## 2.19.14
10
+
11
+ ### Patch Changes
12
+
13
+ - [#1034](https://github.com/vultisig/vultisig-sdk/pull/1034) [`6643df7`](https://github.com/vultisig/vultisig-sdk/commit/6643df76cf2ff2ffe08ca4985bcaf46289714e4f) Thanks [@neavra](https://github.com/neavra)! - fix(cli): fail closed on interactive prompts in non-TTY sessions instead of corrupting stdout. A piped/redirected stdout is the machine-output (JSON) channel, but bare `send`/`execute`/`swap`/`tokens --add`/`join`/`rujira swap`/`rujira withdraw` and the password/seedphrase prompts still rendered an inquirer prompt there and then died with a generic `UNKNOWN_ERROR`/exit 7 (or, for `completion --install`, a raw `ERR_USE_AFTER_CLOSE` readline stack trace).
14
+
15
+ The session is now treated as non-interactive whenever stdout OR stdin is not a TTY — mirroring how `--output` already defaults to `json` when stdout isn't a TTY, and closing the fund-safety gap where a piped `y` could otherwise auto-confirm a signing prompt. The fail-closed guard now lives at the shared prompt chokepoint (`src/lib/prompt.ts`), so **every** command that reaches an interactive prompt — including `import`, `export`, `verify`, and `address-book --add`, which previously slipped past the per-command confirm gates — throws a stable `CONFIRMATION_REQUIRED` code (exit 12) with a clear stderr hint _before_ any prompt is drawn (a password prompt points at `--password`/`VAULT_PASSWORD`/keyring; other prompts at the relevant value flags). All interactive prompts (including the create/import/verify/reshare/settings and interactive-shell paths) are routed to stderr so they can never land on the machine-output channel, `completion --install` and `-i` refuse to run without a TTY with a graceful message, and the rujira swap/withdraw flows now unlock the vault only after the confirmation gate. `--yes`/`--confirm`, a supplied `--password`/`VAULT_PASSWORD`/keyring credential, and real interactive TTY use are unchanged.
16
+
17
+ - Updated dependencies [[`4483754`](https://github.com/vultisig/vultisig-sdk/commit/4483754748190fe25654de79fc12fba0edb73963), [`6643df7`](https://github.com/vultisig/vultisig-sdk/commit/6643df76cf2ff2ffe08ca4985bcaf46289714e4f)]:
18
+ - @vultisig/core-chain@2.24.3
19
+ - @vultisig/sdk@2.19.14
20
+
3
21
  ## 2.19.11
4
22
 
5
23
  ### Patch Changes
package/README.md CHANGED
@@ -1134,20 +1134,21 @@ Configuration is stored in `~/.vultisig/`:
1134
1134
 
1135
1135
  ## Exit Codes
1136
1136
 
1137
- | Code | Meaning |
1138
- | ---- | ---------------------------------------------------------------------------------- |
1139
- | 0 | Success |
1140
- | 1 | Usage error (bad arguments, unknown command) |
1141
- | 2 | Authentication required |
1142
- | 3 | Network error (retryable) |
1143
- | 4 | Invalid input (bad chain, address, amount) |
1144
- | 5 | Resource not found (token, route) |
1145
- | 6 | External service error (retryable) |
1146
- | 7 | Unknown/unexpected error |
1147
- | 8 | Broadcast succeeded but post-broadcast report failed — hash is valid, do NOT retry |
1148
- | 9 | Duplicate broadcast refused (nothing sent) — retry with --force to override |
1149
- | 10 | agent ask: a fund-safety guardrail blocked the requested action |
1150
- | 11 | agent ask: the model refused or asked a clarifying question (no action taken) |
1137
+ | Code | Meaning |
1138
+ | ---- | ---------------------------------------------------------------------------------------------------------------------- |
1139
+ | 0 | Success |
1140
+ | 1 | Usage error (bad arguments, unknown command) |
1141
+ | 2 | Authentication required |
1142
+ | 3 | Network error (retryable) |
1143
+ | 4 | Invalid input (bad chain, address, amount) |
1144
+ | 5 | Resource not found (token, route) |
1145
+ | 6 | External service error (retryable) |
1146
+ | 7 | Unknown/unexpected error |
1147
+ | 8 | Broadcast succeeded but post-broadcast report failed — hash is valid, do NOT retry |
1148
+ | 9 | Duplicate broadcast refused (nothing sent) — retry with --force to override |
1149
+ | 10 | agent ask: a fund-safety guardrail blocked the requested action |
1150
+ | 11 | agent ask: the model refused or asked a clarifying question (no action taken) |
1151
+ | 12 | Interactive confirmation/input required but the session is non-interactive — pass --yes/--confirm or the required flag |
1151
1152
 
1152
1153
  > These are generated from the `ExitCode` enum in `src/core/errors.ts` (the single source of
1153
1154
  > truth) and are covered by a doc-lint test that fails if this table drifts from the code. Run