oh-my-codex 0.8.11 → 0.8.13

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 (162) hide show
  1. package/README.md +43 -35
  2. package/dist/agents/__tests__/definitions.test.js +1 -0
  3. package/dist/agents/__tests__/definitions.test.js.map +1 -1
  4. package/dist/agents/definitions.d.ts.map +1 -1
  5. package/dist/agents/definitions.js +11 -0
  6. package/dist/agents/definitions.js.map +1 -1
  7. package/dist/cli/__tests__/doctor-invalid-config.test.d.ts +2 -0
  8. package/dist/cli/__tests__/doctor-invalid-config.test.d.ts.map +1 -0
  9. package/dist/cli/__tests__/doctor-invalid-config.test.js +52 -0
  10. package/dist/cli/__tests__/doctor-invalid-config.test.js.map +1 -0
  11. package/dist/cli/__tests__/index.test.js +35 -3
  12. package/dist/cli/__tests__/index.test.js.map +1 -1
  13. package/dist/cli/__tests__/launch-fallback.test.d.ts +2 -0
  14. package/dist/cli/__tests__/launch-fallback.test.d.ts.map +1 -0
  15. package/dist/cli/__tests__/launch-fallback.test.js +60 -0
  16. package/dist/cli/__tests__/launch-fallback.test.js.map +1 -0
  17. package/dist/cli/__tests__/resume.test.d.ts +2 -0
  18. package/dist/cli/__tests__/resume.test.d.ts.map +1 -0
  19. package/dist/cli/__tests__/resume.test.js +78 -0
  20. package/dist/cli/__tests__/resume.test.js.map +1 -0
  21. package/dist/cli/__tests__/session-search-help.test.d.ts +2 -0
  22. package/dist/cli/__tests__/session-search-help.test.d.ts.map +1 -0
  23. package/dist/cli/__tests__/session-search-help.test.js +36 -0
  24. package/dist/cli/__tests__/session-search-help.test.js.map +1 -0
  25. package/dist/cli/__tests__/session-search.test.d.ts +2 -0
  26. package/dist/cli/__tests__/session-search.test.d.ts.map +1 -0
  27. package/dist/cli/__tests__/session-search.test.js +77 -0
  28. package/dist/cli/__tests__/session-search.test.js.map +1 -0
  29. package/dist/cli/__tests__/setup-prompts-overwrite.test.js +2 -0
  30. package/dist/cli/__tests__/setup-prompts-overwrite.test.js.map +1 -1
  31. package/dist/cli/__tests__/team-decompose.test.js +41 -15
  32. package/dist/cli/__tests__/team-decompose.test.js.map +1 -1
  33. package/dist/cli/__tests__/team.test.js +208 -3
  34. package/dist/cli/__tests__/team.test.js.map +1 -1
  35. package/dist/cli/doctor.d.ts.map +1 -1
  36. package/dist/cli/doctor.js +26 -0
  37. package/dist/cli/doctor.js.map +1 -1
  38. package/dist/cli/index.d.ts +4 -3
  39. package/dist/cli/index.d.ts.map +1 -1
  40. package/dist/cli/index.js +73 -27
  41. package/dist/cli/index.js.map +1 -1
  42. package/dist/cli/session-search.d.ts +8 -0
  43. package/dist/cli/session-search.d.ts.map +1 -0
  44. package/dist/cli/session-search.js +133 -0
  45. package/dist/cli/session-search.js.map +1 -0
  46. package/dist/cli/team.d.ts +13 -12
  47. package/dist/cli/team.d.ts.map +1 -1
  48. package/dist/cli/team.js +123 -39
  49. package/dist/cli/team.js.map +1 -1
  50. package/dist/hooks/__tests__/agents-overlay.test.js +33 -1
  51. package/dist/hooks/__tests__/agents-overlay.test.js.map +1 -1
  52. package/dist/hooks/__tests__/notify-fallback-watcher.test.js +219 -0
  53. package/dist/hooks/__tests__/notify-fallback-watcher.test.js.map +1 -1
  54. package/dist/hooks/__tests__/notify-hook-all-workers-idle.test.js +1 -0
  55. package/dist/hooks/__tests__/notify-hook-all-workers-idle.test.js.map +1 -1
  56. package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js +64 -1
  57. package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js.map +1 -1
  58. package/dist/hooks/__tests__/notify-hook-modules.test.js +7 -0
  59. package/dist/hooks/__tests__/notify-hook-modules.test.js.map +1 -1
  60. package/dist/hooks/__tests__/notify-hook-team-dispatch.test.js +2 -1
  61. package/dist/hooks/__tests__/notify-hook-team-dispatch.test.js.map +1 -1
  62. package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js +420 -5
  63. package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js.map +1 -1
  64. package/dist/hooks/__tests__/notify-hook-tmux-heal.test.js +95 -0
  65. package/dist/hooks/__tests__/notify-hook-tmux-heal.test.js.map +1 -1
  66. package/dist/hooks/__tests__/notify-hook-worker-idle.test.js +3 -0
  67. package/dist/hooks/__tests__/notify-hook-worker-idle.test.js.map +1 -1
  68. package/dist/hooks/__tests__/tmux-hook-engine.test.js +39 -1
  69. package/dist/hooks/__tests__/tmux-hook-engine.test.js.map +1 -1
  70. package/dist/hooks/agents-overlay.d.ts +6 -1
  71. package/dist/hooks/agents-overlay.d.ts.map +1 -1
  72. package/dist/hooks/agents-overlay.js +45 -4
  73. package/dist/hooks/agents-overlay.js.map +1 -1
  74. package/dist/mcp/team-server.js +1 -1
  75. package/dist/mcp/team-server.js.map +1 -1
  76. package/dist/session-history/__tests__/search.test.d.ts +2 -0
  77. package/dist/session-history/__tests__/search.test.d.ts.map +1 -0
  78. package/dist/session-history/__tests__/search.test.js +150 -0
  79. package/dist/session-history/__tests__/search.test.js.map +1 -0
  80. package/dist/session-history/search.d.ts +31 -0
  81. package/dist/session-history/search.d.ts.map +1 -0
  82. package/dist/session-history/search.js +326 -0
  83. package/dist/session-history/search.js.map +1 -0
  84. package/dist/team/__tests__/allocation-policy.test.d.ts +2 -0
  85. package/dist/team/__tests__/allocation-policy.test.d.ts.map +1 -0
  86. package/dist/team/__tests__/allocation-policy.test.js +39 -0
  87. package/dist/team/__tests__/allocation-policy.test.js.map +1 -0
  88. package/dist/team/__tests__/api-interop.test.js +140 -4
  89. package/dist/team/__tests__/api-interop.test.js.map +1 -1
  90. package/dist/team/__tests__/followup-planner.test.js +12 -0
  91. package/dist/team/__tests__/followup-planner.test.js.map +1 -1
  92. package/dist/team/__tests__/idle-nudge.test.js +6 -1
  93. package/dist/team/__tests__/idle-nudge.test.js.map +1 -1
  94. package/dist/team/__tests__/rebalance-policy.test.d.ts +2 -0
  95. package/dist/team/__tests__/rebalance-policy.test.d.ts.map +1 -0
  96. package/dist/team/__tests__/rebalance-policy.test.js +125 -0
  97. package/dist/team/__tests__/rebalance-policy.test.js.map +1 -0
  98. package/dist/team/__tests__/runtime.test.js +315 -12
  99. package/dist/team/__tests__/runtime.test.js.map +1 -1
  100. package/dist/team/__tests__/state.test.js +20 -1
  101. package/dist/team/__tests__/state.test.js.map +1 -1
  102. package/dist/team/__tests__/team-ops-contract.test.js +1 -0
  103. package/dist/team/__tests__/team-ops-contract.test.js.map +1 -1
  104. package/dist/team/__tests__/worker-bootstrap.test.js +20 -3
  105. package/dist/team/__tests__/worker-bootstrap.test.js.map +1 -1
  106. package/dist/team/allocation-policy.d.ts +23 -0
  107. package/dist/team/allocation-policy.d.ts.map +1 -0
  108. package/dist/team/allocation-policy.js +71 -0
  109. package/dist/team/allocation-policy.js.map +1 -0
  110. package/dist/team/api-interop.d.ts +1 -1
  111. package/dist/team/api-interop.d.ts.map +1 -1
  112. package/dist/team/api-interop.js +159 -0
  113. package/dist/team/api-interop.js.map +1 -1
  114. package/dist/team/idle-nudge.js +1 -1
  115. package/dist/team/idle-nudge.js.map +1 -1
  116. package/dist/team/rebalance-policy.d.ts +19 -0
  117. package/dist/team/rebalance-policy.d.ts.map +1 -0
  118. package/dist/team/rebalance-policy.js +48 -0
  119. package/dist/team/rebalance-policy.js.map +1 -0
  120. package/dist/team/runtime.d.ts.map +1 -1
  121. package/dist/team/runtime.js +132 -17
  122. package/dist/team/runtime.js.map +1 -1
  123. package/dist/team/state/types.d.ts +3 -0
  124. package/dist/team/state/types.d.ts.map +1 -1
  125. package/dist/team/state/types.js.map +1 -1
  126. package/dist/team/state.d.ts +8 -0
  127. package/dist/team/state.d.ts.map +1 -1
  128. package/dist/team/state.js +28 -12
  129. package/dist/team/state.js.map +1 -1
  130. package/dist/team/team-ops.d.ts +2 -1
  131. package/dist/team/team-ops.d.ts.map +1 -1
  132. package/dist/team/team-ops.js +1 -0
  133. package/dist/team/team-ops.js.map +1 -1
  134. package/dist/team/tmux-session.d.ts +5 -4
  135. package/dist/team/tmux-session.d.ts.map +1 -1
  136. package/dist/team/tmux-session.js +5 -67
  137. package/dist/team/tmux-session.js.map +1 -1
  138. package/dist/team/worker-bootstrap.d.ts +1 -0
  139. package/dist/team/worker-bootstrap.d.ts.map +1 -1
  140. package/dist/team/worker-bootstrap.js +9 -2
  141. package/dist/team/worker-bootstrap.js.map +1 -1
  142. package/package.json +2 -1
  143. package/prompts/team-executor.md +57 -0
  144. package/prompts/team-orchestrator.md +8 -0
  145. package/scripts/notify-fallback-watcher.js +295 -1
  146. package/scripts/notify-hook/auto-nudge.js +20 -4
  147. package/scripts/notify-hook/team-dispatch.js +11 -58
  148. package/scripts/notify-hook/team-leader-nudge.js +59 -12
  149. package/scripts/notify-hook/team-tmux-guard.js +28 -11
  150. package/scripts/notify-hook/team-worker.js +3 -1
  151. package/scripts/notify-hook/tmux-injection.js +12 -13
  152. package/scripts/tmux-hook-engine.js +56 -0
  153. package/skills/team/SKILL.md +14 -0
  154. package/templates/catalog-manifest.json +5 -0
  155. package/dist/rtk/__tests__/index.test.d.ts +0 -2
  156. package/dist/rtk/__tests__/index.test.d.ts.map +0 -1
  157. package/dist/rtk/__tests__/index.test.js +0 -104
  158. package/dist/rtk/__tests__/index.test.js.map +0 -1
  159. package/dist/rtk/index.d.ts +0 -130
  160. package/dist/rtk/index.d.ts.map +0 -1
  161. package/dist/rtk/index.js +0 -257
  162. package/dist/rtk/index.js.map +0 -1
