@dev-anywhere/relay 0.4.72 → 0.4.74

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.
@@ -4,10 +4,11 @@ import type { RelayRegistry } from "../registry.js";
4
4
  import type { RelayChaos } from "../chaos.js";
5
5
  import type { VoiceConfigStore } from "../voice/config-store.js";
6
6
  import type { VoiceProviderRegistry } from "../voice/provider.js";
7
+ import type { RemoteFileBridge } from "../remote-file-bridge.js";
7
8
  interface ClientConnectionInfo {
8
9
  userAgent?: string;
9
10
  remoteAddress?: string;
10
11
  }
11
- export declare function handleClientConnection(ws: WebSocket, registry: RelayRegistry, logger: Logger, chaos?: RelayChaos, voiceConfigStore?: VoiceConfigStore, voiceProviders?: VoiceProviderRegistry, connectionInfo?: ClientConnectionInfo): void;
12
+ export declare function handleClientConnection(ws: WebSocket, registry: RelayRegistry, logger: Logger, chaos?: RelayChaos, voiceConfigStore?: VoiceConfigStore, voiceProviders?: VoiceProviderRegistry, remoteFileBridge?: RemoteFileBridge, connectionInfo?: ClientConnectionInfo): void;
12
13
  export {};
13
14
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/handlers/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAQ/B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAE1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAalE,UAAU,oBAAoB;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAoLD,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,SAAS,EACb,QAAQ,EAAE,aAAa,EACvB,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,UAAU,EAClB,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,cAAc,CAAC,EAAE,qBAAqB,EACtC,cAAc,GAAE,oBAAyB,GACxC,IAAI,CA4NN"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/handlers/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAS/B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAElE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAYjE,UAAU,oBAAoB;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAuQD,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,SAAS,EACb,QAAQ,EAAE,aAAa,EACvB,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,UAAU,EAClB,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,cAAc,CAAC,EAAE,qBAAqB,EACtC,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,cAAc,GAAE,oBAAyB,GACxC,IAAI,CA+UN"}
@@ -2,5 +2,6 @@ import { WebSocket } from "ws";
2
2
  import type { Logger } from "@dev-anywhere/shared/logger";
3
3
  import type { RelayRegistry } from "../registry.js";
4
4
  import type { RelayChaos } from "../chaos.js";
5
- export declare function handleProxyConnection(ws: WebSocket, registry: RelayRegistry, logger: Logger, chaos?: RelayChaos): void;
5
+ import type { RemoteFileBridge } from "../remote-file-bridge.js";
6
+ export declare function handleProxyConnection(ws: WebSocket, registry: RelayRegistry, logger: Logger, chaos?: RelayChaos, remoteFileBridge?: RemoteFileBridge): void;
6
7
  //# sourceMappingURL=proxy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../src/handlers/proxy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAM/B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AA0E9C,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,SAAS,EACb,QAAQ,EAAE,aAAa,EACvB,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,UAAU,GACjB,IAAI,CA4MN"}
1
+ {"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../src/handlers/proxy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAM/B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAyEjE,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,SAAS,EACb,QAAQ,EAAE,aAAa,EACvB,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,UAAU,EAClB,gBAAgB,CAAC,EAAE,gBAAgB,GAClC,IAAI,CA2NN"}
package/dist/index.js CHANGED
@@ -3,7 +3,7 @@ import {
3
3
  RELAY_VERSION,
4
4
  createRelayServer,
5
5
  parseRelayChaosFromEnv
6
- } from "./chunk-H7OL7UK7.js";
6
+ } from "./chunk-XY4ATTV2.js";
7
7
 
8
8
  // ../../packages/shared/dist/logger.js
9
9
  import { lstatSync, mkdirSync, readdirSync, renameSync, statSync, symlinkSync, unlinkSync } from "fs";
