diff --git a/src/lib/controlplane/openclaw-adapter.ts b/src/lib/controlplane/openclaw-adapter.ts index 639d097..c1d781c 100644 --- a/src/lib/controlplane/openclaw-adapter.ts +++ b/src/lib/controlplane/openclaw-adapter.ts @@ -16,8 +16,8 @@ const REQUEST_TIMEOUT_MS = 15_000; const INITIAL_RECONNECT_DELAY_MS = 1_000; const MAX_RECONNECT_DELAY_MS = 15_000; const CONNECT_PROTOCOL = 3; -const CONNECT_CLIENT_ID = "openclaw-control-ui"; -const CONNECT_CLIENT_MODE = "webchat"; +const CONNECT_CLIENT_ID = "gateway-client"; +const CONNECT_CLIENT_MODE = "backend"; const CONNECT_CAPABILITIES = ["tool-events"]; const DEFAULT_METHOD_ALLOWLIST = new Set([ @@ -328,7 +328,7 @@ export class OpenClawGatewayAdapter { client: { id: CONNECT_CLIENT_ID, version: "dev", - platform: "web", + platform: "node", mode: CONNECT_CLIENT_MODE, }, role: "operator", diff --git a/tests/unit/openclawAdapter.test.ts b/tests/unit/openclawAdapter.test.ts index cdf3480..11fd301 100644 --- a/tests/unit/openclawAdapter.test.ts +++ b/tests/unit/openclawAdapter.test.ts @@ -38,6 +38,7 @@ describe("OpenClawGatewayAdapter", () => { const upstreamUrl = `ws://127.0.0.1:${address.port}`; let observedConnectClientId: string | null = null; let observedConnectClientMode: string | null = null; + let observedConnectClientPlatform: string | null = null; let observedConnectCaps: string[] | null = null; upstream.on("connection", (ws) => { @@ -47,13 +48,14 @@ describe("OpenClawGatewayAdapter", () => { id?: string; method?: string; params?: { - client?: { id?: string; mode?: string }; + client?: { id?: string; mode?: string; platform?: string }; caps?: string[]; }; }; if (parsed?.method === "connect") { observedConnectClientId = parsed.params?.client?.id ?? null; observedConnectClientMode = parsed.params?.client?.mode ?? null; + observedConnectClientPlatform = parsed.params?.client?.platform ?? null; observedConnectCaps = Array.isArray(parsed.params?.caps) ? parsed.params.caps : null; ws.send( JSON.stringify({ @@ -81,8 +83,9 @@ describe("OpenClawGatewayAdapter", () => { "Control-plane gateway connection closed." ); expect(Date.now() - startedAt).toBeLessThan(2_000); - expect(observedConnectClientId).toBe("openclaw-control-ui"); - expect(observedConnectClientMode).toBe("webchat"); + expect(observedConnectClientId).toBe("gateway-client"); + expect(observedConnectClientMode).toBe("backend"); + expect(observedConnectClientPlatform).toBe("node"); expect(observedConnectCaps).toEqual(expect.arrayContaining(["tool-events"])); await adapter.stop();