claudecode-omc 4.8.4 → 4.9.4

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 (1648) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/.claude-plugin/plugin.json +3 -3
  3. package/README.de.md +26 -0
  4. package/README.es.md +26 -0
  5. package/README.fr.md +26 -0
  6. package/README.it.md +26 -0
  7. package/README.ja.md +26 -0
  8. package/README.ko.md +26 -0
  9. package/README.md +80 -133
  10. package/README.pt.md +26 -0
  11. package/README.ru.md +26 -0
  12. package/README.tr.md +26 -0
  13. package/README.vi.md +26 -0
  14. package/README.zh.md +26 -0
  15. package/agents/analyst.md +1 -0
  16. package/agents/architect.md +1 -0
  17. package/agents/code-reviewer.md +1 -0
  18. package/agents/code-simplifier.md +1 -0
  19. package/agents/critic.md +1 -0
  20. package/agents/debugger.md +1 -0
  21. package/agents/designer.md +1 -0
  22. package/agents/document-specialist.md +1 -0
  23. package/agents/executor.md +1 -0
  24. package/agents/explore.md +21 -19
  25. package/agents/git-master.md +1 -0
  26. package/agents/planner.md +1 -0
  27. package/agents/qa-tester.md +1 -0
  28. package/agents/scientist.md +1 -0
  29. package/agents/security-reviewer.md +1 -0
  30. package/agents/test-engineer.md +1 -0
  31. package/agents/tracer.md +161 -0
  32. package/agents/verifier.md +21 -13
  33. package/agents/writer.md +1 -0
  34. package/bridge/cli.cjs +37707 -25194
  35. package/bridge/gyoshu_bridge.py +60 -15
  36. package/bridge/mcp-server.cjs +1323 -503
  37. package/bridge/runtime-cli.cjs +1220 -328
  38. package/bridge/team-bridge.cjs +140 -112
  39. package/bridge/team-mcp.cjs +325 -107
  40. package/bridge/team.js +2572 -1462
  41. package/dist/__tests__/agent-registry.test.js +5 -3
  42. package/dist/__tests__/agent-registry.test.js.map +1 -1
  43. package/dist/__tests__/auto-slash-aliases.test.js +149 -68
  44. package/dist/__tests__/auto-slash-aliases.test.js.map +1 -1
  45. package/dist/__tests__/auto-update.test.js +502 -3
  46. package/dist/__tests__/auto-update.test.js.map +1 -1
  47. package/dist/__tests__/background-cleanup-directory.test.d.ts +2 -0
  48. package/dist/__tests__/background-cleanup-directory.test.d.ts.map +1 -0
  49. package/dist/__tests__/background-cleanup-directory.test.js +57 -0
  50. package/dist/__tests__/background-cleanup-directory.test.js.map +1 -0
  51. package/dist/__tests__/bedrock-lm-suffix-hook.test.d.ts +24 -0
  52. package/dist/__tests__/bedrock-lm-suffix-hook.test.d.ts.map +1 -0
  53. package/dist/__tests__/bedrock-lm-suffix-hook.test.js +210 -0
  54. package/dist/__tests__/bedrock-lm-suffix-hook.test.js.map +1 -0
  55. package/dist/__tests__/cleanup-validation.test.js +5 -3
  56. package/dist/__tests__/cleanup-validation.test.js.map +1 -1
  57. package/dist/__tests__/context-guard-stop.test.js +20 -0
  58. package/dist/__tests__/context-guard-stop.test.js.map +1 -1
  59. package/dist/__tests__/context-safety.test.js +51 -22
  60. package/dist/__tests__/context-safety.test.js.map +1 -1
  61. package/dist/__tests__/deep-interview-provider-options.test.d.ts +2 -0
  62. package/dist/__tests__/deep-interview-provider-options.test.d.ts.map +1 -0
  63. package/dist/__tests__/deep-interview-provider-options.test.js +79 -0
  64. package/dist/__tests__/deep-interview-provider-options.test.js.map +1 -0
  65. package/dist/__tests__/delegation-enforcement-levels.test.js +4 -0
  66. package/dist/__tests__/delegation-enforcement-levels.test.js.map +1 -1
  67. package/dist/__tests__/delegation-enforcer.test.js +12 -0
  68. package/dist/__tests__/delegation-enforcer.test.js.map +1 -1
  69. package/dist/__tests__/doctor-conflicts.test.js +111 -24
  70. package/dist/__tests__/doctor-conflicts.test.js.map +1 -1
  71. package/dist/__tests__/featured-contributors-generator.test.d.ts +2 -0
  72. package/dist/__tests__/featured-contributors-generator.test.d.ts.map +1 -0
  73. package/dist/__tests__/featured-contributors-generator.test.js +118 -0
  74. package/dist/__tests__/featured-contributors-generator.test.js.map +1 -0
  75. package/dist/__tests__/hooks/learner/bridge.test.js +27 -1
  76. package/dist/__tests__/hooks/learner/bridge.test.js.map +1 -1
  77. package/dist/__tests__/hooks/learner/transliteration-map.test.d.ts +8 -0
  78. package/dist/__tests__/hooks/learner/transliteration-map.test.d.ts.map +1 -0
  79. package/dist/__tests__/hooks/learner/transliteration-map.test.js +183 -0
  80. package/dist/__tests__/hooks/learner/transliteration-map.test.js.map +1 -0
  81. package/dist/__tests__/hooks-command-escaping.test.d.ts +2 -0
  82. package/dist/__tests__/hooks-command-escaping.test.d.ts.map +1 -0
  83. package/dist/__tests__/hooks-command-escaping.test.js +41 -0
  84. package/dist/__tests__/hooks-command-escaping.test.js.map +1 -0
  85. package/dist/__tests__/hooks.test.js +13 -9
  86. package/dist/__tests__/hooks.test.js.map +1 -1
  87. package/dist/__tests__/hud/background-tasks.test.d.ts +2 -0
  88. package/dist/__tests__/hud/background-tasks.test.d.ts.map +1 -0
  89. package/dist/__tests__/hud/background-tasks.test.js +90 -0
  90. package/dist/__tests__/hud/background-tasks.test.js.map +1 -0
  91. package/dist/__tests__/hud/context.test.d.ts +2 -0
  92. package/dist/__tests__/hud/context.test.d.ts.map +1 -0
  93. package/dist/__tests__/hud/context.test.js +47 -0
  94. package/dist/__tests__/hud/context.test.js.map +1 -0
  95. package/dist/__tests__/hud/defaults.test.js +11 -0
  96. package/dist/__tests__/hud/defaults.test.js.map +1 -1
  97. package/dist/__tests__/hud/git.test.js +2 -1
  98. package/dist/__tests__/hud/git.test.js.map +1 -1
  99. package/dist/__tests__/hud/mission-board-state.test.js +32 -0
  100. package/dist/__tests__/hud/mission-board-state.test.js.map +1 -1
  101. package/dist/__tests__/hud/mission-board.test.js +1 -0
  102. package/dist/__tests__/hud/mission-board.test.js.map +1 -1
  103. package/dist/__tests__/hud/omc-state.test.d.ts +2 -0
  104. package/dist/__tests__/hud/omc-state.test.d.ts.map +1 -0
  105. package/dist/__tests__/hud/omc-state.test.js +123 -0
  106. package/dist/__tests__/hud/omc-state.test.js.map +1 -0
  107. package/dist/__tests__/hud/render-rate-limits-priority.test.js +1 -0
  108. package/dist/__tests__/hud/render-rate-limits-priority.test.js.map +1 -1
  109. package/dist/__tests__/hud/render.test.js +125 -0
  110. package/dist/__tests__/hud/render.test.js.map +1 -1
  111. package/dist/__tests__/hud/state.test.js +104 -47
  112. package/dist/__tests__/hud/state.test.js.map +1 -1
  113. package/dist/__tests__/hud/stdin.test.d.ts +2 -0
  114. package/dist/__tests__/hud/stdin.test.d.ts.map +1 -0
  115. package/dist/__tests__/hud/stdin.test.js +108 -0
  116. package/dist/__tests__/hud/stdin.test.js.map +1 -0
  117. package/dist/__tests__/hud/token-usage.test.d.ts +2 -0
  118. package/dist/__tests__/hud/token-usage.test.d.ts.map +1 -0
  119. package/dist/__tests__/hud/token-usage.test.js +143 -0
  120. package/dist/__tests__/hud/token-usage.test.js.map +1 -0
  121. package/dist/__tests__/hud/usage-api-lock.test.js +6 -3
  122. package/dist/__tests__/hud/usage-api-lock.test.js.map +1 -1
  123. package/dist/__tests__/hud/usage-api-stale.test.js +4 -2
  124. package/dist/__tests__/hud/usage-api-stale.test.js.map +1 -1
  125. package/dist/__tests__/hud/usage-api.test.js +128 -1
  126. package/dist/__tests__/hud/usage-api.test.js.map +1 -1
  127. package/dist/__tests__/hud/version-display.test.js +1 -0
  128. package/dist/__tests__/hud/version-display.test.js.map +1 -1
  129. package/dist/__tests__/hud/watch-mode-init.test.js +25 -3
  130. package/dist/__tests__/hud/watch-mode-init.test.js.map +1 -1
  131. package/dist/__tests__/hud-marketplace-resolution.test.js +25 -0
  132. package/dist/__tests__/hud-marketplace-resolution.test.js.map +1 -1
  133. package/dist/__tests__/hud-windows.test.js +11 -0
  134. package/dist/__tests__/hud-windows.test.js.map +1 -1
  135. package/dist/__tests__/installer-mcp-config.test.d.ts +2 -0
  136. package/dist/__tests__/installer-mcp-config.test.d.ts.map +1 -0
  137. package/dist/__tests__/installer-mcp-config.test.js +119 -0
  138. package/dist/__tests__/installer-mcp-config.test.js.map +1 -0
  139. package/dist/__tests__/installer-omc-reference.test.d.ts +2 -0
  140. package/dist/__tests__/installer-omc-reference.test.d.ts.map +1 -0
  141. package/dist/__tests__/installer-omc-reference.test.js +85 -0
  142. package/dist/__tests__/installer-omc-reference.test.js.map +1 -0
  143. package/dist/__tests__/job-management-sqlite.test.js +1 -1
  144. package/dist/__tests__/job-state-db.test.js +1 -1
  145. package/dist/__tests__/jobid-collision-safety.test.d.ts +10 -0
  146. package/dist/__tests__/jobid-collision-safety.test.d.ts.map +1 -0
  147. package/dist/__tests__/jobid-collision-safety.test.js +51 -0
  148. package/dist/__tests__/jobid-collision-safety.test.js.map +1 -0
  149. package/dist/__tests__/live-data.test.js +21 -0
  150. package/dist/__tests__/live-data.test.js.map +1 -1
  151. package/dist/__tests__/load-agent-prompt.test.js +10 -0
  152. package/dist/__tests__/load-agent-prompt.test.js.map +1 -1
  153. package/dist/__tests__/lsp-servers.test.js +14 -2
  154. package/dist/__tests__/lsp-servers.test.js.map +1 -1
  155. package/dist/__tests__/marketplace-metadata.test.d.ts +2 -0
  156. package/dist/__tests__/marketplace-metadata.test.d.ts.map +1 -0
  157. package/dist/__tests__/marketplace-metadata.test.js +20 -0
  158. package/dist/__tests__/marketplace-metadata.test.js.map +1 -0
  159. package/dist/__tests__/mcp-comm-inbox-dedup.test.d.ts +2 -0
  160. package/dist/__tests__/mcp-comm-inbox-dedup.test.d.ts.map +1 -0
  161. package/dist/__tests__/mcp-comm-inbox-dedup.test.js +105 -0
  162. package/dist/__tests__/mcp-comm-inbox-dedup.test.js.map +1 -0
  163. package/dist/__tests__/mnemosyne/finder.test.js +10 -0
  164. package/dist/__tests__/mnemosyne/finder.test.js.map +1 -1
  165. package/dist/__tests__/mode-names-ralplan.test.d.ts +2 -0
  166. package/dist/__tests__/mode-names-ralplan.test.d.ts.map +1 -0
  167. package/dist/__tests__/mode-names-ralplan.test.js +31 -0
  168. package/dist/__tests__/mode-names-ralplan.test.js.map +1 -0
  169. package/dist/__tests__/model-routing-esm.test.d.ts +2 -0
  170. package/dist/__tests__/model-routing-esm.test.d.ts.map +1 -0
  171. package/dist/__tests__/model-routing-esm.test.js +26 -0
  172. package/dist/__tests__/model-routing-esm.test.js.map +1 -0
  173. package/dist/__tests__/notepad.test.js +20 -0
  174. package/dist/__tests__/notepad.test.js.map +1 -1
  175. package/dist/__tests__/omc-cli-rendering.test.d.ts +2 -0
  176. package/dist/__tests__/omc-cli-rendering.test.d.ts.map +1 -0
  177. package/dist/__tests__/omc-cli-rendering.test.js +33 -0
  178. package/dist/__tests__/omc-cli-rendering.test.js.map +1 -0
  179. package/dist/__tests__/omc-tools-server.test.js +5 -5
  180. package/dist/__tests__/outbox-reader-partial-lines.test.d.ts +2 -0
  181. package/dist/__tests__/outbox-reader-partial-lines.test.d.ts.map +1 -0
  182. package/dist/__tests__/outbox-reader-partial-lines.test.js +49 -0
  183. package/dist/__tests__/outbox-reader-partial-lines.test.js.map +1 -0
  184. package/dist/__tests__/package-dir-resolution-regression.test.js +30 -0
  185. package/dist/__tests__/package-dir-resolution-regression.test.js.map +1 -1
  186. package/dist/__tests__/pipeline-signal-regex-escape.test.d.ts +2 -0
  187. package/dist/__tests__/pipeline-signal-regex-escape.test.d.ts.map +1 -0
  188. package/dist/__tests__/pipeline-signal-regex-escape.test.js +32 -0
  189. package/dist/__tests__/pipeline-signal-regex-escape.test.js.map +1 -0
  190. package/dist/__tests__/plugin-setup-devpaths.test.d.ts +2 -0
  191. package/dist/__tests__/plugin-setup-devpaths.test.d.ts.map +1 -0
  192. package/dist/__tests__/plugin-setup-devpaths.test.js +47 -0
  193. package/dist/__tests__/plugin-setup-devpaths.test.js.map +1 -0
  194. package/dist/__tests__/pre-compact-cwd.test.js +1 -1
  195. package/dist/__tests__/pre-tool-enforcer.test.js +101 -2
  196. package/dist/__tests__/pre-tool-enforcer.test.js.map +1 -1
  197. package/dist/__tests__/project-memory-merge.test.js +17 -0
  198. package/dist/__tests__/project-memory-merge.test.js.map +1 -1
  199. package/dist/__tests__/providers/bitbucket.test.js +70 -56
  200. package/dist/__tests__/providers/bitbucket.test.js.map +1 -1
  201. package/dist/__tests__/providers/gitea.test.js +36 -0
  202. package/dist/__tests__/providers/gitea.test.js.map +1 -1
  203. package/dist/__tests__/purge-stale-cache.test.js +17 -2
  204. package/dist/__tests__/purge-stale-cache.test.js.map +1 -1
  205. package/dist/__tests__/rate-limit-wait/daemon-bootstrap.test.js +7 -3
  206. package/dist/__tests__/rate-limit-wait/daemon-bootstrap.test.js.map +1 -1
  207. package/dist/__tests__/rate-limit-wait/integration.test.js +9 -5
  208. package/dist/__tests__/rate-limit-wait/integration.test.js.map +1 -1
  209. package/dist/__tests__/rate-limit-wait/tmux-detector.test.js +11 -11
  210. package/dist/__tests__/rate-limit-wait/tmux-detector.test.js.map +1 -1
  211. package/dist/__tests__/repo-slug-dots.test.d.ts +2 -0
  212. package/dist/__tests__/repo-slug-dots.test.d.ts.map +1 -0
  213. package/dist/__tests__/repo-slug-dots.test.js +24 -0
  214. package/dist/__tests__/repo-slug-dots.test.js.map +1 -0
  215. package/dist/__tests__/routing-force-inherit.test.js +31 -0
  216. package/dist/__tests__/routing-force-inherit.test.js.map +1 -1
  217. package/dist/__tests__/runtime-task-orphan.test.d.ts +2 -0
  218. package/dist/__tests__/runtime-task-orphan.test.d.ts.map +1 -0
  219. package/dist/__tests__/runtime-task-orphan.test.js +103 -0
  220. package/dist/__tests__/runtime-task-orphan.test.js.map +1 -0
  221. package/dist/__tests__/session-start-script-context.test.js +85 -0
  222. package/dist/__tests__/session-start-script-context.test.js.map +1 -1
  223. package/dist/__tests__/session-start-timeout-cleanup.test.d.ts +2 -0
  224. package/dist/__tests__/session-start-timeout-cleanup.test.d.ts.map +1 -0
  225. package/dist/__tests__/session-start-timeout-cleanup.test.js +26 -0
  226. package/dist/__tests__/session-start-timeout-cleanup.test.js.map +1 -0
  227. package/dist/__tests__/session-summary-pid-tracking.test.d.ts +2 -0
  228. package/dist/__tests__/session-summary-pid-tracking.test.d.ts.map +1 -0
  229. package/dist/__tests__/session-summary-pid-tracking.test.js +107 -0
  230. package/dist/__tests__/session-summary-pid-tracking.test.js.map +1 -0
  231. package/dist/__tests__/setup-claude-md-script.test.d.ts +2 -0
  232. package/dist/__tests__/setup-claude-md-script.test.d.ts.map +1 -0
  233. package/dist/__tests__/setup-claude-md-script.test.js +292 -0
  234. package/dist/__tests__/setup-claude-md-script.test.js.map +1 -0
  235. package/dist/__tests__/shared-state-locking.test.d.ts +10 -0
  236. package/dist/__tests__/shared-state-locking.test.d.ts.map +1 -0
  237. package/dist/__tests__/shared-state-locking.test.js +61 -0
  238. package/dist/__tests__/shared-state-locking.test.js.map +1 -0
  239. package/dist/__tests__/skills.test.js +135 -17
  240. package/dist/__tests__/skills.test.js.map +1 -1
  241. package/dist/__tests__/slack-fallback-removal.test.d.ts +2 -0
  242. package/dist/__tests__/slack-fallback-removal.test.d.ts.map +1 -0
  243. package/dist/__tests__/slack-fallback-removal.test.js +16 -0
  244. package/dist/__tests__/slack-fallback-removal.test.js.map +1 -0
  245. package/dist/__tests__/ssrf-guard.test.js +12 -0
  246. package/dist/__tests__/ssrf-guard.test.js.map +1 -1
  247. package/dist/__tests__/team-ops-task-locking.test.d.ts +2 -0
  248. package/dist/__tests__/team-ops-task-locking.test.d.ts.map +1 -0
  249. package/dist/__tests__/team-ops-task-locking.test.js +66 -0
  250. package/dist/__tests__/team-ops-task-locking.test.js.map +1 -0
  251. package/dist/__tests__/team-server-validation.test.js +6 -5
  252. package/dist/__tests__/team-server-validation.test.js.map +1 -1
  253. package/dist/__tests__/team-status-failed-count.test.d.ts +2 -0
  254. package/dist/__tests__/team-status-failed-count.test.d.ts.map +1 -0
  255. package/dist/__tests__/team-status-failed-count.test.js +91 -0
  256. package/dist/__tests__/team-status-failed-count.test.js.map +1 -0
  257. package/dist/__tests__/team-status-tmux-provider.test.d.ts +2 -0
  258. package/dist/__tests__/team-status-tmux-provider.test.d.ts.map +1 -0
  259. package/dist/__tests__/team-status-tmux-provider.test.js +39 -0
  260. package/dist/__tests__/team-status-tmux-provider.test.js.map +1 -0
  261. package/dist/__tests__/tier0-docs-consistency.test.js +42 -0
  262. package/dist/__tests__/tier0-docs-consistency.test.js.map +1 -1
  263. package/dist/__tests__/tools/ast-tools.test.d.ts +2 -0
  264. package/dist/__tests__/tools/ast-tools.test.d.ts.map +1 -0
  265. package/dist/__tests__/tools/ast-tools.test.js +74 -0
  266. package/dist/__tests__/tools/ast-tools.test.js.map +1 -0
  267. package/dist/__tests__/visual-verdict-skill.test.d.ts +2 -0
  268. package/dist/__tests__/visual-verdict-skill.test.d.ts.map +1 -0
  269. package/dist/__tests__/visual-verdict-skill.test.js +26 -0
  270. package/dist/__tests__/visual-verdict-skill.test.js.map +1 -0
  271. package/dist/__tests__/webhook-timeout-cleanup.test.d.ts +2 -0
  272. package/dist/__tests__/webhook-timeout-cleanup.test.d.ts.map +1 -0
  273. package/dist/__tests__/webhook-timeout-cleanup.test.js +18 -0
  274. package/dist/__tests__/webhook-timeout-cleanup.test.js.map +1 -0
  275. package/dist/__tests__/worktree-metadata-locking.test.d.ts +2 -0
  276. package/dist/__tests__/worktree-metadata-locking.test.d.ts.map +1 -0
  277. package/dist/__tests__/worktree-metadata-locking.test.js +51 -0
  278. package/dist/__tests__/worktree-metadata-locking.test.js.map +1 -0
  279. package/dist/agents/definitions.d.ts +2 -1
  280. package/dist/agents/definitions.d.ts.map +1 -1
  281. package/dist/agents/definitions.js +6 -1
  282. package/dist/agents/definitions.js.map +1 -1
  283. package/dist/agents/index.d.ts +1 -0
  284. package/dist/agents/index.d.ts.map +1 -1
  285. package/dist/agents/index.js +1 -0
  286. package/dist/agents/index.js.map +1 -1
  287. package/dist/agents/tracer.d.ts +11 -0
  288. package/dist/agents/tracer.d.ts.map +1 -0
  289. package/dist/agents/tracer.js +40 -0
  290. package/dist/agents/tracer.js.map +1 -0
  291. package/dist/agents/utils.d.ts.map +1 -1
  292. package/dist/agents/utils.js +2 -0
  293. package/dist/agents/utils.js.map +1 -1
  294. package/dist/autoresearch/__tests__/contracts.test.d.ts +2 -0
  295. package/dist/autoresearch/__tests__/contracts.test.d.ts.map +1 -0
  296. package/dist/autoresearch/__tests__/contracts.test.js +90 -0
  297. package/dist/autoresearch/__tests__/contracts.test.js.map +1 -0
  298. package/dist/autoresearch/__tests__/runtime-parity-extra.test.d.ts +2 -0
  299. package/dist/autoresearch/__tests__/runtime-parity-extra.test.d.ts.map +1 -0
  300. package/dist/autoresearch/__tests__/runtime-parity-extra.test.js +352 -0
  301. package/dist/autoresearch/__tests__/runtime-parity-extra.test.js.map +1 -0
  302. package/dist/autoresearch/__tests__/runtime.test.d.ts +2 -0
  303. package/dist/autoresearch/__tests__/runtime.test.d.ts.map +1 -0
  304. package/dist/autoresearch/__tests__/runtime.test.js +210 -0
  305. package/dist/autoresearch/__tests__/runtime.test.js.map +1 -0
  306. package/dist/autoresearch/__tests__/setup-contract.test.d.ts +2 -0
  307. package/dist/autoresearch/__tests__/setup-contract.test.d.ts.map +1 -0
  308. package/dist/autoresearch/__tests__/setup-contract.test.js +57 -0
  309. package/dist/autoresearch/__tests__/setup-contract.test.js.map +1 -0
  310. package/dist/autoresearch/contracts.d.ts +31 -0
  311. package/dist/autoresearch/contracts.d.ts.map +1 -0
  312. package/dist/autoresearch/contracts.js +189 -0
  313. package/dist/autoresearch/contracts.js.map +1 -0
  314. package/dist/autoresearch/runtime.d.ts +137 -0
  315. package/dist/autoresearch/runtime.d.ts.map +1 -0
  316. package/dist/autoresearch/runtime.js +1103 -0
  317. package/dist/autoresearch/runtime.js.map +1 -0
  318. package/dist/autoresearch/setup-contract.d.ts +18 -0
  319. package/dist/autoresearch/setup-contract.d.ts.map +1 -0
  320. package/dist/autoresearch/setup-contract.js +96 -0
  321. package/dist/autoresearch/setup-contract.js.map +1 -0
  322. package/dist/cli/__tests__/ask.test.js +32 -130
  323. package/dist/cli/__tests__/ask.test.js.map +1 -1
  324. package/dist/cli/__tests__/autoresearch-guided.test.d.ts +2 -0
  325. package/dist/cli/__tests__/autoresearch-guided.test.d.ts.map +1 -0
  326. package/dist/cli/__tests__/autoresearch-guided.test.js +389 -0
  327. package/dist/cli/__tests__/autoresearch-guided.test.js.map +1 -0
  328. package/dist/cli/__tests__/autoresearch-intake.test.d.ts +2 -0
  329. package/dist/cli/__tests__/autoresearch-intake.test.d.ts.map +1 -0
  330. package/dist/cli/__tests__/autoresearch-intake.test.js +131 -0
  331. package/dist/cli/__tests__/autoresearch-intake.test.js.map +1 -0
  332. package/dist/cli/__tests__/autoresearch-setup-session.test.d.ts +2 -0
  333. package/dist/cli/__tests__/autoresearch-setup-session.test.d.ts.map +1 -0
  334. package/dist/cli/__tests__/autoresearch-setup-session.test.js +73 -0
  335. package/dist/cli/__tests__/autoresearch-setup-session.test.js.map +1 -0
  336. package/dist/cli/__tests__/autoresearch.test.d.ts +2 -0
  337. package/dist/cli/__tests__/autoresearch.test.d.ts.map +1 -0
  338. package/dist/cli/__tests__/autoresearch.test.js +148 -0
  339. package/dist/cli/__tests__/autoresearch.test.js.map +1 -0
  340. package/dist/cli/__tests__/hud-watch.test.d.ts +2 -0
  341. package/dist/cli/__tests__/hud-watch.test.d.ts.map +1 -0
  342. package/dist/cli/__tests__/hud-watch.test.js +56 -0
  343. package/dist/cli/__tests__/hud-watch.test.js.map +1 -0
  344. package/dist/cli/__tests__/launch.test.js +82 -5
  345. package/dist/cli/__tests__/launch.test.js.map +1 -1
  346. package/dist/cli/__tests__/team.test.js +44 -2
  347. package/dist/cli/__tests__/team.test.js.map +1 -1
  348. package/dist/cli/__tests__/tmux-utils.test.js +41 -1
  349. package/dist/cli/__tests__/tmux-utils.test.js.map +1 -1
  350. package/dist/cli/autoresearch-guided.d.ts +37 -0
  351. package/dist/cli/autoresearch-guided.d.ts.map +1 -0
  352. package/dist/cli/autoresearch-guided.js +312 -0
  353. package/dist/cli/autoresearch-guided.js.map +1 -0
  354. package/dist/cli/autoresearch-intake.d.ts +60 -0
  355. package/dist/cli/autoresearch-intake.d.ts.map +1 -0
  356. package/dist/cli/autoresearch-intake.js +325 -0
  357. package/dist/cli/autoresearch-intake.js.map +1 -0
  358. package/dist/cli/autoresearch-setup-session.d.ts +15 -0
  359. package/dist/cli/autoresearch-setup-session.d.ts.map +1 -0
  360. package/dist/cli/autoresearch-setup-session.js +133 -0
  361. package/dist/cli/autoresearch-setup-session.js.map +1 -0
  362. package/dist/cli/autoresearch.d.ts +19 -0
  363. package/dist/cli/autoresearch.d.ts.map +1 -0
  364. package/dist/cli/autoresearch.js +330 -0
  365. package/dist/cli/autoresearch.js.map +1 -0
  366. package/dist/cli/commands/__tests__/team.test.js +88 -1
  367. package/dist/cli/commands/__tests__/team.test.js.map +1 -1
  368. package/dist/cli/commands/doctor-conflicts.d.ts +2 -0
  369. package/dist/cli/commands/doctor-conflicts.d.ts.map +1 -1
  370. package/dist/cli/commands/doctor-conflicts.js +44 -1
  371. package/dist/cli/commands/doctor-conflicts.js.map +1 -1
  372. package/dist/cli/commands/ralphthon.d.ts +30 -0
  373. package/dist/cli/commands/ralphthon.d.ts.map +1 -0
  374. package/dist/cli/commands/ralphthon.js +361 -0
  375. package/dist/cli/commands/ralphthon.js.map +1 -0
  376. package/dist/cli/commands/team.d.ts +39 -0
  377. package/dist/cli/commands/team.d.ts.map +1 -1
  378. package/dist/cli/commands/team.js +178 -19
  379. package/dist/cli/commands/team.js.map +1 -1
  380. package/dist/cli/commands/teleport.js +5 -5
  381. package/dist/cli/commands/teleport.js.map +1 -1
  382. package/dist/cli/hud-watch.d.ts +15 -0
  383. package/dist/cli/hud-watch.d.ts.map +1 -0
  384. package/dist/cli/hud-watch.js +37 -0
  385. package/dist/cli/hud-watch.js.map +1 -0
  386. package/dist/cli/index.d.ts +0 -1
  387. package/dist/cli/index.d.ts.map +1 -1
  388. package/dist/cli/index.js +39 -180
  389. package/dist/cli/index.js.map +1 -1
  390. package/dist/cli/launch.d.ts +9 -1
  391. package/dist/cli/launch.d.ts.map +1 -1
  392. package/dist/cli/launch.js +25 -4
  393. package/dist/cli/launch.js.map +1 -1
  394. package/dist/cli/team.d.ts +1 -0
  395. package/dist/cli/team.d.ts.map +1 -1
  396. package/dist/cli/team.js +42 -54
  397. package/dist/cli/team.js.map +1 -1
  398. package/dist/cli/tmux-utils.d.ts +3 -2
  399. package/dist/cli/tmux-utils.d.ts.map +1 -1
  400. package/dist/cli/tmux-utils.js +16 -3
  401. package/dist/cli/tmux-utils.js.map +1 -1
  402. package/dist/config/__tests__/loader.test.js +121 -67
  403. package/dist/config/__tests__/loader.test.js.map +1 -1
  404. package/dist/config/__tests__/models.test.js +114 -1
  405. package/dist/config/__tests__/models.test.js.map +1 -1
  406. package/dist/config/__tests__/plan-output.test.d.ts +2 -0
  407. package/dist/config/__tests__/plan-output.test.d.ts.map +1 -0
  408. package/dist/config/__tests__/plan-output.test.js +41 -0
  409. package/dist/config/__tests__/plan-output.test.js.map +1 -0
  410. package/dist/config/index.d.ts +2 -1
  411. package/dist/config/index.d.ts.map +1 -1
  412. package/dist/config/index.js +2 -1
  413. package/dist/config/index.js.map +1 -1
  414. package/dist/config/loader.d.ts +1 -1
  415. package/dist/config/loader.d.ts.map +1 -1
  416. package/dist/config/loader.js +280 -215
  417. package/dist/config/loader.js.map +1 -1
  418. package/dist/config/models.d.ts +33 -0
  419. package/dist/config/models.d.ts.map +1 -1
  420. package/dist/config/models.js +57 -0
  421. package/dist/config/models.js.map +1 -1
  422. package/dist/config/plan-output.d.ts +12 -0
  423. package/dist/config/plan-output.d.ts.map +1 -0
  424. package/dist/config/plan-output.js +67 -0
  425. package/dist/config/plan-output.js.map +1 -0
  426. package/dist/constants/names.d.ts +1 -5
  427. package/dist/constants/names.d.ts.map +1 -1
  428. package/dist/constants/names.js +1 -6
  429. package/dist/constants/names.js.map +1 -1
  430. package/dist/features/auto-update.d.ts +8 -0
  431. package/dist/features/auto-update.d.ts.map +1 -1
  432. package/dist/features/auto-update.js +218 -24
  433. package/dist/features/auto-update.js.map +1 -1
  434. package/dist/features/boulder-state/storage.d.ts.map +1 -1
  435. package/dist/features/boulder-state/storage.js +15 -10
  436. package/dist/features/boulder-state/storage.js.map +1 -1
  437. package/dist/features/builtin-skills/runtime-guidance.d.ts +9 -0
  438. package/dist/features/builtin-skills/runtime-guidance.d.ts.map +1 -0
  439. package/dist/features/builtin-skills/runtime-guidance.js +35 -0
  440. package/dist/features/builtin-skills/runtime-guidance.js.map +1 -0
  441. package/dist/features/builtin-skills/skills.d.ts.map +1 -1
  442. package/dist/features/builtin-skills/skills.js +32 -7
  443. package/dist/features/builtin-skills/skills.js.map +1 -1
  444. package/dist/features/continuation-enforcement.d.ts.map +1 -1
  445. package/dist/features/continuation-enforcement.js +3 -2
  446. package/dist/features/continuation-enforcement.js.map +1 -1
  447. package/dist/features/delegation-categories/__tests__/index.test.d.ts.map +1 -0
  448. package/dist/features/delegation-categories/__tests__/index.test.js +19 -0
  449. package/dist/features/delegation-categories/__tests__/index.test.js.map +1 -0
  450. package/dist/features/delegation-enforcer.d.ts.map +1 -1
  451. package/dist/features/delegation-enforcer.js +62 -3
  452. package/dist/features/delegation-enforcer.js.map +1 -1
  453. package/dist/features/magic-keywords.d.ts +1 -1
  454. package/dist/features/magic-keywords.d.ts.map +1 -1
  455. package/dist/features/magic-keywords.js +42 -12
  456. package/dist/features/magic-keywords.js.map +1 -1
  457. package/dist/features/model-routing/__tests__/index.test.d.ts +2 -0
  458. package/dist/features/model-routing/__tests__/index.test.d.ts.map +1 -0
  459. package/dist/features/model-routing/__tests__/index.test.js +21 -0
  460. package/dist/features/model-routing/__tests__/index.test.js.map +1 -0
  461. package/dist/features/model-routing/index.d.ts.map +1 -1
  462. package/dist/features/model-routing/index.js +3 -2
  463. package/dist/features/model-routing/index.js.map +1 -1
  464. package/dist/features/model-routing/signals.js +1 -1
  465. package/dist/features/model-routing/signals.js.map +1 -1
  466. package/dist/features/model-routing/types.d.ts +1 -1
  467. package/dist/features/rate-limit-wait/daemon.d.ts.map +1 -1
  468. package/dist/features/rate-limit-wait/daemon.js +11 -22
  469. package/dist/features/rate-limit-wait/daemon.js.map +1 -1
  470. package/dist/features/rate-limit-wait/tmux-detector.js +6 -6
  471. package/dist/features/rate-limit-wait/tmux-detector.js.map +1 -1
  472. package/dist/features/rate-limit-wait/types.d.ts +3 -3
  473. package/dist/features/rate-limit-wait/types.d.ts.map +1 -1
  474. package/dist/features/state-manager/index.d.ts +2 -2
  475. package/dist/features/state-manager/index.d.ts.map +1 -1
  476. package/dist/features/state-manager/index.js +12 -8
  477. package/dist/features/state-manager/index.js.map +1 -1
  478. package/dist/features/state-manager/types.d.ts +2 -2
  479. package/dist/features/state-manager/types.d.ts.map +1 -1
  480. package/dist/features/state-manager/types.js +2 -2
  481. package/dist/features/state-manager/types.js.map +1 -1
  482. package/dist/features/task-decomposer/index.js +3 -1
  483. package/dist/features/task-decomposer/index.js.map +1 -1
  484. package/dist/features/verification/index.d.ts.map +1 -1
  485. package/dist/features/verification/index.js +4 -2
  486. package/dist/features/verification/index.js.map +1 -1
  487. package/dist/hooks/__tests__/background-process-guard.test.js +151 -3
  488. package/dist/hooks/__tests__/background-process-guard.test.js.map +1 -1
  489. package/dist/hooks/__tests__/bridge-openclaw.test.js +15 -0
  490. package/dist/hooks/__tests__/bridge-openclaw.test.js.map +1 -1
  491. package/dist/hooks/__tests__/bridge-routing.test.js +130 -0
  492. package/dist/hooks/__tests__/bridge-routing.test.js.map +1 -1
  493. package/dist/hooks/__tests__/bridge-team-worker-guard.test.js +1 -1
  494. package/dist/hooks/__tests__/bridge-team-worker-guard.test.js.map +1 -1
  495. package/dist/hooks/__tests__/bridge.test.js +101 -0
  496. package/dist/hooks/__tests__/bridge.test.js.map +1 -1
  497. package/dist/hooks/__tests__/team-worker-heartbeat.test.d.ts +10 -0
  498. package/dist/hooks/__tests__/team-worker-heartbeat.test.d.ts.map +1 -0
  499. package/dist/hooks/__tests__/team-worker-heartbeat.test.js +87 -0
  500. package/dist/hooks/__tests__/team-worker-heartbeat.test.js.map +1 -0
  501. package/dist/hooks/auto-slash-command/executor.d.ts.map +1 -1
  502. package/dist/hooks/auto-slash-command/executor.js +134 -70
  503. package/dist/hooks/auto-slash-command/executor.js.map +1 -1
  504. package/dist/hooks/auto-slash-command/live-data.d.ts.map +1 -1
  505. package/dist/hooks/auto-slash-command/live-data.js +12 -0
  506. package/dist/hooks/auto-slash-command/live-data.js.map +1 -1
  507. package/dist/hooks/autopilot/__tests__/prompts.test.js +61 -52
  508. package/dist/hooks/autopilot/__tests__/prompts.test.js.map +1 -1
  509. package/dist/hooks/autopilot/__tests__/state.test.js +34 -34
  510. package/dist/hooks/autopilot/adapters/execution-adapter.d.ts +1 -1
  511. package/dist/hooks/autopilot/adapters/execution-adapter.d.ts.map +1 -1
  512. package/dist/hooks/autopilot/adapters/execution-adapter.js +6 -5
  513. package/dist/hooks/autopilot/adapters/execution-adapter.js.map +1 -1
  514. package/dist/hooks/autopilot/adapters/ralplan-adapter.d.ts +1 -1
  515. package/dist/hooks/autopilot/adapters/ralplan-adapter.d.ts.map +1 -1
  516. package/dist/hooks/autopilot/adapters/ralplan-adapter.js +8 -7
  517. package/dist/hooks/autopilot/adapters/ralplan-adapter.js.map +1 -1
  518. package/dist/hooks/autopilot/enforcement.d.ts +2 -2
  519. package/dist/hooks/autopilot/enforcement.d.ts.map +1 -1
  520. package/dist/hooks/autopilot/enforcement.js +98 -70
  521. package/dist/hooks/autopilot/enforcement.js.map +1 -1
  522. package/dist/hooks/autopilot/pipeline-types.d.ts +8 -6
  523. package/dist/hooks/autopilot/pipeline-types.d.ts.map +1 -1
  524. package/dist/hooks/autopilot/pipeline-types.js +9 -9
  525. package/dist/hooks/autopilot/pipeline-types.js.map +1 -1
  526. package/dist/hooks/autopilot/pipeline.d.ts +3 -3
  527. package/dist/hooks/autopilot/pipeline.d.ts.map +1 -1
  528. package/dist/hooks/autopilot/pipeline.js +51 -36
  529. package/dist/hooks/autopilot/pipeline.js.map +1 -1
  530. package/dist/hooks/autopilot/prompts.d.ts +4 -2
  531. package/dist/hooks/autopilot/prompts.d.ts.map +1 -1
  532. package/dist/hooks/autopilot/prompts.js +31 -24
  533. package/dist/hooks/autopilot/prompts.js.map +1 -1
  534. package/dist/hooks/autopilot/state.d.ts.map +1 -1
  535. package/dist/hooks/autopilot/state.js +21 -14
  536. package/dist/hooks/autopilot/state.js.map +1 -1
  537. package/dist/hooks/bridge.d.ts.map +1 -1
  538. package/dist/hooks/bridge.js +329 -71
  539. package/dist/hooks/bridge.js.map +1 -1
  540. package/dist/hooks/code-simplifier/index.d.ts +3 -2
  541. package/dist/hooks/code-simplifier/index.d.ts.map +1 -1
  542. package/dist/hooks/code-simplifier/index.js +15 -12
  543. package/dist/hooks/code-simplifier/index.js.map +1 -1
  544. package/dist/hooks/comment-checker/index.d.ts.map +1 -1
  545. package/dist/hooks/comment-checker/index.js +0 -17
  546. package/dist/hooks/comment-checker/index.js.map +1 -1
  547. package/dist/hooks/index.d.ts +0 -1
  548. package/dist/hooks/index.d.ts.map +1 -1
  549. package/dist/hooks/index.js +0 -8
  550. package/dist/hooks/index.js.map +1 -1
  551. package/dist/hooks/keyword-detector/__tests__/index.test.js +304 -0
  552. package/dist/hooks/keyword-detector/__tests__/index.test.js.map +1 -1
  553. package/dist/hooks/keyword-detector/index.d.ts.map +1 -1
  554. package/dist/hooks/keyword-detector/index.js +46 -16
  555. package/dist/hooks/keyword-detector/index.js.map +1 -1
  556. package/dist/hooks/learner/bridge.d.ts +1 -0
  557. package/dist/hooks/learner/bridge.d.ts.map +1 -1
  558. package/dist/hooks/learner/bridge.js +30 -19
  559. package/dist/hooks/learner/bridge.js.map +1 -1
  560. package/dist/hooks/learner/constants.d.ts +2 -0
  561. package/dist/hooks/learner/constants.d.ts.map +1 -1
  562. package/dist/hooks/learner/constants.js +2 -0
  563. package/dist/hooks/learner/constants.js.map +1 -1
  564. package/dist/hooks/learner/finder.d.ts.map +1 -1
  565. package/dist/hooks/learner/finder.js +25 -20
  566. package/dist/hooks/learner/finder.js.map +1 -1
  567. package/dist/hooks/learner/transliteration-map.d.ts +30 -0
  568. package/dist/hooks/learner/transliteration-map.d.ts.map +1 -0
  569. package/dist/hooks/learner/transliteration-map.js +51 -0
  570. package/dist/hooks/learner/transliteration-map.js.map +1 -0
  571. package/dist/hooks/non-interactive-env/index.d.ts.map +1 -1
  572. package/dist/hooks/non-interactive-env/index.js +5 -5
  573. package/dist/hooks/non-interactive-env/index.js.map +1 -1
  574. package/dist/hooks/non-interactive-env/index.test.d.ts +2 -0
  575. package/dist/hooks/non-interactive-env/index.test.d.ts.map +1 -0
  576. package/dist/hooks/non-interactive-env/index.test.js +30 -0
  577. package/dist/hooks/non-interactive-env/index.test.js.map +1 -0
  578. package/dist/hooks/notepad/index.d.ts.map +1 -1
  579. package/dist/hooks/notepad/index.js +20 -6
  580. package/dist/hooks/notepad/index.js.map +1 -1
  581. package/dist/hooks/omc-orchestrator/index.d.ts.map +1 -1
  582. package/dist/hooks/omc-orchestrator/index.js +6 -2
  583. package/dist/hooks/omc-orchestrator/index.js.map +1 -1
  584. package/dist/hooks/permission-handler/__tests__/index.test.js +9 -1
  585. package/dist/hooks/permission-handler/__tests__/index.test.js.map +1 -1
  586. package/dist/hooks/permission-handler/index.d.ts +2 -0
  587. package/dist/hooks/permission-handler/index.d.ts.map +1 -1
  588. package/dist/hooks/permission-handler/index.js +67 -7
  589. package/dist/hooks/permission-handler/index.js.map +1 -1
  590. package/dist/hooks/persistent-mode/__tests__/idle-cooldown.test.js +79 -15
  591. package/dist/hooks/persistent-mode/__tests__/idle-cooldown.test.js.map +1 -1
  592. package/dist/hooks/persistent-mode/__tests__/ralph-verification-flow.test.js +1 -1
  593. package/dist/hooks/persistent-mode/__tests__/ralph-verification-flow.test.js.map +1 -1
  594. package/dist/hooks/persistent-mode/__tests__/skill-state-stop.test.js +36 -1
  595. package/dist/hooks/persistent-mode/__tests__/skill-state-stop.test.js.map +1 -1
  596. package/dist/hooks/persistent-mode/__tests__/team-ralplan-stop.test.js +113 -2
  597. package/dist/hooks/persistent-mode/__tests__/team-ralplan-stop.test.js.map +1 -1
  598. package/dist/hooks/persistent-mode/index.d.ts +1 -1
  599. package/dist/hooks/persistent-mode/index.d.ts.map +1 -1
  600. package/dist/hooks/persistent-mode/index.js +50 -14
  601. package/dist/hooks/persistent-mode/index.js.map +1 -1
  602. package/dist/hooks/persistent-mode/session-isolation.test.js +20 -14
  603. package/dist/hooks/persistent-mode/session-isolation.test.js.map +1 -1
  604. package/dist/hooks/persistent-mode/stop-hook-blocking.test.js +173 -5
  605. package/dist/hooks/persistent-mode/stop-hook-blocking.test.js.map +1 -1
  606. package/dist/hooks/project-memory/__tests__/formatter.test.js +244 -191
  607. package/dist/hooks/project-memory/__tests__/formatter.test.js.map +1 -1
  608. package/dist/hooks/project-memory/__tests__/integration.test.js +185 -101
  609. package/dist/hooks/project-memory/__tests__/integration.test.js.map +1 -1
  610. package/dist/hooks/project-memory/__tests__/pre-compact.test.d.ts +5 -0
  611. package/dist/hooks/project-memory/__tests__/pre-compact.test.d.ts.map +1 -0
  612. package/dist/hooks/project-memory/__tests__/pre-compact.test.js +121 -0
  613. package/dist/hooks/project-memory/__tests__/pre-compact.test.js.map +1 -0
  614. package/dist/hooks/project-memory/formatter.d.ts +2 -2
  615. package/dist/hooks/project-memory/formatter.d.ts.map +1 -1
  616. package/dist/hooks/project-memory/formatter.js +167 -92
  617. package/dist/hooks/project-memory/formatter.js.map +1 -1
  618. package/dist/hooks/project-memory/hot-path-tracker.d.ts +3 -3
  619. package/dist/hooks/project-memory/hot-path-tracker.d.ts.map +1 -1
  620. package/dist/hooks/project-memory/hot-path-tracker.js +71 -27
  621. package/dist/hooks/project-memory/hot-path-tracker.js.map +1 -1
  622. package/dist/hooks/project-memory/index.d.ts +0 -20
  623. package/dist/hooks/project-memory/index.d.ts.map +1 -1
  624. package/dist/hooks/project-memory/index.js +37 -39
  625. package/dist/hooks/project-memory/index.js.map +1 -1
  626. package/dist/hooks/project-memory/pre-compact.d.ts.map +1 -1
  627. package/dist/hooks/project-memory/pre-compact.js +2 -1
  628. package/dist/hooks/project-memory/pre-compact.js.map +1 -1
  629. package/dist/hooks/project-memory/types.d.ts +11 -6
  630. package/dist/hooks/project-memory/types.d.ts.map +1 -1
  631. package/dist/hooks/ralph/verifier.d.ts.map +1 -1
  632. package/dist/hooks/ralph/verifier.js +2 -1
  633. package/dist/hooks/ralph/verifier.js.map +1 -1
  634. package/dist/hooks/recovery/session-recovery.d.ts.map +1 -1
  635. package/dist/hooks/recovery/session-recovery.js +7 -4
  636. package/dist/hooks/recovery/session-recovery.js.map +1 -1
  637. package/dist/hooks/session-end/__tests__/mode-state-cleanup.test.js +28 -0
  638. package/dist/hooks/session-end/__tests__/mode-state-cleanup.test.js.map +1 -1
  639. package/dist/hooks/session-end/__tests__/session-end-timeout.test.d.ts +2 -0
  640. package/dist/hooks/session-end/__tests__/session-end-timeout.test.d.ts.map +1 -0
  641. package/dist/hooks/session-end/__tests__/session-end-timeout.test.js +91 -0
  642. package/dist/hooks/session-end/__tests__/session-end-timeout.test.js.map +1 -0
  643. package/dist/hooks/session-end/__tests__/team-cleanup.test.d.ts +2 -0
  644. package/dist/hooks/session-end/__tests__/team-cleanup.test.d.ts.map +1 -0
  645. package/dist/hooks/session-end/__tests__/team-cleanup.test.js +150 -0
  646. package/dist/hooks/session-end/__tests__/team-cleanup.test.js.map +1 -0
  647. package/dist/hooks/session-end/index.d.ts +9 -0
  648. package/dist/hooks/session-end/index.d.ts.map +1 -1
  649. package/dist/hooks/session-end/index.js +178 -30
  650. package/dist/hooks/session-end/index.js.map +1 -1
  651. package/dist/hooks/setup/__tests__/windows-patch.test.js +8 -7
  652. package/dist/hooks/setup/__tests__/windows-patch.test.js.map +1 -1
  653. package/dist/hooks/setup/index.d.ts +1 -1
  654. package/dist/hooks/setup/index.js +3 -3
  655. package/dist/hooks/setup/index.js.map +1 -1
  656. package/dist/hooks/skill-bridge.cjs +48 -16
  657. package/dist/hooks/skill-state/__tests__/skill-state.test.js +74 -8
  658. package/dist/hooks/skill-state/__tests__/skill-state.test.js.map +1 -1
  659. package/dist/hooks/skill-state/index.d.ts +18 -4
  660. package/dist/hooks/skill-state/index.d.ts.map +1 -1
  661. package/dist/hooks/skill-state/index.js +43 -7
  662. package/dist/hooks/skill-state/index.js.map +1 -1
  663. package/dist/hooks/subagent-tracker/__tests__/index.test.js +42 -1
  664. package/dist/hooks/subagent-tracker/__tests__/index.test.js.map +1 -1
  665. package/dist/hooks/subagent-tracker/index.d.ts +5 -0
  666. package/dist/hooks/subagent-tracker/index.d.ts.map +1 -1
  667. package/dist/hooks/subagent-tracker/index.js +62 -49
  668. package/dist/hooks/subagent-tracker/index.js.map +1 -1
  669. package/dist/hooks/team-dispatch-hook.d.ts.map +1 -1
  670. package/dist/hooks/team-dispatch-hook.js +4 -2
  671. package/dist/hooks/team-dispatch-hook.js.map +1 -1
  672. package/dist/hooks/team-leader-nudge-hook.d.ts +6 -0
  673. package/dist/hooks/team-leader-nudge-hook.d.ts.map +1 -1
  674. package/dist/hooks/team-leader-nudge-hook.js +113 -15
  675. package/dist/hooks/team-leader-nudge-hook.js.map +1 -1
  676. package/dist/hooks/team-worker-hook.d.ts.map +1 -1
  677. package/dist/hooks/team-worker-hook.js +6 -3
  678. package/dist/hooks/team-worker-hook.js.map +1 -1
  679. package/dist/hud/background-cleanup.d.ts +3 -3
  680. package/dist/hud/background-cleanup.d.ts.map +1 -1
  681. package/dist/hud/background-cleanup.js +9 -9
  682. package/dist/hud/background-cleanup.js.map +1 -1
  683. package/dist/hud/background-tasks.d.ts +7 -0
  684. package/dist/hud/background-tasks.d.ts.map +1 -1
  685. package/dist/hud/background-tasks.js +83 -0
  686. package/dist/hud/background-tasks.js.map +1 -1
  687. package/dist/hud/elements/context.d.ts +12 -2
  688. package/dist/hud/elements/context.d.ts.map +1 -1
  689. package/dist/hud/elements/context.js +86 -35
  690. package/dist/hud/elements/context.js.map +1 -1
  691. package/dist/hud/elements/git.d.ts +4 -0
  692. package/dist/hud/elements/git.d.ts.map +1 -1
  693. package/dist/hud/elements/git.js +39 -9
  694. package/dist/hud/elements/git.js.map +1 -1
  695. package/dist/hud/elements/index.d.ts +1 -0
  696. package/dist/hud/elements/index.d.ts.map +1 -1
  697. package/dist/hud/elements/index.js +1 -0
  698. package/dist/hud/elements/index.js.map +1 -1
  699. package/dist/hud/elements/session-summary.d.ts +23 -0
  700. package/dist/hud/elements/session-summary.d.ts.map +1 -0
  701. package/dist/hud/elements/session-summary.js +23 -0
  702. package/dist/hud/elements/session-summary.js.map +1 -0
  703. package/dist/hud/elements/token-usage.d.ts +8 -0
  704. package/dist/hud/elements/token-usage.d.ts.map +1 -0
  705. package/dist/hud/elements/token-usage.js +24 -0
  706. package/dist/hud/elements/token-usage.js.map +1 -0
  707. package/dist/hud/index.d.ts +4 -0
  708. package/dist/hud/index.d.ts.map +1 -1
  709. package/dist/hud/index.js +165 -32
  710. package/dist/hud/index.js.map +1 -1
  711. package/dist/hud/mission-board.d.ts.map +1 -1
  712. package/dist/hud/mission-board.js +8 -2
  713. package/dist/hud/mission-board.js.map +1 -1
  714. package/dist/hud/omc-state.d.ts +5 -5
  715. package/dist/hud/omc-state.d.ts.map +1 -1
  716. package/dist/hud/omc-state.js +20 -16
  717. package/dist/hud/omc-state.js.map +1 -1
  718. package/dist/hud/render.d.ts +1 -1
  719. package/dist/hud/render.d.ts.map +1 -1
  720. package/dist/hud/render.js +69 -54
  721. package/dist/hud/render.js.map +1 -1
  722. package/dist/hud/state.d.ts +3 -3
  723. package/dist/hud/state.d.ts.map +1 -1
  724. package/dist/hud/state.js +110 -57
  725. package/dist/hud/state.js.map +1 -1
  726. package/dist/hud/stdin.d.ts +8 -1
  727. package/dist/hud/stdin.d.ts.map +1 -1
  728. package/dist/hud/stdin.js +60 -13
  729. package/dist/hud/stdin.js.map +1 -1
  730. package/dist/hud/transcript.d.ts.map +1 -1
  731. package/dist/hud/transcript.js +148 -35
  732. package/dist/hud/transcript.js.map +1 -1
  733. package/dist/hud/types.d.ts +30 -13
  734. package/dist/hud/types.d.ts.map +1 -1
  735. package/dist/hud/types.js +24 -0
  736. package/dist/hud/types.js.map +1 -1
  737. package/dist/hud/usage-api.d.ts.map +1 -1
  738. package/dist/hud/usage-api.js +57 -24
  739. package/dist/hud/usage-api.js.map +1 -1
  740. package/dist/index.d.ts +1 -1
  741. package/dist/index.d.ts.map +1 -1
  742. package/dist/index.js +1 -1
  743. package/dist/index.js.map +1 -1
  744. package/dist/installer/__tests__/claude-md-merge.test.js +23 -0
  745. package/dist/installer/__tests__/claude-md-merge.test.js.map +1 -1
  746. package/dist/installer/__tests__/hook-templates.test.js +50 -5
  747. package/dist/installer/__tests__/hook-templates.test.js.map +1 -1
  748. package/dist/installer/__tests__/mcp-registry.test.d.ts +2 -0
  749. package/dist/installer/__tests__/mcp-registry.test.d.ts.map +1 -0
  750. package/dist/installer/__tests__/mcp-registry.test.js +316 -0
  751. package/dist/installer/__tests__/mcp-registry.test.js.map +1 -0
  752. package/dist/installer/__tests__/session-start-template.test.d.ts +2 -0
  753. package/dist/installer/__tests__/session-start-template.test.d.ts.map +1 -0
  754. package/dist/installer/__tests__/session-start-template.test.js +95 -0
  755. package/dist/installer/__tests__/session-start-template.test.js.map +1 -0
  756. package/dist/installer/hooks.d.ts +0 -14
  757. package/dist/installer/hooks.d.ts.map +1 -1
  758. package/dist/installer/hooks.js +0 -33
  759. package/dist/installer/hooks.js.map +1 -1
  760. package/dist/installer/index.d.ts +2 -0
  761. package/dist/installer/index.d.ts.map +1 -1
  762. package/dist/installer/index.js +71 -7
  763. package/dist/installer/index.js.map +1 -1
  764. package/dist/installer/mcp-registry.d.ts +48 -0
  765. package/dist/installer/mcp-registry.d.ts.map +1 -0
  766. package/dist/installer/mcp-registry.js +453 -0
  767. package/dist/installer/mcp-registry.js.map +1 -0
  768. package/dist/interop/omx-team-state.d.ts +2 -0
  769. package/dist/interop/omx-team-state.d.ts.map +1 -1
  770. package/dist/interop/omx-team-state.js.map +1 -1
  771. package/dist/interop/shared-state.d.ts.map +1 -1
  772. package/dist/interop/shared-state.js +21 -18
  773. package/dist/interop/shared-state.js.map +1 -1
  774. package/dist/lib/__tests__/mode-state-io.test.js +58 -8
  775. package/dist/lib/__tests__/mode-state-io.test.js.map +1 -1
  776. package/dist/lib/__tests__/swallowed-error.test.d.ts +2 -0
  777. package/dist/lib/__tests__/swallowed-error.test.d.ts.map +1 -0
  778. package/dist/lib/__tests__/swallowed-error.test.js +19 -0
  779. package/dist/lib/__tests__/swallowed-error.test.js.map +1 -0
  780. package/dist/lib/featured-contributors.d.ts +54 -0
  781. package/dist/lib/featured-contributors.d.ts.map +1 -0
  782. package/dist/lib/featured-contributors.js +290 -0
  783. package/dist/lib/featured-contributors.js.map +1 -0
  784. package/dist/lib/file-lock.d.ts.map +1 -1
  785. package/dist/lib/file-lock.js +49 -51
  786. package/dist/lib/file-lock.js.map +1 -1
  787. package/dist/lib/mode-names.d.ts +1 -0
  788. package/dist/lib/mode-names.d.ts.map +1 -1
  789. package/dist/lib/mode-names.js +5 -0
  790. package/dist/lib/mode-names.js.map +1 -1
  791. package/dist/lib/mode-state-io.d.ts +2 -0
  792. package/dist/lib/mode-state-io.d.ts.map +1 -1
  793. package/dist/lib/mode-state-io.js +57 -11
  794. package/dist/lib/mode-state-io.js.map +1 -1
  795. package/dist/lib/project-memory-merge.d.ts.map +1 -1
  796. package/dist/lib/project-memory-merge.js +2 -0
  797. package/dist/lib/project-memory-merge.js.map +1 -1
  798. package/dist/lib/shared-memory.d.ts.map +1 -1
  799. package/dist/lib/shared-memory.js +40 -21
  800. package/dist/lib/shared-memory.js.map +1 -1
  801. package/dist/lib/swallowed-error.d.ts +4 -0
  802. package/dist/lib/swallowed-error.d.ts.map +1 -0
  803. package/dist/lib/swallowed-error.js +26 -0
  804. package/dist/lib/swallowed-error.js.map +1 -0
  805. package/dist/lib/worktree-paths.d.ts +1 -0
  806. package/dist/lib/worktree-paths.d.ts.map +1 -1
  807. package/dist/lib/worktree-paths.js +1 -0
  808. package/dist/lib/worktree-paths.js.map +1 -1
  809. package/dist/mcp/__tests__/prompt-injection.test.js +15 -0
  810. package/dist/mcp/__tests__/prompt-injection.test.js.map +1 -1
  811. package/dist/mcp/__tests__/standalone-shutdown.test.d.ts +2 -0
  812. package/dist/mcp/__tests__/standalone-shutdown.test.d.ts.map +1 -0
  813. package/dist/mcp/__tests__/standalone-shutdown.test.js +57 -0
  814. package/dist/mcp/__tests__/standalone-shutdown.test.js.map +1 -0
  815. package/dist/mcp/__tests__/team-cleanup.test.js +5 -5
  816. package/dist/mcp/job-management.d.ts +4 -0
  817. package/dist/mcp/job-management.d.ts.map +1 -1
  818. package/dist/mcp/job-management.js +30 -10
  819. package/dist/mcp/job-management.js.map +1 -1
  820. package/dist/mcp/omc-tools-server.d.ts +2 -0
  821. package/dist/mcp/omc-tools-server.d.ts.map +1 -1
  822. package/dist/mcp/omc-tools-server.js +10 -2
  823. package/dist/mcp/omc-tools-server.js.map +1 -1
  824. package/dist/mcp/prompt-injection.d.ts.map +1 -1
  825. package/dist/mcp/prompt-injection.js +25 -4
  826. package/dist/mcp/prompt-injection.js.map +1 -1
  827. package/dist/mcp/prompt-persistence.js +1 -1
  828. package/dist/mcp/prompt-persistence.js.map +1 -1
  829. package/dist/mcp/standalone-server.js +15 -4
  830. package/dist/mcp/standalone-server.js.map +1 -1
  831. package/dist/mcp/standalone-shutdown.d.ts +25 -0
  832. package/dist/mcp/standalone-shutdown.d.ts.map +1 -0
  833. package/dist/mcp/standalone-shutdown.js +68 -0
  834. package/dist/mcp/standalone-shutdown.js.map +1 -0
  835. package/dist/mcp/team-job-convergence.d.ts +0 -1
  836. package/dist/mcp/team-job-convergence.d.ts.map +1 -1
  837. package/dist/mcp/team-job-convergence.js +0 -9
  838. package/dist/mcp/team-job-convergence.js.map +1 -1
  839. package/dist/mcp/team-server.d.ts.map +1 -1
  840. package/dist/mcp/team-server.js +18 -11
  841. package/dist/mcp/team-server.js.map +1 -1
  842. package/dist/notifications/__tests__/reply-listener.test.js +57 -1
  843. package/dist/notifications/__tests__/reply-listener.test.js.map +1 -1
  844. package/dist/notifications/config.d.ts.map +1 -1
  845. package/dist/notifications/config.js +36 -3
  846. package/dist/notifications/config.js.map +1 -1
  847. package/dist/notifications/dispatcher.d.ts.map +1 -1
  848. package/dist/notifications/dispatcher.js +18 -14
  849. package/dist/notifications/dispatcher.js.map +1 -1
  850. package/dist/notifications/redact.d.ts.map +1 -1
  851. package/dist/notifications/redact.js +10 -1
  852. package/dist/notifications/redact.js.map +1 -1
  853. package/dist/notifications/reply-listener.d.ts +2 -0
  854. package/dist/notifications/reply-listener.d.ts.map +1 -1
  855. package/dist/notifications/reply-listener.js +17 -24
  856. package/dist/notifications/reply-listener.js.map +1 -1
  857. package/dist/notifications/session-registry.d.ts +1 -1
  858. package/dist/notifications/session-registry.d.ts.map +1 -1
  859. package/dist/notifications/session-registry.js +37 -43
  860. package/dist/notifications/session-registry.js.map +1 -1
  861. package/dist/notifications/types.d.ts +2 -0
  862. package/dist/notifications/types.d.ts.map +1 -1
  863. package/dist/planning/__tests__/artifacts.test.d.ts +2 -0
  864. package/dist/planning/__tests__/artifacts.test.d.ts.map +1 -0
  865. package/dist/planning/__tests__/artifacts.test.js +303 -0
  866. package/dist/planning/__tests__/artifacts.test.js.map +1 -0
  867. package/dist/planning/artifacts.d.ts +29 -0
  868. package/dist/planning/artifacts.d.ts.map +1 -0
  869. package/dist/planning/artifacts.js +144 -0
  870. package/dist/planning/artifacts.js.map +1 -0
  871. package/dist/platform/process-utils.d.ts +1 -0
  872. package/dist/platform/process-utils.d.ts.map +1 -1
  873. package/dist/platform/process-utils.js +7 -3
  874. package/dist/platform/process-utils.js.map +1 -1
  875. package/dist/providers/bitbucket.d.ts +2 -2
  876. package/dist/providers/bitbucket.d.ts.map +1 -1
  877. package/dist/providers/bitbucket.js +11 -12
  878. package/dist/providers/bitbucket.js.map +1 -1
  879. package/dist/providers/gitea.d.ts.map +1 -1
  880. package/dist/providers/gitea.js +8 -2
  881. package/dist/providers/gitea.js.map +1 -1
  882. package/dist/providers/index.d.ts +4 -0
  883. package/dist/providers/index.d.ts.map +1 -1
  884. package/dist/providers/index.js +49 -26
  885. package/dist/providers/index.js.map +1 -1
  886. package/dist/providers/types.d.ts +2 -2
  887. package/dist/providers/types.d.ts.map +1 -1
  888. package/dist/ralphthon/__tests__/cli.test.d.ts +5 -0
  889. package/dist/ralphthon/__tests__/cli.test.d.ts.map +1 -0
  890. package/dist/ralphthon/__tests__/cli.test.js +103 -0
  891. package/dist/ralphthon/__tests__/cli.test.js.map +1 -0
  892. package/dist/ralphthon/__tests__/orchestrator.test.d.ts +5 -0
  893. package/dist/ralphthon/__tests__/orchestrator.test.d.ts.map +1 -0
  894. package/dist/ralphthon/__tests__/orchestrator.test.js +393 -0
  895. package/dist/ralphthon/__tests__/orchestrator.test.js.map +1 -0
  896. package/dist/ralphthon/__tests__/prd.test.d.ts +5 -0
  897. package/dist/ralphthon/__tests__/prd.test.d.ts.map +1 -0
  898. package/dist/ralphthon/__tests__/prd.test.js +454 -0
  899. package/dist/ralphthon/__tests__/prd.test.js.map +1 -0
  900. package/dist/ralphthon/deep-interview-prompt.d.ts +2 -0
  901. package/dist/ralphthon/deep-interview-prompt.d.ts.map +1 -0
  902. package/dist/ralphthon/deep-interview-prompt.js +20 -0
  903. package/dist/ralphthon/deep-interview-prompt.js.map +1 -0
  904. package/dist/ralphthon/index.d.ts +13 -0
  905. package/dist/ralphthon/index.d.ts.map +1 -0
  906. package/dist/ralphthon/index.js +14 -0
  907. package/dist/ralphthon/index.js.map +1 -0
  908. package/dist/ralphthon/orchestrator.d.ts +112 -0
  909. package/dist/ralphthon/orchestrator.d.ts.map +1 -0
  910. package/dist/ralphthon/orchestrator.js +453 -0
  911. package/dist/ralphthon/orchestrator.js.map +1 -0
  912. package/dist/ralphthon/prd.d.ts +111 -0
  913. package/dist/ralphthon/prd.d.ts.map +1 -0
  914. package/dist/ralphthon/prd.js +345 -0
  915. package/dist/ralphthon/prd.js.map +1 -0
  916. package/dist/ralphthon/types.d.ts +213 -0
  917. package/dist/ralphthon/types.d.ts.map +1 -0
  918. package/dist/ralphthon/types.js +21 -0
  919. package/dist/ralphthon/types.js.map +1 -0
  920. package/dist/shared/types.d.ts +25 -16
  921. package/dist/shared/types.d.ts.map +1 -1
  922. package/dist/skills/__tests__/mingw-escape.test.js +15 -0
  923. package/dist/skills/__tests__/mingw-escape.test.js.map +1 -1
  924. package/dist/team/__tests__/allocation-policy.test.d.ts +2 -0
  925. package/dist/team/__tests__/allocation-policy.test.d.ts.map +1 -0
  926. package/dist/team/__tests__/allocation-policy.test.js +125 -0
  927. package/dist/team/__tests__/allocation-policy.test.js.map +1 -0
  928. package/dist/team/__tests__/api-interop.cleanup.test.d.ts +2 -0
  929. package/dist/team/__tests__/api-interop.cleanup.test.d.ts.map +1 -0
  930. package/dist/team/__tests__/api-interop.cleanup.test.js +129 -0
  931. package/dist/team/__tests__/api-interop.cleanup.test.js.map +1 -0
  932. package/dist/team/__tests__/api-interop.cwd-resolution.test.js +22 -0
  933. package/dist/team/__tests__/api-interop.cwd-resolution.test.js.map +1 -1
  934. package/dist/team/__tests__/api-interop.dispatch.test.js +59 -0
  935. package/dist/team/__tests__/api-interop.dispatch.test.js.map +1 -1
  936. package/dist/team/__tests__/audit-log.test.js +0 -1
  937. package/dist/team/__tests__/audit-log.test.js.map +1 -1
  938. package/dist/team/__tests__/bridge-integration.test.js.map +1 -1
  939. package/dist/team/__tests__/events.swallowed-error.test.d.ts +2 -0
  940. package/dist/team/__tests__/events.swallowed-error.test.d.ts.map +1 -0
  941. package/dist/team/__tests__/events.swallowed-error.test.js +33 -0
  942. package/dist/team/__tests__/events.swallowed-error.test.js.map +1 -0
  943. package/dist/team/__tests__/followup-planner.test.d.ts +2 -0
  944. package/dist/team/__tests__/followup-planner.test.d.ts.map +1 -0
  945. package/dist/team/__tests__/followup-planner.test.js +197 -0
  946. package/dist/team/__tests__/followup-planner.test.js.map +1 -0
  947. package/dist/team/__tests__/governance-enforcement.test.d.ts +2 -0
  948. package/dist/team/__tests__/governance-enforcement.test.d.ts.map +1 -0
  949. package/dist/team/__tests__/governance-enforcement.test.js +138 -0
  950. package/dist/team/__tests__/governance-enforcement.test.js.map +1 -0
  951. package/dist/team/__tests__/governance.test.d.ts +2 -0
  952. package/dist/team/__tests__/governance.test.d.ts.map +1 -0
  953. package/dist/team/__tests__/governance.test.js +38 -0
  954. package/dist/team/__tests__/governance.test.js.map +1 -0
  955. package/dist/team/__tests__/idle-nudge.test.js +9 -0
  956. package/dist/team/__tests__/idle-nudge.test.js.map +1 -1
  957. package/dist/team/__tests__/leader-nudge-guidance.test.d.ts +2 -0
  958. package/dist/team/__tests__/leader-nudge-guidance.test.d.ts.map +1 -0
  959. package/dist/team/__tests__/leader-nudge-guidance.test.js +37 -0
  960. package/dist/team/__tests__/leader-nudge-guidance.test.js.map +1 -0
  961. package/dist/team/__tests__/lifecycle-profile.test.d.ts +2 -0
  962. package/dist/team/__tests__/lifecycle-profile.test.d.ts.map +1 -0
  963. package/dist/team/__tests__/lifecycle-profile.test.js +46 -0
  964. package/dist/team/__tests__/lifecycle-profile.test.js.map +1 -0
  965. package/dist/team/__tests__/model-contract.test.js +84 -3
  966. package/dist/team/__tests__/model-contract.test.js.map +1 -1
  967. package/dist/team/__tests__/phase1-foundation.test.d.ts +2 -0
  968. package/dist/team/__tests__/phase1-foundation.test.d.ts.map +1 -0
  969. package/dist/team/__tests__/phase1-foundation.test.js +151 -0
  970. package/dist/team/__tests__/phase1-foundation.test.js.map +1 -0
  971. package/dist/team/__tests__/role-router.test.d.ts +2 -0
  972. package/dist/team/__tests__/role-router.test.d.ts.map +1 -0
  973. package/dist/team/__tests__/role-router.test.js +122 -0
  974. package/dist/team/__tests__/role-router.test.js.map +1 -0
  975. package/dist/team/__tests__/runtime-prompt-mode.test.js +4 -1
  976. package/dist/team/__tests__/runtime-prompt-mode.test.js.map +1 -1
  977. package/dist/team/__tests__/runtime-v2.dispatch.test.js +114 -6
  978. package/dist/team/__tests__/runtime-v2.dispatch.test.js.map +1 -1
  979. package/dist/team/__tests__/runtime-v2.monitor.test.js +45 -0
  980. package/dist/team/__tests__/runtime-v2.monitor.test.js.map +1 -1
  981. package/dist/team/__tests__/runtime-v2.shutdown-pane-cleanup.test.d.ts +2 -0
  982. package/dist/team/__tests__/runtime-v2.shutdown-pane-cleanup.test.d.ts.map +1 -0
  983. package/dist/team/__tests__/runtime-v2.shutdown-pane-cleanup.test.js +110 -0
  984. package/dist/team/__tests__/runtime-v2.shutdown-pane-cleanup.test.js.map +1 -0
  985. package/dist/team/__tests__/scaling.test.d.ts +2 -0
  986. package/dist/team/__tests__/scaling.test.d.ts.map +1 -0
  987. package/dist/team/__tests__/scaling.test.js +44 -0
  988. package/dist/team/__tests__/scaling.test.js.map +1 -0
  989. package/dist/team/__tests__/shell-affinity.test.d.ts +2 -0
  990. package/dist/team/__tests__/shell-affinity.test.d.ts.map +1 -0
  991. package/dist/team/__tests__/shell-affinity.test.js +98 -0
  992. package/dist/team/__tests__/shell-affinity.test.js.map +1 -0
  993. package/dist/team/__tests__/state-paths.test.js +4 -1
  994. package/dist/team/__tests__/state-paths.test.js.map +1 -1
  995. package/dist/team/__tests__/task-file-ops.test.js +6 -4
  996. package/dist/team/__tests__/task-file-ops.test.js.map +1 -1
  997. package/dist/team/__tests__/team-leader-nudge-hook.logging.test.d.ts +2 -0
  998. package/dist/team/__tests__/team-leader-nudge-hook.logging.test.d.ts.map +1 -0
  999. package/dist/team/__tests__/team-leader-nudge-hook.logging.test.js +63 -0
  1000. package/dist/team/__tests__/team-leader-nudge-hook.logging.test.js.map +1 -0
  1001. package/dist/team/__tests__/team-leader-nudge-hook.test.d.ts +2 -0
  1002. package/dist/team/__tests__/team-leader-nudge-hook.test.d.ts.map +1 -0
  1003. package/dist/team/__tests__/team-leader-nudge-hook.test.js +90 -0
  1004. package/dist/team/__tests__/team-leader-nudge-hook.test.js.map +1 -0
  1005. package/dist/team/__tests__/tmux-comm.test.js +5 -4
  1006. package/dist/team/__tests__/tmux-comm.test.js.map +1 -1
  1007. package/dist/team/__tests__/tmux-session.create-team.test.js +46 -2
  1008. package/dist/team/__tests__/tmux-session.create-team.test.js.map +1 -1
  1009. package/dist/team/__tests__/tmux-session.kill-team-session.test.js +45 -13
  1010. package/dist/team/__tests__/tmux-session.kill-team-session.test.js.map +1 -1
  1011. package/dist/team/__tests__/tmux-session.test.js +50 -58
  1012. package/dist/team/__tests__/tmux-session.test.js.map +1 -1
  1013. package/dist/team/__tests__/unified-team.test.js.map +1 -1
  1014. package/dist/team/__tests__/worker-bootstrap.test.js +50 -5
  1015. package/dist/team/__tests__/worker-bootstrap.test.js.map +1 -1
  1016. package/dist/team/__tests__/worker-canonicalization.test.d.ts +2 -0
  1017. package/dist/team/__tests__/worker-canonicalization.test.d.ts.map +1 -0
  1018. package/dist/team/__tests__/worker-canonicalization.test.js +35 -0
  1019. package/dist/team/__tests__/worker-canonicalization.test.js.map +1 -0
  1020. package/dist/team/__tests__/worker-health.test.js.map +1 -1
  1021. package/dist/team/__tests__/worker-restart.test.js +3 -1
  1022. package/dist/team/__tests__/worker-restart.test.js.map +1 -1
  1023. package/dist/team/allocation-policy.d.ts +34 -0
  1024. package/dist/team/allocation-policy.d.ts.map +1 -0
  1025. package/dist/team/allocation-policy.js +92 -0
  1026. package/dist/team/allocation-policy.js.map +1 -0
  1027. package/dist/team/api-interop.d.ts +1 -1
  1028. package/dist/team/api-interop.d.ts.map +1 -1
  1029. package/dist/team/api-interop.js +51 -6
  1030. package/dist/team/api-interop.js.map +1 -1
  1031. package/dist/team/audit-log.d.ts.map +1 -1
  1032. package/dist/team/audit-log.js +3 -2
  1033. package/dist/team/audit-log.js.map +1 -1
  1034. package/dist/team/events.d.ts.map +1 -1
  1035. package/dist/team/events.js +6 -4
  1036. package/dist/team/events.js.map +1 -1
  1037. package/dist/team/followup-planner.d.ts +32 -0
  1038. package/dist/team/followup-planner.d.ts.map +1 -0
  1039. package/dist/team/followup-planner.js +82 -0
  1040. package/dist/team/followup-planner.js.map +1 -0
  1041. package/dist/team/git-worktree.d.ts.map +1 -1
  1042. package/dist/team/git-worktree.js +20 -10
  1043. package/dist/team/git-worktree.js.map +1 -1
  1044. package/dist/team/governance.d.ts +18 -0
  1045. package/dist/team/governance.d.ts.map +1 -0
  1046. package/dist/team/governance.js +68 -0
  1047. package/dist/team/governance.js.map +1 -0
  1048. package/dist/team/index.d.ts +2 -1
  1049. package/dist/team/index.d.ts.map +1 -1
  1050. package/dist/team/index.js +1 -0
  1051. package/dist/team/index.js.map +1 -1
  1052. package/dist/team/leader-nudge-guidance.d.ts +23 -0
  1053. package/dist/team/leader-nudge-guidance.d.ts.map +1 -0
  1054. package/dist/team/leader-nudge-guidance.js +44 -0
  1055. package/dist/team/leader-nudge-guidance.js.map +1 -0
  1056. package/dist/team/mcp-comm.d.ts.map +1 -1
  1057. package/dist/team/mcp-comm.js +17 -3
  1058. package/dist/team/mcp-comm.js.map +1 -1
  1059. package/dist/team/mcp-team-bridge.d.ts.map +1 -1
  1060. package/dist/team/mcp-team-bridge.js +11 -48
  1061. package/dist/team/mcp-team-bridge.js.map +1 -1
  1062. package/dist/team/merge-coordinator.d.ts +3 -1
  1063. package/dist/team/merge-coordinator.d.ts.map +1 -1
  1064. package/dist/team/merge-coordinator.js +27 -5
  1065. package/dist/team/merge-coordinator.js.map +1 -1
  1066. package/dist/team/model-contract.d.ts +17 -0
  1067. package/dist/team/model-contract.d.ts.map +1 -1
  1068. package/dist/team/model-contract.js +49 -2
  1069. package/dist/team/model-contract.js.map +1 -1
  1070. package/dist/team/monitor.d.ts.map +1 -1
  1071. package/dist/team/monitor.js +69 -2
  1072. package/dist/team/monitor.js.map +1 -1
  1073. package/dist/team/outbox-reader.d.ts.map +1 -1
  1074. package/dist/team/outbox-reader.js +13 -10
  1075. package/dist/team/outbox-reader.js.map +1 -1
  1076. package/dist/team/phase-controller.js +2 -2
  1077. package/dist/team/phase-controller.js.map +1 -1
  1078. package/dist/team/role-router.d.ts +36 -0
  1079. package/dist/team/role-router.d.ts.map +1 -0
  1080. package/dist/team/role-router.js +215 -0
  1081. package/dist/team/role-router.js.map +1 -0
  1082. package/dist/team/runtime-cli.d.ts.map +1 -1
  1083. package/dist/team/runtime-cli.js +35 -0
  1084. package/dist/team/runtime-cli.js.map +1 -1
  1085. package/dist/team/runtime-v2.d.ts +1 -0
  1086. package/dist/team/runtime-v2.d.ts.map +1 -1
  1087. package/dist/team/runtime-v2.js +164 -49
  1088. package/dist/team/runtime-v2.js.map +1 -1
  1089. package/dist/team/runtime.d.ts.map +1 -1
  1090. package/dist/team/runtime.js +29 -15
  1091. package/dist/team/runtime.js.map +1 -1
  1092. package/dist/team/scaling.d.ts.map +1 -1
  1093. package/dist/team/scaling.js +12 -3
  1094. package/dist/team/scaling.js.map +1 -1
  1095. package/dist/team/state/tasks.js +1 -1
  1096. package/dist/team/state/tasks.js.map +1 -1
  1097. package/dist/team/state-paths.js +2 -2
  1098. package/dist/team/state-paths.js.map +1 -1
  1099. package/dist/team/task-file-ops.d.ts.map +1 -1
  1100. package/dist/team/task-file-ops.js +3 -43
  1101. package/dist/team/task-file-ops.js.map +1 -1
  1102. package/dist/team/task-router.d.ts.map +1 -1
  1103. package/dist/team/task-router.js +31 -1
  1104. package/dist/team/task-router.js.map +1 -1
  1105. package/dist/team/team-ops.d.ts.map +1 -1
  1106. package/dist/team/team-ops.js +93 -49
  1107. package/dist/team/team-ops.js.map +1 -1
  1108. package/dist/team/team-registration.d.ts.map +1 -1
  1109. package/dist/team/team-registration.js +18 -14
  1110. package/dist/team/team-registration.js.map +1 -1
  1111. package/dist/team/team-status.d.ts +1 -1
  1112. package/dist/team/team-status.d.ts.map +1 -1
  1113. package/dist/team/team-status.js +8 -5
  1114. package/dist/team/team-status.js.map +1 -1
  1115. package/dist/team/tmux-comm.d.ts.map +1 -1
  1116. package/dist/team/tmux-comm.js +5 -2
  1117. package/dist/team/tmux-comm.js.map +1 -1
  1118. package/dist/team/tmux-session.d.ts +32 -5
  1119. package/dist/team/tmux-session.d.ts.map +1 -1
  1120. package/dist/team/tmux-session.js +179 -50
  1121. package/dist/team/tmux-session.js.map +1 -1
  1122. package/dist/team/types.d.ts +16 -3
  1123. package/dist/team/types.d.ts.map +1 -1
  1124. package/dist/team/types.js.map +1 -1
  1125. package/dist/team/worker-bootstrap.d.ts.map +1 -1
  1126. package/dist/team/worker-bootstrap.js +36 -23
  1127. package/dist/team/worker-bootstrap.js.map +1 -1
  1128. package/dist/team/worker-canonicalization.d.ts +8 -0
  1129. package/dist/team/worker-canonicalization.d.ts.map +1 -0
  1130. package/dist/team/worker-canonicalization.js +98 -0
  1131. package/dist/team/worker-canonicalization.js.map +1 -0
  1132. package/dist/tools/__tests__/cancel-integration.test.js +57 -2
  1133. package/dist/tools/__tests__/cancel-integration.test.js.map +1 -1
  1134. package/dist/tools/__tests__/deepinit-manifest.test.d.ts +7 -0
  1135. package/dist/tools/__tests__/deepinit-manifest.test.d.ts.map +1 -0
  1136. package/dist/tools/__tests__/deepinit-manifest.test.js +559 -0
  1137. package/dist/tools/__tests__/deepinit-manifest.test.js.map +1 -0
  1138. package/dist/tools/__tests__/state-tools.test.js +16 -0
  1139. package/dist/tools/__tests__/state-tools.test.js.map +1 -1
  1140. package/dist/tools/ast-tools.d.ts.map +1 -1
  1141. package/dist/tools/ast-tools.js +11 -2
  1142. package/dist/tools/ast-tools.js.map +1 -1
  1143. package/dist/tools/deepinit-manifest.d.ts +88 -0
  1144. package/dist/tools/deepinit-manifest.d.ts.map +1 -0
  1145. package/dist/tools/deepinit-manifest.js +373 -0
  1146. package/dist/tools/deepinit-manifest.js.map +1 -0
  1147. package/dist/tools/diagnostics/tsc-runner.js +2 -2
  1148. package/dist/tools/diagnostics/tsc-runner.js.map +1 -1
  1149. package/dist/tools/lsp/__tests__/client-devcontainer.test.d.ts +2 -0
  1150. package/dist/tools/lsp/__tests__/client-devcontainer.test.d.ts.map +1 -0
  1151. package/dist/tools/lsp/__tests__/client-devcontainer.test.js +185 -0
  1152. package/dist/tools/lsp/__tests__/client-devcontainer.test.js.map +1 -0
  1153. package/dist/tools/lsp/__tests__/client-singleton.test.d.ts +2 -0
  1154. package/dist/tools/lsp/__tests__/client-singleton.test.d.ts.map +1 -0
  1155. package/dist/tools/lsp/__tests__/client-singleton.test.js +17 -0
  1156. package/dist/tools/lsp/__tests__/client-singleton.test.js.map +1 -0
  1157. package/dist/tools/lsp/__tests__/client-timeout-env.test.js +18 -2
  1158. package/dist/tools/lsp/__tests__/client-timeout-env.test.js.map +1 -1
  1159. package/dist/tools/lsp/__tests__/devcontainer.test.d.ts +2 -0
  1160. package/dist/tools/lsp/__tests__/devcontainer.test.d.ts.map +1 -0
  1161. package/dist/tools/lsp/__tests__/devcontainer.test.js +311 -0
  1162. package/dist/tools/lsp/__tests__/devcontainer.test.js.map +1 -0
  1163. package/dist/tools/lsp/client.d.ts +17 -3
  1164. package/dist/tools/lsp/client.d.ts.map +1 -1
  1165. package/dist/tools/lsp/client.js +228 -77
  1166. package/dist/tools/lsp/client.js.map +1 -1
  1167. package/dist/tools/lsp/devcontainer.d.ts +12 -0
  1168. package/dist/tools/lsp/devcontainer.d.ts.map +1 -0
  1169. package/dist/tools/lsp/devcontainer.js +276 -0
  1170. package/dist/tools/lsp/devcontainer.js.map +1 -0
  1171. package/dist/tools/lsp/index.d.ts +2 -0
  1172. package/dist/tools/lsp/index.d.ts.map +1 -1
  1173. package/dist/tools/lsp/index.js +1 -0
  1174. package/dist/tools/lsp/index.js.map +1 -1
  1175. package/dist/tools/lsp/servers.d.ts +1 -0
  1176. package/dist/tools/lsp/servers.d.ts.map +1 -1
  1177. package/dist/tools/lsp/servers.js +20 -5
  1178. package/dist/tools/lsp/servers.js.map +1 -1
  1179. package/dist/tools/lsp/utils.d.ts.map +1 -1
  1180. package/dist/tools/lsp/utils.js +7 -1
  1181. package/dist/tools/lsp/utils.js.map +1 -1
  1182. package/dist/tools/python-repl/__tests__/bridge-manager-cleanup.test.js +34 -1
  1183. package/dist/tools/python-repl/__tests__/bridge-manager-cleanup.test.js.map +1 -1
  1184. package/dist/tools/python-repl/bridge-manager.d.ts +2 -0
  1185. package/dist/tools/python-repl/bridge-manager.d.ts.map +1 -1
  1186. package/dist/tools/python-repl/bridge-manager.js +38 -2
  1187. package/dist/tools/python-repl/bridge-manager.js.map +1 -1
  1188. package/dist/tools/python-repl/socket-client.d.ts.map +1 -1
  1189. package/dist/tools/python-repl/socket-client.js +37 -7
  1190. package/dist/tools/python-repl/socket-client.js.map +1 -1
  1191. package/dist/tools/python-repl/tool.d.ts.map +1 -1
  1192. package/dist/tools/python-repl/tool.js +1 -5
  1193. package/dist/tools/python-repl/tool.js.map +1 -1
  1194. package/dist/tools/state-tools.d.ts.map +1 -1
  1195. package/dist/tools/state-tools.js +193 -57
  1196. package/dist/tools/state-tools.js.map +1 -1
  1197. package/dist/tools/trace-tools.d.ts.map +1 -1
  1198. package/dist/tools/trace-tools.js +7 -5
  1199. package/dist/tools/trace-tools.js.map +1 -1
  1200. package/dist/tools/types.d.ts +16 -0
  1201. package/dist/tools/types.d.ts.map +1 -1
  1202. package/dist/utils/__tests__/paths.test.js +86 -1
  1203. package/dist/utils/__tests__/paths.test.js.map +1 -1
  1204. package/dist/utils/jsonc.d.ts.map +1 -1
  1205. package/dist/utils/jsonc.js +6 -2
  1206. package/dist/utils/jsonc.js.map +1 -1
  1207. package/dist/utils/omc-cli-rendering.d.ts +8 -0
  1208. package/dist/utils/omc-cli-rendering.d.ts.map +1 -0
  1209. package/dist/utils/omc-cli-rendering.js +37 -0
  1210. package/dist/utils/omc-cli-rendering.js.map +1 -0
  1211. package/dist/utils/paths.d.ts +32 -1
  1212. package/dist/utils/paths.d.ts.map +1 -1
  1213. package/dist/utils/paths.js +103 -8
  1214. package/dist/utils/paths.js.map +1 -1
  1215. package/dist/utils/skill-resources.d.ts +7 -0
  1216. package/dist/utils/skill-resources.d.ts.map +1 -0
  1217. package/dist/utils/skill-resources.js +53 -0
  1218. package/dist/utils/skill-resources.js.map +1 -0
  1219. package/dist/utils/ssrf-guard.d.ts.map +1 -1
  1220. package/dist/utils/ssrf-guard.js +22 -0
  1221. package/dist/utils/ssrf-guard.js.map +1 -1
  1222. package/docs/ARCHITECTURE.md +468 -37
  1223. package/docs/CLAUDE.md +1 -1
  1224. package/docs/COMPATIBILITY.md +18 -1
  1225. package/docs/LOCAL_PLUGIN_INSTALL.md +17 -3
  1226. package/docs/MIGRATION.md +8 -46
  1227. package/docs/PERFORMANCE-MONITORING.md +2 -2
  1228. package/docs/REFERENCE.md +99 -58
  1229. package/docs/design/SKILLS_2_0_ADAPTATION.md +115 -0
  1230. package/docs/ko/ARCHITECTURE.md +1 -1
  1231. package/docs/ko/MIGRATION.md +7 -47
  1232. package/docs/ko/REFERENCE.md +1 -15
  1233. package/docs/partials/features.md +1 -32
  1234. package/docs/partials/mode-hierarchy.md +7 -22
  1235. package/docs/partials/verification-tiers.md +1 -1
  1236. package/docs/plans/2026-02-26-skill-optimization-design.md +3 -3
  1237. package/docs/shared/features.md +1 -32
  1238. package/docs/shared/mode-hierarchy.md +7 -22
  1239. package/docs/shared/verification-tiers.md +1 -1
  1240. package/hooks/hooks.json +21 -31
  1241. package/package.json +1 -1
  1242. package/scripts/cleanup-orphans.mjs +12 -9
  1243. package/scripts/context-guard-stop.mjs +13 -5
  1244. package/scripts/context-safety.mjs +12 -149
  1245. package/scripts/eval-autoresearch-json.mjs +49 -0
  1246. package/scripts/eval-autoresearch-timed-json.mjs +62 -0
  1247. package/scripts/generate-featured-contributors.ts +43 -0
  1248. package/scripts/keyword-detector.mjs +136 -36
  1249. package/scripts/persistent-mode.cjs +87 -25
  1250. package/scripts/persistent-mode.mjs +37 -17
  1251. package/scripts/plugin-setup.mjs +19 -16
  1252. package/scripts/post-tool-verifier.mjs +25 -20
  1253. package/scripts/pre-tool-enforcer.mjs +184 -6
  1254. package/scripts/project-memory-session.mjs +5 -1
  1255. package/scripts/release.ts +511 -0
  1256. package/scripts/run-provider-advisor.js +10 -4
  1257. package/scripts/session-end.mjs +3 -2
  1258. package/scripts/session-start.mjs +118 -4
  1259. package/scripts/session-summary.mjs +241 -0
  1260. package/scripts/setup-claude-md.sh +140 -3
  1261. package/scripts/skill-injector.mjs +2 -1
  1262. package/scripts/sync-metadata.ts +41 -7
  1263. package/scripts/sync-version.sh +42 -0
  1264. package/skills/AGENTS.md +108 -74
  1265. package/skills/ai-slop-cleaner/SKILL.md +120 -117
  1266. package/skills/ask/SKILL.md +4 -2
  1267. package/skills/autopilot/SKILL.md +1 -0
  1268. package/skills/cancel/SKILL.md +62 -0
  1269. package/skills/ccg/SKILL.md +7 -13
  1270. package/skills/configure-notifications/SKILL.md +1 -0
  1271. package/skills/deep-dive/SKILL.md +476 -0
  1272. package/skills/deep-interview/SKILL.md +109 -14
  1273. package/skills/deepinit/SKILL.md +1 -0
  1274. package/skills/external-context/SKILL.md +1 -0
  1275. package/skills/hud/SKILL.md +6 -5
  1276. package/skills/learner/SKILL.md +63 -57
  1277. package/skills/mcp-setup/SKILL.md +1 -0
  1278. package/skills/omc-doctor/SKILL.md +6 -5
  1279. package/skills/omc-reference/SKILL.md +141 -0
  1280. package/skills/omc-setup/SKILL.md +11 -2
  1281. package/skills/omc-setup/phases/01-install-claude-md.md +11 -1
  1282. package/skills/omc-setup/phases/02-configure.md +3 -1
  1283. package/skills/omc-teams/SKILL.md +9 -5
  1284. package/skills/plan/SKILL.md +23 -7
  1285. package/skills/project-session-manager/SKILL.md +3 -2
  1286. package/skills/ralph/SKILL.md +17 -1
  1287. package/skills/ralplan/SKILL.md +4 -1
  1288. package/skills/release/SKILL.md +1 -0
  1289. package/skills/sciomc/SKILL.md +1 -0
  1290. package/skills/setup/SKILL.md +9 -8
  1291. package/skills/skill-creator/SKILL.md +311 -0
  1292. package/skills/skill-creator/references/upstream-anthropic-skill-creator.md +485 -0
  1293. package/skills/skill-debugger/README.md +52 -0
  1294. package/skills/skill-debugger/SKILL.md +146 -270
  1295. package/skills/skill-quality-analyzer/HOW_TO_USE.md +92 -185
  1296. package/skills/skill-quality-analyzer/README.md +39 -35
  1297. package/skills/skill-quality-analyzer/SKILL.md +105 -196
  1298. package/skills/skill-tester/README.md +31 -23
  1299. package/skills/skill-tester/SKILL.md +116 -266
  1300. package/skills/team/SKILL.md +1 -0
  1301. package/skills/trace/SKILL.md +262 -0
  1302. package/skills/ultraqa/SKILL.md +1 -0
  1303. package/skills/ultrawork/SKILL.md +1 -0
  1304. package/skills/visual-verdict/SKILL.md +77 -0
  1305. package/skills/writer-memory/SKILL.md +1 -0
  1306. package/templates/hooks/keyword-detector.mjs +89 -25
  1307. package/templates/hooks/persistent-mode.mjs +33 -9
  1308. package/templates/hooks/post-tool-use-failure.mjs +2 -5
  1309. package/templates/hooks/pre-tool-use.mjs +47 -1
  1310. package/templates/hooks/session-start.mjs +105 -14
  1311. package/templates/hooks/stop-continuation.mjs +7 -1
  1312. package/dist/__tests__/codex-backoff.test.d.ts +0 -2
  1313. package/dist/__tests__/codex-backoff.test.d.ts.map +0 -1
  1314. package/dist/__tests__/codex-backoff.test.js +0 -143
  1315. package/dist/__tests__/codex-backoff.test.js.map +0 -1
  1316. package/dist/__tests__/codex-callsite-normalization.test.js +0 -112
  1317. package/dist/__tests__/compatibility-security.test.d.ts +0 -13
  1318. package/dist/__tests__/compatibility-security.test.d.ts.map +0 -1
  1319. package/dist/__tests__/compatibility-security.test.js +0 -403
  1320. package/dist/__tests__/compatibility-security.test.js.map +0 -1
  1321. package/dist/__tests__/compatibility.test.d.ts +0 -7
  1322. package/dist/__tests__/compatibility.test.d.ts.map +0 -1
  1323. package/dist/__tests__/compatibility.test.js +0 -484
  1324. package/dist/__tests__/compatibility.test.js.map +0 -1
  1325. package/dist/__tests__/example.test.d.ts +0 -2
  1326. package/dist/__tests__/example.test.d.ts.map +0 -1
  1327. package/dist/__tests__/example.test.js +0 -20
  1328. package/dist/__tests__/example.test.js.map +0 -1
  1329. package/dist/__tests__/hud/analytics-display.test.d.ts +0 -2
  1330. package/dist/__tests__/hud/analytics-display.test.d.ts.map +0 -1
  1331. package/dist/__tests__/hud/analytics-display.test.js +0 -236
  1332. package/dist/__tests__/hud/analytics-display.test.js.map +0 -1
  1333. package/dist/__tests__/hud/top-agents.test.d.ts +0 -8
  1334. package/dist/__tests__/hud/top-agents.test.d.ts.map +0 -1
  1335. package/dist/__tests__/hud/top-agents.test.js +0 -158
  1336. package/dist/__tests__/hud/top-agents.test.js.map +0 -1
  1337. package/dist/__tests__/inline-prompt-integration.test.d.ts +0 -2
  1338. package/dist/__tests__/inline-prompt-integration.test.d.ts.map +0 -1
  1339. package/dist/__tests__/inline-prompt-integration.test.js +0 -411
  1340. package/dist/__tests__/inline-prompt-integration.test.js.map +0 -1
  1341. package/dist/__tests__/inline-success-shape.test.d.ts +0 -2
  1342. package/dist/__tests__/inline-success-shape.test.d.ts.map +0 -1
  1343. package/dist/__tests__/inline-success-shape.test.js +0 -130
  1344. package/dist/__tests__/inline-success-shape.test.js.map +0 -1
  1345. package/dist/__tests__/mcp-fallback-429.test.d.ts +0 -2
  1346. package/dist/__tests__/mcp-fallback-429.test.d.ts.map +0 -1
  1347. package/dist/__tests__/mcp-fallback-429.test.js +0 -193
  1348. package/dist/__tests__/mcp-fallback-429.test.js.map +0 -1
  1349. package/dist/__tests__/mcp-server-workflows.test.d.ts +0 -2
  1350. package/dist/__tests__/mcp-server-workflows.test.d.ts.map +0 -1
  1351. package/dist/__tests__/mcp-server-workflows.test.js +0 -301
  1352. package/dist/__tests__/mcp-server-workflows.test.js.map +0 -1
  1353. package/dist/__tests__/multi-model-mcp-integration.test.d.ts +0 -2
  1354. package/dist/__tests__/multi-model-mcp-integration.test.d.ts.map +0 -1
  1355. package/dist/__tests__/multi-model-mcp-integration.test.js +0 -69
  1356. package/dist/__tests__/multi-model-mcp-integration.test.js.map +0 -1
  1357. package/dist/__tests__/multi-model-mcp.test.d.ts +0 -2
  1358. package/dist/__tests__/multi-model-mcp.test.d.ts.map +0 -1
  1359. package/dist/__tests__/multi-model-mcp.test.js +0 -145
  1360. package/dist/__tests__/multi-model-mcp.test.js.map +0 -1
  1361. package/dist/__tests__/omc-shorthand.test.d.ts +0 -2
  1362. package/dist/__tests__/omc-shorthand.test.d.ts.map +0 -1
  1363. package/dist/__tests__/omc-shorthand.test.js +0 -73
  1364. package/dist/__tests__/omc-shorthand.test.js.map +0 -1
  1365. package/dist/__tests__/prompt-file-only.test.d.ts +0 -2
  1366. package/dist/__tests__/prompt-file-only.test.d.ts.map +0 -1
  1367. package/dist/__tests__/prompt-file-only.test.js +0 -263
  1368. package/dist/__tests__/prompt-file-only.test.js.map +0 -1
  1369. package/dist/__tests__/session-catalog.test.d.ts +0 -2
  1370. package/dist/__tests__/session-catalog.test.d.ts.map +0 -1
  1371. package/dist/__tests__/session-catalog.test.js +0 -195
  1372. package/dist/__tests__/session-catalog.test.js.map +0 -1
  1373. package/dist/__tests__/session-migration.test.d.ts +0 -2
  1374. package/dist/__tests__/session-migration.test.d.ts.map +0 -1
  1375. package/dist/__tests__/session-migration.test.js +0 -155
  1376. package/dist/__tests__/session-migration.test.js.map +0 -1
  1377. package/dist/__tests__/shell-path.test.d.ts +0 -5
  1378. package/dist/__tests__/shell-path.test.d.ts.map +0 -1
  1379. package/dist/__tests__/shell-path.test.js +0 -70
  1380. package/dist/__tests__/shell-path.test.js.map +0 -1
  1381. package/dist/__tests__/smoke-functional.test.d.ts +0 -8
  1382. package/dist/__tests__/smoke-functional.test.d.ts.map +0 -1
  1383. package/dist/__tests__/smoke-functional.test.js +0 -450
  1384. package/dist/__tests__/smoke-functional.test.js.map +0 -1
  1385. package/dist/__tests__/smoke-team-worker.test.d.ts +0 -15
  1386. package/dist/__tests__/smoke-team-worker.test.d.ts.map +0 -1
  1387. package/dist/__tests__/smoke-team-worker.test.js +0 -483
  1388. package/dist/__tests__/smoke-team-worker.test.js.map +0 -1
  1389. package/dist/__tests__/validate-and-read-file.test.d.ts +0 -2
  1390. package/dist/__tests__/validate-and-read-file.test.d.ts.map +0 -1
  1391. package/dist/__tests__/validate-and-read-file.test.js +0 -84
  1392. package/dist/__tests__/validate-and-read-file.test.js.map +0 -1
  1393. package/dist/__tests__/worker-adapter.test.d.ts +0 -5
  1394. package/dist/__tests__/worker-adapter.test.d.ts.map +0 -1
  1395. package/dist/__tests__/worker-adapter.test.js +0 -211
  1396. package/dist/__tests__/worker-adapter.test.js.map +0 -1
  1397. package/dist/agents/coordinator-deprecated.d.ts +0 -18
  1398. package/dist/agents/coordinator-deprecated.d.ts.map +0 -1
  1399. package/dist/agents/coordinator-deprecated.js +0 -38
  1400. package/dist/agents/coordinator-deprecated.js.map +0 -1
  1401. package/dist/agents/deep-executor.d.ts +0 -15
  1402. package/dist/agents/deep-executor.d.ts.map +0 -1
  1403. package/dist/agents/deep-executor.js +0 -45
  1404. package/dist/agents/deep-executor.js.map +0 -1
  1405. package/dist/agents/delegation-validator.d.ts +0 -31
  1406. package/dist/agents/delegation-validator.d.ts.map +0 -1
  1407. package/dist/agents/delegation-validator.js +0 -75
  1408. package/dist/agents/delegation-validator.js.map +0 -1
  1409. package/dist/agents/harsh-critic.d.ts +0 -14
  1410. package/dist/agents/harsh-critic.d.ts.map +0 -1
  1411. package/dist/agents/harsh-critic.js +0 -42
  1412. package/dist/agents/harsh-critic.js.map +0 -1
  1413. package/dist/agents/preamble.d.ts +0 -38
  1414. package/dist/agents/preamble.d.ts.map +0 -1
  1415. package/dist/agents/preamble.js +0 -122
  1416. package/dist/agents/preamble.js.map +0 -1
  1417. package/dist/agents/prompt-generator.d.ts +0 -96
  1418. package/dist/agents/prompt-generator.d.ts.map +0 -1
  1419. package/dist/agents/prompt-generator.js +0 -141
  1420. package/dist/agents/prompt-generator.js.map +0 -1
  1421. package/dist/agents/researcher.d.ts +0 -12
  1422. package/dist/agents/researcher.d.ts.map +0 -1
  1423. package/dist/agents/researcher.js +0 -40
  1424. package/dist/agents/researcher.js.map +0 -1
  1425. package/dist/agents/vision.d.ts +0 -11
  1426. package/dist/agents/vision.d.ts.map +0 -1
  1427. package/dist/agents/vision.js +0 -40
  1428. package/dist/agents/vision.js.map +0 -1
  1429. package/dist/cli/commands/__tests__/cleanup.test.d.ts +0 -2
  1430. package/dist/cli/commands/__tests__/cleanup.test.d.ts.map +0 -1
  1431. package/dist/cli/commands/__tests__/cleanup.test.js +0 -37
  1432. package/dist/cli/commands/__tests__/cleanup.test.js.map +0 -1
  1433. package/dist/compatibility/discovery.d.ts +0 -58
  1434. package/dist/compatibility/discovery.d.ts.map +0 -1
  1435. package/dist/compatibility/discovery.js +0 -620
  1436. package/dist/compatibility/discovery.js.map +0 -1
  1437. package/dist/compatibility/index.d.ts +0 -51
  1438. package/dist/compatibility/index.d.ts.map +0 -1
  1439. package/dist/compatibility/index.js +0 -72
  1440. package/dist/compatibility/index.js.map +0 -1
  1441. package/dist/compatibility/mcp-bridge.d.ts +0 -143
  1442. package/dist/compatibility/mcp-bridge.d.ts.map +0 -1
  1443. package/dist/compatibility/mcp-bridge.js +0 -540
  1444. package/dist/compatibility/mcp-bridge.js.map +0 -1
  1445. package/dist/compatibility/permission-adapter.d.ts +0 -79
  1446. package/dist/compatibility/permission-adapter.d.ts.map +0 -1
  1447. package/dist/compatibility/permission-adapter.js +0 -369
  1448. package/dist/compatibility/permission-adapter.js.map +0 -1
  1449. package/dist/compatibility/registry.d.ts +0 -161
  1450. package/dist/compatibility/registry.d.ts.map +0 -1
  1451. package/dist/compatibility/registry.js +0 -389
  1452. package/dist/compatibility/registry.js.map +0 -1
  1453. package/dist/compatibility/types.d.ts +0 -249
  1454. package/dist/compatibility/types.d.ts.map +0 -1
  1455. package/dist/compatibility/types.js +0 -8
  1456. package/dist/compatibility/types.js.map +0 -1
  1457. package/dist/features/model-routing/__tests__/external-model-policy.test.d.ts +0 -2
  1458. package/dist/features/model-routing/__tests__/external-model-policy.test.d.ts.map +0 -1
  1459. package/dist/features/model-routing/__tests__/external-model-policy.test.js +0 -476
  1460. package/dist/features/model-routing/__tests__/external-model-policy.test.js.map +0 -1
  1461. package/dist/features/model-routing/external-model-policy.d.ts +0 -27
  1462. package/dist/features/model-routing/external-model-policy.d.ts.map +0 -1
  1463. package/dist/features/model-routing/external-model-policy.js +0 -145
  1464. package/dist/features/model-routing/external-model-policy.js.map +0 -1
  1465. package/dist/features/verification/example.d.ts +0 -49
  1466. package/dist/features/verification/example.d.ts.map +0 -1
  1467. package/dist/features/verification/example.js +0 -237
  1468. package/dist/features/verification/example.js.map +0 -1
  1469. package/dist/hooks/setup/__tests__/github-star.test.d.ts +0 -8
  1470. package/dist/hooks/setup/__tests__/github-star.test.d.ts.map +0 -1
  1471. package/dist/hooks/setup/__tests__/github-star.test.js +0 -208
  1472. package/dist/hooks/setup/__tests__/github-star.test.js.map +0 -1
  1473. package/dist/hooks/setup/github-star.d.ts +0 -37
  1474. package/dist/hooks/setup/github-star.d.ts.map +0 -1
  1475. package/dist/hooks/setup/github-star.js +0 -123
  1476. package/dist/hooks/setup/github-star.js.map +0 -1
  1477. package/dist/hooks/swarm/__tests__/addMoreTasks.test.d.ts +0 -2
  1478. package/dist/hooks/swarm/__tests__/addMoreTasks.test.d.ts.map +0 -1
  1479. package/dist/hooks/swarm/__tests__/addMoreTasks.test.js +0 -203
  1480. package/dist/hooks/swarm/__tests__/addMoreTasks.test.js.map +0 -1
  1481. package/dist/hooks/swarm/__tests__/aggressive-swarm.integration.test.d.ts +0 -2
  1482. package/dist/hooks/swarm/__tests__/aggressive-swarm.integration.test.d.ts.map +0 -1
  1483. package/dist/hooks/swarm/__tests__/aggressive-swarm.integration.test.js +0 -273
  1484. package/dist/hooks/swarm/__tests__/aggressive-swarm.integration.test.js.map +0 -1
  1485. package/dist/hooks/swarm/__tests__/claiming.test.d.ts +0 -2
  1486. package/dist/hooks/swarm/__tests__/claiming.test.d.ts.map +0 -1
  1487. package/dist/hooks/swarm/__tests__/claiming.test.js +0 -170
  1488. package/dist/hooks/swarm/__tests__/claiming.test.js.map +0 -1
  1489. package/dist/hooks/swarm/__tests__/index.test.d.ts.map +0 -1
  1490. package/dist/hooks/swarm/__tests__/index.test.js +0 -157
  1491. package/dist/hooks/swarm/__tests__/index.test.js.map +0 -1
  1492. package/dist/hooks/swarm/__tests__/migration.test.d.ts +0 -2
  1493. package/dist/hooks/swarm/__tests__/migration.test.d.ts.map +0 -1
  1494. package/dist/hooks/swarm/__tests__/migration.test.js +0 -140
  1495. package/dist/hooks/swarm/__tests__/migration.test.js.map +0 -1
  1496. package/dist/hooks/swarm/__tests__/mode-registry.test.d.ts +0 -2
  1497. package/dist/hooks/swarm/__tests__/mode-registry.test.d.ts.map +0 -1
  1498. package/dist/hooks/swarm/__tests__/mode-registry.test.js +0 -177
  1499. package/dist/hooks/swarm/__tests__/mode-registry.test.js.map +0 -1
  1500. package/dist/hooks/swarm/__tests__/priority-claiming.test.d.ts +0 -2
  1501. package/dist/hooks/swarm/__tests__/priority-claiming.test.d.ts.map +0 -1
  1502. package/dist/hooks/swarm/__tests__/priority-claiming.test.js +0 -122
  1503. package/dist/hooks/swarm/__tests__/priority-claiming.test.js.map +0 -1
  1504. package/dist/hooks/swarm/__tests__/types.test.d.ts +0 -2
  1505. package/dist/hooks/swarm/__tests__/types.test.d.ts.map +0 -1
  1506. package/dist/hooks/swarm/__tests__/types.test.js +0 -73
  1507. package/dist/hooks/swarm/__tests__/types.test.js.map +0 -1
  1508. package/dist/hooks/swarm/claiming.d.ts +0 -123
  1509. package/dist/hooks/swarm/claiming.d.ts.map +0 -1
  1510. package/dist/hooks/swarm/claiming.js +0 -639
  1511. package/dist/hooks/swarm/claiming.js.map +0 -1
  1512. package/dist/hooks/swarm/index.d.ts +0 -261
  1513. package/dist/hooks/swarm/index.d.ts.map +0 -1
  1514. package/dist/hooks/swarm/index.js +0 -485
  1515. package/dist/hooks/swarm/index.js.map +0 -1
  1516. package/dist/hooks/swarm/state.d.ts +0 -131
  1517. package/dist/hooks/swarm/state.d.ts.map +0 -1
  1518. package/dist/hooks/swarm/state.js +0 -690
  1519. package/dist/hooks/swarm/state.js.map +0 -1
  1520. package/dist/hooks/swarm/types.d.ts +0 -138
  1521. package/dist/hooks/swarm/types.d.ts.map +0 -1
  1522. package/dist/hooks/swarm/types.js +0 -22
  1523. package/dist/hooks/swarm/types.js.map +0 -1
  1524. package/dist/hooks/ultrapilot/decomposer.d.ts +0 -141
  1525. package/dist/hooks/ultrapilot/decomposer.d.ts.map +0 -1
  1526. package/dist/hooks/ultrapilot/decomposer.js +0 -379
  1527. package/dist/hooks/ultrapilot/decomposer.js.map +0 -1
  1528. package/dist/hooks/ultrapilot/index.d.ts +0 -121
  1529. package/dist/hooks/ultrapilot/index.d.ts.map +0 -1
  1530. package/dist/hooks/ultrapilot/index.js +0 -353
  1531. package/dist/hooks/ultrapilot/index.js.map +0 -1
  1532. package/dist/hooks/ultrapilot/state.d.ts +0 -72
  1533. package/dist/hooks/ultrapilot/state.d.ts.map +0 -1
  1534. package/dist/hooks/ultrapilot/state.js +0 -275
  1535. package/dist/hooks/ultrapilot/state.js.map +0 -1
  1536. package/dist/hooks/ultrapilot/types.d.ts +0 -115
  1537. package/dist/hooks/ultrapilot/types.d.ts.map +0 -1
  1538. package/dist/hooks/ultrapilot/types.js +0 -36
  1539. package/dist/hooks/ultrapilot/types.js.map +0 -1
  1540. package/dist/interop/__tests__/worker-adapter-integration.test.d.ts +0 -2
  1541. package/dist/interop/__tests__/worker-adapter-integration.test.d.ts.map +0 -1
  1542. package/dist/interop/__tests__/worker-adapter-integration.test.js +0 -219
  1543. package/dist/interop/__tests__/worker-adapter-integration.test.js.map +0 -1
  1544. package/dist/interop/__tests__/worker-adapter.test.d.ts +0 -2
  1545. package/dist/interop/__tests__/worker-adapter.test.d.ts.map +0 -1
  1546. package/dist/interop/__tests__/worker-adapter.test.js +0 -408
  1547. package/dist/interop/__tests__/worker-adapter.test.js.map +0 -1
  1548. package/dist/interop/adapter-types.d.ts +0 -39
  1549. package/dist/interop/adapter-types.d.ts.map +0 -1
  1550. package/dist/interop/adapter-types.js +0 -9
  1551. package/dist/interop/adapter-types.js.map +0 -1
  1552. package/dist/interop/worker-adapter.d.ts +0 -116
  1553. package/dist/interop/worker-adapter.d.ts.map +0 -1
  1554. package/dist/interop/worker-adapter.js +0 -324
  1555. package/dist/interop/worker-adapter.js.map +0 -1
  1556. package/dist/mcp/__tests__/codex-reasoning-effort.test.d.ts +0 -2
  1557. package/dist/mcp/__tests__/codex-reasoning-effort.test.d.ts.map +0 -1
  1558. package/dist/mcp/__tests__/codex-reasoning-effort.test.js +0 -175
  1559. package/dist/mcp/__tests__/codex-reasoning-effort.test.js.map +0 -1
  1560. package/dist/mcp/__tests__/job-state-db-deprecation.test.d.ts +0 -2
  1561. package/dist/mcp/__tests__/job-state-db-deprecation.test.d.ts.map +0 -1
  1562. package/dist/mcp/__tests__/job-state-db-deprecation.test.js +0 -119
  1563. package/dist/mcp/__tests__/job-state-db-deprecation.test.js.map +0 -1
  1564. package/dist/mcp/__tests__/shared-exec.test.d.ts +0 -2
  1565. package/dist/mcp/__tests__/shared-exec.test.d.ts.map +0 -1
  1566. package/dist/mcp/__tests__/shared-exec.test.js +0 -151
  1567. package/dist/mcp/__tests__/shared-exec.test.js.map +0 -1
  1568. package/dist/mcp/__tests__/team-server-deprecation.test.d.ts +0 -2
  1569. package/dist/mcp/__tests__/team-server-deprecation.test.d.ts.map +0 -1
  1570. package/dist/mcp/__tests__/team-server-deprecation.test.js +0 -56
  1571. package/dist/mcp/__tests__/team-server-deprecation.test.js.map +0 -1
  1572. package/dist/mcp/cli-detection.d.ts +0 -22
  1573. package/dist/mcp/cli-detection.d.ts.map +0 -1
  1574. package/dist/mcp/cli-detection.js +0 -77
  1575. package/dist/mcp/cli-detection.js.map +0 -1
  1576. package/dist/mcp/codex-core.d.ts +0 -119
  1577. package/dist/mcp/codex-core.d.ts.map +0 -1
  1578. package/dist/mcp/codex-core.js +0 -942
  1579. package/dist/mcp/codex-core.js.map +0 -1
  1580. package/dist/mcp/codex-request-normalizer.js +0 -59
  1581. package/dist/mcp/codex-server.d.ts +0 -20
  1582. package/dist/mcp/codex-server.d.ts.map +0 -1
  1583. package/dist/mcp/codex-server.js +0 -81
  1584. package/dist/mcp/codex-server.js.map +0 -1
  1585. package/dist/mcp/codex-standalone-server.d.ts +0 -8
  1586. package/dist/mcp/codex-standalone-server.d.ts.map +0 -1
  1587. package/dist/mcp/codex-standalone-server.js +0 -81
  1588. package/dist/mcp/codex-standalone-server.js.map +0 -1
  1589. package/dist/mcp/gemini-core.d.ts +0 -75
  1590. package/dist/mcp/gemini-core.d.ts.map +0 -1
  1591. package/dist/mcp/gemini-core.js +0 -674
  1592. package/dist/mcp/gemini-core.js.map +0 -1
  1593. package/dist/mcp/gemini-server.d.ts +0 -20
  1594. package/dist/mcp/gemini-server.d.ts.map +0 -1
  1595. package/dist/mcp/gemini-server.js +0 -69
  1596. package/dist/mcp/gemini-server.js.map +0 -1
  1597. package/dist/mcp/gemini-standalone-server.d.ts +0 -8
  1598. package/dist/mcp/gemini-standalone-server.d.ts.map +0 -1
  1599. package/dist/mcp/gemini-standalone-server.js +0 -72
  1600. package/dist/mcp/gemini-standalone-server.js.map +0 -1
  1601. package/dist/mcp/job-state-db.d.ts +0 -2
  1602. package/dist/mcp/job-state-db.d.ts.map +0 -1
  1603. package/dist/mcp/job-state-db.js +0 -3
  1604. package/dist/mcp/job-state-db.js.map +0 -1
  1605. package/dist/mcp/shared-exec.d.ts +0 -50
  1606. package/dist/mcp/shared-exec.d.ts.map +0 -1
  1607. package/dist/mcp/shared-exec.js +0 -182
  1608. package/dist/mcp/shared-exec.js.map +0 -1
  1609. package/dist/team/__tests__/cli-path-resolution.test.d.ts +0 -2
  1610. package/dist/team/__tests__/cli-path-resolution.test.d.ts.map +0 -1
  1611. package/dist/team/__tests__/cli-path-resolution.test.js +0 -281
  1612. package/dist/team/__tests__/cli-path-resolution.test.js.map +0 -1
  1613. package/dist/team/__tests__/layout-stabilizer.test.d.ts +0 -2
  1614. package/dist/team/__tests__/layout-stabilizer.test.d.ts.map +0 -1
  1615. package/dist/team/__tests__/layout-stabilizer.test.js +0 -217
  1616. package/dist/team/__tests__/layout-stabilizer.test.js.map +0 -1
  1617. package/dist/team/__tests__/pane-readiness.test.d.ts +0 -2
  1618. package/dist/team/__tests__/pane-readiness.test.d.ts.map +0 -1
  1619. package/dist/team/__tests__/pane-readiness.test.js +0 -185
  1620. package/dist/team/__tests__/pane-readiness.test.js.map +0 -1
  1621. package/dist/team/__tests__/runtime-gemini-prompt.test.d.ts +0 -2
  1622. package/dist/team/__tests__/runtime-gemini-prompt.test.d.ts.map +0 -1
  1623. package/dist/team/__tests__/runtime-gemini-prompt.test.js +0 -153
  1624. package/dist/team/__tests__/runtime-gemini-prompt.test.js.map +0 -1
  1625. package/dist/team/__tests__/runtime-interop-spawn-regression.test.d.ts +0 -2
  1626. package/dist/team/__tests__/runtime-interop-spawn-regression.test.d.ts.map +0 -1
  1627. package/dist/team/__tests__/runtime-interop-spawn-regression.test.js +0 -139
  1628. package/dist/team/__tests__/runtime-interop-spawn-regression.test.js.map +0 -1
  1629. package/dist/team/__tests__/shell-path.test.d.ts +0 -2
  1630. package/dist/team/__tests__/shell-path.test.d.ts.map +0 -1
  1631. package/dist/team/__tests__/shell-path.test.js +0 -193
  1632. package/dist/team/__tests__/shell-path.test.js.map +0 -1
  1633. package/dist/team/__tests__/wait-for-shell-ready.test.d.ts +0 -2
  1634. package/dist/team/__tests__/wait-for-shell-ready.test.d.ts.map +0 -1
  1635. package/dist/team/__tests__/wait-for-shell-ready.test.js +0 -242
  1636. package/dist/team/__tests__/wait-for-shell-ready.test.js.map +0 -1
  1637. package/dist/team/shell-path.d.ts +0 -21
  1638. package/dist/team/shell-path.d.ts.map +0 -1
  1639. package/dist/team/shell-path.js +0 -73
  1640. package/dist/team/shell-path.js.map +0 -1
  1641. package/scripts/ask-codex.sh +0 -24
  1642. package/scripts/ask-gemini.sh +0 -24
  1643. package/scripts/build-gemini-server.mjs +0 -74
  1644. package/scripts/test-codex-gemini-team.mjs +0 -78
  1645. package/skills/skill-development/SKILL.md +0 -218
  1646. package/skills/skill-development/references/description-patterns.md +0 -160
  1647. package/skills/skill-development/references/format-guide.md +0 -203
  1648. /package/dist/{hooks/swarm → features/delegation-categories}/__tests__/index.test.d.ts +0 -0
