zas-agent 0.9.0 → 0.10.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 +28 -1
- package/README.md +19 -4
- package/dist/cli.js +2692 -2361
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,32 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.10.0] - 2026-09-28
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
|
|
14
|
+
- Transfer telemetry. File and note sends, item downloads, and Directo sends
|
|
15
|
+
and receives (live and reliable delivery) report `transfer.started`,
|
|
16
|
+
`transfer.stage_started`, `transfer.slow` (after 30 s),
|
|
17
|
+
`transfer.phase_timing` and `transfer.finished`. Each report carries the
|
|
18
|
+
item category, the transport, byte counts, a size bucket, stage durations and
|
|
19
|
+
the outcome (success, failure or cancellation), joined by a random
|
|
20
|
+
per-attempt ID. No file name, content, path or channel name. The same
|
|
21
|
+
opt-out as `agent.tool_call` covers it. The telemetry notice names the new
|
|
22
|
+
fields.
|
|
23
|
+
|
|
24
|
+
- `plan_inactive`. A send, replace or Directo transfer in an organization
|
|
25
|
+
channel whose plan is inactive now says so, and names who can reactivate
|
|
26
|
+
it. It used to arrive as `upload_failed`, which told the agent to retry.
|
|
27
|
+
|
|
28
|
+
### Changed
|
|
29
|
+
|
|
30
|
+
- Reports never delay or fail a tool call. The `agent.tool_call` report is
|
|
31
|
+
sent after the answer, on a later tick. Transfer events are queued, at most
|
|
32
|
+
32 per batch, and sent in one request on a later tick. A report is one
|
|
33
|
+
request with a 2 s timeout and no retry. It is skipped when there is no
|
|
34
|
+
valid session, so it never starts or refreshes a sign-in.
|
|
35
|
+
|
|
10
36
|
## [0.9.0] - 2026-09-09
|
|
11
37
|
|
|
12
38
|
### Added
|
|
@@ -333,7 +359,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
333
359
|
two separate identities that cannot read each other's keys.
|
|
334
360
|
- Install snippets for Claude Code and Codex, printed by `zas-agent pair`.
|
|
335
361
|
|
|
336
|
-
[Unreleased]: https://github.com/soke1556/zas-agent/compare/v0.
|
|
362
|
+
[Unreleased]: https://github.com/soke1556/zas-agent/compare/v0.10.0...HEAD
|
|
363
|
+
[0.10.0]: https://github.com/soke1556/zas-agent/compare/v0.9.0...v0.10.0
|
|
337
364
|
[0.9.0]: https://github.com/soke1556/zas-agent/compare/v0.8.0...v0.9.0
|
|
338
365
|
[0.8.0]: https://github.com/soke1556/zas-agent/compare/v0.7.0...v0.8.0
|
|
339
366
|
[0.7.0]: https://github.com/soke1556/zas-agent/compare/v0.6.3...v0.7.0
|
package/README.md
CHANGED
|
@@ -159,8 +159,13 @@ The package refuses some of these on its own, before a request is made. The
|
|
|
159
159
|
ones marked *(server-side)* are enforced by the Zas server.
|
|
160
160
|
|
|
161
161
|
- **No channel you did not grant.** Not by name, not by id.
|
|
162
|
-
- **No shared channel you
|
|
163
|
-
|
|
162
|
+
- **No shared channel you joined, unless its owner allows it.** You can grant
|
|
163
|
+
a channel you joined, but the grant stays `grant_pending` until that
|
|
164
|
+
channel's owner allows this agent in Zas. The plan also caps how many of
|
|
165
|
+
these channels one agent holds: 2 on Free *(server-side)*.
|
|
166
|
+
- **No workspace channel, unless the organization allows agents.** A channel
|
|
167
|
+
an organization manages, or one you created inside its workspace, can be
|
|
168
|
+
granted only while the organization is active and an admin turned agents on
|
|
164
169
|
*(server-side)*.
|
|
165
170
|
- **No reading unless the grant says so.** `read` is a separate switch from
|
|
166
171
|
`send`; without it, `zas_list_items` and `zas_get_item` are refused.
|
|
@@ -200,6 +205,7 @@ string ever reaches a terminal.
|
|
|
200
205
|
| `agent_revoked` | The owner revoked this agent. |
|
|
201
206
|
| `agent_forbidden` | Only the account owner can do that. |
|
|
202
207
|
| `grant_missing` | This agent has no access to that channel. |
|
|
208
|
+
| `grant_pending` | That channel belongs to somebody else, and its owner has not allowed this agent yet. |
|
|
203
209
|
| `send_forbidden` | This agent cannot send to that channel. |
|
|
204
210
|
| `read_forbidden` | This agent cannot read that channel. |
|
|
205
211
|
| `direct_mode` | That channel is in Directo mode. |
|
|
@@ -215,6 +221,7 @@ string ever reaches a terminal.
|
|
|
215
221
|
| `fallback_unavailable` | Reliable delivery is not available right now. |
|
|
216
222
|
| `key_stale` | The channel key changed; the owner refreshes it by opening Zas. |
|
|
217
223
|
| `quota_exceeded` | The account reached its storage limit. |
|
|
224
|
+
| `plan_inactive` | The organization's plan is inactive, so sending to its channels is paused; the owner or a billing admin reactivates it. |
|
|
218
225
|
| `rate_limited` | Too many sends in a row. |
|
|
219
226
|
| `file_too_big` | The file is over the plan limit. |
|
|
220
227
|
| `duplicate` | That item is already in the channel. |
|
|
@@ -228,6 +235,12 @@ string ever reaches a terminal.
|
|
|
228
235
|
| `write_failed` | The download destination could not be written. |
|
|
229
236
|
| `pairing_expired` | The pairing expired; pair again. |
|
|
230
237
|
| `pairing_cancelled` | The owner cancelled the pairing. |
|
|
238
|
+
| `claim_mismatch` | The code does not match. |
|
|
239
|
+
| `pairing_not_approved` | Nobody has approved this pairing yet. |
|
|
240
|
+
| `pairing_claimed` | This pairing was already claimed; pair again. |
|
|
241
|
+
| `agent_limit` | The account cannot take another agent; the owner deletes one from Settings → Agents. |
|
|
242
|
+
| `grant_limit` | The plan allows fewer channels per agent than this pairing grants. |
|
|
243
|
+
| `foreign_limit` | The plan allows this agent fewer channels of other people than this pairing asks for. |
|
|
231
244
|
| `feature_disabled` | Agents are not enabled for this account yet. |
|
|
232
245
|
| `upload_failed` | The upload failed. |
|
|
233
246
|
| `oprf_failed` | Zas did not answer correctly while preparing the file. |
|
|
@@ -306,14 +319,16 @@ covers every profile on the machine; pairing again does not reset it.
|
|
|
306
319
|
|
|
307
320
|
What one report carries, and nothing else: the tool that ran, whether it
|
|
308
321
|
worked, the closed error code when it did not, which of four duration buckets
|
|
309
|
-
it fell in, and the package version.
|
|
322
|
+
it fell in, and the package version. Item transfers also report item category,
|
|
323
|
+
transport, byte counts, stage durations, and success/failure/cancellation, joined
|
|
324
|
+
by a random per-attempt ID. No file name, no file contents, no path,
|
|
310
325
|
no channel name, no error message, no stack.
|
|
311
326
|
|
|
312
327
|
Where it goes: to Zas, never to an analytics service directly. This package
|
|
313
328
|
holds no analytics token and opens no connection to a third party, so no
|
|
314
329
|
address of yours reaches one. The report is attributed to the Zas account the
|
|
315
330
|
agent is paired with, which the server reads from the session — the request
|
|
316
|
-
carries no
|
|
331
|
+
carries no account or content identifier. Nothing is reported before pairing, because
|
|
317
332
|
until then there is no account it could belong to.
|
|
318
333
|
|
|
319
334
|
A report is never allowed to matter: it is sent after the answer, waited on
|