oh-my-codex 0.8.7 → 0.8.9

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 (65) hide show
  1. package/README.md +3 -1
  2. package/dist/catalog/__tests__/generator.test.js +1 -0
  3. package/dist/catalog/__tests__/generator.test.js.map +1 -1
  4. package/dist/catalog/__tests__/schema.test.js +6 -0
  5. package/dist/catalog/__tests__/schema.test.js.map +1 -1
  6. package/dist/cli/__tests__/package-bin-contract.test.js +1 -1
  7. package/dist/cli/__tests__/package-bin-contract.test.js.map +1 -1
  8. package/dist/hooks/__tests__/anti-slop-workflow.test.d.ts +2 -0
  9. package/dist/hooks/__tests__/anti-slop-workflow.test.d.ts.map +1 -0
  10. package/dist/hooks/__tests__/anti-slop-workflow.test.js +52 -0
  11. package/dist/hooks/__tests__/anti-slop-workflow.test.js.map +1 -0
  12. package/dist/hooks/__tests__/keyword-detector.test.js +47 -1
  13. package/dist/hooks/__tests__/keyword-detector.test.js.map +1 -1
  14. package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js +160 -75
  15. package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js.map +1 -1
  16. package/dist/hooks/__tests__/notify-hook-modules.test.js +43 -0
  17. package/dist/hooks/__tests__/notify-hook-modules.test.js.map +1 -1
  18. package/dist/hooks/__tests__/prompt-team-routing.test.d.ts +2 -0
  19. package/dist/hooks/__tests__/prompt-team-routing.test.d.ts.map +1 -0
  20. package/dist/hooks/__tests__/prompt-team-routing.test.js +15 -0
  21. package/dist/hooks/__tests__/prompt-team-routing.test.js.map +1 -0
  22. package/dist/hooks/keyword-detector.d.ts +12 -0
  23. package/dist/hooks/keyword-detector.d.ts.map +1 -1
  24. package/dist/hooks/keyword-detector.js +51 -0
  25. package/dist/hooks/keyword-detector.js.map +1 -1
  26. package/dist/hooks/prompt-guidance-contract.d.ts.map +1 -1
  27. package/dist/hooks/prompt-guidance-contract.js +2 -0
  28. package/dist/hooks/prompt-guidance-contract.js.map +1 -1
  29. package/dist/team/__tests__/model-contract.test.js +18 -4
  30. package/dist/team/__tests__/model-contract.test.js.map +1 -1
  31. package/dist/team/__tests__/runtime.test.js +143 -0
  32. package/dist/team/__tests__/runtime.test.js.map +1 -1
  33. package/dist/team/__tests__/scaling.test.js +83 -2
  34. package/dist/team/__tests__/scaling.test.js.map +1 -1
  35. package/dist/team/__tests__/tmux-session.test.js +47 -0
  36. package/dist/team/__tests__/tmux-session.test.js.map +1 -1
  37. package/dist/team/__tests__/worker-bootstrap.test.js +17 -1
  38. package/dist/team/__tests__/worker-bootstrap.test.js.map +1 -1
  39. package/dist/team/model-contract.d.ts +4 -1
  40. package/dist/team/model-contract.d.ts.map +1 -1
  41. package/dist/team/model-contract.js +23 -4
  42. package/dist/team/model-contract.js.map +1 -1
  43. package/dist/team/runtime.d.ts +4 -2
  44. package/dist/team/runtime.d.ts.map +1 -1
  45. package/dist/team/runtime.js +32 -12
  46. package/dist/team/runtime.js.map +1 -1
  47. package/dist/team/scaling.d.ts.map +1 -1
  48. package/dist/team/scaling.js +48 -32
  49. package/dist/team/scaling.js.map +1 -1
  50. package/dist/team/tmux-session.d.ts +2 -0
  51. package/dist/team/tmux-session.d.ts.map +1 -1
  52. package/dist/team/tmux-session.js +9 -4
  53. package/dist/team/tmux-session.js.map +1 -1
  54. package/dist/team/worker-bootstrap.d.ts +5 -0
  55. package/dist/team/worker-bootstrap.d.ts.map +1 -1
  56. package/dist/team/worker-bootstrap.js +25 -0
  57. package/dist/team/worker-bootstrap.js.map +1 -1
  58. package/package.json +2 -2
  59. package/scripts/notify-hook/auto-nudge.js +185 -75
  60. package/skills/ai-slop-cleaner/SKILL.md +107 -0
  61. package/skills/plan/SKILL.md +4 -1
  62. package/skills/review/SKILL.md +14 -6
  63. package/skills/team/SKILL.md +3 -3
  64. package/templates/AGENTS.md +24 -0
  65. package/templates/catalog-manifest.json +7 -0
