diff --git a/backend/Services/OpenClawGatewayClient.cs b/backend/Services/OpenClawGatewayClient.cs index e932e64..8633c3c 100644 --- a/backend/Services/OpenClawGatewayClient.cs +++ b/backend/Services/OpenClawGatewayClient.cs @@ -50,7 +50,11 @@ public sealed class OpenClawGatewayClient(HttpClient httpClient, IConfiguration if (string.IsNullOrWhiteSpace(json)) return null; - return JsonNode.Parse(json); + var node = JsonNode.Parse(json); + // Unwrap the { ok: true, result: ... } envelope + if (node?["ok"]?.GetValue() == true && node["result"] is not null) + return node["result"]; + return node; } catch { @@ -91,7 +95,7 @@ public sealed class OpenClawGatewayClient(HttpClient httpClient, IConfiguration } // Also get subagents list - var subagentsResult = await InvokeToolAsync("sub_agents_list"); + var subagentsResult = await InvokeToolAsync("subagents", new { action = "list" }); if (subagentsResult is not null && subagentsResult is JsonArray subArray) { foreach (var sub in subArray) @@ -190,7 +194,7 @@ public sealed class OpenClawGatewayClient(HttpClient httpClient, IConfiguration { try { - var result = await InvokeToolAsync("cron_list"); + var result = await InvokeToolAsync("cron", new { action = "list" }); if (result is null) return new List(); @@ -226,7 +230,7 @@ public sealed class OpenClawGatewayClient(HttpClient httpClient, IConfiguration try { // Check gateway health - using var pingRequest = new HttpRequestMessage(HttpMethod.Get, "/"); + using var pingRequest = new HttpRequestMessage(HttpMethod.Get, "/health"); ApplyAuth(pingRequest); using var pingResponse = await httpClient.SendAsync(pingRequest); gatewayOk = pingResponse.IsSuccessStatusCode;