@ai-matrx/desktop-protocol 0.21.93 → 0.21.94

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,9 +1,9 @@
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 { D as DesktopProtocolError, O as OpName, a as OpParams, b as OpResult } from './models-BpWoHvNe.cjs';
4
+ import { D as DesktopProtocolError, O as OpName, a as OpParams, b as OpResult } from './models-D2apXuiZ.cjs';
5
5
  import { Welcome, CloseOutcome, OPS, StreamMeta, EndReason, EVENTS, ClientType, ModelsTranscribeResult, TranscriptionModelId, MlProgress } from './index.cjs';
6
- export { i as isDesktopProtocolError } from './models-BpWoHvNe.cjs';
6
+ export { i as isDesktopProtocolError } from './models-D2apXuiZ.cjs';
7
7
  import { FrameHeader } from './frame.cjs';
8
8
 
9
9
  /** The subset of the WHATWG WebSocket the client uses — browser, React Native, `ws` and Workers all fit. */
package/dist/client.d.ts CHANGED
@@ -1,9 +1,9 @@
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 { D as DesktopProtocolError, O as OpName, a as OpParams, b as OpResult } from './models-BpWoHvNe.js';
4
+ import { D as DesktopProtocolError, O as OpName, a as OpParams, b as OpResult } from './models-D2apXuiZ.js';
5
5
  import { Welcome, CloseOutcome, OPS, StreamMeta, EndReason, EVENTS, ClientType, ModelsTranscribeResult, TranscriptionModelId, MlProgress } from './index.js';
6
- export { i as isDesktopProtocolError } from './models-BpWoHvNe.js';
6
+ export { i as isDesktopProtocolError } from './models-D2apXuiZ.js';
7
7
  import { FrameHeader } from './frame.js';
8
8
 
9
9
  /** The subset of the WHATWG WebSocket the client uses — browser, React Native, `ws` and Workers all fit. */
package/dist/client.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  closeRule,
3
3
  knows
