@openclaw-cloud/agent-controller 3.6.2 → 3.6.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.
Files changed (205) hide show
  1. package/dist/api.d.ts +2 -14
  2. package/dist/api.js +1 -15
  3. package/dist/api.js.map +1 -1
  4. package/dist/commands/agent-update-cli.js +0 -7
  5. package/dist/commands/agent-update-cli.js.map +1 -1
  6. package/dist/commands/bootstrap.d.ts +0 -10
  7. package/dist/commands/bootstrap.js +2 -16
  8. package/dist/commands/bootstrap.js.map +1 -1
  9. package/dist/commands/channel-server.d.ts +0 -16
  10. package/dist/commands/channel-server.js +1 -19
  11. package/dist/commands/channel-server.js.map +1 -1
  12. package/dist/commands/deploy-cli.js +2 -12
  13. package/dist/commands/deploy-cli.js.map +1 -1
  14. package/dist/commands/diagnostics-cli.js +0 -6
  15. package/dist/commands/diagnostics-cli.js.map +1 -1
  16. package/dist/commands/install-deps.d.ts +0 -10
  17. package/dist/commands/install-deps.js +1 -10
  18. package/dist/commands/install-deps.js.map +1 -1
  19. package/dist/commands/install.js +0 -6
  20. package/dist/commands/install.js.map +1 -1
  21. package/dist/commands/package-install-cli.js +1 -14
  22. package/dist/commands/package-install-cli.js.map +1 -1
  23. package/dist/commands/plugin-update-cli.js +1 -8
  24. package/dist/commands/plugin-update-cli.js.map +1 -1
  25. package/dist/commands/restart-cli.js +0 -4
  26. package/dist/commands/restart-cli.js.map +1 -1
  27. package/dist/commands/self-update.d.ts +2 -24
  28. package/dist/commands/self-update.js +5 -54
  29. package/dist/commands/self-update.js.map +1 -1
  30. package/dist/commands/stop-cli.d.ts +0 -4
  31. package/dist/commands/stop-cli.js +1 -24
  32. package/dist/commands/stop-cli.js.map +1 -1
  33. package/dist/config-file.d.ts +3 -20
  34. package/dist/config-file.js +3 -22
  35. package/dist/config-file.js.map +1 -1
  36. package/dist/config.d.ts +0 -22
  37. package/dist/config.js +1 -34
  38. package/dist/config.js.map +1 -1
  39. package/dist/connection.js +2 -39
  40. package/dist/connection.js.map +1 -1
  41. package/dist/handlers/agent-update.d.ts +1 -21
  42. package/dist/handlers/agent-update.js +1 -21
  43. package/dist/handlers/agent-update.js.map +1 -1
  44. package/dist/handlers/chat.d.ts +0 -8
  45. package/dist/handlers/chat.js +3 -23
  46. package/dist/handlers/chat.js.map +1 -1
  47. package/dist/handlers/file-write.js +1 -4
  48. package/dist/handlers/file-write.js.map +1 -1
  49. package/dist/handlers/memory.d.ts +1 -9
  50. package/dist/handlers/memory.js +3 -25
  51. package/dist/handlers/memory.js.map +1 -1
  52. package/dist/handlers/onboarding.js +0 -2
  53. package/dist/handlers/onboarding.js.map +1 -1
  54. package/dist/handlers/pair.js +1 -3
  55. package/dist/handlers/pair.js.map +1 -1
  56. package/dist/handlers/plugin-update.d.ts +1 -16
  57. package/dist/handlers/plugin-update.js +1 -16
  58. package/dist/handlers/plugin-update.js.map +1 -1
  59. package/dist/handlers/restart.js +0 -2
  60. package/dist/handlers/restart.js.map +1 -1
  61. package/dist/handlers/self-update.d.ts +2 -29
  62. package/dist/handlers/self-update.js +3 -35
  63. package/dist/handlers/self-update.js.map +1 -1
  64. package/dist/handlers/slack-event.d.ts +2 -9
  65. package/dist/handlers/slack-event.js +2 -10
  66. package/dist/handlers/slack-event.js.map +1 -1
  67. package/dist/heartbeat.d.ts +2 -12
  68. package/dist/heartbeat.js +3 -18
  69. package/dist/heartbeat.js.map +1 -1
  70. package/dist/index.js +6 -50
  71. package/dist/index.js.map +1 -1
  72. package/dist/lockfile.d.ts +0 -7
  73. package/dist/lockfile.js +0 -9
  74. package/dist/lockfile.js.map +1 -1
  75. package/dist/memory-mcp-server.d.ts +1 -19
  76. package/dist/memory-mcp-server.js +5 -53
  77. package/dist/memory-mcp-server.js.map +1 -1
  78. package/dist/mock-board-worker.d.ts +2 -25
  79. package/dist/mock-board-worker.js +7 -54
  80. package/dist/mock-board-worker.js.map +1 -1
  81. package/dist/platform/linux.js +0 -3
  82. package/dist/platform/linux.js.map +1 -1
  83. package/dist/platform/macos.js +0 -2
  84. package/dist/platform/macos.js.map +1 -1
  85. package/dist/providers/chat-types.d.ts +0 -3
  86. package/dist/providers/chat-types.js +0 -3
  87. package/dist/providers/chat-types.js.map +1 -1
  88. package/dist/providers/claude-code/channel-server.d.ts +0 -19
  89. package/dist/providers/claude-code/channel-server.js +0 -19
  90. package/dist/providers/claude-code/channel-server.js.map +1 -1
  91. package/dist/providers/claude-code/index.d.ts +0 -22
  92. package/dist/providers/claude-code/index.js +3 -26
  93. package/dist/providers/claude-code/index.js.map +1 -1
  94. package/dist/providers/claude-code/login-flow.d.ts +0 -17
  95. package/dist/providers/claude-code/login-flow.js +2 -16
  96. package/dist/providers/claude-code/login-flow.js.map +1 -1
  97. package/dist/providers/claude-code/settings-writer.d.ts +1 -16
  98. package/dist/providers/claude-code/settings-writer.js +5 -20
  99. package/dist/providers/claude-code/settings-writer.js.map +1 -1
  100. package/dist/providers/claude-code/socket-bridge.d.ts +0 -35
  101. package/dist/providers/claude-code/socket-bridge.js +2 -43
  102. package/dist/providers/claude-code/socket-bridge.js.map +1 -1
  103. package/dist/providers/claude-code/spawn-claude.d.ts +0 -17
  104. package/dist/providers/claude-code/spawn-claude.js +1 -15
  105. package/dist/providers/claude-code/spawn-claude.js.map +1 -1
  106. package/dist/providers/index.d.ts +1 -10
  107. package/dist/providers/index.js +2 -13
  108. package/dist/providers/index.js.map +1 -1
  109. package/dist/providers/mock/index.d.ts +0 -4
  110. package/dist/providers/mock/index.js +0 -4
  111. package/dist/providers/mock/index.js.map +1 -1
  112. package/dist/providers/openclaw/auto-pair.d.ts +1 -6
  113. package/dist/providers/openclaw/auto-pair.js +1 -10
  114. package/dist/providers/openclaw/auto-pair.js.map +1 -1
  115. package/dist/providers/openclaw/device-identity.d.ts +1 -1
  116. package/dist/providers/openclaw/device-identity.js +33 -17
  117. package/dist/providers/openclaw/device-identity.js.map +1 -1
  118. package/dist/providers/openclaw/gateway-adapter.d.ts +0 -5
  119. package/dist/providers/openclaw/gateway-adapter.js +4 -32
  120. package/dist/providers/openclaw/gateway-adapter.js.map +1 -1
  121. package/dist/providers/openclaw/gateway-client.js +3 -9
  122. package/dist/providers/openclaw/gateway-client.js.map +1 -1
  123. package/dist/providers/openclaw/index.js +2 -15
  124. package/dist/providers/openclaw/index.js.map +1 -1
  125. package/dist/providers/types.d.ts +0 -10
  126. package/dist/slack-relay-server.d.ts +4 -33
  127. package/dist/slack-relay-server.js +9 -57
  128. package/dist/slack-relay-server.js.map +1 -1
  129. package/dist/types.d.ts +1 -12
  130. package/dist/types.js +0 -6
  131. package/dist/types.js.map +1 -1
  132. package/dist/utils/agent-controller-bin.d.ts +0 -6
  133. package/dist/utils/agent-controller-bin.js +1 -21
  134. package/dist/utils/agent-controller-bin.js.map +1 -1
  135. package/dist/utils/anthropic-auth.d.ts +1 -22
  136. package/dist/utils/anthropic-auth.js +0 -10
  137. package/dist/utils/anthropic-auth.js.map +1 -1
  138. package/dist/utils/apply-config.d.ts +7 -74
  139. package/dist/utils/apply-config.js +30 -221
  140. package/dist/utils/apply-config.js.map +1 -1
  141. package/dist/utils/backup-push.d.ts +0 -10
  142. package/dist/utils/backup-push.js +0 -15
  143. package/dist/utils/backup-push.js.map +1 -1
  144. package/dist/utils/claude-env.d.ts +1 -10
  145. package/dist/utils/claude-env.js +2 -14
  146. package/dist/utils/claude-env.js.map +1 -1
  147. package/dist/utils/config-merge-paths.d.ts +5 -43
  148. package/dist/utils/config-merge-paths.js +5 -43
  149. package/dist/utils/config-merge-paths.js.map +1 -1
  150. package/dist/utils/deploy-type.d.ts +1 -13
  151. package/dist/utils/deploy-type.js +2 -19
  152. package/dist/utils/deploy-type.js.map +1 -1
  153. package/dist/utils/diagnostics.d.ts +0 -7
  154. package/dist/utils/diagnostics.js +0 -15
  155. package/dist/utils/diagnostics.js.map +1 -1
  156. package/dist/utils/exec.d.ts +0 -10
  157. package/dist/utils/exec.js +2 -32
  158. package/dist/utils/exec.js.map +1 -1
  159. package/dist/utils/gateway-restart-handler.d.ts +1 -8
  160. package/dist/utils/gateway-restart-handler.js +1 -8
  161. package/dist/utils/gateway-restart-handler.js.map +1 -1
  162. package/dist/utils/gateway-restart.d.ts +1 -11
  163. package/dist/utils/gateway-restart.js +1 -11
  164. package/dist/utils/gateway-restart.js.map +1 -1
  165. package/dist/utils/knowledge-graph.d.ts +2 -25
  166. package/dist/utils/knowledge-graph.js +2 -37
  167. package/dist/utils/knowledge-graph.js.map +1 -1
  168. package/dist/utils/knowledge-push.d.ts +0 -4
  169. package/dist/utils/knowledge-push.js +4 -19
  170. package/dist/utils/knowledge-push.js.map +1 -1
  171. package/dist/utils/legacy-mcp-servers.d.ts +1 -11
  172. package/dist/utils/legacy-mcp-servers.js +1 -11
  173. package/dist/utils/legacy-mcp-servers.js.map +1 -1
  174. package/dist/utils/log-collector.js +0 -2
  175. package/dist/utils/log-collector.js.map +1 -1
  176. package/dist/utils/openclaw-ops.d.ts +5 -72
  177. package/dist/utils/openclaw-ops.js +6 -98
  178. package/dist/utils/openclaw-ops.js.map +1 -1
  179. package/dist/utils/openclaw-stack-update.d.ts +2 -14
  180. package/dist/utils/openclaw-stack-update.js +1 -6
  181. package/dist/utils/openclaw-stack-update.js.map +1 -1
  182. package/dist/utils/package-install.d.ts +0 -5
  183. package/dist/utils/package-install.js +2 -21
  184. package/dist/utils/package-install.js.map +1 -1
  185. package/dist/utils/package-version.d.ts +1 -9
  186. package/dist/utils/package-version.js +1 -9
  187. package/dist/utils/package-version.js.map +1 -1
  188. package/dist/utils/parse-id-at-version.d.ts +1 -11
  189. package/dist/utils/parse-id-at-version.js +1 -11
  190. package/dist/utils/parse-id-at-version.js.map +1 -1
  191. package/dist/utils/plugin-reconcile.d.ts +2 -33
  192. package/dist/utils/plugin-reconcile.js +7 -77
  193. package/dist/utils/plugin-reconcile.js.map +1 -1
  194. package/dist/utils/release-channel.d.ts +0 -8
  195. package/dist/utils/release-channel.js.map +1 -1
  196. package/dist/utils/write-home-files.d.ts +2 -24
  197. package/dist/utils/write-home-files.js +3 -27
  198. package/dist/utils/write-home-files.js.map +1 -1
  199. package/dist/utils/write-workspace-files.d.ts +0 -14
  200. package/dist/utils/write-workspace-files.js +1 -19
  201. package/dist/utils/write-workspace-files.js.map +1 -1
  202. package/dist/workspace.d.ts +1 -21
  203. package/dist/workspace.js +1 -21
  204. package/dist/workspace.js.map +1 -1
  205. package/package.json +1 -1
