oh-my-codex 0.11.13 → 0.12.1

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 (377) hide show
  1. package/Cargo.lock +5 -5
  2. package/Cargo.toml +1 -1
  3. package/README.md +34 -17
  4. package/crates/omx-runtime/src/main.rs +6 -2
  5. package/dist/agents/native-config.js +1 -1
  6. package/dist/agents/native-config.js.map +1 -1
  7. package/dist/cli/__tests__/autoresearch-guided.test.js +74 -2
  8. package/dist/cli/__tests__/autoresearch-guided.test.js.map +1 -1
  9. package/dist/cli/__tests__/cleanup.test.js +37 -30
  10. package/dist/cli/__tests__/cleanup.test.js.map +1 -1
  11. package/dist/cli/__tests__/error-handling-warnings.test.js +3 -1
  12. package/dist/cli/__tests__/error-handling-warnings.test.js.map +1 -1
  13. package/dist/cli/__tests__/index.test.js +276 -5
  14. package/dist/cli/__tests__/index.test.js.map +1 -1
  15. package/dist/cli/__tests__/launch-fallback.test.js +95 -1
  16. package/dist/cli/__tests__/launch-fallback.test.js.map +1 -1
  17. package/dist/cli/__tests__/setup-refresh.test.js +49 -9
  18. package/dist/cli/__tests__/setup-refresh.test.js.map +1 -1
  19. package/dist/cli/__tests__/setup-scope.test.js +9 -0
  20. package/dist/cli/__tests__/setup-scope.test.js.map +1 -1
  21. package/dist/cli/__tests__/team.test.js +136 -11
  22. package/dist/cli/__tests__/team.test.js.map +1 -1
  23. package/dist/cli/__tests__/uninstall.test.js +10 -0
  24. package/dist/cli/__tests__/uninstall.test.js.map +1 -1
  25. package/dist/cli/__tests__/windows-popup-loop-contract.test.js +1 -0
  26. package/dist/cli/__tests__/windows-popup-loop-contract.test.js.map +1 -1
  27. package/dist/cli/autoresearch-guided.d.ts.map +1 -1
  28. package/dist/cli/autoresearch-guided.js +2 -1
  29. package/dist/cli/autoresearch-guided.js.map +1 -1
  30. package/dist/cli/autoresearch.d.ts.map +1 -1
  31. package/dist/cli/autoresearch.js +2 -1
  32. package/dist/cli/autoresearch.js.map +1 -1
  33. package/dist/cli/cleanup.d.ts.map +1 -1
  34. package/dist/cli/cleanup.js +10 -5
  35. package/dist/cli/cleanup.js.map +1 -1
  36. package/dist/cli/index.d.ts +21 -1
  37. package/dist/cli/index.d.ts.map +1 -1
  38. package/dist/cli/index.js +298 -36
  39. package/dist/cli/index.js.map +1 -1
  40. package/dist/cli/omx.js +2 -0
  41. package/dist/cli/omx.js.map +1 -1
  42. package/dist/cli/setup.d.ts +1 -0
  43. package/dist/cli/setup.d.ts.map +1 -1
  44. package/dist/cli/setup.js +41 -7
  45. package/dist/cli/setup.js.map +1 -1
  46. package/dist/cli/team.d.ts.map +1 -1
  47. package/dist/cli/team.js +16 -557
  48. package/dist/cli/team.js.map +1 -1
  49. package/dist/cli/uninstall.d.ts.map +1 -1
  50. package/dist/cli/uninstall.js +34 -9
  51. package/dist/cli/uninstall.js.map +1 -1
  52. package/dist/config/__tests__/generator-idempotent.test.js +79 -2
  53. package/dist/config/__tests__/generator-idempotent.test.js.map +1 -1
  54. package/dist/config/__tests__/generator-notify.test.js +2 -0
  55. package/dist/config/__tests__/generator-notify.test.js.map +1 -1
  56. package/dist/config/codex-hooks.d.ts +11 -0
  57. package/dist/config/codex-hooks.d.ts.map +1 -0
  58. package/dist/config/codex-hooks.js +50 -0
  59. package/dist/config/codex-hooks.js.map +1 -0
  60. package/dist/config/generator.d.ts +5 -3
  61. package/dist/config/generator.d.ts.map +1 -1
  62. package/dist/config/generator.js +24 -14
  63. package/dist/config/generator.js.map +1 -1
  64. package/dist/hooks/__tests__/debugger-log-recency-contract.test.d.ts +2 -0
  65. package/dist/hooks/__tests__/debugger-log-recency-contract.test.d.ts.map +1 -0
  66. package/dist/hooks/__tests__/debugger-log-recency-contract.test.js +20 -0
  67. package/dist/hooks/__tests__/debugger-log-recency-contract.test.js.map +1 -0
  68. package/dist/hooks/__tests__/keyword-detector.test.js +132 -0
  69. package/dist/hooks/__tests__/keyword-detector.test.js.map +1 -1
  70. package/dist/hooks/__tests__/notify-fallback-watcher.test.js +292 -4
  71. package/dist/hooks/__tests__/notify-fallback-watcher.test.js.map +1 -1
  72. package/dist/hooks/__tests__/notify-hook-all-workers-idle.test.js +86 -0
  73. package/dist/hooks/__tests__/notify-hook-all-workers-idle.test.js.map +1 -1
  74. package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js +40 -0
  75. package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js.map +1 -1
  76. package/dist/hooks/__tests__/notify-hook-managed-tmux.test.d.ts +2 -0
  77. package/dist/hooks/__tests__/notify-hook-managed-tmux.test.d.ts.map +1 -0
  78. package/dist/hooks/__tests__/notify-hook-managed-tmux.test.js +54 -0
  79. package/dist/hooks/__tests__/notify-hook-managed-tmux.test.js.map +1 -0
  80. package/dist/hooks/__tests__/notify-hook-modules.test.js +31 -0
  81. package/dist/hooks/__tests__/notify-hook-modules.test.js.map +1 -1
  82. package/dist/hooks/__tests__/notify-hook-ralph-resume.test.js +51 -0
  83. package/dist/hooks/__tests__/notify-hook-ralph-resume.test.js.map +1 -1
  84. package/dist/hooks/__tests__/notify-hook-session-idle-dedupe.test.d.ts +2 -0
  85. package/dist/hooks/__tests__/notify-hook-session-idle-dedupe.test.d.ts.map +1 -0
  86. package/dist/hooks/__tests__/notify-hook-session-idle-dedupe.test.js +136 -0
  87. package/dist/hooks/__tests__/notify-hook-session-idle-dedupe.test.js.map +1 -0
  88. package/dist/hooks/__tests__/notify-hook-team-dispatch.test.js +120 -0
  89. package/dist/hooks/__tests__/notify-hook-team-dispatch.test.js.map +1 -1
  90. package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js +145 -20
  91. package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js.map +1 -1
  92. package/dist/hooks/__tests__/notify-hook-team-tmux-guard.test.js +116 -0
  93. package/dist/hooks/__tests__/notify-hook-team-tmux-guard.test.js.map +1 -1
  94. package/dist/hooks/__tests__/notify-hook-worker-idle.test.js +86 -0
  95. package/dist/hooks/__tests__/notify-hook-worker-idle.test.js.map +1 -1
  96. package/dist/hooks/__tests__/pre-context-gate-skills.test.js +1 -0
  97. package/dist/hooks/__tests__/pre-context-gate-skills.test.js.map +1 -1
  98. package/dist/hooks/extensibility/__tests__/runtime.test.js +49 -0
  99. package/dist/hooks/extensibility/__tests__/runtime.test.js.map +1 -1
  100. package/dist/hooks/extensibility/runtime.d.ts.map +1 -1
  101. package/dist/hooks/extensibility/runtime.js +10 -0
  102. package/dist/hooks/extensibility/runtime.js.map +1 -1
  103. package/dist/hooks/extensibility/types.d.ts +1 -1
  104. package/dist/hooks/extensibility/types.d.ts.map +1 -1
  105. package/dist/hooks/keyword-detector.d.ts +2 -0
  106. package/dist/hooks/keyword-detector.d.ts.map +1 -1
  107. package/dist/hooks/keyword-detector.js +76 -4
  108. package/dist/hooks/keyword-detector.js.map +1 -1
  109. package/dist/hooks/prompt-guidance-contract.d.ts.map +1 -1
  110. package/dist/hooks/prompt-guidance-contract.js +12 -8
  111. package/dist/hooks/prompt-guidance-contract.js.map +1 -1
  112. package/dist/hooks/session.d.ts +5 -1
  113. package/dist/hooks/session.d.ts.map +1 -1
  114. package/dist/hooks/session.js +10 -6
  115. package/dist/hooks/session.js.map +1 -1
  116. package/dist/hud/index.d.ts.map +1 -1
  117. package/dist/hud/index.js +6 -1
  118. package/dist/hud/index.js.map +1 -1
  119. package/dist/mcp/__tests__/bootstrap.test.js +0 -3
  120. package/dist/mcp/__tests__/bootstrap.test.js.map +1 -1
  121. package/dist/mcp/__tests__/code-intel-server.test.js +27 -1
  122. package/dist/mcp/__tests__/code-intel-server.test.js.map +1 -1
  123. package/dist/mcp/__tests__/server-lifecycle.test.js +0 -5
  124. package/dist/mcp/__tests__/server-lifecycle.test.js.map +1 -1
  125. package/dist/mcp/bootstrap.d.ts +1 -1
  126. package/dist/mcp/bootstrap.d.ts.map +1 -1
  127. package/dist/mcp/bootstrap.js +0 -1
  128. package/dist/mcp/bootstrap.js.map +1 -1
  129. package/dist/mcp/code-intel-server.d.ts +20 -0
  130. package/dist/mcp/code-intel-server.d.ts.map +1 -1
  131. package/dist/mcp/code-intel-server.js +6 -5
  132. package/dist/mcp/code-intel-server.js.map +1 -1
  133. package/dist/notifications/__tests__/idle-cooldown.test.js +24 -1
  134. package/dist/notifications/__tests__/idle-cooldown.test.js.map +1 -1
  135. package/dist/notifications/__tests__/reply-listener.test.js +20 -1
  136. package/dist/notifications/__tests__/reply-listener.test.js.map +1 -1
  137. package/dist/notifications/__tests__/tmux.test.js +41 -0
  138. package/dist/notifications/__tests__/tmux.test.js.map +1 -1
  139. package/dist/notifications/idle-cooldown.d.ts +13 -0
  140. package/dist/notifications/idle-cooldown.d.ts.map +1 -1
  141. package/dist/notifications/idle-cooldown.js +50 -16
  142. package/dist/notifications/idle-cooldown.js.map +1 -1
  143. package/dist/notifications/reply-listener.d.ts.map +1 -1
  144. package/dist/notifications/reply-listener.js +2 -0
  145. package/dist/notifications/reply-listener.js.map +1 -1
  146. package/dist/notifications/tmux.d.ts.map +1 -1
  147. package/dist/notifications/tmux.js +4 -0
  148. package/dist/notifications/tmux.js.map +1 -1
  149. package/dist/scripts/__tests__/codex-native-hook.test.d.ts +2 -0
  150. package/dist/scripts/__tests__/codex-native-hook.test.d.ts.map +1 -0
  151. package/dist/scripts/__tests__/codex-native-hook.test.js +1050 -0
  152. package/dist/scripts/__tests__/codex-native-hook.test.js.map +1 -0
  153. package/dist/scripts/codex-native-hook.d.ts +22 -0
  154. package/dist/scripts/codex-native-hook.d.ts.map +1 -0
  155. package/dist/scripts/codex-native-hook.js +792 -0
  156. package/dist/scripts/codex-native-hook.js.map +1 -0
  157. package/dist/scripts/codex-native-pre-post.d.ts +26 -0
  158. package/dist/scripts/codex-native-pre-post.d.ts.map +1 -0
  159. package/dist/scripts/codex-native-pre-post.js +118 -0
  160. package/dist/scripts/codex-native-pre-post.js.map +1 -0
  161. package/dist/scripts/notify-fallback-watcher.js +322 -21
  162. package/dist/scripts/notify-fallback-watcher.js.map +1 -1
  163. package/dist/scripts/notify-hook/auto-nudge.d.ts.map +1 -1
  164. package/dist/scripts/notify-hook/auto-nudge.js +5 -6
  165. package/dist/scripts/notify-hook/auto-nudge.js.map +1 -1
  166. package/dist/scripts/notify-hook/log.d.ts +2 -2
  167. package/dist/scripts/notify-hook/log.d.ts.map +1 -1
  168. package/dist/scripts/notify-hook/log.js +10 -2
  169. package/dist/scripts/notify-hook/log.js.map +1 -1
  170. package/dist/scripts/notify-hook/managed-tmux.d.ts.map +1 -1
  171. package/dist/scripts/notify-hook/managed-tmux.js +2 -0
  172. package/dist/scripts/notify-hook/managed-tmux.js.map +1 -1
  173. package/dist/scripts/notify-hook/orchestration-intent.d.ts +18 -0
  174. package/dist/scripts/notify-hook/orchestration-intent.d.ts.map +1 -0
  175. package/dist/scripts/notify-hook/orchestration-intent.js +72 -0
  176. package/dist/scripts/notify-hook/orchestration-intent.js.map +1 -0
  177. package/dist/scripts/notify-hook/process-runner.js.map +1 -1
  178. package/dist/scripts/notify-hook/ralph-session-resume.d.ts.map +1 -1
  179. package/dist/scripts/notify-hook/ralph-session-resume.js +7 -0
  180. package/dist/scripts/notify-hook/ralph-session-resume.js.map +1 -1
  181. package/dist/scripts/notify-hook/team-dispatch.d.ts +15 -6
  182. package/dist/scripts/notify-hook/team-dispatch.d.ts.map +1 -1
  183. package/dist/scripts/notify-hook/team-dispatch.js +125 -6
  184. package/dist/scripts/notify-hook/team-dispatch.js.map +1 -1
  185. package/dist/scripts/notify-hook/team-leader-nudge.d.ts +3 -2
  186. package/dist/scripts/notify-hook/team-leader-nudge.d.ts.map +1 -1
  187. package/dist/scripts/notify-hook/team-leader-nudge.js +165 -37
  188. package/dist/scripts/notify-hook/team-leader-nudge.js.map +1 -1
  189. package/dist/scripts/notify-hook/team-tmux-guard.d.ts +4 -1
  190. package/dist/scripts/notify-hook/team-tmux-guard.d.ts.map +1 -1
  191. package/dist/scripts/notify-hook/team-tmux-guard.js +33 -44
  192. package/dist/scripts/notify-hook/team-tmux-guard.js.map +1 -1
  193. package/dist/scripts/notify-hook/team-worker.d.ts.map +1 -1
  194. package/dist/scripts/notify-hook/team-worker.js +68 -5
  195. package/dist/scripts/notify-hook/team-worker.js.map +1 -1
  196. package/dist/scripts/notify-hook/utils.d.ts +1 -1
  197. package/dist/scripts/notify-hook/utils.d.ts.map +1 -1
  198. package/dist/scripts/notify-hook/utils.js.map +1 -1
  199. package/dist/scripts/notify-hook.js +55 -32
  200. package/dist/scripts/notify-hook.js.map +1 -1
  201. package/dist/team/__tests__/api-interop.test.js +344 -18
  202. package/dist/team/__tests__/api-interop.test.js.map +1 -1
  203. package/dist/team/__tests__/delivery-e2e-smoke.test.d.ts +2 -0
  204. package/dist/team/__tests__/delivery-e2e-smoke.test.d.ts.map +1 -0
  205. package/dist/team/__tests__/delivery-e2e-smoke.test.js +671 -0
  206. package/dist/team/__tests__/delivery-e2e-smoke.test.js.map +1 -0
  207. package/dist/team/__tests__/mcp-comm.test.js +5 -0
  208. package/dist/team/__tests__/mcp-comm.test.js.map +1 -1
  209. package/dist/team/__tests__/runtime.test.js +543 -15
  210. package/dist/team/__tests__/runtime.test.js.map +1 -1
  211. package/dist/team/__tests__/state.test.js +133 -8
  212. package/dist/team/__tests__/state.test.js.map +1 -1
  213. package/dist/team/__tests__/team-ops-contract.test.js +4 -0
  214. package/dist/team/__tests__/team-ops-contract.test.js.map +1 -1
  215. package/dist/team/__tests__/tmux-session.test.js +160 -0
  216. package/dist/team/__tests__/tmux-session.test.js.map +1 -1
  217. package/dist/team/__tests__/worker-bootstrap.test.js +19 -1
  218. package/dist/team/__tests__/worker-bootstrap.test.js.map +1 -1
  219. package/dist/team/api-interop.d.ts.map +1 -1
  220. package/dist/team/api-interop.js +95 -23
  221. package/dist/team/api-interop.js.map +1 -1
  222. package/dist/team/contracts.d.ts +11 -1
  223. package/dist/team/contracts.d.ts.map +1 -1
  224. package/dist/team/contracts.js +29 -0
  225. package/dist/team/contracts.js.map +1 -1
  226. package/dist/team/delivery-log.d.ts +14 -0
  227. package/dist/team/delivery-log.d.ts.map +1 -0
  228. package/dist/team/delivery-log.js +35 -0
  229. package/dist/team/delivery-log.js.map +1 -0
  230. package/dist/team/idle-nudge.d.ts +2 -2
  231. package/dist/team/idle-nudge.js +2 -2
  232. package/dist/team/mcp-comm.d.ts +4 -0
  233. package/dist/team/mcp-comm.d.ts.map +1 -1
  234. package/dist/team/mcp-comm.js +84 -1
  235. package/dist/team/mcp-comm.js.map +1 -1
  236. package/dist/team/pane-status.d.ts +149 -0
  237. package/dist/team/pane-status.d.ts.map +1 -0
  238. package/dist/team/pane-status.js +558 -0
  239. package/dist/team/pane-status.js.map +1 -0
  240. package/dist/team/reminder-intents.d.ts +11 -0
  241. package/dist/team/reminder-intents.d.ts.map +1 -0
  242. package/dist/team/reminder-intents.js +40 -0
  243. package/dist/team/reminder-intents.js.map +1 -0
  244. package/dist/team/runtime-cli.d.ts +1 -1
  245. package/dist/team/runtime-cli.js +2 -2
  246. package/dist/team/runtime-cli.js.map +1 -1
  247. package/dist/team/runtime.d.ts +2 -1
  248. package/dist/team/runtime.d.ts.map +1 -1
  249. package/dist/team/runtime.js +409 -191
  250. package/dist/team/runtime.js.map +1 -1
  251. package/dist/team/scaling.d.ts.map +1 -1
  252. package/dist/team/scaling.js +6 -5
  253. package/dist/team/scaling.js.map +1 -1
  254. package/dist/team/state/dispatch.d.ts +4 -1
  255. package/dist/team/state/dispatch.d.ts.map +1 -1
  256. package/dist/team/state/dispatch.js +59 -18
  257. package/dist/team/state/dispatch.js.map +1 -1
  258. package/dist/team/state/mailbox.d.ts.map +1 -1
  259. package/dist/team/state/mailbox.js +45 -2
  260. package/dist/team/state/mailbox.js.map +1 -1
  261. package/dist/team/state/monitor.d.ts +2 -1
  262. package/dist/team/state/monitor.d.ts.map +1 -1
  263. package/dist/team/state/monitor.js +30 -1
  264. package/dist/team/state/monitor.js.map +1 -1
  265. package/dist/team/state/types.d.ts +5 -2
  266. package/dist/team/state/types.d.ts.map +1 -1
  267. package/dist/team/state/types.js.map +1 -1
  268. package/dist/team/state.d.ts +30 -3
  269. package/dist/team/state.d.ts.map +1 -1
  270. package/dist/team/state.js +170 -2
  271. package/dist/team/state.js.map +1 -1
  272. package/dist/team/team-ops.d.ts +5 -1
  273. package/dist/team/team-ops.d.ts.map +1 -1
  274. package/dist/team/team-ops.js +4 -0
  275. package/dist/team/team-ops.js.map +1 -1
  276. package/dist/team/tmux-session.d.ts +2 -0
  277. package/dist/team/tmux-session.d.ts.map +1 -1
  278. package/dist/team/tmux-session.js +19 -3
  279. package/dist/team/tmux-session.js.map +1 -1
  280. package/dist/team/worker-bootstrap.d.ts +4 -0
  281. package/dist/team/worker-bootstrap.d.ts.map +1 -1
  282. package/dist/team/worker-bootstrap.js +33 -6
  283. package/dist/team/worker-bootstrap.js.map +1 -1
  284. package/dist/utils/__tests__/paths.test.js +63 -1
  285. package/dist/utils/__tests__/paths.test.js.map +1 -1
  286. package/dist/utils/__tests__/platform-command.test.js +50 -4
  287. package/dist/utils/__tests__/platform-command.test.js.map +1 -1
  288. package/dist/utils/paths.d.ts +12 -0
  289. package/dist/utils/paths.d.ts.map +1 -1
  290. package/dist/utils/paths.js +44 -2
  291. package/dist/utils/paths.js.map +1 -1
  292. package/dist/utils/platform-command.d.ts.map +1 -1
  293. package/dist/utils/platform-command.js +13 -5
  294. package/dist/utils/platform-command.js.map +1 -1
  295. package/dist/utils/sleep.d.ts.map +1 -1
  296. package/dist/utils/sleep.js +10 -1
  297. package/dist/utils/sleep.js.map +1 -1
  298. package/package.json +1 -1
  299. package/prompts/analyst.md +2 -2
  300. package/prompts/api-reviewer.md +2 -2
  301. package/prompts/architect.md +2 -2
  302. package/prompts/build-fixer.md +2 -2
  303. package/prompts/code-reviewer.md +2 -2
  304. package/prompts/code-simplifier.md +1 -1
  305. package/prompts/critic.md +2 -2
  306. package/prompts/debugger.md +3 -2
  307. package/prompts/dependency-expert.md +2 -2
  308. package/prompts/designer.md +2 -2
  309. package/prompts/executor.md +3 -2
  310. package/prompts/explore.md +2 -2
  311. package/prompts/git-master.md +2 -2
  312. package/prompts/information-architect.md +15 -102
  313. package/prompts/performance-reviewer.md +2 -2
  314. package/prompts/planner.md +3 -2
  315. package/prompts/product-analyst.md +2 -2
  316. package/prompts/product-manager.md +2 -2
  317. package/prompts/qa-tester.md +2 -2
  318. package/prompts/quality-reviewer.md +2 -2
  319. package/prompts/quality-strategist.md +2 -2
  320. package/prompts/researcher.md +2 -2
  321. package/prompts/security-reviewer.md +2 -2
  322. package/prompts/sisyphus-lite.md +2 -2
  323. package/prompts/style-reviewer.md +2 -2
  324. package/prompts/team-executor.md +2 -2
  325. package/prompts/test-engineer.md +2 -2
  326. package/prompts/ux-researcher.md +2 -2
  327. package/prompts/verifier.md +3 -2
  328. package/prompts/vision.md +2 -2
  329. package/prompts/writer.md +2 -2
  330. package/skills/team/SKILL.md +18 -33
  331. package/src/scripts/__tests__/codex-native-hook.test.ts +1346 -0
  332. package/src/scripts/codex-native-hook.ts +983 -0
  333. package/src/scripts/codex-native-pre-post.ts +161 -0
  334. package/src/scripts/notify-fallback-watcher.ts +378 -29
  335. package/src/scripts/notify-hook/auto-nudge.ts +5 -10
  336. package/src/scripts/notify-hook/log.ts +18 -4
  337. package/src/scripts/notify-hook/managed-tmux.ts +1 -0
  338. package/src/scripts/notify-hook/orchestration-intent.ts +82 -0
  339. package/src/scripts/notify-hook/process-runner.ts +4 -4
  340. package/src/scripts/notify-hook/ralph-session-resume.ts +9 -0
  341. package/src/scripts/notify-hook/team-dispatch.ts +134 -6
  342. package/src/scripts/notify-hook/team-leader-nudge.ts +183 -37
  343. package/src/scripts/notify-hook/team-tmux-guard.ts +35 -43
  344. package/src/scripts/notify-hook/team-worker.ts +73 -4
  345. package/src/scripts/notify-hook/utils.ts +1 -1
  346. package/src/scripts/notify-hook.ts +64 -32
  347. package/templates/AGENTS.md +21 -11
  348. package/README.de.md +0 -263
  349. package/README.el.md +0 -223
  350. package/README.es.md +0 -263
  351. package/README.fr.md +0 -263
  352. package/README.it.md +0 -263
  353. package/README.ja.md +0 -264
  354. package/README.ko.md +0 -264
  355. package/README.pl.md +0 -216
  356. package/README.pt.md +0 -263
  357. package/README.ru.md +0 -263
  358. package/README.tr.md +0 -263
  359. package/README.vi.md +0 -223
  360. package/README.zh-TW.md +0 -293
  361. package/README.zh.md +0 -264
  362. package/dist/mcp/__tests__/team-server-cleanup.test.d.ts +0 -2
  363. package/dist/mcp/__tests__/team-server-cleanup.test.d.ts.map +0 -1
  364. package/dist/mcp/__tests__/team-server-cleanup.test.js +0 -219
  365. package/dist/mcp/__tests__/team-server-cleanup.test.js.map +0 -1
  366. package/dist/mcp/__tests__/team-server-runtime-deps.test.d.ts +0 -2
  367. package/dist/mcp/__tests__/team-server-runtime-deps.test.d.ts.map +0 -1
  368. package/dist/mcp/__tests__/team-server-runtime-deps.test.js +0 -13
  369. package/dist/mcp/__tests__/team-server-runtime-deps.test.js.map +0 -1
  370. package/dist/mcp/__tests__/team-server-wait.test.d.ts +0 -2
  371. package/dist/mcp/__tests__/team-server-wait.test.d.ts.map +0 -1
  372. package/dist/mcp/__tests__/team-server-wait.test.js +0 -155
  373. package/dist/mcp/__tests__/team-server-wait.test.js.map +0 -1
  374. package/dist/mcp/team-server.d.ts +0 -24
  375. package/dist/mcp/team-server.d.ts.map +0 -1
  376. package/dist/mcp/team-server.js +0 -482
  377. package/dist/mcp/team-server.js.map +0 -1
