aimux-cli 0.1.9 → 0.1.11

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 (57) hide show
  1. package/dist/builtin-metadata-watchers.js +2 -103
  2. package/dist/builtin-metadata-watchers.js.map +1 -1
  3. package/dist/config.d.ts +12 -0
  4. package/dist/config.js +9 -0
  5. package/dist/config.js.map +1 -1
  6. package/dist/daemon.js +45 -10
  7. package/dist/daemon.js.map +1 -1
  8. package/dist/dashboard/targets.js +3 -1
  9. package/dist/dashboard/targets.js.map +1 -1
  10. package/dist/default-plugins/transcript-length.d.ts +6 -0
  11. package/dist/default-plugins/transcript-length.js +84 -0
  12. package/dist/default-plugins/transcript-length.js.map +1 -0
  13. package/dist/http-client.js +1 -0
  14. package/dist/http-client.js.map +1 -1
  15. package/dist/main.js +80 -83
  16. package/dist/main.js.map +1 -1
  17. package/dist/metadata-server.d.ts +1 -0
  18. package/dist/metadata-server.js +17 -0
  19. package/dist/metadata-server.js.map +1 -1
  20. package/dist/metadata-store.d.ts +10 -0
  21. package/dist/metadata-store.js +1 -1
  22. package/dist/metadata-store.js.map +1 -1
  23. package/dist/multiplexer/dashboard-interaction.js +0 -1
  24. package/dist/multiplexer/dashboard-interaction.js.map +1 -1
  25. package/dist/multiplexer/dashboard-model.js +43 -8
  26. package/dist/multiplexer/dashboard-model.js.map +1 -1
  27. package/dist/multiplexer/index.js +2 -24
  28. package/dist/multiplexer/index.js.map +1 -1
  29. package/dist/multiplexer/persistence-methods.js +5 -2
  30. package/dist/multiplexer/persistence-methods.js.map +1 -1
  31. package/dist/multiplexer/runtime-state.js +0 -1
  32. package/dist/multiplexer/runtime-state.js.map +1 -1
  33. package/dist/multiplexer/runtime-sync.js +0 -1
  34. package/dist/multiplexer/runtime-sync.js.map +1 -1
  35. package/dist/multiplexer/session-launch.js +13 -26
  36. package/dist/multiplexer/session-launch.js.map +1 -1
  37. package/dist/plugin-runtime.d.ts +11 -2
  38. package/dist/plugin-runtime.js +111 -42
  39. package/dist/plugin-runtime.js.map +1 -1
  40. package/dist/session-bootstrap.d.ts +7 -4
  41. package/dist/session-bootstrap.js +183 -112
  42. package/dist/session-bootstrap.js.map +1 -1
  43. package/dist/shell-hooks.js +37 -15
  44. package/dist/shell-hooks.js.map +1 -1
  45. package/dist/shell-state.d.ts +28 -0
  46. package/dist/shell-state.js +51 -0
  47. package/dist/shell-state.js.map +1 -0
  48. package/dist/statusline-model.d.ts +12 -0
  49. package/dist/statusline-model.js.map +1 -1
  50. package/dist/tmux/runtime-manager.js +9 -2
  51. package/dist/tmux/runtime-manager.js.map +1 -1
  52. package/dist/tmux/statusline.js +35 -4
  53. package/dist/tmux/statusline.js.map +1 -1
  54. package/dist/worktree.d.ts +1 -0
  55. package/dist/worktree.js +59 -35
  56. package/dist/worktree.js.map +1 -1
  57. package/package.json +1 -1
@@ -11,34 +11,40 @@ export class SessionBootstrapService {
11
11
  this.deps = deps;
12
12
  }