@@ -10,6 +10,11 @@ interface ClientConnectionMetadata {
10
10
  clientId?: string;
11
11
  connectedAt: number;
12
12
  userAgent?: string;
13
+ platform?: string;
14
+ maxTouchPoints?: number;
15
+ browserName?: string;
16
+ osName?: string;
17
+ deviceKind?: "desktop" | "tablet" | "phone" | "unknown";
13
18
  remoteAddress?: string;
14
19
  }
15
20
  export declare class RelayRegistry {
@@ -46,6 +51,7 @@ export declare class RelayRegistry {
46
51
  connectedAt?: number;
47
52
  }): void;
48
53
  updateConnectedClientId(ws: WebSocket, clientId: string): void;
54
+ updateConnectedClientMetadata(ws: WebSocket, metadata: Partial<Omit<ClientConnectionMetadata, "connectedAt">>): void;
49
55
  removeClientWs(ws: WebSocket): void;
50
56
  getAllClientWs(): WebSocket[];
51
57
  getConnectedClientSockets(clientId: string): WebSocket[];
@@ -69,6 +75,11 @@ export declare class RelayRegistry {
69
75
  connectedAt: number;
70
76
  current?: boolean;
71
77
  userAgent?: string;
78
+ platform?: string;
79
+ maxTouchPoints?: number;
80
+ browserName: string;
81
+ osName: string;
82
+ deviceKind: "desktop" | "tablet" | "phone" | "unknown";
72
83
  remoteAddress?: string;
73
84
  }>;
