oh-my-codex 0.3.5 → 0.3.7

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 (55) hide show
  1. package/README.md +9 -0
  2. package/dist/agents/definitions.d.ts.map +1 -1
  3. package/dist/agents/definitions.js +14 -14
  4. package/dist/agents/definitions.js.map +1 -1
  5. package/dist/cli/__tests__/index.test.js +60 -5
  6. package/dist/cli/__tests__/index.test.js.map +1 -1
  7. package/dist/cli/index.d.ts +20 -2
  8. package/dist/cli/index.d.ts.map +1 -1
  9. package/dist/cli/index.js +172 -83
  10. package/dist/cli/index.js.map +1 -1
  11. package/dist/hooks/__tests__/agents-overlay.test.js +142 -1
  12. package/dist/hooks/__tests__/agents-overlay.test.js.map +1 -1
  13. package/dist/hooks/agents-overlay.d.ts +10 -0
  14. package/dist/hooks/agents-overlay.d.ts.map +1 -1
  15. package/dist/hooks/agents-overlay.js +116 -25
  16. package/dist/hooks/agents-overlay.js.map +1 -1
  17. package/dist/hud/__tests__/hud-tmux-injection.test.d.ts +10 -0
  18. package/dist/hud/__tests__/hud-tmux-injection.test.d.ts.map +1 -0
  19. package/dist/hud/__tests__/hud-tmux-injection.test.js +143 -0
  20. package/dist/hud/__tests__/hud-tmux-injection.test.js.map +1 -0
  21. package/dist/hud/__tests__/state.test.d.ts +2 -0
  22. package/dist/hud/__tests__/state.test.d.ts.map +1 -0
  23. package/dist/hud/__tests__/state.test.js +32 -0
  24. package/dist/hud/__tests__/state.test.js.map +1 -0
  25. package/dist/hud/index.d.ts +10 -0
  26. package/dist/hud/index.d.ts.map +1 -1
  27. package/dist/hud/index.js +32 -8
  28. package/dist/hud/index.js.map +1 -1
  29. package/dist/hud/state.d.ts.map +1 -1
  30. package/dist/hud/state.js +6 -1
  31. package/dist/hud/state.js.map +1 -1
  32. package/dist/team/__tests__/runtime.test.js +29 -2
  33. package/dist/team/__tests__/runtime.test.js.map +1 -1
  34. package/dist/team/__tests__/worker-bootstrap.test.js +22 -1
  35. package/dist/team/__tests__/worker-bootstrap.test.js.map +1 -1
  36. package/dist/team/orchestrator.d.ts.map +1 -1
  37. package/dist/team/orchestrator.js +2 -1
  38. package/dist/team/orchestrator.js.map +1 -1
  39. package/dist/team/runtime.d.ts +2 -0
  40. package/dist/team/runtime.d.ts.map +1 -1
  41. package/dist/team/runtime.js +40 -8
  42. package/dist/team/runtime.js.map +1 -1
  43. package/dist/team/state.d.ts +1 -1
  44. package/dist/team/state.d.ts.map +1 -1
  45. package/dist/team/state.js +2 -2
  46. package/dist/team/state.js.map +1 -1
  47. package/dist/team/worker-bootstrap.d.ts.map +1 -1
  48. package/dist/team/worker-bootstrap.js +110 -33
  49. package/dist/team/worker-bootstrap.js.map +1 -1
  50. package/package.json +1 -1
  51. package/prompts/deep-executor.md +11 -102
  52. package/prompts/executor.md +102 -63
  53. package/skills/team/SKILL.md +16 -0
  54. package/skills/worker/SKILL.md +1 -0
  55. package/templates/AGENTS.md +36 -3
@@ -7,9 +7,14 @@
7
7
  import { describe, it, before, after } from 'node:test';
8
8
  import assert from 'node:assert/strict';
9
9
  import { mkdtemp, rm, mkdir, writeFile, readFile } from 'fs/promises';
