@ai-matrx/desktop-protocol 0.21.77 → 0.21.79

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/client.d.cts CHANGED
@@ -1,8 +1,8 @@
1
1
  import { BackoffOptions } from '@ai-matrx/data/realtime';
2
2
  export { RECONNECT_ALARM_ATTEMPTS } from '@ai-matrx/data/realtime';
3
3
  import { z } from 'zod';
4
- import { W as Welcome, D as DesktopProtocolError, C as CloseOutcome, O as OpName, a as OpParams, b as OpResult, c as OPS, S as StreamMeta, E as EndReason, d as EVENTS, e as ClientType, M as ModelsTranscribeResult, T as TranscriptionModelId, f as MlProgress } from './models-Bz88NHi0.cjs';
5
- export { i as isDesktopProtocolError } from './models-Bz88NHi0.cjs';
4
+ import { W as Welcome, D as DesktopProtocolError, C as CloseOutcome, O as OpName, a as OpParams, b as OpResult, c as OPS, S as StreamMeta, E as EndReason, d as EVENTS, e as ClientType, M as ModelsTranscribeResult, T as TranscriptionModelId, f as MlProgress } from './models-C2VdtixP.cjs';
5
+ export { i as isDesktopProtocolError } from './models-C2VdtixP.cjs';
6
6
  import { FrameHeader } from './frame.cjs';
7
7
 
8
8
  /** The subset of the WHATWG WebSocket the client uses — browser, React Native, `ws` and Workers all fit. */
package/dist/client.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  import { BackoffOptions } from '@ai-matrx/data/realtime';
2
2
  export { RECONNECT_ALARM_ATTEMPTS } from '@ai-matrx/data/realtime';
3
3
  import { z } from 'zod';
4
- import { W as Welcome, D as DesktopProtocolError, C as CloseOutcome, O as OpName, a as OpParams, b as OpResult, c as OPS, S as StreamMeta, E as EndReason, d as EVENTS, e as ClientType, M as ModelsTranscribeResult, T as TranscriptionModelId, f as MlProgress } from './models-Bz88NHi0.js';
5
- export { i as isDesktopProtocolError } from './models-Bz88NHi0.js';
4
+ import { W as Welcome, D as DesktopProtocolError, C as CloseOutcome, O as OpName, a as OpParams, b as OpResult, c as OPS, S as StreamMeta, E as EndReason, d as EVENTS, e as ClientType, M as ModelsTranscribeResult, T as TranscriptionModelId, f as MlProgress } from './models-C2VdtixP.js';
5
+ export { i as isDesktopProtocolError } from './models-C2VdtixP.js';
6
6
  import { FrameHeader } from './frame.js';
7
7
 
8
8
  /** The subset of the WHATWG WebSocket the client uses — browser, React Native, `ws` and Workers all fit. */