@@ -0,0 +1,133 @@
1
+ import { searchSessionHistory } from '../session-history/search.js';
2
+ const HELP = `omx session - Search prior local session history
3
+
4
+ Usage:
5
+ omx session search <query> [options]
6
+
7
+ Options:
8
+ --limit <n> Maximum results to return (default: 10)
9
+ --session <id> Restrict to a specific session id or id fragment
10
+ --since <spec> Restrict by recency (examples: 7d, 24h, 2026-03-10)
11
+ --project <scope> Filter by project context: current | all | <cwd-fragment>
12
+ --context <n> Snippet context characters (default: 80)
13
+ --case-sensitive Match query using exact case
14
+ --json Emit structured JSON
15
+ -h, --help Show this help
16
+
17
+ Examples:
18
+ omx session search "worker inbox path"
19
+ omx session search all_workers_idle --since 7d --limit 5
20
+ omx session search "team api" --project current --json
21
+ `;
22
+ const HELP_TOKENS = new Set(['--help', '-h', 'help']);
23
+ function parsePositiveInteger(value, flag) {
24
+ const parsed = Number.parseInt(value, 10);
25
+ if (!Number.isInteger(parsed) || parsed < 0) {
26
+ throw new Error(`Invalid ${flag} value "${value}". Expected a non-negative integer.`);
27
+ }
28
+ return parsed;
29
+ }
30
+ export function parseSessionSearchArgs(args) {
31
+ const options = {
32
+ query: '',
33
+ };
34
+ let json = false;
35
+ const queryTokens = [];
36
+ for (let index = 0; index < args.length; index += 1) {
37
+ const token = args[index];
38
+ if (token === '--json') {
39
+ json = true;
40
+ continue;
41
+ }
42
+ if (token === '--case-sensitive') {
43
+ options.caseSensitive = true;
44
+ continue;
45
+ }
46
+ if (token === '--limit' || token === '--session' || token === '--since' || token === '--project' || token === '--context') {
47
+ const next = args[index + 1];
48
+ if (!next || next.startsWith('-')) {
49
+ throw new Error(`Missing value after ${token}.`);
50
+ }
51
+ if (token === '--limit')
52
+ options.limit = parsePositiveInteger(next, token);
53
+ if (token === '--session')
54
+ options.session = next;
55
+ if (token === '--since')
56
+ options.since = next;
57
+ if (token === '--project')
58
+ options.project = next;
59
+ if (token === '--context')
60
+ options.context = parsePositiveInteger(next, token);
61
+ index += 1;
62
+ continue;
63
+ }
64
+ if (token.startsWith('--limit=')) {
65
+ options.limit = parsePositiveInteger(token.slice('--limit='.length), '--limit');
66
+ continue;
67
+ }
68
+ if (token.startsWith('--session=')) {
69
+ options.session = token.slice('--session='.length);
70
+ continue;
71
+ }
72
+ if (token.startsWith('--since=')) {
73
+ options.since = token.slice('--since='.length);
74
+ continue;
75
+ }
76
+ if (token.startsWith('--project=')) {
77
+ options.project = token.slice('--project='.length);
78
+ continue;
79
+ }
80
+ if (token.startsWith('--context=')) {
81
+ options.context = parsePositiveInteger(token.slice('--context='.length), '--context');
82
+ continue;
83
+ }
84
+ if (token.startsWith('-')) {
85
+ throw new Error(`Unknown option: ${token}`);
86
+ }
87
+ queryTokens.push(token);
88
+ }
89
+ options.query = queryTokens.join(' ').trim();
90
+ if (options.query === '') {
91
+ throw new Error(`Missing search query.\n${HELP}`);
92
+ }
93
+ return { options, json };
94
+ }
95
+ function formatReport(report) {
96
+ if (report.results.length === 0) {
97
+ return `No session history matches for "${report.query}". Searched ${report.searched_files} transcript(s).`;
98
+ }
99
+ const lines = [
100
+ `Found ${report.results.length} match(es) across ${report.matched_sessions} session(s) in ${report.searched_files} transcript(s).`,
101
+ ];
102
+ for (const result of report.results) {
103
+ lines.push('');
104
+ lines.push(`session: ${result.session_id}`);
105
+ lines.push(`time: ${result.timestamp ?? 'unknown'}`);
106
+ lines.push(`cwd: ${result.cwd ?? 'unknown'}`);
107
+ lines.push(`source: ${result.transcript_path}:${result.line_number} (${result.record_type})`);
108
+ lines.push(`snippet: ${result.snippet}`);
109
+ }
110
+ return lines.join('\n');
111
+ }
112
+ export async function sessionCommand(args) {
113
+ const subcommand = args[0];
114
+ if (!subcommand || HELP_TOKENS.has(subcommand)) {
115
+ console.log(HELP.trim());
116
+ return;
117
+ }
118
+ if (subcommand !== 'search') {
119
+ throw new Error(`Unknown session subcommand: ${subcommand}\n${HELP}`);
120
+ }
121
+ if (args.slice(1).some((token) => HELP_TOKENS.has(token))) {
122
+ console.log(HELP.trim());
123
+ return;
124
+ }
125
+ const parsed = parseSessionSearchArgs(args.slice(1));
126
+ const report = await searchSessionHistory(parsed.options);
127
+ if (parsed.json) {
128
+ console.log(JSON.stringify(report, null, 2));
129
+ return;
130
+ }
131
+ console.log(formatReport(report));
132
+ }
133
+ //# sourceMappingURL=session-search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-search.js","sourceRoot":"","sources":["../../src/cli/session-search.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ interface ParsedTeamArgs {
6
6
  workerCount: number;
