@ai-matrx/desktop-protocol 0.17.2 → 0.17.3

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.d.cts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { O as OpName } from './models-QWCUcQuU.cjs';
3
- export { B as BEARER_PREFIX, g as CLOSE_RULES, h as CancelMsg, j as ClientToCoreMsg, e as ClientType, k as CloseAction, l as CloseCode, m as CloseCodeValue, C as CloseOutcome, n as CloseRule, o as CoreToClientMsg, p as CreditMsg, D as DesktopProtocolError, d as EVENTS, q as EndMsg, E as EndReason, r as ErrorCode, s as ErrorCodeName, t as ErrorData, u as ErrorMsg, v as ErrorReason, w as ErrorReasonName, x as EventMsg, y as EventName, F as FsPatchEditFailure, H as HelloMsg, L as Limits, z as MlInstallPhase, A as MlInstallProgress, f as MlProgress, G as MlRuntimeState, I as MlServiceState, J as MlServiceStatus, K as MlStatusParams, N as MlStatusResult, P as ModelsInstallParams, Q as ModelsInstallResult, R as ModelsProgressEvent, U as ModelsStatusParams, V as ModelsStatusResult, X as ModelsTranscribeParams, M as ModelsTranscribeResult, Y as NAMED_SCHEMAS, Z as NamedSchemaId, c as OPS, _ as OpDescriptor, a as OpParams, b as OpResult, $ as OpSpec, a0 as PING_TEXT, a1 as PONG_TEXT, a2 as ProtocolErrorBody, a3 as RelayMsg, a4 as RequestMsg, a5 as ResponseMsg, a6 as SERVICES, a7 as SUBPROTOCOL, a8 as ServiceId, a9 as ServiceOpName, aa as ServiceOpSpec, ab as ServiceSpec, S as StreamMeta, ac as StreamMsg, ad as TranscriptSegment, T as TranscriptionModelId, ae as TranscriptionModelInfo, W as Welcome, af as closeRule, i as isDesktopProtocolError, ag as isTerminalClose } from './models-QWCUcQuU.cjs';
2
+ import { O as OpName } from './models-BiquRLLO.cjs';
3
+ export { B as BEARER_PREFIX, g as CLOSE_RULES, h as CancelMsg, j as ClientToCoreMsg, e as ClientType, k as CloseAction, l as CloseCode, m as CloseCodeValue, C as CloseOutcome, n as CloseRule, o as CoreToClientMsg, p as CreditMsg, D as DesktopProtocolError, d as EVENTS, q as EndMsg, E as EndReason, r as ErrorCode, s as ErrorCodeName, t as ErrorData, u as ErrorMsg, v as ErrorReason, w as ErrorReasonName, x as EventMsg, y as EventName, F as FsPatchEditFailure, H as HelloMsg, L as Limits, z as MlInstallPhase, A as MlInstallProgress, f as MlProgress, G as MlRuntimeState, I as MlServiceState, J as MlServiceStatus, K as MlStatusParams, N as MlStatusResult, P as ModelsInstallParams, Q as ModelsInstallResult, R as ModelsProgressEvent, U as ModelsStatusParams, V as ModelsStatusResult, X as ModelsTranscribeParams, M as ModelsTranscribeResult, Y as NAMED_SCHEMAS, Z as NamedSchemaId, c as OPS, _ as OpDescriptor, a as OpParams, b as OpResult, $ as OpSpec, a0 as PING_TEXT, a1 as PONG_TEXT, a2 as ProtocolErrorBody, a3 as RelayMsg, a4 as RequestMsg, a5 as ResponseMsg, a6 as SERVICES, a7 as SUBPROTOCOL, a8 as ServiceId, a9 as ServiceOpName, aa as ServiceOpSpec, ab as ServiceSpec, S as StreamMeta, ac as StreamMsg, ad as TranscriptSegment, T as TranscriptionModelId, ae as TranscriptionModelInfo, W as Welcome, af as closeRule, i as isDesktopProtocolError, ag as isTerminalClose } from './models-BiquRLLO.cjs';
4
4
  export { BROADCAST_CID, DecodedFrame, FRAME_HEADER_BYTES, FRAME_STRUCT_FORMAT, FRAME_VERSION, FrameChannel, FrameChannelValue, FrameFlag, assertFrameHeader, connectionEndFrame, decodeFrame, encodeFrame, hasFlag, isConnectionEnd, readCid, stampCid } from './frame.cjs';
5
5
 
6
6
  /** @ai-matrx/desktop-protocol — version and primitive schemas. Schema source: lint-enforced rules in scripts/check-schema-source.mjs. */