13
13
  buildSessionPreamble(opts) {
14
- const { sessionId, worktreePath, extraPreamble } = opts;
15
- let preamble = "You are running inside aimux, an agent multiplexer. " +
16
- "Other agents may be working on this codebase simultaneously.\n" +
17
- `Your session ID is ${sessionId}.\n` +
18
- `- .aimux/context/${sessionId}/live.md your recent conversation history\n` +
19
- `- .aimux/context/${sessionId}/summary.md your compacted history\n` +
20
- `- .aimux/plans/${sessionId}.md — your shared working plan\n` +
21
- "- .aimux/sessions.jsonall running agents\n" +
22
- "- Other agent contexts are in .aimux/context/{their-session-id}/. Check sessions.json for the list.\n" +
23
- "- Other agent plans are in .aimux/plans/{their-session-id}.md.\n" +
24
- "- .aimux/history/full raw conversation history (JSONL)";
25
- const globalAimuxMd = join(homedir(), "AIMUX.md");
26
- const projectAimuxMd = join(process.cwd(), "AIMUX.md");
27
- for (const mdPath of [globalAimuxMd, projectAimuxMd]) {
28
- if (!existsSync(mdPath))
29
- continue;
30
- try {
31
- const userPreamble = readFileSync(mdPath, "utf-8").trim();
32
- if (!userPreamble)
14
+ const { sessionId, worktreePath, extraPreamble, includeAimuxPreamble = true } = opts;
15
+ let preamble = "";
16
+ if (includeAimuxPreamble) {
17
+ preamble =
18
+ "You are running inside aimux, an agent multiplexer. " +
19
+ "Other agents may be working on this codebase simultaneously.\n" +
20
+ `Your session ID is ${sessionId}.\n` +
21
+ `- .aimux/context/${sessionId}/live.mdyour recent conversation history\n` +
22
+ `- .aimux/context/${sessionId}/summary.md your compacted history\n` +
23
+ `- .aimux/plans/${sessionId}.md — your shared working plan\n` +
24
+ "- .aimux/sessions.jsonall running agents\n" +
25
+ "- Other agent contexts are in .aimux/context/{their-session-id}/. Check sessions.json for the list.\n" +
26
+ "- Other agent plans are in .aimux/plans/{their-session-id}.md.\n" +
27
+ "- .aimux/history/ full raw conversation history (JSONL)";
28
+ }
29
+ if (includeAimuxPreamble) {
30
+ const globalAimuxMd = join(homedir(), "AIMUX.md");
31
+ const projectAimuxMd = join(process.cwd(), "AIMUX.md");
32
+ for (const mdPath of [globalAimuxMd, projectAimuxMd]) {
33
+ if (!existsSync(mdPath))
33
34
  continue;
34
- preamble += "\n\n" + userPreamble;
35
- debug(`loaded ${mdPath} (${userPreamble.length} chars)`, "preamble");
36
- }
37
- catch {
38
- // Ignore unreadable user preamble files.
35
+ try {
36
+ const userPreamble = readFileSync(mdPath, "utf-8").trim();
37
+ if (!userPreamble)
38
+ continue;
39
+ preamble += "\n\n" + userPreamble;
40
+ debug(`loaded ${mdPath} (${userPreamble.length} chars)`, "preamble");
41
+ }
42
+ catch {
43
+ // Ignore unreadable user preamble files.
44
+ }
39
45
  }
40
46
  }
41
- if (worktreePath) {
47
+ if (includeAimuxPreamble && worktreePath) {
42
48
  try {
43
49
  const allWt = listAllWorktrees(worktreePath);
44
50
  const thisWt = allWt.find((w) => w.path === worktreePath);
@@ -57,60 +63,78 @@ export class SessionBootstrapService {
57
63
  preamble += `\n\nYou are working in a git worktree at ${worktreePath}. Stay in this directory.`;
58
64
  }
59
65
  }
60
- preamble +=
61
- "\n\n## Planning\n" +
62
- "Maintain a plan file at .aimux/plans/" +
63
- sessionId +
64
- ".md.\n" +
65
- "Keep it current enough that other agents can audit, annotate, or continue your work.\n" +
66
- "Use this structure:\n" +
67
- "- Goal\n" +
68
- "- Current Status\n" +
69
- "- Steps\n" +
70
- "- Notes\n" +
71
- "Update it when your plan materially changes or when you complete a step.";
72
- preamble +=
73
- "\n\n## Status\n" +
74
- "Maintain a status file at .aimux/status/" +
75
- sessionId +
76
- ".md (3-5 lines max).\n" +
77
- "Update it whenever your focus changes. Include:\n" +
78
- "- What you're currently working on\n" +
79
- "- Key files involved\n" +
80
- "- Current state (investigating, implementing, testing, blocked, etc.)";
81
- preamble +=
82
- "\n\n## Aimux Cross-Agent Delegation\n" +
83
- "IMPORTANT: This is the aimux delegation system for coordinating work across agents in this multiplexer. " +
84
- "It is separate from any built-in task/todo features in your own tool.\n\n" +
85
- "### Delegating work to another agent\n" +
86
- "When asked to delegate, hand off, or assign work to another agent, create a JSON file:\n" +
87
- "```\n" +
88
- ".aimux/tasks/{short-descriptive-name}.json\n" +
89
- "```\n" +
90
- "Contents:\n" +
91
- "```json\n" +
92
- '{\n "id": "{same as filename without .json}",\n "status": "pending",\n' +
93
- ' "assignedBy": "' +
94
- sessionId +
95
- '",\n' +
96
- ' "description": "Brief summary of the task",\n' +
97
- ' "prompt": "Detailed instructions for the other agent",\n' +
98
- ' "createdAt": "{ISO timestamp}",\n "updatedAt": "{ISO timestamp}"\n}\n' +
99
- "```\n" +
100
- "Optional fields: `assignedTo` (target session ID), `tool` (preferred tool type).\n" +
101
- "Aimux will automatically dispatch pending tasks to idle agents and inject the prompt.\n" +
102
- "Check .aimux/sessions.json for available agents and their session IDs.\n\n" +
103
- "### Receiving a delegated task\n" +
104
- "When you see `[AIMUX TASK ...]` in your input, another agent delegated work to you.\n" +
105
- "Complete the work, then update the task file:\n" +
106
- '- Success: set `status` to `"done"` and add a `result` field with a summary\n' +
107
- '- Failure: set `status` to `"failed"` and add an `error` field\n' +
108
- "The delegating agent will be notified automatically.";
66
+ if (includeAimuxPreamble) {
67
+ preamble +=
68
+ "\n\n## Planning\n" +
69
+ "Maintain a plan file at .aimux/plans/" +
70
+ sessionId +
71
+ ".md.\n" +
72
+ "Keep it current enough that other agents can audit, annotate, or continue your work.\n" +
73
+ "Use this structure:\n" +
74
+ "- Goal\n" +
75
+ "- Current Status\n" +
76
+ "- Steps\n" +
77
+ "- Notes\n" +
78
+ "Update it when your plan materially changes or when you complete a step.";
79
+ preamble +=
80
+ "\n\n## Status\n" +
81
+ "Maintain a status file at .aimux/status/" +
82
+ sessionId +
83
+ ".md (3-5 lines max).\n" +
84
+ "Update it whenever your focus changes. Include:\n" +
85
+ "- What you're currently working on\n" +
86
+ "- Key files involved\n" +
87
+ "- Current state (investigating, implementing, testing, blocked, etc.)";
88
+ preamble +=
89
+ "\n\n## Aimux Cross-Agent Delegation\n" +
90
+ "IMPORTANT: This is the aimux delegation system for coordinating work across agents in this multiplexer. " +
91
+ "It is separate from any built-in task/todo features in your own tool.\n\n" +
92
+ "### Delegating work to another agent\n" +
93
+ "When asked to delegate, hand off, or assign work to another agent, create a JSON file:\n" +
94
+ "```\n" +
95
+ ".aimux/tasks/{short-descriptive-name}.json\n" +
96
+ "```\n" +
97
+ "Contents:\n" +
98
+ "```json\n" +
99
+ '{\n "id": "{same as filename without .json}",\n "status": "pending",\n' +
100
+ ' "assignedBy": "' +
101
+ sessionId +
102
+ '",\n' +
103
+ ' "description": "Brief summary of the task",\n' +
104
+ ' "prompt": "Detailed instructions for the other agent",\n' +
105
+ ' "createdAt": "{ISO timestamp}",\n "updatedAt": "{ISO timestamp}"\n}\n' +
106
+ "```\n" +
107
+ "Optional fields: `assignedTo` (target session ID), `tool` (preferred tool type).\n" +
108
+ "Aimux will automatically dispatch pending tasks to idle agents and inject the prompt.\n" +
109
+ "Check .aimux/sessions.json for available agents and their session IDs.\n\n" +
110
+ "### Receiving a delegated task\n" +
111
+ "When you see `[AIMUX TASK ...]` in your input, another agent delegated work to you.\n" +
112
+ "Complete the work, then update the task file:\n" +
113
+ '- Success: set `status` to `"done"` and add a `result` field with a summary\n' +
114
+ '- Failure: set `status` to `"failed"` and add an `error` field\n' +
115
+ "The delegating agent will be notified automatically.";
116
+ }
109
117
  if (extraPreamble) {
110
- preamble += "\n" + extraPreamble;
118
+ preamble += (preamble ? "\n" : "") + extraPreamble;
111
119
  }
112
120
  return preamble;
113
121
  }
122
+ buildInitialKickoffPrompt(sessionId, preamble) {
123
+ const summaryPath = join(getContextDir(), sessionId, "summary.md");
124
+ const livePath = join(getContextDir(), sessionId, "live.md");
125
+ const planPath = join(getPlansDir(), `${sessionId}.md`);
126
+ const statusPath = join(getStatusDir(), `${sessionId}.md`);
127
+ return [
128
+ `This is an aimux-managed session with session ID ${sessionId}.`,
129
+ `Your shared session files live at ${summaryPath}, ${livePath}, ${planPath}, and ${statusPath}.`,
130
+ "Read and follow these operating instructions for this session before continuing.",
131
+ "Treat them as standing session rules and coordination context, not as a user request.",
132
+ "",
133
+ preamble.trim(),
134
+ ]
135
+ .filter(Boolean)
136
+ .join("\n");
137
+ }
114
138
  ensurePlanFile(sessionId, command, worktreePath) {
115
139
  try {
116
140
  const plansDir = getPlansDir();
@@ -268,11 +292,14 @@ export class SessionBootstrapService {
268
292
  .filter(Boolean)
269
293
  .join("\n");
270
294
  }
271
- buildForkKickoffPrompt(sourceSessionId, targetSessionId, snapshot, instruction) {
295
+ buildCodexForkKickoffPrompt(sourceSessionId, targetSessionId, snapshot, instruction) {
272
296
  const activitySummary = this.summarizeForkSourceActivity(snapshot);
297
+ const summaryPath = join(getContextDir(), targetSessionId, "summary.md");
298
+ const livePath = join(getContextDir(), targetSessionId, "live.md");
299
+ const planPath = join(getPlansDir(), `${targetSessionId}.md`);
273
300
  return [
274
301
  `This session is a fork of ${sourceSessionId}.`,
275
- `Read .aimux/context/${targetSessionId}/summary.md, .aimux/context/${targetSessionId}/live.md, and .aimux/plans/${targetSessionId}.md first.`,
302
+ `Read ${summaryPath}, ${livePath}, and ${planPath} first.`,
276
303
  "Treat them as real carried-over memory, not fresh-session scaffolding.",
277
304
  "Do not start with git archaeology.",
278
305
  activitySummary ? `Recent source activity: ${activitySummary}` : undefined,
@@ -282,7 +309,7 @@ export class SessionBootstrapService {
282
309
  .filter(Boolean)
283
310
  .join(" ");
284
311
  }
285
- buildMigrationKickoffPrompt(sessionId, sourceWorktreePath, targetWorktreePath, snapshot, instruction) {
312
+ buildCodexMigrationKickoffPrompt(sessionId, sourceWorktreePath, targetWorktreePath, snapshot, instruction) {
286
313
  const activitySummary = this.summarizeForkSourceActivity(snapshot);
287
314
  const summaryPath = join(getContextDir(), sessionId, "summary.md");
288
315
  const livePath = join(getContextDir(), sessionId, "live.md");
@@ -301,6 +328,25 @@ export class SessionBootstrapService {
301
328
  .filter(Boolean)
302
329
  .join(" ");
303
330
  }
331
+ deliverDetachedCodexKickoffPrompt(targetSessionId, kickoff, delayMs = 1800) {
332
+ return new Promise((resolve) => {
333
+ setTimeout(async () => {
334
+ try {
335
+ const target = this.deps.getSessionTmuxTarget(targetSessionId);
336
+ if (target) {
337
+ this.deps.tmuxRuntimeManager.sendText(target, kickoff);
338
+ await this.waitForDetachedCodexKickoffSubmit(targetSessionId, target, kickoff);
339
+ }
340
+ }
341
+ catch {
342
+ // Continue even if kickoff automation fails; user can still recover manually.
343
+ }
344
+ finally {
345
+ resolve();
346
+ }
347
+ }, delayMs);
348
+ });
349
+ }
304
350
  seedForkArtifacts(sourceSessionId, targetSessionId, targetToolConfigKey) {
305
351
  const snapshot = this.readForkSourceSnapshot(sourceSessionId);
306
352
  const activitySummary = this.summarizeForkSourceActivity(snapshot);
@@ -362,51 +408,71 @@ export class SessionBootstrapService {
362
408
  .filter(Boolean)
363
409
  .join("\n"));
364
410
  }
365
- waitForCodexKickoffSubmit(targetSessionId, target, kickoff) {
366
- const startedAt = Date.now();
411
+ waitForDetachedCodexKickoffSubmit(targetSessionId, target, kickoff) {
367
412
  return new Promise((resolve) => {
368
- const step = (attempt = 1, lastFingerprint = "") => {
369
- if (Date.now() - startedAt > 12000 || attempt > 12) {
370
- debug(`fork kickoff submit: target=${targetSessionId} timeout`, "fork");
371
- resolve(false);
413
+ const waitForDraft = (attempt = 1, visibleCount = 0, lastSignature = "") => {
414
+ if (attempt > 20) {
415
+ step(1);
372
416
  return;
373
417
  }
374
418
  setTimeout(() => {
375
419
  try {
376
420
  const currentTarget = this.deps.getSessionTmuxTarget(targetSessionId);
377
421
  if (!currentTarget || currentTarget.windowId !== target.windowId) {
378
- debug(`fork kickoff submit: target=${targetSessionId} no longer active`, "fork");
379
422
  resolve(false);
380
423
  return;
381
424
  }
382
425
  const stillDraft = this.paneStillContainsDraft(target, kickoff);
383
- const fingerprint = this.capturePaneFingerprint(target);
384
- const settled = stillDraft && fingerprint.length > 0 && fingerprint === lastFingerprint;
385
- debug(`fork kickoff submit: target=${targetSessionId} attempt=${attempt} stillDraft=${stillDraft ? "yes" : "no"} settled=${settled ? "yes" : "no"} mode=Enter`, "fork");
386
- if (!stillDraft && attempt > 1) {
387
- resolve(true);
426
+ const signature = stillDraft ? this.captureDraftSignature(target) : "";
427
+ const nextVisibleCount = stillDraft && signature && signature === lastSignature ? visibleCount + 1 : stillDraft ? 1 : 0;
428
+ if (nextVisibleCount >= 2) {
429
+ step(1);
388
430
  return;
389
431
  }
390
- if (!settled) {
391
- step(attempt, fingerprint);
432
+ waitForDraft(attempt + 1, nextVisibleCount, signature);
433
+ }
434
+ catch {
435
+ waitForDraft(attempt + 1, visibleCount, lastSignature);
436
+ }
437
+ }, attempt === 1 ? 300 : 250);
438
+ };
439
+ const step = (attempt = 1) => {
440
+ if (attempt > 4) {
441
+ resolve(false);
442
+ return;
443
+ }
444
+ setTimeout(() => {
445
+ try {
446
+ const currentTarget = this.deps.getSessionTmuxTarget(targetSessionId);
447
+ if (!currentTarget || currentTarget.windowId !== target.windowId) {
448
+ resolve(false);
392
449
  return;
393
450
  }
394
- const client = this.deps.tmuxRuntimeManager.getAttachedClientForTarget(target);
395
- if (client) {
396
- this.deps.tmuxRuntimeManager.switchClientToTarget(client.tty, target);
397
- this.deps.tmuxRuntimeManager.sendClientCarriageReturn(client.tty, target);
398
- }
399
- else {
400
- this.deps.tmuxRuntimeManager.sendEnter(target);
451
+ this.deps.tmuxRuntimeManager.sendCarriageReturn(target);
452
+ if (attempt >= 4) {
453
+ resolve(true);
454
+ return;
401
455
  }
402
- step(attempt + 1, "");
456
+ setTimeout(() => {
457
+ try {
458
+ const stillDraft = this.paneStillContainsDraft(target, kickoff);
459
+ if (stillDraft) {
460
+ step(attempt + 1);
461
+ return;
462
+ }
463
+ }
464
+ catch {
465
+ // Fall through and treat it as submitted; the next user-visible render will confirm.
466
+ }
467
+ resolve(true);
468
+ }, 700);
403
469
  }
404
470
  catch {
405
471
  resolve(false);
406
472
  }
407
- }, attempt === 1 ? 1200 : 700);
473
+ }, attempt === 1 ? 200 : 700);
408
474
  };
409
- step();
475
+ waitForDraft();
410
476
  });
411
477
  }
412
478
  finalizePreamble(command, preamble) {
@@ -423,23 +489,28 @@ export class SessionBootstrapService {
423
489
  const pane = this.deps.tmuxRuntimeManager.captureTarget(target, { startLine: -60 });
424
490
  const normalize = (value) => value.replace(/\s+/g, " ").trim().toLowerCase();
425
491
  const normalizedPane = normalize(pane);
426
- const expectedFragments = [
427
- "this session is a fork of",
428
- "treat them as real carried-over memory",
429
- "after reading them, briefly summarize",
430
- ].filter((fragment) => normalize(draft).includes(fragment));
431
- if (expectedFragments.length === 0)
492
+ const normalizedDraft = normalize(draft);
493
+ if (!normalizedDraft)
432
494
  return false;
433
- return expectedFragments.every((fragment) => normalizedPane.includes(fragment));
495
+ if (normalizedPane.includes(normalizedDraft))
496
+ return true;
497
+ if (normalizedPane.includes("[pasted content"))
498
+ return true;
499
+ const fragments = normalizedDraft
500
+ .split(/[.!?]\s+/)
501
+ .map((fragment) => fragment.trim())
502
+ .filter((fragment) => fragment.length >= 24)
503
+ .slice(0, 3);
504
+ return fragments.some((fragment) => normalizedPane.includes(fragment));
434
505
  }
435
506
  catch {
436
507
  return false;
437
508
  }
438
509
  }
439
- capturePaneFingerprint(target) {
510
+ captureDraftSignature(target) {
440
511
  try {
441
- const pane = this.deps.tmuxRuntimeManager.captureTarget(target, { startLine: -80 });
442
- return pane.replace(/\s+/g, " ").trim().slice(-800);
512
+ const pane = this.deps.tmuxRuntimeManager.captureTarget(target, { startLine: -20 });
513
+ return pane.replace(/\s+/g, " ").trim().slice(-240);
443
514
  }
444
515
  catch {
445
516
  return "";
@@ -1 +1 @@
1
- {"version":3,"file":"session-bootstrap.js","sourceRoot":"","sources":["../src/session-bootstrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-bootstrap.js","sourceRoot":"","sources":["../src/session-bootstrap.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  import { mkdirSync, writeFileSync } from "node:fs";
2
2
  import { basename, dirname, join } from "node:path";
3
3
  import { getProjectStateDirFor } from "./paths.js";
4
- import { getAimuxCliEntryPath } from "./claude-hooks.js";
5
4
  function shellQuote(value) {
6
5
  return `'${value.replace(/'/g, `'\\''`)}'`;
7
6
  }
@@ -21,12 +20,25 @@ function buildZshRc() {
21
20
  }
22
21
  function buildZshIntegration() {
23
22
  return [
23
+ "_aimux_read_endpoint() {",
24
+ ' [ -n "$AIMUX_METADATA_ENDPOINT_FILE" ] || return 1',
25
+ ' [ -f "$AIMUX_METADATA_ENDPOINT_FILE" ] || return 1',
26
+ ' local endpoint=""',
27
+ ' IFS= read -r endpoint < "$AIMUX_METADATA_ENDPOINT_FILE" || return 1',
28
+ ' [ -n "$endpoint" ] || return 1',
29
+ ' printf "%s" "$endpoint"',
30
+ "}",
31
+ "",
24
32
  "_aimux_report_shell_state() {",
25
- ' [ -n "$AIMUX_NODE_BIN" ] || return 0',
26
- ' [ -n "$AIMUX_CLI_ENTRY" ] || return 0',
27
33
  ' [ -n "$AIMUX_SESSION_ID" ] || return 0',
28
- ' [ -n "$AIMUX_PROJECT_ROOT" ] || return 0',
29
- ' "$AIMUX_NODE_BIN" "$AIMUX_CLI_ENTRY" shell-hook "$1" --session "$AIMUX_SESSION_ID" --project "$AIMUX_PROJECT_ROOT" --tool "$AIMUX_TOOL" >/dev/null 2>&1 || true',
34
+ ' [ -n "$AIMUX_TOOL" ] || AIMUX_TOOL="shell"',
35
+ ' [ "${AIMUX_LAST_SHELL_STATE:-}" = "$1" ] && return 0',
36
+ ' local endpoint="" payload=""',
37
+ ' endpoint="$(_aimux_read_endpoint)" || return 0',
38
+ ' payload=$(printf \'{"state":"%s","sessionId":"%s","tool":"%s"}\' "$1" "$AIMUX_SESSION_ID" "$AIMUX_TOOL")',
39
+ ' AIMUX_LAST_SHELL_STATE="$1"',
40
+ " command -v curl >/dev/null 2>&1 || return 0",
41
+ ' { command nohup curl --silent --show-error --fail --max-time 1 --output /dev/null -H "content-type: application/json" --data "$payload" "$endpoint/shell-state" >/dev/null 2>&1 </dev/null || true; } &! ',
30
42
  "}",
31
43
  "",
32
44
  "_aimux_preexec() {",
@@ -61,12 +73,26 @@ function buildBashRc() {
61
73
  }
62
74
  function buildBashIntegration() {
63
75
  return [
76
+ "_aimux_read_endpoint() {",
77
+ ' [ -n "$AIMUX_METADATA_ENDPOINT_FILE" ] || return 1',
78
+ ' [ -f "$AIMUX_METADATA_ENDPOINT_FILE" ] || return 1',
79
+ ' local endpoint=""',
80
+ ' IFS= read -r endpoint < "$AIMUX_METADATA_ENDPOINT_FILE" || return 1',
81
+ ' [ -n "$endpoint" ] || return 1',
82
+ ' printf "%s" "$endpoint"',
83
+ "}",
84
+ "",
64
85
  "_aimux_report_shell_state() {",
65
- ' [ -n "$AIMUX_NODE_BIN" ] || return 0',
66
- ' [ -n "$AIMUX_CLI_ENTRY" ] || return 0',
67
86
  ' [ -n "$AIMUX_SESSION_ID" ] || return 0',
68
- ' [ -n "$AIMUX_PROJECT_ROOT" ] || return 0',
69
- ' "$AIMUX_NODE_BIN" "$AIMUX_CLI_ENTRY" shell-hook "$1" --session "$AIMUX_SESSION_ID" --project "$AIMUX_PROJECT_ROOT" --tool "$AIMUX_TOOL" >/dev/null 2>&1 || true',
87
+ ' [ -n "$AIMUX_TOOL" ] || AIMUX_TOOL="shell"',
88
+ ' [ "${AIMUX_LAST_SHELL_STATE:-}" = "$1" ] && return 0',
89
+ ' local endpoint="" payload=""',
90
+ ' endpoint="$(_aimux_read_endpoint)" || return 0',
91
+ ' payload=$(printf \'{"state":"%s","sessionId":"%s","tool":"%s"}\' "$1" "$AIMUX_SESSION_ID" "$AIMUX_TOOL")',
92
+ ' AIMUX_LAST_SHELL_STATE="$1"',
93
+ " command -v curl >/dev/null 2>&1 || return 0",
94
+ ' command nohup curl --silent --show-error --fail --max-time 1 --output /dev/null -H "content-type: application/json" --data "$payload" "$endpoint/shell-state" >/dev/null 2>&1 </dev/null &',
95
+ " disown $! 2>/dev/null || true",
70
96
  "}",
71
97
  "",
72
98
  "_aimux_preexec_command() {",
@@ -106,11 +132,9 @@ export function prepareShellIntegration(projectRoot, shellPath = process.env.SHE
106
132
  export function wrapCommandWithShellIntegration(opts) {
107
133
  const prepared = prepareShellIntegration(opts.projectRoot, opts.shellPath);
108
134
  const envArgs = [
109
- `AIMUX_NODE_BIN=${process.execPath}`,
110
- `AIMUX_CLI_ENTRY=${getAimuxCliEntryPath()}`,
111
135
  `AIMUX_SESSION_ID=${opts.sessionId}`,
112
- `AIMUX_PROJECT_ROOT=${opts.projectRoot}`,
113
136
  `AIMUX_TOOL=${opts.tool}`,
137
+ `AIMUX_METADATA_ENDPOINT_FILE=${join(getProjectStateDirFor(opts.projectRoot), "metadata-api.txt")}`,
114
138
  `AIMUX_SHELL_INTEGRATION_SCRIPT=${prepared.integrationScriptPath}`,
115
139
  ];
116
140
  const commandString = [opts.command, ...opts.args].map(shellQuote).join(" ");
@@ -122,11 +146,9 @@ export function wrapCommandWithShellIntegration(opts) {
122
146
  export function wrapInteractiveShellWithIntegration(opts) {
123
147
  const prepared = prepareShellIntegration(opts.projectRoot, opts.shellPath);
124
148
  const envArgs = [
125
- `AIMUX_NODE_BIN=${process.execPath}`,
126
- `AIMUX_CLI_ENTRY=${getAimuxCliEntryPath()}`,
127
149
  `AIMUX_SESSION_ID=${opts.sessionId}`,
128
- `AIMUX_PROJECT_ROOT=${opts.projectRoot}`,
129
150
  `AIMUX_TOOL=${opts.tool}`,
151
+ `AIMUX_METADATA_ENDPOINT_FILE=${join(getProjectStateDirFor(opts.projectRoot), "metadata-api.txt")}`,
130
152
  `AIMUX_SHELL_INTEGRATION_SCRIPT=${prepared.integrationScriptPath}`,
131
153
  ];
132
154
  const shellArgs = prepared.shellName === "bash"
@@ -1 +1 @@
1
- {"version":3,"file":"shell-hooks.js","sourceRoot":"","sources":["../src/shell-hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzD,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC;AAC7C,CAAC;AAED,SAAS,SAAS,CAAC,IAAY;IAC7B,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,UAAU;IACjB,OAAO;QACL,gCAAgC;QAChC,yBAAyB;QACzB,IAAI;QACJ,mDAAmD;QACnD,4CAA4C;QAC5C,IAAI;QACJ,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,mBAAmB;IAC1B,OAAO;QACL,+BAA+B;QAC/B,wCAAwC;QACxC,yCAAyC;QACzC,0CAA0C;QAC1C,4CAA4C;QAC5C,mKAAmK;QACnK,GAAG;QACH,EAAE;QACF,oBAAoB;QACpB,qCAAqC;QACrC,GAAG;QACH,EAAE;QACF,mBAAmB;QACnB,oCAAoC;QACpC,GAAG;QACH,EAAE;QACF,+CAA+C;QAC/C,kDAAkD;QAClD,uCAAuC;QACvC,qCAAqC;QACrC,MAAM;QACN,8DAA8D;QAC9D,2DAA2D;QAC3D,IAAI;QACJ,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,WAAW;IAClB,OAAO;QACL,iCAAiC;QACjC,0BAA0B;QAC1B,IAAI;QACJ,mDAAmD;QACnD,4CAA4C;QAC5C,IAAI;QACJ,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,oBAAoB;IAC3B,OAAO;QACL,+BAA+B;QAC/B,wCAAwC;QACxC,yCAAyC;QACzC,0CAA0C;QAC1C,4CAA4C;QAC5C,mKAAmK;QACnK,GAAG;QACH,EAAE;QACF,4BAA4B;QAC5B,iCAAiC;QACjC,qCAAqC;QACrC,GAAG;QACH,EAAE;QACF,2BAA2B;QAC3B,oCAAoC;QACpC,GAAG;QACH,EAAE;QACF,qCAAqC;QACrC,mCAAmC;QACnC,2DAA2D;QAC3D,MAAM;QACN,0CAA0C;QAC1C,IAAI;QACJ,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AASD,MAAM,UAAU,uBAAuB,CACrC,WAAmB,EACnB,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,UAAU;IAE3C,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;IACpD,MAAM,SAAS,GAAmB,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;IAC9E,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,EAAE,mBAAmB,CAAC,CAAC;IAC9E,SAAS,CAAC,OAAO,CAAC,CAAC;IAEnB,MAAM,qBAAqB,GAAG,IAAI,CAChC,OAAO,EACP,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,2BAA2B,CACnF,CAAC;IACF,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAE/E,aAAa,CAAC,qBAAqB,EAAE,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAC5G,aAAa,CAAC,MAAM,EAAE,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;IAE3E,OAAO;QACL,SAAS;QACT,SAAS;QACT,qBAAqB;QACrB,MAAM;KACP,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,IAO/C;IACC,MAAM,QAAQ,GAAG,uBAAuB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3E,MAAM,OAAO,GAAG;QACd,kBAAkB,OAAO,CAAC,QAAQ,EAAE;QACpC,mBAAmB,oBAAoB,EAAE,EAAE;QAC3C,oBAAoB,IAAI,CAAC,SAAS,EAAE;QACpC,sBAAsB,IAAI,CAAC,WAAW,EAAE;QACxC,cAAc,IAAI,CAAC,IAAI,EAAE;QACzB,kCAAkC,QAAQ,CAAC,qBAAqB,EAAE;KACnE,CAAC;IACF,MAAM,aAAa,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7E,MAAM,SAAS,GACb,QAAQ,CAAC,SAAS,KAAK,MAAM;QAC3B,CAAC,CAAC,CAAC,GAAG,OAAO,EAAE,QAAQ,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,aAAa,CAAC;QACrF,CAAC,CAAC,CAAC,GAAG,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;IAEpG,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,mCAAmC,CAAC,IAKnD;IACC,MAAM,QAAQ,GAAG,uBAAuB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3E,MAAM,OAAO,GAAG;QACd,kBAAkB,OAAO,CAAC,QAAQ,EAAE;QACpC,mBAAmB,oBAAoB,EAAE,EAAE;QAC3C,oBAAoB,IAAI,CAAC,SAAS,EAAE;QACpC,sBAAsB,IAAI,CAAC,WAAW,EAAE;QACxC,cAAc,IAAI,CAAC,IAAI,EAAE;QACzB,kCAAkC,QAAQ,CAAC,qBAAqB,EAAE;KACnE,CAAC;IACF,MAAM,SAAS,GACb,QAAQ,CAAC,SAAS,KAAK,MAAM;QAC3B,CAAC,CAAC,CAAC,GAAG,OAAO,EAAE,QAAQ,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;QACrE,CAAC,CAAC,CAAC,GAAG,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACpF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;AAC7C,CAAC"}
1
+ {"version":3,"file":"shell-hooks.js","sourceRoot":"","sources":["../src/shell-hooks.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import { AgentTracker } from "./agent-tracker.js";
2
+ import type { AgentActivityState } from "./agent-events.js";
3
+ import type { AlertKind } from "./project-events.js";
4
+ export interface ApplyShellStateInput {
5
+ state: string;
6
+ sessionId: string;
7
+ tool?: string;
8
+ tracker: AgentTracker;
9
+ projectRoot?: string;
10
+ emitAlert: (input: {
11
+ kind: AlertKind;
12
+ sessionId?: string;
13
+ title: string;
14
+ message: string;
15
+ dedupeKey?: string;
16
+ forceNotify?: boolean;
17
+ }) => void;
18
+ }
19
+ export interface ApplyShellStateResult {
20
+ ok: true;
21
+ state: string;
22
+ sessionId: string;
23
+ tool: string;
24
+ previousActivity?: AgentActivityState;
25
+ nextActivity: AgentActivityState;
26
+ notified: boolean;
27
+ }
28
+ export declare function applyShellStateTransition(input: ApplyShellStateInput): ApplyShellStateResult;