@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/dist/index.cjs CHANGED
@@ -66,6 +66,8 @@ __export(src_exports, {
66
66
  AppsChatsChangedEvent: () => AppsChatsChangedEvent,
67
67
  AppsChatsColdParams: () => AppsChatsColdParams,
68
68
  AppsChatsColdResult: () => AppsChatsColdResult,
69
+ AppsChatsCopyToAccountParams: () => AppsChatsCopyToAccountParams,
70
+ AppsChatsCopyToAccountResult: () => AppsChatsCopyToAccountResult,
69
71
  AppsChatsListParams: () => AppsChatsListParams,
70
72
  AppsChatsListResult: () => AppsChatsListResult,
71
73
  AppsChatsOpenParams: () => AppsChatsOpenParams,
@@ -321,6 +323,7 @@ __export(src_exports, {
321
323
  ContactsSearchParams: () => ContactsSearchParams,
322
324
  ContactsSearchResult: () => ContactsSearchResult,
323
325
  ContractHash: () => ContractHash,
326
+ CopiedChat: () => CopiedChat,
324
327
  CoreToClientMsg: () => CoreToClientMsg,
325
328
  CoreToServiceMsg: () => CoreToServiceMsg,
326
329
  CreditMsg: () => CreditMsg,
@@ -886,7 +889,7 @@ module.exports = __toCommonJS(src_exports);
886
889
  var import_zod = require("zod");
887
890
  var import_uuid = require("@ai-matrx/kit/uuid");
888
891
  var PROTOCOL_MAJOR = 1;
889
- var PROTOCOL_MINOR = 53;
892
+ var PROTOCOL_MINOR = 55;
890
893
  var PROTOCOL_VERSION = `${PROTOCOL_MAJOR}.${PROTOCOL_MINOR}`;
891
894
  var ProtocolVersion = import_zod.z.string().regex(/^[1-9][0-9]{0,2}\.[0-9]{1,3}$/);
892
895
  var RequestId = import_zod.z.string().min(1).max(64).regex(/^[A-Za-z0-9_-]+$/);
@@ -2702,6 +2705,50 @@ var AppsWindowsUpdateAndReopenResult = import_zod14.z.strictObject({
2702
2705
  /** The version installed, null when the install did not happen (or dry_run). */
2703
2706
  installed_version: import_zod14.z.string().max(64).nullable()
2704
2707
  });
2708
+ var AppsChatsCopyToAccountParams = import_zod14.z.strictObject({
2709
+ app_key: AppKey,
2710
+ origin: ChatPlace,
2711
+ target: ChatPlace,
2712
+ chat_ids: import_zod14.z.array(ChatId).min(1).max(500),
2713
+ mode: import_zod14.z.enum(["copy", "move"]).default("copy"),
2714
+ restart: import_zod14.z.enum(["queued", "restart_verify"]).default("queued"),
2715
+ /** Put each chat in the target group named as its origin group (default true). */
2716
+ mirror_groups: import_zod14.z.boolean().default(true),
2717
+ /** Pin in the target the chats pinned in the origin (default true). */
2718
+ pins_follow: import_zod14.z.boolean().default(true),
2719
+ /** A copy: group them in the origin under this name ("Copied to <target>"). */
2720
+ source_group: import_zod14.z.string().trim().min(1).max(200).optional()
2721
+ });
2722
+ var CopiedChat = import_zod14.z.strictObject({
2723
+ chat_id: ChatId,
2724
+ title: import_zod14.z.string().max(500),
2725
+ outcome: import_zod14.z.enum(["copied", "moved", "already", "skipped"]),
2726
+ /** The target group it was put in (its origin group's name), or null. */
2727
+ group: import_zod14.z.string().max(200).nullable(),
2728
+ group_state: import_zod14.z.enum(["now", "next_close", "failed"]).nullable(),
2729
+ pinned: import_zod14.z.boolean(),
2730
+ pin_state: import_zod14.z.enum(["now", "next_close", "failed"]).nullable(),
2731
+ /** The read-back: verified, waiting for a window to close (queued), or failed. */
2732
+ state: import_zod14.z.enum(["verified", "queued", "failed"]),
2733
+ reason: import_zod14.z.string().max(400).nullable()
2734
+ });
2735
+ var AppsChatsCopyToAccountResult = import_zod14.z.strictObject({
2736
+ message: import_zod14.z.string().max(400),
2737
+ origin: ChatPlace,
2738
+ target: ChatPlace,
2739
+ mode: import_zod14.z.enum(["copy", "move"]),
2740
+ /** The marker the chats are filed under ("From <origin>"), for Bring back. */
2741
+ project: import_zod14.z.strictObject({ id: ChatProjectId, name: import_zod14.z.string().max(200) }),
2742
+ /** The target groups used, by name: made or reused, now or at the next close. */
2743
+ groups: import_zod14.z.array(import_zod14.z.strictObject({ name: import_zod14.z.string().max(200), chats: import_zod14.z.number().int().nonnegative(), ok: import_zod14.z.boolean(), when: import_zod14.z.enum(["now", "next_close"]).nullable(), reason: import_zod14.z.string().max(400).nullable() })).max(500),
2744
+ source_group: import_zod14.z.strictObject({ name: import_zod14.z.string().max(200), ok: import_zod14.z.boolean(), when: import_zod14.z.enum(["now", "next_close"]).nullable(), reason: import_zod14.z.string().max(400).nullable() }).nullable(),
2745
+ chats: import_zod14.z.array(CopiedChat).max(500),
2746
+ verified: import_zod14.z.number().int().nonnegative(),
2747
+ queued: import_zod14.z.number().int().nonnegative(),
2748
+ failed: import_zod14.z.number().int().nonnegative(),
2749
+ /** What the restart choice did: "restart_verify" closed and reopened `windows`; a fall back to "queued" says why. */
2750
+ restart: import_zod14.z.strictObject({ asked: import_zod14.z.enum(["queued", "restart_verify"]), done: import_zod14.z.enum(["queued", "restart_verify"]), windows: import_zod14.z.array(ChatPlace).max(2), reason: import_zod14.z.string().max(400).nullable() })
2751
+ });
2705
2752
 
2706
2753
  // src/schema/apps-instances.ts
2707
2754
  var import_zod15 = require("zod");
@@ -4250,7 +4297,12 @@ var CodingProviderStatus = import_zod34.z.strictObject({
4250
4297
  quota: import_zod34.z.array(CodingQuotaWindow).max(20),
4251
4298
  models: import_zod34.z.array(import_zod34.z.strictObject({ id: import_zod34.z.string().max(200), label: import_zod34.z.string().max(200) })).max(200),
4252
4299
  efforts: import_zod34.z.array(import_zod34.z.string().max(40)).max(20),
4253
- defaultModel: import_zod34.z.strictObject({ id: import_zod34.z.string().max(200), source: import_zod34.z.enum(["settings", "driver"]) }).nullable(),
4300
+ /**
4301
+ * Where the default model came from: the app's own settings file, the account (1.54: the signed-in
4302
+ * account's default, e.g. Codex's), or the driver's built-in pick. A peer older than 1.54 is sent
4303
+ * "driver" for "account" (its enum does not know the value).
4304
+ */
4305
+ defaultModel: import_zod34.z.strictObject({ id: import_zod34.z.string().max(200), source: import_zod34.z.enum(["settings", "driver", "account"]) }).nullable(),
4254
4306
  defaultEffort: import_zod34.z.string().max(40).nullable(),
4255
4307
  binary: CodingProviderBinary.nullable(),
4256
4308
  /**
@@ -5322,6 +5374,8 @@ var OPS = {
5322
5374
  "apps.projects.move": { params: AppsProjectsMoveParams, result: AppsProjectsMoveResult, kind: "unary", since: "1.10", errors: ["NOT_FOUND", "INVALID_PARAMS", "CONFLICT", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
5323
5375
  "apps.projects.create": { params: AppsProjectsCreateParams, result: AppsProjectsCreateResult, kind: "unary", since: "1.10", errors: ["INVALID_PARAMS", "CONFLICT", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
5324
5376
  "apps.projects.import_pins": { params: AppsProjectsImportPinsParams, result: AppsProjectsImportPinsResult, kind: "unary", since: "1.10", errors: ["CONFLICT", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
5377
+ // 1.55: copy (or move) chats to another account with their groups and pins, in one engine pass, read back.
5378
+ "apps.chats.copy_to_account": { params: AppsChatsCopyToAccountParams, result: AppsChatsCopyToAccountResult, kind: "unary", since: "1.55", errors: ["NOT_FOUND", "INVALID_PARAMS", "CONFLICT", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
5325
5379
  "apps.projects.to_window": { params: AppsProjectsToWindowParams, result: AppsProjectsToWindowResult, kind: "unary", since: "1.19", errors: ["NOT_FOUND", "INVALID_PARAMS", "CONFLICT", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
5326
5380
  // 1.11: Going cold, Spend, sync health, windows upkeep.
5327
5381
  "apps.chats.cold": { params: AppsChatsColdParams, result: AppsChatsColdResult, kind: "unary", since: "1.11", errors: ["NOT_FOUND", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
@@ -6036,6 +6090,9 @@ var NAMED_SCHEMAS = {
6036
6090
  WindowRemoteControl,
6037
6091
  AppsWindowsSetRemoteControlParams,
6038
6092
  AppsWindowsSetRemoteControlResult,
6093
+ AppsChatsCopyToAccountParams,
6094
+ CopiedChat,
6095
+ AppsChatsCopyToAccountResult,
6039
6096
  AccountUsage,
6040
6097
  AccountReset,
6041
6098
  AppsWindowsListParams,
@@ -6547,6 +6604,18 @@ function windowListRemoteControlForPeer(value, version) {
6547
6604
  });
6548
6605
  return next.some((w, i) => w !== windows[i]) ? { ...body, windows: next } : value;
6549
6606
  }
6607
+ function providersDefaultSourceForPeer(value, version) {
6608
+ if (knows(version, "1.54") || value === null || typeof value !== "object") return value;
6609
+ const body = value;
6610
+ if (!Array.isArray(body.providers)) return value;
6611
+ const providers = body.providers;
6612
+ const next = providers.map((p) => {
6613
+ const dm = p?.defaultModel;
6614
+ if (dm === null || typeof dm !== "object" || dm.source !== "account") return p;
6615
+ return { ...p, defaultModel: { ...dm, source: "driver" } };
6616
+ });
6617
+ return next.some((p, i) => p !== providers[i]) ? { ...body, providers: next } : value;
6618
+ }
6550
6619
  var WINDOW_RESULTS = /* @__PURE__ */ new Map([
6551
6620
  ["window.list", "windows"],
6552
6621
  ["window.focus", "window"],
@@ -6574,6 +6643,7 @@ function forPeer(op, part, value, version) {
6574
6643
  const top = path ? strip(known, FIELDS_SINCE[path], version) : known;
6575
6644
  const nested = op ? NESTED_RESULTS.get(op) : void 0;
6576
6645
  const stripped = nested ? stripNested(top, nested, version) : top;
6646
+ if (op === "coding.providers") return providersDefaultSourceForPeer(stripped, version);
6577
6647
  return op === "apps.windows.list" ? windowListRemoteControlForPeer(stripped, version) : stripped;
6578
6648
  }
6579
6649
  if (value === null || typeof value !== "object") return value;
@@ -6591,7 +6661,7 @@ function forPeer(op, part, value, version) {
6591
6661
  var VERSIONED_RESULT_OPS = [.../* @__PURE__ */ new Set([...RESULT_PATH.keys(), ...WINDOW_RESULTS.keys(), ...NESTED_RESULTS.keys()])];
6592
6662
 
6593
6663
  // src/contract.ts
6594
- var CONTRACT_SHA256 = "3a1cc0cf335111a353238b9673b5764e7f3657f2c216f05f0895886f5c0d1db8";
6664
+ var CONTRACT_SHA256 = "aeb1f5dd5ec4290d9ff8871fa39dd9be9605d25a40fec3c681f888c7f2a1954f";
6595
6665
 
6596
6666
  // src/close-policy.ts
6597
6667
  var CLOSE_RULES = {