@agent-vm/agent-vm 0.0.57 → 0.0.59

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 (161) hide show
  1. package/dist/backup/backup-create-operation.d.ts +2 -0
  2. package/dist/backup/backup-create-operation.d.ts.map +1 -1
  3. package/dist/backup/backup-create-operation.js +23 -0
  4. package/dist/backup/backup-create-operation.js.map +1 -1
  5. package/dist/backup/backup-manager.d.ts +2 -0
  6. package/dist/backup/backup-manager.d.ts.map +1 -1
  7. package/dist/backup/backup-manager.js +1 -0
  8. package/dist/backup/backup-manager.js.map +1 -1
  9. package/dist/build/managed-image-dockerfile.d.ts +3 -0
  10. package/dist/build/managed-image-dockerfile.d.ts.map +1 -1
  11. package/dist/build/managed-image-dockerfile.js +66 -10
  12. package/dist/build/managed-image-dockerfile.js.map +1 -1
  13. package/dist/cli/backup-commands.d.ts.map +1 -1
  14. package/dist/cli/backup-commands.js +18 -0
  15. package/dist/cli/backup-commands.js.map +1 -1
  16. package/dist/cli/commands/create-app.d.ts +174 -86
  17. package/dist/cli/commands/create-app.d.ts.map +1 -1
  18. package/dist/cli/commands/create-app.js +2 -0
  19. package/dist/cli/commands/create-app.js.map +1 -1
  20. package/dist/cli/commands/migrate-definition.d.ts +16 -0
  21. package/dist/cli/commands/migrate-definition.d.ts.map +1 -1
  22. package/dist/cli/commands/migrate-definition.js +20 -1
  23. package/dist/cli/commands/migrate-definition.js.map +1 -1
  24. package/dist/cli/commands/resources-definition.d.ts +8 -8
  25. package/dist/cli/commands/zone-git-definition.d.ts +67 -0
  26. package/dist/cli/commands/zone-git-definition.d.ts.map +1 -0
  27. package/dist/cli/commands/zone-git-definition.js +46 -0
  28. package/dist/cli/commands/zone-git-definition.js.map +1 -0
  29. package/dist/cli/controller-operation-commands.d.ts.map +1 -1
  30. package/dist/cli/controller-operation-commands.js +13 -0
  31. package/dist/cli/controller-operation-commands.js.map +1 -1
  32. package/dist/cli/init-command.d.ts.map +1 -1
  33. package/dist/cli/init-command.js +153 -11
  34. package/dist/cli/init-command.js.map +1 -1
  35. package/dist/cli/manual-templates.d.ts.map +1 -1
  36. package/dist/cli/manual-templates.js +58 -12
  37. package/dist/cli/manual-templates.js.map +1 -1
  38. package/dist/cli/migrate-commands.d.ts +8 -0
  39. package/dist/cli/migrate-commands.d.ts.map +1 -1
  40. package/dist/cli/migrate-commands.js +274 -0
  41. package/dist/cli/migrate-commands.js.map +1 -1
  42. package/dist/cli/zone-git-commands.d.ts +13 -0
  43. package/dist/cli/zone-git-commands.d.ts.map +1 -0
  44. package/dist/cli/zone-git-commands.js +89 -0
  45. package/dist/cli/zone-git-commands.js.map +1 -0
  46. package/dist/config/system-config.d.ts +70 -31
  47. package/dist/config/system-config.d.ts.map +1 -1
  48. package/dist/config/system-config.js +246 -47
  49. package/dist/config/system-config.js.map +1 -1
  50. package/dist/controller/controller-runtime-types.d.ts +7 -0
  51. package/dist/controller/controller-runtime-types.d.ts.map +1 -1
  52. package/dist/controller/controller-runtime.d.ts.map +1 -1
  53. package/dist/controller/controller-runtime.js +58 -6
  54. package/dist/controller/controller-runtime.js.map +1 -1
  55. package/dist/controller/git-auth-support.d.ts +4 -0
  56. package/dist/controller/git-auth-support.d.ts.map +1 -1
  57. package/dist/controller/git-auth-support.js +17 -0
  58. package/dist/controller/git-auth-support.js.map +1 -1
  59. package/dist/controller/git-push-operations.d.ts.map +1 -1
  60. package/dist/controller/git-push-operations.js +9 -13
  61. package/dist/controller/git-push-operations.js.map +1 -1
  62. package/dist/controller/http/controller-http-route-support.d.ts +10 -2
  63. package/dist/controller/http/controller-http-route-support.d.ts.map +1 -1
  64. package/dist/controller/http/controller-http-route-support.js +3 -2
  65. package/dist/controller/http/controller-http-route-support.js.map +1 -1
  66. package/dist/controller/http/controller-http-routes.d.ts +13 -3
  67. package/dist/controller/http/controller-http-routes.d.ts.map +1 -1
  68. package/dist/controller/http/controller-http-routes.js +96 -10
  69. package/dist/controller/http/controller-http-routes.js.map +1 -1
  70. package/dist/controller/http/controller-request-schemas.d.ts +12 -0
  71. package/dist/controller/http/controller-request-schemas.d.ts.map +1 -1
  72. package/dist/controller/http/controller-request-schemas.js +16 -0
  73. package/dist/controller/http/controller-request-schemas.js.map +1 -1
  74. package/dist/controller/http/controller-zone-operation-routes.d.ts.map +1 -1
  75. package/dist/controller/http/controller-zone-operation-routes.js +54 -1
  76. package/dist/controller/http/controller-zone-operation-routes.js.map +1 -1
  77. package/dist/controller/leases/lease-manager.d.ts +7 -0
  78. package/dist/controller/leases/lease-manager.d.ts.map +1 -1
  79. package/dist/controller/leases/lease-manager.js +15 -0
  80. package/dist/controller/leases/lease-manager.js.map +1 -1
  81. package/dist/controller/leases/lease-work-mount-paths.d.ts +8 -1
  82. package/dist/controller/leases/lease-work-mount-paths.d.ts.map +1 -1
  83. package/dist/controller/leases/lease-work-mount-paths.js +22 -2
  84. package/dist/controller/leases/lease-work-mount-paths.js.map +1 -1
  85. package/dist/controller/openclaw-runtime-status.d.ts +28 -0
  86. package/dist/controller/openclaw-runtime-status.d.ts.map +1 -0
  87. package/dist/controller/openclaw-runtime-status.js +43 -0
  88. package/dist/controller/openclaw-runtime-status.js.map +1 -0
  89. package/dist/controller/runtime-instructions-builder.d.ts +1 -0
  90. package/dist/controller/runtime-instructions-builder.d.ts.map +1 -1
  91. package/dist/controller/runtime-instructions-builder.js +33 -0
  92. package/dist/controller/runtime-instructions-builder.js.map +1 -1
  93. package/dist/controller/worker-task-runner.d.ts.map +1 -1
  94. package/dist/controller/worker-task-runner.js +1 -0
  95. package/dist/controller/worker-task-runner.js.map +1 -1
  96. package/dist/controller/zone-git/zone-git-capability-store.d.ts +16 -0
  97. package/dist/controller/zone-git/zone-git-capability-store.d.ts.map +1 -0
  98. package/dist/controller/zone-git/zone-git-capability-store.js +47 -0
  99. package/dist/controller/zone-git/zone-git-capability-store.js.map +1 -0
  100. package/dist/controller/zone-git/zone-git-operation-locks.d.ts +5 -0
  101. package/dist/controller/zone-git/zone-git-operation-locks.d.ts.map +1 -0
  102. package/dist/controller/zone-git/zone-git-operation-locks.js +23 -0
  103. package/dist/controller/zone-git/zone-git-operation-locks.js.map +1 -0
  104. package/dist/controller/zone-git/zone-git-operations.d.ts +50 -0
  105. package/dist/controller/zone-git/zone-git-operations.d.ts.map +1 -0
  106. package/dist/controller/zone-git/zone-git-operations.js +323 -0
  107. package/dist/controller/zone-git/zone-git-operations.js.map +1 -0
  108. package/dist/controller/zone-git/zone-git-paths.d.ts +28 -0
  109. package/dist/controller/zone-git/zone-git-paths.d.ts.map +1 -0
  110. package/dist/controller/zone-git/zone-git-paths.js +17 -0
  111. package/dist/controller/zone-git/zone-git-paths.js.map +1 -0
  112. package/dist/controller/zone-runtimes/openclaw-zone-runtime.d.ts.map +1 -1
  113. package/dist/controller/zone-runtimes/openclaw-zone-runtime.js +1 -0
  114. package/dist/controller/zone-runtimes/openclaw-zone-runtime.js.map +1 -1
  115. package/dist/controller/zone-runtimes/zone-runtime-types.d.ts +2 -0
  116. package/dist/controller/zone-runtimes/zone-runtime-types.d.ts.map +1 -1
  117. package/dist/gateway/credential-manager.d.ts +12 -2
  118. package/dist/gateway/credential-manager.d.ts.map +1 -1
  119. package/dist/gateway/credential-manager.js +15 -0
  120. package/dist/gateway/credential-manager.js.map +1 -1
  121. package/dist/gateway/gateway-zone-orchestrator.d.ts.map +1 -1
  122. package/dist/gateway/gateway-zone-orchestrator.js +41 -1
  123. package/dist/gateway/gateway-zone-orchestrator.js.map +1 -1
  124. package/dist/gateway/gateway-zone-support.d.ts +2 -0
  125. package/dist/gateway/gateway-zone-support.d.ts.map +1 -1
  126. package/dist/gateway/gateway-zone-support.js +4 -17
  127. package/dist/gateway/gateway-zone-support.js.map +1 -1
  128. package/dist/gateway/mcp-portal-openclaw-materialization.d.ts +19 -0
  129. package/dist/gateway/mcp-portal-openclaw-materialization.d.ts.map +1 -0
  130. package/dist/gateway/mcp-portal-openclaw-materialization.js +26 -0
  131. package/dist/gateway/mcp-portal-openclaw-materialization.js.map +1 -0
  132. package/dist/gateway-api-client/gateway-api-client.d.ts +1 -0
  133. package/dist/gateway-api-client/gateway-api-client.d.ts.map +1 -1
  134. package/dist/gateway-api-client/gateway-api-client.js +2 -1
  135. package/dist/gateway-api-client/gateway-api-client.js.map +1 -1
  136. package/dist/integration-tests/smoke-harness.d.ts +59 -0
  137. package/dist/integration-tests/smoke-harness.d.ts.map +1 -0
  138. package/dist/integration-tests/smoke-harness.js +244 -0
  139. package/dist/integration-tests/smoke-harness.js.map +1 -0
  140. package/dist/operations/config-validation.d.ts.map +1 -1
  141. package/dist/operations/config-validation.js +78 -0
  142. package/dist/operations/config-validation.js.map +1 -1
  143. package/dist/operations/doctor.js +1 -1
  144. package/dist/operations/doctor.js.map +1 -1
  145. package/dist/operations/openclaw-deployment-doctor.d.ts +9 -26
  146. package/dist/operations/openclaw-deployment-doctor.d.ts.map +1 -1
  147. package/dist/operations/openclaw-deployment-doctor.js +185 -60
  148. package/dist/operations/openclaw-deployment-doctor.js.map +1 -1
  149. package/dist/operations/openclaw-deployment-requirements.d.ts +63 -0
  150. package/dist/operations/openclaw-deployment-requirements.d.ts.map +1 -0
  151. package/dist/operations/openclaw-deployment-requirements.js +181 -0
  152. package/dist/operations/openclaw-deployment-requirements.js.map +1 -0
  153. package/dist/operations/zone-git-doctor.d.ts +7 -0
  154. package/dist/operations/zone-git-doctor.d.ts.map +1 -0
  155. package/dist/operations/zone-git-doctor.js +94 -0
  156. package/dist/operations/zone-git-doctor.js.map +1 -0
  157. package/dist/tool-vm/tool-vm-lifecycle.d.ts +4 -1
  158. package/dist/tool-vm/tool-vm-lifecycle.d.ts.map +1 -1
  159. package/dist/tool-vm/tool-vm-lifecycle.js +99 -23
  160. package/dist/tool-vm/tool-vm-lifecycle.js.map +1 -1
  161. package/package.json +10 -7