@@ -1 +1 @@
1
- {"version":3,"file":"keyword-detector.d.ts","sourceRoot":"","sources":["../../src/hooks/keyword-detector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,EAAiC,KAAK,cAAc,EAA2B,MAAM,yBAAyB,CAAC;AAGtH,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,YAAY,CAAC;AAErF,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,CAAC,CAAC;IACX,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,gBAAgB,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,uBAAuB,4BAA4B,CAAC;AAqFjE;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,EAAE,CA4B3D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAGtE;AAED,wBAAsB,qBAAqB,CAAC,KAAK,EAAE,0BAA0B,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CA+B/G;AAED;;;;;;GAMG;AAEH;;;GAGG;AACH,eAAO,MAAM,uBAAuB,aAKlC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB,UAAkB,CAAC;AAEpD;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,MAAM,EA6B1C,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAsBlE;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAAE,EAClB,IAAI,EAAE,MAAM,GACX;IAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAAC,WAAW,EAAE,OAAO,CAAC;IAAC,aAAa,EAAE,MAAM,EAAE,CAAA;CAAE,CAiCvE;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,gDAAgD;IAChD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wDAAwD;IACxD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yDAAyD;IACzD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,0DAA0D;IAC1D,+BAA+B,CAAC,EAAE,OAAO,CAAC;CAC3C;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,qBAA0B,GAClC;IAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAAC,cAAc,EAAE,cAAc,GAAG,IAAI,CAAC;IAAC,kBAAkB,EAAE,MAAM,EAAE,CAAA;CAAE,CAoC7F"}
1
+ {"version":3,"file":"keyword-detector.d.ts","sourceRoot":"","sources":["../../src/hooks/keyword-detector.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,27 @@ import { join } from 'node:path';
15
15
  import { classifyTaskSize, isHeavyMode } from './task-size-detector.js';
16
16
  import { KEYWORD_TRIGGER_DEFINITIONS, compareKeywordMatches } from './keyword-registry.js';
17
17
  export const SKILL_ACTIVE_STATE_FILE = 'skill-active-state.json';
18
+ export const DEEP_INTERVIEW_BLOCKED_APPROVAL_INPUTS = ['yes', 'y', 'proceed', 'continue', 'ok', 'sure', 'go ahead'];
19
+ export const DEEP_INTERVIEW_INPUT_LOCK_MESSAGE = 'Deep interview is active; auto-approval shortcuts are blocked until the interview finishes.';
20
+ function createDeepInterviewInputLock(nowIso, previous) {
21
+ return {
22
+ active: true,
23
+ scope: 'deep-interview-auto-approval',
24
+ acquired_at: previous?.active ? previous.acquired_at : nowIso,
25
+ blocked_inputs: [...DEEP_INTERVIEW_BLOCKED_APPROVAL_INPUTS],
26
+ message: DEEP_INTERVIEW_INPUT_LOCK_MESSAGE,
27
+ };
28
+ }
29
+ function releaseDeepInterviewInputLock(previous, nowIso, reason = 'handoff') {
30
+ if (!previous)
31
+ return undefined;
32
+ return {
33
+ ...previous,
34
+ active: false,
35
+ released_at: nowIso,
36
+ exit_reason: reason,
37
+ };
38
+ }
18
39
  async function readExistingSkillState(statePath) {
19
40
  try {
20
41
  const raw = await readFile(statePath, 'utf-8');
@@ -135,8 +156,37 @@ export async function recordSkillActivation(input) {
135
156
  const nowIso = input.nowIso ?? new Date().toISOString();
136
157
  const statePath = join(input.stateDir, SKILL_ACTIVE_STATE_FILE);
137
158
  const previous = await readExistingSkillState(statePath);
159
+ const hadDeepInterviewLock = previous?.skill === 'deep-interview' && previous?.input_lock?.active === true;
160
+ const matches = detectKeywords(input.text);
161
+ const hasCancelIntent = matches.some((entry) => entry.skill === 'cancel');
162
+ if (hasCancelIntent && hadDeepInterviewLock) {
163
+ const state = {
164
+ version: 1,
165
+ active: false,
166
+ skill: 'deep-interview',
167
+ keyword: previous?.keyword || 'deep interview',
168
+ phase: 'completing',
169
+ activated_at: previous?.activated_at || nowIso,
170
+ updated_at: nowIso,
171
+ source: 'keyword-detector',
172
+ session_id: input.sessionId ?? previous?.session_id,
173
+ thread_id: input.threadId ?? previous?.thread_id,
174
+ turn_id: input.turnId ?? previous?.turn_id,
175
+ ...(previous?.input_lock ? { input_lock: releaseDeepInterviewInputLock(previous.input_lock, nowIso, 'abort') } : {}),
176
+ };
177
+ try {
178
+ await writeFile(statePath, JSON.stringify(state, null, 2));
179
+ }
180
+ catch (error) {
181
+ console.warn('[omx] warning: failed to persist keyword activation state', error);
182
+ }
183
+ return state;
184
+ }
138
185
  const sameSkill = previous?.active === true && previous.skill === match.skill;
139
186
  const sameKeyword = previous?.keyword?.toLowerCase() === match.keyword.toLowerCase();
187
+ const deepInterviewInputLock = match.skill === 'deep-interview'
188
+ ? createDeepInterviewInputLock(nowIso, previous?.input_lock)
189
+ : releaseDeepInterviewInputLock(previous?.input_lock, nowIso);
140
190
  const state = {
141
191
  version: 1,
142
192
  active: true,
@@ -149,6 +199,7 @@ export async function recordSkillActivation(input) {
149
199
  session_id: input.sessionId,
150
200
  thread_id: input.threadId,
151
201
  turn_id: input.turnId,
202
+ ...(deepInterviewInputLock ? { input_lock: deepInterviewInputLock } : {}),
152
203
  };
153
204
  try {
154
205
  await writeFile(statePath, JSON.stringify(state, null, 2));
@@ -1 +1 @@
1
- {"version":3,"file":"keyword-detector.js","sourceRoot":"","sources":["../../src/hooks/keyword-detector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keyword-detector.js","sourceRoot":"","sources":["../../src/hooks/keyword-detector.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-guidance-contract.d.ts","sourceRoot":"","sources":["../../src/hooks/prompt-guidance-contract.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC5B;AAkDD,eAAO,MAAM,uBAAuB,EAAE,uBAAuB,EAG5D,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,uBAAuB,EAIxD,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,uBAAuB,EA+B5D,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,uBAAuB,EAcrD,CAAC;AAEJ,eAAO,MAAM,iBAAiB,EAAE,uBAAuB,EAqBpD,CAAC;AAEJ,eAAO,MAAM,uBAAuB,EAAE,uBAAuB,EAU5D,CAAC;AAEF,eAAO,MAAM,4BAA4B,EAAE,uBAAuB,EAWjE,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,uBAAuB,EAelD,CAAC"}
1
+ {"version":3,"file":"prompt-guidance-contract.d.ts","sourceRoot":"","sources":["../../src/hooks/prompt-guidance-contract.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC5B;AAoDD,eAAO,MAAM,uBAAuB,EAAE,uBAAuB,EAG5D,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,uBAAuB,EAIxD,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,uBAAuB,EA+B5D,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,uBAAuB,EAcrD,CAAC;AAEJ,eAAO,MAAM,iBAAiB,EAAE,uBAAuB,EAqBpD,CAAC;AAEJ,eAAO,MAAM,uBAAuB,EAAE,uBAAuB,EAU5D,CAAC;AAEF,eAAO,MAAM,4BAA4B,EAAE,uBAAuB,EAWjE,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,uBAAuB,EAelD,CAAC"}
@@ -5,6 +5,8 @@ const ROOT_TEMPLATE_PATTERNS = [
5
5
  rx('compact, information-dense responses'),
6
6
  rx('clear, low-risk, reversible next steps'),
7
7
  rx('local overrides?.*non-conflicting instructions'),
8
+ rx('Outside active `team`/`swarm` mode, use `executor`'),
9
+ rx('Reserve `worker` strictly for active `team`/`swarm` sessions'),
8
10
  rx('do not skip prerequisites|task is grounded and verified'),
9
11
  rx('concise evidence summaries'),
10
12
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-guidance-contract.js","sourceRoot":"","sources":["../../src/hooks/prompt-guidance-contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt-guidance-contract.js","sourceRoot":"","sources":["../../src/hooks/prompt-guidance-contract.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { describe, it } from 'node:test';
2
2
  import assert from 'node:assert/strict';
3
- import { collectInheritableTeamWorkerArgs, isLowComplexityAgentType, resolveTeamWorkerLaunchArgs, resolveTeamLowComplexityDefaultModel, } from '../model-contract.js';
3
+ import { collectInheritableTeamWorkerArgs, isLowComplexityAgentType, resolveAgentReasoningEffort, resolveTeamWorkerLaunchArgs, resolveTeamLowComplexityDefaultModel, } from '../model-contract.js';
4
4
  function expectedLowComplexityModel() {
5
5
  return resolveTeamLowComplexityDefaultModel();
6
6
  }
@@ -65,19 +65,33 @@ describe('team model contract', () => {
65
65
  assert.equal(isLowComplexityAgentType('executor'), false);
66
66
  assert.equal(isLowComplexityAgentType('executor-low'), true);
67
67
  });
68
+ it('maps worker roles to default reasoning effort tiers', () => {
69
+ assert.equal(resolveAgentReasoningEffort('explore'), 'low');
70
+ assert.equal(resolveAgentReasoningEffort('executor'), 'medium');
71
+ assert.equal(resolveAgentReasoningEffort('architect'), 'high');
72
+ assert.equal(resolveAgentReasoningEffort('does-not-exist'), undefined);
73
+ });
68
74
  });
69
- describe('resolveTeamWorkerLaunchArgs - explicit thinking only', () => {
70
- it('does not auto-inject thinking level for fallback model', () => {
75
+ describe('resolveTeamWorkerLaunchArgs - teammate reasoning allocation', () => {
76
+ it('injects preferred reasoning when explicit reasoning is absent', () => {
77
+ const result = resolveTeamWorkerLaunchArgs({
78
+ fallbackModel: expectedLowComplexityModel(),
79
+ preferredReasoning: 'low',
80
+ });
81
+ assert.deepEqual(result, ['-c', 'model_reasoning_effort="low"', '--model', expectedLowComplexityModel()]);
82
+ });
83
+ it('does not auto-inject thinking level for fallback model when no preference is provided', () => {
71
84
  const result = resolveTeamWorkerLaunchArgs({
72
85
  fallbackModel: expectedLowComplexityModel(),
73
86
  });
74
87
  const joined = result.join(' ');
75
88
  assert.ok(!joined.includes('model_reasoning_effort'), `Expected no auto-injected thinking level in: ${joined}`);
76
89
  });
77
- it('preserves explicit reasoning override', () => {
90
+ it('preserves explicit reasoning override over teammate preference', () => {
78
91
  const result = resolveTeamWorkerLaunchArgs({
79
92
  existingRaw: '-c model_reasoning_effort="high"',
80
93
  fallbackModel: expectedLowComplexityModel(),
94
+ preferredReasoning: 'low',
81
95
  });
82
96
  const joined = result.join(' ');
83
97
  // Should contain the explicit high level
@@ -1 +1 @@
1
- {"version":3,"file":"model-contract.test.js","sourceRoot":"","sources":["../../../src/team/__tests__/model-contract.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-contract.test.js","sourceRoot":"","sources":["../../../src/team/__tests__/model-contract.test.ts"],"names":[],"mappings":"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"}
@@ -80,6 +80,22 @@ describe('runtime', () => {
80
80
  it('resolveWorkerLaunchArgsFromEnv prefers explicit env model over inherited leader model', () => {
81
81
  assert.deepEqual(resolveWorkerLaunchArgsFromEnv({ OMX_TEAM_WORKER_LAUNCH_ARGS: '--model gpt-5' }, 'explore', 'gpt-4.1'), ['--model', 'gpt-5']);
82
82
  });
83
+ it('resolveWorkerLaunchArgsFromEnv injects teammate reasoning and logs source=role-default', () => {
84
+ const logs = [];
85
+ const originalLog = console.log;
86
+ console.log = (...args) => { logs.push(args.join(' ')); };
87
+ try {
88
+ const lowArgs = resolveWorkerLaunchArgsFromEnv({ OMX_TEAM_WORKER_LAUNCH_ARGS: '--no-alt-screen' }, 'executor', undefined, 'low', 'codex');
89
+ const highArgs = resolveWorkerLaunchArgsFromEnv({ OMX_TEAM_WORKER_LAUNCH_ARGS: '--no-alt-screen' }, 'executor', undefined, 'high', 'codex');
90
+ assert.deepEqual(lowArgs, ['--no-alt-screen', '-c', 'model_reasoning_effort="low"']);
91
+ assert.deepEqual(highArgs, ['--no-alt-screen', '-c', 'model_reasoning_effort="high"']);
92
+ }
93
+ finally {
94
+ console.log = originalLog;
95
+ }
96
+ assert.ok(logs.some((line) => line.includes('thinking_level=low') && line.includes('source=role-default')));
97
+ assert.ok(logs.some((line) => line.includes('thinking_level=high') && line.includes('source=role-default')));
98
+ });
83
99
  it('resolveWorkerLaunchArgsFromEnv preserves explicit reasoning and logs source=explicit', () => {
84
100
  const logs = [];
85
101
  const originalLog = console.log;
@@ -149,6 +165,30 @@ describe('runtime', () => {
149
165
  }
150
166
  assert.ok(logs.some((line) => line.includes('thinking_level=high') && line.includes('source=explicit')));
151
167
  });
168
+ it('resolveWorkerLaunchArgsFromEnv keeps claude and gemini startup logs free of thinking_level during teammate allocation', () => {
169
+ const logs = [];
170
+ const originalLog = console.log;
171
+ console.log = (...args) => { logs.push(args.join(' ')); };
172
+ try {
173
+ const codexArgs = resolveWorkerLaunchArgsFromEnv({ OMX_TEAM_WORKER_LAUNCH_ARGS: '--no-alt-screen' }, 'executor', undefined, 'high', 'codex');
174
+ const claudeArgs = resolveWorkerLaunchArgsFromEnv({ OMX_TEAM_WORKER_LAUNCH_ARGS: '--no-alt-screen --model claude-3-7-sonnet' }, 'executor', undefined, 'low', 'claude');
175
+ const geminiArgs = resolveWorkerLaunchArgsFromEnv({ OMX_TEAM_WORKER_LAUNCH_ARGS: '--model gemini-2.0-pro' }, 'executor', undefined, 'low', 'gemini');
176
+ assert.deepEqual(codexArgs, ['--no-alt-screen', '-c', 'model_reasoning_effort="high"']);
177
+ assert.deepEqual(claudeArgs, ['--no-alt-screen', '-c', 'model_reasoning_effort="low"', '--model', 'claude-3-7-sonnet']);
178
+ assert.deepEqual(geminiArgs, ['-c', 'model_reasoning_effort="low"', '--model', 'gemini-2.0-pro']);
179
+ }
180
+ finally {
181
+ console.log = originalLog;
182
+ }
183
+ const codexLog = logs.find((line) => line.includes('thinking_level=high'));
184
+ const claudeLog = logs.find((line) => line.includes('model=claude'));
185
+ const geminiLog = logs.find((line) => line.includes('model=gemini'));
186
+ assert.ok(codexLog);
187
+ assert.ok(claudeLog);
188
+ assert.ok(geminiLog);
189
+ assert.doesNotMatch(claudeLog ?? '', /thinking_level=/);
190
+ assert.doesNotMatch(geminiLog ?? '', /thinking_level=/);
191
+ });
152
192
  it('resolveWorkerLaunchArgsFromEnv logs source=none/default-none when thinking is not explicit', () => {
153
193
  const logs = [];
154
194
  const originalLog = console.log;
@@ -262,6 +302,109 @@ sleep 5
262
302
  await rm(cwd, { recursive: true, force: true });
263
303
  }
264
304
  });
305
+ it('startTeam preserves routed task roles into team state and worker launch args', async () => {
306
+ const cwd = await mkdtemp(join(tmpdir(), 'omx-runtime-role-routing-'));
307
+ const binDir = join(cwd, 'bin');
308
+ const fakeCodexPath = join(binDir, 'codex');
309
+ const captureDir = join(cwd, 'captures');
310
+ const promptsDir = join(cwd, '.codex', 'prompts');
311
+ await mkdir(binDir, { recursive: true });
312
+ await mkdir(captureDir, { recursive: true });
313
+ await mkdir(promptsDir, { recursive: true });
314
+ await writeFile(join(promptsDir, 'test-engineer.md'), '<identity>Test Engineer</identity>');
315
+ await writeFile(join(promptsDir, 'writer.md'), '<identity>You are Writer.</identity>');
316
+ await writeFile(fakeCodexPath, `#!/usr/bin/env node
317
+ const fs = require('fs');
318
+ const path = require('path');
319
+ const worker = String(process.env.OMX_TEAM_WORKER || 'unknown').replace(/[^a-zA-Z0-9_-]+/g, '__');
320
+ const out = path.join(process.env.OMX_ARGV_CAPTURE_DIR, worker + '.json');
321
+ fs.writeFileSync(out, JSON.stringify({ argv: process.argv.slice(2), worker }, null, 2));
322
+ process.stdin.resume();
323
+ setTimeout(() => process.exit(0), 5000);
324
+ process.on('SIGTERM', () => process.exit(0));
325
+ `, { mode: 0o755 });
326
+ const prevPath = process.env.PATH;
327
+ const prevTmux = process.env.TMUX;
328
+ const prevLaunchMode = process.env.OMX_TEAM_WORKER_LAUNCH_MODE;
329
+ const prevWorkerCli = process.env.OMX_TEAM_WORKER_CLI;
330
+ const prevCaptureDir = process.env.OMX_ARGV_CAPTURE_DIR;
331
+ process.env.PATH = `${binDir}:${prevPath ?? ''}`;
332
+ delete process.env.TMUX;
333
+ process.env.OMX_TEAM_WORKER_LAUNCH_MODE = 'prompt';
334
+ process.env.OMX_TEAM_WORKER_CLI = 'codex';
335
+ process.env.OMX_ARGV_CAPTURE_DIR = captureDir;
336
+ let runtime = null;
337
+ try {
338
+ runtime = await withoutTeamWorkerEnv(() => startTeam('team-role-routing', 'heuristic routing handoff', 'executor', 2, [
339
+ { subject: 'test routing report only', description: 'test routing report only', owner: 'worker-1', role: 'test-engineer' },
340
+ { subject: 'document routing report only', description: 'document routing report only', owner: 'worker-2', role: 'writer' },
341
+ ], cwd));
342
+ assert.equal(runtime.config.worker_launch_mode, 'prompt');
343
+ assert.equal(runtime.config.workers[0]?.role, 'test-engineer');
344
+ assert.equal(runtime.config.workers[1]?.role, 'writer');
345
+ const config = await readTeamConfig(runtime.teamName, cwd);
346
+ assert.equal(config?.workers[0]?.role, 'test-engineer');
347
+ assert.equal(config?.workers[1]?.role, 'writer');
348
+ const task1 = await readTask(runtime.teamName, '1', cwd);
349
+ const task2 = await readTask(runtime.teamName, '2', cwd);
350
+ assert.equal(task1?.role, 'test-engineer');
351
+ assert.equal(task2?.role, 'writer');
352
+ const worker1Instructions = await readFile(join(cwd, '.omx', 'state', 'team', runtime.teamName, 'workers', 'worker-1', 'AGENTS.md'), 'utf-8');
353
+ const worker2Instructions = await readFile(join(cwd, '.omx', 'state', 'team', runtime.teamName, 'workers', 'worker-2', 'AGENTS.md'), 'utf-8');
354
+ assert.match(worker1Instructions, /You are operating as the \*\*test-engineer\*\* role/);
355
+ assert.match(worker1Instructions, /Test Engineer/);
356
+ assert.match(worker2Instructions, /You are operating as the \*\*writer\*\* role/);
357
+ assert.match(worker2Instructions, /You are Writer\./);
358
+ let worker1Args = null;
359
+ let worker2Args = null;
360
+ for (let attempt = 0; attempt < 50; attempt += 1) {
361
+ const worker1Path = join(captureDir, 'team-role-routing__worker-1.json');
362
+ const worker2Path = join(captureDir, 'team-role-routing__worker-2.json');
363
+ if (existsSync(worker1Path) && existsSync(worker2Path)) {
364
+ worker1Args = JSON.parse(await readFile(worker1Path, 'utf-8')).argv;
365
+ worker2Args = JSON.parse(await readFile(worker2Path, 'utf-8')).argv;
366
+ break;
367
+ }
368
+ await new Promise((resolve) => setTimeout(resolve, 100));
369
+ }
370
+ assert.ok(worker1Args, 'worker-1 argv capture file should be written');
371
+ assert.ok(worker2Args, 'worker-2 argv capture file should be written');
372
+ const worker1Joined = worker1Args.join(' ');
373
+ const worker2Joined = worker2Args.join(' ');
374
+ assert.match(worker1Joined, /model_reasoning_effort="medium"/);
375
+ assert.match(worker1Joined, /model_instructions_file=.*worker-1\/AGENTS\.md/);
376
+ assert.match(worker2Joined, /model_reasoning_effort="low"/);
377
+ assert.match(worker2Joined, /model_instructions_file=.*worker-2\/AGENTS\.md/);
378
+ await shutdownTeam(runtime.teamName, cwd, { force: true });
379
+ runtime = null;
380
+ }
381
+ finally {
382
+ if (runtime) {
383
+ await shutdownTeam(runtime.teamName, cwd, { force: true }).catch(() => { });
384
+ }
385
+ if (typeof prevPath === 'string')
386
+ process.env.PATH = prevPath;
387
+ else
388
+ delete process.env.PATH;
389
+ if (typeof prevTmux === 'string')
390
+ process.env.TMUX = prevTmux;
391
+ else
392
+ delete process.env.TMUX;
393
+ if (typeof prevLaunchMode === 'string')
394
+ process.env.OMX_TEAM_WORKER_LAUNCH_MODE = prevLaunchMode;
395
+ else
396
+ delete process.env.OMX_TEAM_WORKER_LAUNCH_MODE;
397
+ if (typeof prevWorkerCli === 'string')
398
+ process.env.OMX_TEAM_WORKER_CLI = prevWorkerCli;
399
+ else
400
+ delete process.env.OMX_TEAM_WORKER_CLI;
401
+ if (typeof prevCaptureDir === 'string')
402
+ process.env.OMX_ARGV_CAPTURE_DIR = prevCaptureDir;
403
+ else
404
+ delete process.env.OMX_ARGV_CAPTURE_DIR;
405
+ await rm(cwd, { recursive: true, force: true });
406
+ }
407
+ });
265
408
  it('startTeam supports prompt launch mode without tmux and pipes trigger text via stdin', async () => {
266
409
  const cwd = await mkdtemp(join(tmpdir(), 'omx-runtime-prompt-'));
267
410
  const binDir = join(cwd, 'bin');