4
- } from "./chunk-server-MCBYY6QK.js";
4
+ } from "./chunk-server-Q7F4IE6F.js";
5
5
  import {
6
6
  CloseCode,
7
7
  CoreToClientMsg,
@@ -12,7 +12,7 @@ import {
12
12
  PROTOCOL_MAJOR,
13
13
  PROTOCOL_MINOR,
14
14
  Welcome
15
- } from "./chunk-server-HBZSBBGI.js";
15
+ } from "./chunk-server-5MKSD7FQ.js";
16
16
  import {
17
17
  DesktopProtocolError,
18
18
  FRAME_VERSION,
@@ -28,7 +28,7 @@ var registry = null;
28
28
  var registryLoad = null;
29
29
  function loadRegistry() {
30
30
  if (registry) return Promise.resolve(registry);
31
- registryLoad ??= import("./chunk-server-FJWACRBP.js").then((m) => registry = m);
31
+ registryLoad ??= import("./chunk-server-PXHL7V3H.js").then((m) => registry = m);
32
32
  return registryLoad;
33
33
  }
34
34
  var WS_OPEN = 1;
package/dist/index.cjs CHANGED
@@ -449,6 +449,7 @@ __export(src_exports, {
449
449
  EVENTS: () => EVENTS,
450
450
  EXCLUDED_TOOLS: () => EXCLUDED_TOOLS,
451
451
  ElsewhereInstance: () => ElsewhereInstance,
452
+ EmbeddingVector: () => EmbeddingVector,
452
453
  EndMsg: () => EndMsg,
453
454
  EndReason: () => EndReason,
454
455
  EntitiesNerParams: () => EntitiesNerParams,
@@ -584,8 +585,10 @@ __export(src_exports, {
584
585
  LEGACY_DISPATCHERS: () => LEGACY_DISPATCHERS,
585
586
  Limits: () => Limits,
586
587
  LlamaServerBuild: () => LlamaServerBuild,
588
+ LlmEmbeddingSlot: () => LlmEmbeddingSlot,
587
589
  LlmRunning: () => LlmRunning,
588
590
  LlmServerState: () => LlmServerState,
591
+ LlmSlot: () => LlmSlot,
589
592
  LocalModelKind: () => LocalModelKind,
590
593
  LocalModelRow: () => LocalModelRow,
591
594
  LocationGetParams: () => LocationGetParams,
@@ -624,6 +627,8 @@ __export(src_exports, {
624
627
  ModelsDownloadsCancelResult: () => ModelsDownloadsCancelResult,
625
628
  ModelsDownloadsListParams: () => ModelsDownloadsListParams,
626
629
  ModelsDownloadsListResult: () => ModelsDownloadsListResult,
630
+ ModelsEmbedParams: () => ModelsEmbedParams,
631
+ ModelsEmbedResult: () => ModelsEmbedResult,
627
632
  ModelsInstallParams: () => ModelsInstallParams,
628
633
  ModelsInstallResult: () => ModelsInstallResult,
629
634
  ModelsLlmChatParams: () => ModelsLlmChatParams,
@@ -1030,7 +1035,7 @@ module.exports = __toCommonJS(src_exports);
1030
1035
  var import_zod = require("zod");
1031
1036
  var import_uuid = require("@ai-matrx/kit/uuid");
1032
1037
  var PROTOCOL_MAJOR = 1;
1033
- var PROTOCOL_MINOR = 87;
1038
+ var PROTOCOL_MINOR = 88;
1034
1039
  var PROTOCOL_VERSION = `${PROTOCOL_MAJOR}.${PROTOCOL_MINOR}`;
1035
1040
  var ProtocolVersion = import_zod.z.string().regex(/^[1-9][0-9]{0,2}\.[0-9]{1,3}$/);
1036
1041
  var RequestId = import_zod.z.string().min(1).max(64).regex(/^[A-Za-z0-9_-]+$/);
@@ -1119,7 +1124,7 @@ var ErrorReason = import_zod2.z.enum([
1119
1124
  // 1.34 (REASONS_SINCE): the per-device tool policy (src/tools/policy.ts)
1120
1125
  "tool_disabled_on_device",
1121
1126
  // AUTH_FORBIDDEN: the person turned this tool off for agents on this computer (Agents › Tools)
1122
- // 1.76 (REASONS_SINCE): models.llm.chat
1127
+ // 1.76 (REASONS_SINCE): models.llm.chat (1.88: models.embed names the same two)
1123
1128
  "model_not_running",
1124
1129
  // NOT_FOUND (nothing runs) or RESOURCE_BUSY (another model runs): start this model first
1125
1130
  "model_server_unreachable"
@@ -2060,6 +2065,14 @@ var LlmRunning = import_zod11.z.strictObject({
2060
2065
  gpu_layers: import_zod11.z.int().min(-1).max(999).optional(),
2061
2066
  threads: import_zod11.z.int().min(1).max(512).optional()
2062
2067
  });
2068
+ var LlmSlot = import_zod11.z.enum(["chat", "embed"]);
2069
+ var LlmEmbeddingSlot = import_zod11.z.strictObject({
2070
+ state: LlmServerState,
2071
+ models: import_zod11.z.array(TextModelInfo),
2072
+ running: LlmRunning.nullable(),
2073
+ starting: TextModelId.nullable(),
2074
+ error: import_zod11.z.string().max(300).nullable()
2075
+ });
2063
2076
  var ModelsLlmStatusParams = import_zod11.z.strictObject({});
2064
2077
  var ModelsLlmStatusResult = import_zod11.z.strictObject({
2065
2078
  state: LlmServerState,
@@ -2075,7 +2088,9 @@ var ModelsLlmStatusResult = import_zod11.z.strictObject({
2075
2088
  /** Non-null while the server program or a model's weights are being downloaded. */
2076
2089
  install: MlInstallProgress.nullable(),
2077
2090
  /** Why the last start or download failed, one human line; null otherwise. */
2078
- error: import_zod11.z.string().max(300).nullable()
2091
+ error: import_zod11.z.string().max(300).nullable(),
2092
+ /** (1.88) The embeddings slot: the same model service's second llama-server, in embeddings mode, beside the chat model. */
2093
+ embedding: LlmEmbeddingSlot.optional()
2079
2094
  });
2080
2095
  var ModelsLlmInstallParams = import_zod11.z.strictObject({
2081
2096
  model: TextModelId,
@@ -2097,10 +2112,15 @@ var ModelsLlmStartParams = import_zod11.z.strictObject({
2097
2112
  /** (1.48) CPU threads, computed by the app from the knobs. */
2098
2113
  threads: import_zod11.z.int().min(1).max(512).optional(),
2099
2114
  /** (1.48) Seconds to wait for the model to load, computed by the app from the knobs. */
2100
- load_timeout_s: import_zod11.z.int().min(10).max(3600).optional()
2115
+ load_timeout_s: import_zod11.z.int().min(10).max(3600).optional(),
2116
+ /** (1.88) Which slot: `chat` (default) or `embed` (the embedding model, beside the chat model; neither stops the other). */
2117
+ slot: LlmSlot.optional()
2101
2118
  });
2102
2119
  var ModelsLlmStartResult = import_zod11.z.strictObject({ running: LlmRunning, elapsed_ms: nonNegInt });
2103
- var ModelsLlmStopParams = import_zod11.z.strictObject({});
2120
+ var ModelsLlmStopParams = import_zod11.z.strictObject({
2121
+ /** (1.88) Which slot to stop: `chat` (default) or `embed`. */
2122
+ slot: LlmSlot.optional()
2123
+ });
2104
2124
  var ModelsLlmStopResult = import_zod11.z.strictObject({ stopped: import_zod11.z.boolean() });
2105
2125
  var ModelsLlmChatParams = import_zod11.z.strictObject({
2106
2126
  model: TextModelId,
@@ -2110,6 +2130,23 @@ var ModelsLlmChatParams = import_zod11.z.strictObject({
2110
2130
  window_bytes: import_zod11.z.int().min(4096).max(16777216).optional()
2111
2131
  });
2112
2132
  var ModelsLlmChatResult = import_zod11.z.strictObject({ model: TextModelId, content_type: import_zod11.z.string().max(128) });
2133
+ var ModelsEmbedParams = import_zod11.z.strictObject({
2134
+ model: TextModelId,
2135
+ input: import_zod11.z.union([import_zod11.z.string().min(1).max(262144), import_zod11.z.array(import_zod11.z.string().min(1).max(262144)).min(1).max(256)]),
2136
+ /** Start the model in the embeddings slot first when nothing runs there (a different embedding model running is never stopped). */
2137
+ start_if_stopped: import_zod11.z.boolean().optional()
2138
+ });
2139
+ var EmbeddingVector = import_zod11.z.strictObject({
2140
+ index: nonNegInt,
2141
+ embedding: import_zod11.z.array(import_zod11.z.number()).min(1).max(16384)
2142
+ });
2143
+ var ModelsEmbedResult = import_zod11.z.strictObject({
2144
+ model: TextModelId,
2145
+ /** The vector length (every row has it). */
2146
+ dimensions: import_zod11.z.int().min(1).max(16384),
2147
+ data: import_zod11.z.array(EmbeddingVector).min(1).max(256),
2148
+ usage: import_zod11.z.strictObject({ prompt_tokens: nonNegInt, total_tokens: nonNegInt })
2149
+ });
2113
2150
  var Sha256Hex = import_zod11.z.string().regex(/^[0-9a-f]{64}$/);
2114
2151
  var CatalogFile = import_zod11.z.strictObject({
2115
2152
  /** Path inside the model's folder (the artifact's path_in_repo). */
@@ -2155,7 +2192,9 @@ var MlCatalogSetParams = import_zod11.z.strictObject({
2155
2192
  /** (1.69) Language models on this computer that cannot run here, each with its one-line reason: models.llm.status lists them. */
2156
2193
  unusable: import_zod11.z.array(UnusableTextModel).optional(),
2157
2194
  /** (1.81) Text-to-speech models (Kokoro): what models.tts.* runs. */
2158
- speech: import_zod11.z.array(CatalogModelEntry).optional()
2195
+ speech: import_zod11.z.array(CatalogModelEntry).optional(),
2196
+ /** (1.88) Embedding models (GGUF, run by llama-server with --embeddings in the embeddings slot): what models.embed runs. */
2197
+ embedding: import_zod11.z.array(CatalogModelEntry).optional()
2159
2198
  });
2160
2199
  var MlCatalogSetResult = import_zod11.z.strictObject({ text: nonNegInt, transcription: nonNegInt });
2161
2200
  var DownloadKind = import_zod11.z.enum(["speech_model", "text_model", "runtime"]);
@@ -6491,6 +6530,7 @@ var OPS = {
6491
6530
  "models.llm.start": { params: ModelsLlmStartParams, result: ModelsLlmStartResult, kind: "unary", since: "1.31", errors: ["NOT_FOUND", "RESOURCE_BUSY", "RESOURCE_GONE", "TIMEOUT", "CANCELLED", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
6492
6531
  "models.llm.stop": { params: ModelsLlmStopParams, result: ModelsLlmStopResult, kind: "unary", since: "1.31", errors: ["INTERNAL"] },
6493
6532
  "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"] },
6533
+ "models.embed": { params: ModelsEmbedParams, result: ModelsEmbedResult, kind: "unary", since: "1.88", errors: ["NOT_FOUND", "RESOURCE_BUSY", "RESOURCE_GONE", "INVALID_PARAMS", "TIMEOUT", "CANCELLED", "INTERNAL"] },
6494
6534
  "models.downloads.list": { params: ModelsDownloadsListParams, result: ModelsDownloadsListResult, kind: "unary", since: "1.45", errors: ["INTERNAL"] },
6495
6535
  "models.downloads.cancel": { params: ModelsDownloadsCancelParams, result: ModelsDownloadsCancelResult, kind: "unary", since: "1.45", errors: ["NOT_FOUND", "INTERNAL"] },
6496
6536
  "models.local.list": { params: ModelsLocalListParams, result: ModelsLocalListResult, kind: "unary", since: "1.74", errors: ["INTERNAL"] },
@@ -7058,6 +7098,11 @@ var NAMED_SCHEMAS = {
7058
7098
  ModelsLlmStopResult,
7059
7099
  ModelsLlmChatParams,
7060
7100
  ModelsLlmChatResult,
7101
+ ModelsEmbedParams,
7102
+ ModelsEmbedResult,
7103
+ EmbeddingVector,
7104
+ LlmSlot,
7105
+ LlmEmbeddingSlot,
7061
7106
  DownloadKind,
7062
7107
  DownloadRow,
7063
7108
  ModelsDownloadsListParams,
@@ -7770,9 +7815,11 @@ var import_versions = require("@ai-matrx/kit/versions");
7770
7815
  var FIELDS_SINCE = {
7771
7816
  LlmRunning: { context_length: "1.48", gpu_layers: "1.48", threads: "1.48" },
7772
7817
  TextModelInfo: { title: "1.69", problem: "1.69" },
7773
- MlCatalogSetParams: { unusable: "1.69", speech: "1.81" },
7818
+ MlCatalogSetParams: { unusable: "1.69", speech: "1.81", embedding: "1.88" },
7819
+ ModelsLlmStatusResult: { embedding: "1.88" },
7820
+ ModelsLlmStopParams: { slot: "1.88" },
7774
7821
  MlProgress: { audio: "1.81" },
7775
- ModelsLlmStartParams: { gpu_layers: "1.48", threads: "1.48", load_timeout_s: "1.48" },
7822
+ ModelsLlmStartParams: { gpu_layers: "1.48", threads: "1.48", load_timeout_s: "1.48", slot: "1.88" },
7776
7823
  FsPatchResult: { edits_applied: "1.1", edits_failed: "1.1" },
7777
7824
  "ProtocolErrorBody.data": { edits_failed: "1.1" },
7778
7825
  "RelayCallResponse|0": { protocol_version: "1.1" },
@@ -7956,7 +8003,9 @@ var RESULT_PATH = /* @__PURE__ */ new Map([
7956
8003
  // 1.67: Matrx Local's local_mac_apps result fields.
7957
8004
  ["photos.get", "PhotosGetResult"],
7958
8005
  ["location.get", "LocationGetResult"],
7959
- ["account.agents.restore_version", "AccountAgentsRestoreVersionResult"]
8006
+ ["account.agents.restore_version", "AccountAgentsRestoreVersionResult"],
8007
+ // 1.88: the embeddings slot beside the chat model.
8008
+ ["models.llm.status", "ModelsLlmStatusResult"]
7960
8009
  ]);
7961
8010
  var NESTED_RESULTS = /* @__PURE__ */ new Map([
7962
8011
  ["apps.chats.list", [["chats", "ChatRow"]]],
@@ -8120,7 +8169,7 @@ function forPeer(op, part, value, version) {
8120
8169
  var VERSIONED_RESULT_OPS = [.../* @__PURE__ */ new Set([...RESULT_PATH.keys(), ...WINDOW_RESULTS.keys(), ...NESTED_RESULTS.keys()])];
8121
8170
 
8122
8171
  // src/contract.ts
8123
- var CONTRACT_SHA256 = "6bafb641835624f0c1624f585cf5cd59d4594107b4661936bab4b771e54924e2";
8172
+ var CONTRACT_SHA256 = "24650f34e966ce74c997fefcc7e6474b71fb9737ea81e81bfd1513a5e5018768";
8124
8173
 
8125
8174
  // src/close-policy.ts
8126
8175
  var CLOSE_RULES = {