@victor-software-house/exa-cli 0.0.2 → 0.0.3

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,11 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.0.3
4
+
5
+ ### Patch Changes
6
+
7
+ - Add `exa auth login`, `status`, and `logout`. Interactive commands now resolve the API key from macOS Keychain, Linux Secret Service, or Windows Credential Manager after `--api-key` and `EXA_API_KEY`. Storing a key needs no external tool on any platform; on Linux a running Secret Service provider is still required. When secure storage is unavailable, `login` fails closed unless given `--insecure-storage`, which writes an atomic `0600` file instead ([`d83d3c6`](https://github.com/victor-software-house/exa-cli/commit/d83d3c6cb9ea1b7325cb8bb6e79b0456bf765f59)).
8
+
3
9
  ## 0.0.2
4
10
 
5
11
  ### Patch Changes
package/README.md CHANGED
@@ -33,11 +33,25 @@ bun src/cli.ts --help
33
33
 
34
34
  The binary name is `exa`. That can collide with the old `exa` / `eza` ls replacement.
35
35
 
36
+ On Alpine and other musl distributions, the binary needs `libstdc++` (`apk add libstdc++`), which every Bun-compiled musl binary links dynamically.
37
+
36
38
  ## Auth
37
39
 
38
- Set `EXA_API_KEY`, or pass `--api-key`. There is no interactive login.
40
+ For interactive use, store the key in the operating system credential store:
41
+
42
+ ```bash
43
+ exa auth login
44
+ exa auth status
45
+ exa auth logout
46
+ ```
47
+
48
+ `auth login` reads from a hidden prompt on a terminal or from stdin when piped. It uses macOS Keychain, Linux Secret Service, and Windows Credential Manager. If secure storage is unavailable, it fails closed. `--insecure-storage` explicitly permits a plaintext fallback at `$XDG_CONFIG_HOME/exa-cli/credentials.json` or `~/.config/exa-cli/credentials.json`, created with mode `0600`.
49
+
50
+ For automation, set `EXA_API_KEY`. Resolution order is `--api-key`, `EXA_API_KEY`, then the stored credential. Passing a key in `--api-key` can expose it through the process list, so prefer the environment or `exa auth login`.
51
+
52
+ No external command or library is required: the credential store is reached through a linked addon. Linux still needs a D-Bus session with a Secret Service provider such as gnome-keyring, so headless and CI environments should use `EXA_API_KEY`.
39
53
 
40
- Operator checkouts with the global fnox profile `exa` get the key from mise (`mise.dev.toml` / `mise -E test`). Contributors can export the variable themselves.
54
+ Operator checkouts with the global fnox profile `exa` get `EXA_API_KEY` from mise (`mise.dev.toml` / `mise -E test`).
41
55
 
42
56
  ## Commands
43
57
 
@@ -52,6 +66,7 @@ exa agent create "narrow research question" --wait --timeout 600
52
66
  exa agent get agent_run_…
53
67
  exa agent wait agent_run_… --timeout 600
54
68
  exa agent cancel agent_run_…
69
+ exa auth status
55
70
  exa doctor
56
71
  exa cache path|clear|prune
57
72
  ```
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@victor-software-house/exa-cli",
3
- "version": "0.0.2",
3
+ "version": "0.0.3",
4
4
  "description": "Agent-friendly CLI for the Exa API with a local SQLite request cache.",
5
5
  "license": "MIT",
6
6
  "author": {
@@ -34,11 +34,11 @@
34
34
  "optique"
35
35
  ],
36
36
  "optionalDependencies": {
37
- "@victor-software-house/exa-cli-darwin-arm64": "0.0.2",
38
- "@victor-software-house/exa-cli-darwin-x64": "0.0.2",
39
- "@victor-software-house/exa-cli-linux-x64": "0.0.2",
40
- "@victor-software-house/exa-cli-linux-arm64": "0.0.2",
41
- "@victor-software-house/exa-cli-linux-x64-musl": "0.0.2",
42
- "@victor-software-house/exa-cli-windows-x64": "0.0.2"
37
+ "@victor-software-house/exa-cli-darwin-arm64": "0.0.3",
38
+ "@victor-software-house/exa-cli-darwin-x64": "0.0.3",
39
+ "@victor-software-house/exa-cli-linux-x64": "0.0.3",
40
+ "@victor-software-house/exa-cli-linux-arm64": "0.0.3",
41
+ "@victor-software-house/exa-cli-linux-x64-musl": "0.0.3",
42
+ "@victor-software-house/exa-cli-windows-x64": "0.0.3"
43
43
  }
44
44
  }
@@ -11,7 +11,7 @@ Install the GitHub Release binary with mise (`"github:victor-software-house/exa-
11
11
  npx skills add victor-software-house/exa-cli
12
12
  ```
13
13
 
14
- Auth is `EXA_API_KEY` or `--api-key`. Do not print the key.
14
+ For interactive use, run `exa auth login`; it stores the key in the OS credential store. For automation, use `EXA_API_KEY`. `--api-key` has highest precedence but can expose the key through the process list. Never print the key.
15
15
 
16
16
  ## Cost discipline
17
17