@@ -19,10 +19,11 @@ declare const PROTOCOL_MAJOR: 1;
19
19
  * 1.5 — `coding.history.import_missing`: Claude Code history the platform lacks, imported by the
20
20
  * `coding` Python service.
21
21
  * 1.6 — the `audio` capability: devices, record a clip to a WAV file, play a file.
22
+ * 1.7 — a window names its owning application and process (WindowInfo `app`, `pid`).
22
23
  */
23
- declare const PROTOCOL_MINOR: 6;
24
+ declare const PROTOCOL_MINOR: 7;
24
25
  /** This package's version as the wire spells it ("major.minor"): hello, welcome, relay status. */
25
- declare const PROTOCOL_VERSION: "1.6";
26
+ declare const PROTOCOL_VERSION: "1.7";
26
27
  /** Internal building blocks — deliberately unnamed in $defs (inlined wherever used). */
27
28
  declare const u32: z.ZodInt;
28
29
  declare const nonNegInt: z.ZodInt;
@@ -1861,6 +1862,8 @@ declare const WindowInfo: z.ZodObject<{
1861
1862
  y: z.ZodInt;
1862
1863
  width: z.ZodInt;
1863
1864
  height: z.ZodInt;
1865
+ app: z.ZodOptional<z.ZodString>;
1866
+ pid: z.ZodOptional<z.ZodInt>;
1864
1867
  }, z.core.$strict>;
1865
1868
  type WindowInfo = z.output<typeof WindowInfo>;
1866
1869
  declare const WindowListParams: z.ZodObject<{
@@ -1876,6 +1879,8 @@ declare const WindowListResult: z.ZodObject<{
1876
1879
  y: z.ZodInt;
1877
1880
  width: z.ZodInt;
1878
1881
  height: z.ZodInt;
1882
+ app: z.ZodOptional<z.ZodString>;
1883
+ pid: z.ZodOptional<z.ZodInt>;
1879
1884
  }, z.core.$strict>>;
1880
1885
  total: z.ZodInt;
1881
1886
  truncated: z.ZodBoolean;
@@ -1893,6 +1898,8 @@ declare const WindowFocusResult: z.ZodObject<{
1893
1898
  y: z.ZodInt;
1894
1899
  width: z.ZodInt;
1895
1900
  height: z.ZodInt;
1901
+ app: z.ZodOptional<z.ZodString>;
1902
+ pid: z.ZodOptional<z.ZodInt>;
1896
1903
  }, z.core.$strict>;
1897
1904
  }, z.core.$strict>;
1898
1905
  type WindowFocusResult = z.output<typeof WindowFocusResult>;
@@ -1912,6 +1919,8 @@ declare const WindowMoveResult: z.ZodObject<{
1912
1919
  y: z.ZodInt;
1913
1920
  width: z.ZodInt;
1914
1921
  height: z.ZodInt;
1922
+ app: z.ZodOptional<z.ZodString>;
1923
+ pid: z.ZodOptional<z.ZodInt>;
1915
1924
  }, z.core.$strict>;
1916
1925
  }, z.core.$strict>;
1917
1926
  type WindowMoveResult = z.output<typeof WindowMoveResult>;
@@ -2672,6 +2681,10 @@ declare const FIELDS_SINCE: {
2672
2681
  readonly "RelayCallResponse|1": {
2673
2682
  readonly protocol_version: "1.1";
2674
2683
  };
2684
+ readonly WindowInfo: {
2685
+ readonly app: "1.7";
2686
+ readonly pid: "1.7";
2687
+ };
2675
2688
  };
2676
2689
  type FieldsSincePath = keyof typeof FIELDS_SINCE;
2677
2690
  /**
@@ -2726,7 +2739,7 @@ declare function forPeer(op: OpName | null, part: "error", value: unknown, versi
2726
2739
  declare const VERSIONED_RESULT_OPS: readonly OpName[];
2727
2740
 
2728
2741
  /** SHA-256 of generated/desktop-protocol.schema.json: the contract both sides of a service connection were built from. */
2729
- declare const CONTRACT_SHA256: "2cbf3c7589a30141305f6f0f38c4d4a32bf9ef2a890f7572d9c7bd15c398d4b9";
2742
+ declare const CONTRACT_SHA256: "5525674072a767340a8bd75a4e4b98c588577a866b4d381edeb377401729e14d";
2730
2743
 