package/dist/client.js CHANGED
@@ -12,7 +12,7 @@ import {
12
12
  Welcome,
13
13
  closeRule,
14
14
  knows
15
- } from "./chunk-server-HOQE4M4I.js";
15
+ } from "./chunk-server-XQQUJENM.js";
16
16
  import {
17
17
  DesktopProtocolError,
18
18
  FRAME_VERSION,
package/dist/index.cjs CHANGED
@@ -565,6 +565,8 @@ __export(src_exports, {
565
565
  ModelsDownloadsListResult: () => ModelsDownloadsListResult,
566
566
  ModelsInstallParams: () => ModelsInstallParams,
567
567
  ModelsInstallResult: () => ModelsInstallResult,
568
+ ModelsLlmChatParams: () => ModelsLlmChatParams,
569
+ ModelsLlmChatResult: () => ModelsLlmChatResult,
568
570
  ModelsLlmInstallParams: () => ModelsLlmInstallParams,
569
571
  ModelsLlmInstallResult: () => ModelsLlmInstallResult,
570
572
  ModelsLlmStartParams: () => ModelsLlmStartParams,
@@ -941,7 +943,7 @@ module.exports = __toCommonJS(src_exports);
941
943
  var import_zod = require("zod");
942
944
  var import_uuid = require("@ai-matrx/kit/uuid");
943
945
  var PROTOCOL_MAJOR = 1;
944
- var PROTOCOL_MINOR = 75;
946
+ var PROTOCOL_MINOR = 77;
945
947
  var PROTOCOL_VERSION = `${PROTOCOL_MAJOR}.${PROTOCOL_MINOR}`;
946
948
  var ProtocolVersion = import_zod.z.string().regex(/^[1-9][0-9]{0,2}\.[0-9]{1,3}$/);
947
949
  var RequestId = import_zod.z.string().min(1).max(64).regex(/^[A-Za-z0-9_-]+$/);
@@ -1028,8 +1030,13 @@ var ErrorReason = import_zod2.z.enum([
1028
1030
  "awaiting_confirmation",
1029
1031
  // TIMEOUT: the person did not answer the browser's confirmation in time
1030
1032
  // 1.34 (REASONS_SINCE): the per-device tool policy (src/tools/policy.ts)
1031
- "tool_disabled_on_device"
1033
+ "tool_disabled_on_device",
1032
1034
  // AUTH_FORBIDDEN: the person turned this tool off for agents on this computer (Agents › Tools)
1035
+ // 1.76 (REASONS_SINCE): models.llm.chat
1036
+ "model_not_running",
1037
+ // NOT_FOUND (nothing runs) or RESOURCE_BUSY (another model runs): start this model first
1038
+ "model_server_unreachable"
1039
+ // RESOURCE_GONE (retryable): llama-server did not answer on this computer
1033
1040
  ]);
1034
1041
  var FsPatchEditFailure = import_zod2.z.strictObject({ edit_index: nonNegInt, reason: import_zod2.z.string().max(300) });
1035
1042
  var ProtocolErrorBody = import_zod2.z.strictObject({
@@ -1888,6 +1895,14 @@ var ModelsLlmStartParams = import_zod10.z.strictObject({
1888
1895
  var ModelsLlmStartResult = import_zod10.z.strictObject({ running: LlmRunning, elapsed_ms: nonNegInt });
1889
1896
  var ModelsLlmStopParams = import_zod10.z.strictObject({});
1890
1897
  var ModelsLlmStopResult = import_zod10.z.strictObject({ stopped: import_zod10.z.boolean() });
1898
+ var ModelsLlmChatParams = import_zod10.z.strictObject({
1899
+ model: TextModelId,
1900
+ body: import_zod10.z.record(import_zod10.z.string().max(200), import_zod10.z.unknown()),
1901
+ /** Start the model first when nothing runs (a `models` progress event says so); a different model running is never stopped. */
1902
+ start_if_stopped: import_zod10.z.boolean().optional(),
1903
+ window_bytes: import_zod10.z.int().min(4096).max(16777216).optional()
1904
+ });
1905
+ var ModelsLlmChatResult = import_zod10.z.strictObject({ model: TextModelId, content_type: import_zod10.z.string().max(128) });
1891
1906
  var Sha256Hex = import_zod10.z.string().regex(/^[0-9a-f]{64}$/);
1892
1907
  var CatalogFile = import_zod10.z.strictObject({
1893
1908
  /** Path inside the model's folder (the artifact's path_in_repo). */
@@ -4421,7 +4436,13 @@ var CodingServiceCredentials = import_zod33.z.strictObject({
4421
4436
  access_token: import_zod33.z.string().min(16).max(16384),
4422
4437
  user_id: import_zod33.z.string().regex(import_uuid5.UUID_SHAPE_PATTERN),
4423
4438
  /** The AI Matrx server this app talks to (production, or a local server on the nightly copy). */
4424
- server_url: import_zod33.z.string().min(1).max(2048).regex(/^https?:\/\/[^\s/?#]+(\/[^\s?#]*)?$/)
4439
+ server_url: import_zod33.z.string().min(1).max(2048).regex(/^https?:\/\/[^\s/?#]+(\/[^\s?#]*)?$/),
4440
+ /**
4441
+ * The organization the person works in (the core's active organization): the service sends it as
4442
+ * X-Organization-Id on every AI Matrx request, as the app's own calls do. Absent: the
4443
+ * service sends nothing and says an organization is needed (1.77).
4444
+ */
4445
+ organization_id: import_zod33.z.string().regex(import_uuid5.UUID_SHAPE_PATTERN).optional()
4425
4446
  });
4426
4447
  var CodingHistoryBlocked = import_zod33.z.enum([
4427
4448
  "signed_out",
@@ -5805,6 +5826,7 @@ var OPS = {
5805
5826
  "models.llm.install": { params: ModelsLlmInstallParams, result: ModelsLlmInstallResult, kind: "unary", since: "1.31", errors: ["RESOURCE_BUSY", "RESOURCE_GONE", "TIMEOUT", "CANCELLED", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
5806
5827
  "models.llm.start": { params: ModelsLlmStartParams, result: ModelsLlmStartResult, kind: "unary", since: "1.31", errors: ["NOT_FOUND", "RESOURCE_BUSY", "RESOURCE_GONE", "TIMEOUT", "CANCELLED", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
5807
5828
  "models.llm.stop": { params: ModelsLlmStopParams, result: ModelsLlmStopResult, kind: "unary", since: "1.31", errors: ["INTERNAL"] },
5829
+ "models.llm.chat": { params: ModelsLlmChatParams, result: ModelsLlmChatResult, kind: "stream", since: "1.76", errors: ["NOT_FOUND", "RESOURCE_BUSY", "RESOURCE_GONE", "INVALID_PARAMS", "TIMEOUT", "CANCELLED", "RATE_LIMITED", "INTERNAL"] },
5808
5830
  "models.downloads.list": { params: ModelsDownloadsListParams, result: ModelsDownloadsListResult, kind: "unary", since: "1.45", errors: ["INTERNAL"] },
5809
5831
  "models.downloads.cancel": { params: ModelsDownloadsCancelParams, result: ModelsDownloadsCancelResult, kind: "unary", since: "1.45", errors: ["NOT_FOUND", "INTERNAL"] },
5810
5832
  "models.local.list": { params: ModelsLocalListParams, result: ModelsLocalListResult, kind: "unary", since: "1.74", errors: ["INTERNAL"] },
@@ -6283,6 +6305,8 @@ var NAMED_SCHEMAS = {
6283
6305
  ModelsLlmStartResult,
6284
6306
  ModelsLlmStopParams,
6285
6307
  ModelsLlmStopResult,
6308
+ ModelsLlmChatParams,
6309
+ ModelsLlmChatResult,
6286
6310
  DownloadKind,
6287
6311
  DownloadRow,
6288
6312
  ModelsDownloadsListParams,
@@ -7049,7 +7073,9 @@ var REASONS_SINCE = {
7049
7073
  browser_account_mismatch: "1.28",
7050
7074
  browser_connection_off: "1.28",
7051
7075
  awaiting_confirmation: "1.28",
7052
- tool_disabled_on_device: "1.34"
7076
+ tool_disabled_on_device: "1.34",
7077
+ model_not_running: "1.76",
7078
+ model_server_unreachable: "1.76"
7053
7079
  };
7054
7080
  var PERMISSIONS_SINCE = {
7055
7081
  reminders: "1.41",
@@ -7275,7 +7301,7 @@ function forPeer(op, part, value, version) {
7275
7301
  var VERSIONED_RESULT_OPS = [.../* @__PURE__ */ new Set([...RESULT_PATH.keys(), ...WINDOW_RESULTS.keys(), ...NESTED_RESULTS.keys()])];
7276
7302
 
7277
7303
  // src/contract.ts
7278
- var CONTRACT_SHA256 = "2896ee158ca6330cf3cbca88431d15776fb40f53deb0b132bea12ad8d7986757";
7304
+ var CONTRACT_SHA256 = "e6936784e216200e73b062cab45f24fa88014108baecd0f8b7a0b19ea5797fc5";
7279
7305
 
7280
7306
  // src/close-policy.ts
7281
7307
  var CLOSE_RULES = {