@@ -1,6 +1,8 @@
1
1
  import fs from 'node:fs/promises';
2
2
  import path from 'node:path';
3
+ import { loadMcpPortalConfig } from '@agent-vm/config-contracts';
3
4
  import { createManagedVm as createManagedVmFromCore, } from '@agent-vm/gondolin-adapter';
5
+ import { assertOpenClawToolVmRequirements } from '../operations/openclaw-deployment-requirements.js';
4
6
  import { runTaskWithResult } from '../shared/run-task.js';
5
7
  import { resolveZoneSecrets } from './credential-manager.js';
6
8
  import { runGatewayHealthCheck } from './gateway-health-check.js';
@@ -9,6 +11,7 @@ import { loadGatewayLifecycle } from './gateway-lifecycle-loader.js';
9
11
  import { cleanupOrphanedGatewayIfPresent } from './gateway-recovery.js';
10
12
  import { buildGatewayRuntimeRecord, writeGatewayRuntimeRecord, } from './gateway-runtime-record.js';
11
13
  import { findGatewayZone, mapSystemGatewayZoneToLifecycleZone, } from './gateway-zone-support.js';
14
+ import { buildOpenClawMcpPortalMaterialization } from './mcp-portal-openclaw-materialization.js';
12
15
  const defaultGatewayReadinessRetryDelayMs = 500;
