@ai-matrx/desktop-protocol 0.21.48 → 0.21.50
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 +21 -0
- package/dist/client.cjs +53 -2
- package/dist/client.cjs.map +1 -1
- package/dist/client.d.cts +2 -2
- package/dist/client.d.ts +2 -2
- package/dist/client.js +53 -2
- package/dist/client.js.map +1 -1
- package/dist/index.cjs +73 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +153 -10
- package/dist/index.d.ts +153 -10
- package/dist/index.js +73 -3
- package/dist/index.js.map +1 -1
- package/dist/{models-78R7DKfg.d.cts → models-CqgbnWpk.d.cts} +229 -9
- package/dist/{models-78R7DKfg.d.ts → models-CqgbnWpk.d.ts} +229 -9
- package/dist/react.d.cts +100 -2
- package/dist/react.d.ts +100 -2
- package/generated/desktop-protocol.schema.json +395 -2
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.21.50
|
|
4
|
+
### Unreleased
|
|
5
|
+
### Protocol 1.55 — copy chats to another account with their organisation
|
|
6
|
+
|
|
7
|
+
- New op `apps.chats.copy_to_account` ({origin, target, chat_ids, mode, restart, mirror_groups,
|
|
8
|
+
pins_follow, source_group}): one engine pass; each chat lands in the target group named as its
|
|
9
|
+
origin group (made when missing), pins follow, a copy groups them in the origin as `source_group`,
|
|
10
|
+
and every chat is read back (`state` verified | queued | failed, with `reason`). `restart:
|
|
11
|
+
"restart_verify"` closes both windows, applies, verifies and reopens them; a window with chats
|
|
12
|
+
running falls back to queued and says why (`restart.reason`).
|
|
13
|
+
Consumer action: call it once for the whole selection; a 1.54 core answers UNKNOWN_OPERATION.
|
|
14
|
+
|
|
15
|
+
## 0.21.49
|
|
16
|
+
### Unreleased
|
|
17
|
+
### Protocol 1.54 — a default model can come from the account
|
|
18
|
+
|
|
19
|
+
- `CodingProviderStatus.defaultModel.source` gains `"account"` (the signed-in account's default model,
|
|
20
|
+
e.g. Codex's; @ai-matrx/coding-sessions >= 0.3.235 emits it). `forPeer` sends a 1.53 peer `"driver"`
|
|
21
|
+
instead, so its strict enum never refuses the whole `coding.providers` answer.
|
|
22
|
+
Consumer action: label `"account"` as the account's default; a core on 1.53 or older cannot carry it.
|
|
23
|
+
|
|
3
24
|
## 0.21.48
|
|
4
25
|
### Unreleased
|
|
5
26
|
### Protocol 1.53 — one coding account list
|
package/dist/client.cjs
CHANGED
|
@@ -144,7 +144,7 @@ var import_zod2 = require("zod");
|
|
|
144
144
|
var import_zod = require("zod");
|
|
145
145
|
var import_uuid = require("@ai-matrx/kit/uuid");
|
|
146
146
|
var PROTOCOL_MAJOR = 1;
|
|
147
|
-
var PROTOCOL_MINOR =
|
|
147
|
+
var PROTOCOL_MINOR = 55;
|
|
148
148
|
var PROTOCOL_VERSION = `${PROTOCOL_MAJOR}.${PROTOCOL_MINOR}`;
|
|
149
149
|
var ProtocolVersion = import_zod.z.string().regex(/^[1-9][0-9]{0,2}\.[0-9]{1,3}$/);
|
|
150
150
|
var RequestId = import_zod.z.string().min(1).max(64).regex(/^[A-Za-z0-9_-]+$/);
|
|
@@ -2566,7 +2566,12 @@ var CodingProviderStatus = import_zod28.z.strictObject({
|
|
|
2566
2566
|
quota: import_zod28.z.array(CodingQuotaWindow).max(20),
|
|
2567
2567
|
models: import_zod28.z.array(import_zod28.z.strictObject({ id: import_zod28.z.string().max(200), label: import_zod28.z.string().max(200) })).max(200),
|
|
2568
2568
|
efforts: import_zod28.z.array(import_zod28.z.string().max(40)).max(20),
|
|
2569
|
-
|
|
2569
|
+
/**
|
|
2570
|
+
* Where the default model came from: the app's own settings file, the account (1.54: the signed-in
|
|
2571
|
+
* account's default, e.g. Codex's), or the driver's built-in pick. A peer older than 1.54 is sent
|
|
2572
|
+
* "driver" for "account" (its enum does not know the value).
|
|
2573
|
+
*/
|
|
2574
|
+
defaultModel: import_zod28.z.strictObject({ id: import_zod28.z.string().max(200), source: import_zod28.z.enum(["settings", "driver", "account"]) }).nullable(),
|
|
2570
2575
|
defaultEffort: import_zod28.z.string().max(40).nullable(),
|
|
2571
2576
|
binary: CodingProviderBinary.nullable(),
|
|
2572
2577
|
/**
|
|
@@ -3448,6 +3453,50 @@ var AppsWindowsUpdateAndReopenResult = import_zod31.z.strictObject({
|
|
|
3448
3453
|
/** The version installed, null when the install did not happen (or dry_run). */
|
|
3449
3454
|
installed_version: import_zod31.z.string().max(64).nullable()
|
|
3450
3455
|
});
|
|
3456
|
+
var AppsChatsCopyToAccountParams = import_zod31.z.strictObject({
|
|
3457
|
+
app_key: AppKey,
|
|
3458
|
+
origin: ChatPlace,
|
|
3459
|
+
target: ChatPlace,
|
|
3460
|
+
chat_ids: import_zod31.z.array(ChatId).min(1).max(500),
|
|
3461
|
+
mode: import_zod31.z.enum(["copy", "move"]).default("copy"),
|
|
3462
|
+
restart: import_zod31.z.enum(["queued", "restart_verify"]).default("queued"),
|
|
3463
|
+
/** Put each chat in the target group named as its origin group (default true). */
|
|
3464
|
+
mirror_groups: import_zod31.z.boolean().default(true),
|
|
3465
|
+
/** Pin in the target the chats pinned in the origin (default true). */
|
|
3466
|
+
pins_follow: import_zod31.z.boolean().default(true),
|
|
3467
|
+
/** A copy: group them in the origin under this name ("Copied to <target>"). */
|
|
3468
|
+
source_group: import_zod31.z.string().trim().min(1).max(200).optional()
|
|
3469
|
+
});
|
|
3470
|
+
var CopiedChat = import_zod31.z.strictObject({
|
|
3471
|
+
chat_id: ChatId,
|
|
3472
|
+
title: import_zod31.z.string().max(500),
|
|
3473
|
+
outcome: import_zod31.z.enum(["copied", "moved", "already", "skipped"]),
|
|
3474
|
+
/** The target group it was put in (its origin group's name), or null. */
|
|
3475
|
+
group: import_zod31.z.string().max(200).nullable(),
|
|
3476
|
+
group_state: import_zod31.z.enum(["now", "next_close", "failed"]).nullable(),
|
|
3477
|
+
pinned: import_zod31.z.boolean(),
|
|
3478
|
+
pin_state: import_zod31.z.enum(["now", "next_close", "failed"]).nullable(),
|
|
3479
|
+
/** The read-back: verified, waiting for a window to close (queued), or failed. */
|
|
3480
|
+
state: import_zod31.z.enum(["verified", "queued", "failed"]),
|
|
3481
|
+
reason: import_zod31.z.string().max(400).nullable()
|
|
3482
|
+
});
|
|
3483
|
+
var AppsChatsCopyToAccountResult = import_zod31.z.strictObject({
|
|
3484
|
+
message: import_zod31.z.string().max(400),
|
|
3485
|
+
origin: ChatPlace,
|
|
3486
|
+
target: ChatPlace,
|
|
3487
|
+
mode: import_zod31.z.enum(["copy", "move"]),
|
|
3488
|
+
/** The marker the chats are filed under ("From <origin>"), for Bring back. */
|
|
3489
|
+
project: import_zod31.z.strictObject({ id: ChatProjectId, name: import_zod31.z.string().max(200) }),
|
|
3490
|
+
/** The target groups used, by name: made or reused, now or at the next close. */
|
|
3491
|
+
groups: import_zod31.z.array(import_zod31.z.strictObject({ name: import_zod31.z.string().max(200), chats: import_zod31.z.number().int().nonnegative(), ok: import_zod31.z.boolean(), when: import_zod31.z.enum(["now", "next_close"]).nullable(), reason: import_zod31.z.string().max(400).nullable() })).max(500),
|
|
3492
|
+
source_group: import_zod31.z.strictObject({ name: import_zod31.z.string().max(200), ok: import_zod31.z.boolean(), when: import_zod31.z.enum(["now", "next_close"]).nullable(), reason: import_zod31.z.string().max(400).nullable() }).nullable(),
|
|
3493
|
+
chats: import_zod31.z.array(CopiedChat).max(500),
|
|
3494
|
+
verified: import_zod31.z.number().int().nonnegative(),
|
|
3495
|
+
queued: import_zod31.z.number().int().nonnegative(),
|
|
3496
|
+
failed: import_zod31.z.number().int().nonnegative(),
|
|
3497
|
+
/** What the restart choice did: "restart_verify" closed and reopened `windows`; a fall back to "queued" says why. */
|
|
3498
|
+
restart: import_zod31.z.strictObject({ asked: import_zod31.z.enum(["queued", "restart_verify"]), done: import_zod31.z.enum(["queued", "restart_verify"]), windows: import_zod31.z.array(ChatPlace).max(2), reason: import_zod31.z.string().max(400).nullable() })
|
|
3499
|
+
});
|
|
3451
3500
|
|
|
3452
3501
|
// src/schema/apps-instances.ts
|
|
3453
3502
|
var import_zod32 = require("zod");
|
|
@@ -4383,6 +4432,8 @@ var OPS = {
|
|
|
4383
4432
|
"apps.projects.move": { params: AppsProjectsMoveParams, result: AppsProjectsMoveResult, kind: "unary", since: "1.10", errors: ["NOT_FOUND", "INVALID_PARAMS", "CONFLICT", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
4384
4433
|
"apps.projects.create": { params: AppsProjectsCreateParams, result: AppsProjectsCreateResult, kind: "unary", since: "1.10", errors: ["INVALID_PARAMS", "CONFLICT", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
4385
4434
|
"apps.projects.import_pins": { params: AppsProjectsImportPinsParams, result: AppsProjectsImportPinsResult, kind: "unary", since: "1.10", errors: ["CONFLICT", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
4435
|
+
// 1.55: copy (or move) chats to another account with their groups and pins, in one engine pass, read back.
|
|
4436
|
+
"apps.chats.copy_to_account": { params: AppsChatsCopyToAccountParams, result: AppsChatsCopyToAccountResult, kind: "unary", since: "1.55", errors: ["NOT_FOUND", "INVALID_PARAMS", "CONFLICT", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
4386
4437
|
"apps.projects.to_window": { params: AppsProjectsToWindowParams, result: AppsProjectsToWindowResult, kind: "unary", since: "1.19", errors: ["NOT_FOUND", "INVALID_PARAMS", "CONFLICT", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
4387
4438
|
// 1.11: Going cold, Spend, sync health, windows upkeep.
|
|
4388
4439
|
"apps.chats.cold": { params: AppsChatsColdParams, result: AppsChatsColdResult, kind: "unary", since: "1.11", errors: ["NOT_FOUND", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|