@everfir/az8-cli 0.3.0-preview.2 → 0.3.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/CHANGELOG.md +58 -0
- package/README.md +40 -13
- package/RELEASE.md +6 -6
- package/dist/main.js +1191 -434
- package/package.json +2 -2
- package/skills/az8-cli/SKILL.md +65 -16
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,64 @@ it does not inherit the Web application or monorepo root version.
|
|
|
5
5
|
|
|
6
6
|
## Unreleased
|
|
7
7
|
|
|
8
|
+
## 0.3.0 - 2026-07-23
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- Account-aware Workflow discovery and selection, using the same free-account eligibility rule as
|
|
13
|
+
Web while keeping unavailable historical Definitions inspectable in detail.
|
|
14
|
+
- Web-equivalent default generation Drafts and private local Workflow preferences scoped by
|
|
15
|
+
environment, authenticated account, and output content type.
|
|
16
|
+
- Truthful terminal Workflow target identity derived from retained launch facts or unique Canvas
|
|
17
|
+
History, with explicit unresolved and ambiguous states when evidence is insufficient.
|
|
18
|
+
- Daemon-backed collaboration Sessions, manual and generated Text Resources, semantic Prompt
|
|
19
|
+
reference insertion, structured transfer progress, and bounded download recovery.
|
|
20
|
+
|
|
21
|
+
### Changed
|
|
22
|
+
|
|
23
|
+
- `createGenerationTarget` initializes an eligible default Draft in the same undoable interaction;
|
|
24
|
+
prompt-only `editGenerationDraft` uses the same resolver when a historical target has no Draft.
|
|
25
|
+
- Generation plans preserve their effective prompt and configuration when input modality switches
|
|
26
|
+
to another Workflow Definition and rebuilds the target Draft.
|
|
27
|
+
- Workflow summary, defaults, planning, reference edits, and generation start reject Definitions
|
|
28
|
+
unavailable to the authenticated account. `available:free` is treated only as free-tier access,
|
|
29
|
+
never as pricing evidence.
|
|
30
|
+
- Agent guidance prioritizes one foreground `session watch`, early visible targets, authoritative
|
|
31
|
+
planning, and explicit reconciliation instead of polling, guessed At syntax, or write retries.
|
|
32
|
+
|
|
33
|
+
### Safety and compatibility
|
|
34
|
+
|
|
35
|
+
- Public writes remain semantic Operations backed by internal Commands. No Workflow preference,
|
|
36
|
+
access rule, or Watch enrichment grants a raw Canvas mutation path.
|
|
37
|
+
- Local preferences contain only a Definition id and sanitized scalar config values; they never
|
|
38
|
+
contain credentials, prompts, media URLs, or Project data.
|
|
39
|
+
- Stable protocol `1.0`, sequential write blocking, no automatic write retry, and explicit
|
|
40
|
+
generation acceptance/completion boundaries remain unchanged from `0.2.0`.
|
|
41
|
+
|
|
42
|
+
## 0.3.0-preview.3 - 2026-07-23
|
|
43
|
+
|
|
44
|
+
### Added
|
|
45
|
+
|
|
46
|
+
- Every collaborative Session receives discoverable Workflow terminal events by default, including
|
|
47
|
+
the Workflow Run, target View Node, and output Core Node identities.
|
|
48
|
+
- Prompt references can be inserted before or after an exact text occurrence without exposing raw
|
|
49
|
+
Canvas data.
|
|
50
|
+
- Media uploads report structured stage, byte, and percentage progress across one-shot, persistent
|
|
51
|
+
stdio, and daemon-backed Session transports.
|
|
52
|
+
|
|
53
|
+
### Changed
|
|
54
|
+
|
|
55
|
+
- Media downloads use bounded read-only retries under one caller deadline, clean partial files, and
|
|
56
|
+
return structured, credential-safe transport diagnostics when recovery fails.
|
|
57
|
+
- The built-in agent Skill prioritizes a single foreground `session watch` call, warns against
|
|
58
|
+
background polling loops, and documents terminal reconciliation and exact Prompt placement.
|
|
59
|
+
|
|
60
|
+
### Safety and compatibility
|
|
61
|
+
|
|
62
|
+
- User Workflow Interests remain additive and cannot disable the system terminal stream.
|
|
63
|
+
- Download retries never extend the caller deadline or apply to definitive verification failures.
|
|
64
|
+
- Upload progress is provisional observability and cannot change the semantic Operation result.
|
|
65
|
+
|
|
8
66
|
## 0.3.0-preview.2 - 2026-07-23
|
|
9
67
|
|
|
10
68
|
### Added
|
package/README.md
CHANGED
|
@@ -15,10 +15,10 @@ az8 help
|
|
|
15
15
|
az8 guide
|
|
16
16
|
```
|
|
17
17
|
|
|
18
|
-
For a supplied
|
|
18
|
+
For a supplied release artifact, install the exact immutable tarball instead:
|
|
19
19
|
|
|
20
20
|
```bash
|
|
21
|
-
npm install --global ./everfir-az8-cli-0.3.0
|
|
21
|
+
npm install --global ./everfir-az8-cli-0.3.0.tgz
|
|
22
22
|
az8 --version
|
|
23
23
|
```
|
|
24
24
|
|
|
@@ -114,12 +114,13 @@ az8 session query canvas.summary
|
|
|
114
114
|
|
|
115
115
|
The Session remains selected for the current canonical working directory, so subsequent commands do
|
|
116
116
|
not repeat its ID. Use `session current`, `list`, and `status` rather than guessing which Project or
|
|
117
|
-
daemon is active.
|
|
118
|
-
|
|
117
|
+
daemon is active. The visible, read-only `system.workflow-terminal` Interest automatically retains
|
|
118
|
+
terminal facts for locally started and remotely discovered pending Runs. Configure only additional
|
|
119
|
+
semantic Interests and block on one Watch call when collaboration updates matter:
|
|
119
120
|
|
|
120
121
|
```bash
|
|
121
122
|
az8 session interests patch \
|
|
122
|
-
--input-json '{"upsert":[{"key":"canvas-ambient","patch":{"kind":"canvas"}}
|
|
123
|
+
--input-json '{"upsert":[{"key":"canvas-ambient","patch":{"kind":"canvas"}}]}'
|
|
123
124
|
az8 session watch --timeout-ms 30000
|
|
124
125
|
az8 session close
|
|
125
126
|
```
|
|
@@ -127,6 +128,9 @@ az8 session close
|
|
|
127
128
|
`watch` returning `idle` is a successful empty observation window, not a connection error. Exactly
|
|
128
129
|
one caller may wait on a Session. The daemon retains the authenticated connection and collaboration
|
|
129
130
|
state between short CLI invocations, but it does not wake or restart an Agent that has exited.
|
|
131
|
+
Agents should call exactly one Watch in the foreground whenever waiting is useful, process the
|
|
132
|
+
result, then call it once again if needed. Do not build a shell loop, background Watch, or polling
|
|
133
|
+
substitute; those add scheduling delay and can consume an event before the Agent reasons about it.
|
|
130
134
|
|
|
131
135
|
For a manual human–Agent interaction latency check, have the Agent report that it is ready, start
|
|
132
136
|
one 60-second Watch, and only then make one recognizable Canvas change from Web:
|
|
@@ -144,12 +148,16 @@ the CLI's local observation-to-delivery delay; neither includes speech recogniti
|
|
|
144
148
|
host's scheduling time. Repeat only a small bounded sample, keep the Session open between trials,
|
|
145
149
|
and remove the temporary Interest or close the Session afterward.
|
|
146
150
|
|
|
147
|
-
For generation, create a target with `createGenerationTarget` (including `contentType: "text"`)
|
|
148
|
-
|
|
151
|
+
For generation, create a target with `createGenerationTarget` (including `contentType: "text"`).
|
|
152
|
+
Creation initializes an account-eligible default Draft when available and reports
|
|
153
|
+
`draftInitialized`, `definitionId`, and `selectionSource`; it never starts generation. Call
|
|
154
|
+
`planGeneration` with the returned View Node and a prompt. Execute its returned
|
|
149
155
|
`plan.operations` in order, stopping after the first failure. A
|
|
150
156
|
successful `startGeneration` Receipt contains the Workflow Run identity; call `waitWorkflowRun`
|
|
151
157
|
separately when a terminal output is required. Planning and starting are intentionally not one
|
|
152
|
-
transaction.
|
|
158
|
+
transaction. In an active Session, prefer one foreground `session watch`: the system terminal event
|
|
159
|
+
includes the target View Node only when it can be mapped uniquely from authoritative launch or
|
|
160
|
+
Canvas History facts; unresolved or ambiguous mappings are reported rather than guessed.
|
|
153
161
|
|
|
154
162
|
For media transfer, `canvas upload` places a verified local image/video/audio file through the
|
|
155
163
|
server-owned Core Node path. After detail query resolves the target's `resolvedCoreNodeId`, `canvas
|
|
@@ -232,8 +240,10 @@ Project Content through a deterministic, opaque intent fingerprint in its source
|
|
|
232
240
|
existing binding returns without another upload, while conflicting key reuse fails. Results include
|
|
233
241
|
View Node/Core Node identities and reproducible file metadata but never the presigned or permanent
|
|
234
242
|
file URL. The wrapper uses the standard `az8.canvas.one-shot.v1` output and exit codes and defaults
|
|
235
|
-
to a 300-second deadline.
|
|
236
|
-
|
|
243
|
+
to a 300-second deadline. Uploads emit rate-limited `az8.operation-progress.v1` lines to stderr for
|
|
244
|
+
`inspecting`, `requesting-upload`, `uploading`, `creating-content`, and `updating-canvas`; final
|
|
245
|
+
stdout remains one structured result and only its Receipt is authoritative. Batch upload,
|
|
246
|
+
replacement, text-file import, and a durable local upload cache are outside the initial slice.
|
|
237
247
|
|
|
238
248
|
## Local media download
|
|
239
249
|
|
|
@@ -262,8 +272,12 @@ Success writes one `az8.canvas.media-download.v1` document with the absolute pat
|
|
|
262
272
|
SHA-256, detected MIME/extension, response metadata, resolved Core Node identity, and whether a file
|
|
263
273
|
was replaced. It deliberately omits the media URL. Exit `0` is success; exit `1` is a definitive
|
|
264
274
|
source, HTTP 4xx, or local-path failure; exit `2` is a retryable connection, HTTP 429/5xx, transfer,
|
|
265
|
-
|
|
266
|
-
|
|
275
|
+
or timeout failure; exit `130` is caller cancellation. Retryable read/transfer phases are
|
|
276
|
+
automatically attempted at most three times under the original deadline; every attempt re-resolves
|
|
277
|
+
the source and leaves no partial destination. Definitive failures, verification mismatch, timeout,
|
|
278
|
+
and cancellation are not retried. Failure output includes attempts, phase, retryability, sanitized
|
|
279
|
+
cause when available, local commit state, and remote-state certainty. After non-success, the agent
|
|
280
|
+
must use those facts to decide whether a new invocation is safe.
|
|
267
281
|
|
|
268
282
|
## Lower-level persistent stdio client
|
|
269
283
|
|
|
@@ -303,7 +317,14 @@ Node hierarchy operations, and the Stage 3 Core Node creative loop. Note operati
|
|
|
303
317
|
`addVisualReference`, `removeVisualReference`, `startGeneration`, `getWorkflowRun`, and
|
|
304
318
|
`waitWorkflowRun`. Capability detail is discoverable through `capabilities.detail`; callers should
|
|
305
319
|
use it instead of hard-coding input schemas. Workflow Definitions are available through
|
|
306
|
-
`workflowDefinitions.summary` and `workflowDefinition.detail` queries.
|
|
320
|
+
`workflowDefinitions.summary` and `workflowDefinition.detail` queries. Summary discovery, default
|
|
321
|
+
Drafts, planning, and generation start use only Definitions available to the authenticated account.
|
|
322
|
+
Detail may retain an unavailable historical Definition for diagnosis with
|
|
323
|
+
`availableForAccount: false` and an `accessReason`.
|
|
324
|
+
|
|
325
|
+
Workflow tags describe classification, compatibility, access, and rollout rather than price.
|
|
326
|
+
`available:free` means a free-tier account may select the Workflow; it does not mean zero-credit
|
|
327
|
+
generation. Credit claims must come from planning/start estimates or terminal usage records.
|
|
307
328
|
|
|
308
329
|
Before editing a Draft, an agent can call the read-only `planGeneration` Operation for an existing
|
|
309
330
|
generation target. It recommends a Definition from the target and resolved generation-reference modalities,
|
|
@@ -323,6 +344,12 @@ creates the Text Core Node only after the estimate succeeds. The published opera
|
|
|
323
344
|
`addVisualReference` and `removeVisualReference` are retained for compatibility and also carry these
|
|
324
345
|
planned Text bindings.
|
|
325
346
|
|
|
347
|
+
`insertPromptReference` additionally places the platform-owned At token at `start`, `end`, or
|
|
348
|
+
before/after an exact text anchor such as
|
|
349
|
+
`{"kind":"after","anchor":{"text":"豆豆","occurrence":2}}`. Occurrence is one-based and is optional
|
|
350
|
+
only for a unique anchor. Missing or ambiguous anchors fail without writing. Callers never construct
|
|
351
|
+
At syntax, binding IDs, or slot indexes.
|
|
352
|
+
|
|
326
353
|
```json
|
|
327
354
|
{"protocolVersion":"1.0","requestId":"plan-1","type":"operation","payload":{"name":"planGeneration","input":{"targetViewNodeId":"<target-id>","prompt":"A quiet observatory","references":[{"viewNodeId":"<reference-id>"}],"detail":"detail"}}}
|
|
328
355
|
```
|
package/RELEASE.md
CHANGED
|
@@ -57,18 +57,18 @@ Before publishing, also run the test-environment acceptance checklist in the pac
|
|
|
57
57
|
repository-wide `pnpm verify`. Publishing is an external action and requires explicit operator
|
|
58
58
|
authorization:
|
|
59
59
|
|
|
60
|
-
For
|
|
60
|
+
For the `0.3.0` stable candidate, publish the exact retained artifact to the stable channel only
|
|
61
|
+
after its test-environment acceptance succeeds:
|
|
61
62
|
|
|
62
63
|
```bash
|
|
63
|
-
npm publish ./tmp/az8-cli-release/everfir-az8-cli-0.3.0
|
|
64
|
+
npm publish ./tmp/az8-cli-release/everfir-az8-cli-0.3.0.tgz --tag latest
|
|
64
65
|
npm view @everfir/az8-cli dist-tags versions --json
|
|
65
66
|
```
|
|
66
67
|
|
|
67
68
|
Publish only the exact retained tarball whose SHA-512 appears in its release verification record.
|
|
68
|
-
Do not publish from an unverified source directory
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
version:
|
|
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
72
|
|
|
73
73
|
```bash
|
|
74
74
|
npm dist-tag rm @everfir/az8-cli prewview
|