13
16
  const defaultGatewayReadinessTimeoutMs = 60_000;
14
17
  const defaultGatewayReadinessMaxAttempts = Math.ceil(defaultGatewayReadinessTimeoutMs / defaultGatewayReadinessRetryDelayMs);
@@ -80,18 +83,55 @@ async function waitForHealth(options) {
80
83
  startedAtMs,
81
84
  });
82
85
  }
86
+ async function buildRuntimeMcpPortalMaterialization(zone) {
87
+ if (zone.gateway.type !== 'openclaw' || zone.mcp === undefined || zone.agents === undefined) {
88
+ return {};
89
+ }
90
+ const mcpPortalConfig = await loadMcpPortalConfig(path.join(zone.mcp.configDir, 'mcp-portal.config.jsonc'));
91
+ const materialization = buildOpenClawMcpPortalMaterialization({
92
+ agents: zone.agents,
93
+ configDir: '/home/openclaw/.openclaw/config',
94
+ mcpPortalConfig,
95
+ });
96
+ return {
97
+ runtimeMcpServers: materialization.mcpServers,
98
+ runtimePluginConfigs: { 'mcp-portal': materialization.pluginConfig },
99
+ };
100
+ }
83
101
  export async function startGatewayZone(options, dependencies = {}) {
84
102
  const runTaskStep = options.runTask ?? (async (_title, fn) => await fn());
85
103
  const zone = options.zoneOverride ?? findGatewayZone(options.systemConfig, options.zoneId);
86
- const lifecycleZone = mapSystemGatewayZoneToLifecycleZone(zone);
104
+ const mappedLifecycleZone = mapSystemGatewayZoneToLifecycleZone(zone);
105
+ const mcpPortalMaterialization = await buildRuntimeMcpPortalMaterialization(zone);
106
+ const lifecycleZone = {
107
+ ...mappedLifecycleZone,
108
+ ...mcpPortalMaterialization,
109
+ ...(options.runtimeEnvironment === undefined
110
+ ? {}
111
+ : { runtimeEnvironment: options.runtimeEnvironment }),
112
+ ...(options.runtimePluginConfigs === undefined
113
+ ? {}
114
+ : {
115
+ runtimePluginConfigs: {
116
+ ...mcpPortalMaterialization.runtimePluginConfigs,
117
+ ...options.runtimePluginConfigs,
118
+ },
119
+ }),
120
+ };
87
121
  await runTaskStep('Cleaning orphaned gateway runtime', async () => {
88
122
  await (dependencies.cleanupOrphanedGatewayIfPresent ?? cleanupOrphanedGatewayIfPresent)({
89
123
  stateDir: zone.gateway.stateDir,
90
124
  zoneId: zone.id,
91
125
  });
92
126
  });
127
+ if (zone.gateway.type === 'openclaw') {
128
+ await runTaskStep('Validating OpenClaw Tool VM requirements', async () => {
129
+ await assertOpenClawToolVmRequirements(options.systemConfig, zone.id);
130
+ });
131
+ }
93
132
  const lifecycle = (dependencies.loadGatewayLifecycle ?? loadGatewayLifecycle)(zone.gateway.type);
94
133
  const resolvedSecrets = await runTaskWithResult(runTaskStep, 'Resolving zone secrets', async () => await resolveZoneSecrets({
134
+ audience: 'gateway',
95
135
  systemConfig: options.systemConfig,
96
136
  zoneId: zone.id,
97
137
  secretResolver: options.secretResolver,
@@ -1 +1 @@
1
- {"version":3,"file":"gateway-zone-orchestrator.js","sourceRoot":"","sources":["../../src/gateway/gateway-zone-orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gateway-zone-orchestrator.js","sourceRoot":"","sources":["../../src/gateway/gateway-zone-orchestrator.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,8 @@ export type GatewayZone = SystemConfig['zones'][number];
5
5
  export interface StartGatewayZoneOptions {
6
6
  readonly environmentOverride?: Record<string, string>;
7
7
  readonly runTask?: RunTaskFn;
8
+ readonly runtimeEnvironment?: Readonly<Record<string, string>>;
9
+ readonly runtimePluginConfigs?: Readonly<Record<string, Readonly<Record<string, unknown>>>>;
8
10
  readonly secretResolver: import('@agent-vm/gondolin-adapter').SecretResolver;
9
11
  readonly systemConfig: LoadedSystemConfig;
10
12
  readonly tcpHostsOverride?: Record<string, string>;
@@ -1 +1 @@
1
- {"version":3,"file":"gateway-zone-support.d.ts","sourceRoot":"","sources":["../../src/gateway/gateway-zone-support.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gateway-zone-support.d.ts","sourceRoot":"","sources":["../../src/gateway/gateway-zone-support.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,7 @@ export function mapSystemGatewayZoneToLifecycleZone(zone) {
17
17
  };
18
18
  return {
19
19
  id: zone.id,
20
+ ...(zone.agents === undefined ? {} : { agents: zone.agents }),
20
21
  gateway: zone.gateway.type === 'openclaw'
21
22
  ? {
22
23
  ...baseGateway,
@@ -30,24 +31,10 @@ export function mapSystemGatewayZoneToLifecycleZone(zone) {
30
31
  ...baseGateway,
31
32
  type: 'worker',
32
33
  },
33
- secrets: Object.fromEntries(Object.entries(zone.secrets).map(([secretName, secretConfig]) => [
34
- secretName,
35
- secretConfig.source === 'environment'
36
- ? {
37
- source: 'environment',
38
- ...(secretConfig.hosts ? { hosts: secretConfig.hosts } : {}),
39
- injection: secretConfig.injection,
40
- envVar: secretConfig.envVar,
41
- }
42
- : {
43
- source: '1password',
44
- ...(secretConfig.hosts ? { hosts: secretConfig.hosts } : {}),
45
- injection: secretConfig.injection,
46
- ref: secretConfig.ref,
47
- },
48
- ])),
49
- allowedHosts: zone.allowedHosts,
34
+ secrets: zone.secrets,
35
+ egressHosts: zone.egressHosts,
50
36
  ...(zone.defaultToolVmProfile ? { defaultToolVmProfile: zone.defaultToolVmProfile } : {}),
37
+ ...(zone.mcp === undefined ? {} : { mcp: zone.mcp }),
51
38
  websocketBypass: zone.websocketBypass,
52
39
  };
53
40
  }
@@ -1 +1 @@
1
- {"version":3,"file":"gateway-zone-support.js","sourceRoot":"","sources":["../../src/gateway/gateway-zone-support.ts"],"names":[],"mappings":"AAgEA,MAAM,UAAU,eAAe,CAAC,YAA0B,EAAE,MAAc;IACzE,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;IACrF,IAAI,CAAC,IAAI,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,iBAAiB,MAAM,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC;AAED,MAAM,UAAU,mCAAmC,CAAC,IAAiB;IACpE,MAAM,WAAW,GAAG;QACnB,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;QACvB,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;QAC3B,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;QAC3B,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;QACvB,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE;QAClD,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;QAC/B,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1F,CAAC;IAEF,OAAO;QACN,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,OAAO,EACN,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU;YAC/B,CAAC,CAAC;gBACA,GAAG,WAAW;gBACd,IAAI,EAAE,UAAU;gBAChB,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY;gBACvC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB;oBACnC,CAAC,CAAC,EAAE,mBAAmB,EAAE,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE;oBAC3D,CAAC,CAAC,EAAE,CAAC;aACN;YACF,CAAC,CAAC;gBACA,GAAG,WAAW;gBACd,IAAI,EAAE,QAAQ;aACd;QACJ,OAAO,EAAE,MAAM,CAAC,WAAW,CAC1B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC;YAChE,UAAU;YACV,YAAY,CAAC,MAAM,KAAK,aAAa;gBACpC,CAAC,CAAC;oBACA,MAAM,EAAE,aAAsB;oBAC9B,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC5D,SAAS,EAAE,YAAY,CAAC,SAAS;oBACjC,MAAM,EAAE,YAAY,CAAC,MAAM;iBAC3B;gBACF,CAAC,CAAC;oBACA,MAAM,EAAE,WAAoB;oBAC5B,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC5D,SAAS,EAAE,YAAY,CAAC,SAAS;oBACjC,GAAG,EAAE,YAAY,CAAC,GAAG;iBACrB;SACH,CAAC,CACF;QACD,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,eAAe,EAAE,IAAI,CAAC,eAAe;KACrC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"gateway-zone-support.js","sourceRoot":"","sources":["../../src/gateway/gateway-zone-support.ts"],"names":[],"mappings":"AAkEA,MAAM,UAAU,eAAe,CAAC,YAA0B,EAAE,MAAc;IACzE,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;IACrF,IAAI,CAAC,IAAI,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,iBAAiB,MAAM,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC;AAED,MAAM,UAAU,mCAAmC,CAAC,IAAiB;IACpE,MAAM,WAAW,GAAG;QACnB,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;QACvB,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;QAC3B,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;QAC3B,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;QACvB,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE;QAClD,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;QAC/B,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1F,CAAC;IAEF,OAAO;QACN,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;QAC7D,OAAO,EACN,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU;YAC/B,CAAC,CAAC;gBACA,GAAG,WAAW;gBACd,IAAI,EAAE,UAAU;gBAChB,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY;gBACvC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB;oBACnC,CAAC,CAAC,EAAE,mBAAmB,EAAE,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE;oBAC3D,CAAC,CAAC,EAAE,CAAC;aACN;YACF,CAAC,CAAC;gBACA,GAAG,WAAW;gBACd,IAAI,EAAE,QAAQ;aACd;QACJ,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;QACpD,eAAe,EAAE,IAAI,CAAC,eAAe;KACrC,CAAC;AACH,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { type McpPortalConfig, type OpenClawMcpPortalPluginConfig } from '@agent-vm/config-contracts';
2
+ import type { GatewayZoneAgentConfig } from '@agent-vm/gateway-interface';
3
+ export interface OpenClawMcpServerEntry {
4
+ readonly headers: Readonly<Record<string, string>>;
5
+ readonly transport: 'streamable-http';
6
+ readonly url: string;
7
+ }
8
+ export interface OpenClawMcpPortalMaterialization {
9
+ readonly mcpServers: Readonly<Record<string, OpenClawMcpServerEntry>>;
10
+ readonly pluginConfig: OpenClawMcpPortalPluginConfig;
11
+ }
12
+ export interface OpenClawMcpPortalMaterializationOptions {
13
+ readonly agents: readonly GatewayZoneAgentConfig[];
14
+ readonly binPath?: string;
15
+ readonly configDir: string;
16
+ readonly mcpPortalConfig: McpPortalConfig;
17
+ }
18
+ export declare function buildOpenClawMcpPortalMaterialization(options: OpenClawMcpPortalMaterializationOptions): OpenClawMcpPortalMaterialization;
19
+ //# sourceMappingURL=mcp-portal-openclaw-materialization.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-portal-openclaw-materialization.d.ts","sourceRoot":"","sources":["../../src/gateway/mcp-portal-openclaw-materialization.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,eAAe,EACpB,KAAK,6BAA6B,EAClC,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAG1E,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACnD,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;IACtC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gCAAgC;IAChD,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC,CAAC;IACtE,QAAQ,CAAC,YAAY,EAAE,6BAA6B,CAAC;CACrD;AAED,MAAM,WAAW,uCAAuC;IACvD,QAAQ,CAAC,MAAM,EAAE,SAAS,sBAAsB,EAAE,CAAC;IACnD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;CAC1C;AAED,wBAAgB,qCAAqC,CACpD,OAAO,EAAE,uCAAuC,GAC9C,gCAAgC,CA2BlC"}
@@ -0,0 +1,26 @@
1
+ import { secretValueToEnvironmentReference, } from '@agent-vm/config-contracts';
2
+ import { portalServerNameForAgent } from '@agent-vm/openclaw-mcp-portal-plugin';
3
+ export function buildOpenClawMcpPortalMaterialization(options) {
4
+ const pluginConfig = {
5
+ configDir: options.configDir,
6
+ ...(options.binPath === undefined ? {} : { binPath: options.binPath }),
7
+ };
8
+ const mcpServers = {};
9
+ for (const agent of options.agents) {
10
+ if (options.mcpPortalConfig.agents[agent.id] === undefined) {
11
+ throw new Error(`missing MCP Portal profile binding for agent '${agent.id}'`);
12
+ }
13
+ mcpServers[portalServerNameForAgent(agent.id)] = {
14
+ headers: {
15
+ [options.mcpPortalConfig.server.accessHeader.name]: secretValueToEnvironmentReference(options.mcpPortalConfig.server.accessHeader.secret),
16
+ },
17
+ transport: 'streamable-http',
18
+ url: `http://${options.mcpPortalConfig.server.host}:${String(options.mcpPortalConfig.server.port)}/agents/${encodeURIComponent(agent.id)}/mcp`,
19
+ };
20
+ }
21
+ return {
22
+ mcpServers,
23
+ pluginConfig,
24
+ };
25
+ }
26
+ //# sourceMappingURL=mcp-portal-openclaw-materialization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-portal-openclaw-materialization.js","sourceRoot":"","sources":["../../src/gateway/mcp-portal-openclaw-materialization.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,iCAAiC,GAGjC,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAoBhF,MAAM,UAAU,qCAAqC,CACpD,OAAgD;IAEhD,MAAM,YAAY,GAAkC;QACnD,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;KACtE,CAAC;IACF,MAAM,UAAU,GAA2C,EAAE,CAAC;IAC9D,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACpC,IAAI,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,SAAS,EAAE,CAAC;YAC5D,MAAM,IAAI,KAAK,CAAC,iDAAiD,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC;QAC/E,CAAC;QACD,UAAU,CAAC,wBAAwB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG;YAChD,OAAO,EAAE;gBACR,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,iCAAiC,CACpF,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAClD;aACD;YACD,SAAS,EAAE,iBAAiB;YAC5B,GAAG,EAAE,UAAU,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAC3D,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CACnC,WAAW,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM;SAC9C,CAAC;IACH,CAAC;IAED,OAAO;QACN,UAAU;QACV,YAAY;KACZ,CAAC;AACH,CAAC"}
@@ -1,6 +1,7 @@
1
1
  export interface GatewayToolInvocation {
2
2
  readonly tool: string;
3
3
  readonly args: Record<string, unknown>;
4
+ readonly agentId?: string;
4
5
  readonly sessionKey?: string;
5
6
  readonly dryRun?: boolean;
6
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"gateway-api-client.d.ts","sourceRoot":"","sources":["../../src/gateway-api-client/gateway-api-client.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,qBAAqB;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACvC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB;AAED;;;GAGG;AACH,MAAM,WAAW,wBAAwB;IACxC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAChC,gEAAgE;IAChE,gBAAgB,IAAI,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACtD,UAAU,CAAC,UAAU,EAAE,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAChE;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE;IAC/C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,GAAG,OAAO,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC9F,GAAG,gBAAgB,CA4BnB"}
1
+ {"version":3,"file":"gateway-api-client.d.ts","sourceRoot":"","sources":["../../src/gateway-api-client/gateway-api-client.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,qBAAqB;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACvC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB;AAED;;;GAGG;AACH,MAAM,WAAW,wBAAwB;IACxC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAChC,gEAAgE;IAChE,gBAAgB,IAAI,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACtD,UAAU,CAAC,UAAU,EAAE,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAChE;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE;IAC/C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,GAAG,OAAO,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC9F,GAAG,gBAAgB,CA6BnB"}
@@ -20,7 +20,8 @@ export function createGatewayApiClient(options) {
20
20
  method: 'POST',
21
21
  });
22
22
  if (!response.ok) {
23
- throw new Error(`Gateway API returned status ${response.status}`);
23
+ const responseBody = await response.text().catch(() => '(unreadable response body)');
24
+ throw new Error(`Gateway API returned status ${response.status}: ${responseBody}`);
24
25
  }
25
26
  return await response.json();
26
27
  },
@@ -1 +1 @@
1
- {"version":3,"file":"gateway-api-client.js","sourceRoot":"","sources":["../../src/gateway-api-client/gateway-api-client.ts"],"names":[],"mappings":"AAgCA,MAAM,UAAU,sBAAsB,CAAC,OAItC;IACA,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,KAAK,CAAC;IAC7C,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAEvD,OAAO;QACN,gBAAgB,EAAE,KAAK,IAAuC,EAAE;YAC/D,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,OAAO,SAAS,EAAE;gBACrD,OAAO,EAAE;oBACR,aAAa,EAAE,UAAU,OAAO,CAAC,KAAK,EAAE;iBACxC;aACD,CAAC,CAAC;YACH,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAA6B,CAAC;QAC5D,CAAC;QACD,UAAU,EAAE,KAAK,EAAE,UAAiC,EAAoB,EAAE;YACzE,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,OAAO,eAAe,EAAE;gBAC3D,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;gBAChC,OAAO,EAAE;oBACR,aAAa,EAAE,UAAU,OAAO,CAAC,KAAK,EAAE;oBACxC,cAAc,EAAE,kBAAkB;iBAClC;gBACD,MAAM,EAAE,MAAM;aACd,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,+BAA+B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;YACnE,CAAC;YACD,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC9B,CAAC;KACD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"gateway-api-client.js","sourceRoot":"","sources":["../../src/gateway-api-client/gateway-api-client.ts"],"names":[],"mappings":"AAiCA,MAAM,UAAU,sBAAsB,CAAC,OAItC;IACA,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,KAAK,CAAC;IAC7C,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAEvD,OAAO;QACN,gBAAgB,EAAE,KAAK,IAAuC,EAAE;YAC/D,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,OAAO,SAAS,EAAE;gBACrD,OAAO,EAAE;oBACR,aAAa,EAAE,UAAU,OAAO,CAAC,KAAK,EAAE;iBACxC;aACD,CAAC,CAAC;YACH,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAA6B,CAAC;QAC5D,CAAC;QACD,UAAU,EAAE,KAAK,EAAE,UAAiC,EAAoB,EAAE;YACzE,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,OAAO,eAAe,EAAE;gBAC3D,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;gBAChC,OAAO,EAAE;oBACR,aAAa,EAAE,UAAU,OAAO,CAAC,KAAK,EAAE;oBACxC,cAAc,EAAE,kBAAkB;iBAClC;gBACD,MAAM,EAAE,MAAM;aACd,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAClB,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,4BAA4B,CAAC,CAAC;gBACrF,MAAM,IAAI,KAAK,CAAC,+BAA+B,QAAQ,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC,CAAC;YACpF,CAAC;YACD,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC9B,CAAC;KACD,CAAC;AACH,CAAC"}
@@ -0,0 +1,59 @@
1
+ import type { SecretResolver } from '@agent-vm/gondolin-adapter';
2
+ import { type ImageArchitecture } from '../cli/init-command.js';
3
+ import { type LoadedSystemConfig } from '../config/system-config.js';
4
+ import type { ControllerRuntime, StartControllerRuntimeOptions } from '../controller/controller-runtime-types.js';
5
+ interface OpenClawSmokeZone extends Omit<LoadedSystemConfig['zones'][number], 'gateway'> {
6
+ readonly gateway: Extract<LoadedSystemConfig['zones'][number]['gateway'], {
7
+ readonly type: 'openclaw';
8
+ }>;
9
+ }
10
+ export interface SmokeHarnessSecretMap {
11
+ readonly [secretKey: string]: string;
12
+ }
13
+ export interface SmokeHarnessRuntime {
14
+ readonly controllerUrl: string;
15
+ readonly runtime: ControllerRuntime;
16
+ readonly systemConfig: LoadedSystemConfig;
17
+ readonly tempRoot: string;
18
+ close(): Promise<void>;
19
+ }
20
+ export interface OpenClawSmokeProject {
21
+ readonly controllerPort: number;
22
+ readonly gatewayPort: number;
23
+ readonly systemConfig: LoadedSystemConfig;
24
+ readonly tempRoot: string;
25
+ readonly zone: OpenClawSmokeZone;
26
+ }
27
+ export declare function hasCommand(command: string): boolean;
28
+ export declare function currentSmokeArchitecture(): ImageArchitecture;
29
+ export declare function qemuCommandForArchitecture(architecture: ImageArchitecture): string;
30
+ export declare function canRunGondolinSmoke(architecture: ImageArchitecture): boolean;
31
+ export declare function rebuildWorkspacePackages(repoRoot: string): void;
32
+ export declare function findAvailablePort(): Promise<number>;
33
+ export declare function waitForControllerReady(controllerPort: number): Promise<void>;
34
+ export declare function findReusableGatewayImageDirectory(currentProjectRoot: string, gatewayBuildConfigPath: string): Promise<string | null>;
35
+ export declare function seedGatewayImageCacheIfAvailable(options: {
36
+ readonly activeCacheDir: string;
37
+ readonly currentProjectRoot: string;
38
+ readonly gatewayBuildConfigPath: string;
39
+ }): Promise<void>;
40
+ export declare function createSmokeSecretResolver(secrets: SmokeHarnessSecretMap): SecretResolver;
41
+ export declare function getOpenClawSmokeZone(systemConfig: LoadedSystemConfig): OpenClawSmokeProject['zone'];
42
+ export declare function useLocalOpenClawPluginGatewayImage(options: {
43
+ readonly profileName: string;
44
+ readonly projectRoot: string;
45
+ readonly repoRoot: string;
46
+ readonly systemConfig: LoadedSystemConfig;
47
+ }): Promise<void>;
48
+ export declare function scaffoldOpenClawSmokeProject(options: {
49
+ readonly agents?: readonly string[];
50
+ readonly architecture: ImageArchitecture;
51
+ readonly prefix: string;
52
+ readonly zoneId: string;
53
+ }): Promise<OpenClawSmokeProject>;
54
+ export declare function startSmokeControllerRuntime(options: {
55
+ readonly secrets: SmokeHarnessSecretMap;
56
+ readonly startOptions: StartControllerRuntimeOptions;
57
+ }): Promise<SmokeHarnessRuntime>;
58
+ export {};
59
+ //# sourceMappingURL=smoke-harness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smoke-harness.d.ts","sourceRoot":"","sources":["../../src/integration-tests/smoke-harness.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,244 @@
1
+ import { execFileSync } from 'node:child_process';
2
+ import fs from 'node:fs/promises';
3
+ import net from 'node:net';
4
+ import os from 'node:os';
5
+ import path from 'node:path';
6
+ import { computeFingerprintFromConfigPath } from '../build/gondolin-image-builder.js';
7
+ import { resolveManagedImageRelease } from '../build/managed-image-dockerfile.js';
8
+ import { scaffoldAgentVmProject } from '../cli/init-command.js';
9
+ import { loadSystemConfig } from '../config/system-config.js';
10
+ import { startControllerRuntime } from '../controller/controller-runtime.js';
11
+ export function hasCommand(command) {
12
+ try {
13
+ execFileSync('sh', ['-lc', `command -v ${command} >/dev/null`], { stdio: 'ignore' });
14
+ return true;
15
+ }
16
+ catch {
17
+ return false;
18
+ }
19
+ }
20
+ export function currentSmokeArchitecture() {
21
+ return process.arch === 'arm64' ? 'aarch64' : 'x86_64';
22
+ }
23
+ export function qemuCommandForArchitecture(architecture) {
24
+ return architecture === 'aarch64' ? 'qemu-system-aarch64' : 'qemu-system-x86_64';
25
+ }
26
+ export function canRunGondolinSmoke(architecture) {
27
+ return (hasCommand(qemuCommandForArchitecture(architecture)) &&
28
+ hasCommand('zig') &&
29
+ hasCommand('docker'));
30
+ }
31
+ export function rebuildWorkspacePackages(repoRoot) {
32
+ execFileSync('pnpm', ['build'], {
33
+ cwd: repoRoot,
34
+ stdio: 'inherit',
35
+ });
36
+ }
37
+ export async function findAvailablePort() {
38
+ return await new Promise((resolve, reject) => {
39
+ const server = net.createServer();
40
+ server.once('error', reject);
41
+ server.listen(0, '127.0.0.1', () => {
42
+ const address = server.address();
43
+ if (!address || typeof address === 'string') {
44
+ server.close(() => reject(new Error('Failed to determine an available port.')));
45
+ return;
46
+ }
47
+ server.close((error) => {
48
+ if (error) {
49
+ reject(error);
50
+ return;
51
+ }
52
+ resolve(address.port);
53
+ });
54
+ });
55
+ });
56
+ }
57
+ export async function waitForControllerReady(controllerPort) {
58
+ for (let attempt = 0; attempt < 40; attempt += 1) {
59
+ // oxlint-disable-next-line eslint/no-await-in-loop -- readiness polling is sequential
60
+ const response = await fetch(`http://127.0.0.1:${controllerPort}/controller-status`).catch(() => null);
61
+ if (response?.ok) {
62
+ return;
63
+ }
64
+ // oxlint-disable-next-line eslint/no-await-in-loop -- readiness polling is sequential
65
+ await new Promise((resolve) => setTimeout(resolve, 500));
66
+ }
67
+ throw new Error('Controller did not become ready in time.');
68
+ }
69
+ export async function findReusableGatewayImageDirectory(currentProjectRoot, gatewayBuildConfigPath) {
70
+ const requiredFingerprint = await computeFingerprintFromConfigPath(gatewayBuildConfigPath);
71
+ const tempRootEntries = await fs.readdir(os.tmpdir(), { withFileTypes: true });
72
+ const smokeRunDirectories = tempRootEntries
73
+ .filter((entry) => entry.isDirectory() && entry.name.includes('-smoke-'))
74
+ .map((entry) => path.join(os.tmpdir(), entry.name));
75
+ for (const smokeRunDirectory of smokeRunDirectories) {
76
+ if (smokeRunDirectory === currentProjectRoot) {
77
+ continue;
78
+ }
79
+ const candidateImageDir = path.join(smokeRunDirectory, 'cache', 'images', 'gateway', requiredFingerprint);
80
+ try {
81
+ // oxlint-disable-next-line eslint/no-await-in-loop -- intentionally searches cache candidates
82
+ await fs.access(path.join(candidateImageDir, 'manifest.json'));
83
+ // oxlint-disable-next-line eslint/no-await-in-loop -- intentionally searches cache candidates
84
+ await fs.access(path.join(candidateImageDir, 'rootfs.ext4'));
85
+ // oxlint-disable-next-line eslint/no-await-in-loop -- intentionally searches cache candidates
86
+ await fs.access(path.join(candidateImageDir, 'initramfs.cpio.lz4'));
87
+ // oxlint-disable-next-line eslint/no-await-in-loop -- intentionally searches cache candidates
88
+ await fs.access(path.join(candidateImageDir, 'vmlinuz-virt'));
89
+ return candidateImageDir;
90
+ }
91
+ catch {
92
+ continue;
93
+ }
94
+ }
95
+ return null;
96
+ }
97
+ export async function seedGatewayImageCacheIfAvailable(options) {
98
+ const reusableImageDir = await findReusableGatewayImageDirectory(options.currentProjectRoot, options.gatewayBuildConfigPath);
99
+ if (!reusableImageDir) {
100
+ return;
101
+ }
102
+ const requiredFingerprint = await computeFingerprintFromConfigPath(options.gatewayBuildConfigPath);
103
+ const activeImageDir = path.join(options.activeCacheDir, 'images', 'gateway', requiredFingerprint);
104
+ if (activeImageDir === reusableImageDir) {
105
+ return;
106
+ }
107
+ await fs.rm(activeImageDir, { recursive: true, force: true });
108
+ await fs.mkdir(path.dirname(activeImageDir), { recursive: true });
109
+ await fs.symlink(reusableImageDir, activeImageDir, 'dir');
110
+ }
111
+ export function createSmokeSecretResolver(secrets) {
112
+ const resolve = async (ref) => {
113
+ const secretKey = ref.ref;
114
+ const secret = secrets[secretKey] ?? process.env[secretKey];
115
+ if (secret === undefined) {
116
+ throw new Error(`Smoke secret '${secretKey}' is not configured.`);
117
+ }
118
+ return secret;
119
+ };
120
+ return {
121
+ resolve,
122
+ resolveAll: async (refs) => {
123
+ const resolvedSecrets = {};
124
+ for (const [secretName, ref] of Object.entries(refs)) {
125
+ // oxlint-disable-next-line eslint/no-await-in-loop -- keeps deterministic secret errors
126
+ resolvedSecrets[secretName] = await resolve(ref);
127
+ }
128
+ return resolvedSecrets;
129
+ },
130
+ };
131
+ }
132
+ function applySmokeEnvironment(secrets) {
133
+ const previousValues = new Map();
134
+ for (const [secretName, secretValue] of Object.entries(secrets)) {
135
+ previousValues.set(secretName, process.env[secretName]);
136
+ process.env[secretName] = secretValue;
137
+ }
138
+ return () => {
139
+ for (const [secretName, previousValue] of previousValues) {
140
+ if (previousValue === undefined) {
141
+ delete process.env[secretName];
142
+ }
143
+ else {
144
+ process.env[secretName] = previousValue;
145
+ }
146
+ }
147
+ };
148
+ }
149
+ export function getOpenClawSmokeZone(systemConfig) {
150
+ const zone = systemConfig.zones[0];
151
+ if (!zone || zone.gateway.type !== 'openclaw') {
152
+ throw new Error('Expected smoke system config to contain an OpenClaw zone.');
153
+ }
154
+ return { ...zone, gateway: zone.gateway };
155
+ }
156
+ export async function useLocalOpenClawPluginGatewayImage(options) {
157
+ const gatewayProfile = options.systemConfig.imageProfiles.gateways[options.profileName];
158
+ if (!gatewayProfile) {
159
+ throw new Error(`Gateway image profile '${options.profileName}' is not configured.`);
160
+ }
161
+ const pluginDistDirectory = path.join(options.repoRoot, 'packages', 'openclaw-agent-vm-plugin', 'dist');
162
+ await fs.access(path.join(pluginDistDirectory, 'openclaw.plugin.json'));
163
+ const managedImageRelease = await resolveManagedImageRelease();
164
+ const baseImage = managedImageRelease.baseImages['openclaw-gateway'];
165
+ const dockerContextDirectory = path.join(options.projectRoot, 'vm-images', 'gateways', `${options.profileName}-local-plugin`);
166
+ const pluginArchivePath = path.join(dockerContextDirectory, 'gondolin-dist.tgz');
167
+ const dockerfilePath = path.join(dockerContextDirectory, 'Dockerfile');
168
+ await fs.rm(dockerContextDirectory, { force: true, recursive: true });
169
+ await fs.mkdir(dockerContextDirectory, { recursive: true });
170
+ execFileSync('tar', ['--no-xattrs', '-czf', pluginArchivePath, '-C', pluginDistDirectory, '.'], {
171
+ env: { ...process.env, COPYFILE_DISABLE: '1' },
172
+ stdio: 'inherit',
173
+ });
174
+ await fs.writeFile(dockerfilePath, [
175
+ `FROM ${baseImage.repository}:${baseImage.tag}`,
176
+ '',
177
+ '# Generated by the OpenClaw zone-git smoke harness from the local plugin dist.',
178
+ 'COPY gondolin-dist.tgz /tmp/gondolin-dist.tgz',
179
+ 'RUN mkdir -p /pnpm/global/5/node_modules/@openclaw',
180
+ 'RUN rm -rf /home/openclaw/.openclaw/extensions/gondolin && \\',
181
+ ' mkdir -p /home/openclaw/.openclaw/extensions/gondolin && \\',
182
+ ' tar -xzf /tmp/gondolin-dist.tgz -C /home/openclaw/.openclaw/extensions/gondolin && \\',
183
+ ' chown -R root:root /home/openclaw/.openclaw/extensions/gondolin && \\',
184
+ ' rm -f /tmp/gondolin-dist.tgz',
185
+ '',
186
+ ].join('\n'), 'utf8');
187
+ gatewayProfile.dockerfile = dockerfilePath;
188
+ delete gatewayProfile.source;
189
+ }
190
+ export async function scaffoldOpenClawSmokeProject(options) {
191
+ const tempRoot = await fs.mkdtemp(path.join(os.tmpdir(), options.prefix));
192
+ const controllerPort = await findAvailablePort();
193
+ const gatewayPort = await findAvailablePort();
194
+ await scaffoldAgentVmProject({
195
+ architecture: options.architecture,
196
+ gatewayType: 'openclaw',
197
+ secretsProvider: 'environment',
198
+ targetDir: tempRoot,
199
+ zoneId: options.zoneId,
200
+ ...(options.agents ? { agents: options.agents } : {}),
201
+ });
202
+ const systemConfig = await loadSystemConfig(path.join(tempRoot, 'config', 'system.json'));
203
+ systemConfig.host.controllerPort = controllerPort;
204
+ systemConfig.host.projectNamespace = 'claw-tests-zone-git';
205
+ systemConfig.cacheDir = path.join(tempRoot, 'cache');
206
+ const zone = getOpenClawSmokeZone(systemConfig);
207
+ zone.gateway.port = gatewayPort;
208
+ return {
209
+ controllerPort,
210
+ gatewayPort,
211
+ systemConfig,
212
+ tempRoot,
213
+ zone,
214
+ };
215
+ }
216
+ export async function startSmokeControllerRuntime(options) {
217
+ const restoreEnvironment = applySmokeEnvironment(options.secrets);
218
+ const secretResolver = createSmokeSecretResolver(options.secrets);
219
+ try {
220
+ const runtime = await startControllerRuntime(options.startOptions, {
221
+ createSecretResolver: async () => secretResolver,
222
+ });
223
+ await waitForControllerReady(options.startOptions.systemConfig.host.controllerPort);
224
+ return {
225
+ controllerUrl: `http://127.0.0.1:${options.startOptions.systemConfig.host.controllerPort}`,
226
+ runtime,
227
+ systemConfig: options.startOptions.systemConfig,
228
+ tempRoot: path.dirname(path.dirname(options.startOptions.systemConfig.systemConfigPath)),
229
+ close: async () => {
230
+ try {
231
+ await runtime.close();
232
+ }
233
+ finally {
234
+ restoreEnvironment();
235
+ }
236
+ },
237
+ };
238
+ }
239
+ catch (error) {
240
+ restoreEnvironment();
241
+ throw error;
242
+ }
243
+ }
244
+ //# sourceMappingURL=smoke-harness.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smoke-harness.js","sourceRoot":"","sources":["../../src/integration-tests/smoke-harness.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"config-validation.d.ts","sourceRoot":"","sources":["../../src/operations/config-validation.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAQrE,MAAM,WAAW,qBAAqB;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,SAAS,qBAAqB,EAAE,CAAC;CAClD;AAED,MAAM,WAAW,8BAA8B;IAC9C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAChD;AAED,MAAM,WAAW,6BAA6B;IAC7C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,6BAA6B,GAAG,CAC3C,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,OAAO,CAAC,EAAE,8BAA8B,KACpC,OAAO,CAAC,6BAA6B,CAAC,CAAC;AAE5C,MAAM,WAAW,0BAA0B;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,6BAA6B,CAAC;IACpD,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;CAC1C;AAiKD,wBAAgB,0BAA0B,CACzC,YAAY,EAAE,kBAAkB,EAChC,cAAc,EAAE,MAAM,GACpB,MAAM,CAiBR;AAmFD,wBAAsB,2BAA2B,CAChD,YAAY,EAAE,kBAAkB,EAChC,UAAU,GAAE,6BAAiD,GAC3D,OAAO,CAAC,SAAS,qBAAqB,EAAE,CAAC,CAO3C;AA4GD,wBAAsB,mBAAmB,CACxC,OAAO,EAAE,0BAA0B,GACjC,OAAO,CAAC,sBAAsB,CAAC,CA0BjC"}
1
+ {"version":3,"file":"config-validation.d.ts","sourceRoot":"","sources":["../../src/operations/config-validation.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AASrE,MAAM,WAAW,qBAAqB;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,SAAS,qBAAqB,EAAE,CAAC;CAClD;AAED,MAAM,WAAW,8BAA8B;IAC9C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAChD;AAED,MAAM,WAAW,6BAA6B;IAC7C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,6BAA6B,GAAG,CAC3C,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,OAAO,CAAC,EAAE,8BAA8B,KACpC,OAAO,CAAC,6BAA6B,CAAC,CAAC;AAE5C,MAAM,WAAW,0BAA0B;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,6BAA6B,CAAC;IACpD,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;CAC1C;AAiKD,wBAAgB,0BAA0B,CACzC,YAAY,EAAE,kBAAkB,EAChC,cAAc,EAAE,MAAM,GACpB,MAAM,CAiBR;AAmFD,wBAAsB,2BAA2B,CAChD,YAAY,EAAE,kBAAkB,EAChC,UAAU,GAAE,6BAAiD,GAC3D,OAAO,CAAC,SAAS,qBAAqB,EAAE,CAAC,CAO3C;AAmLD,wBAAsB,mBAAmB,CACxC,OAAO,EAAE,0BAA0B,GACjC,OAAO,CAAC,sBAAsB,CAAC,CA0CjC"}