2731
2744
  /**
2732
2745
  * The local tool catalog (SPEC §10): every tool a platform agent calls on a person's computer, the
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { O as OpName } from './models-QWCUcQuU.js';
3
- export { B as BEARER_PREFIX, g as CLOSE_RULES, h as CancelMsg, j as ClientToCoreMsg, e as ClientType, k as CloseAction, l as CloseCode, m as CloseCodeValue, C as CloseOutcome, n as CloseRule, o as CoreToClientMsg, p as CreditMsg, D as DesktopProtocolError, d as EVENTS, q as EndMsg, E as EndReason, r as ErrorCode, s as ErrorCodeName, t as ErrorData, u as ErrorMsg, v as ErrorReason, w as ErrorReasonName, x as EventMsg, y as EventName, F as FsPatchEditFailure, H as HelloMsg, L as Limits, z as MlInstallPhase, A as MlInstallProgress, f as MlProgress, G as MlRuntimeState, I as MlServiceState, J as MlServiceStatus, K as MlStatusParams, N as MlStatusResult, P as ModelsInstallParams, Q as ModelsInstallResult, R as ModelsProgressEvent, U as ModelsStatusParams, V as ModelsStatusResult, X as ModelsTranscribeParams, M as ModelsTranscribeResult, Y as NAMED_SCHEMAS, Z as NamedSchemaId, c as OPS, _ as OpDescriptor, a as OpParams, b as OpResult, $ as OpSpec, a0 as PING_TEXT, a1 as PONG_TEXT, a2 as ProtocolErrorBody, a3 as RelayMsg, a4 as RequestMsg, a5 as ResponseMsg, a6 as SERVICES, a7 as SUBPROTOCOL, a8 as ServiceId, a9 as ServiceOpName, aa as ServiceOpSpec, ab as ServiceSpec, S as StreamMeta, ac as StreamMsg, ad as TranscriptSegment, T as TranscriptionModelId, ae as TranscriptionModelInfo, W as Welcome, af as closeRule, i as isDesktopProtocolError, ag as isTerminalClose } from './models-QWCUcQuU.js';
2
+ import { O as OpName } from './models-BiquRLLO.js';
3
+ export { B as BEARER_PREFIX, g as CLOSE_RULES, h as CancelMsg, j as ClientToCoreMsg, e as ClientType, k as CloseAction, l as CloseCode, m as CloseCodeValue, C as CloseOutcome, n as CloseRule, o as CoreToClientMsg, p as CreditMsg, D as DesktopProtocolError, d as EVENTS, q as EndMsg, E as EndReason, r as ErrorCode, s as ErrorCodeName, t as ErrorData, u as ErrorMsg, v as ErrorReason, w as ErrorReasonName, x as EventMsg, y as EventName, F as FsPatchEditFailure, H as HelloMsg, L as Limits, z as MlInstallPhase, A as MlInstallProgress, f as MlProgress, G as MlRuntimeState, I as MlServiceState, J as MlServiceStatus, K as MlStatusParams, N as MlStatusResult, P as ModelsInstallParams, Q as ModelsInstallResult, R as ModelsProgressEvent, U as ModelsStatusParams, V as ModelsStatusResult, X as ModelsTranscribeParams, M as ModelsTranscribeResult, Y as NAMED_SCHEMAS, Z as NamedSchemaId, c as OPS, _ as OpDescriptor, a as OpParams, b as OpResult, $ as OpSpec, a0 as PING_TEXT, a1 as PONG_TEXT, a2 as ProtocolErrorBody, a3 as RelayMsg, a4 as RequestMsg, a5 as ResponseMsg, a6 as SERVICES, a7 as SUBPROTOCOL, a8 as ServiceId, a9 as ServiceOpName, aa as ServiceOpSpec, ab as ServiceSpec, S as StreamMeta, ac as StreamMsg, ad as TranscriptSegment, T as TranscriptionModelId, ae as TranscriptionModelInfo, W as Welcome, af as closeRule, i as isDesktopProtocolError, ag as isTerminalClose } from './models-BiquRLLO.js';
4
4
  export { BROADCAST_CID, DecodedFrame, FRAME_HEADER_BYTES, FRAME_STRUCT_FORMAT, FRAME_VERSION, FrameChannel, FrameChannelValue, FrameFlag, assertFrameHeader, connectionEndFrame, decodeFrame, encodeFrame, hasFlag, isConnectionEnd, readCid, stampCid } from './frame.js';
5
5
 
6
6
  /** @ai-matrx/desktop-protocol — version and primitive schemas. Schema source: lint-enforced rules in scripts/check-schema-source.mjs. */
@@ -19,10 +19,11 @@ declare const PROTOCOL_MAJOR: 1;
19
19
  * 1.5 — `coding.history.import_missing`: Claude Code history the platform lacks, imported by the
