@ai-matrx/desktop-protocol 0.21.25 → 0.21.26

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
@@ -253,10 +253,14 @@ __export(src_exports, {
253
253
  FrameHeader: () => FrameHeader,
254
254
  FsChange: () => FsChange,
255
255
  FsChangedEvent: () => FsChangedEvent,
256
+ FsCopyParams: () => FsCopyParams,
257
+ FsCopyResult: () => FsCopyResult,
256
258
  FsDeleteParams: () => FsDeleteParams,
257
259
  FsDeleteResult: () => FsDeleteResult,
258
260
  FsEncoding: () => FsEncoding,
259
261
  FsEntry: () => FsEntry,
262
+ FsInfoParams: () => FsInfoParams,
263
+ FsInfoResult: () => FsInfoResult,
260
264
  FsKind: () => FsKind,
261
265
  FsListParams: () => FsListParams,
262
266
  FsListResult: () => FsListResult,
@@ -274,6 +278,8 @@ __export(src_exports, {
274
278
  FsReadStreamResult: () => FsReadStreamResult,
275
279
  FsSearchContentParams: () => FsSearchContentParams,
276
280
  FsSearchContentResult: () => FsSearchContentResult,
281
+ FsSearchIndexParams: () => FsSearchIndexParams,
282
+ FsSearchIndexResult: () => FsSearchIndexResult,
277
283
  FsSearchPathsParams: () => FsSearchPathsParams,
278
284
  FsSearchPathsResult: () => FsSearchPathsResult,
279
285
  FsStatParams: () => FsStatParams,
@@ -325,6 +331,8 @@ __export(src_exports, {
325
331
  LEGACY_ACTIONS: () => LEGACY_ACTIONS,
326
332
  LEGACY_DISPATCHERS: () => LEGACY_DISPATCHERS,
327
333
  Limits: () => Limits,
334
+ LlmRunning: () => LlmRunning,
335
+ LlmServerState: () => LlmServerState,
328
336
  MATRX_EXTENSION_IDS: () => MATRX_EXTENSION_IDS,
329
337
  MlInstallPhase: () => MlInstallPhase,
330
338
  MlInstallProgress: () => MlInstallProgress,
@@ -336,6 +344,14 @@ __export(src_exports, {
336
344
  MlStatusResult: () => MlStatusResult,
337
345
  ModelsInstallParams: () => ModelsInstallParams,
338
346
  ModelsInstallResult: () => ModelsInstallResult,
347
+ ModelsLlmInstallParams: () => ModelsLlmInstallParams,
348
+ ModelsLlmInstallResult: () => ModelsLlmInstallResult,
349
+ ModelsLlmStartParams: () => ModelsLlmStartParams,
350
+ ModelsLlmStartResult: () => ModelsLlmStartResult,
351
+ ModelsLlmStatusParams: () => ModelsLlmStatusParams,
352
+ ModelsLlmStatusResult: () => ModelsLlmStatusResult,
353
+ ModelsLlmStopParams: () => ModelsLlmStopParams,
354
+ ModelsLlmStopResult: () => ModelsLlmStopResult,
339
355
  ModelsProgressEvent: () => ModelsProgressEvent,
340
356
  ModelsStatusParams: () => ModelsStatusParams,
341
357
  ModelsStatusResult: () => ModelsStatusResult,
@@ -370,6 +386,7 @@ __export(src_exports, {
370
386
  ProcSort: () => ProcSort,
371
387
  ProjectMoveChat: () => ProjectMoveChat,
372
388
  ProjectMoveGroup: () => ProjectMoveGroup,
389
+ ProjectMovePin: () => ProjectMovePin,
373
390
  ProjectMoveSkip: () => ProjectMoveSkip,
374
391
  ProtocolErrorBody: () => ProtocolErrorBody,
375
392
  ProtocolVersion: () => ProtocolVersion,
@@ -487,6 +504,8 @@ __export(src_exports, {
487
504
  TOOL_GROUPS: () => TOOL_GROUPS,
488
505
  TOOL_LEVELS: () => TOOL_LEVELS,
489
506
  TOOL_PLATFORMS: () => TOOL_PLATFORMS,
507
+ TextModelId: () => TextModelId,
508
+ TextModelInfo: () => TextModelInfo,
490
509
  TitleCopies: () => TitleCopies,
491
510
  TitleMismatch: () => TitleMismatch,
492
511
  ToolLevel: () => ToolLevel,
@@ -559,7 +578,7 @@ module.exports = __toCommonJS(src_exports);
559
578
  var import_zod = require("zod");
560
579
  var import_uuid = require("@ai-matrx/kit/uuid");
561
580
  var PROTOCOL_MAJOR = 1;
562
- var PROTOCOL_MINOR = 29;
581
+ var PROTOCOL_MINOR = 32;
563
582
  var PROTOCOL_VERSION = `${PROTOCOL_MAJOR}.${PROTOCOL_MINOR}`;
564
583
  var ProtocolVersion = import_zod.z.string().regex(/^[1-9][0-9]{0,2}\.[0-9]{1,3}$/);
565
584
  var RequestId = import_zod.z.string().min(1).max(64).regex(/^[A-Za-z0-9_-]+$/);
@@ -1078,6 +1097,8 @@ var FsMkdirParams = import_zod6.z.strictObject({ path: AbsPath, parents: import_
1078
1097
  var FsMkdirResult = import_zod6.z.strictObject({ path: AbsPath, created: import_zod6.z.boolean() });
1079
1098
  var FsMoveParams = import_zod6.z.strictObject({ from_path: AbsPath, to_path: AbsPath, overwrite: import_zod6.z.boolean().default(false) });
1080
1099
  var FsMoveResult = import_zod6.z.strictObject({ from_path: AbsPath, to_path: AbsPath });
1100
+ var FsCopyParams = import_zod6.z.strictObject({ from_path: AbsPath, to_path: AbsPath, overwrite: import_zod6.z.boolean().default(false) });
1101
+ var FsCopyResult = import_zod6.z.strictObject({ from_path: AbsPath, to_path: AbsPath });
1081
1102
  var FsDeleteParams = import_zod6.z.strictObject({
1082
1103
  path: AbsPath,
1083
1104
  recursive: import_zod6.z.boolean().default(false),
@@ -1146,6 +1167,36 @@ var FsSearchContentResult = import_zod6.z.strictObject({
1146
1167
  })
1147
1168
  )
1148
1169
  });
1170
+ var FsSearchIndexParams = import_zod6.z.strictObject({
1171
+ query: import_zod6.z.string().min(1).max(256),
1172
+ /** Only under this folder; absent: the whole computer (the walk: the home folder). */
1173
+ scope: AbsPath.optional(),
1174
+ max_results: import_zod6.z.int().min(1).max(1e3).default(200)
1175
+ });
1176
+ var FsSearchIndexResult = import_zod6.z.strictObject({
1177
+ entries: import_zod6.z.array(FsEntry).max(1e3),
1178
+ truncated: import_zod6.z.boolean(),
1179
+ source: import_zod6.z.enum(["index", "walk"])
1180
+ });
1181
+ var FsInfoParams = import_zod6.z.strictObject({ path: AbsPath });
1182
+ var FsInfoResult = import_zod6.z.strictObject({
1183
+ entry: FsEntry,
1184
+ created: import_zod6.z.number().min(0).nullable(),
1185
+ // seconds, float
1186
+ owner: import_zod6.z.string().max(256).nullable(),
1187
+ group: import_zod6.z.string().max(256).nullable(),
1188
+ /** A file's logical size, or a folder's whole tree (null when the walk was cut short). */
1189
+ total_size: nonNegInt.nullable(),
1190
+ /** Bytes the OS uses for it on disk (blocks), same bound as total_size. */
1191
+ size_on_disk: nonNegInt.nullable(),
1192
+ /** A folder's own children (not its tree); null for a file. */
1193
+ items: nonNegInt.nullable(),
1194
+ hidden: import_zod6.z.boolean(),
1195
+ /** Finder's Locked (macOS uchg); null where the OS has no such flag. */
1196
+ locked: import_zod6.z.boolean().nullable(),
1197
+ /** The volume holding it refuses writes (a disk image, a read-only share). */
1198
+ read_only: import_zod6.z.boolean()
1199
+ });
1149
1200
  var FsChange = import_zod6.z.strictObject({
1150
1201
  type: import_zod6.z.enum(["created", "modified", "deleted", "moved"]),
1151
1202
  path: AbsPath,
@@ -1366,6 +1417,49 @@ var MlProgress = import_zod10.z.strictObject({
1366
1417
  /** The segment just transcribed (transcribe only): text appears as it is recognised. */
1367
1418
  segment: TranscriptSegment.nullable()
1368
1419
  });
1420
+ var TextModelId = import_zod10.z.enum([
1421
+ "smollm2-135m",
1422
+ "llama-3.2-3b",
1423
+ "phi-4-mini",
1424
+ "gemma-3-4b",
1425
+ "llama-3.1-8b",
1426
+ "qwen-2.5-7b",
1427
+ "mistral-small-3.1",
1428
+ "gpt-oss-20b",
1429
+ "qwen-2.5-coder-7b",
1430
+ "qwen-2.5-coder-14b"
1431
+ ]);
1432
+ var TextModelInfo = import_zod10.z.strictObject({
1433
+ id: TextModelId,
1434
+ /** Download size of the weights. */
1435
+ size_bytes: nonNegInt,
1436
+ installed: import_zod10.z.boolean()
1437
+ });
1438
+ var LlmServerState = import_zod10.z.enum(["stopped", "starting", "running", "failed"]);
1439
+ var LlmRunning = import_zod10.z.strictObject({ id: TextModelId, port: import_zod10.z.int().min(1024).max(65535) });
1440
+ var ModelsLlmStatusParams = import_zod10.z.strictObject({});
1441
+ var ModelsLlmStatusResult = import_zod10.z.strictObject({
1442
+ state: LlmServerState,
1443
+ /** Every model in the catalog, with whether its weights are on this computer. */
1444
+ models: import_zod10.z.array(TextModelInfo).max(64),
1445
+ running: LlmRunning.nullable(),
1446
+ /** The model being loaded while `state` is "starting". */
1447
+ starting: TextModelId.nullable(),
1448
+ /** Non-null while the server program or a model's weights are being downloaded. */
1449
+ install: MlInstallProgress.nullable(),
1450
+ /** Why the last start or download failed, one human line; null otherwise. */
1451
+ error: import_zod10.z.string().max(300).nullable()
1452
+ });
1453
+ var ModelsLlmInstallParams = import_zod10.z.strictObject({ model: TextModelId });
1454
+ var ModelsLlmInstallResult = import_zod10.z.strictObject({ model: TextModelId, elapsed_ms: nonNegInt });
1455
+ var ModelsLlmStartParams = import_zod10.z.strictObject({
1456
+ model: TextModelId,
1457
+ /** Tokens of context; the service picks a size that fits this computer when omitted. */
1458
+ context_length: import_zod10.z.int().min(512).max(131072).optional()
1459
+ });
1460
+ var ModelsLlmStartResult = import_zod10.z.strictObject({ running: LlmRunning, elapsed_ms: nonNegInt });
1461
+ var ModelsLlmStopParams = import_zod10.z.strictObject({});
1462
+ var ModelsLlmStopResult = import_zod10.z.strictObject({ stopped: import_zod10.z.boolean() });
1369
1463
  var MlServiceState = import_zod10.z.enum(["starting", "ready", "restarting", "failed", "stopped"]);
1370
1464
  var MlServiceStatus = import_zod10.z.strictObject({
1371
1465
  state: MlServiceState,
@@ -1847,6 +1941,19 @@ var ProjectMoveGroup = import_zod14.z.strictObject({
1847
1941
  /** A group of that name was already there (reused, never doubled). */
1848
1942
  group_exists: import_zod14.z.boolean().optional()
1849
1943
  });
1944
+ var ProjectMovePin = import_zod14.z.strictObject({
1945
+ ok: import_zod14.z.boolean(),
1946
+ /** "now" = written into the closed window; "next_close" = queued until that window closes. */
1947
+ when: import_zod14.z.enum(["now", "next_close"]),
1948
+ /** Pinned by this call (dry run: would be). */
1949
+ pinned: nonNegInt,
1950
+ /** Already pinned there. */
1951
+ already: nonNegInt,
1952
+ /** Waiting for the window to close (dry run: would wait). */
1953
+ queued: nonNegInt,
1954
+ /** Why not pinned (ok false), or why queued. */
1955
+ reason: import_zod14.z.string().max(400).optional()
1956
+ });
1850
1957
  var AppsProjectsToWindowParams = import_zod14.z.strictObject({
1851
1958
  app_key: AppKey,
1852
1959
  project_id: ChatProjectId,
@@ -1855,6 +1962,8 @@ var AppsProjectsToWindowParams = import_zod14.z.strictObject({
1855
1962
  take_off: import_zod14.z.boolean().default(false),
1856
1963
  /** Also group them under the project's name in that window's sidebar (closed windows only). */
1857
1964
  group: import_zod14.z.boolean().default(false),
1965
+ /** 1.32: also pin them in that window (now if closed, else when it next closes). */
1966
+ pin: import_zod14.z.boolean().optional(),
1858
1967
  dry_run: import_zod14.z.boolean().default(false)
1859
1968
  });
1860
1969
  var AppsProjectsToWindowResult = import_zod14.z.strictObject({
@@ -1868,6 +1977,8 @@ var AppsProjectsToWindowResult = import_zod14.z.strictObject({
1868
1977
  /** Chats of the project from other apps (no windows to place into), left as they are. */
1869
1978
  other_apps: nonNegInt,
1870
1979
  group: ProjectMoveGroup.nullable(),
1980
+ /** 1.32: the pin in the target window (absent: not asked). */
1981
+ pin: ProjectMovePin.optional(),
1871
1982
  message: import_zod14.z.string().max(400)
1872
1983
  });
1873
1984
  var ColdChat = import_zod14.z.strictObject({
@@ -3248,6 +3359,9 @@ var OPS = {
3248
3359
  "fs.write": { params: FsWriteParams, result: FsWriteResult, kind: "unary", since: "1.0", errors: [...FS_ERR, "CONFLICT", "PAYLOAD_TOO_LARGE"] },
3249
3360
  "fs.mkdir": { params: FsMkdirParams, result: FsMkdirResult, kind: "unary", since: "1.0", errors: [...FS_ERR, "CONFLICT"] },
3250
3361
  "fs.move": { params: FsMoveParams, result: FsMoveResult, kind: "unary", since: "1.0", errors: [...FS_ERR, "CONFLICT"] },
3362
+ "fs.copy": { params: FsCopyParams, result: FsCopyResult, kind: "unary", since: "1.30", errors: [...FS_ERR, "CONFLICT"] },
3363
+ "fs.info": { params: FsInfoParams, result: FsInfoResult, kind: "unary", since: "1.30", errors: FS_ERR },
3364
+ "fs.search_index": { params: FsSearchIndexParams, result: FsSearchIndexResult, kind: "unary", since: "1.30", errors: [...FS_ERR, "TIMEOUT"] },
3251
3365
  "fs.delete": { params: FsDeleteParams, result: FsDeleteResult, kind: "unary", since: "1.0", errors: FS_ERR },
3252
3366
  "fs.watch": { params: FsWatchParams, result: FsWatchResult, kind: "resource", since: "1.0", errors: [...FS_ERR, "RATE_LIMITED"] },
3253
3367
  "fs.patch": { params: FsPatchParams, result: FsPatchResult, kind: "unary", since: "1.0", errors: [...FS_ERR, "CONFLICT"] },
@@ -3268,6 +3382,10 @@ var OPS = {
3268
3382
  "models.status": { params: ModelsStatusParams, result: ModelsStatusResult, kind: "unary", since: "1.2", errors: ["INTERNAL"] },
3269
3383
  "models.install": { params: ModelsInstallParams, result: ModelsInstallResult, kind: "unary", since: "1.2", errors: ["RESOURCE_BUSY", "RESOURCE_GONE", "TIMEOUT", "CANCELLED", "INTERNAL"] },
3270
3384
  "models.transcribe": { params: ModelsTranscribeParams, result: ModelsTranscribeResult, kind: "unary", since: "1.2", errors: ["NOT_FOUND", "INVALID_PARAMS", "PERMISSION_DENIED_OS", "RESOURCE_BUSY", "RESOURCE_GONE", "CANCELLED", "PAYLOAD_TOO_LARGE", "INTERNAL"] },
3385
+ "models.llm.status": { params: ModelsLlmStatusParams, result: ModelsLlmStatusResult, kind: "unary", since: "1.31", errors: ["INTERNAL"] },
3386
+ "models.llm.install": { params: ModelsLlmInstallParams, result: ModelsLlmInstallResult, kind: "unary", since: "1.31", errors: ["RESOURCE_BUSY", "RESOURCE_GONE", "TIMEOUT", "CANCELLED", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
3387
+ "models.llm.start": { params: ModelsLlmStartParams, result: ModelsLlmStartResult, kind: "unary", since: "1.31", errors: ["NOT_FOUND", "RESOURCE_BUSY", "RESOURCE_GONE", "TIMEOUT", "CANCELLED", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
3388
+ "models.llm.stop": { params: ModelsLlmStopParams, result: ModelsLlmStopResult, kind: "unary", since: "1.31", errors: ["INTERNAL"] },
3271
3389
  // Desktop apps and their profiles (SPEC §6 apps); profiles are rows in users.desktop_app_profile.
3272
3390
  "apps.list": { params: AppsListParams, result: AppsListResult, kind: "unary", since: "1.2", errors: ["INTERNAL"] },
3273
3391
  "apps.profiles.list": { params: AppsProfilesListParams, result: AppsProfilesListResult, kind: "unary", since: "1.2", errors: ["NOT_FOUND", "INVALID_PARAMS", "INTERNAL"] },
@@ -3418,7 +3536,11 @@ var SERVICES = {
3418
3536
  ops: {
3419
3537
  "ml.status": { params: MlStatusParams, result: MlStatusResult },
3420
3538
  "ml.install": { params: ModelsInstallParams, result: ModelsInstallResult },
3421
- "ml.transcribe": { params: ModelsTranscribeParams, result: ModelsTranscribeResult }
3539
+ "ml.transcribe": { params: ModelsTranscribeParams, result: ModelsTranscribeResult },
3540
+ "ml.llm_status": { params: ModelsLlmStatusParams, result: ModelsLlmStatusResult },
3541
+ "ml.llm_install": { params: ModelsLlmInstallParams, result: ModelsLlmInstallResult },
3542
+ "ml.llm_start": { params: ModelsLlmStartParams, result: ModelsLlmStartResult },
3543
+ "ml.llm_stop": { params: ModelsLlmStopParams, result: ModelsLlmStopResult }
3422
3544
  }
3423
3545
  },
3424
3546
  coding: {
@@ -3488,6 +3610,12 @@ var NAMED_SCHEMAS = {
3488
3610
  FsMkdirResult,
3489
3611
  FsMoveParams,
3490
3612
  FsMoveResult,
3613
+ FsCopyParams,
3614
+ FsCopyResult,
3615
+ FsInfoParams,
3616
+ FsInfoResult,
3617
+ FsSearchIndexParams,
3618
+ FsSearchIndexResult,
3491
3619
  FsDeleteParams,
3492
3620
  FsDeleteResult,
3493
3621
  FsWatchParams,
@@ -3546,6 +3674,18 @@ var NAMED_SCHEMAS = {
3546
3674
  ModelsStatusParams,
3547
3675
  ModelsStatusResult,
3548
3676
  ModelsProgressEvent,
3677
+ TextModelId,
3678
+ TextModelInfo,
3679
+ LlmServerState,
3680
+ LlmRunning,
3681
+ ModelsLlmStatusParams,
3682
+ ModelsLlmStatusResult,
3683
+ ModelsLlmInstallParams,
3684
+ ModelsLlmInstallResult,
3685
+ ModelsLlmStartParams,
3686
+ ModelsLlmStartResult,
3687
+ ModelsLlmStopParams,
3688
+ ModelsLlmStopResult,
3549
3689
  CodingServiceCredentials,
3550
3690
  CodingHistoryBlocked,
3551
3691
  CodingHistoryFailure,
@@ -3785,6 +3925,7 @@ var NAMED_SCHEMAS = {
3785
3925
  ProjectMoveChat,
3786
3926
  ProjectMoveSkip,
3787
3927
  ProjectMoveGroup,
3928
+ ProjectMovePin,
3788
3929
  AppsProjectsToWindowParams,
3789
3930
  AppsProjectsToWindowResult,
3790
3931
  ShownSection,
@@ -3919,7 +4060,9 @@ var FIELDS_SINCE = {
3919
4060
  ScreenDisplay: { rotation: "1.24", refresh_hz: "1.24", builtin: "1.24" },
3920
4061
  PowerStatusResult: { energy: "1.24" },
3921
4062
  AppsSpendResult: { days: "1.24" },
3922
- AppsWindowsUpdateStateResult: { closed_by_update: "1.27" }
4063
+ AppsWindowsUpdateStateResult: { closed_by_update: "1.27" },
4064
+ AppsProjectsToWindowParams: { pin: "1.32" },
4065
+ AppsProjectsToWindowResult: { pin: "1.32" }
3923
4066
  };
3924
4067
  var NULL_SINCE = {
3925
4068
  "RelayDeviceStatusEvent.since_ms": { since: "1.1", olderPeersGet: 0 }
@@ -4055,7 +4198,7 @@ function forPeer(op, part, value, version) {
4055
4198
  var VERSIONED_RESULT_OPS = [.../* @__PURE__ */ new Set([...RESULT_PATH.keys(), ...WINDOW_RESULTS.keys(), ...NESTED_RESULTS.keys()])];
4056
4199
 
4057
4200
  // src/contract.ts
4058
- var CONTRACT_SHA256 = "5994ab9f6c2dba636a90e18c99bd3a90736f23782b3f8df9e0d2d7234b8e2b1b";
4201
+ var CONTRACT_SHA256 = "ee8e6c98c76f3557f832157e3b2b21bb23ebb74b67b79151f3b9ff788f5273ee";
4059
4202
 
4060
4203
  // src/close-policy.ts
4061
4204
  var CLOSE_RULES = {