@bjesuiter/codex-switcher 1.5.0 → 1.5.1
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/README.md +5 -20
- package/cdx.mjs +2 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -6,27 +6,12 @@ Switch the coding-agents [pi](https://pi.dev/), [codex](https://developers.opena
|
|
|
6
6
|
|
|
7
7
|
## Latest Changes
|
|
8
8
|
|
|
9
|
-
### 1.5.
|
|
10
|
-
|
|
11
|
-
#### Features
|
|
12
|
-
|
|
13
|
-
- Add shell completion support via `cdx complete <shell>` (with parse-completion handling for shell integrations).
|
|
14
|
-
- Add configurable secret-store selection with `--secret-store <mode>` (`auto` or `legacy-keychain`) plus persisted config support.
|
|
15
|
-
- Switch macOS `auto` secret storage to cross-keychain backend selection (prefers native backend, falls back when needed).
|
|
16
|
-
- Add `cdx migrate-secrets` to migrate legacy macOS keychain entries to cross-keychain and update config.
|
|
17
|
-
- Add optional macOS keychain ACL diagnostics in `cdx doctor --check-keychain-acl` to verify trusted runtime access.
|
|
18
|
-
- Add doctor/runtime warnings when macOS keychain access is using legacy/CLI fallback paths where Touch ID prompts may not be offered.
|
|
19
|
-
- Increase cross-keychain max password length handling (default `16384`) to support larger stored credential payloads.
|
|
9
|
+
### 1.5.1
|
|
20
10
|
|
|
21
11
|
#### Fixes
|
|
22
12
|
|
|
23
|
-
-
|
|
24
|
-
-
|
|
25
|
-
|
|
26
|
-
#### Internal
|
|
27
|
-
|
|
28
|
-
- Temporarily switch keyring dependency from `cross-keychain` to `@bjesuiter/cross-keychain@1.1.0-jb.0` until upstream support is available.
|
|
29
|
-
- Add Windows CI coverage including shell smoke checks and expanded secure-store integration tests (including Windows CRUD coverage).
|
|
13
|
+
- `cdx doctor --check-keychain-acl` now suggests running `cdx migrate-secrets` when keychain ACL/runtime mismatches are detected.
|
|
14
|
+
- Clarify keychain ACL diagnostics wording to distinguish entries created by `cdx` (Bun runtime) vs the legacy Apple `security` CLI path, including why mismatches can trigger repeated keychain password prompts.
|
|
30
15
|
|
|
31
16
|
see full changelog here: https://github.com/bjesuiter/codex-switcher/blob/main/CHANGELOG.md
|
|
32
17
|
|
|
@@ -179,7 +164,7 @@ cdx migrate-secrets
|
|
|
179
164
|
| `cdx status` | Show account status, token expiry, and usage |
|
|
180
165
|
| `cdx migrate-secrets` | Migrate macOS legacy keychain entries to cross-keychain and switch config to `auto` |
|
|
181
166
|
| `cdx doctor` | Show auth file paths/state and runtime capabilities |
|
|
182
|
-
| `cdx doctor --check-keychain-acl` |
|
|
167
|
+
| `cdx doctor --check-keychain-acl` | Detect macOS keychain ACL/runtime mismatches (`cdx`/Bun vs legacy `security` CLI), warn about prompt-heavy setups, and suggest `cdx migrate-secrets` (slow) |
|
|
183
168
|
| `cdx usage` | Show usage overview for all accounts |
|
|
184
169
|
| `cdx usage <account>` | Show detailed usage for a specific account |
|
|
185
170
|
| `cdx help [command]` | Show help for all commands or one command |
|
|
@@ -215,7 +200,7 @@ source <(cdx complete bash)
|
|
|
215
200
|
- `--secret-store <mode>` always overrides config for the current run.
|
|
216
201
|
- If only a fallback secure-store backend is available on your platform, `cdx` asks for one-time explicit consent before the first credential write and explains the security trade-off.
|
|
217
202
|
- Non-interactive override (if you accept the risk): set `CDX_ALLOW_SECURE_STORE_FALLBACK=1`
|
|
218
|
-
- On macOS, `cdx doctor --check-keychain-acl`
|
|
203
|
+
- On macOS, `cdx doctor --check-keychain-acl` checks whether configured secrets were created for the current `cdx`/Bun runtime or by the legacy Apple `security` CLI flow. Legacy ACL entries can trigger frequent keychain password prompts; when a mismatch is detected, `cdx` suggests `cdx migrate-secrets`. This check can be slow.
|
|
219
204
|
- Cross-keychain payload size policy:
|
|
220
205
|
- Default max password length override is `16384`.
|
|
221
206
|
- Optional override: set `CDX_CROSS_KEYCHAIN_MAX_PASSWORD_LENGTH=<integer-above-4096>`.
|
package/cdx.mjs
CHANGED
|
@@ -14,7 +14,7 @@ import { randomBytes } from "node:crypto";
|
|
|
14
14
|
import http from "node:http";
|
|
15
15
|
|
|
16
16
|
//#region package.json
|
|
17
|
-
var version = "1.5.
|
|
17
|
+
var version = "1.5.1";
|
|
18
18
|
|
|
19
19
|
//#endregion
|
|
20
20
|
//#region lib/platform/path-resolver.ts
|
|
@@ -1855,6 +1855,7 @@ const registerDoctorCommand = (program) => {
|
|
|
1855
1855
|
process.stdout.write(` Service: ${service}\n`);
|
|
1856
1856
|
process.stdout.write(` Trusted apps: ${trustedAppsList || "(none)"}\n`);
|
|
1857
1857
|
process.stdout.write(" This secret may have been created with a different runtime/toolchain (for example node vs bun).\n");
|
|
1858
|
+
process.stdout.write(" Suggested fix: run `cdx migrate-secrets` to recreate keychain entries with the current runtime ACL.\n");
|
|
1858
1859
|
}
|
|
1859
1860
|
}
|
|
1860
1861
|
}
|