@wave-ai-os/wave-cli 0.1.66 → 0.1.68

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 CHANGED
@@ -14,7 +14,7 @@ See also:
14
14
  - Help output is human-readable and exits `0`; it does not emit a JSON error envelope.
15
15
  - `--readable` enables human formatting where a command supports it; `--json` forces the stable machine envelope where both flags are present.
16
16
  - No prompts, colors, or implicit interactive UX in this phase.
17
- - JWT forwarding is centralized.
17
+ - Token handling is centralized and credentials are never printed in envelopes.
18
18
 
19
19
  ## Install
20
20
 
@@ -69,7 +69,10 @@ Notes:
69
69
  Required (from flags, stdin, env, config, or stored credentials):
70
70
 
71
71
  - `WAVE_API_TOKEN`
72
- - `WAVE_API_BASE_URL`
72
+
73
+ The API base defaults to production: `https://api.ourwave.io`. Supply
74
+ `--base-url`, stdin context, `WAVE_API_BASE_URL`/`WAVE_API_URL`, or config only
75
+ when using a non-production environment.
73
76
 
74
77
  Organization-scoped data commands use the organization certified by the
75
78
  authenticated CLI token. `--organization-id` is the only local override.
@@ -92,7 +95,7 @@ Deterministic precedence:
92
95
  - stdin context (`--token-stdin` or `--auth-json-stdin`)
93
96
  - env vars (`WAVE_*`)
94
97
  - config file (`--config`, `WAVE_CONFIG_PATH`, or `~/.wave/config.json` when present)
95
- - failure with structured JSON error
98
+ - production API default (`https://api.ourwave.io`)
96
99
 
97
100
  Config files are JSON objects using the same keys accepted by `--auth-json-stdin`, for example:
98
101
 
@@ -104,12 +107,12 @@ Config files are JSON objects using the same keys accepted by `--auth-json-stdin
104
107
  }
105
108
  ```
106
109
 
107
- For a persistent production login, configure `https://api.ourwave.io` as the
108
- GraphQL/API base and save only that API endpoint to the local CLI config. The
109
- token remains in the configured credential store, not in `config.json`:
110
+ For a persistent production login, `wave login --save-base-url` saves the
111
+ default production GraphQL/API base to the local CLI config. The token remains
112
+ in the configured credential store, not in `config.json`:
110
113
 
111
114
  ```bash
112
- wave --base-url https://api.ourwave.io login --save-base-url
115
+ wave login --save-base-url
113
116
  ```
114
117
 
115
118
  The API host is not the browser-login destination. When production returns a
@@ -164,6 +167,33 @@ Namespace taxonomy:
164
167
 
165
168
  `wave doctor` is read-only. It checks auth token resolution, organization ID resolution, base URL resolution, GraphQL reachability, API JSON response health, optional OpenAPI contract configuration, and CLI runtime integrity.
166
169
 
170
+ ### Fixed machine protocol
171
+
172
+ Remote adapters can discover the complete supported surface through `wave api ls --json`.
173
+ Its `data.operations` array is generated from the registered Commander action tree and
174
+ includes every invocable command, JSON input/output schemas, examples, explicit
175
+ classification, approval requirement, machine capabilities, CLI version, and a
176
+ registry digest. `data.commands` is a compatibility projection derived from that same
177
+ manifest.
178
+
179
+ The only machine invocation shape is:
180
+
181
+ ```bash
182
+ printf '%s' '{"id":"123"}' | wave --machine execute \
183
+ --operation projects.show \
184
+ --phase validate \
185
+ --input-json -
186
+ ```
187
+
188
+ `validate` checks and normalizes JSON input without accessing a Wave record.
189
+ `preview` is available only for writes and returns the exact command plus validated
190
+ input. `execute` accepts no raw shell command or user-supplied CLI flags. Read and
191
+ write execution requires a trusted, OAuth-bound machine-auth envelope; writes also
192
+ require a server-managed approval bound to the operation, normalized-input digest,
193
+ CLI version, registry digest, organization, and actor. Machine mode clears ambient
194
+ Wave configuration and local credential storage before dispatch, so it cannot inherit
195
+ a developer's local session.
196
+
167
197
  ## Commands
168
198
 
169
199
  Examples: