@agentmeshhq/agent 0.1.13 → 0.1.14

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 (89) hide show
  1. package/dist/__tests__/loader.test.js +44 -1
  2. package/dist/__tests__/loader.test.js.map +1 -1
  3. package/dist/__tests__/runner.test.js.map +1 -1
  4. package/dist/__tests__/sandbox.test.js.map +1 -1
  5. package/dist/__tests__/watchdog.test.d.ts +1 -0
  6. package/dist/__tests__/watchdog.test.js +290 -0
  7. package/dist/__tests__/watchdog.test.js.map +1 -0
  8. package/dist/cli/attach.js +20 -1
  9. package/dist/cli/attach.js.map +1 -1
  10. package/dist/cli/build.js +8 -2
  11. package/dist/cli/build.js.map +1 -1
  12. package/dist/cli/context.js.map +1 -1
  13. package/dist/cli/deploy.js +1 -1
  14. package/dist/cli/deploy.js.map +1 -1
  15. package/dist/cli/init.js +1 -1
  16. package/dist/cli/init.js.map +1 -1
  17. package/dist/cli/list.js +3 -3
  18. package/dist/cli/list.js.map +1 -1
  19. package/dist/cli/local.js +5 -3
  20. package/dist/cli/local.js.map +1 -1
  21. package/dist/cli/migrate.js +1 -1
  22. package/dist/cli/migrate.js.map +1 -1
  23. package/dist/cli/nudge.js +16 -3
  24. package/dist/cli/nudge.js.map +1 -1
  25. package/dist/cli/restart.js.map +1 -1
  26. package/dist/cli/slack.js +1 -1
  27. package/dist/cli/slack.js.map +1 -1
  28. package/dist/cli/stop.js +13 -5
  29. package/dist/cli/stop.js.map +1 -1
  30. package/dist/cli/test.js +1 -1
  31. package/dist/cli/test.js.map +1 -1
  32. package/dist/cli/token.js +2 -2
  33. package/dist/cli/token.js.map +1 -1
  34. package/dist/config/loader.d.ts +5 -1
  35. package/dist/config/loader.js +27 -2
  36. package/dist/config/loader.js.map +1 -1
  37. package/dist/config/schema.d.ts +13 -0
  38. package/dist/core/daemon.d.ts +32 -1
  39. package/dist/core/daemon.js +362 -19
  40. package/dist/core/daemon.js.map +1 -1
  41. package/dist/core/injector.d.ts +2 -2
  42. package/dist/core/injector.js +23 -4
  43. package/dist/core/injector.js.map +1 -1
  44. package/dist/core/runner.d.ts +1 -1
  45. package/dist/core/runner.js +23 -1
  46. package/dist/core/runner.js.map +1 -1
  47. package/dist/core/sandbox.d.ts +11 -0
  48. package/dist/core/sandbox.js +34 -2
  49. package/dist/core/sandbox.js.map +1 -1
  50. package/dist/core/tmux.d.ts +8 -0
  51. package/dist/core/tmux.js +28 -1
  52. package/dist/core/tmux.js.map +1 -1
  53. package/dist/core/watchdog.d.ts +41 -0
  54. package/dist/core/watchdog.js +198 -0
  55. package/dist/core/watchdog.js.map +1 -0
  56. package/dist/core/websocket.js +1 -1
  57. package/dist/core/websocket.js.map +1 -1
  58. package/dist/index.d.ts +5 -5
  59. package/dist/index.js +5 -5
  60. package/dist/index.js.map +1 -1
  61. package/package.json +1 -1
  62. package/src/__tests__/loader.test.ts +52 -4
  63. package/src/__tests__/runner.test.ts +1 -2
  64. package/src/__tests__/sandbox.test.ts +1 -1
  65. package/src/__tests__/watchdog.test.ts +368 -0
  66. package/src/cli/attach.ts +22 -1
  67. package/src/cli/build.ts +12 -4
  68. package/src/cli/context.ts +0 -1
  69. package/src/cli/deploy.ts +7 -5
  70. package/src/cli/init.ts +7 -19
  71. package/src/cli/list.ts +6 -10
  72. package/src/cli/local.ts +21 -12
  73. package/src/cli/migrate.ts +6 -4
  74. package/src/cli/nudge.ts +29 -14
  75. package/src/cli/restart.ts +1 -1
  76. package/src/cli/slack.ts +16 -15
  77. package/src/cli/stop.ts +14 -5
  78. package/src/cli/test.ts +5 -3
  79. package/src/cli/token.ts +4 -4
  80. package/src/config/loader.ts +29 -2
  81. package/src/config/schema.ts +14 -0
  82. package/src/core/daemon.ts +439 -24
  83. package/src/core/injector.ts +27 -4
  84. package/src/core/runner.ts +26 -1
  85. package/src/core/sandbox.ts +47 -2
  86. package/src/core/tmux.ts +35 -2
  87. package/src/core/watchdog.ts +238 -0
  88. package/src/core/websocket.ts +2 -2
  89. package/src/index.ts +6 -5
@@ -2,15 +2,29 @@ import { execSync, spawn } from "node:child_process";
2
2
  import fs from "node:fs";
3
3
  import os from "node:os";
4
4
  import path from "node:path";
5
- import { addAgentToState, getAgentState, loadConfig, updateAgentInState, } from "../config/loader.js";
5
+ import { addAgentToState, getAgentState, loadConfig, resetAgentRestartCount, updateAgentInState, } from "../config/loader.js";
6
6
  import { loadContext, loadOrCreateContext, saveContext } from "../context/index.js";
7
7
  import { Heartbeat } from "./heartbeat.js";
8
8
  import { handleWebSocketEvent, injectRestoredContext, injectStartupMessage } from "./injector.js";
9
9
  import { checkInbox, fetchAssignments, registerAgent } from "./registry.js";
10
- import { buildRunnerConfig, getRunnerDisplayName, } from "./runner.js";
10
+ import { buildRunnerConfig, getRunnerDisplayName } from "./runner.js";
11
11
  import { DockerSandbox } from "./sandbox.js";
12
- import { captureSessionContext, createSession, destroySession, getSessionName, sessionExists, updateSessionEnvironment, } from "./tmux.js";
12
+ import { captureSessionContext, captureSessionOutput, createSession, destroySession, getSessionName, isSessionHealthy, sessionExists, updateSessionEnvironment, } from "./tmux.js";
13
+ import { checkAgentProgress, cleanupOrphanContainers, isProcessRunning, sendNudge, } from "./watchdog.js";
13
14
  import { AgentWebSocket } from "./websocket.js";
15
+ // Maximum number of auto-restart attempts
16
+ const MAX_RESTART_ATTEMPTS = 3;
17
+ // Time after which restart count resets (30 minutes of stable operation)
18
+ const RESTART_COUNT_RESET_MS = 30 * 60 * 1000;
19
+ // Time to wait after nudging before restarting (2 minutes)
20
+ const NUDGE_WAIT_MS = 2 * 60 * 1000;
21
+ // Path to the sandbox OpenCode config (permissive permissions)
22
+ const SANDBOX_OPENCODE_CONFIG_PATH = path.join(os.homedir(), ".agentmesh", "opencode-sandbox.json");
23
+ // Sandbox OpenCode config content - allow everything since container is sandboxed
24
+ const SANDBOX_OPENCODE_CONFIG = {
25
+ $schema: "https://opencode.ai/config.json",
26
+ permission: "allow",
27
+ };
14
28
  export class AgentDaemon {
15
29
  agentName;
16
30
  config;
@@ -27,17 +41,28 @@ export class AgentDaemon {
27
41
  serveMode;
28
42
  servePort;
29
43
  serveProcess = null;
30
- serverContext;
31
44
  sandboxMode;
32
45
  sandboxImage;
33
46
  sandboxCpu;
34
47
  sandboxMemory;
35
48
  sandbox = null;
49
+ healthCheckInterval = null;
50
+ serverContext;
51
+ // Auto-restart tracking
52
+ restartCount = 0;
53
+ lastStableTime = null;
54
+ stuckSince = null;
55
+ nudgeSentAt = null;
36
56
  constructor(options) {
37
57
  const config = loadConfig();
38
58
  if (!config) {
39
59
  throw new Error("No config found. Run 'agentmesh init' first.");
40
60
  }
61
+ // Ensure config has required fields with defaults
62
+ if (!config.agents)
63
+ config.agents = [];
64
+ if (!config.defaults)
65
+ config.defaults = { command: "opencode", model: "claude-sonnet-4" };
41
66
  this.config = config;
42
67
  this.agentName = options.name;
43
68
  this.shouldRestoreContext = options.restoreContext !== false;
@@ -83,9 +108,28 @@ export class AgentDaemon {
83
108
  return;
84
109
  }
85
110
  console.log(`Starting agent: ${this.agentName}`);
111
+ // Check for duplicate process
112
+ const existingState = getAgentState(this.agentName);
113
+ if (existingState && existingState.pid > 0) {
114
+ if (isProcessRunning(existingState.pid)) {
115
+ throw new Error(`Agent "${this.agentName}" is already running (PID: ${existingState.pid}). ` +
116
+ `Use 'agentmesh stop ${this.agentName}' first.`);
117
+ }
118
+ // Process not running, clean up stale state
119
+ console.log(`Cleaning up stale state for PID ${existingState.pid}`);
120
+ }
121
+ // Clean up orphan containers in sandbox mode
122
+ if (this.sandboxMode) {
123
+ const cleaned = cleanupOrphanContainers(this.agentName);
124
+ if (cleaned > 0) {
125
+ console.log(`Cleaned up ${cleaned} orphan container(s)`);
126
+ }
127
+ }
128
+ // Reset restart count on manual start
129
+ this.restartCount = 0;
130
+ this.lastStableTime = new Date();
86
131
  // Register with hub first (needed for assignment check)
87
132
  console.log("Registering with AgentMesh hub...");
88
- const existingState = getAgentState(this.agentName);
89
133
  console.log(`Existing state: ${existingState ? `agentId=${existingState.agentId}` : "none"}`);
90
134
  const registration = await registerAgent({
91
135
  url: this.config.hubUrl,
@@ -155,6 +199,7 @@ export class AgentDaemon {
155
199
  assignedProject: this.assignedProject,
156
200
  runtimeModel: this.runnerConfig.model,
157
201
  runnerType: this.runnerConfig.type,
202
+ sandboxContainer: this.sandbox?.getContainerName(),
158
203
  });
159
204
  // Start heartbeat with auto-refresh
160
205
  console.log("Starting heartbeat...");
@@ -235,11 +280,11 @@ export class AgentDaemon {
235
280
  },
236
281
  });
237
282
  this.ws.connect();
238
- // Check inbox and auto-nudge
283
+ // Check inbox and auto-nudge with full handoff details
239
284
  console.log("Checking inbox...");
240
285
  try {
241
286
  const inboxItems = await checkInbox(this.config.hubUrl, this.config.workspace, this.token);
242
- injectStartupMessage(this.agentName, inboxItems.length);
287
+ injectStartupMessage(this.agentName, inboxItems.length, inboxItems);
243
288
  }
244
289
  catch (error) {
245
290
  console.error("Failed to check inbox:", error);
@@ -257,6 +302,8 @@ export class AgentDaemon {
257
302
  }
258
303
  }
259
304
  this.isRunning = true;
305
+ // Start session health monitoring (every 60 seconds)
306
+ this.startHealthMonitor();
260
307
  console.log(`
261
308
  Agent "${this.agentName}" is running.
262
309
 
@@ -273,9 +320,227 @@ Nudge agent:
273
320
  process.on("SIGINT", () => this.stop());
274
321
  process.on("SIGTERM", () => this.stop());
275
322
  }
323
+ /**
324
+ * Starts periodic health monitoring for the tmux session
325
+ * Includes auto-restart logic and progress watchdog
326
+ */
327
+ startHealthMonitor() {
328
+ // Skip health monitoring for serve mode (no tmux session)
329
+ if (this.serveMode)
330
+ return;
331
+ const logDir = path.join(os.homedir(), ".agentmesh", "logs");
332
+ if (!fs.existsSync(logDir)) {
333
+ fs.mkdirSync(logDir, { recursive: true });
334
+ }
335
+ this.healthCheckInterval = setInterval(async () => {
336
+ if (!this.isRunning)
337
+ return;
338
+ // Reset restart count after stable operation
339
+ if (this.lastStableTime && this.restartCount > 0) {
340
+ const stableTime = Date.now() - this.lastStableTime.getTime();
341
+ if (stableTime > RESTART_COUNT_RESET_MS) {
342
+ console.log(`[HEALTH] Agent stable for 30+ minutes, resetting restart count`);
343
+ this.restartCount = 0;
344
+ resetAgentRestartCount(this.agentName);
345
+ }
346
+ }
347
+ const health = isSessionHealthy(this.agentName);
348
+ if (!health.healthy) {
349
+ // Session died - attempt restart
350
+ await this.handleSessionDeath(health.reason || "unknown", logDir);
351
+ return;
352
+ }
353
+ // Session is alive - check progress watchdog
354
+ const containerName = this.sandboxMode ? this.sandbox?.getContainerName() : undefined;
355
+ const progress = checkAgentProgress(this.agentName, containerName);
356
+ if (progress.status === "permission_blocked" || progress.status === "stuck") {
357
+ await this.handleStuckAgent(progress);
358
+ }
359
+ else if (progress.status === "active") {
360
+ // Agent is working - reset stuck tracking
361
+ if (this.stuckSince) {
362
+ console.log(`[HEALTH] Agent resumed activity`);
363
+ this.stuckSince = null;
364
+ this.nudgeSentAt = null;
365
+ updateAgentInState(this.agentName, { stuckSince: undefined, status: "running" });
366
+ }
367
+ this.lastStableTime = new Date();
368
+ }
369
+ }, 60000); // Check every 60 seconds
370
+ }
371
+ /**
372
+ * Handles session death - logs crash and attempts auto-restart
373
+ */
374
+ async handleSessionDeath(reason, logDir) {
375
+ const timestamp = new Date().toISOString();
376
+ const logFile = path.join(logDir, `crash-${this.agentName}.log`);
377
+ // Capture last session output before it's gone
378
+ let lastOutput = "";
379
+ try {
380
+ lastOutput = captureSessionOutput(this.agentName, 200) || "Unable to capture output";
381
+ }
382
+ catch {
383
+ lastOutput = "Failed to capture session output";
384
+ }
385
+ const crashLog = `
386
+ ================================================================================
387
+ AGENT CRASH DETECTED
388
+ ================================================================================
389
+ Timestamp: ${timestamp}
390
+ Agent: ${this.agentName}
391
+ Agent ID: ${this.agentId}
392
+ Reason: ${reason}
393
+ Restart Count: ${this.restartCount}/${MAX_RESTART_ATTEMPTS}
394
+ Sandbox: ${this.sandboxMode ? this.sandbox?.getContainerName() : "none"}
395
+ Workdir: ${this.agentConfig.workdir}
396
+ Model: ${this.runnerConfig.model}
397
+
398
+ --- Last Session Output ---
399
+ ${lastOutput}
400
+ ================================================================================
401
+
402
+ `;
403
+ fs.appendFileSync(logFile, crashLog);
404
+ // Check if we can restart
405
+ if (this.restartCount < MAX_RESTART_ATTEMPTS) {
406
+ this.restartCount++;
407
+ console.error(`[CRASH] Session died: ${reason}. Attempting restart (${this.restartCount}/${MAX_RESTART_ATTEMPTS})...`);
408
+ updateAgentInState(this.agentName, {
409
+ restartCount: this.restartCount,
410
+ lastRestartAt: timestamp,
411
+ status: "running",
412
+ });
413
+ try {
414
+ await this.restartSession();
415
+ console.log(`[RESTART] Agent restarted successfully`);
416
+ this.lastStableTime = new Date();
417
+ }
418
+ catch (error) {
419
+ console.error(`[RESTART] Failed to restart: ${error.message}`);
420
+ }
421
+ }
422
+ else {
423
+ // Exceeded restart limit - mark as failed
424
+ console.error(`[FAILED] Agent exceeded restart limit (${MAX_RESTART_ATTEMPTS}). Manual intervention required.`);
425
+ // Terminal bell to alert user
426
+ process.stdout.write("\x07");
427
+ updateAgentInState(this.agentName, {
428
+ status: "failed",
429
+ restartCount: this.restartCount,
430
+ });
431
+ // Stop monitoring
432
+ this.isRunning = false;
433
+ if (this.healthCheckInterval) {
434
+ clearInterval(this.healthCheckInterval);
435
+ this.healthCheckInterval = null;
436
+ }
437
+ }
438
+ }
439
+ /**
440
+ * Handles stuck agent - sends nudge first, then restarts if still stuck
441
+ */
442
+ async handleStuckAgent(progress) {
443
+ const now = new Date();
444
+ if (!this.stuckSince) {
445
+ // First detection of stuck state
446
+ this.stuckSince = now;
447
+ console.log(`[HEALTH] Agent appears stuck: ${progress.details || progress.blockedOn || "no activity"}`);
448
+ updateAgentInState(this.agentName, {
449
+ stuckSince: now.toISOString(),
450
+ status: "stuck",
451
+ });
452
+ }
453
+ // If we haven't sent a nudge yet, send one
454
+ if (!this.nudgeSentAt) {
455
+ console.log(`[HEALTH] Sending nudge to unstick agent...`);
456
+ const nudgeMessage = progress.status === "permission_blocked"
457
+ ? "Please continue with your task. If you see a permission prompt, try an alternative approach that doesn't require that permission."
458
+ : "Please continue with your current task.";
459
+ const sent = sendNudge(this.agentName, nudgeMessage);
460
+ if (sent) {
461
+ this.nudgeSentAt = now;
462
+ console.log(`[HEALTH] Nudge sent successfully`);
463
+ }
464
+ else {
465
+ console.log(`[HEALTH] Failed to send nudge`);
466
+ }
467
+ return;
468
+ }
469
+ // Check if enough time has passed since nudge
470
+ const timeSinceNudge = now.getTime() - this.nudgeSentAt.getTime();
471
+ if (timeSinceNudge < NUDGE_WAIT_MS) {
472
+ // Still waiting for agent to respond to nudge
473
+ return;
474
+ }
475
+ // Agent still stuck after nudge - trigger restart
476
+ console.log(`[HEALTH] Agent still stuck after nudge, triggering restart...`);
477
+ this.stuckSince = null;
478
+ this.nudgeSentAt = null;
479
+ await this.handleSessionDeath("stuck_after_nudge", path.join(os.homedir(), ".agentmesh", "logs"));
480
+ }
481
+ /**
482
+ * Restarts the agent session (sandbox or non-sandbox)
483
+ */
484
+ async restartSession() {
485
+ // Destroy existing session
486
+ destroySession(this.agentName);
487
+ if (this.sandboxMode && this.sandbox) {
488
+ // Restart sandbox container
489
+ const newContainerId = await this.sandbox.restart();
490
+ console.log(`[RESTART] New container: ${newContainerId.substring(0, 12)}`);
491
+ // Recreate tmux session for sandbox
492
+ const containerName = this.sandbox.getContainerName();
493
+ const sessionName = getSessionName(this.agentName);
494
+ // Build environment args for docker exec
495
+ const envArgs = [];
496
+ const allEnv = {
497
+ ...this.runnerConfig.env,
498
+ AGENT_TOKEN: this.token,
499
+ AGENTMESH_AGENT_ID: this.agentId,
500
+ };
501
+ for (const [key, value] of Object.entries(allEnv)) {
502
+ if (value !== undefined && value !== "") {
503
+ envArgs.push(`-e "${key}=${value}"`);
504
+ }
505
+ }
506
+ const envString = envArgs.join(" ");
507
+ const modelArg = this.runnerConfig.env?.OPENCODE_MODEL
508
+ ? ` --model ${this.runnerConfig.env.OPENCODE_MODEL}`
509
+ : "";
510
+ const dockerExecCommand = `docker exec -it ${envString} ${containerName} opencode${modelArg}`;
511
+ const created = createSession(this.agentName, dockerExecCommand, undefined, undefined);
512
+ if (!created) {
513
+ throw new Error("Failed to create tmux session for restarted sandbox");
514
+ }
515
+ // Update state with new container name
516
+ updateAgentInState(this.agentName, {
517
+ sandboxContainer: containerName,
518
+ });
519
+ }
520
+ else {
521
+ // Non-sandbox restart - just recreate tmux session
522
+ const created = createSession(this.agentName, this.agentConfig.command, this.agentConfig.workdir, this.runnerConfig.env);
523
+ if (!created) {
524
+ throw new Error("Failed to create tmux session");
525
+ }
526
+ // Re-inject environment
527
+ updateSessionEnvironment(this.agentName, {
528
+ AGENT_TOKEN: this.token,
529
+ AGENTMESH_AGENT_ID: this.agentId,
530
+ ...this.runnerConfig.env,
531
+ });
532
+ }
533
+ // Wait for session to be ready
534
+ await new Promise((resolve) => setTimeout(resolve, 2000));
535
+ }
276
536
  async stop() {
277
537
  console.log(`\nStopping agent: ${this.agentName}`);
278
538
  this.isRunning = false;
539
+ // Stop health monitor
540
+ if (this.healthCheckInterval) {
541
+ clearInterval(this.healthCheckInterval);
542
+ this.healthCheckInterval = null;
543
+ }
279
544
  // Save context before stopping
280
545
  if (this.agentId) {
281
546
  console.log("Saving agent context...");
@@ -293,7 +558,11 @@ Nudge agent:
293
558
  }
294
559
  // Stop sandbox, serve process, or destroy tmux session
295
560
  if (this.sandboxMode && this.sandbox) {
296
- console.log("Stopping sandbox container...");
561
+ console.log("Stopping sandbox...");
562
+ // In sandbox mode, we have both a tmux session (on host) and a Docker container
563
+ // Destroy tmux session first (this stops docker exec)
564
+ destroySession(this.agentName);
565
+ // Then destroy the container
297
566
  await this.sandbox.destroy();
298
567
  this.sandbox = null;
299
568
  }
@@ -357,6 +626,10 @@ Nudge agent:
357
626
  /**
358
627
  * Starts agent in Docker sandbox mode
359
628
  * Provides filesystem isolation with only workspace mounted
629
+ *
630
+ * Strategy: Start Docker container with tail -f /dev/null, then create
631
+ * a tmux session on the HOST that runs `docker exec -it <container> opencode`.
632
+ * This way tmux provides the TTY that docker exec needs.
360
633
  */
361
634
  async startSandboxMode() {
362
635
  console.log("Starting in Docker sandbox mode...");
@@ -369,9 +642,48 @@ Nudge agent:
369
642
  const existingContainer = DockerSandbox.findExisting(this.agentName);
370
643
  if (existingContainer) {
371
644
  console.log(`Found existing sandbox container: ${existingContainer}`);
372
- console.log("Stop it with: agentmesh stop " + this.agentName);
645
+ console.log(`Stop it with: agentmesh stop ${this.agentName}`);
373
646
  throw new Error("Sandbox container already exists");
374
647
  }
648
+ // Build additional mounts for credentials and config
649
+ // The entrypoint script copies these from /tmp/ to the correct locations
650
+ const additionalMounts = [];
651
+ // Mount git credentials
652
+ const gitCredentialsPath = path.join(os.homedir(), ".git-credentials");
653
+ if (fs.existsSync(gitCredentialsPath)) {
654
+ additionalMounts.push(`${gitCredentialsPath}:/tmp/.git-credentials-host:ro`);
655
+ }
656
+ // Mount OpenCode auth.json for API provider tokens (Anthropic, OpenAI, etc.)
657
+ const opencodeAuthPath = path.join(os.homedir(), ".local", "share", "opencode", "auth.json");
658
+ if (fs.existsSync(opencodeAuthPath)) {
659
+ additionalMounts.push(`${opencodeAuthPath}:/tmp/.opencode-auth-host:ro`);
660
+ }
661
+ // Mount AgentMesh config for hub URL, API key, workspace
662
+ const agentmeshConfigPath = path.join(os.homedir(), ".agentmesh", "config.json");
663
+ if (fs.existsSync(agentmeshConfigPath)) {
664
+ additionalMounts.push(`${agentmeshConfigPath}:/tmp/.agentmesh-config-host:ro`);
665
+ }
666
+ // Create and mount permissive OpenCode config for sandbox
667
+ // This allows all permissions since the container is already sandboxed
668
+ this.ensureSandboxOpencodeConfig();
669
+ additionalMounts.push(`${SANDBOX_OPENCODE_CONFIG_PATH}:/workspace/opencode.json:ro`);
670
+ // Pass GitHub token as environment variable for git operations
671
+ const gitCredentials = fs.existsSync(gitCredentialsPath)
672
+ ? fs.readFileSync(gitCredentialsPath, "utf-8").trim()
673
+ : "";
674
+ const gitHubToken = gitCredentials.match(/github_pat_[^\s@]+/)?.[0] || "";
675
+ // Build the command to run inside the container
676
+ // The agentmesh CLI inside the container will create tmux + opencode
677
+ const model = this.runnerConfig.env?.OPENCODE_MODEL || this.runnerConfig.model || "claude-sonnet-4";
678
+ const containerCommand = [
679
+ "agentmesh",
680
+ "start",
681
+ "--name",
682
+ this.agentName,
683
+ "--model",
684
+ model,
685
+ "--foreground",
686
+ ];
375
687
  // Create sandbox configuration
376
688
  this.sandbox = new DockerSandbox({
377
689
  agentName: this.agentName,
@@ -383,38 +695,47 @@ Nudge agent:
383
695
  ...this.runnerConfig.env,
384
696
  AGENT_TOKEN: this.token,
385
697
  AGENTMESH_AGENT_ID: this.agentId,
698
+ // Git credentials for pushing to GitHub
699
+ ...(gitHubToken && { GH_TOKEN: gitHubToken, GITHUB_TOKEN: gitHubToken }),
386
700
  },
387
701
  serveMode: this.serveMode,
388
702
  servePort: this.servePort,
389
703
  networkMode: "bridge",
704
+ additionalMounts: additionalMounts.length > 0 ? additionalMounts : undefined,
705
+ command: this.serveMode ? undefined : containerCommand,
390
706
  });
391
707
  // Validate mount policy (will throw if denied)
392
708
  this.sandbox.validateMountPolicy();
393
709
  // Pull image if needed
394
710
  await this.sandbox.pullImage();
395
- // Start container
711
+ // Start container with agentmesh running inside
712
+ // The entrypoint script sets up credentials before agentmesh starts
396
713
  await this.sandbox.start();
714
+ const containerName = this.sandbox.getContainerName();
397
715
  console.log(`
398
716
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
399
- 🐳 SANDBOX MODE ACTIVE
717
+ SANDBOX MODE ACTIVE
400
718
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
401
719
 
402
- Container: ${this.sandbox.getContainerName()}
720
+ Container: ${containerName}
403
721
  Image: ${this.sandboxImage}
404
722
  Workspace: ${workdir} -> /workspace
405
723
  CPU: ${this.sandboxCpu} core(s)
406
724
  Memory: ${this.sandboxMemory}
725
+ Model: ${model}
407
726
 
408
- The agent is running in an isolated Docker container.
409
- Only the workspace directory is accessible.
727
+ The agent daemon is running INSIDE the Docker container.
728
+ tmux session and OpenCode are managed inside the container.
729
+
730
+ Attach: agentmesh attach ${this.agentName}
731
+ Nudge: agentmesh nudge ${this.agentName} "message"
732
+ Stop: agentmesh stop ${this.agentName}
733
+ Logs: docker logs ${containerName}
410
734
 
411
735
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
412
736
  `);
413
- // Start opencode in the container
414
- if (!this.serveMode) {
415
- console.log("Starting opencode in sandbox container...");
416
- await this.sandbox.spawnOpencode();
417
- }
737
+ // No host tmux session needed - the container runs agentmesh which creates its own tmux
738
+ // Heartbeats are sent by the daemon running inside the container
418
739
  }
419
740
  /**
420
741
  * Saves the current agent context to disk
@@ -575,5 +896,27 @@ Option 3: Use --auto-setup to automatically clone the repository:
575
896
  console.log(`✓ Workspace ready: ${workspacePath}\n`);
576
897
  return workspacePath;
577
898
  }
899
+ /**
900
+ * Ensures the sandbox OpenCode config exists
901
+ * Creates ~/.agentmesh/opencode-sandbox.json with permissive permissions and model
902
+ */
903
+ ensureSandboxOpencodeConfig() {
904
+ const configDir = path.dirname(SANDBOX_OPENCODE_CONFIG_PATH);
905
+ if (!fs.existsSync(configDir)) {
906
+ fs.mkdirSync(configDir, { recursive: true });
907
+ }
908
+ // Build config with model if available
909
+ const config = {
910
+ ...SANDBOX_OPENCODE_CONFIG,
911
+ };
912
+ // Include model from runner config
913
+ const model = this.runnerConfig.env?.OPENCODE_MODEL;
914
+ if (model) {
915
+ config.model = model;
916
+ }
917
+ // Always write to ensure model is up to date
918
+ fs.writeFileSync(SANDBOX_OPENCODE_CONFIG_PATH, JSON.stringify(config, null, 2));
919
+ console.log(`Updated sandbox OpenCode config: ${SANDBOX_OPENCODE_CONFIG_PATH}`);
920
+ }
578
921
  }
579
922
  //# sourceMappingURL=daemon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../../src/core/daemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../../src/core/daemon.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { AgentContext } from "../context/schema.js";
2
2
  import type { InboxItem } from "./registry.js";
3
3
  import type { WebSocketEvent } from "./websocket.js";
4
- export declare function injectStartupMessage(agentName: string, pendingCount: number): void;
4
+ export declare function injectStartupMessage(agentName: string, pendingCount: number, inboxItems?: InboxItem[]): void;
5
5
  export declare function injectHandoffReceived(agentName: string, event: WebSocketEvent): void;
6
6
  export declare function injectNudge(agentName: string, event: WebSocketEvent): void;
7
7
  export declare function injectBlockerResolved(agentName: string, event: WebSocketEvent): void;
@@ -9,7 +9,7 @@ export interface EventContext {
9
9
  hubUrl?: string;
10
10
  token?: string;
11
11
  }
12
- export declare function injectSlackMessage(agentName: string, event: WebSocketEvent, context?: EventContext): void;
12
+ export declare function injectSlackMessage(agentName: string, event: WebSocketEvent, _context?: EventContext): void;
13
13
  export declare function injectInboxItems(agentName: string, items: InboxItem[]): void;
14
14
  export declare function handleWebSocketEvent(agentName: string, event: WebSocketEvent, context?: EventContext): void;
15
15
  /**