@@ -0,0 +1,292 @@
1
+ import { describe, it, expect, afterEach } from 'vitest';
2
+ import { spawnSync } from 'node:child_process';
3
+ import { copyFileSync, existsSync, mkdirSync, mkdtempSync, readFileSync, rmSync, writeFileSync, } from 'node:fs';
4
+ import { tmpdir } from 'node:os';
5
+ import { join } from 'node:path';
6
+ const REPO_ROOT = join(__dirname, '..', '..');
7
+ const SETUP_SCRIPT = join(REPO_ROOT, 'scripts', 'setup-claude-md.sh');
8
+ const tempRoots = [];
9
+ function createPluginFixture(claudeMdContent) {
10
+ const root = mkdtempSync(join(tmpdir(), 'omc-setup-claude-md-'));
11
+ tempRoots.push(root);
12
+ const pluginRoot = join(root, 'plugin');
13
+ const projectRoot = join(root, 'project');
14
+ const homeRoot = join(root, 'home');
15
+ mkdirSync(join(pluginRoot, 'scripts'), { recursive: true });
16
+ mkdirSync(join(pluginRoot, 'docs'), { recursive: true });
17
+ mkdirSync(join(pluginRoot, 'skills', 'omc-reference'), { recursive: true });
18
+ mkdirSync(projectRoot, { recursive: true });
19
+ mkdirSync(homeRoot, { recursive: true });
20
+ copyFileSync(SETUP_SCRIPT, join(pluginRoot, 'scripts', 'setup-claude-md.sh'));
21
+ writeFileSync(join(pluginRoot, 'docs', 'CLAUDE.md'), claudeMdContent);
22
+ writeFileSync(join(pluginRoot, 'skills', 'omc-reference', 'SKILL.md'), `---
23
+ name: omc-reference
24
+ description: Test fixture reference skill
25
+ user-invocable: false
26
+ ---
27
+
28
+ # Test OMC Reference
29
+ `);
30
+ return {
31
+ pluginRoot,
32
+ projectRoot,
33
+ homeRoot,
34
+ scriptPath: join(pluginRoot, 'scripts', 'setup-claude-md.sh'),
35
+ };
36
+ }
37
+ afterEach(() => {
38
+ while (tempRoots.length > 0) {
39
+ const root = tempRoots.pop();
40
+ if (root) {
41
+ rmSync(root, { recursive: true, force: true });
42
+ }
43
+ }
44
+ });
45
+ describe('setup-claude-md.sh (issue #1572)', () => {
46
+ it('installs the canonical docs/CLAUDE.md content with OMC markers', () => {
47
+ const fixture = createPluginFixture(`<!-- OMC:START -->
48
+ <!-- OMC:VERSION:9.9.9 -->
49
+
50
+ # Canonical CLAUDE
51
+ Use the real docs file.
52
+ <!-- OMC:END -->
53
+ `);
54
+ const result = spawnSync('bash', [fixture.scriptPath, 'local'], {
55
+ cwd: fixture.projectRoot,
56
+ env: {
57
+ ...process.env,
58
+ HOME: fixture.homeRoot,
59
+ },
60
+ encoding: 'utf-8',
61
+ });
62
+ expect(result.status).toBe(0);
63
+ const installedPath = join(fixture.projectRoot, '.claude', 'CLAUDE.md');
64
+ expect(existsSync(installedPath)).toBe(true);
65
+ const installed = readFileSync(installedPath, 'utf-8');
66
+ expect(installed).toContain('<!-- OMC:START -->');
67
+ expect(installed).toContain('<!-- OMC:END -->');
68
+ expect(installed).toContain('<!-- OMC:VERSION:9.9.9 -->');
69
+ expect(installed).toContain('# Canonical CLAUDE');
70
+ const installedSkillPath = join(fixture.projectRoot, '.claude', 'skills', 'omc-reference', 'SKILL.md');
71
+ expect(existsSync(installedSkillPath)).toBe(true);
72
+ expect(readFileSync(installedSkillPath, 'utf-8')).toContain('# Test OMC Reference');
73
+ });
74
+ it('refuses to install a canonical source that lacks OMC markers', () => {
75
+ const fixture = createPluginFixture(`# oh-my-claudecode (OMC) v9.9.9 Summary
76
+
77
+ This is a summarized CLAUDE.md without markers.
78
+ `);
79
+ const result = spawnSync('bash', [fixture.scriptPath, 'local'], {
80
+ cwd: fixture.projectRoot,
81
+ env: {
82
+ ...process.env,
83
+ HOME: fixture.homeRoot,
84
+ },
85
+ encoding: 'utf-8',
86
+ });
87
+ expect(result.status).not.toBe(0);
88
+ expect(`${result.stdout}\n${result.stderr}`).toContain('missing required OMC markers');
89
+ expect(existsSync(join(fixture.projectRoot, '.claude', 'CLAUDE.md'))).toBe(false);
90
+ });
91
+ it('adds a local git exclude block for .omc artifacts while preserving .omc/skills', () => {
92
+ const fixture = createPluginFixture(`<!-- OMC:START -->
93
+ <!-- OMC:VERSION:9.9.9 -->
94
+
95
+ # Canonical CLAUDE
96
+ Use the real docs file.
97
+ <!-- OMC:END -->
98
+ `);
99
+ const gitInit = spawnSync('git', ['init'], {
100
+ cwd: fixture.projectRoot,
101
+ env: {
102
+ ...process.env,
103
+ HOME: fixture.homeRoot,
104
+ },
105
+ encoding: 'utf-8',
106
+ });
107
+ expect(gitInit.status).toBe(0);
108
+ const result = spawnSync('bash', [fixture.scriptPath, 'local'], {
109
+ cwd: fixture.projectRoot,
110
+ env: {
111
+ ...process.env,
112
+ HOME: fixture.homeRoot,
113
+ },
114
+ encoding: 'utf-8',
115
+ });
116
+ expect(result.status).toBe(0);
117
+ const excludePath = join(fixture.projectRoot, '.git', 'info', 'exclude');
118
+ expect(existsSync(excludePath)).toBe(true);
119
+ const excludeContents = readFileSync(excludePath, 'utf-8');
120
+ expect(excludeContents).toContain('# BEGIN OMC local artifacts');
121
+ expect(excludeContents).toContain('.omc/*');
122
+ expect(excludeContents).toContain('!.omc/skills/');
123
+ expect(excludeContents).toContain('!.omc/skills/**');
124
+ expect(excludeContents).toContain('# END OMC local artifacts');
125
+ });
126
+ it('does not duplicate the local git exclude block on repeated local setup runs', () => {
127
+ const fixture = createPluginFixture(`<!-- OMC:START -->
128
+ <!-- OMC:VERSION:9.9.9 -->
129
+
130
+ # Canonical CLAUDE
131
+ Use the real docs file.
132
+ <!-- OMC:END -->
133
+ `);
134
+ const gitInit = spawnSync('git', ['init'], {
135
+ cwd: fixture.projectRoot,
136
+ env: {
137
+ ...process.env,
138
+ HOME: fixture.homeRoot,
139
+ },
140
+ encoding: 'utf-8',
141
+ });
142
+ expect(gitInit.status).toBe(0);
143
+ const firstRun = spawnSync('bash', [fixture.scriptPath, 'local'], {
144
+ cwd: fixture.projectRoot,
145
+ env: {
146
+ ...process.env,
147
+ HOME: fixture.homeRoot,
148
+ },
149
+ encoding: 'utf-8',
150
+ });
151
+ expect(firstRun.status).toBe(0);
152
+ const secondRun = spawnSync('bash', [fixture.scriptPath, 'local'], {
153
+ cwd: fixture.projectRoot,
154
+ env: {
155
+ ...process.env,
156
+ HOME: fixture.homeRoot,
157
+ },
158
+ encoding: 'utf-8',
159
+ });
160
+ expect(secondRun.status).toBe(0);
161
+ const excludeContents = readFileSync(join(fixture.projectRoot, '.git', 'info', 'exclude'), 'utf-8');
162
+ expect(excludeContents.match(/# BEGIN OMC local artifacts/g)).toHaveLength(1);
163
+ });
164
+ });
165
+ describe('setup-claude-md.sh stale CLAUDE_PLUGIN_ROOT resolution', () => {
166
+ it('uses docs/CLAUDE.md from the active version in installed_plugins.json, not the stale script location', () => {
167
+ // Simulate: script lives at old version (4.8.2), but installed_plugins.json points to new version (4.9.0)
168
+ const root = mkdtempSync(join(tmpdir(), 'omc-stale-root-'));
169
+ tempRoots.push(root);
170
+ const cacheBase = join(root, '.claude', 'plugins', 'cache', 'omc', 'oh-my-claudecode');
171
+ const oldVersion = join(cacheBase, '4.8.2');
172
+ const newVersion = join(cacheBase, '4.9.0');
173
+ const projectRoot = join(root, 'project');
174
+ const homeRoot = join(root, 'home');
175
+ // Create old version (where the script will be copied)
176
+ mkdirSync(join(oldVersion, 'scripts'), { recursive: true });
177
+ mkdirSync(join(oldVersion, 'docs'), { recursive: true });
178
+ copyFileSync(SETUP_SCRIPT, join(oldVersion, 'scripts', 'setup-claude-md.sh'));
179
+ writeFileSync(join(oldVersion, 'docs', 'CLAUDE.md'), `<!-- OMC:START -->\n<!-- OMC:VERSION:4.8.2 -->\n\n# Old Version\n<!-- OMC:END -->\n`);
180
+ // Create new version (the active one)
181
+ mkdirSync(join(newVersion, 'docs'), { recursive: true });
182
+ writeFileSync(join(newVersion, 'docs', 'CLAUDE.md'), `<!-- OMC:START -->\n<!-- OMC:VERSION:4.9.0 -->\n\n# New Version\n<!-- OMC:END -->\n`);
183
+ // Create installed_plugins.json pointing to the new version
184
+ mkdirSync(join(homeRoot, '.claude', 'plugins'), { recursive: true });
185
+ writeFileSync(join(homeRoot, '.claude', 'plugins', 'installed_plugins.json'), JSON.stringify({
186
+ 'oh-my-claudecode@omc': [
187
+ {
188
+ installPath: newVersion,
189
+ version: '4.9.0',
190
+ },
191
+ ],
192
+ }));
193
+ // Create project dir and settings.json (needed for plugin verification)
194
+ mkdirSync(projectRoot, { recursive: true });
195
+ mkdirSync(join(homeRoot, '.claude'), { recursive: true });
196
+ writeFileSync(join(homeRoot, '.claude', 'settings.json'), JSON.stringify({ plugins: ['oh-my-claudecode'] }));
197
+ // Run the OLD version's script — it should resolve to the NEW version's docs/CLAUDE.md
198
+ const result = spawnSync('bash', [join(oldVersion, 'scripts', 'setup-claude-md.sh'), 'local'], {
199
+ cwd: projectRoot,
200
+ env: {
201
+ ...process.env,
202
+ HOME: homeRoot,
203
+ CLAUDE_CONFIG_DIR: join(homeRoot, '.claude'),
204
+ },
205
+ encoding: 'utf-8',
206
+ });
207
+ expect(result.status).toBe(0);
208
+ const installed = readFileSync(join(projectRoot, '.claude', 'CLAUDE.md'), 'utf-8');
209
+ // Should contain the NEW version, not the old one
210
+ expect(installed).toContain('<!-- OMC:VERSION:4.9.0 -->');
211
+ expect(installed).toContain('# New Version');
212
+ expect(installed).not.toContain('<!-- OMC:VERSION:4.8.2 -->');
213
+ });
214
+ it('uses docs/CLAUDE.md from the active version when installed_plugins.json wraps plugins under a plugins key', () => {
215
+ const root = mkdtempSync(join(tmpdir(), 'omc-stale-wrapped-root-'));
216
+ tempRoots.push(root);
217
+ const cacheBase = join(root, '.claude', 'plugins', 'cache', 'omc', 'oh-my-claudecode');
218
+ const oldVersion = join(cacheBase, '4.8.2');
219
+ const newVersion = join(cacheBase, '4.9.0');
220
+ const projectRoot = join(root, 'project');
221
+ const homeRoot = join(root, 'home');
222
+ mkdirSync(join(oldVersion, 'scripts'), { recursive: true });
223
+ mkdirSync(join(oldVersion, 'docs'), { recursive: true });
224
+ copyFileSync(SETUP_SCRIPT, join(oldVersion, 'scripts', 'setup-claude-md.sh'));
225
+ writeFileSync(join(oldVersion, 'docs', 'CLAUDE.md'), `<!-- OMC:START -->\n<!-- OMC:VERSION:4.8.2 -->\n\n# Old Version\n<!-- OMC:END -->\n`);
226
+ mkdirSync(join(newVersion, 'docs'), { recursive: true });
227
+ writeFileSync(join(newVersion, 'docs', 'CLAUDE.md'), `<!-- OMC:START -->\n<!-- OMC:VERSION:4.9.0 -->\n\n# New Version\n<!-- OMC:END -->\n`);
228
+ mkdirSync(join(homeRoot, '.claude', 'plugins'), { recursive: true });
229
+ writeFileSync(join(homeRoot, '.claude', 'plugins', 'installed_plugins.json'), JSON.stringify({
230
+ plugins: {
231
+ 'oh-my-claudecode@omc': [
232
+ {
233
+ installPath: newVersion,
234
+ version: '4.9.0',
235
+ },
236
+ ],
237
+ },
238
+ }));
239
+ mkdirSync(projectRoot, { recursive: true });
240
+ mkdirSync(join(homeRoot, '.claude'), { recursive: true });
241
+ writeFileSync(join(homeRoot, '.claude', 'settings.json'), JSON.stringify({ plugins: ['oh-my-claudecode'] }));
242
+ const result = spawnSync('bash', [join(oldVersion, 'scripts', 'setup-claude-md.sh'), 'local'], {
243
+ cwd: projectRoot,
244
+ env: {
245
+ ...process.env,
246
+ HOME: homeRoot,
247
+ CLAUDE_CONFIG_DIR: join(homeRoot, '.claude'),
248
+ },
249
+ encoding: 'utf-8',
250
+ });
251
+ expect(result.status).toBe(0);
252
+ const installed = readFileSync(join(projectRoot, '.claude', 'CLAUDE.md'), 'utf-8');
253
+ expect(installed).toContain('<!-- OMC:VERSION:4.9.0 -->');
254
+ expect(installed).toContain('# New Version');
255
+ expect(installed).not.toContain('<!-- OMC:VERSION:4.8.2 -->');
256
+ });
257
+ it('falls back to scanning cache for latest version when installed_plugins.json is unavailable', () => {
258
+ const root = mkdtempSync(join(tmpdir(), 'omc-stale-fallback-'));
259
+ tempRoots.push(root);
260
+ const cacheBase = join(root, '.claude', 'plugins', 'cache', 'omc', 'oh-my-claudecode');
261
+ const oldVersion = join(cacheBase, '4.8.2');
262
+ const newVersion = join(cacheBase, '4.9.0');
263
+ const projectRoot = join(root, 'project');
264
+ const homeRoot = join(root, 'home');
265
+ // Create old version (where the script lives)
266
+ mkdirSync(join(oldVersion, 'scripts'), { recursive: true });
267
+ mkdirSync(join(oldVersion, 'docs'), { recursive: true });
268
+ copyFileSync(SETUP_SCRIPT, join(oldVersion, 'scripts', 'setup-claude-md.sh'));
269
+ writeFileSync(join(oldVersion, 'docs', 'CLAUDE.md'), `<!-- OMC:START -->\n<!-- OMC:VERSION:4.8.2 -->\n\n# Old\n<!-- OMC:END -->\n`);
270
+ // Create new version (no installed_plugins.json, relies on cache scan)
271
+ mkdirSync(join(newVersion, 'docs'), { recursive: true });
272
+ writeFileSync(join(newVersion, 'docs', 'CLAUDE.md'), `<!-- OMC:START -->\n<!-- OMC:VERSION:4.9.0 -->\n\n# New\n<!-- OMC:END -->\n`);
273
+ // No installed_plugins.json — fallback to cache scan
274
+ mkdirSync(join(homeRoot, '.claude'), { recursive: true });
275
+ mkdirSync(projectRoot, { recursive: true });
276
+ writeFileSync(join(homeRoot, '.claude', 'settings.json'), JSON.stringify({ plugins: ['oh-my-claudecode'] }));
277
+ const result = spawnSync('bash', [join(oldVersion, 'scripts', 'setup-claude-md.sh'), 'local'], {
278
+ cwd: projectRoot,
279
+ env: {
280
+ ...process.env,
281
+ HOME: homeRoot,
282
+ CLAUDE_CONFIG_DIR: join(homeRoot, '.claude'),
283
+ },
284
+ encoding: 'utf-8',
285
+ });
286
+ expect(result.status).toBe(0);
287
+ const installed = readFileSync(join(projectRoot, '.claude', 'CLAUDE.md'), 'utf-8');
288
+ expect(installed).toContain('<!-- OMC:VERSION:4.9.0 -->');
289
+ expect(installed).not.toContain('<!-- OMC:VERSION:4.8.2 -->');
290
+ });
291
+ });
292
+ //# sourceMappingURL=setup-claude-md-script.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-claude-md-script.test.js","sourceRoot":"","sources":["../../src/__tests__/setup-claude-md-script.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Regression tests for race condition bug fixes.
3
+ *
4
+ * BUG 1: shared-state updateSharedTask has no file locking
5
+ * BUG 2: git-worktree removeWorkerWorktree has unlocked metadata update
6
+ * BUG 3: team-ops teamCreateTask has race on task ID generation
7
+ * BUG 4: generateJobId not collision-safe
8
+ */
9
+ export {};
10
+ //# sourceMappingURL=shared-state-locking.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared-state-locking.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/shared-state-locking.test.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Regression tests for race condition bug fixes.
3
+ *
4
+ * BUG 1: shared-state updateSharedTask has no file locking
5
+ * BUG 2: git-worktree removeWorkerWorktree has unlocked metadata update
6
+ * BUG 3: team-ops teamCreateTask has race on task ID generation
7
+ * BUG 4: generateJobId not collision-safe
8
+ */
9
+ import { describe, it, expect, beforeEach, afterEach } from 'vitest';
10
+ import { mkdtempSync, rmSync, readFileSync, existsSync } from 'fs';
11
+ import { join } from 'path';
12
+ import { tmpdir } from 'os';
13
+ // ---------------------------------------------------------------------------
14
+ // ---------------------------------------------------------------------------
15
+ describe('shared-state updateSharedTask locking', () => {
16
+ let tempDir;
17
+ beforeEach(() => {
18
+ tempDir = mkdtempSync(join(tmpdir(), 'shared-state-lock-test-'));
19
+ });
20
+ afterEach(() => {
21
+ rmSync(tempDir, { recursive: true, force: true });
22
+ });
23
+ it('updateSharedTask uses withFileLockSync for read-modify-write', async () => {
24
+ // Verify the source code contains the locking pattern
25
+ const sourcePath = join(__dirname, '..', 'interop', 'shared-state.ts');
26
+ const source = readFileSync(sourcePath, 'utf-8');
27
+ // Must import withFileLockSync
28
+ expect(source).toContain("import { withFileLockSync } from '../lib/file-lock.js'");
29
+ // The updateSharedTask function must use withFileLockSync
30
+ const fnMatch = source.match(/export function updateSharedTask[\s\S]*?^}/m);
31
+ expect(fnMatch).toBeTruthy();
32
+ const fnBody = fnMatch[0];
33
+ expect(fnBody).toContain('withFileLockSync');
34
+ expect(fnBody).toContain("taskPath + '.lock'");
35
+ });
36
+ it('updateSharedTask functionally updates a task with locking', async () => {
37
+ const { addSharedTask, updateSharedTask, initInteropSession } = await import('../interop/shared-state.js');
38
+ initInteropSession('test-session', tempDir);
39
+ const task = addSharedTask(tempDir, {
40
+ source: 'omc',
41
+ target: 'omx',
42
+ type: 'analyze',
43
+ description: 'test task for locking',
44
+ });
45
+ const updated = updateSharedTask(tempDir, task.id, {
46
+ status: 'completed',
47
+ result: 'done',
48
+ });
49
+ expect(updated).not.toBeNull();
50
+ expect(updated.status).toBe('completed');
51
+ expect(updated.result).toBe('done');
52
+ expect(updated.completedAt).toBeTruthy();
53
+ // Verify lock file does not persist after operation
54
+ const lockPath = join(tempDir, '.omc', 'state', 'interop', 'tasks', `${task.id}.json.lock`);
55
+ expect(existsSync(lockPath)).toBe(false);
56
+ });
57
+ });
58
+ // ---------------------------------------------------------------------------
59
+ // BUG 2: git-worktree removeWorkerWorktree must use file locking
60
+ // ---------------------------------------------------------------------------
61
+ //# sourceMappingURL=shared-state-locking.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared-state-locking.test.js","sourceRoot":"","sources":["../../src/__tests__/shared-state-locking.test.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,44 @@
1
- import { describe, it, expect, beforeEach } from 'vitest';
1
+ import { describe, it, expect, beforeEach, afterEach } from 'vitest';
2
2
  import { createBuiltinSkills, getBuiltinSkill, listBuiltinSkillNames, clearSkillsCache } from '../features/builtin-skills/skills.js';
3
3
  describe('Builtin Skills', () => {
4
+ const originalPluginRoot = process.env.CLAUDE_PLUGIN_ROOT;
5
+ const originalPath = process.env.PATH;
4
6
  // Clear cache before each test to ensure fresh loads
5
7
  beforeEach(() => {
8
+ if (originalPluginRoot === undefined) {
9
+ delete process.env.CLAUDE_PLUGIN_ROOT;
10
+ }
11
+ else {
12
+ process.env.CLAUDE_PLUGIN_ROOT = originalPluginRoot;
13
+ }
14
+ if (originalPath === undefined) {
15
+ delete process.env.PATH;
16
+ }
17
+ else {
18
+ process.env.PATH = originalPath;
19
+ }
20
+ clearSkillsCache();
21
+ });
22
+ afterEach(() => {
23
+ if (originalPluginRoot === undefined) {
24
+ delete process.env.CLAUDE_PLUGIN_ROOT;
25
+ }
26
+ else {
27
+ process.env.CLAUDE_PLUGIN_ROOT = originalPluginRoot;
28
+ }
29
+ if (originalPath === undefined) {
30
+ delete process.env.PATH;
31
+ }
32
+ else {
33
+ process.env.PATH = originalPath;
34
+ }
6
35
  clearSkillsCache();
7
36
  });
8
37
  describe('createBuiltinSkills()', () => {
9
- it('should return correct number of skills (45 including aliases)', () => {
38
+ it('should return correct number of skills (31 canonical + 1 alias)', () => {
10
39
  const skills = createBuiltinSkills();
11
- // 45 entries: 44 canonical skills + 1 deprecated alias (psm)
12
- expect(skills).toHaveLength(45);
40
+ // 32 entries: 31 canonical skills + 1 deprecated alias (psm)
41
+ expect(skills).toHaveLength(32);
13
42
  });
14
43
  it('should return an array of BuiltinSkill objects', () => {
15
44
  const skills = createBuiltinSkills();
@@ -58,6 +87,7 @@ describe('Builtin Skills', () => {
58
87
  'cancel',
59
88
  'ccg',
60
89
  'configure-notifications',
90
+ 'deep-dive',
61
91
  'deep-interview',
62
92
  'deepinit',
63
93
  'omc-doctor',
@@ -68,6 +98,7 @@ describe('Builtin Skills', () => {
68
98
  'omc-setup',
69
99
  'omc-teams',
70
100
  'omc-plan',
101
+ 'omc-reference',
71
102
  'project-session-manager',
72
103
  'psm',
73
104
  'ralph',
@@ -77,13 +108,15 @@ describe('Builtin Skills', () => {
77
108
  'setup',
78
109
  'skill',
79
110
  'team',
111
+ 'trace',
80
112
  'ultraqa',
81
113
  'ultrawork',
114
+ 'visual-verdict',
82
115
  'writer-memory',
83
116
  ];
84
117
  const actualSkillNames = skills.map((s) => s.name);
85
118
  expect(actualSkillNames).toEqual(expect.arrayContaining(expectedSkills));
86
- expect(actualSkillNames.length).toBeGreaterThanOrEqual(expectedSkills.length);
119
+ expect(actualSkillNames.length).toBe(expectedSkills.length);
87
120
  });
88
121
  it('should not have duplicate skill names', () => {
89
122
  const skills = createBuiltinSkills();
@@ -103,6 +136,76 @@ describe('Builtin Skills', () => {
103
136
  expect(skill).toBeDefined();
104
137
  expect(skill?.name).toBe('ai-slop-cleaner');
105
138
  });
139
+ it('should surface bundled skill resources for skills with additional files', () => {
140
+ const skill = getBuiltinSkill('project-session-manager');
141
+ expect(skill).toBeDefined();
142
+ expect(skill?.template).toContain('## Skill Resources');
143
+ expect(skill?.template).toContain('skills/project-session-manager');
144
+ expect(skill?.template).toContain('`lib/`');
145
+ expect(skill?.template).toContain('`psm.sh`');
146
+ });
147
+ it('should emphasize process-first install routing in the setup skill', () => {
148
+ const skill = getBuiltinSkill('setup');
149
+ expect(skill).toBeDefined();
150
+ expect(skill?.description).toContain('install/update routing');
151
+ expect(skill?.template).toContain('Process the request by the **first argument only**');
152
+ expect(skill?.template).toContain('/oh-my-claudecode:setup doctor --json');
153
+ expect(skill?.template).not.toContain('{{ARGUMENTS_AFTER_DOCTOR}}');
154
+ });
155
+ it('should emphasize worktree-first guidance in project session manager skill text', () => {
156
+ const skill = getBuiltinSkill('project-session-manager');
157
+ expect(skill).toBeDefined();
158
+ expect(skill?.description).toContain('Worktree-first');
159
+ expect(skill?.template).toContain('Quick Start (worktree-first)');
160
+ expect(skill?.template).toContain('`omc teleport`');
161
+ });
162
+ it('should keep ask as the canonical process-first advisor wrapper', () => {
163
+ const skill = getBuiltinSkill('ask');
164
+ expect(skill).toBeDefined();
165
+ expect(skill?.description).toContain('Process-first advisor routing');
166
+ expect(skill?.template).toContain('omc ask {{ARGUMENTS}}');
167
+ expect(skill?.template).toContain('Do NOT manually construct raw provider CLI commands');
168
+ });
169
+ it('should retrieve the trace skill by name', () => {
170
+ const skill = getBuiltinSkill('trace');
171
+ expect(skill).toBeDefined();
172
+ expect(skill?.name).toBe('trace');
173
+ expect(skill?.template).toContain('Claude built-in team mode');
174
+ expect(skill?.template).toContain('3 tracer lanes by default');
175
+ expect(skill?.template).toContain('Ranked Hypotheses');
176
+ expect(skill?.template).toContain('trace_timeline');
177
+ expect(skill?.template).toContain('trace_summary');
178
+ });
179
+ it('should retrieve the deep-dive skill with pipeline metadata and 3-point injection', () => {
180
+ const skill = getBuiltinSkill('deep-dive');
181
+ expect(skill).toBeDefined();
182
+ expect(skill?.name).toBe('deep-dive');
183
+ expect(skill?.pipeline).toEqual({
184
+ steps: ['deep-dive', 'omc-plan', 'autopilot'],
185
+ nextSkill: 'omc-plan',
186
+ nextSkillArgs: '--consensus --direct',
187
+ handoff: '.omc/specs/deep-dive-{slug}.md',
188
+ });
189
+ // Verify 3-point injection mechanism
190
+ expect(skill?.template).toContain('3-Point Injection');
191
+ expect(skill?.template).toContain('initial_idea enrichment');
192
+ expect(skill?.template).toContain('codebase_context replacement');
193
+ expect(skill?.template).toContain('initial question queue injection');
194
+ // Verify per-lane critical unknowns (B3 fix)
195
+ expect(skill?.template).toContain('Per-Lane Critical Unknowns');
196
+ // Verify pipeline handoff is fully wired (B1 fix)
197
+ expect(skill?.template).toContain('Skill("oh-my-claudecode:autopilot")');
198
+ expect(skill?.template).toContain('consensus plan as Phase 0+1 output');
199
+ // Verify untrusted data guard (NB1 fix)
200
+ expect(skill?.template).toContain('trace-context');
201
+ expect(skill?.template).toContain('untrusted data');
202
+ // Verify state schema compatibility (B2 fix)
203
+ expect(skill?.template).toContain('interview_id');
204
+ expect(skill?.template).toContain('challenge_modes_used');
205
+ expect(skill?.template).toContain('ontology_snapshots');
206
+ expect(skill?.template).toContain('explicit weakest-dimension rationale reporting');
207
+ expect(skill?.template).toContain('repo-evidence citation requirement');
208
+ });
106
209
  it('should expose pipeline metadata for deep-interview handoff into omc-plan', () => {
107
210
  const skill = getBuiltinSkill('deep-interview');
108
211
  expect(skill?.pipeline).toEqual({
@@ -116,6 +219,26 @@ describe('Builtin Skills', () => {
116
219
  expect(skill?.template).toContain('Skill("oh-my-claudecode:omc-plan")');
117
220
  expect(skill?.template).toContain('`--consensus --direct`');
118
221
  expect(skill?.template).toContain('`.omc/specs/deep-interview-{slug}.md`');
222
+ expect(skill?.template).toContain('Why now: {one_sentence_targeting_rationale}');
223
+ expect(skill?.template).toContain('cite the repo evidence');
224
+ expect(skill?.template).toContain('Ontology-style question for scope-fuzzy tasks');
225
+ expect(skill?.template).toContain('Every round explicitly names the weakest dimension and why it is the next target');
226
+ expect(skill?.argumentHint).toContain('--autoresearch');
227
+ expect(skill?.template).toContain('zero-learning-curve setup lane for `omc autoresearch`');
228
+ expect(skill?.template).toContain('autoresearch --mission "<mission>" --eval "<evaluator>"');
229
+ });
230
+ it('rewrites built-in skill command examples to plugin-safe bridge invocations when omc is unavailable', () => {
231
+ process.env.CLAUDE_PLUGIN_ROOT = '/plugin-root';
232
+ process.env.PATH = '';
233
+ clearSkillsCache();
234
+ const deepInterviewSkill = getBuiltinSkill('deep-interview');
235
+ const askSkill = getBuiltinSkill('ask');
236
+ expect(deepInterviewSkill?.template)
237
+ .toContain('zero-learning-curve setup lane for `node "$CLAUDE_PLUGIN_ROOT"/bridge/cli.cjs autoresearch`');
238
+ expect(deepInterviewSkill?.template)
239
+ .toContain('node "$CLAUDE_PLUGIN_ROOT"/bridge/cli.cjs autoresearch --mission "<mission>" --eval "<evaluator>"');
240
+ expect(askSkill?.template)
241
+ .toContain('node "$CLAUDE_PLUGIN_ROOT"/bridge/cli.cjs ask {{ARGUMENTS}}');
119
242
  });
120
243
  it('should expose pipeline metadata for omc-plan handoff into autopilot', () => {
121
244
  const skill = getBuiltinSkill('omc-plan');
@@ -174,32 +297,25 @@ describe('Builtin Skills', () => {
174
297
  describe('listBuiltinSkillNames()', () => {
175
298
  it('should return canonical skill names by default', () => {
176
299
  const names = listBuiltinSkillNames();
177
- expect(names).toHaveLength(44);
300
+ expect(names).toHaveLength(31);
178
301
  expect(names).toContain('ai-slop-cleaner');
179
302
  expect(names).toContain('ask');
180
303
  expect(names).toContain('autopilot');
181
304
  expect(names).toContain('cancel');
182
305
  expect(names).toContain('ccg');
183
306
  expect(names).toContain('configure-notifications');
184
- expect(names).toContain('analyze');
185
- expect(names).toContain('multi-model-research');
186
- expect(names).toContain('planning-with-files');
187
- expect(names).toContain('bdd-generator');
188
- expect(names).toContain('tdd-generator');
189
- expect(names).toContain('e2e');
190
- expect(names).toContain('electron-driver');
191
- expect(names).toContain('test-coverage');
192
- expect(names).toContain('start-dev');
193
- expect(names).toContain('test-gen');
194
307
  expect(names).toContain('ralph');
195
308
  expect(names).toContain('ultrawork');
196
309
  expect(names).toContain('omc-plan');
310
+ expect(names).toContain('omc-reference');
197
311
  expect(names).toContain('deepinit');
198
312
  expect(names).toContain('release');
199
313
  expect(names).toContain('omc-doctor');
200
314
  expect(names).toContain('hud');
201
315
  expect(names).toContain('omc-setup');
202
316
  expect(names).toContain('setup');
317
+ expect(names).toContain('trace');
318
+ expect(names).toContain('visual-verdict');
203
319
  expect(names).not.toContain('swarm'); // removed in #1131
204
320
  expect(names).not.toContain('psm');
205
321
  });
@@ -212,8 +328,10 @@ describe('Builtin Skills', () => {
212
328
  it('should include aliases when explicitly requested', () => {
213
329
  const names = listBuiltinSkillNames({ includeAliases: true });
214
330
  // swarm alias removed in #1131, psm still exists
215
- expect(names).toHaveLength(45);
331
+ expect(names).toHaveLength(32);
216
332
  expect(names).toContain('ai-slop-cleaner');
333
+ expect(names).toContain('trace');
334
+ expect(names).toContain('visual-verdict');
217
335
  expect(names).not.toContain('swarm');
218
336
  expect(names).toContain('psm');
219
337
  });