package/dist/api.d.ts CHANGED
@@ -5,23 +5,11 @@ export interface BackupInitResult {
5
5
  method: 'presigned' | 'api';
6
6
  }
7
7
  export interface BootstrapResult {
8
- /**
9
- * How this agent's machine was provisioned. Decides whether config files may
10
- * be rewritten wholesale ('vm'/'k8s') or only merged into ('standalone' /
11
- * 'external'). Absent on older backends → treated as unknown → third-party.
12
- * See utils/deploy-type.ts.
13
- */
8
+ /** Only vm/k8s permit wholesale writes; absent deploymentType from older backends is third-party. */
14
9
  deploymentType?: 'k8s' | 'vm' | 'standalone' | 'external';
15
10
  openclawConfig?: Record<string, unknown>;
16
11
  workspaceFiles?: Record<string, string>;
17
- /**
18
- * Platform-managed files delivered OUTSIDE the workspace, keyed by path
19
- * RELATIVE to the agent user's home directory (e.g. `.secrets/SECRETS.txt`);
20
- * values are the full file contents. Kept out of the workspace so knowledge
21
- * sync / indexing never touches them — they are credentials. Optional: a
22
- * backend that does not send it is a no-op. Applied by `writeHomeFiles()`
23
- * (dirs 0700, files 0600) on managed installs only.
24
- */
12
+ /** Credentials stay outside the workspace so knowledge sync cannot index them; managed installs only. */
25
13
  homeFiles?: Record<string, string>;
26
14
  skills?: Record<string, string>;
27
15
  packages?: {
package/dist/api.js CHANGED
@@ -1,14 +1,8 @@
1
1
  import { DEBUG, debugLog } from './debug.js';
2
- // ---------------------------------------------------------------------------
3
- // Timeouts by operation type
4
- // ---------------------------------------------------------------------------
5
2
  const TIMEOUT_DEFAULT = 10_000;
6
3
  const TIMEOUT_TOKEN = 5_000;
7
4
  const TIMEOUT_LONG = 30_000;
8
- const TIMEOUT_UPLOAD = 300_000; // 5 min
9
- // ---------------------------------------------------------------------------
10
- // Implementation
11
- // ---------------------------------------------------------------------------
5
+ const TIMEOUT_UPLOAD = 300_000;
12
6
  export function createAgentApi(backendUrl, agentToken) {
13
7
  async function request(method, path, body, timeoutMs = TIMEOUT_DEFAULT) {
14
8
  const controller = new AbortController();
@@ -38,7 +32,6 @@ export function createAgentApi(backendUrl, agentToken) {
38
32
  }
39
33
  }
40
34
  return {
41
- // --- Generic ---
42
35
  async get(path) {
43
36
  const res = await request('GET', path);
44
37
  if (!res.ok) {
@@ -49,7 +42,6 @@ export function createAgentApi(backendUrl, agentToken) {
49
42
  async post(path, body) {
50
43
  return request('POST', path, body);
51
44
  },
52
- // --- Agent responses & heartbeat ---
53
45
  async publishResponse(agentId, data) {
54
46
  const res = await request('POST', '/api/internal/agent-response', { agentId, data });
55
47
  if (!res.ok) {
@@ -62,7 +54,6 @@ export function createAgentApi(backendUrl, agentToken) {
62
54
  throw new Error(`publishHeartbeat failed: HTTP ${res.status}`);
63
55
  }
64
56
  },
65
- // --- Centrifugo tokens ---
66
57
  async fetchConnectionToken(agentId) {
67
58
  const res = await request('POST', '/api/internal/centrifugo-token', { agentId }, TIMEOUT_TOKEN);
68
59
  if (!res.ok) {
@@ -81,7 +72,6 @@ export function createAgentApi(backendUrl, agentToken) {
81
72
  const data = (await res.json());
82
73
  return data.subscriptions;
83
74
  },
84
- // --- Backup ---
85
75
  async backupInit(agentId) {
86
76
  const res = await request('POST', `/api/internal/agents/${agentId}/backup/init`, undefined, TIMEOUT_LONG);
87
77
  if (!res.ok) {
@@ -97,7 +87,6 @@ export function createAgentApi(backendUrl, agentToken) {
97
87
  throw new Error(`Backup complete failed: ${res.status} ${text}`);
98
88
  }
99
89
  },
100
- // --- Knowledge ---
101
90
  async knowledgePush(agentId, files) {
102
91
  const res = await request('POST', `/api/internal/agents/${agentId}/knowledge/push`, { files }, TIMEOUT_LONG);
103
92
  if (!res.ok) {
@@ -106,7 +95,6 @@ export function createAgentApi(backendUrl, agentToken) {
106
95
  }
107
96
  return res.json();
108
97
  },
109
- // --- Bootstrap ---
110
98
  async agentBootstrap(agentId) {
111
99
  const res = await request('GET', `/api/internal/agent-bootstrap/${agentId}`, undefined, TIMEOUT_LONG);
112
100
  if (!res.ok) {
@@ -115,7 +103,6 @@ export function createAgentApi(backendUrl, agentToken) {
115
103
  }
116
104
  return res.json();
117
105
  },
118
- // --- Memory delta sync ---
119
106
  async postMemoryDelta(agentId, delta) {
120
107
  const res = await request('POST', '/api/internal/agent-memory-event', { agentId, delta });
121
108
  if (!res.ok) {
@@ -123,7 +110,6 @@ export function createAgentApi(backendUrl, agentToken) {
123
110
  throw new Error(`Memory delta push failed: ${res.status} ${text}`);
124
111
  }
125
112
  },
126
- // --- Raw upload (S3 presigned or backend API fallback) ---
127
113
  async uploadRaw(url, body, contentType, size, timeoutMs = TIMEOUT_UPLOAD) {
128
114
  const start = Date.now();
129
115
  debugLog('api', `→ PUT ${url.slice(0, 80)}... (${size}b)`);
package/dist/api.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
@@ -2,13 +2,6 @@ import { parseIdAtVersion } from '../utils/parse-id-at-version.js';
2
2
  import { runOpenclawStackUpdate } from '../utils/openclaw-stack-update.js';
3
3
  import { logCollector } from '../connection.js';
4
4
  import { toErrorMessage } from '../utils/response.js';
5
- // ---------------------------------------------------------------------------
6
- // CLI entrypoint for
7
- // agent-controller agent-update <openclaw-version> [plugin@v ...]
8
- // Shares runOpenclawStackUpdate() with the WS handler (install runtime,
9
- // install plugins, one best-effort gateway restart if anything changed) and
10
- // adds only argv parsing, console output and exit codes.
11
- // ---------------------------------------------------------------------------
12
5
  const USAGE = 'Usage: agent-controller agent-update <openclaw-version> [plugin1@v1 plugin2@v2 ...]';
13
6
  function parseArgs(args) {
14
7
  if (args.length < 1)
@@ -1 +1 @@
1
- {"version":3,"file":"agent-update-cli.js","sourceRoot":"","sources":["../../src/commands/agent-update-cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-update-cli.js","sourceRoot":"","sources":["../../src/commands/agent-update-cli.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1 @@
1
- /**
2
- * `agent-controller bootstrap` (aliases: update-config / update_config).
3
- *
4
- * A thin wrapper over `fetchAndApplyConfig` — the single owner of "fetch
5
- * bootstrap and apply". This command used to hand-roll its own apply, which
6
- * drifted from the shared one: it wrote openclaw.json world-readable despite it
7
- * holding provider API keys, bypassed WORKSPACE_DIR, never wrote
8
- * auth-profiles.json or the VM .env, and rewrote ~/.claude/settings.json on any
9
- * machine — which is how a developer laptop lost its Claude settings.
10
- */
11
1
  export declare function bootstrap(): Promise<void>;
@@ -5,16 +5,7 @@ import { reconcilePlugins } from '../utils/plugin-reconcile.js';
5
5
  import { toErrorMessage } from '../utils/response.js';
6
6
  import { config, requireConfig } from '../config.js';
7
7
  import { getWorkspaceDir } from '../workspace.js';
8
- /**
9
- * `agent-controller bootstrap` (aliases: update-config / update_config).
10
- *
11
- * A thin wrapper over `fetchAndApplyConfig` — the single owner of "fetch
12
- * bootstrap and apply". This command used to hand-roll its own apply, which
13
- * drifted from the shared one: it wrote openclaw.json world-readable despite it
14
- * holding provider API keys, bypassed WORKSPACE_DIR, never wrote
15
- * auth-profiles.json or the VM .env, and rewrote ~/.claude/settings.json on any
16
- * machine — which is how a developer laptop lost its Claude settings.
17
- */
8
+ // Keep deploy-type and secret-file handling in fetchAndApplyConfig so CLI and WS cannot diverge.
18
9
  export async function bootstrap() {
19
10
  const backendUrl = getBackendUrl();
20
11
  const agentToken = requireConfig('agentToken');
@@ -30,12 +21,7 @@ export async function bootstrap() {
30
21
  ? 'Bootstrap complete (managed install — full config applied).'
31
22
  : 'Bootstrap complete (third-party install — scoped merge only; ' +
32
23
  '~/.claude/settings.json and .env left untouched).');
33
- // The config we just wrote declares which plugins must exist
34
- // (`plugins.allow`); install the ones that don't. Owned here rather than by
35
- // the VM user-data, whose `openclaw plugins install || echo` step failed
36
- // silently on a whole cohort. `reconcilePlugins` never throws — a plugin
37
- // problem is logged loudly but must not fail the boot, and the controller's
38
- // startup reconcile retries it.
24
+ // Bootstrap owns missing-plugin installation; failures must not abort boot because startup retries.
39
25
  await reconcilePlugins('bootstrap');
40
26
  }
41
27
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../src/commands/bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,UAAU,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IAEzC,OAAO,CAAC,GAAG,CAAC,uBAAuB,OAAO,KAAK,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,cAAc,UAAU,EAAE,CAAC,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,mBAAmB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,gBAAgB,eAAe,EAAE,EAAE,CAAC,CAAC;IAEjD,MAAM,GAAG,GAAG,cAAc,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAEnD,IAAI,CAAC;QACH,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,mBAAmB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CACT,OAAO;YACL,CAAC,CAAC,6DAA6D;YAC/D,CAAC,CAAC,+DAA+D;gBAC7D,mDAAmD,CAC1D,CAAC;QAEF,6DAA6D;QAC7D,4EAA4E;QAC5E,yEAAyE;QACzE,yEAAyE;QACzE,4EAA4E;QAC5E,gCAAgC;QAChC,MAAM,gBAAgB,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;QACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../src/commands/bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,iGAAiG;AACjG,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,UAAU,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IAEzC,OAAO,CAAC,GAAG,CAAC,uBAAuB,OAAO,KAAK,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,cAAc,UAAU,EAAE,CAAC,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,mBAAmB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,gBAAgB,eAAe,EAAE,EAAE,CAAC,CAAC;IAEjD,MAAM,GAAG,GAAG,cAAc,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAEnD,IAAI,CAAC;QACH,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,mBAAmB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CACT,OAAO;YACL,CAAC,CAAC,6DAA6D;YAC/D,CAAC,CAAC,+DAA+D;gBAC7D,mDAAmD,CAC1D,CAAC;QAEF,oGAAoG;QACpG,MAAM,gBAAgB,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;QACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
@@ -1,17 +1 @@
1
- /**
2
- * CLI: `agent-controller channel-server`
3
- *
4
- * Thin worker subprocess spawned by Claude Code as a stdio MCP server. It:
5
- * 1. Connects to the main agent-controller via the Unix domain socket at
6
- * `~/.openclaw/claude-channel.sock` (retries for up to 30s).
7
- * 2. Sends `{op:"hello",pid}` once connected.
8
- * 3. Starts a `ClaudeChannelServer` on stdio so Claude can call its reply
9
- * and edit_message tools.
10
- * 4. Forwards worker → main: reply/edit tool calls as JSON lines.
11
- * 5. Forwards main → worker: push ops as MCP notifications to Claude.
12
- * 6. Exits cleanly when the bridge socket closes.
13
- *
14
- * `logCollector` is NOT available here (runs as a detached subprocess);
15
- * diagnostics go to stderr only.
16
- */
17
1
  export declare function runChannelServer(argv?: string[]): Promise<void>;
@@ -1,22 +1,7 @@
1
1
  import { ClaudeChannelServer } from '../providers/claude-code/channel-server.js';
2
2
  import { ChannelBridgeClient, DEFAULT_SOCKET_PATH, } from '../providers/claude-code/socket-bridge.js';
3
3
  import { toErrorMessage } from '../utils/response.js';
4
- /**
5
- * CLI: `agent-controller channel-server`
6
- *
7
- * Thin worker subprocess spawned by Claude Code as a stdio MCP server. It:
8
- * 1. Connects to the main agent-controller via the Unix domain socket at
9
- * `~/.openclaw/claude-channel.sock` (retries for up to 30s).
10
- * 2. Sends `{op:"hello",pid}` once connected.
11
- * 3. Starts a `ClaudeChannelServer` on stdio so Claude can call its reply
12
- * and edit_message tools.
13
- * 4. Forwards worker → main: reply/edit tool calls as JSON lines.
14
- * 5. Forwards main → worker: push ops as MCP notifications to Claude.
15
- * 6. Exits cleanly when the bridge socket closes.
16
- *
17
- * `logCollector` is NOT available here (runs as a detached subprocess);
18
- * diagnostics go to stderr only.
19
- */
4
+ // This worker is a separate process without logCollector; diagnostics must use stderr, not MCP stdio.
20
5
  export async function runChannelServer(argv = []) {
21
6
  const socketPath = parseFlag(argv, '--socket-path') ?? DEFAULT_SOCKET_PATH;
22
7
  const maxWaitMs = Number(parseFlag(argv, '--max-wait-ms') ?? '30000');
@@ -30,13 +15,11 @@ export async function runChannelServer(argv = []) {
30
15
  }
31
16
  bridge.sendHello(process.pid);
32
17
  const channel = new ClaudeChannelServer({ name: 'agent-controller' });
33
- // main → worker: forward inbound chat messages to Claude.
34
18
  bridge.on('push', (content, meta) => {
35
19
  channel.pushChatMessage(content, meta).catch((err) => {
36
20
  process.stderr.write(`[channel-server] pushChatMessage failed: ${toErrorMessage(err)}\n`);
37
21
  });
38
22
  });
39
- // worker → main: forward Claude's reply/edit tool calls.
40
23
  channel.onReply((reply, tool) => {
41
24
  const meta = {
42
25
  chat_id: undefined,
@@ -60,7 +43,6 @@ export async function runChannelServer(argv = []) {
60
43
  });
61
44
  process.on('SIGTERM', shutdown);
62
45
  process.on('SIGINT', shutdown);
63
- // Attach to stdio — this blocks on stdin.
64
46
  await channel.start();
65
47
  }
66
48
  function parseFlag(argv, name) {
@@ -1 +1 @@
1
- {"version":3,"file":"channel-server.js","sourceRoot":"","sources":["../../src/commands/channel-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"channel-server.js","sourceRoot":"","sources":["../../src/commands/channel-server.ts"],"names":[],"mappings":"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"}
@@ -2,15 +2,7 @@ import { installOpenclaw } from '../utils/openclaw-ops.js';
2
2
  import { restartGateway } from '../utils/gateway-restart.js';
3
3
  import { logCollector } from '../connection.js';
4
4
  import { toErrorMessage } from '../utils/response.js';
5
- // ---------------------------------------------------------------------------
6
- // CLI entrypoint for `agent-controller deploy [version]`. Installs the named
7
- // openclaw runtime version (default: `latest`) and restarts the gateway.
8
- //
9
- // The WS handler at src/handlers/deploy.ts only restarts the gateway — it
10
- // trusts the backend to have triggered the npm install through agent_update
11
- // or self_update first. The CLI variant doesn't have that scaffolding, so it
12
- // owns both the install and the restart.
13
- // ---------------------------------------------------------------------------
5
+ // The CLI has no preceding backend agent_update/self_update step, so deploy must also install the runtime.
14
6
  const USAGE = 'Usage: agent-controller deploy [version]';
15
7
  export async function runDeployCli(args) {
16
8
  if (args.length > 1) {
@@ -39,9 +31,7 @@ export async function runDeployCli(args) {
39
31
  });
40
32
  process.exit(1);
41
33
  }
42
- // Always restart the gateway — even when the runtime install was a no-op
43
- // the operator typed `deploy` for a reason (likely to recover a wedged
44
- // gateway). Mirrors the WS handler's restart-on-deploy semantics.
34
+ // Even a no-op install must restart: deploy also recovers a wedged gateway.
45
35
  console.log('[deploy] restarting gateway...');
46
36
  try {
47
37
  await restartGateway();
@@ -1 +1 @@
1
- {"version":3,"file":"deploy-cli.js","sourceRoot":"","sources":["../../src/commands/deploy-cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,8EAA8E;AAC9E,6EAA6E;AAC7E,yEAAyE;AACzE,EAAE;AACF,0EAA0E;AAC1E,4EAA4E;AAC5E,6EAA6E;AAC7E,yCAAyC;AACzC,8EAA8E;AAE9E,MAAM,KAAK,GAAG,0CAA0C,CAAC;AAEzD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAc;IAC/C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,QAAQ,CAAC;IAE5C,YAAY,EAAE,IAAI,CAAC,kBAAkB,EAAE,MAAM,EAAE,oBAAoB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IAElF,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,gCAAgC,OAAO,KAAK,CAAC,CAAC;QAC1D,SAAS,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,qBAAqB,OAAO,YAAY,CAAC,CAAC;QACxD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,qBAAqB,OAAO,mCAAmC,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QAChC,OAAO,CAAC,KAAK,CAAC,oBAAoB,GAAG,EAAE,CAAC,CAAC;QACzC,YAAY,EAAE,IAAI,CAAC,mBAAmB,EAAE,OAAO,EAAE,mBAAmB,EAAE;YACpE,OAAO;YACP,KAAK,EAAE,GAAG;SACX,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,yEAAyE;IACzE,uEAAuE;IACvE,kEAAkE;IAClE,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAC9C,IAAI,CAAC;QACH,MAAM,cAAc,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAC5C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QAChC,OAAO,CAAC,KAAK,CAAC,0DAA0D,GAAG,EAAE,CAAC,CAAC;QAC/E,YAAY,EAAE,IAAI,CAAC,2BAA2B,EAAE,MAAM,EAAE,qCAAqC,EAAE;YAC7F,OAAO;YACP,KAAK,EAAE,GAAG;SACX,CAAC,CAAC;IACL,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;AAC/B,CAAC"}
1
+ {"version":3,"file":"deploy-cli.js","sourceRoot":"","sources":["../../src/commands/deploy-cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,2GAA2G;AAE3G,MAAM,KAAK,GAAG,0CAA0C,CAAC;AAEzD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAc;IAC/C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,QAAQ,CAAC;IAE5C,YAAY,EAAE,IAAI,CAAC,kBAAkB,EAAE,MAAM,EAAE,oBAAoB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IAElF,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,gCAAgC,OAAO,KAAK,CAAC,CAAC;QAC1D,SAAS,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,qBAAqB,OAAO,YAAY,CAAC,CAAC;QACxD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,qBAAqB,OAAO,mCAAmC,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QAChC,OAAO,CAAC,KAAK,CAAC,oBAAoB,GAAG,EAAE,CAAC,CAAC;QACzC,YAAY,EAAE,IAAI,CAAC,mBAAmB,EAAE,OAAO,EAAE,mBAAmB,EAAE;YACpE,OAAO;YACP,KAAK,EAAE,GAAG;SACX,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,4EAA4E;IAC5E,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAC9C,IAAI,CAAC;QACH,MAAM,cAAc,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAC5C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QAChC,OAAO,CAAC,KAAK,CAAC,0DAA0D,GAAG,EAAE,CAAC,CAAC;QAC/E,YAAY,EAAE,IAAI,CAAC,2BAA2B,EAAE,MAAM,EAAE,qCAAqC,EAAE;YAC7F,OAAO;YACP,KAAK,EAAE,GAAG;SACX,CAAC,CAAC;IACL,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;AAC/B,CAAC"}
@@ -1,12 +1,6 @@
1
1
  import { ALLOWED_CHECKS, isKnownCheck, runDiagnostics } from '../utils/diagnostics.js';
2
2
  import { logCollector } from '../connection.js';
3
3
  import { toErrorMessage } from '../utils/response.js';
4
- // ---------------------------------------------------------------------------
5
- // CLI entrypoint for `agent-controller diagnostics [check]`. Mirrors the WS
6
- // handler's allowlist (`src/utils/diagnostics.ts`). With no argument, runs
7
- // every allowlisted check; with one argument, runs only that check.
8
- // Output is structured JSON on stdout for easy consumption.
9
- // ---------------------------------------------------------------------------
10
4
  const USAGE = `Usage: agent-controller diagnostics [check]\n` +
11
5
  `Available checks: ${Object.keys(ALLOWED_CHECKS).sort().join(', ')}`;
12
6
  export async function runDiagnosticsCli(args) {
@@ -1 +1 @@
1
- {"version":3,"file":"diagnostics-cli.js","sourceRoot":"","sources":["../../src/commands/diagnostics-cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACvF,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,8EAA8E;AAC9E,4EAA4E;AAC5E,2EAA2E;AAC3E,oEAAoE;AACpE,4DAA4D;AAC5D,8EAA8E;AAE9E,MAAM,KAAK,GACT,+CAA+C;IAC/C,qBAAqB,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AAEvE,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAc;IACpD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;IAC9B,IAAI,KAAK,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QAClC,OAAO,CAAC,KAAK,CAAC,6BAA6B,KAAK,EAAE,CAAC,CAAC;QACpD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,YAAY,EAAE,IAAI,CAAC,uBAAuB,EAAE,MAAM,EAAE,yBAAyB,EAAE;QAC7E,KAAK,EAAE,KAAK,IAAI,KAAK;KACtB,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3C,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QAChC,OAAO,CAAC,KAAK,CAAC,yBAAyB,GAAG,EAAE,CAAC,CAAC;QAC9C,YAAY,EAAE,IAAI,CAAC,wBAAwB,EAAE,OAAO,EAAE,wBAAwB,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;QAChG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"diagnostics-cli.js","sourceRoot":"","sources":["../../src/commands/diagnostics-cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACvF,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,MAAM,KAAK,GACT,+CAA+C;IAC/C,qBAAqB,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AAEvE,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAc;IACpD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;IAC9B,IAAI,KAAK,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QAClC,OAAO,CAAC,KAAK,CAAC,6BAA6B,KAAK,EAAE,CAAC,CAAC;QACpD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,YAAY,EAAE,IAAI,CAAC,uBAAuB,EAAE,MAAM,EAAE,yBAAyB,EAAE;QAC7E,KAAK,EAAE,KAAK,IAAI,KAAK;KACtB,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3C,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QAChC,OAAO,CAAC,KAAK,CAAC,yBAAyB,GAAG,EAAE,CAAC,CAAC;QAC9C,YAAY,EAAE,IAAI,CAAC,wBAAwB,EAAE,OAAO,EAAE,wBAAwB,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;QAChG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
@@ -1,11 +1 @@
1
- /**
2
- * `agent-controller install-deps` — install the npm/pip packages the backend
3
- * lists for this agent's role.
4
- *
5
- * The package names come from the backend, i.e. across a trust boundary, so
6
- * every install goes through `installOnePackage()`: it is the one place that
7
- * applies the package-name allowlist before anything reaches a shell. This
8
- * command used to build `npm install -g ${pkg}` strings itself with no
9
- * validation at all.
10
- */
11
1
  export declare function installDeps(): Promise<void>;
@@ -3,16 +3,7 @@ import { getBackendUrl } from '../utils/env.js';
3
3
  import { requireConfig } from '../config.js';
4
4
  import { INSTALL_TIMEOUT_MS, installOnePackage, } from '../utils/package-install.js';
5
5
  import { toErrorMessage } from '../utils/response.js';
6
- /**
7
- * `agent-controller install-deps` — install the npm/pip packages the backend
8
- * lists for this agent's role.
9
- *
10
- * The package names come from the backend, i.e. across a trust boundary, so
11
- * every install goes through `installOnePackage()`: it is the one place that
12
- * applies the package-name allowlist before anything reaches a shell. This
13
- * command used to build `npm install -g ${pkg}` strings itself with no
14
- * validation at all.
15
- */
6
+ // Backend package names cross a trust boundary; installOnePackage validates them before shell execution.
16
7
  export async function installDeps() {
17
8
  const backendUrl = getBackendUrl();
18
9
  const agentToken = requireConfig('agentToken');
@@ -1 +1 @@
1
- {"version":3,"file":"install-deps.js","sourceRoot":"","sources":["../../src/commands/install-deps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install-deps.js","sourceRoot":"","sources":["../../src/commands/install-deps.ts"],"names":[],"mappings":"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"}
@@ -3,10 +3,6 @@ import fs from 'node:fs/promises';
3
3
  import path from 'node:path';
4
4
  import { saveEnvFile } from '../config-file.js';
5
5
  import { config } from '../config.js';
6
- /**
7
- * Try to read the gateway auth token from the local OpenClaw config.
8
- * Path: ~/.openclaw/openclaw.json → gateway.auth.token
9
- */
10
6
  async function detectGatewayToken() {
11
7
  const stateDir = config.stateDir;
12
8
  const configPath = path.join(stateDir, 'openclaw.json');
@@ -50,7 +46,6 @@ export async function install() {
50
46
  console.error('All fields are required. Aborting.');
51
47
  process.exit(1);
52
48
  }
53
- // Detect OPENCLAW_GATEWAY_TOKEN from local OpenClaw config or env
54
49
  let gatewayToken = config.gatewayToken || null;
55
50
  if (!gatewayToken) {
56
51
  gatewayToken = await detectGatewayToken();
@@ -62,7 +57,6 @@ export async function install() {
62
57
  console.log(' OPENCLAW_GATEWAY_TOKEN: *** (from environment)');
63
58
  }
64
59
  const installConfig = { centrifugoUrl, agentToken, agentId, backendInternalUrl, gatewayToken };
65
- // Save env vars for future CLI usage (backup, knowledge_sync, etc.)
66
60
  await saveEnvFile(installConfig);
67
61
  const platform = process.platform;
68
62
  console.log('');
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,5 @@
1
1
  import { installOnePackage, isSafePackageName, } from '../utils/package-install.js';
2
2
  import { logCollector } from '../connection.js';
3
- // ---------------------------------------------------------------------------
4
- // CLI entrypoint for `agent-controller package-install <name> [--manager M]`.
5
- // Mirrors the WS handler's regex allowlist and per-package install flow,
6
- // but takes a single package on the command line rather than a batch.
7
- //
8
- // Manager selection:
9
- // --manager apt|npm|pip → explicit
10
- // (none) → auto-detect by name shape:
11
- // starts with '@' or contains '/' (and isn't a path) → npm
12
- // everything else → apt on linux,
13
- // npm elsewhere
14
- // ---------------------------------------------------------------------------
15
3
  const VALID_MANAGERS = ['apt', 'npm', 'pip'];
16
4
  const USAGE = 'Usage: agent-controller package-install <name> [--manager apt|npm|pip]';
17
5
  function parseArgs(args) {
@@ -35,7 +23,7 @@ function parseArgs(args) {
35
23
  continue;
36
24
  }
37
25
  if (name !== undefined)
38
- return null; // multiple positional args
26
+ return null;
39
27
  name = a?.trim();
40
28
  }
41
29
  if (!name)
@@ -43,7 +31,6 @@ function parseArgs(args) {
43
31
  return { name, manager };
44
32
  }
45
33
  function autoDetectManager(name) {
46
- // npm scoped (`@scope/name`) or path-style scoped names → npm
47
34
  if (name.startsWith('@') || name.includes('/')) {
48
35
  return 'npm';
49
36
  }
@@ -1 +1 @@
1
- {"version":3,"file":"package-install-cli.js","sourceRoot":"","sources":["../../src/commands/package-install-cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"package-install-cli.js","sourceRoot":"","sources":["../../src/commands/package-install-cli.ts"],"names":[],"mappings":"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"}
@@ -2,13 +2,7 @@ import { installPlugin } from '../utils/openclaw-ops.js';
2
2
  import { parseIdAtVersion } from '../utils/parse-id-at-version.js';
3
3
  import { logCollector } from '../connection.js';
4
4
  import { toErrorMessage } from '../utils/response.js';
5
- // ---------------------------------------------------------------------------
6
- // CLI entrypoint for `agent-controller plugin-update <id> <version>`
7
- // (also accepts `<id>@<version>` shorthand). Mirrors the behaviour of the WS
8
- // handler at src/handlers/plugin-update.ts: install only. Openclaw watches
9
- // the plugin section of its config and self-restarts the gateway when the
10
- // install lands; calling restartGateway() here would just race that.
11
- // ---------------------------------------------------------------------------
5
+ // OpenClaw reloads plugin config itself; an explicit restart would race that reload.
12
6
  const USAGE = 'Usage: agent-controller plugin-update <id> <version>\n' +
13
7
  ' agent-controller plugin-update <id>@<version>';
14
8
  function parseArgs(args) {
@@ -46,7 +40,6 @@ export async function runPluginUpdateCli(args) {
46
40
  console.log('[plugin-update] done');
47
41
  return;
48
42
  }
49
- // No restartGateway() — openclaw self-reloads on plugin config changes.
50
43
  console.log('[plugin-update] install complete; openclaw will reload its gateway');
51
44
  console.log('[plugin-update] done');
52
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-update-cli.js","sourceRoot":"","sources":["../../src/commands/plugin-update-cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,8EAA8E;AAC9E,qEAAqE;AACrE,6EAA6E;AAC7E,2EAA2E;AAC3E,0EAA0E;AAC1E,qEAAqE;AACrE,8EAA8E;AAE9E,MAAM,KAAK,GACT,wDAAwD;IACxD,sDAAsD,CAAC;AAOzD,SAAS,SAAS,CAAC,IAAc;IAC/B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC3B,OAAO,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACtC,IAAI,CAAC,EAAE,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QACjC,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC;IACzB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAc;IACrD,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAE/B,YAAY,EAAE,IAAI,CAAC,yBAAyB,EAAE,MAAM,EAAE,2BAA2B,EAAE;QACjF,EAAE;QACF,OAAO;KACR,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,IAAI,OAAO,KAAK,CAAC,CAAC;QAC9D,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAEnD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,OAAO,mCAAmC,CAAC,CAAC;YACjF,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;YACpC,OAAO;QACT,CAAC;QAED,wEAAwE;QACxE,OAAO,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAC;QAClF,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IACtC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QAChC,OAAO,CAAC,KAAK,CAAC,2BAA2B,GAAG,EAAE,CAAC,CAAC;QAChD,YAAY,EAAE,IAAI,CAAC,0BAA0B,EAAE,OAAO,EAAE,0BAA0B,EAAE;YAClF,EAAE;YACF,OAAO;YACP,KAAK,EAAE,GAAG;SACX,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"plugin-update-cli.js","sourceRoot":"","sources":["../../src/commands/plugin-update-cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,qFAAqF;AAErF,MAAM,KAAK,GACT,wDAAwD;IACxD,sDAAsD,CAAC;AAOzD,SAAS,SAAS,CAAC,IAAc;IAC/B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC3B,OAAO,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACtC,IAAI,CAAC,EAAE,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QACjC,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC;IACzB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAc;IACrD,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAE/B,YAAY,EAAE,IAAI,CAAC,yBAAyB,EAAE,MAAM,EAAE,2BAA2B,EAAE;QACjF,EAAE;QACF,OAAO;KACR,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,IAAI,OAAO,KAAK,CAAC,CAAC;QAC9D,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAEnD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,OAAO,mCAAmC,CAAC,CAAC;YACjF,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;YACpC,OAAO;QACT,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAC;QAClF,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IACtC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QAChC,OAAO,CAAC,KAAK,CAAC,2BAA2B,GAAG,EAAE,CAAC,CAAC;QAChD,YAAY,EAAE,IAAI,CAAC,0BAA0B,EAAE,OAAO,EAAE,0BAA0B,EAAE;YAClF,EAAE;YACF,OAAO;YACP,KAAK,EAAE,GAAG;SACX,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
@@ -1,10 +1,6 @@
1
1
  import { restartGateway } from '../utils/gateway-restart.js';
2
2
  import { logCollector } from '../connection.js';
3
3
  import { toErrorMessage } from '../utils/response.js';
4
- // ---------------------------------------------------------------------------
5
- // CLI entrypoint for `agent-controller restart`. Mirrors the WS handler at
6
- // src/handlers/restart.ts: best-effort gateway restart with structured stdout.
7
- // ---------------------------------------------------------------------------
8
4
  export async function runRestartCli() {
9
5
  console.log('[restart] restarting openclaw gateway...');
10
6
  logCollector?.push('restart_cli_start', 'info', 'restart CLI invoked', {});
@@ -1 +1 @@
1
- {"version":3,"file":"restart-cli.js","sourceRoot":"","sources":["../../src/commands/restart-cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,8EAA8E;AAC9E,2EAA2E;AAC3E,+EAA+E;AAC/E,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IACxD,YAAY,EAAE,IAAI,CAAC,mBAAmB,EAAE,MAAM,EAAE,qBAAqB,EAAE,EAAE,CAAC,CAAC;IAE3E,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,cAAc,EAAE,CAAC;QAClD,IAAI,MAAM;YAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,MAAM;YAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAChC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QAChC,OAAO,CAAC,KAAK,CAAC,qBAAqB,GAAG,EAAE,CAAC,CAAC;QAC1C,YAAY,EAAE,IAAI,CAAC,oBAAoB,EAAE,OAAO,EAAE,oBAAoB,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;QACxF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"restart-cli.js","sourceRoot":"","sources":["../../src/commands/restart-cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IACxD,YAAY,EAAE,IAAI,CAAC,mBAAmB,EAAE,MAAM,EAAE,qBAAqB,EAAE,EAAE,CAAC,CAAC;IAE3E,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,cAAc,EAAE,CAAC;QAClD,IAAI,MAAM;YAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,MAAM;YAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAChC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QAChC,OAAO,CAAC,KAAK,CAAC,qBAAqB,GAAG,EAAE,CAAC,CAAC;QAC1C,YAAY,EAAE,IAAI,CAAC,oBAAoB,EAAE,OAAO,EAAE,oBAAoB,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;QACxF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
@@ -17,31 +17,9 @@ export interface RunExplicitSelfUpdateResult {
17
17
  gatewayRestarted: boolean;
18
18
  acChanged: boolean;
19
19
  }
20
- /**
21
- * Run the explicit-version self-update flow. Throws when `installOpenclaw`
22
- * or `installAcSelf` fail outright — per-plugin failures are recorded in
23
- * the result rather than thrown. The caller is responsible for translating
24
- * thrown errors into an AgentResponse / process exit.
25
- *
26
- * IMPORTANT: when `acChanged` is true, this function does NOT call
27
- * `removeLockFile()` and does NOT sleep — both are now the caller's job
28
- * (handler defers them to the next tick AFTER `api.publishResponse` so the
29
- * backend sees a real `success: true` response before the supervisor picks
30
- * up the missing lock and restarts the process). The CLI entrypoint
31
- * (`runSelfUpdateCli`) handles this directly since there's no response to
32
- * publish.
33
- */
20
+ /** Callers own lock removal: the WS handler delays it to give the response a chance to publish. */
34
21
  export declare function runExplicitSelfUpdate(currentVersion: string, payload: SelfUpdatePayload): Promise<RunExplicitSelfUpdateResult>;
35
22
  export declare function selfUpdate(currentVersion: string): Promise<void>;
36
23
  export declare function fetchRuntimeTargets(): Promise<SelfUpdatePayload | null>;
37
- /**
38
- * Top-level CLI entrypoint invoked by `agent-controller self-update`.
39
- * Tries the new explicit-payload flow first; falls back to legacy when
40
- * the backend has no runtime-targets endpoint or no override configured.
41
- *
42
- * Unlike the WS handler path (handlers/self-update.ts), the CLI has no
43
- * AgentResponse to publish, so we keep the original
44
- * `removeLockFile() + sleep(30s)` tail when the agent-controller actually
45
- * changed — that's the supervisor handoff signal.
46
- */
24
+ /** The CLI has no response to publish, so it can hand off to the supervisor directly. */
47
25
  export declare function runSelfUpdateCli(currentVersion: string): Promise<void>;