20
20
  * `coding` Python service.
21
21
  * 1.6 — the `audio` capability: devices, record a clip to a WAV file, play a file.
22
+ * 1.7 — a window names its owning application and process (WindowInfo `app`, `pid`).
22
23
  */
23
- declare const PROTOCOL_MINOR: 6;
24
+ declare const PROTOCOL_MINOR: 7;
24
25
  /** This package's version as the wire spells it ("major.minor"): hello, welcome, relay status. */
25
- declare const PROTOCOL_VERSION: "1.6";
26
+ declare const PROTOCOL_VERSION: "1.7";
26
27
  /** Internal building blocks — deliberately unnamed in $defs (inlined wherever used). */
27
28
  declare const u32: z.ZodInt;
28
29
  declare const nonNegInt: z.ZodInt;
@@ -1861,6 +1862,8 @@ declare const WindowInfo: z.ZodObject<{
1861
1862
  y: z.ZodInt;
1862
1863
  width: z.ZodInt;
1863
1864
  height: z.ZodInt;
1865
+ app: z.ZodOptional<z.ZodString>;
1866
+ pid: z.ZodOptional<z.ZodInt>;
1864
1867
  }, z.core.$strict>;
1865
1868
  type WindowInfo = z.output<typeof WindowInfo>;
1866
1869
  declare const WindowListParams: z.ZodObject<{
@@ -1876,6 +1879,8 @@ declare const WindowListResult: z.ZodObject<{
1876
1879
  y: z.ZodInt;
1877
1880
  width: z.ZodInt;
1878
1881
  height: z.ZodInt;
1882
+ app: z.ZodOptional<z.ZodString>;
1883
+ pid: z.ZodOptional<z.ZodInt>;
1879
1884
  }, z.core.$strict>>;
1880
1885
  total: z.ZodInt;
1881
1886
  truncated: z.ZodBoolean;
@@ -1893,6 +1898,8 @@ declare const WindowFocusResult: z.ZodObject<{
1893
1898
  y: z.ZodInt;
1894
1899
  width: z.ZodInt;
1895
1900
  height: z.ZodInt;
1901
+ app: z.ZodOptional<z.ZodString>;
1902
+ pid: z.ZodOptional<z.ZodInt>;
1896
1903
  }, z.core.$strict>;
1897
1904
  }, z.core.$strict>;
1898
1905
  type WindowFocusResult = z.output<typeof WindowFocusResult>;
@@ -1912,6 +1919,8 @@ declare const WindowMoveResult: z.ZodObject<{
1912
1919
  y: z.ZodInt;
1913
1920
  width: z.ZodInt;
1914
1921
  height: z.ZodInt;
1922
+ app: z.ZodOptional<z.ZodString>;
1923
+ pid: z.ZodOptional<z.ZodInt>;
1915
1924
  }, z.core.$strict>;
1916
1925
  }, z.core.$strict>;
1917
1926
  type WindowMoveResult = z.output<typeof WindowMoveResult>;
@@ -2672,6 +2681,10 @@ declare const FIELDS_SINCE: {
2672
2681
  readonly "RelayCallResponse|1": {
2673
2682
  readonly protocol_version: "1.1";
2674
2683
  };
2684
+ readonly WindowInfo: {
2685
+ readonly app: "1.7";
2686
+ readonly pid: "1.7";
2687
+ };
2675
2688
  };
2676
2689
  type FieldsSincePath = keyof typeof FIELDS_SINCE;
2677
2690
  /**
@@ -2726,7 +2739,7 @@ declare function forPeer(op: OpName | null, part: "error", value: unknown, versi
2726
2739
  declare const VERSIONED_RESULT_OPS: readonly OpName[];
2727
2740
 
2728
2741
  /** SHA-256 of generated/desktop-protocol.schema.json: the contract both sides of a service connection were built from. */
2729
- declare const CONTRACT_SHA256: "2cbf3c7589a30141305f6f0f38c4d4a32bf9ef2a890f7572d9c7bd15c398d4b9";
2742
+ declare const CONTRACT_SHA256: "5525674072a767340a8bd75a4e4b98c588577a866b4d381edeb377401729e14d";
2730
2743
 