@@ -1,219 +0,0 @@
1
- import { describe, it } from 'node:test';
2
- import assert from 'node:assert/strict';
3
- import { mkdtemp, rm, writeFile, mkdir, chmod, readFile } from 'fs/promises';
4
- import { join } from 'path';
5
- import { tmpdir, homedir } from 'os';
6
- import { initTeamState, readTeamConfig, saveTeamConfig } from '../../team/state.js';
7
- const OMX_JOBS_DIR = join(homedir(), '.omx', 'team-jobs');
8
- async function writeJobFiles(jobId, job, panes) {
9
- await mkdir(OMX_JOBS_DIR, { recursive: true });
10
- await writeFile(join(OMX_JOBS_DIR, `${jobId}.json`), JSON.stringify(job));
11
- await writeFile(join(OMX_JOBS_DIR, `${jobId}-panes.json`), JSON.stringify(panes));
12
- }
13
- async function cleanupJobFiles(jobId) {
14
- await rm(join(OMX_JOBS_DIR, `${jobId}.json`), { force: true });
15
- await rm(join(OMX_JOBS_DIR, `${jobId}-panes.json`), { force: true });
16
- }
17
- async function loadTeamServer() {
18
- process.env.OMX_TEAM_SERVER_DISABLE_AUTO_START = '1';
19
- return await import('../team-server.js');
20
- }
21
- describe('team-server cleanup hardening', () => {
22
- it('intersects live-session candidates with team config + panes file identities before kill', async () => {
23
- const cwd = await mkdtemp(join(tmpdir(), 'omx-team-cleanup-identity-'));
24
- const fakeBinDir = await mkdtemp(join(tmpdir(), 'omx-team-cleanup-bin-'));
25
- const tmuxLogPath = join(fakeBinDir, 'tmux.log');
26
- const tmuxStubPath = join(fakeBinDir, 'tmux');
27
- const previousPath = process.env.PATH;
28
- const jobId = `omx-${Date.now().toString(36)}`;
29
- try {
30
- await writeFile(tmuxStubPath, `#!/bin/sh
31
- set -eu
32
- printf '%s\\n' "$*" >> "${tmuxLogPath}"
33
- if [ "$1" = "list-panes" ]; then
34
- printf '%s\\n' "%2" "%3" "%999"
35
- exit 0
36
- fi
37
- exit 0
38
- `);
39
- await chmod(tmuxStubPath, 0o755);
40
- process.env.PATH = `${fakeBinDir}:${previousPath ?? ''}`;
41
- await initTeamState('cleanup-team', 'cleanup', 'executor', 2, cwd);
42
- const config = await readTeamConfig('cleanup-team', cwd);
43
- assert.ok(config);
44
- if (!config)
45
- return;
46
- config.tmux_session = 'omx-team-cleanup-team';
47
- config.workers[0].pane_id = '%2';
48
- config.workers[1].pane_id = '%3';
49
- config.leader_pane_id = '%1';
50
- config.hud_pane_id = '%9';
51
- await saveTeamConfig(config, cwd);
52
- await writeJobFiles(jobId, {
53
- status: 'running',
54
- startedAt: Date.now(),
55
- teamName: 'cleanup-team',
56
- cwd,
57
- }, {
58
- paneIds: ['%2', '%7'],
59
- leaderPaneId: '%1',
60
- });
61
- const { handleTeamToolCall } = await loadTeamServer();
62
- const response = await handleTeamToolCall({
63
- params: {
64
- name: 'omx_run_team_cleanup',
65
- arguments: { job_id: jobId, grace_ms: 10 },
66
- },
67
- });
68
- const legacy = response.content[0]?.text ?? '';
69
- const summary = JSON.parse(response.content[1]?.text ?? '{}');
70
- assert.equal(legacy, 'Cleaned up 3 worker pane(s).');
71
- assert.equal(summary.targets?.from_live_session, 2);
72
- assert.equal(summary.targets?.deduped_total, 3);
73
- const tmuxLog = await readFile(tmuxLogPath, 'utf-8');
74
- assert.match(tmuxLog, /kill-pane -t %2/);
75
- assert.match(tmuxLog, /kill-pane -t %3/);
76
- assert.match(tmuxLog, /kill-pane -t %7/);
77
- assert.doesNotMatch(tmuxLog, /kill-pane -t %999/);
78
- }
79
- finally {
80
- if (typeof previousPath === 'string')
81
- process.env.PATH = previousPath;
82
- else
83
- delete process.env.PATH;
84
- await cleanupJobFiles(jobId);
85
- await rm(cwd, { recursive: true, force: true });
86
- await rm(fakeBinDir, { recursive: true, force: true });
87
- }
88
- });
89
- it('does not broad-sweep session panes during cleanup target selection', async () => {
90
- const cwd = await mkdtemp(join(tmpdir(), 'omx-team-cleanup-sweep-'));
91
- const fakeBinDir = await mkdtemp(join(tmpdir(), 'omx-team-cleanup-sweep-bin-'));
92
- const tmuxLogPath = join(fakeBinDir, 'tmux.log');
93
- const tmuxStubPath = join(fakeBinDir, 'tmux');
94
- const previousPath = process.env.PATH;
95
- const jobId = `omx-${Date.now().toString(36)}`;
96
- try {
97
- await writeFile(tmuxStubPath, `#!/bin/sh
98
- set -eu
99
- printf '%s\\n' "$*" >> "${tmuxLogPath}"
100
- if [ "$1" = "list-panes" ]; then
101
- printf '%s\\n' "%2" "%999" "%1000"
102
- exit 0
103
- fi
104
- exit 0
105
- `);
106
- await chmod(tmuxStubPath, 0o755);
107
- process.env.PATH = `${fakeBinDir}:${previousPath ?? ''}`;
108
- await initTeamState('cleanup-sweep', 'cleanup', 'executor', 1, cwd);
109
- const config = await readTeamConfig('cleanup-sweep', cwd);
110
- assert.ok(config);
111
- if (!config)
112
- return;
113
- config.tmux_session = 'omx-team-cleanup-sweep';
114
- config.workers[0].pane_id = '%2';
115
- await saveTeamConfig(config, cwd);
116
- await writeJobFiles(jobId, {
117
- status: 'running',
118
- startedAt: Date.now(),
119
- teamName: 'cleanup-sweep',
120
- cwd,
121
- }, {
122
- paneIds: ['%2'],
123
- leaderPaneId: '',
124
- });
125
- const { handleTeamToolCall } = await loadTeamServer();
126
- await handleTeamToolCall({
127
- params: {
128
- name: 'omx_run_team_cleanup',
129
- arguments: { job_id: jobId, grace_ms: 10 },
130
- },
131
- });
132
- const tmuxLog = await readFile(tmuxLogPath, 'utf-8');
133
- assert.match(tmuxLog, /kill-pane -t %2/);
134
- assert.doesNotMatch(tmuxLog, /kill-pane -t %999/);
135
- assert.doesNotMatch(tmuxLog, /kill-pane -t %1000/);
136
- }
137
- finally {
138
- if (typeof previousPath === 'string')
139
- process.env.PATH = previousPath;
140
- else
141
- delete process.env.PATH;
142
- await cleanupJobFiles(jobId);
143
- await rm(cwd, { recursive: true, force: true });
144
- await rm(fakeBinDir, { recursive: true, force: true });
145
- }
146
- });
147
- it('returns unchanged legacy content[0].text plus additive structured JSON in content[1].text', async () => {
148
- const cwd = await mkdtemp(join(tmpdir(), 'omx-team-cleanup-legacy-'));
149
- const fakeBinDir = await mkdtemp(join(tmpdir(), 'omx-team-cleanup-legacy-bin-'));
150
- const tmuxStubPath = join(fakeBinDir, 'tmux');
151
- const previousPath = process.env.PATH;
152
- const jobId = `omx-${Date.now().toString(36)}`;
153
- try {
154
- await writeFile(tmuxStubPath, '#!/bin/sh\nexit 0\n');
155
- await chmod(tmuxStubPath, 0o755);
156
- process.env.PATH = `${fakeBinDir}:${previousPath ?? ''}`;
157
- await writeJobFiles(jobId, {
158
- status: 'running',
159
- startedAt: Date.now(),
160
- }, {
161
- paneIds: ['%21', '%21', '%22'],
162
- leaderPaneId: '%1',
163
- });
164
- const { handleTeamToolCall } = await loadTeamServer();
165
- const response = await handleTeamToolCall({
166
- params: {
167
- name: 'omx_run_team_cleanup',
168
- arguments: { job_id: jobId, grace_ms: 10 },
169
- },
170
- });
171
- assert.equal(response.content[0]?.text, 'Cleaned up 2 worker pane(s).');
172
- const summary = JSON.parse(response.content[1]?.text ?? '{}');
173
- assert.equal(summary.job_id, jobId);
174
- assert.equal(summary.status, 'cleaned');
175
- assert.equal(summary.targets?.deduped_total, 2);
176
- assert.equal(typeof summary.cleaned_up_at, 'string');
177
- assert.equal(summary.grace_ms, 10);
178
- }
179
- finally {
180
- if (typeof previousPath === 'string')
181
- process.env.PATH = previousPath;
182
- else
183
- delete process.env.PATH;
184
- await cleanupJobFiles(jobId);
185
- await rm(cwd, { recursive: true, force: true });
186
- await rm(fakeBinDir, { recursive: true, force: true });
187
- }
188
- });
189
- it('returns deterministic noop summary when no killable panes remain', async () => {
190
- const jobId = `omx-${Date.now().toString(36)}`;
191
- try {
192
- await mkdir(OMX_JOBS_DIR, { recursive: true });
193
- await writeFile(join(OMX_JOBS_DIR, `${jobId}.json`), JSON.stringify({
194
- status: 'running',
195
- startedAt: Date.now(),
196
- }));
197
- await writeFile(join(OMX_JOBS_DIR, `${jobId}-panes.json`), JSON.stringify({
198
- paneIds: [],
199
- leaderPaneId: '',
200
- }));
201
- const { handleTeamToolCall } = await loadTeamServer();
202
- const response = await handleTeamToolCall({
203
- params: {
204
- name: 'omx_run_team_cleanup',
205
- arguments: { job_id: jobId, grace_ms: 10 },
206
- },
207
- });
208
- assert.equal(response.content[0]?.text, 'No pane IDs recorded for this job -- nothing to clean up.');
209
- const summary = JSON.parse(response.content[1]?.text ?? '{}');
210
- assert.equal(summary.status, 'noop');
211
- assert.equal(summary.targets?.deduped_total, 0);
212
- assert.deepEqual(summary.kill, { attempted: 0, succeeded: 0, failed: 0 });
213
- }
214
- finally {
215
- await cleanupJobFiles(jobId);
216
- }
217
- });
218
- });
219
- //# sourceMappingURL=team-server-cleanup.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"team-server-cleanup.test.js","sourceRoot":"","sources":["../../../src/mcp/__tests__/team-server-cleanup.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=team-server-runtime-deps.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"team-server-runtime-deps.test.d.ts","sourceRoot":"","sources":["../../../src/mcp/__tests__/team-server-runtime-deps.test.ts"],"names":[],"mappings":""}
@@ -1,13 +0,0 @@
1
- import { describe, it } from 'node:test';
2
- import assert from 'node:assert/strict';
3
- import { readFileSync } from 'node:fs';
4
- import { join } from 'node:path';
5
- describe('team MCP runtime dependency contract', () => {
6
- it('declares zod as a top-level runtime dependency because team-server imports it directly', () => {
7
- const teamServerSource = readFileSync(join(process.cwd(), 'src', 'mcp', 'team-server.ts'), 'utf8');
8
- assert.match(teamServerSource, /from ['\"]zod['\"]/);
9
- const pkg = JSON.parse(readFileSync(join(process.cwd(), 'package.json'), 'utf8'));
10
- assert.equal(typeof pkg.dependencies?.zod, 'string', 'package.json must declare zod in top-level runtime dependencies when shipped JS imports it directly');
11
- });
12
- });
13
- //# sourceMappingURL=team-server-runtime-deps.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"team-server-runtime-deps.test.js","sourceRoot":"","sources":["../../../src/mcp/__tests__/team-server-runtime-deps.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAMjC,QAAQ,CAAC,sCAAsC,EAAE,GAAG,EAAE;IACpD,EAAE,CAAC,wFAAwF,EAAE,GAAG,EAAE;QAChG,MAAM,gBAAgB,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,gBAAgB,CAAC,EAAE,MAAM,CAAC,CAAC;QACnG,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,oBAAoB,CAAC,CAAC;QAErD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAgB,CAAC;QACjG,MAAM,CAAC,KAAK,CACV,OAAO,GAAG,CAAC,YAAY,EAAE,GAAG,EAC5B,QAAQ,EACR,qGAAqG,CACtG,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=team-server-wait.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"team-server-wait.test.d.ts","sourceRoot":"","sources":["../../../src/mcp/__tests__/team-server-wait.test.ts"],"names":[],"mappings":""}
@@ -1,155 +0,0 @@
1
- import { describe, it } from 'node:test';
2
- import assert from 'node:assert/strict';
3
- import { mkdtemp, rm, writeFile, mkdir } from 'node:fs/promises';
4
- import { tmpdir, homedir } from 'node:os';
5
- import { join } from 'node:path';
6
- import { initTeamState, appendTeamEvent } from '../../team/state.js';
7
- const OMX_JOBS_DIR = join(homedir(), '.omx', 'team-jobs');
8
- async function writeJobFiles(jobId, job, panes) {
9
- await mkdir(OMX_JOBS_DIR, { recursive: true });
10
- await writeFile(join(OMX_JOBS_DIR, `${jobId}.json`), JSON.stringify(job));
11
- await writeFile(join(OMX_JOBS_DIR, `${jobId}-panes.json`), JSON.stringify(panes));
12
- }
13
- async function cleanupJobFiles(jobId) {
14
- await rm(join(OMX_JOBS_DIR, `${jobId}.json`), { force: true });
15
- await rm(join(OMX_JOBS_DIR, `${jobId}-panes.json`), { force: true });
16
- }
17
- async function loadTeamServer() {
18
- process.env.OMX_TEAM_SERVER_DISABLE_AUTO_START = '1';
19
- return await import('../team-server.js');
20
- }
21
- describe('team-server wait semantics', () => {
22
- it('keeps default terminal semantics unchanged when wake_on is omitted', async () => {
23
- const cwd = await mkdtemp(join(tmpdir(), 'omx-team-wait-default-'));
24
- const jobId = `omx-${Date.now().toString(36)}`;
25
- try {
26
- await initTeamState('wait-default', 'task', 'executor', 1, cwd);
27
- await writeJobFiles(jobId, {
28
- status: 'completed',
29
- startedAt: Date.now() - 1000,
30
- teamName: 'wait-default',
31
- cwd,
32
- result: JSON.stringify({ status: 'completed', ok: true }),
33
- }, {
34
- paneIds: ['%2'],
35
- leaderPaneId: '%1',
36
- });
37
- const { handleTeamToolCall } = await loadTeamServer();
38
- const response = await handleTeamToolCall({
39
- params: {
40
- name: 'omx_run_team_wait',
41
- arguments: { job_id: jobId, timeout_ms: 50 },
42
- },
43
- });
44
- const payload = JSON.parse(response.content[0]?.text ?? '{}');
45
- assert.equal(payload.status, 'completed');
46
- assert.equal(payload.result?.ok, true);
47
- }
48
- finally {
49
- await cleanupJobFiles(jobId);
50
- await rm(cwd, { recursive: true, force: true });
51
- }
52
- });
53
- it('returns next event with cursor in wake_on=event mode', async () => {
54
- const cwd = await mkdtemp(join(tmpdir(), 'omx-team-wait-event-'));
55
- const jobId = `omx-${Date.now().toString(36)}`;
56
- try {
57
- await initTeamState('wait-event', 'task', 'executor', 1, cwd);
58
- const baseline = await appendTeamEvent('wait-event', {
59
- type: 'team_leader_nudge',
60
- worker: 'leader-fixed',
61
- reason: 'baseline',
62
- }, cwd);
63
- const next = await appendTeamEvent('wait-event', {
64
- type: 'worker_state_changed',
65
- worker: 'worker-1',
66
- state: 'blocked',
67
- prev_state: 'working',
68
- reason: 'needs_follow_up',
69
- }, cwd);
70
- await writeJobFiles(jobId, {
71
- status: 'running',
72
- startedAt: Date.now() - 1000,
73
- teamName: 'wait-event',
74
- cwd,
75
- }, {
76
- paneIds: [],
77
- leaderPaneId: '%1',
78
- });
79
- const { handleTeamToolCall } = await loadTeamServer();
80
- const response = await handleTeamToolCall({
81
- params: {
82
- name: 'omx_run_team_wait',
83
- arguments: {
84
- job_id: jobId,
85
- timeout_ms: 100,
86
- wake_on: 'event',
87
- after_event_id: baseline.event_id,
88
- },
89
- },
90
- });
91
- const payload = JSON.parse(response.content[0]?.text ?? '{}');
92
- assert.equal(payload.status, 'running');
93
- assert.equal(payload.wake_on, 'event');
94
- assert.equal(payload.cursor, next.event_id);
95
- assert.equal(payload.event?.event_id, next.event_id);
96
- assert.equal(payload.event?.type, 'worker_state_changed');
97
- assert.equal(payload.event?.state, 'blocked');
98
- assert.equal(payload.event?.prev_state, 'working');
99
- }
100
- finally {
101
- await cleanupJobFiles(jobId);
102
- await rm(cwd, { recursive: true, force: true });
103
- }
104
- });
105
- it('normalizes legacy worker_idle events in wake_on=event mode', async () => {
106
- const cwd = await mkdtemp(join(tmpdir(), 'omx-team-wait-legacy-'));
107
- const jobId = `omx-${Date.now().toString(36)}`;
108
- try {
109
- await initTeamState('wait-legacy', 'task', 'executor', 1, cwd);
110
- const baseline = await appendTeamEvent('wait-legacy', {
111
- type: 'team_leader_nudge',
112
- worker: 'leader-fixed',
113
- reason: 'baseline',
114
- }, cwd);
115
- const idleEvent = await appendTeamEvent('wait-legacy', {
116
- type: 'worker_idle',
117
- worker: 'worker-1',
118
- prev_state: 'working',
119
- task_id: '1',
120
- }, cwd);
121
- await writeJobFiles(jobId, {
122
- status: 'running',
123
- startedAt: Date.now() - 1000,
124
- teamName: 'wait-legacy',
125
- cwd,
126
- }, {
127
- paneIds: [],
128
- leaderPaneId: '%1',
129
- });
130
- const { handleTeamToolCall } = await loadTeamServer();
131
- const response = await handleTeamToolCall({
132
- params: {
133
- name: 'omx_run_team_wait',
134
- arguments: {
135
- job_id: jobId,
136
- timeout_ms: 100,
137
- wake_on: 'event',
138
- after_event_id: baseline.event_id,
139
- },
140
- },
141
- });
142
- const payload = JSON.parse(response.content[0]?.text ?? '{}');
143
- assert.equal(payload.cursor, idleEvent.event_id);
144
- assert.equal(payload.event?.type, 'worker_state_changed');
145
- assert.equal(payload.event?.source_type, 'worker_idle');
146
- assert.equal(payload.event?.state, 'idle');
147
- assert.equal(payload.event?.prev_state, 'working');
148
- }
149
- finally {
150
- await cleanupJobFiles(jobId);
151
- await rm(cwd, { recursive: true, force: true });
152
- }
153
- });
154
- });
155
- //# sourceMappingURL=team-server-wait.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"team-server-wait.test.js","sourceRoot":"","sources":["../../../src/mcp/__tests__/team-server-wait.test.ts"],"names":[],"mappings":"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"}
@@ -1,24 +0,0 @@
1
- /**
2
- * OMX Team Runner MCP Server
3
- * Provides omx_run_team_* tools for spawning and managing tmux CLI worker teams.
4
- * Storage: ~/.omx/team-jobs/
5
- */
6
- export declare function handleTeamToolCall(request: {
7
- params: {
8
- name: string;
9
- arguments?: Record<string, unknown>;
10
- };
11
- }): Promise<{
12
- content: {
13
- type: "text";
14
- text: string;
15
- }[];
16
- isError?: undefined;
17
- } | {
18
- content: {
19
- type: "text";
20
- text: string;
21
- }[];
22
- isError: boolean;
23
- }>;
24
- //# sourceMappingURL=team-server.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"team-server.d.ts","sourceRoot":"","sources":["../../src/mcp/team-server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAmTH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE;IAChD,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACrC,CAAC;CACH;;;;;;;;;;;;GA0PA"}