@everfir/az8-cli 0.4.0 → 0.5.0

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/package.json CHANGED
@@ -1,14 +1,12 @@
1
1
  {
2
2
  "name": "@everfir/az8-cli",
3
- "version": "0.4.0",
3
+ "version": "0.5.0",
4
4
  "description": "Semantic Project Canvas client for AZ8 Studio agents.",
5
5
  "license": "UNLICENSED",
6
6
  "type": "module",
7
7
  "files": [
8
8
  "dist",
9
- "skills",
10
- "CHANGELOG.md",
11
- "RELEASE.md"
9
+ "skills"
12
10
  ],
13
11
  "bin": {
14
12
  "az8": "dist/main.js"
@@ -6,7 +6,7 @@ description: Use AZ8 CLI to safely select or create Projects, inspect and author
6
6
  # Use AZ8 CLI
7
7
 
8
8
  Treat `az8` as a semantic AZ8 Studio client, not as a document editor or generic backend client.
9
- Follow this guide before the first Project Canvas action in a new environment. Query runtime
9
+ Follow this guide before the first Project Canvas action in a new agent host. Query runtime
10
10
  capabilities instead of guessing operation names or input shapes.
11
11
 
12
12
  ## Contract
@@ -14,7 +14,7 @@ capabilities instead of guessing operation names or input shapes.
14
14
  - Use only public `az8 projects`, `az8 session`, and `az8 canvas` commands. Never mutate backend
15
15
  records, Yjs, Collaborative Document fields, Core Node payloads, or Project Content bindings
16
16
  directly.
17
- - Explicitly select `test` or `production`. Never infer authorization to write production data.
17
+ - Never infer authorization to write outside the user-selected Project and concrete task.
18
18
  - Read the relevant Canvas facts before planning a write. Submit one semantic Operation at a time.
19
19
  - Treat every accepted write as a blocker: wait for its terminal Receipt before issuing any later
20
20
  query or Operation.
@@ -23,7 +23,7 @@ capabilities instead of guessing operation names or input shapes.
23
23
  - Never automatically retry a write. Retry only bounded reads when the returned error says doing so
24
24
  is safe. An idempotency key does not authorize blind replay.
25
25
  - Prefer `az8 login` browser authorization for the current operating-system user. Externally
26
- provisioned inherited-environment and env-file credentials remain higher-priority automation
26
+ provisioned process-environment and env-file credentials remain higher-priority automation
27
27
  inputs. Never type, read, copy, print, or return a token through a shell tool call, argv, stdio
28
28
  frame, prompt, log, or output.
29
29
 
@@ -63,7 +63,7 @@ capabilities instead of guessing operation names or input shapes.
63
63
 
64
64
  ## Bootstrap
65
65
 
66
- 1. Report the canonical working directory and intended environment. Then verify the installed
66
+ 1. Report the canonical working directory. Then verify the installed
67
67
  client without credentials:
68
68
 
69
69
  ```bash
@@ -73,24 +73,24 @@ capabilities instead of guessing operation names or input shapes.
73
73
  2. Check the active identity without inspecting credential material:
74
74
 
75
75
  ```bash
76
- az8 whoami --environment test
76
+ az8 whoami
77
77
  ```
78
78
 
79
79
  If no credential is available, invoke browser authorization and ask the user to approve the
80
80
  request in the opened AZ8 Studio page:
81
81
 
82
82
  ```bash
83
- az8 login --environment test
83
+ az8 login
84
84
  ```
85
85
 
86
86
  `login` emits the verification URL and User Code as structured progress while it waits. Do not
87
87
  create a polling loop around it. If the browser cannot be opened on the agent host, use
88
- `az8 login --environment test --no-open`, give the emitted URL to the user, and keep that one
88
+ `az8 login --no-open`, give the emitted URL to the user, and keep that one
89
89
  command running until it succeeds or fails. Authorization delivery is at-most-once: a lost
90
90
  response, cancelled CLI, or failed local save requires a completely new `az8 login`; never retry
91
91
  the consumed exchange yourself.
92
92
 
93
- The CLI stores browser-authorized credentials privately by operating-system user and environment.
93
+ The CLI stores browser-authorized credentials privately by operating-system user and AZ8 service.
94
94
  `az8 logout` removes only that local credential and closes daemon Sessions that depend on it; it
95
95
  is not online revocation. Do not log out automatically at task completion.
96
96
 
@@ -100,7 +100,6 @@ capabilities instead of guessing operation names or input shapes.
100
100
 
101
101
  ```dotenv
102
102
  AZ8_TOKEN=<operator-provisioned-secret>
103
- AZ8_ENVIRONMENT=test
104
103
  ```
105
104
 
106
105
  With no `--env-file`, the CLI searches for `.env.local` from the working directory upward. An
@@ -108,7 +107,7 @@ capabilities instead of guessing operation names or input shapes.
108
107
 
109
108
  ```bash
110
109
  az8 projects list --scope owned --page-size 1 \
111
- --environment test --env-file /secure/path/.env.local
110
+ --env-file /secure/path/.env.local
112
111
  ```
113
112
 
114
113
  Use `az8 whoami` as the credential check. Never verify a token with `cat`, `sed`, `grep`, `env`,
@@ -117,10 +116,10 @@ capabilities instead of guessing operation names or input shapes.
117
116
  provisioning workflow. Keep it outside version control with owner-only access.
118
117
 
119
118
  The inherited process environment overrides env-file values, and env-file values override the
120
- locally saved login; `--environment` overrides `AZ8_ENVIRONMENT`. `az8 login` can save a local
119
+ locally saved login. `az8 login` can save a local
121
120
  credential while an external credential remains active, so check the returned `credential.active`
122
- field and use `az8 whoami` to confirm the effective Actor. Always pass or provision the intended
123
- environment explicitly. Never ask the user to paste a secret into chat.
121
+ field and use `az8 whoami` to confirm the effective Actor.
122
+ Never ask the user to paste a secret into chat.
124
123
 
125
124
  3. Select an existing Project or create a bounded workspace:
126
125
 
@@ -136,7 +135,7 @@ capabilities instead of guessing operation names or input shapes.
136
135
  daemon-backed Agent Collaboration Session now and retain it through the authoring task:
137
136
 
138
137
  ```bash
139
- az8 session open <project-id> --environment test
138
+ az8 session open <project-id>
140
139
  az8 session query capabilities.summary
141
140
  az8 session query capabilities.detail --operation-name <operation-name>
142
141
  az8 session query canvas.summary
@@ -146,8 +145,8 @@ capabilities instead of guessing operation names or input shapes.
146
145
  Session merely to retain unused state:
147
146
 
148
147
  ```bash
149
- az8 canvas query <project-id> capabilities.summary --environment test
150
- az8 canvas query <project-id> canvas.summary --environment test
148
+ az8 canvas query <project-id> capabilities.summary
149
+ az8 canvas query <project-id> canvas.summary
151
150
  ```
152
151
 
153
152
  `capabilities.summary` is the short menu. Select one Operation with `--operation-name` when
@@ -176,7 +175,7 @@ connection, Awareness, History, Receipts, Interests, and Watch Journal across or
176
175
  calls:
177
176
 
178
177
  ```bash
179
- az8 session open <project-id> --environment test
178
+ az8 session open <project-id>
180
179
  az8 session current
181
180
  az8 session status
182
181
  ```
@@ -490,14 +489,13 @@ Never:
490
489
  - use one-shot as if it retained History, Receipts, replay state, observations, or presence;
491
490
  - attempt Asset membership, arbitrary Core Node creation, 3D World editing, unsupported
492
491
  Decoration, alignment, or automatic layout through lower-level access;
493
- - write production unless the user explicitly selected and authorized production for the concrete
494
- action.
492
+ - write Project data unless the user explicitly authorized the concrete action.
495
493
 
496
494
  ## Completion
497
495
 
498
496
  Before reporting a task complete, verify all applicable facts:
499
497
 
500
- - The intended environment, Project ID, authenticated role, and installed CLI version are known.
498
+ - The configured AZ8 service, Project ID, authenticated role, and installed CLI version are known.
501
499
  - Runtime capability discovery—not memory—authorized every Operation and input schema used.
502
500
  - Every write has its own request ID, terminal Receipt, and sequential position; no write was
503
501
  automatically retried.
package/CHANGELOG.md DELETED
@@ -1,260 +0,0 @@
1
- # Changelog
2
-
3
- All notable AZ8 CLI changes are recorded here. The CLI package has its own linear version sequence;
4
- it does not inherit the Web application or monorepo root version.
5
-
6
- ## Unreleased
7
-
8
- ## 0.4.0 - 2026-07-24
9
-
10
- ### Added
11
-
12
- - Browser-assisted local authentication through `az8 login`, account inspection through
13
- `az8 whoami`, and local sign-out through `az8 logout`.
14
- - Environment-isolated local credential storage with atomic writes, restrictive filesystem
15
- permissions, authenticated account metadata, and automatic persistence of rotated tokens.
16
- - A standalone Studio authorization page that requires an explicit approve or deny decision and
17
- never exposes the delivered credential to browser JavaScript.
18
-
19
- ### Changed
20
-
21
- - Capability discovery can select one exact Operation schema with `--operation-name`; Workflow
22
- Definition discovery always uses compact target counts, target filtering, and opaque cursor
23
- pagination.
24
- - The built-in Skill uses focused capability detail and bounded Workflow catalog pages instead of
25
- loading full catalogs into agent context.
26
- - Persistent Canvas protocol `1.1` removes selector-free capability detail and full Workflow
27
- catalog responses. Callers must select one Operation detail and page Workflow summaries.
28
- - Credential resolution now prefers explicit process and env-file tokens before the local login
29
- credential, while reporting which non-secret source is active.
30
- - Daemon Session descriptors retain only the credential source and account identity so logout can
31
- close affected local-token Sessions without recording a secret.
32
- - Agent onboarding recommends browser login by default and explains the at-most-once exchange
33
- failure boundary: an ambiguous exchange must begin a new authorization rather than retry.
34
-
35
- ### Safety and compatibility
36
-
37
- - Browser authorization uses PKCE, a short-lived user code, explicit CSRF intent, and at-most-once
38
- token delivery. A consumed exchange is never replayed after a lost response or local save
39
- failure.
40
- - `logout` clears only local CLI state; it does not promise server-side revocation. Existing
41
- environment and env-file provisioning remains supported and is never rewritten by the CLI.
42
-
43
- ## 0.3.0 - 2026-07-23
44
-
45
- ### Added
46
-
47
- - Account-aware Workflow discovery and selection, using the same free-account eligibility rule as
48
- Web while keeping unavailable historical Definitions inspectable in detail.
49
- - Web-equivalent default generation Drafts and private local Workflow preferences scoped by
50
- environment, authenticated account, and output content type.
51
- - Truthful terminal Workflow target identity derived from retained launch facts or unique Canvas
52
- History, with explicit unresolved and ambiguous states when evidence is insufficient.
53
- - Daemon-backed collaboration Sessions, manual and generated Text Resources, semantic Prompt
54
- reference insertion, structured transfer progress, and bounded download recovery.
55
-
56
- ### Changed
57
-
58
- - `createGenerationTarget` initializes an eligible default Draft in the same undoable interaction;
59
- prompt-only `editGenerationDraft` uses the same resolver when a historical target has no Draft.
60
- - Generation plans preserve their effective prompt and configuration when input modality switches
61
- to another Workflow Definition and rebuilds the target Draft.
62
- - Workflow summary, defaults, planning, reference edits, and generation start reject Definitions
63
- unavailable to the authenticated account. `available:free` is treated only as free-tier access,
64
- never as pricing evidence.
65
- - Agent guidance prioritizes one foreground `session watch`, early visible targets, authoritative
66
- planning, and explicit reconciliation instead of polling, guessed At syntax, or write retries.
67
-
68
- ### Safety and compatibility
69
-
70
- - Public writes remain semantic Operations backed by internal Commands. No Workflow preference,
71
- access rule, or Watch enrichment grants a raw Canvas mutation path.
72
- - Local preferences contain only a Definition id and sanitized scalar config values; they never
73
- contain credentials, prompts, media URLs, or Project data.
74
- - Stable protocol `1.0`, sequential write blocking, no automatic write retry, and explicit
75
- generation acceptance/completion boundaries remain unchanged from `0.2.0`.
76
-
77
- ## 0.3.0-preview.3 - 2026-07-23
78
-
79
- ### Added
80
-
81
- - Every collaborative Session receives discoverable Workflow terminal events by default, including
82
- the Workflow Run, target View Node, and output Core Node identities.
83
- - Prompt references can be inserted before or after an exact text occurrence without exposing raw
84
- Canvas data.
85
- - Media uploads report structured stage, byte, and percentage progress across one-shot, persistent
86
- stdio, and daemon-backed Session transports.
87
-
88
- ### Changed
89
-
90
- - Media downloads use bounded read-only retries under one caller deadline, clean partial files, and
91
- return structured, credential-safe transport diagnostics when recovery fails.
92
- - The built-in agent Skill prioritizes a single foreground `session watch` call, warns against
93
- background polling loops, and documents terminal reconciliation and exact Prompt placement.
94
-
95
- ### Safety and compatibility
96
-
97
- - User Workflow Interests remain additive and cannot disable the system terminal stream.
98
- - Download retries never extend the caller deadline or apply to definitive verification failures.
99
- - Upload progress is provisional observability and cannot change the semantic Operation result.
100
-
101
- ## 0.3.0-preview.2 - 2026-07-23
102
-
103
- ### Added
104
-
105
- - Cursor-only Awareness acknowledgement after a remote Canvas Watch delivery has been flushed and
106
- internally acknowledged.
107
- - Advisory `data.createdByCli` provenance on every View Node created through the CLI.
108
-
109
- ### Changed
110
-
111
- - CLI-created Notes retain the authenticated Actor id and display the current client suffix in
112
- their visible creator label.
113
- - Ordinary Resource View Nodes no longer receive invented generic creator metadata.
114
- - The built-in agent Skill recommends early visible generation targets and empty Text Resources
115
- when artifact type and placement are already unambiguous.
116
-
117
- ### Safety and compatibility
118
-
119
- - Delivery Awareness never responds to the CLI's own changes, never publishes Selection, and does
120
- not represent understanding or completion.
121
- - Editing an existing View Node preserves its creation provenance; duplicating stamps the new node
122
- with the current client suffix.
123
-
124
- ## 0.3.0-preview.1 - 2026-07-23
125
-
126
- ### Added
127
-
128
- - Manual Text Resources through `createTextNode` and `editTextContent`, generated Text targets
129
- through `createGenerationTarget`, and Web-compatible Note accents through `setNoteColor`.
130
- - Daemon-backed Agent Collaboration Sessions through `az8 session`, with one isolated local daemon
131
- per Session, current-context discovery, retained authenticated Canvas lifecycle, semantic
132
- Operations and queries, Interests, bounded Watch delivery, and explicit close.
133
- - A single semantic collaboration Watch for Canvas, Workflow, and Session facts, with bounded recent
134
- history, pending continuity inspection, at-least-once stdout delivery, and explicit
135
- resynchronization after journal loss.
136
-
137
- ### Changed
138
-
139
- - New generation references accept only visible Canvas View Node identities. Content available only
140
- as a Core Node must first be placed with `placeCoreNode`, preserving Web's inferred connection
141
- lines and preventing ambiguous placement selection.
142
- - Agent authoring now defaults to daemon-backed Sessions. Persistent stdio remains the lower-level
143
- carrier, while one-shot remains limited to isolated reads, standalone transfers, explicit caller
144
- choice, or hosts that cannot retain a collaborative client.
145
- - Numeric Workflow configuration enums normalize transport string values back to their declared
146
- numeric domain before planning validation, matching Web behavior.
147
-
148
- ### Safety and compatibility
149
-
150
- - Tokens remain outside command arguments, daemon descriptors, and the private daemon protocol.
151
- - Session writes remain serialized and never retry automatically. Queries wait behind executing
152
- writes; Watch collection remains independent.
153
- - The initial local daemon transport supports macOS and Linux. Windows remains explicitly
154
- unsupported until the same private Session carrier is hosted through a named pipe.
155
-
156
- ## 0.2.0 - 2026-07-22
157
-
158
- First stable semantic Project Canvas client for agents.
159
-
160
- ### Added
161
-
162
- - Project management, persistent NDJSON Canvas collaboration, one-shot compatibility wrappers,
163
- semantic note and hierarchy authoring, Core Node generation, Workflow observation, and safe local
164
- media upload/download.
165
- - A runtime-discoverable built-in agent Skill covering platform concepts, capability discovery,
166
- persistent request/process lifecycle, generation sequencing, recovery, and prohibited bypasses.
167
- - Commander 15 command routing and generated help, with Zod 4 schemas for typed option and
168
- cross-option validation.
169
-
170
- ### Changed
171
-
172
- - Source is grouped into `src/cli`, `src/commands`, `src/canvas`, `src/media`, `src/integrations`,
173
- `src/guide`, `src/schemas`, `src/errors`, and `src/utils`; tests remain colocated and domain
174
- modules remain framework-independent.
175
- - The CLI and repository development contract now require Node.js 22.12 or newer.
176
-
177
- ### Stability contract
178
-
179
- - Public Canvas writes remain available only through semantic Operations and internal Commands;
180
- callers cannot write raw backend, Yjs, Core Node, or Project Content data.
181
- - Protocol `1.0`, ordered request/Receipt behavior, authenticated presence, no automatic write retry,
182
- and explicit deferred scopes form the initial stable compatibility boundary.
183
- - 3D World, Asset aggregate management, automatic layout, media replacement, and batch upload remain
184
- intentionally deferred rather than partially exposed.
185
-
186
- ## 0.2.0-preview.5 - 2026-07-22
187
-
188
- ### Changed
189
-
190
- - Canvas awareness names now preserve the authenticated user's Web-equivalent display name first
191
- and append a CLI-owned parenthesized client suffix, defaulting to `(cli)`.
192
- - `--client-name <suffix>` may override the client suffix for persistent and one-shot lifecycles,
193
- but caller-provided parentheses are rejected so presence cannot obscure the name boundary.
194
- - CLI attention awareness now publishes only the semantic cursor and omits selection bounds.
195
- - `startGeneration` now carries valid Workflow execution-time estimates into the View Node's
196
- generation history as Web-compatible median and maximum completion timestamps.
197
-
198
- ## 0.2.0-preview.4 - 2026-07-22
199
-
200
- ### Changed
201
-
202
- - Persistent NDJSON stdio is now the default interaction mode for every Canvas authoring task,
203
- including a plan containing only one write.
204
- - One-shot is limited to isolated reads, standalone transfers, explicit caller choice, or hosts that
205
- genuinely cannot retain a child process; fewer tool calls alone is not a valid reason to use it.
206
- - The outer repository Skill now requires preview.4 so a newly triggered agent receives this mode
207
- selection policy.
208
-
209
- ## 0.2.0-preview.3 - 2026-07-21
210
-
211
- ### Changed
212
-
213
- - The built-in Skill now treats credentials as an operator or agent-host provisioning precondition
214
- and explains inherited environment, default `.env.local`, and explicit `--env-file` resolution.
215
- - Authentication is verified with a bounded Project read without inspecting, printing, copying, or
216
- editing the token source.
217
- - The shell example that could encourage an agent to type a real token into a recorded interaction
218
- has been removed, and missing or invalid credentials now direct the agent back to secure external
219
- provisioning.
220
-
221
- ## 0.2.0-preview.2 - 2026-07-21
222
-
223
- ### Added
224
-
225
- - A platform-neutral built-in agent Skill available through `az8 guide` without credentials or a
226
- network connection.
227
- - Section-level Markdown and versioned JSON guide output for progressive discovery.
228
- - Agent onboarding for platform concepts, runtime capability discovery, first-session, Canvas,
229
- generation and media SOPs, failure recovery, prohibited actions, and completion checks.
230
-
231
- ### Safety and compatibility
232
-
233
- - The Skill never replaces Project-scoped `capabilities.detail` or Workflow Definition discovery;
234
- dynamic schemas, permissions, completion, History, and retry policy remain runtime-authoritative.
235
- - Existing semantic Operations and protocol version `1.0` are unchanged.
236
-
237
- ## 0.2.0-preview.1 - 2026-07-21
238
-
239
- First installable internal preview.
240
-
241
- ### Added
242
-
243
- - Project list, detail, create, and rename commands.
244
- - Persistent NDJSON stdio Canvas client with lifecycle, awareness, observations, Receipts,
245
- reconnect, explicit shutdown, backpressure, and authenticated actor identity.
246
- - One-shot wrappers over the same Canvas Client and semantic Operation Registry.
247
- - Note lifecycle, non-World hierarchy, History, summary/detail inspection, and Core Node placement.
248
- - Generation Planning, Draft editing, Visual References, Workflow start, status query, and bounded
249
- wait semantics with credit-usage information.
250
- - Public media URL import and safe local image/video/audio upload and download.
251
-
252
- ### Safety and compatibility
253
-
254
- - Canvas writes are available only through semantic Operations and Commands.
255
- - Writes are serialized, never automatically retried, and isolate the Canvas context after an
256
- indeterminate result. Read retry remains bounded.
257
- - Tokens are accepted only through environment variables or env files and are redacted from
258
- program interaction and diagnostics.
259
- - 3D World, Asset aggregate management, automatic layout, media replacement, and batch upload are
260
- intentionally not part of this preview.
package/RELEASE.md DELETED
@@ -1,93 +0,0 @@
1
- # AZ8 CLI release
2
-
3
- `latest` is the stable release channel. Preview versions remain immutable historical artifacts and
4
- must not be republished or renamed into a stable version.
5
-
6
- ## Release gate
7
-
8
- From the repository root:
9
-
10
- ```bash
11
- pnpm release:az8-cli
12
- pnpm release:pack:az8-cli
13
- ```
14
-
15
- The first command rebuilds the CLI's classified workspace dependencies, runs CLI tests and type
16
- checking, builds a real npm tarball, installs that tarball in a clean temporary directory, and
17
- verifies the installed `az8` executable. The second repeats the dependency-aware prepack and
18
- preserves the verified tarball and clean installation under `tmp/az8-cli-release/` for live
19
- acceptance. Never bundle against pre-existing workspace `dist/` output.
20
-
21
- Run the live smoke only against the test environment. It creates one Project unless `--project-id`
22
- reuses an explicit test Project, starts one visible-reference image generation, and uploads one
23
- generated 512×512 PNG:
24
-
25
- ```bash
26
- node apps/az8-cli/scripts/smoke-test.js \
27
- --bin ./tmp/az8-cli-release/install/node_modules/.bin/az8 \
28
- --env-file ./.env.local
29
- ```
30
-
31
- The smoke report must show authenticated persistent stdio, ordered shutdown, a completed Workflow
32
- Run whose target resolves its output Core Node, upload replay without another transfer, and matching
33
- download SHA-256. `--skip-generation` is only for diagnosing unrelated media or transport checks;
34
- it cannot satisfy full release acceptance. When the release changes generation-time projection,
35
- select a timing-enabled test Definition and require its persisted Web estimate:
36
-
37
- ```bash
38
- node apps/az8-cli/scripts/smoke-test.js \
39
- --bin ./tmp/az8-cli-release/install/node_modules/.bin/az8 \
40
- --env-file ./.env.local \
41
- --generation-definition-id <timing-enabled-test-definition-id> \
42
- --require-generation-estimate
43
- ```
44
-
45
- When a release changes Text generation, add one bounded Text Workflow to the smoke with a known
46
- test Definition. This is additive to the image acceptance unless the image path is being diagnosed
47
- separately:
48
-
49
- ```bash
50
- node apps/az8-cli/scripts/smoke-test.js \
51
- --bin ./tmp/az8-cli-release/install/node_modules/.bin/az8 \
52
- --env-file ./.env.local \
53
- --text-generation-definition-id <test-text-definition-id>
54
- ```
55
-
56
- Before publishing, also run the test-environment acceptance checklist in the packaged README and the
57
- repository-wide `pnpm verify`. Publishing is an external action and requires explicit operator
58
- authorization:
59
-
60
- For the `0.4.0` stable candidate, publish the exact retained artifact to the stable channel only
61
- after its test-environment acceptance succeeds:
62
-
63
- ```bash
64
- npm publish ./tmp/az8-cli-release/everfir-az8-cli-0.4.0.tgz --tag latest
65
- npm view @everfir/az8-cli dist-tags versions --json
66
- ```
67
-
68
- Publish only the exact retained tarball whose SHA-512 appears in its release verification record.
69
- Do not publish from an unverified source directory, retag a preview artifact as stable, or rebuild
70
- after acceptance. If the obsolete misspelled `prewview` tag still exists, remove that tag without
71
- unpublishing its immutable version:
72
-
73
- ```bash
74
- npm dist-tag rm @everfir/az8-cli prewview
75
- npm view @everfir/az8-cli dist-tags --json
76
- ```
77
-
78
- ## Rollback
79
-
80
- Published versions are immutable. Rollback moves `latest` to a previously verified stable version
81
- instead of unpublishing or overwriting a package:
82
-
83
- ```bash
84
- npm dist-tag add @everfir/az8-cli@<previous-stable-version> latest
85
- npm view @everfir/az8-cli dist-tags --json
86
- npm install --global @everfir/az8-cli
87
- az8 --version
88
- ```
89
-
90
- For tarball distribution, retain every verified `.tgz`; reinstall the previous tarball and confirm
91
- `az8 --version`. A rollback changes only the installed client. It never reverses already
92
- acknowledged Project or Canvas effects; agents must use semantic compensation or Canvas History for
93
- product data.