2731
2744
  /**
2732
2745
  * The local tool catalog (SPEC §10): every tool a platform agent calls on a person's computer, the
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  // src/schema/primitives.ts
2
2
  import { z } from "zod";
3
3
  var PROTOCOL_MAJOR = 1;
4
- var PROTOCOL_MINOR = 6;
4
+ var PROTOCOL_MINOR = 7;
5
5
  var PROTOCOL_VERSION = `${PROTOCOL_MAJOR}.${PROTOCOL_MINOR}`;
6
6
  var ProtocolVersion = z.string().regex(/^[1-9][0-9]{0,2}\.[0-9]{1,3}$/);
7
7
  var RequestId = z.string().min(1).max(64).regex(/^[A-Za-z0-9_-]+$/);
@@ -1097,7 +1097,15 @@ var WindowInfo = z18.strictObject({
1097
1097
  x: z18.int(),
1098
1098
  y: z18.int(),
1099
1099
  width: z18.int().min(0),
1100
- height: z18.int().min(0)
1100
+ height: z18.int().min(0),
1101
+ /**
1102
+ * The application that owns the window, by the name the OS shows people; absent when the OS does
1103
+ * not say. Optional (never null, the schema rule) because it was added in protocol 1.7: an older
1104
+ * app's answer has no such field (FIELDS_SINCE).
1105
+ */
1106
+ app: z18.string().max(256).optional(),
1107
+ /** The owning process id; absent when the OS does not say. Added in protocol 1.7. */
1108
+ pid: z18.int().min(0).optional()
1101
1109
  });
1102
1110
  var WindowListParams = z18.strictObject({
1103
1111
  /** Case-insensitive substring of the window title. */
@@ -1814,7 +1822,8 @@ var FIELDS_SINCE = {
1814
1822
  FsPatchResult: { edits_applied: "1.1", edits_failed: "1.1" },
1815
1823
  "ProtocolErrorBody.data": { edits_failed: "1.1" },
1816
1824
  "RelayCallResponse|0": { protocol_version: "1.1" },
1817
- "RelayCallResponse|1": { protocol_version: "1.1" }
1825
+ "RelayCallResponse|1": { protocol_version: "1.1" },
1826
+ WindowInfo: { app: "1.7", pid: "1.7" }
1818
1827
  };
1819
1828
  var NULL_SINCE = {
1820
1829
  "RelayDeviceStatusEvent.since_ms": { since: "1.1", olderPeersGet: 0 }
@@ -1868,8 +1877,28 @@ function strip(value, fields, version) {
1868
1877
  return out ?? value;
1869
1878
  }
1870
1879
  var RESULT_PATH = /* @__PURE__ */ new Map([["fs.patch", "FsPatchResult"]]);
1880
+ var WINDOW_RESULTS = /* @__PURE__ */ new Map([
1881
+ ["window.list", "windows"],
1882
+ ["window.focus", "window"],
1883
+ ["window.move", "window"]
1884
+ ]);
1885
+ function stripWindows(value, key, version) {
1886
+ if (value === null || typeof value !== "object") return value;
1887
+ const body = value;
1888
+ const inner = body[key];
1889
+ if (inner === void 0) return value;
1890
+ const fields = FIELDS_SINCE.WindowInfo;
1891
+ if (Array.isArray(inner)) {
1892
+ const next2 = inner.map((w) => strip(w, fields, version));
1893
+ return next2.some((w, i) => w !== inner[i]) ? { ...body, [key]: next2 } : value;
1894
+ }
1895
+ const next = strip(inner, fields, version);
1896
+ return next === inner ? value : { ...body, [key]: next };
1897
+ }
1871
1898
  function forPeer(op, part, value, version) {
1872
1899
  if (part === "result") {
1900
+ const windowKey = op ? WINDOW_RESULTS.get(op) : void 0;
1901
+ if (windowKey) return stripWindows(value, windowKey, version);
1873
1902
  const path = op ? RESULT_PATH.get(op) : void 0;
1874
1903
  return path ? strip(value, FIELDS_SINCE[path], version) : value;
1875
1904
  }
@@ -1885,10 +1914,10 @@ function forPeer(op, part, value, version) {
1885
1914
  }
1886
1915
  return data === body.data ? value : { ...body, data };
1887
1916
  }
1888
- var VERSIONED_RESULT_OPS = [...RESULT_PATH.keys()];
1917
+ var VERSIONED_RESULT_OPS = [...RESULT_PATH.keys(), ...WINDOW_RESULTS.keys()];
1889
1918
 
1890
1919
  // src/contract.ts
1891
- var CONTRACT_SHA256 = "2cbf3c7589a30141305f6f0f38c4d4a32bf9ef2a890f7572d9c7bd15c398d4b9";
1920
+ var CONTRACT_SHA256 = "5525674072a767340a8bd75a4e4b98c588577a866b4d381edeb377401729e14d";
1892
1921
 
1893
1922
  // src/close-policy.ts
1894
1923
  var CLOSE_RULES = {