74
85
  }
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ import type { Request, Response } from "express";
2
+ import { type ControlMessage } from "@dev-anywhere/shared";
3
+ import type { Logger } from "@dev-anywhere/shared/logger";
4
+ import type { RelayRegistry } from "./registry.js";
5
+ type RemoteFileDisposition = "inline" | "download";
6
+ type RemoteFileUploadKind = "clipboard_image" | "file";
7
+ interface RemoteFileBridgeDeps {
8
+ registry: RelayRegistry;
9
+ logger: Logger;
10
+ }
11
+ export declare class RemoteFileBridge {
12
+ private readonly deps;
13
+ private readonly tokens;
14
+ private readonly uploadTokens;
15
+ private readonly pendingStreams;
16
+ private readonly pendingUploads;
17
+ constructor(deps: RemoteFileBridgeDeps);
18
+ createUrl(input: {
19
+ clientId: string;
20
+ proxyId: string;
21
+ sessionId: string;
22
+ path: string;
23
+ disposition: RemoteFileDisposition;
24
+ }): {
25
+ url: string;
26
+ expiresAt: number;
27
+ };
28
+ createUploadUrl(input: {
29
+ clientId: string;
30
+ proxyId: string;
31
+ sessionId: string;
32
+ kind: RemoteFileUploadKind;
33
+ fileName?: string;
34
+ mimeType: string;
35
+ size?: number;
36
+ }): {
37
+ uploadUrl: string;
38
+ expiresAt: number;
39
+ };
40
+ handleHttpRequest(req: Request, res: Response): void;
41
+ handleUploadHttpRequest(req: Request, res: Response): void;
42
+ handleProxyControl(proxyId: string, msg: ControlMessage<"remote_file_stream_response">): boolean;
43
+ handleProxyControl(proxyId: string, msg: ControlMessage<"remote_file_stream_complete">): boolean;
44
+ handleProxyControl(proxyId: string, msg: ControlMessage<"remote_file_upload_stream_response">): boolean;
45
+ handleProxyBinary(proxyId: string, data: Buffer): boolean;
46
+ private handleStreamResponse;
47
+ private handleStreamComplete;
48
+ private handleUploadResponse;
49
+ private failStream;
50
+ private failUpload;
51
+ private writeJsonError;
52
+ private sendCancel;
53
+ private sendUploadCancel;
54
+ private cleanupExpiredTokens;
55
+ }
56
+ export {};
57
+ //# sourceMappingURL=remote-file-bridge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remote-file-bridge.d.ts","sourceRoot":"","sources":["../src/remote-file-bridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGjD,OAAO,EAKL,KAAK,cAAc,EACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAMnD,KAAK,qBAAqB,GAAG,QAAQ,GAAG,UAAU,CAAC;AACnD,KAAK,oBAAoB,GAAG,iBAAiB,GAAG,MAAM,CAAC;AA2CvD,UAAU,oBAAoB;IAC5B,QAAQ,EAAE,aAAa,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;CAChB;AAqBD,qBAAa,gBAAgB;IAMf,OAAO,CAAC,QAAQ,CAAC,IAAI;IALjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsC;IAC7D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA4C;IACzE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwC;IACvE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwC;gBAE1C,IAAI,EAAE,oBAAoB;IAEvD,SAAS,CAAC,KAAK,EAAE;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,qBAAqB,CAAC;KACpC,GAAG;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE;IAgBtC,eAAe,CAAC,KAAK,EAAE;QACrB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,oBAAoB,CAAC;QAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE;IAkB5C,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI;IAqDpD,uBAAuB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI;IA6E1D,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,CAAC,6BAA6B,CAAC,GAAG,OAAO;IAChG,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,CAAC,6BAA6B,CAAC,GAAG,OAAO;IAChG,kBAAkB,CAChB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,cAAc,CAAC,oCAAoC,CAAC,GACxD,OAAO;IA+BV,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAmBzD,OAAO,CAAC,oBAAoB;IA8B5B,OAAO,CAAC,oBAAoB;IAuB5B,OAAO,CAAC,oBAAoB;IAiC5B,OAAO,CAAC,UAAU;IAclB,OAAO,CAAC,UAAU;IAclB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,oBAAoB;CAS7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAEA,OAAO,EAAsC,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AAK5E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAK9C,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEtE,OAAO,EAA4B,KAAK,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AACzF,OAAO,EAA4B,KAAK,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAEzF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAA+B,KAAK,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE9F,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,WAAW,CAAC,EAAE,MAAM,CAAC;IAIrB,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE;QACd,MAAM,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAC9C,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAC9C,yBAAyB,CAAC,EAAE,yBAAyB,CAAC;IACtD,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;CAC/C;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,aAAa,CAAC;IACxB,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAiBD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,WAAW,CA+O1E"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAEA,OAAO,EAAsC,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AAK5E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAK9C,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEtE,OAAO,EAA4B,KAAK,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AACzF,OAAO,EAA4B,KAAK,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAEzF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAA+B,KAAK,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAG9F,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,WAAW,CAAC,EAAE,MAAM,CAAC;IAIrB,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE;QACd,MAAM,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAC9C,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAC9C,yBAAyB,CAAC,EAAE,yBAAyB,CAAC;IACtD,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;CAC/C;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,aAAa,CAAC;IACxB,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAiBD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,WAAW,CA+P1E"}
package/dist/server.js CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  createRelayServer
4
- } from "./chunk-H7OL7UK7.js";
4
+ } from "./chunk-XY4ATTV2.js";
5
5
  export {
6
6
  createRelayServer
7
7
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dev-anywhere/relay",
3
- "version": "0.4.72",
3
+ "version": "0.4.74",
4
4
  "description": "Relay server for DEV Anywhere — bridges local AI CLI proxies to remote web clients via WebSocket.",
5
5
  "keywords": [
6
6
  "claude-code",
@@ -54,7 +54,7 @@
54
54
  "@types/node": "^22.15.30",
55
55
  "@types/ws": "^8.18.1",
56
56
  "vitest": "^4.1.2",
57
- "@dev-anywhere/shared": "0.4.72"
57
+ "@dev-anywhere/shared": "0.4.74"
58
58
  },
59
59
  "scripts": {
60
60
  "build": "tsup && rm -f tsconfig.build.tsbuildinfo && tsc -p tsconfig.build.json --emitDeclarationOnly --outDir dist",