7
7
  agentType: string;
8
8
  explicitAgentType: boolean;
9
+ explicitWorkerCount: boolean;
9
10
  task: string;
10
11
  teamName: string;
11
12
  ralph: boolean;
@@ -15,23 +16,23 @@ export interface ParsedTeamStartArgs {
15
16
  worktreeMode: WorktreeMode;
16
17
  }
17
18
  export declare function parseTeamStartArgs(args: string[]): ParsedTeamStartArgs;
18
- /**
19
- * Decompose a compound task string into distinct sub-tasks with role assignments.
20
- *
21
- * Decomposition strategy:
22
- * 1. Numbered list detection: "1. ... 2. ... 3. ..."
23
- * 2. Conjunction splitting: split on " and ", ", ", "; "
24
- * 3. Fallback for atomic tasks: create implementation + test + doc sub-tasks
25
- *
26
- * When the user specifies an explicit agent-type (e.g., `3:executor`), all tasks
27
- * get that role (backward compat). Otherwise, heuristic routing assigns roles.
28
- */
29
- export declare function decomposeTaskString(task: string, workerCount: number, agentType: string, explicitAgentType: boolean): Array<{
19
+ export interface TeamExecutionPlan {
20
+ workerCount: number;
21
+ tasks: Array<{
22
+ subject: string;
23
+ description: string;
24
+ owner: string;
25
+ role?: string;
26
+ }>;
27
+ }
28
+ export declare function buildTeamExecutionPlan(task: string, workerCount: number, agentType: string, explicitAgentType: boolean, explicitWorkerCount?: boolean): TeamExecutionPlan;
29
+ export declare function decomposeTaskString(task: string, workerCount: number, agentType: string, explicitAgentType: boolean, explicitWorkerCount?: boolean): Array<{
30
30
  subject: string;
31
31
  description: string;
32
32
  owner: string;
33
33
  role?: string;
34
34
  }>;
35
+ export declare function buildLeaderMonitoringHints(teamName: string): string[];
35
36
  export declare function teamCommand(args: string[], options?: TeamCliOptions): Promise<void>;
36
37
  export {};
37
38
  //# sourceMappingURL=team.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"team.d.ts","sourceRoot":"","sources":["../../src/cli/team.ts"],"names":[],"mappings":"AAMA,OAAO,EAAqB,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAe3E,UAAU,cAAc;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,cAAc;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,OAAO,CAAC;CAChB;AAmKD,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,cAAc,CAAC;IACvB,YAAY,EAAE,YAAY,CAAC;CAC5B;AAqHD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAMtE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,OAAO,GACzB,KAAK,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAoB/E;AA4JD,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6P7F"}
1
+ {"version":3,"file":"team.d.ts","sourceRoot":"","sources":["../../src/cli/team.ts"],"names":[],"mappings":"AAMA,OAAO,EAAqB,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAiB3E,UAAU,cAAc;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,cAAc;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,OAAO,CAAC;CAChB;AAuKD,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,cAAc,CAAC;IACvB,YAAY,EAAE,YAAY,CAAC;CAC5B;AAuHD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAMtE;AAyBD,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACtF;AA4CD,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,OAAO,EAC1B,mBAAmB,UAAQ,GAC1B,iBAAiB,CA4BnB;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,OAAO,EAC1B,mBAAmB,UAAQ,GAC1B,KAAK,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAE/E;AA8KD,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAMrE;AA4BD,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwQ7F"}
package/dist/cli/team.js CHANGED
@@ -4,7 +4,9 @@ import { DEFAULT_MAX_WORKERS } from '../team/state.js';
4
4
  import { sanitizeTeamName } from '../team/tmux-session.js';
5
5
  import { readTeamEvents, waitForTeamEvent } from '../team/state/events.js';
6
6
  import { parseWorktreeMode } from '../team/worktree.js';
7
+ import { classifyTaskSize } from '../hooks/task-size-detector.js';
7
8
  import { routeTaskToRole } from '../team/role-router.js';
9
+ import { allocateTasksToWorkers } from '../team/allocation-policy.js';
8
10
  import { buildFollowupStaffingPlan, resolveAvailableAgentTypes, } from '../team/followup-planner.js';
9
11
  import { TEAM_API_OPERATIONS, resolveTeamApiOperation, executeTeamApiOperation, } from '../team/api-interop.js';
10
12
  import { teamReadConfig as readTeamConfig } from '../team/team-ops.js';
@@ -58,6 +60,8 @@ const TEAM_API_OPERATION_REQUIRED_FIELDS = {
58
60
  'append-event': ['team_name', 'type', 'worker'],
59
61
  'read-events': ['team_name'],
60
62
  'await-event': ['team_name'],
63
+ 'read-idle-state': ['team_name'],
64
+ 'read-stall-state': ['team_name'],
61
65
  'get-summary': ['team_name'],
62
66
  'cleanup': ['team_name'],
63
67
  'write-shutdown-request': ['team_name', 'worker', 'requested_by'],
@@ -87,6 +91,8 @@ const TEAM_API_OPERATION_NOTES = {
87
91
  'transition-task-status': 'Lifecycle flow is claim-safe and typically transitions in_progress -> completed|failed.',
88
92
  'read-events': 'Events are returned in canonical form; worker_idle log entries normalize to type worker_state_changed with source_type worker_idle. wakeable_only defaults to false; set wakeable_only=true to mirror omx team await semantics.',
89
93
  'await-event': 'Waits for the next matching event and returns status=timeout when no matching event arrives before timeout_ms. wakeable_only defaults to false; set wakeable_only=true to mirror omx team await semantics.',
94
+ 'read-idle-state': 'Builds a structured idle summary from the existing monitor snapshot, team summary, and recent events.',
95
+ 'read-stall-state': 'Builds a structured stall summary from the existing monitor snapshot, team summary, and recent events.',
90
96
  };
91
97
  function sampleValueForTeamApiField(field) {
92
98
  switch (field) {
@@ -240,6 +246,7 @@ function parseTeamArgs(args) {
240
246
  let workerCount = 3;
241
247
  let agentType = 'executor';
242
248
  let explicitAgentType = false;
249
+ let explicitWorkerCount = false;
243
250
  if (tokens[0]?.toLowerCase() === 'ralph') {
244
251
  ralph = true;
245
252
  tokens.shift();
@@ -252,6 +259,7 @@ function parseTeamArgs(args) {
252
259
  throw new Error(`Invalid worker count "${match[1]}". Expected ${MIN_WORKER_COUNT}-${DEFAULT_MAX_WORKERS}.`);
253
260
  }
254
261
  workerCount = count;
262
+ explicitWorkerCount = true;
255
263
  if (match[2]) {
256
264
  agentType = match[2];
257
265
  explicitAgentType = true;
@@ -263,7 +271,7 @@ function parseTeamArgs(args) {
263
271
  throw new Error('Usage: omx team [ralph] [N:agent-type] "<task description>"');
264
272
  }
265
273
  const teamName = sanitizeTeamName(slugifyTask(task));
266
- return { workerCount, agentType, explicitAgentType, task, teamName, ralph };
274
+ return { workerCount, agentType, explicitAgentType, explicitWorkerCount, task, teamName, ralph };
267
275
  }
268
276
  export function parseTeamStartArgs(args) {
269
277
  const parsedWorktree = parseWorktreeMode(args);
@@ -272,37 +280,63 @@ export function parseTeamStartArgs(args) {
272
280
  worktreeMode: parsedWorktree.mode,
273
281
  };
274
282
  }
275
- /**
276
- * Decompose a compound task string into distinct sub-tasks with role assignments.
277
- *
278
- * Decomposition strategy:
279
- * 1. Numbered list detection: "1. ... 2. ... 3. ..."
280
- * 2. Conjunction splitting: split on " and ", ", ", "; "
281
- * 3. Fallback for atomic tasks: create implementation + test + doc sub-tasks
282
- *
283
- * When the user specifies an explicit agent-type (e.g., `3:executor`), all tasks
284
- * get that role (backward compat). Otherwise, heuristic routing assigns roles.
285
- */
286
- export function decomposeTaskString(task, workerCount, agentType, explicitAgentType) {
287
- // Try to split the task into distinct sub-goals
288
- let subtasks = splitTaskString(task);
289
- // If no decomposition possible, create aspect-scoped sub-tasks for N>1
290
- if (subtasks.length <= 1 && workerCount > 1) {
291
- subtasks = createAspectSubtasks(task, workerCount);
283
+ function resolveImplicitTeamFallbackRole(agentType, explicitAgentType) {
284
+ return !explicitAgentType && agentType === 'executor' ? 'team-executor' : agentType;
285
+ }
286
+ function looksLikeLowConfidenceAnalysisTask(task) {
287
+ const normalized = task.trim();
288
+ return ANALYSIS_TASK_PREFIX.test(normalized)
289
+ && (ANALYSIS_DELIVERABLE_SIGNAL.test(normalized)
290
+ || countWords(normalized) > 18
291
+ || CONTEXTUAL_DECOMPOSITION_CLAUSE.test(normalized));
292
+ }
293
+ function resolveTeamFanoutLimit(task, requestedWorkerCount, explicitAgentType, explicitWorkerCount, plan) {
294
+ if (requestedWorkerCount <= 1 || explicitAgentType || explicitWorkerCount || plan.strategy === 'numbered') {
295
+ return requestedWorkerCount;
296
+ }
297
+ const size = classifyTaskSize(task).size;
298
+ if (plan.strategy === 'atomic') {
299
+ if (looksLikeLowConfidenceAnalysisTask(task)) {
300
+ return 1;
301
+ }
302
+ if (size === 'small') {
303
+ const proseHeavyAtomicTask = countWords(task) > 18 || CONTEXTUAL_DECOMPOSITION_CLAUSE.test(task);
304
+ if (!proseHeavyAtomicTask)
305
+ return 1;
306
+ }
307
+ }
308
+ if (plan.strategy === 'conjunction' && size !== 'large') {
309
+ return Math.min(requestedWorkerCount, Math.max(2, plan.subtasks.length));
310
+ }
311
+ return requestedWorkerCount;
312
+ }
313
+ export function buildTeamExecutionPlan(task, workerCount, agentType, explicitAgentType, explicitWorkerCount = false) {
314
+ const plan = splitTaskString(task);
315
+ const effectiveWorkerCount = resolveTeamFanoutLimit(task, workerCount, explicitAgentType, explicitWorkerCount, plan);
316
+ const fallbackRole = resolveImplicitTeamFallbackRole(agentType, explicitAgentType);
317
+ let subtasks = plan.subtasks;
318
+ if (subtasks.length <= 1 && effectiveWorkerCount > 1) {
319
+ subtasks = createAspectSubtasks(task, effectiveWorkerCount);
292
320
  }
293
- // Assign roles: skip heuristic routing if user specified explicit agent-type
294
321
  const tasksWithRoles = subtasks.map((st) => {
295
322
  if (explicitAgentType) {
296
323
  return { ...st, role: agentType };
297
324
  }
298
- const result = routeTaskToRole(st.subject, st.description, 'team-exec', agentType);
325
+ const result = routeTaskToRole(st.subject, st.description, 'team-exec', fallbackRole);
299
326
  return { ...st, role: result.role };
300
327
  });
301
- // Distribute tasks across workers
302
- return distributeTasksToWorkers(tasksWithRoles, workerCount);
328
+ return {
329
+ workerCount: effectiveWorkerCount,
330
+ tasks: distributeTasksToWorkers(tasksWithRoles, effectiveWorkerCount),
331
+ };
332
+ }
333
+ export function decomposeTaskString(task, workerCount, agentType, explicitAgentType, explicitWorkerCount = false) {
334
+ return buildTeamExecutionPlan(task, workerCount, agentType, explicitAgentType, explicitWorkerCount).tasks;
303
335
  }
304
336
  const ACTIONABLE_TASK_PREFIX = /^(?:add|analy(?:se|ze)|audit|benchmark|build|clean(?:\s+up)?|create|debug|design|document|draft|fix|implement|improve|investigate|migrate|optimi(?:s|z)e|profile|refactor|repair|research|review|ship|summari(?:s|z)e|test|update|validate|verify|write)\b/i;
305
337
  const TASK_LABEL_PREFIX = /^(?:task|step|phase|part)\s+[\w-]+(?:\s+[\w-]+)?$/i;
338
+ const ANALYSIS_TASK_PREFIX = /^(?:analy(?:se|ze)|audit|assess|evaluate|explore|investigate|research|review|study|summari(?:s|z)e)\b/i;
339
+ const ANALYSIS_DELIVERABLE_SIGNAL = /\b(?:actionable recommendations?|evidence(?: pointers?)?|findings?|issue|operator|report|root cause|summary|user impact|write-?up)\b/i;
306
340
  const CONTEXTUAL_DECOMPOSITION_CLAUSE = /\b(?:focusing on|focus on|including|covers?|covering|with|while|without|ensuring|suitable for|root cause|user impact|evidence pointers|actionable recommendations)\b/i;
307
341
  function countWords(text) {
308
342
  return text.trim().split(/\s+/).filter(Boolean).length;
@@ -337,19 +371,27 @@ function splitTaskString(task) {
337
371
  }
338
372
  }
339
373
  if (parts.length >= 2)
340
- return parts;
374
+ return { strategy: 'numbered', subtasks: parts };
341
375
  }
342
376
  const strongParts = task.split(/;\s+/).map(s => s.trim()).filter(s => s.length > 0);
343
377
  if (strongParts.length >= 2) {
344
- return strongParts.map((part) => ({ subject: part.slice(0, 80), description: part }));
378
+ return {
379
+ strategy: 'conjunction',
380
+ subtasks: strongParts.map((part) => ({ subject: part.slice(0, 80), description: part })),
381
+ };
345
382
  }
346
383
  // Commas / "and" only split when the overall input already looks like a flat task list.
347
384
  const weakParts = task.split(/(?:,\s+and\s+|,\s+|\s+and\s+)/i).map(s => s.trim()).filter(s => s.length > 0);
348
385
  if (canSafelySplitWeakTaskList(task, weakParts)) {
349
- return weakParts.map((part) => ({ subject: part.slice(0, 80), description: part }));
386
+ return {
387
+ strategy: 'conjunction',
388
+ subtasks: weakParts.map((part) => ({ subject: part.slice(0, 80), description: part })),
389
+ };
350
390
  }
351
- // Single atomic task
352
- return [{ subject: task.slice(0, 80), description: task }];
391
+ return {
392
+ strategy: 'atomic',
393
+ subtasks: [{ subject: task.slice(0, 80), description: task }],
394
+ };
353
395
  }
354
396
  /** Create aspect-scoped sub-tasks for an atomic task that can't be split. */
355
397
  function createAspectSubtasks(task, workerCount) {
@@ -369,21 +411,20 @@ function createAspectSubtasks(task, workerCount) {
369
411
  }
370
412
  return result;
371
413
  }
372
- /** Distribute tasks across workers, assigning owners round-robin. */
414
+ /** Distribute tasks across workers using an inspectable allocation policy. */
373
415
  function distributeTasksToWorkers(tasks, workerCount) {
374
- return tasks.map((t, i) => ({
375
- ...t,
376
- owner: `worker-${(i % workerCount) + 1}`,
377
- }));
416
+ const workers = Array.from({ length: workerCount }, (_, index) => ({ name: `worker-${index + 1}` }));
417
+ return allocateTasksToWorkers(tasks, workers).map(({ allocation_reason: _allocationReason, ...task }) => task);
378
418
  }
379
419
  async function ensureTeamModeState(parsed, tasks) {
420
+ const fallbackRole = resolveImplicitTeamFallbackRole(parsed.agentType, parsed.explicitAgentType);
380
421
  const roleDistribution = tasks && tasks.length > 0
381
422
  ? [...new Set(tasks.map(t => t.role ?? parsed.agentType))].join(',')
382
423
  : parsed.agentType;
383
424
  const availableAgentTypes = await resolveAvailableAgentTypes(process.cwd());
384
425
  const staffingPlan = buildFollowupStaffingPlan('team', parsed.task, availableAgentTypes, {
385
426
  workerCount: parsed.workerCount,
386
- fallbackRole: parsed.agentType,
427
+ fallbackRole,
387
428
  });
388
429
  const existing = await readModeState('team');
389
430
  if (existing?.active) {
@@ -398,6 +439,9 @@ async function ensureTeamModeState(parsed, tasks) {
398
439
  staffing_summary: staffingPlan.staffingSummary,
399
440
  staffing_allocations: staffingPlan.allocations,
400
441
  });
442
+ if (parsed.ralph) {
443
+ await ensureLinkedRalphModeState(parsed);
444
+ }
401
445
  return;
402
446
  }
403
447
  await startMode('team', parsed.task, 50);
@@ -411,6 +455,38 @@ async function ensureTeamModeState(parsed, tasks) {
411
455
  staffing_summary: staffingPlan.staffingSummary,
412
456
  staffing_allocations: staffingPlan.allocations,
413
457
  });
458
+ if (parsed.ralph) {
459
+ await ensureLinkedRalphModeState(parsed);
460
+ }
461
+ }
462
+ async function ensureLinkedRalphModeState(parsed) {
463
+ const existing = await readModeState('ralph').catch(() => null);
464
+ const nextPhase = existing?.active === true
465
+ && typeof existing.current_phase === 'string'
466
+ && !['complete', 'failed', 'cancelled'].includes(existing.current_phase)
467
+ ? existing.current_phase
468
+ : 'executing';
469
+ if (!existing?.active) {
470
+ await startMode('ralph', parsed.task, 50);
471
+ }
472
+ await updateModeState('ralph', {
473
+ active: true,
474
+ task_description: parsed.task,
475
+ current_phase: nextPhase,
476
+ completed_at: undefined,
477
+ linked_team: true,
478
+ linked_mode: 'team',
479
+ team_name: parsed.teamName,
480
+ linked_team_terminal_phase: undefined,
481
+ linked_team_terminal_at: undefined,
482
+ });
483
+ }
484
+ export function buildLeaderMonitoringHints(teamName) {
485
+ const sanitized = sanitizeTeamName(teamName);
486
+ return [
487
+ `leader_check: omx team status ${sanitized}`,
488
+ `leader_loop_hint: while ON, keep checking state (example: sleep 30 && omx team status ${sanitized})`,
489
+ ];
414
490
  }
415
491
  async function renderStartSummary(runtime, staffingPlan) {
416
492
  console.log(`Team started: ${runtime.teamName}`);
@@ -430,6 +506,9 @@ async function renderStartSummary(runtime, staffingPlan) {
430
506
  if (snapshot.performance) {
431
507
  console.log(`monitor_perf_ms: total=${snapshot.performance.total_ms} list=${snapshot.performance.list_tasks_ms} workers=${snapshot.performance.worker_scan_ms} mailbox=${snapshot.performance.mailbox_delivery_ms}`);
432
508
  }
509
+ for (const hint of buildLeaderMonitoringHints(runtime.teamName)) {
510
+ console.log(hint);
511
+ }
433
512
  }
434
513
  export async function teamCommand(args, options = {}) {
435
514
  const cwd = process.cwd();
@@ -617,13 +696,14 @@ export async function teamCommand(args, options = {}) {
617
696
  workerCount: runtime.config.worker_count,
618
697
  agentType: runtime.config.agent_type,
619
698
  explicitAgentType: false,
699
+ explicitWorkerCount: false,
620
700
  teamName: runtime.teamName,
621
701
  ralph: preservedRalph,
622
702
  });
623
703
  const availableAgentTypes = await resolveAvailableAgentTypes(cwd);
624
704
  const staffingPlan = buildFollowupStaffingPlan('team', runtime.config.task, availableAgentTypes, {
625
705
  workerCount: runtime.config.worker_count,
626
- fallbackRole: runtime.config.agent_type,
706
+ fallbackRole: resolveImplicitTeamFallbackRole(runtime.config.agent_type, false),
627
707
  });
628
708
  await renderStartSummary(runtime, staffingPlan);
629
709
  return;
@@ -652,14 +732,18 @@ export async function teamCommand(args, options = {}) {
652
732
  return;
653
733
  }
654
734
  const parsed = parseTeamArgs(teamArgs);
655
- const tasks = decomposeTaskString(parsed.task, parsed.workerCount, parsed.agentType, parsed.explicitAgentType);
735
+ const executionPlan = buildTeamExecutionPlan(parsed.task, parsed.workerCount, parsed.agentType, parsed.explicitAgentType, parsed.explicitWorkerCount);
736
+ const tasks = executionPlan.tasks;
737
+ const effectiveParsed = executionPlan.workerCount === parsed.workerCount
738
+ ? parsed
739
+ : { ...parsed, workerCount: executionPlan.workerCount };
656
740
  const availableAgentTypes = await resolveAvailableAgentTypes(cwd);
657
741
  const staffingPlan = buildFollowupStaffingPlan('team', parsed.task, availableAgentTypes, {
658
- workerCount: parsed.workerCount,
659
- fallbackRole: parsed.agentType,
742
+ workerCount: executionPlan.workerCount,
743
+ fallbackRole: resolveImplicitTeamFallbackRole(parsed.agentType, parsed.explicitAgentType),
660
744
  });
661
- const runtime = await startTeam(parsed.teamName, parsed.task, parsed.agentType, parsed.workerCount, tasks, cwd, { worktreeMode: parsedWorktree.mode, ralph: parsed.ralph });
662
- await ensureTeamModeState(parsed, tasks);
745
+ const runtime = await startTeam(parsed.teamName, parsed.task, parsed.agentType, executionPlan.workerCount, tasks, cwd, { worktreeMode: parsedWorktree.mode, ralph: parsed.ralph });
746
+ await ensureTeamModeState(effectiveParsed, tasks);
663
747
  if (options.verbose) {
664
748
  console.log(`linked_ralph=${parsed.ralph}`);
665
749
  }
@@ -1 +1 @@
1
- {"version":3,"file":"team.js","sourceRoot":"","sources":["../../src/cli/team.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"team.js","sourceRoot":"","sources":["../../src/cli/team.ts"],"names":[],"mappings":"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"}