10
+ import { existsSync } from 'fs';
10
11
  import { join } from 'path';
11
12
  import { tmpdir } from 'os';
12
- import { generateOverlay, applyOverlay, stripOverlay, hasOverlay, } from '../agents-overlay.js';
13
+ import { generateOverlay, applyOverlay, stripOverlay, hasOverlay, writeSessionModelInstructionsFile, removeSessionModelInstructionsFile, sessionModelInstructionsPath, } from '../agents-overlay.js';
14
+ const RUNTIME_START = '<!-- OMX:RUNTIME:START -->';
15
+ const RUNTIME_END = '<!-- OMX:RUNTIME:END -->';
16
+ const WORKER_START = '<!-- OMX:TEAM:WORKER:START -->';
17
+ const WORKER_END = '<!-- OMX:TEAM:WORKER:END -->';
13
18
  async function makeTempDir() {
14
19
  const dir = await mkdtemp(join(tmpdir(), 'omx-overlay-test-'));
15
20
  await mkdir(join(dir, '.omx', 'state'), { recursive: true });
@@ -69,6 +74,28 @@ describe('generateOverlay', () => {
69
74
  assert.ok(overlay.includes('<!-- OMX:RUNTIME:START -->'));
70
75
  assert.ok(overlay.includes('<!-- OMX:RUNTIME:END -->'));
71
76
  });
77
+ it('uses deterministic overflow policy under size cap', async () => {
78
+ // Inflate optional sections so overflow behavior is exercised.
79
+ for (let i = 0; i < 40; i++) {
80
+ await writeFile(join(tempDir, '.omx', 'state', `mode-${i}-state.json`), JSON.stringify({ active: true, iteration: i + 1, max_iterations: 99, current_phase: 'run' }));
81
+ }
82
+ await writeFile(join(tempDir, '.omx', 'notepad.md'), `## PRIORITY\n${'N'.repeat(8000)}`);
83
+ await writeFile(join(tempDir, '.omx', 'project-memory.json'), JSON.stringify({
84
+ techStack: 'T'.repeat(9000),
85
+ conventions: 'C'.repeat(9000),
86
+ directives: [{ directive: 'D'.repeat(3000), priority: 'high' }],
87
+ }));
88
+ const overlay1 = await generateOverlay(tempDir, 'overflow-session');
89
+ const overlay2 = await generateOverlay(tempDir, 'overflow-session');
90
+ for (const overlay of [overlay1, overlay2]) {
91
+ assert.ok(overlay.length <= 2000, `Overlay too large: ${overlay.length} chars`);
92
+ assert.ok(overlay.includes('**Active Modes:**'));
93
+ assert.ok(overlay.includes('**Priority Notes:**'));
94
+ assert.ok(overlay.includes('**Compaction Protocol:**'));
95
+ // Lowest-priority section is dropped first.
96
+ assert.ok(!overlay.includes('**Project Context:**'));
97
+ }
98
+ });
72
99
  it('skips inactive modes', async () => {
73
100
  await writeFile(join(tempDir, '.omx', 'state', 'autopilot-state.json'), JSON.stringify({ active: false, current_phase: 'cancelled' }));
74
101
  const overlay = await generateOverlay(tempDir, 'test-session-6');
@@ -139,6 +166,120 @@ Some instructions here.
139
166
  assert.ok(hasOverlay(result));
140
167
  assert.ok(result.includes('new-file-test'));
141
168
  });
169
+ it('stripOverlay removes runtime overlay and preserves worker overlay (runtime->worker order)', async () => {
170
+ const agentsMd = join(tempDir, 'AGENTS-stacked-rw.md');
171
+ await writeFile(agentsMd, originalContent);
172
+ const runtimeOverlay = await generateOverlay(tempDir, 'stacked-rw');
173
+ await applyOverlay(agentsMd, runtimeOverlay, tempDir);
174
+ const workerOverlay = `${WORKER_START}
175
+ <team_worker_protocol>
176
+ worker protocol body
177
+ </team_worker_protocol>
178
+ ${WORKER_END}
179
+ `;
180
+ const withRuntime = await readFile(agentsMd, 'utf-8');
181
+ await writeFile(agentsMd, `${withRuntime.trimEnd()}\n\n${workerOverlay}`);
182
+ await stripOverlay(agentsMd, tempDir);
183
+ const result = await readFile(agentsMd, 'utf-8');
184
+ assert.ok(!result.includes(RUNTIME_START));
185
+ assert.ok(!result.includes(RUNTIME_END));
186
+ assert.ok(result.includes(WORKER_START));
187
+ assert.ok(result.includes(WORKER_END));
188
+ });
189
+ it('stripOverlay removes runtime overlay and preserves worker overlay (worker->runtime order)', async () => {
190
+ const agentsMd = join(tempDir, 'AGENTS-stacked-wr.md');
191
+ const workerOverlay = `${WORKER_START}
192
+ <team_worker_protocol>
193
+ worker protocol body
194
+ </team_worker_protocol>
195
+ ${WORKER_END}
196
+ `;
197
+ await writeFile(agentsMd, `${originalContent.trimEnd()}\n\n${workerOverlay}`);
198
+ const runtimeOverlay = await generateOverlay(tempDir, 'stacked-wr');
199
+ await applyOverlay(agentsMd, runtimeOverlay, tempDir);
200
+ await stripOverlay(agentsMd, tempDir);
201
+ const result = await readFile(agentsMd, 'utf-8');
202
+ assert.ok(!result.includes(RUNTIME_START));
203
+ assert.ok(!result.includes(RUNTIME_END));
204
+ assert.ok(result.includes(WORKER_START));
205
+ assert.ok(result.includes(WORKER_END));
206
+ });
207
+ it('stripOverlay removes duplicate runtime marker blocks', async () => {
208
+ const agentsMd = join(tempDir, 'AGENTS-duplicate-runtime.md');
209
+ const dup = `${originalContent.trimEnd()}
210
+
211
+ ${RUNTIME_START}
212
+ <session_context>first</session_context>
213
+ ${RUNTIME_END}
214
+
215
+ ${RUNTIME_START}
216
+ <session_context>second</session_context>
217
+ ${RUNTIME_END}
218
+ `;
219
+ await writeFile(agentsMd, dup);
220
+ await stripOverlay(agentsMd, tempDir);
221
+ const result = await readFile(agentsMd, 'utf-8');
222
+ assert.ok(!result.includes(RUNTIME_START));
223
+ assert.ok(!result.includes(RUNTIME_END));
224
+ assert.equal(result.trim(), originalContent.trim());
225
+ });
226
+ it('stripOverlay handles malformed runtime start marker without deleting worker overlay', async () => {
227
+ const agentsMd = join(tempDir, 'AGENTS-malformed-runtime.md');
228
+ const malformed = `${originalContent.trimEnd()}
229
+
230
+ ${RUNTIME_START}
231
+ <session_context>
232
+ incomplete runtime block
233
+
234
+ ${WORKER_START}
235
+ <team_worker_protocol>
236
+ worker protocol body
237
+ </team_worker_protocol>
238
+ ${WORKER_END}
239
+ `;
240
+ await writeFile(agentsMd, malformed);
241
+ await stripOverlay(agentsMd, tempDir);
242
+ const result = await readFile(agentsMd, 'utf-8');
243
+ assert.ok(!result.includes(RUNTIME_START));
244
+ assert.ok(result.includes(WORKER_START));
245
+ assert.ok(result.includes(WORKER_END));
246
+ });
247
+ });
248
+ describe('session-scoped model instructions file', () => {
249
+ let tempDir;
250
+ before(async () => { tempDir = await makeTempDir(); });
251
+ after(async () => { await rm(tempDir, { recursive: true, force: true }); });
252
+ it('writes project AGENTS.md + runtime overlay into session-scoped file', async () => {
253
+ const projectAgentsMd = join(tempDir, 'AGENTS.md');
254
+ const projectContent = '# Project instructions\n\nStay in scope.\n';
255
+ await writeFile(projectAgentsMd, projectContent);
256
+ const overlay = await generateOverlay(tempDir, 'session-a');
257
+ const writtenPath = await writeSessionModelInstructionsFile(tempDir, 'session-a', overlay);
258
+ const sessionContent = await readFile(writtenPath, 'utf-8');
259
+ const projectAfter = await readFile(projectAgentsMd, 'utf-8');
260
+ assert.equal(writtenPath, sessionModelInstructionsPath(tempDir, 'session-a'));
261
+ assert.match(sessionContent, /# Project instructions/);
262
+ assert.match(sessionContent, /<!-- OMX:RUNTIME:START -->/);
263
+ assert.equal(projectAfter, projectContent);
264
+ });
265
+ it('writes overlay-only session file when project AGENTS.md is missing', async () => {
266
+ await rm(join(tempDir, 'AGENTS.md'), { force: true });
267
+ const overlay = await generateOverlay(tempDir, 'session-b');
268
+ const writtenPath = await writeSessionModelInstructionsFile(tempDir, 'session-b', overlay);
269
+ const sessionContent = await readFile(writtenPath, 'utf-8');
270
+ assert.ok(sessionContent.includes('<!-- OMX:RUNTIME:START -->'));
271
+ assert.ok(sessionContent.includes('<!-- OMX:RUNTIME:END -->'));
272
+ });
273
+ it('removes session-scoped file without touching project AGENTS.md', async () => {
274
+ const projectAgentsMd = join(tempDir, 'AGENTS.md');
275
+ const projectContent = '# Keep me unchanged\n';
276
+ await writeFile(projectAgentsMd, projectContent);
277
+ const overlay = await generateOverlay(tempDir, 'session-c');
278
+ const writtenPath = await writeSessionModelInstructionsFile(tempDir, 'session-c', overlay);
279
+ await removeSessionModelInstructionsFile(tempDir, 'session-c');
280
+ assert.equal(existsSync(writtenPath), false);
281
+ assert.equal(await readFile(projectAgentsMd, 'utf-8'), projectContent);
282
+ });
142
283
  });
143
284
  describe('hasOverlay', () => {
144
285
  it('returns true when both markers present', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"agents-overlay.test.js","sourceRoot":"","sources":["../../../src/hooks/__tests__/agents-overlay.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agents-overlay.test.js","sourceRoot":"","sources":["../../../src/hooks/__tests__/agents-overlay.test.ts"],"names":[],"mappings":"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"}
@@ -31,4 +31,14 @@ export declare function stripOverlay(agentsMdPath: string, cwd?: string): Promis
31
31
  * Check if AGENTS.md currently has an overlay applied.
32
32
  */
33
33
  export declare function hasOverlay(content: string): boolean;
34
+ export declare function sessionModelInstructionsPath(cwd: string, sessionId: string): string;
35
+ /**
36
+ * Build a session-scoped AGENTS.md that combines project instructions (if any)
37
+ * and the runtime overlay, without mutating <cwd>/AGENTS.md.
38
+ */
39
+ export declare function writeSessionModelInstructionsFile(cwd: string, sessionId: string, overlay: string): Promise<string>;
40
+ /**
41
+ * Best-effort cleanup for session-scoped model instructions file.
42
+ */
43
+ export declare function removeSessionModelInstructionsFile(cwd: string, sessionId: string): Promise<void>;
34
44
  //# sourceMappingURL=agents-overlay.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agents-overlay.d.ts","sourceRoot":"","sources":["../../src/hooks/agents-overlay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AA2JH;;;GAGG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA0CtF;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBrG;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAYpF;AA+BD;;GAEG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEnD"}
1
+ {"version":3,"file":"agents-overlay.d.ts","sourceRoot":"","sources":["../../src/hooks/agents-overlay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AA8LH;;;GAGG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAiEtF;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBrG;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAYpF;AAkDD;;GAEG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAEnF;AAED;;;GAGG;AACH,wBAAsB,iCAAiC,CACrD,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC,CAiBjB;AAED;;GAEG;AACH,wBAAsB,kCAAkC,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGtG"}
@@ -13,12 +13,14 @@
13
13
  * - Session metadata
14
14
  */
15
15
  import { readFile, writeFile, mkdir, rm } from 'fs/promises';
16
- import { join } from 'path';
16
+ import { dirname, join } from 'path';
17
17
  import { existsSync } from 'fs';
18
18
  import { omxNotepadPath, omxProjectMemoryPath } from '../utils/paths.js';
19
19
  import { getBaseStateDir, getStateDir } from '../mcp/state-paths.js';
20
20
  const START_MARKER = '<!-- OMX:RUNTIME:START -->';
21
21
  const END_MARKER = '<!-- OMX:RUNTIME:END -->';
22
+ const WORKER_START_MARKER = '<!-- OMX:TEAM:WORKER:START -->';
23
+ const WORKER_END_MARKER = '<!-- OMX:TEAM:WORKER:END -->';
22
24
  const MAX_OVERLAY_SIZE = 2000;
23
25
  // ── Lock helpers ─────────────────────────────────────────────────────────────
24
26
  function lockPath(cwd) {
@@ -80,6 +82,30 @@ function truncate(text, maxLen) {
80
82
  return text;
81
83
  return text.slice(0, maxLen - 3) + '...';
82
84
  }
85
+ function joinSections(sections) {
86
+ return sections.map(s => s.text).join('\n\n');
87
+ }
88
+ function capBodyToMax(sections, maxBody) {
89
+ // Deterministic overflow policy (lowest priority removed first):
90
+ // 1) Drop optional sections from the end until it fits.
91
+ // 2) If still too large, hard-truncate the final section with ellipsis.
92
+ let current = sections.slice();
93
+ let body = joinSections(current);
94
+ while (body.length > maxBody) {
95
+ const lastOptionalIdx = [...current].reverse().findIndex(s => s.optional);
96
+ if (lastOptionalIdx < 0)
97
+ break;
98
+ const idx = current.length - 1 - lastOptionalIdx;
99
+ current.splice(idx, 1);
100
+ body = joinSections(current);
101
+ }
102
+ if (body.length > maxBody) {
103
+ if (maxBody <= 3)
104
+ return '.'.repeat(Math.max(0, maxBody));
105
+ body = body.slice(0, maxBody - 3) + '...';
106
+ }
107
+ return body;
108
+ }
83
109
  async function readActiveModes(cwd, sessionId) {
84
110
  const { readdir } = await import('fs/promises');
85
111
  const scopedDirs = [getBaseStateDir(cwd), ...(sessionId ? [getStateDir(cwd, sessionId)] : [])];
@@ -171,34 +197,54 @@ export async function generateOverlay(cwd, sessionId) {
171
197
  readNotepadPriority(cwd),
172
198
  readProjectMemorySummary(cwd),
173
199
  ]);
174
- // Build sections with priority-ordered truncation
200
+ // Build sections with deterministic overflow behavior.
175
201
  const sections = [];
176
- // Session metadata (max 200 chars)
202
+ // Session metadata (max 200 chars) - required
177
203
  const sessionMeta = `**Session:** ${sessionId || 'unknown'} | ${new Date().toISOString()}`;
178
- sections.push(truncate(sessionMeta, 200));
179
- // Active modes (max 300 chars)
204
+ sections.push({ key: 'session', text: truncate(sessionMeta, 200), optional: false });
205
+ // Active modes (max 300 chars) - optional
180
206
  if (activeModes) {
181
- sections.push(`**Active Modes:**\n${truncate(activeModes, 280)}`);
207
+ sections.push({
208
+ key: 'active_modes',
209
+ text: `**Active Modes:**\n${truncate(activeModes, 600)}`,
210
+ optional: true,
211
+ });
182
212
  }
183
- // Priority notepad (max 300 chars)
213
+ // Priority notepad (max 300 chars) - optional
184
214
  if (notepadPriority) {
185
- sections.push(`**Priority Notes:**\n${truncate(notepadPriority, 280)}`);
215
+ sections.push({
216
+ key: 'priority_notes',
217
+ text: `**Priority Notes:**\n${truncate(notepadPriority, 600)}`,
218
+ optional: true,
219
+ });
186
220
  }
187
- // Project memory (max 500 chars)
221
+ // Project memory (max 500 chars) - optional
188
222
  if (projectMemory) {
189
- sections.push(`**Project Context:**\n${truncate(projectMemory, 480)}`);
223
+ sections.push({
224
+ key: 'project_context',
225
+ text: `**Project Context:**\n${truncate(projectMemory, 1000)}`,
226
+ optional: true,
227
+ });
190
228
  }
191
- // Compaction protocol (max 400 chars)
192
- sections.push(`**Compaction Protocol:**\n${truncate(getCompactionInstructions(), 380)}`);
193
- // Compose final overlay
194
- let body = sections.join('\n\n');
195
- // Ensure total fits within cap (markers + body)
196
- const markerOverhead = START_MARKER.length + END_MARKER.length + 30; // newlines
197
- const maxBody = MAX_OVERLAY_SIZE - markerOverhead;
198
- if (body.length > maxBody) {
199
- body = body.slice(0, maxBody - 3) + '...';
200
- }
201
- return `${START_MARKER}\n<session_context>\n${body}\n</session_context>\n${END_MARKER}`;
229
+ // Compaction protocol (max 400 chars) - required
230
+ sections.push({
231
+ key: 'compaction',
232
+ text: `**Compaction Protocol:**\n${truncate(getCompactionInstructions(), 380)}`,
233
+ optional: false,
234
+ });
235
+ const prefix = `${START_MARKER}\n<session_context>\n`;
236
+ const suffix = `\n</session_context>\n${END_MARKER}`;
237
+ const maxBody = Math.max(0, MAX_OVERLAY_SIZE - prefix.length - suffix.length);
238
+ const body = capBodyToMax(sections, maxBody);
239
+ const overlay = `${prefix}${body}${suffix}`;
240
+ // Belt-and-suspenders: never exceed cap even if assumptions drift.
241
+ if (overlay.length <= MAX_OVERLAY_SIZE)
242
+ return overlay;
243
+ const safeBody = capBodyToMax([
244
+ { key: 'session', text: truncate(sessionMeta, 200), optional: false },
245
+ { key: 'compaction', text: `**Compaction Protocol:**\n${truncate(getCompactionInstructions(), 380)}`, optional: false },
246
+ ], maxBody);
247
+ return `${prefix}${safeBody}${suffix}`.slice(0, MAX_OVERLAY_SIZE);
202
248
  }
203
249
  /**
204
250
  * Apply overlay to AGENTS.md. Strips any existing overlay first (idempotent).
@@ -241,16 +287,32 @@ function stripOverlayContent(content) {
241
287
  // Strip all marker-bounded segments (handles multiple overlays from corruption)
242
288
  let result = content;
243
289
  let iterations = 0;
244
- const MAX_STRIP_ITERATIONS = 5; // Safety bound
290
+ const MAX_STRIP_ITERATIONS = 50; // Safety bound (enough to clean up corrupt duplicates)
245
291
  while (iterations < MAX_STRIP_ITERATIONS) {
246
292
  const startIdx = result.indexOf(START_MARKER);
247
293
  if (startIdx < 0)
248
294
  break;
249
295
  const endIdx = result.indexOf(END_MARKER, startIdx);
250
296
  if (endIdx < 0) {
251
- // Malformed: remove from start marker to end of file
252
- result = result.slice(0, startIdx).trimEnd() + '\n';
253
- break;
297
+ // Malformed runtime marker block. Remove only until the next known marker
298
+ // so unrelated overlays (e.g. worker overlay) are preserved.
299
+ const markerCandidates = [
300
+ result.indexOf(START_MARKER, startIdx + START_MARKER.length),
301
+ result.indexOf(WORKER_START_MARKER, startIdx + START_MARKER.length),
302
+ result.indexOf(WORKER_END_MARKER, startIdx + START_MARKER.length),
303
+ ].filter(i => i >= 0);
304
+ const nextMarkerIdx = markerCandidates.length > 0
305
+ ? Math.min(...markerCandidates)
306
+ : -1;
307
+ if (nextMarkerIdx < 0) {
308
+ result = result.slice(0, startIdx).trimEnd() + '\n';
309
+ break;
310
+ }
311
+ const before = result.slice(0, startIdx).trimEnd();
312
+ const after = result.slice(nextMarkerIdx).trimStart();
313
+ result = after ? before + '\n' + after : before + '\n';
314
+ iterations++;
315
+ continue;
254
316
  }
255
317
  const before = result.slice(0, startIdx).trimEnd();
256
318
  const after = result.slice(endIdx + END_MARKER.length).trimStart();
@@ -265,4 +327,33 @@ function stripOverlayContent(content) {
265
327
  export function hasOverlay(content) {
266
328
  return content.includes(START_MARKER) && content.includes(END_MARKER);
267
329
  }
330
+ export function sessionModelInstructionsPath(cwd, sessionId) {
331
+ return join(getStateDir(cwd, sessionId), 'AGENTS.md');
332
+ }
333
+ /**
334
+ * Build a session-scoped AGENTS.md that combines project instructions (if any)
335
+ * and the runtime overlay, without mutating <cwd>/AGENTS.md.
336
+ */
337
+ export async function writeSessionModelInstructionsFile(cwd, sessionId, overlay) {
338
+ const sessionPath = sessionModelInstructionsPath(cwd, sessionId);
339
+ await mkdir(dirname(sessionPath), { recursive: true });
340
+ const projectAgentsPath = join(cwd, 'AGENTS.md');
341
+ let base = '';
342
+ if (existsSync(projectAgentsPath)) {
343
+ base = await readFile(projectAgentsPath, 'utf-8');
344
+ base = stripOverlayContent(base);
345
+ }
346
+ const composed = base.trim().length > 0
347
+ ? `${base.trimEnd()}\n\n${overlay}\n`
348
+ : `${overlay}\n`;
349
+ await writeFile(sessionPath, composed);
350
+ return sessionPath;
351
+ }
352
+ /**
353
+ * Best-effort cleanup for session-scoped model instructions file.
354
+ */
355
+ export async function removeSessionModelInstructionsFile(cwd, sessionId) {
356
+ const sessionPath = sessionModelInstructionsPath(cwd, sessionId);
357
+ await rm(sessionPath, { force: true });
358
+ }
268
359
  //# sourceMappingURL=agents-overlay.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agents-overlay.js","sourceRoot":"","sources":["../../src/hooks/agents-overlay.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agents-overlay.js","sourceRoot":"","sources":["../../src/hooks/agents-overlay.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Tests for shell command injection hardening in the tmux HUD launcher.
3
+ *
4
+ * The first describe block reproduces the vulnerability that existed when
5
+ * launchTmuxPane() built a command string via template-literal interpolation
6
+ * and passed it to execSync(). The second block verifies the hardened
7
+ * buildTmuxSplitArgs() + shellEscape() approach is safe.
8
+ */
9
+ export {};
10
+ //# sourceMappingURL=hud-tmux-injection.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hud-tmux-injection.test.d.ts","sourceRoot":"","sources":["../../../src/hud/__tests__/hud-tmux-injection.test.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}