oh-my-opencode 5.0.0-beta.9 → 5.0.0-beta.90

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 (1478) hide show
  1. package/.agents/command/publish.md +15 -7
  2. package/.agents/command/remove-deadcode.md +1 -1
  3. package/.agents/skills/codex-qa/SKILL.md +2 -0
  4. package/.agents/skills/codex-qa/scripts/lsp-e2e.sh +1 -3
  5. package/.agents/skills/hyperplan/SKILL.md +6 -6
  6. package/.agents/skills/opencode-qa/scripts/lsp-e2e.sh +1 -1
  7. package/.agents/skills/pre-publish-review/SKILL.md +9 -12
  8. package/.agents/skills/publish/SKILL.md +15 -7
  9. package/.agents/skills/remove-deadcode/SKILL.md +1 -1
  10. package/.agents/skills/security-research/SKILL.md +4 -4
  11. package/.agents/skills/senpi-qa/SKILL.md +86 -0
  12. package/.agents/skills/senpi-qa/scripts/resolve-evidence-dir.mjs +65 -0
  13. package/.agents/skills/senpi-qa/scripts/resolve-evidence-dir.test.mjs +171 -0
  14. package/.agents/skills/tech-debt-audit/SKILL.md +6 -76
  15. package/.opencode/command/publish.md +15 -7
  16. package/.opencode/skills/hyperplan/SKILL.md +1 -1
  17. package/.opencode/skills/pre-publish-review/SKILL.md +9 -12
  18. package/README.ja.md +64 -69
  19. package/README.ko.md +65 -70
  20. package/README.md +108 -182
  21. package/README.ru.md +60 -68
  22. package/README.zh-cn.md +60 -69
  23. package/THIRD-PARTY-NOTICES.md +35 -105
  24. package/dist/agents/gpt-prompt-identity.d.ts +1 -1
  25. package/dist/agents/sisyphus/grok-4.d.ts +3 -2
  26. package/dist/agents/sisyphus-runtime-prompt-reconciler.d.ts +15 -4
  27. package/dist/agents/types.d.ts +4 -2
  28. package/dist/cli/config-manager/parse-opencode-config-file.d.ts +2 -1
  29. package/dist/cli/config-manager/refresh-opencode-plugin-sandbox.d.ts +31 -0
  30. package/dist/cli/doctor/checks/browser-provider.d.ts +2 -0
  31. package/dist/cli/doctor/checks/index.d.ts +2 -0
  32. package/dist/cli/doctor/checks/latest-version.d.ts +11 -0
  33. package/dist/cli/doctor/checks/system-plugin.d.ts +4 -3
  34. package/dist/cli/doctor/checks/tui-plugin-config.d.ts +11 -0
  35. package/dist/cli/doctor/framework/constants.d.ts +5 -0
  36. package/dist/cli/doctor/framework/types.d.ts +2 -0
  37. package/dist/cli/fallback-lane-policy.d.ts +1 -0
  38. package/dist/cli/index.js +59971 -62802
  39. package/dist/cli/install-codex/install-codex-test-fixtures.d.ts +1 -1
  40. package/dist/cli/install-native/index.d.ts +12 -0
  41. package/dist/cli/install-native/legacy-omo-bin.d.ts +27 -0
  42. package/dist/cli/install-native/offer-native-setup.d.ts +31 -0
  43. package/dist/cli/install-native/omo-bin-test-fixtures.d.ts +35 -0
  44. package/dist/cli/install-native/plan.d.ts +19 -0
  45. package/dist/cli/install-native/repair-legacy-omo-bin.d.ts +26 -0
  46. package/dist/cli/install-native/run-native-install.d.ts +33 -0
  47. package/dist/cli/install-native/verify-omo-command.d.ts +22 -0
  48. package/dist/cli/install-native-dev/index.d.ts +4 -0
  49. package/dist/cli/native-dev-platform-flag.d.ts +5 -0
  50. package/dist/cli/native-edition-hint.d.ts +10 -0
  51. package/dist/cli/runtime-commands.d.ts +1 -1
  52. package/dist/cli/types.d.ts +3 -2
  53. package/dist/cli/worktree-sweep/classify.d.ts +16 -0
  54. package/dist/cli/worktree-sweep/format.d.ts +8 -0
  55. package/dist/cli/worktree-sweep/git.d.ts +19 -0
  56. package/dist/cli/worktree-sweep/index.d.ts +7 -0
  57. package/dist/cli/worktree-sweep/options.d.ts +2 -0
  58. package/dist/cli/worktree-sweep/parse-worktree-list.d.ts +8 -0
  59. package/dist/cli/worktree-sweep/sweep.d.ts +2 -0
  60. package/dist/cli/worktree-sweep/types.d.ts +65 -0
  61. package/dist/cli/worktree-sweep/worktree-sweep.d.ts +2 -0
  62. package/dist/cli-node/index.js +60093 -62901
  63. package/dist/config/index.d.ts +1 -1
  64. package/dist/config/schema/agent-names.d.ts +0 -1
  65. package/dist/config/schema/background-task.d.ts +1 -0
  66. package/dist/config/schema/browser-automation.d.ts +0 -2
  67. package/dist/config/schema/commands.d.ts +1 -1
  68. package/dist/config/schema/hooks.d.ts +2 -2
  69. package/dist/config/schema/oh-my-opencode-config.d.ts +5 -12
  70. package/dist/config/schema/ulw-execute.d.ts +5 -0
  71. package/dist/config/schema.d.ts +0 -1
  72. package/dist/config/validate.d.ts +2 -0
  73. package/dist/config-migration/category-deep-split.d.ts +3 -0
  74. package/dist/config-migration/harness-native-rename.d.ts +3 -0
  75. package/dist/config-migration/migration-plans.d.ts +1 -0
  76. package/dist/config-migration/subscription-provider-rename.d.ts +4 -0
  77. package/dist/create-hooks.d.ts +4 -2
  78. package/dist/features/background-agent/compaction-aware-message-resolver.d.ts +1 -0
  79. package/dist/features/background-agent/constants.d.ts +0 -7
  80. package/dist/features/background-agent/error-classifier.d.ts +1 -0
  81. package/dist/features/background-agent/manager.d.ts +9 -1
  82. package/dist/features/background-agent/parent-wake-dispatched-tracker.d.ts +0 -1
  83. package/dist/features/background-agent/parent-wake-notifier-types.d.ts +1 -1
  84. package/dist/features/background-agent/parent-wake-prompt-dispatch.d.ts +1 -1
  85. package/dist/features/background-agent/parent-wake-session-inspector.d.ts +1 -1
  86. package/dist/features/background-agent/subagent-spawn-limits.d.ts +8 -0
  87. package/dist/features/background-agent/types.d.ts +4 -0
  88. package/dist/features/boulder-state/storage.d.ts +1 -1
  89. package/dist/features/btw-side/btw-command-draft.d.ts +7 -0
  90. package/dist/features/btw-side/context-injector.d.ts +15 -0
  91. package/dist/features/btw-side/index.d.ts +8 -0
  92. package/dist/features/btw-side/metadata.d.ts +15 -0
  93. package/dist/features/btw-side/parent-context-budget.d.ts +9 -0
  94. package/dist/features/btw-side/server-session-registry.d.ts +8 -0
  95. package/dist/features/btw-side/tui-adoption-cache.d.ts +13 -0
  96. package/dist/features/btw-side/tui-adoption-guard.d.ts +5 -0
  97. package/dist/features/btw-side/tui-controller-types.d.ts +68 -0
  98. package/dist/features/btw-side/tui-controller.d.ts +19 -0
  99. package/dist/features/btw-side/tui-escape-return.d.ts +12 -0
  100. package/dist/features/btw-side/tui-keymap.d.ts +17 -0
  101. package/dist/features/btw-side/tui-parent-validator.d.ts +6 -0
  102. package/dist/features/btw-side/tui-picker-options.d.ts +20 -0
  103. package/dist/features/btw-side/tui-picker.d.ts +9 -0
  104. package/dist/features/btw-side/tui-prompt-queue.d.ts +8 -0
  105. package/dist/features/btw-side/tui-session-bridge.d.ts +11 -0
  106. package/dist/features/btw-side/tui-session-catalog.d.ts +35 -0
  107. package/dist/features/btw-side/tui-side-removal.d.ts +11 -0
  108. package/dist/features/btw-side/tui-side-start.d.ts +9 -0
  109. package/dist/features/btw-side/tui-wiring.d.ts +8 -0
  110. package/dist/features/builtin-commands/templates/hyperplan.d.ts +1 -1
  111. package/dist/features/builtin-commands/templates/refactor-sections/team-mode-addendum.d.ts +1 -1
  112. package/dist/features/builtin-commands/templates/remove-ai-slops.d.ts +1 -1
  113. package/dist/features/builtin-commands/templates/ulw-execute.d.ts +1 -0
  114. package/dist/features/builtin-commands/types.d.ts +1 -1
  115. package/dist/features/claude-tasks/storage.d.ts +7 -2
  116. package/dist/features/hook-message-injector/index.d.ts +1 -0
  117. package/dist/features/hook-message-injector/sdk-message-lookup.d.ts +1 -0
  118. package/dist/features/monitor/manager-internals.d.ts +1 -1
  119. package/dist/features/monitor/output-injector-types.d.ts +1 -1
  120. package/dist/features/native-edition-nudge/index.d.ts +2 -0
  121. package/dist/features/native-edition-nudge/tui.d.ts +33 -0
  122. package/dist/features/opengateway-provider/index.d.ts +13 -0
  123. package/dist/features/task-toast-manager/manager.d.ts +0 -24
  124. package/dist/features/team-mode/tools/lifecycle-inline-spec.d.ts +1 -1
  125. package/dist/features/team-mode/tools/messaging-fallback-wake.d.ts +17 -0
  126. package/dist/features/team-mode/tools/messaging-live-delivery-recipient.d.ts +3 -0
  127. package/dist/features/team-mode/tools/messaging-runtime.d.ts +7 -0
  128. package/dist/hooks/anthropic-context-window-limit-recovery/message-storage-directory.d.ts +0 -3
  129. package/dist/hooks/anthropic-context-window-limit-recovery/state.d.ts +1 -0
  130. package/dist/hooks/anthropic-context-window-limit-recovery/storage/empty-messages.d.ts +0 -1
  131. package/dist/hooks/anthropic-context-window-limit-recovery/tool-result-storage.d.ts +11 -0
  132. package/dist/hooks/atlas/atlas-hook.d.ts +1 -0
  133. package/dist/hooks/atlas/atlas-lifecycle-store.d.ts +50 -0
  134. package/dist/hooks/atlas/event-handler.d.ts +1 -0
  135. package/dist/hooks/atlas/tool-execute-before.d.ts +3 -0
  136. package/dist/hooks/atlas/types.d.ts +1 -0
  137. package/dist/hooks/auto-update-checker/checker/sandbox-refresh.d.ts +51 -0
  138. package/dist/hooks/auto-update-checker/checker/semver-compare.d.ts +17 -0
  139. package/dist/hooks/auto-update-checker/checker.d.ts +3 -0
  140. package/dist/hooks/auto-update-checker/hook/background-update-check.d.ts +8 -0
  141. package/dist/hooks/auto-update-checker/hook.d.ts +2 -0
  142. package/dist/hooks/claude-code-hooks/session-hook-state.d.ts +1 -0
  143. package/dist/hooks/claude-code-hooks/stop.d.ts +2 -0
  144. package/dist/hooks/claude-code-hooks/todo.d.ts +0 -1
  145. package/dist/hooks/claude-code-hooks/transcript.d.ts +2 -0
  146. package/dist/hooks/comment-checker/__fixtures__/download-probe.fixture.d.ts +1 -0
  147. package/dist/hooks/compaction-context-injector/validated-model.d.ts +2 -0
  148. package/dist/hooks/fsync-skip-warning/index.d.ts +4 -0
  149. package/dist/hooks/hashline-edit-diff-enhancer/hook.d.ts +1 -0
  150. package/dist/hooks/hashline-edit-diff-enhancer/pending-captures.d.ts +13 -0
  151. package/dist/hooks/index.d.ts +2 -2
  152. package/dist/hooks/keyword-detector/hook.d.ts +9 -0
  153. package/dist/hooks/keyword-detector/ultrawork/index.d.ts +2 -0
  154. package/dist/hooks/keyword-detector/ultrawork/source-detector.d.ts +0 -1
  155. package/dist/hooks/model-fallback/hook.d.ts +1 -1
  156. package/dist/hooks/native-edition-nudge/decide.d.ts +4 -0
  157. package/dist/hooks/native-edition-nudge/hook.d.ts +26 -0
  158. package/dist/hooks/native-edition-nudge/index.d.ts +5 -0
  159. package/dist/hooks/native-edition-nudge/state.d.ts +9 -0
  160. package/dist/hooks/native-edition-nudge/types.d.ts +38 -0
  161. package/dist/hooks/plan-format-validator/hook.d.ts +19 -0
  162. package/dist/hooks/prometheus-md-only/agent-resolution.d.ts +2 -2
  163. package/dist/hooks/runtime-fallback/chat-message-handler.d.ts +2 -0
  164. package/dist/hooks/runtime-fallback/retry-model-payload.d.ts +1 -0
  165. package/dist/hooks/runtime-fallback/runtime-model-settings.d.ts +6 -0
  166. package/dist/hooks/runtime-fallback/session-status-handler.d.ts +1 -1
  167. package/dist/hooks/runtime-fallback/types.d.ts +3 -1
  168. package/dist/hooks/sisyphus-junior-notepad/constants.d.ts +1 -1
  169. package/dist/hooks/todo-continuation-enforcer/types.d.ts +1 -0
  170. package/dist/hooks/{start-work → ulw-execute}/context-info-builder.d.ts +1 -1
  171. package/dist/hooks/{start-work → ulw-execute}/index.d.ts +1 -1
  172. package/dist/hooks/ulw-execute/ulw-execute-hook.d.ts +23 -0
  173. package/dist/hooks/unstable-agent-babysitter/task-message-analyzer.d.ts +1 -0
  174. package/dist/index.js +34554 -27217
  175. package/dist/mcp/index.d.ts +0 -4
  176. package/dist/mcp/types.d.ts +0 -1
  177. package/dist/oh-my-opencode.schema.json +28 -59
  178. package/dist/plugin/chat-message/types.d.ts +6 -4
  179. package/dist/plugin/chat-message/ulw-execute-message.d.ts +5 -0
  180. package/dist/plugin/event-session-lifecycle.d.ts +1 -0
  181. package/dist/plugin/hooks/create-core-hooks.d.ts +3 -2
  182. package/dist/plugin/hooks/create-session-hooks.d.ts +3 -3
  183. package/dist/plugin/hooks/create-transform-hooks.d.ts +2 -0
  184. package/dist/plugin/messages-transform.d.ts +1 -0
  185. package/dist/plugin/stop-continuation.d.ts +3 -0
  186. package/dist/plugin/system-transform.d.ts +5 -1
  187. package/dist/plugin-config/omo-config-chain.d.ts +1 -0
  188. package/dist/plugin-dispose.d.ts +3 -0
  189. package/dist/shared/agent-tool-restrictions.d.ts +0 -1
  190. package/dist/shared/compaction-agent-config-checkpoint.d.ts +1 -0
  191. package/dist/shared/index.d.ts +3 -0
  192. package/dist/shared/legacy-plugin-warning.d.ts +2 -1
  193. package/dist/shared/omo-process-sweep.d.ts +2 -4
  194. package/dist/shared/opencode-plugin-sandbox.d.ts +54 -0
  195. package/dist/shared/plugin-entry-migrator.d.ts +4 -3
  196. package/dist/shared/plugin-entry-shape.d.ts +6 -0
  197. package/dist/shared/runtime-fallback-retry-marker.d.ts +16 -0
  198. package/dist/skills/ast-grep/AGENTS.md +51 -0
  199. package/dist/skills/ast-grep/SKILL.md +13 -1
  200. package/dist/skills/browser/ATTRIBUTION.md +37 -0
  201. package/dist/skills/browser/SKILL.md +109 -0
  202. package/dist/skills/browser/references/commands.md +105 -0
  203. package/dist/skills/browser/references/install.md +97 -0
  204. package/dist/skills/browser/references/owned-engine/README.md +62 -0
  205. package/dist/skills/browser/references/owned-engine/frames-and-humans.md +52 -0
  206. package/dist/skills/browser/references/owned-engine/ladder.md +61 -0
  207. package/dist/skills/browser/references/owned-engine/network.md +62 -0
  208. package/dist/skills/browser/references/recipes/1password.md +61 -0
  209. package/dist/skills/browser/references/remote.md +25 -0
  210. package/dist/skills/browser/runtime/omowright/index.js +1534 -0
  211. package/dist/skills/browser/runtime/omowright/manifest.json +9 -0
  212. package/dist/skills/browser/runtime/omowright/page-bundle.js +1395 -0
  213. package/dist/skills/browser/scripts/browser-doctor.mjs +57 -0
  214. package/dist/skills/browser/scripts/browser-install.mjs +50 -0
  215. package/dist/skills/browser/scripts/omowright.mjs +25 -0
  216. package/dist/skills/coding-agent-sessions/AGENTS.md +62 -0
  217. package/dist/skills/coding-agent-sessions/SKILL.md +1 -1
  218. package/dist/skills/data-scientist/SKILL.md +99 -239
  219. package/dist/skills/data-scientist/references/execution-surfaces.md +91 -0
  220. package/dist/skills/data-scientist/references/placement.md +74 -0
  221. package/dist/skills/data-scientist/references/polars-lane.md +95 -0
  222. package/dist/skills/data-scientist/references/uv-setup.md +1 -1
  223. package/dist/skills/data-scientist/references/visualization.md +64 -0
  224. package/dist/skills/data-scientist/scripts/ensure-js-deps.sh +28 -0
  225. package/dist/skills/data-scientist/scripts/ensure-py-deps.sh +37 -0
  226. package/dist/skills/debugging/SKILL.md +5 -3
  227. package/dist/skills/debugging/references/methodology/00-setup.md +12 -0
  228. package/dist/skills/debugging/references/methodology/02-investigate.md +26 -5
  229. package/dist/skills/debugging/references/methodology/06-fix.md +3 -3
  230. package/dist/skills/debugging/references/methodology/08-qa.md +1 -1
  231. package/dist/skills/debugging/references/runtimes/go.md +15 -1
  232. package/dist/skills/debugging/references/runtimes/native-binary.md +38 -0
  233. package/dist/skills/debugging/references/runtimes/node.md +25 -0
  234. package/dist/skills/debugging/references/runtimes/python.md +13 -0
  235. package/dist/skills/debugging/references/runtimes/rust.md +41 -0
  236. package/dist/skills/debugging/references/scripts/dap.mjs +267 -0
  237. package/dist/skills/debugging/references/scripts/dap.test.ts +86 -0
  238. package/dist/skills/debugging/references/scripts/fixture-adapter.mjs +59 -0
  239. package/dist/skills/debugging/references/tools/browser-qa.md +104 -0
  240. package/dist/skills/debugging/references/tools/dap.md +103 -0
  241. package/dist/skills/debugging/references/tools/frida.md +193 -0
  242. package/dist/skills/frontend/ATTRIBUTION.md +10 -0
  243. package/dist/skills/frontend/SKILL.md +8 -3
  244. package/dist/skills/frontend/references/design/README.md +13 -4
  245. package/dist/skills/frontend/references/design/_INDEX.md +1 -0
  246. package/dist/skills/frontend/references/design/ambience-skill.md +146 -0
  247. package/dist/skills/frontend/references/design/aside.md +1 -1
  248. package/dist/skills/frontend/references/design/clone-from-url.md +1 -1
  249. package/dist/skills/frontend/references/design/design-system-architecture.md +30 -6
  250. package/dist/skills/frontend/references/design/interaction-skill.md +19 -5
  251. package/dist/skills/frontend/references/design/print-paged-media.md +76 -0
  252. package/dist/skills/frontend/references/designpowers/README.md +1 -1
  253. package/dist/skills/frontend/references/designpowers/lane-a-direction.md +1 -1
  254. package/dist/skills/frontend/references/designpowers/lane-b-execution.md +11 -11
  255. package/dist/skills/frontend/references/designpowers/lane-d-memory.md +3 -3
  256. package/dist/skills/frontend/references/designpowers/orchestration.md +1 -1
  257. package/dist/skills/frontend/references/designpowers/routing.md +5 -5
  258. package/dist/skills/frontend/references/perfection/README.md +1 -0
  259. package/dist/skills/frontend/scripts/perfection/lighthouse-audit.py +2 -2
  260. package/dist/skills/git-master/SKILL.md +1 -1
  261. package/dist/skills/init-deep/SKILL.md +14 -14
  262. package/dist/skills/lsp-setup/SKILL.md +1 -1
  263. package/dist/skills/programming/SKILL.md +12 -18
  264. package/dist/skills/programming/references/rust/README.md +43 -15
  265. package/dist/skills/programming/references/rust/api-design.md +81 -0
  266. package/dist/skills/programming/references/rust/async-tokio.md +60 -28
  267. package/dist/skills/programming/references/rust/axum-stack.md +1 -13
  268. package/dist/skills/programming/references/rust/cargo-strict.md +44 -8
  269. package/dist/skills/programming/references/rust/clap-stack.md +8 -3
  270. package/dist/skills/programming/references/rust/concurrency.md +66 -52
  271. package/dist/skills/programming/references/rust/libraries.md +35 -25
  272. package/dist/skills/programming/references/rust/macros.md +63 -0
  273. package/dist/skills/programming/references/rust/one-liners.md +5 -3
  274. package/dist/skills/programming/references/rust/proptest-insta.md +8 -0
  275. package/dist/skills/programming/references/rust/type-state.md +50 -12
  276. package/dist/skills/programming/references/rust/unsafe-discipline.md +34 -6
  277. package/dist/skills/programming/references/rust/zero-cost-safety.md +62 -52
  278. package/dist/skills/programming/references/rust-ub/miri-sanitizers-loom.md +1 -1
  279. package/dist/skills/programming/references/rust-ub/ub-taxonomy.md +6 -3
  280. package/dist/skills/programming/scripts/rust/check-no-excuse-rules.sh +86 -75
  281. package/dist/skills/programming/scripts/rust/check-no-excuse-rules.test.ts +83 -0
  282. package/dist/skills/programming/scripts/rust/new-project.py +31 -28
  283. package/dist/skills/refactor/SKILL.md +5 -5
  284. package/dist/skills/remove-ai-slops/SKILL.md +5 -5
  285. package/dist/skills/review-work/SKILL.md +101 -419
  286. package/dist/skills/ultimate-browsing/ATTRIBUTION.md +1 -82
  287. package/dist/skills/ultimate-browsing/SKILL.md +40 -28
  288. package/dist/skills/ultimate-browsing/engine/AGENTS.md +2 -1
  289. package/dist/skills/ultimate-browsing/engine/templates/package.json +2 -2
  290. package/dist/skills/ultimate-browsing/engine/templates/playwright_mobile_chrome.js +5 -2
  291. package/dist/skills/ultimate-browsing/engine/templates/playwright_real_chrome.js +8 -6
  292. package/dist/skills/ultimate-browsing/engine/tests/test_playwright_stealth.py +86 -0
  293. package/dist/skills/ultimate-browsing/engine/tests/test_playwright_templates.py +4 -7
  294. package/dist/skills/ultimate-browsing/references/chrome-stealth.md +34 -111
  295. package/dist/skills/ultimate-browsing/references/insane-search/README.md +14 -7
  296. package/dist/skills/ultimate-browsing/references/insane-search/playwright.md +22 -36
  297. package/dist/skills/ultimate-browsing/scripts/extract_cookies.py +3 -3
  298. package/{packages/shared-skills/skills/start-work → dist/skills/ulw-execute}/SKILL.md +27 -25
  299. package/dist/skills/ulw-plan/SKILL.md +10 -11
  300. package/dist/skills/ulw-plan/references/full-workflow.md +18 -13
  301. package/dist/skills/ulw-plan/references/intent-clear.md +5 -6
  302. package/dist/skills/ulw-plan/references/intent-unclear.md +4 -4
  303. package/dist/skills/ulw-plan/scripts/plan-templates.mjs +180 -0
  304. package/dist/skills/ulw-plan/scripts/scaffold-plan.mjs +3 -153
  305. package/dist/skills/ulw-research/AGENTS.md +63 -0
  306. package/dist/skills/ulw-research/SKILL.md +47 -30
  307. package/dist/skills/ulw-research/references/deliverable-phase.md +187 -0
  308. package/dist/skills/ulw-research/references/report-gates.md +66 -0
  309. package/dist/skills/ulw-research/scripts/cli-support.mjs +102 -0
  310. package/dist/skills/ulw-research/scripts/cli-support.test.ts +88 -0
  311. package/dist/skills/ulw-research/scripts/contracts.mjs +162 -0
  312. package/dist/skills/ulw-research/scripts/contracts.test.ts +177 -0
  313. package/dist/skills/ulw-research/scripts/css-lite.mjs +204 -0
  314. package/dist/skills/ulw-research/scripts/css-lite.test.ts +159 -0
  315. package/dist/skills/ulw-research/scripts/design-spec.mjs +161 -0
  316. package/dist/skills/ulw-research/scripts/design-spec.test.ts +162 -0
  317. package/dist/skills/ulw-research/scripts/entities.mjs +39 -0
  318. package/dist/skills/ulw-research/scripts/entry-guard.mjs +21 -0
  319. package/dist/skills/ulw-research/scripts/format-extract-css.mjs +122 -0
  320. package/dist/skills/ulw-research/scripts/format-extract.mjs +229 -0
  321. package/dist/skills/ulw-research/scripts/format-extract.test.ts +243 -0
  322. package/dist/skills/ulw-research/scripts/gates-figures.mjs +173 -0
  323. package/dist/skills/ulw-research/scripts/gates-layout.mjs +146 -0
  324. package/dist/skills/ulw-research/scripts/gates-layout.test.ts +236 -0
  325. package/dist/skills/ulw-research/scripts/gates-static.mjs +167 -0
  326. package/dist/skills/ulw-research/scripts/gates-static.test.ts +265 -0
  327. package/dist/skills/ulw-research/scripts/gates-structure.mjs +118 -0
  328. package/dist/skills/ulw-research/scripts/gates-text.mjs +190 -0
  329. package/dist/skills/ulw-research/scripts/glossary-vocabulary.test.ts +43 -0
  330. package/dist/skills/ulw-research/scripts/html-lite.mjs +239 -0
  331. package/dist/skills/ulw-research/scripts/html-lite.test.ts +191 -0
  332. package/dist/skills/ulw-research/scripts/layout-probe.mjs +83 -0
  333. package/dist/skills/ulw-research/scripts/layout-probe.test.ts +89 -0
  334. package/dist/skills/ulw-research/scripts/outcome.mjs +250 -0
  335. package/dist/skills/ulw-research/scripts/outcome.test.ts +281 -0
  336. package/dist/skills/ulw-research/scripts/repair-tracker.mjs +171 -0
  337. package/dist/skills/ulw-research/scripts/repair-tracker.test.ts +246 -0
  338. package/dist/skills/ulw-research/scripts/report-tools-commands.mjs +214 -0
  339. package/dist/skills/ulw-research/scripts/report-tools.mjs +61 -0
  340. package/dist/skills/ulw-research/scripts/report-tools.test.ts +213 -0
  341. package/dist/skills/ulw-research/scripts/tests/fixtures/assets/figure-1.svg +1 -0
  342. package/dist/skills/ulw-research/scripts/tests/fixtures/bad-report.html +44 -0
  343. package/dist/skills/ulw-research/scripts/tests/fixtures/boxes.json +90 -0
  344. package/dist/skills/ulw-research/scripts/tests/fixtures/design-spec.md +29 -0
  345. package/dist/skills/ulw-research/scripts/tests/fixtures/good-report.html +57 -0
  346. package/dist/skills/ulw-research/scripts/tests/fixtures/reference-report.html +86 -0
  347. package/dist/skills/ulw-research/scripts/tests/fixtures/reference.md +23 -0
  348. package/dist/skills/visual-qa/AGENTS.md +58 -0
  349. package/dist/skills/visual-qa/SKILL.md +4 -3
  350. package/dist/skills/visual-qa/references/browser-setup.md +77 -0
  351. package/dist/tools/delegate-task/builtin-categories.d.ts +3 -1
  352. package/dist/tools/delegate-task/builtin-category-definition.d.ts +2 -1
  353. package/dist/tools/delegate-task/constants.d.ts +2 -2
  354. package/dist/tools/delegate-task/openai-categories.d.ts +10 -3
  355. package/dist/tools/delegate-task/sync-session-cleanup.d.ts +3 -0
  356. package/dist/tools/delegate-task/sync-session-poller.d.ts +1 -0
  357. package/dist/tools/delegate-task/tool-description.d.ts +3 -1
  358. package/dist/tools/delegate-task/types.d.ts +4 -0
  359. package/dist/tools/session-manager/directory-filter.d.ts +2 -0
  360. package/dist/tui.d.ts +12 -0
  361. package/dist/tui.js +39264 -46403
  362. package/package.json +53 -50
  363. package/packages/git-bash-mcp/dist/cli.js +6 -1
  364. package/packages/git-bash-mcp/package.json +1 -1
  365. package/packages/lsp-core/src/index.ts +1 -0
  366. package/packages/lsp-core/src/lsp/client-diagnostics-concurrency.integration.test.ts +9 -1
  367. package/packages/lsp-core/src/lsp/client-diagnostics-freshness.integration.test.ts +100 -28
  368. package/packages/lsp-core/src/lsp/client-diagnostics-pull-timeout.test.ts +64 -0
  369. package/packages/lsp-core/src/lsp/client-wrapper-outside-cwd.test.ts +78 -0
  370. package/packages/lsp-core/src/lsp/client-wrapper.test.ts +103 -6
  371. package/packages/lsp-core/src/lsp/client-wrapper.ts +50 -16
  372. package/packages/lsp-core/src/lsp/client.ts +32 -3
  373. package/packages/lsp-core/src/lsp/connection.ts +16 -0
  374. package/packages/lsp-core/src/lsp/constants.ts +6 -0
  375. package/packages/lsp-core/src/lsp/controlled-clock-test-support.ts +90 -0
  376. package/packages/lsp-core/src/lsp/errors.ts +15 -0
  377. package/packages/lsp-core/src/lsp/fixtures/workspace-edit-server.mjs +10 -3
  378. package/packages/lsp-core/src/lsp/format-document.test.ts +143 -0
  379. package/packages/lsp-core/src/lsp/format-document.ts +90 -0
  380. package/packages/lsp-core/src/lsp/json-rpc-connection.ts +11 -6
  381. package/packages/lsp-core/src/lsp/manager-lifecycle.test.ts +262 -0
  382. package/packages/lsp-core/src/lsp/manager-max-clients.test.ts +151 -0
  383. package/packages/lsp-core/src/lsp/manager.ts +138 -12
  384. package/packages/lsp-core/src/lsp/outside-context-workspace.ts +33 -0
  385. package/packages/lsp-core/src/lsp/server-definitions.ts +29 -0
  386. package/packages/lsp-core/src/lsp/server-installation.test.ts +376 -0
  387. package/packages/lsp-core/src/lsp/server-installation.ts +200 -27
  388. package/packages/lsp-core/src/lsp/server-resolution-local-binary.test.ts +170 -0
  389. package/packages/lsp-core/src/lsp/server-resolution.ts +18 -5
  390. package/packages/lsp-core/src/lsp/timer-provider.ts +13 -0
  391. package/packages/lsp-core/src/lsp/transport-request-timeout.test.ts +73 -0
  392. package/packages/lsp-core/src/lsp/transport.ts +16 -2
  393. package/packages/lsp-core/src/lsp/types.ts +8 -0
  394. package/packages/lsp-core/src/lsp/workspace-apply-edit-test-support.ts +29 -1
  395. package/packages/lsp-core/src/lsp/workspace-document-state.test.ts +84 -1
  396. package/packages/lsp-core/src/lsp/workspace-document-state.ts +35 -11
  397. package/packages/lsp-core/src/lsp/workspace-markers.ts +18 -0
  398. package/packages/lsp-core/src/mcp.ts +3 -0
  399. package/packages/lsp-core/src/request-context.test.ts +29 -0
  400. package/packages/lsp-core/src/request-context.ts +1 -1
  401. package/packages/lsp-core/src/tool-surface.test.ts +13 -1
  402. package/packages/lsp-core/src/tools/definitions.ts +14 -0
  403. package/packages/lsp-core/src/tools/format.test.ts +56 -0
  404. package/packages/lsp-core/src/tools/format.ts +56 -0
  405. package/packages/lsp-core/src/tools/index.ts +1 -0
  406. package/packages/lsp-core/src/tools/parameters.test.ts +51 -0
  407. package/packages/lsp-core/src/tools/types.ts +10 -0
  408. package/packages/lsp-daemon/dist/cli.js +1421 -960
  409. package/packages/lsp-daemon/dist/client.d.ts +10 -0
  410. package/packages/lsp-daemon/dist/client.js +956 -498
  411. package/packages/lsp-daemon/dist/daemon-client.d.ts +3 -0
  412. package/packages/lsp-daemon/dist/daemon-client.js +23 -3
  413. package/packages/lsp-daemon/dist/ensure-daemon.d.ts +6 -1
  414. package/packages/lsp-daemon/dist/ensure-daemon.js +27 -5
  415. package/packages/lsp-daemon/dist/index.js +860 -407
  416. package/packages/lsp-daemon/dist/ownership.js +2 -2
  417. package/packages/lsp-daemon/dist/proxy.js +3 -0
  418. package/packages/lsp-daemon/dist/version-reap.js +1 -1
  419. package/packages/lsp-daemon/package.json +5 -4
  420. package/packages/lsp-tools-mcp/dist/cli.js +764 -341
  421. package/packages/lsp-tools-mcp/dist/lsp/manager.js +274 -138
  422. package/packages/lsp-tools-mcp/dist/mcp.js +789 -368
  423. package/packages/lsp-tools-mcp/dist/request-context.js +12 -13
  424. package/packages/lsp-tools-mcp/dist/tools.js +719 -302
  425. package/packages/lsp-tools-mcp/package.json +5 -4
  426. package/packages/omo-codex/THIRD-PARTY-NOTICES.md +4 -21
  427. package/packages/omo-codex/plugin/.codex-plugin/plugin.json +4 -6
  428. package/packages/omo-codex/plugin/.mcp.json +0 -6
  429. package/packages/omo-codex/plugin/AGENTS.md +47 -0
  430. package/packages/omo-codex/plugin/README.md +6 -2
  431. package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +8504 -408
  432. package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
  433. package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
  434. package/packages/omo-codex/plugin/components/bootstrap/src/hook.ts +1 -0
  435. package/packages/omo-codex/plugin/components/bootstrap/src/setup.ts +7 -1
  436. package/packages/omo-codex/plugin/components/comment-checker/AGENTS.md +9 -0
  437. package/packages/omo-codex/plugin/components/comment-checker/biome.json +2 -2
  438. package/packages/omo-codex/plugin/components/comment-checker/dist/cli.js +2 -1
  439. package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
  440. package/packages/omo-codex/plugin/components/comment-checker/package.json +6 -5
  441. package/packages/omo-codex/plugin/components/comment-checker/src/apply-patch.ts +2 -8
  442. package/packages/omo-codex/plugin/components/comment-checker/src/core.ts +1 -2
  443. package/packages/omo-codex/plugin/components/comment-checker/src/request-extractor.ts +1 -1
  444. package/packages/omo-codex/plugin/components/comment-checker/src/runner.ts +1 -0
  445. package/packages/omo-codex/plugin/components/git-bash/AGENTS.md +1 -1
  446. package/packages/omo-codex/plugin/components/git-bash/dist/cli.js +1 -1
  447. package/packages/omo-codex/plugin/components/git-bash/dist/codex-hook.js +2 -1
  448. package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
  449. package/packages/omo-codex/plugin/components/git-bash/package.json +3 -4
  450. package/packages/omo-codex/plugin/components/git-bash/src/codex-hook.ts +2 -1
  451. package/packages/omo-codex/plugin/components/git-bash/test/codex-hook.test.ts +6 -7
  452. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/AGENTS.md +2 -2
  453. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/biome.json +2 -2
  454. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/directive.md +2 -0
  455. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/cli.js +36 -29
  456. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/codex-hook.js +32 -26
  457. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/types.d.ts +3 -0
  458. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
  459. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +6 -5
  460. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/src/codex-hook.ts +32 -28
  461. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/src/types.ts +3 -0
  462. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/test/cli.test.ts +1 -1
  463. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/test/codex-hook.test.ts +134 -11
  464. package/packages/omo-codex/plugin/components/lcx/skills/lcx-contribute-bug-fix/SKILL.md +1 -1
  465. package/packages/omo-codex/plugin/components/lcx/skills/lcx-doctor/SKILL.md +7 -5
  466. package/packages/omo-codex/plugin/components/lcx/skills/lcx-report-bug/SKILL.md +5 -5
  467. package/packages/omo-codex/plugin/components/lsp/AGENTS.md +30 -15
  468. package/packages/omo-codex/plugin/components/lsp/biome.json +2 -2
  469. package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +4 -4
  470. package/packages/omo-codex/plugin/components/lsp/dist/cli.js +977 -545
  471. package/packages/omo-codex/plugin/components/lsp/dist/daemon-cli-path.js +1 -1
  472. package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
  473. package/packages/omo-codex/plugin/components/lsp/package.json +6 -5
  474. package/packages/omo-codex/plugin/components/lsp/src/cli.ts +1 -1
  475. package/packages/omo-codex/plugin/components/lsp/src/codex-hook.ts +1 -1
  476. package/packages/omo-codex/plugin/components/lsp/src/daemon-cli-path.ts +1 -5
  477. package/packages/omo-codex/plugin/components/lsp/test/codex-hook-unavailable.test.ts +6 -7
  478. package/packages/omo-codex/plugin/components/lsp/test/codex-hook.test.ts +1 -2
  479. package/packages/omo-codex/plugin/components/lsp/test/package-smoke.test.ts +11 -1
  480. package/packages/omo-codex/plugin/components/rules/AGENTS.md +12 -0
  481. package/packages/omo-codex/plugin/components/rules/README.md +2 -0
  482. package/packages/omo-codex/plugin/components/rules/biome.json +2 -2
  483. package/packages/omo-codex/plugin/components/rules/bundled-rules/hephaestus/gpt-5.6.md +5 -1
  484. package/packages/omo-codex/plugin/components/rules/bundled-rules/hephaestus/gpt-6.md +127 -0
  485. package/packages/omo-codex/plugin/components/rules/dist/cli.js +103 -68
  486. package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
  487. package/packages/omo-codex/plugin/components/rules/package.json +8 -7
  488. package/packages/omo-codex/plugin/components/rules/src/config.ts +1 -2
  489. package/packages/omo-codex/plugin/components/rules/src/persistent-cache.ts +1 -2
  490. package/packages/omo-codex/plugin/components/rules/src/post-compact-budget.ts +27 -5
  491. package/packages/omo-codex/plugin/components/rules/src/rules-engine-factory.ts +1 -4
  492. package/packages/omo-codex/plugin/components/rules/src/static-injection.ts +4 -9
  493. package/packages/omo-codex/plugin/components/rules/test/bundled-rules.test.ts +1 -2
  494. package/packages/omo-codex/plugin/components/rules/test/dynamic-target-fingerprints.test.ts +1 -2
  495. package/packages/omo-codex/plugin/components/rules/test/engine.test.ts +7 -4
  496. package/packages/omo-codex/plugin/components/rules/test/finder.test.ts +2 -3
  497. package/packages/omo-codex/plugin/components/rules/test/formatter.test.ts +2 -3
  498. package/packages/omo-codex/plugin/components/rules/test/hephaestus-model-variant.test.ts +38 -3
  499. package/packages/omo-codex/plugin/components/rules/test/matcher.test.ts +2 -3
  500. package/packages/omo-codex/plugin/components/rules/test/package-smoke.test.ts +1 -1
  501. package/packages/omo-codex/plugin/components/rules/test/parser.test.ts +1 -2
  502. package/packages/omo-codex/plugin/components/rules/test/post-compact-budget.test.ts +29 -6
  503. package/packages/omo-codex/plugin/components/rules/test/rules-engine-consumption.test.ts +3 -6
  504. package/packages/omo-codex/plugin/components/rules/test/scanner.test.ts +1 -2
  505. package/packages/omo-codex/plugin/components/rules/test/sources.test.ts +2 -5
  506. package/packages/omo-codex/plugin/components/rules/test/windows-git-bash-bundled-rule.test.ts +1 -2
  507. package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
  508. package/packages/omo-codex/plugin/components/teammode/package.json +6 -5
  509. package/packages/omo-codex/plugin/components/teammode/test/thread-title-hook.test.ts +1 -1
  510. package/packages/omo-codex/plugin/components/telemetry/AGENTS.md +8 -0
  511. package/packages/omo-codex/plugin/components/telemetry/biome.json +2 -2
  512. package/packages/omo-codex/plugin/components/telemetry/dist/cli.js +5328 -1382
  513. package/packages/omo-codex/plugin/components/telemetry/dist/posthog.js +5524 -1579
  514. package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
  515. package/packages/omo-codex/plugin/components/telemetry/package.json +6 -5
  516. package/packages/omo-codex/plugin/components/telemetry/src/codex-hook.ts +1 -4
  517. package/packages/omo-codex/plugin/components/telemetry/src/posthog.ts +4 -14
  518. package/packages/omo-codex/plugin/components/telemetry/src/product-identity.ts +1 -1
  519. package/packages/omo-codex/plugin/components/telemetry/test/diagnostics.test.ts +2 -5
  520. package/packages/omo-codex/plugin/components/ultrawork/AGENTS.md +10 -4
  521. package/packages/omo-codex/plugin/components/ultrawork/README.md +3 -1
  522. package/packages/omo-codex/plugin/components/ultrawork/agents/explorer.toml +1 -1
  523. package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-clone-fidelity-reviewer.toml +1 -1
  524. package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-code-reviewer.toml +1 -1
  525. package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-gate-reviewer.toml +1 -1
  526. package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-qa-executor.toml +1 -1
  527. package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-worker-high.toml +1 -1
  528. package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-worker-low.toml +1 -1
  529. package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-worker-medium.toml +1 -1
  530. package/packages/omo-codex/plugin/components/ultrawork/agents/librarian.toml +1 -1
  531. package/packages/omo-codex/plugin/components/ultrawork/agents/metis.toml +1 -1
  532. package/packages/omo-codex/plugin/components/ultrawork/agents/momus.toml +1 -1
  533. package/packages/omo-codex/plugin/components/ultrawork/agents/plan.toml +20 -7
  534. package/packages/omo-codex/plugin/components/ultrawork/biome.json +2 -2
  535. package/packages/omo-codex/plugin/components/ultrawork/dist/cli.js +478 -4
  536. package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
  537. package/packages/omo-codex/plugin/components/ultrawork/package.json +6 -6
  538. package/packages/omo-codex/plugin/components/ultrawork/scripts/sync-directive.mjs +30 -14
  539. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/SKILL.md +9 -10
  540. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/full-workflow.md +17 -13
  541. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/intent-clear.md +5 -6
  542. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/intent-unclear.md +4 -4
  543. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/scripts/plan-templates.mjs +180 -0
  544. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/scripts/scaffold-plan.mjs +3 -153
  545. package/packages/omo-codex/plugin/components/ultrawork/src/directive-content.ts +4 -0
  546. package/packages/omo-codex/plugin/components/ultrawork/src/directive.ts +5 -2
  547. package/packages/omo-codex/plugin/components/ultrawork/test/codex-hook-trigger-policy.test.ts +9 -1
  548. package/packages/omo-codex/plugin/components/ultrawork/test/directive-source.test.ts +14 -8
  549. package/packages/omo-codex/plugin/components/ultrawork/test/package-smoke.test.ts +12 -1
  550. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/AGENTS.md +4 -4
  551. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/NOTICE +1 -1
  552. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/README.md +6 -6
  553. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/biome.json +2 -2
  554. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/directive.md +13 -13
  555. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/dist/cli.js +16 -16
  556. package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +16 -0
  557. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/package.json +13 -12
  558. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/boulder-reader.ts +1 -1
  559. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/cli.ts +1 -1
  560. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/codex-hook.ts +4 -4
  561. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/directive.ts +1 -1
  562. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/index.ts +1 -1
  563. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/types.ts +1 -1
  564. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/boulder-reader.test.ts +3 -3
  565. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/cli.test.ts +4 -8
  566. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/codex-hook.test.ts +22 -6
  567. package/packages/omo-codex/plugin/components/ulw-loop/AGENTS.md +19 -0
  568. package/packages/omo-codex/plugin/components/ulw-loop/CHANGELOG.md +17 -1
  569. package/packages/omo-codex/plugin/components/ulw-loop/README.md +12 -1
  570. package/packages/omo-codex/plugin/components/ulw-loop/biome.json +2 -2
  571. package/packages/omo-codex/plugin/components/ulw-loop/directive.md +102 -107
  572. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-codex-validation.d.ts +18 -0
  573. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-codex-validation.js +30 -0
  574. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-continuation.js +10 -4
  575. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-reconciliation.d.ts +2 -5
  576. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-reconciliation.js +5 -78
  577. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-template.d.ts +12 -0
  578. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-template.js +114 -0
  579. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint.d.ts +7 -1
  580. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint.js +57 -46
  581. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-arg-parser.js +2 -2
  582. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-commands.js +21 -8
  583. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-output.d.ts +2 -1
  584. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-output.js +12 -1
  585. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-subcommands.d.ts +1 -1
  586. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-subcommands.js +40 -37
  587. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli.js +2205 -737
  588. package/packages/omo-codex/plugin/components/ulw-loop/dist/codex-goal-instruction.d.ts +2 -0
  589. package/packages/omo-codex/plugin/components/ulw-loop/dist/codex-goal-instruction.js +28 -8
  590. package/packages/omo-codex/plugin/components/ulw-loop/dist/codex-goal-snapshot.d.ts +8 -5
  591. package/packages/omo-codex/plugin/components/ulw-loop/dist/codex-goal-snapshot.js +35 -23
  592. package/packages/omo-codex/plugin/components/ulw-loop/dist/constants.d.ts +1 -0
  593. package/packages/omo-codex/plugin/components/ulw-loop/dist/constants.js +1 -0
  594. package/packages/omo-codex/plugin/components/ulw-loop/dist/domain-types.d.ts +25 -9
  595. package/packages/omo-codex/plugin/components/ulw-loop/dist/driver-objective-ack.d.ts +4 -0
  596. package/packages/omo-codex/plugin/components/ulw-loop/dist/driver-objective-ack.js +18 -0
  597. package/packages/omo-codex/plugin/components/ulw-loop/dist/evidence-artifacts.d.ts +1 -0
  598. package/packages/omo-codex/plugin/components/ulw-loop/dist/evidence-artifacts.js +37 -0
  599. package/packages/omo-codex/plugin/components/ulw-loop/dist/evidence.d.ts +1 -0
  600. package/packages/omo-codex/plugin/components/ulw-loop/dist/evidence.js +24 -12
  601. package/packages/omo-codex/plugin/components/ulw-loop/dist/ledger.d.ts +4 -0
  602. package/packages/omo-codex/plugin/components/ulw-loop/dist/ledger.js +39 -0
  603. package/packages/omo-codex/plugin/components/ulw-loop/dist/paths.d.ts +2 -0
  604. package/packages/omo-codex/plugin/components/ulw-loop/dist/paths.js +19 -4
  605. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-commit.d.ts +19 -0
  606. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-commit.js +108 -0
  607. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-crud.d.ts +6 -2
  608. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-crud.js +54 -25
  609. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-goal-factory.d.ts +10 -3
  610. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-goal-factory.js +38 -31
  611. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-io.d.ts +10 -7
  612. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-io.js +121 -100
  613. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-log.d.ts +16 -0
  614. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-log.js +115 -0
  615. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-missing-recovery.d.ts +18 -0
  616. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-missing-recovery.js +41 -0
  617. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-aggregate.d.ts +7 -0
  618. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-aggregate.js +9 -0
  619. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-artifacts.d.ts +12 -0
  620. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-artifacts.js +104 -0
  621. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-fields.d.ts +13 -1
  622. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-fields.js +65 -9
  623. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-verdicts.js +5 -1
  624. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate.d.ts +4 -2
  625. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate.js +72 -117
  626. package/packages/omo-codex/plugin/components/ulw-loop/dist/review-blockers.d.ts +2 -0
  627. package/packages/omo-codex/plugin/components/ulw-loop/dist/review-blockers.js +25 -13
  628. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk/factory.d.ts +2 -0
  629. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk/factory.js +157 -0
  630. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk/manifest.d.ts +381 -0
  631. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk/manifest.js +127 -0
  632. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk/types.d.ts +130 -0
  633. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk/types.js +1 -0
  634. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk.d.ts +3 -0
  635. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk.js +3 -0
  636. package/packages/omo-codex/plugin/components/ulw-loop/dist/spawn-budget-io.d.ts +5 -0
  637. package/packages/omo-codex/plugin/components/ulw-loop/dist/spawn-budget-io.js +67 -0
  638. package/packages/omo-codex/plugin/components/ulw-loop/dist/spawn-guard.d.ts +7 -1
  639. package/packages/omo-codex/plugin/components/ulw-loop/dist/spawn-guard.js +190 -59
  640. package/packages/omo-codex/plugin/components/ulw-loop/dist/spawn-role-guard.d.ts +2 -0
  641. package/packages/omo-codex/plugin/components/ulw-loop/dist/spawn-role-guard.js +22 -0
  642. package/packages/omo-codex/plugin/components/ulw-loop/dist/state-lock.d.ts +19 -0
  643. package/packages/omo-codex/plugin/components/ulw-loop/dist/state-lock.js +259 -0
  644. package/packages/omo-codex/plugin/components/ulw-loop/dist/status-next-actions.d.ts +7 -0
  645. package/packages/omo-codex/plugin/components/ulw-loop/dist/status-next-actions.js +41 -0
  646. package/packages/omo-codex/plugin/components/ulw-loop/dist/steering-batch.js +4 -4
  647. package/packages/omo-codex/plugin/components/ulw-loop/dist/steering-mutations.d.ts +3 -2
  648. package/packages/omo-codex/plugin/components/ulw-loop/dist/steering-mutations.js +4 -4
  649. package/packages/omo-codex/plugin/components/ulw-loop/dist/steering-types.d.ts +9 -1
  650. package/packages/omo-codex/plugin/components/ulw-loop/dist/steering.d.ts +3 -2
  651. package/packages/omo-codex/plugin/components/ulw-loop/dist/steering.js +11 -11
  652. package/packages/omo-codex/plugin/components/ulw-loop/dist/stop-resume-hook.js +28 -23
  653. package/packages/omo-codex/plugin/components/ulw-loop/dist/success-criteria-input.d.ts +9 -0
  654. package/packages/omo-codex/plugin/components/ulw-loop/dist/success-criteria-input.js +41 -0
  655. package/packages/omo-codex/plugin/components/ulw-loop/dist/surface.d.ts +21 -0
  656. package/packages/omo-codex/plugin/components/ulw-loop/dist/surface.js +100 -0
  657. package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +18 -5
  658. package/packages/omo-codex/plugin/components/ulw-loop/package.json +7 -6
  659. package/packages/omo-codex/plugin/components/ulw-loop/skills/ulw-loop/SKILL.md +7 -2
  660. package/packages/omo-codex/plugin/components/ulw-loop/skills/ulw-loop/references/define-goal.md +2 -3
  661. package/packages/omo-codex/plugin/components/ulw-loop/skills/ulw-loop/references/full-workflow.md +34 -11
  662. package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint-codex-validation.ts +52 -0
  663. package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint-continuation.ts +8 -6
  664. package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint-reconciliation.ts +5 -98
  665. package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint-template.ts +134 -0
  666. package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint.ts +59 -77
  667. package/packages/omo-codex/plugin/components/ulw-loop/src/cli-arg-parser.ts +10 -4
  668. package/packages/omo-codex/plugin/components/ulw-loop/src/cli-commands.ts +24 -8
  669. package/packages/omo-codex/plugin/components/ulw-loop/src/cli-output.ts +14 -1
  670. package/packages/omo-codex/plugin/components/ulw-loop/src/cli-subcommands.ts +52 -46
  671. package/packages/omo-codex/plugin/components/ulw-loop/src/cli.ts +8 -6
  672. package/packages/omo-codex/plugin/components/ulw-loop/src/codex-goal-instruction.ts +35 -7
  673. package/packages/omo-codex/plugin/components/ulw-loop/src/codex-goal-snapshot.ts +51 -33
  674. package/packages/omo-codex/plugin/components/ulw-loop/src/codex-hook.ts +3 -1
  675. package/packages/omo-codex/plugin/components/ulw-loop/src/constants.ts +1 -0
  676. package/packages/omo-codex/plugin/components/ulw-loop/src/domain-types.ts +27 -9
  677. package/packages/omo-codex/plugin/components/ulw-loop/src/driver-objective-ack.ts +20 -0
  678. package/packages/omo-codex/plugin/components/ulw-loop/src/evidence-artifacts.ts +45 -0
  679. package/packages/omo-codex/plugin/components/ulw-loop/src/evidence.ts +23 -16
  680. package/packages/omo-codex/plugin/components/ulw-loop/src/ledger.ts +38 -0
  681. package/packages/omo-codex/plugin/components/ulw-loop/src/paths.ts +32 -4
  682. package/packages/omo-codex/plugin/components/ulw-loop/src/plan-commit.ts +132 -0
  683. package/packages/omo-codex/plugin/components/ulw-loop/src/plan-crud.ts +67 -54
  684. package/packages/omo-codex/plugin/components/ulw-loop/src/plan-goal-factory.ts +63 -31
  685. package/packages/omo-codex/plugin/components/ulw-loop/src/plan-io.ts +140 -119
  686. package/packages/omo-codex/plugin/components/ulw-loop/src/plan-log.ts +112 -0
  687. package/packages/omo-codex/plugin/components/ulw-loop/src/plan-missing-recovery.ts +61 -0
  688. package/packages/omo-codex/plugin/components/ulw-loop/src/quality-gate-aggregate.ts +11 -0
  689. package/packages/omo-codex/plugin/components/ulw-loop/src/quality-gate-artifacts.ts +123 -0
  690. package/packages/omo-codex/plugin/components/ulw-loop/src/quality-gate-fields.ts +71 -15
  691. package/packages/omo-codex/plugin/components/ulw-loop/src/quality-gate-verdicts.ts +6 -1
  692. package/packages/omo-codex/plugin/components/ulw-loop/src/quality-gate.ts +92 -136
  693. package/packages/omo-codex/plugin/components/ulw-loop/src/review-blockers.ts +38 -13
  694. package/packages/omo-codex/plugin/components/ulw-loop/src/sdk/factory.ts +218 -0
  695. package/packages/omo-codex/plugin/components/ulw-loop/src/sdk/manifest.ts +156 -0
  696. package/packages/omo-codex/plugin/components/ulw-loop/src/sdk/types.ts +143 -0
  697. package/packages/omo-codex/plugin/components/ulw-loop/src/sdk.ts +3 -0
  698. package/packages/omo-codex/plugin/components/ulw-loop/src/spawn-budget-io.ts +59 -0
  699. package/packages/omo-codex/plugin/components/ulw-loop/src/spawn-guard.ts +201 -52
  700. package/packages/omo-codex/plugin/components/ulw-loop/src/spawn-role-guard.ts +22 -0
  701. package/packages/omo-codex/plugin/components/ulw-loop/src/state-lock.ts +257 -0
  702. package/packages/omo-codex/plugin/components/ulw-loop/src/status-next-actions.ts +45 -0
  703. package/packages/omo-codex/plugin/components/ulw-loop/src/steering-batch.ts +4 -4
  704. package/packages/omo-codex/plugin/components/ulw-loop/src/steering-mutations.ts +5 -4
  705. package/packages/omo-codex/plugin/components/ulw-loop/src/steering-types.ts +13 -1
  706. package/packages/omo-codex/plugin/components/ulw-loop/src/steering.ts +12 -10
  707. package/packages/omo-codex/plugin/components/ulw-loop/src/stop-resume-hook.ts +27 -22
  708. package/packages/omo-codex/plugin/components/ulw-loop/src/success-criteria-input.ts +56 -0
  709. package/packages/omo-codex/plugin/components/ulw-loop/src/surface.ts +133 -0
  710. package/packages/omo-codex/plugin/components/ulw-loop/test/checkpoint-final.test.ts +131 -82
  711. package/packages/omo-codex/plugin/components/ulw-loop/test/checkpoint-template.test.ts +147 -0
  712. package/packages/omo-codex/plugin/components/ulw-loop/test/checkpoint.test.ts +16 -22
  713. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-checkpoint-continuation.test.ts +4 -2
  714. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-checkpoint.test.ts +31 -2
  715. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-commands.test.ts +2 -0
  716. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-complete-goals.test.ts +3 -1
  717. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-create-goals.test.ts +35 -8
  718. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-entrypoint.test.ts +38 -4
  719. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-json-errors.test.ts +27 -0
  720. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-scope-required.test.ts +144 -0
  721. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-status-next-actions.test.ts +185 -0
  722. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-steering-batch.test.ts +8 -3
  723. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-validation-batch.test.ts +6 -0
  724. package/packages/omo-codex/plugin/components/ulw-loop/test/codex-goal-instruction.test.ts +35 -0
  725. package/packages/omo-codex/plugin/components/ulw-loop/test/codex-goal-snapshot.test.ts +88 -11
  726. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/barrier.ts +13 -0
  727. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/cli-session.ts +4 -0
  728. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/commit-child.ts +65 -0
  729. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/commit-cli-qa.mjs +76 -0
  730. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/commit-crash.ts +23 -0
  731. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/commit-mutations.mjs +58 -0
  732. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/commit-writer.ts +65 -0
  733. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/lease-clock.ts +23 -0
  734. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/quality-gate-builder.ts +9 -4
  735. package/packages/omo-codex/plugin/components/ulw-loop/test/guided-recovery.test.ts +67 -0
  736. package/packages/omo-codex/plugin/components/ulw-loop/test/package-smoke.test.ts +3 -2
  737. package/packages/omo-codex/plugin/components/ulw-loop/test/paths.test.ts +9 -0
  738. package/packages/omo-codex/plugin/components/ulw-loop/test/plan-commit-log.test.ts +252 -0
  739. package/packages/omo-codex/plugin/components/ulw-loop/test/plan-commit-recovery.test.ts +190 -0
  740. package/packages/omo-codex/plugin/components/ulw-loop/test/plan-io-cross-process.test.ts +106 -0
  741. package/packages/omo-codex/plugin/components/ulw-loop/test/plan-io.test.ts +74 -25
  742. package/packages/omo-codex/plugin/components/ulw-loop/test/plan-log-legacy-projection.test.ts +228 -0
  743. package/packages/omo-codex/plugin/components/ulw-loop/test/plan-log-newest.test.ts +72 -0
  744. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-aggregate-basics.test.ts +258 -0
  745. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-cap-and-dedupe.test.ts +22 -0
  746. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-fields-messages.test.ts +98 -0
  747. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-lazycodex-surface.test.ts +93 -0
  748. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-poisoning-cascades.test.ts +97 -0
  749. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-roles.test.ts +51 -2
  750. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-senpi-surface.test.ts +131 -0
  751. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-single-report.test.ts +241 -0
  752. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate.test.ts +58 -3
  753. package/packages/omo-codex/plugin/components/ulw-loop/test/review-blockers.test.ts +9 -7
  754. package/packages/omo-codex/plugin/components/ulw-loop/test/sdk-completed-plan.test.ts +43 -0
  755. package/packages/omo-codex/plugin/components/ulw-loop/test/sdk-contract.test.ts +137 -0
  756. package/packages/omo-codex/plugin/components/ulw-loop/test/sdk-driver-states.test.ts +174 -0
  757. package/packages/omo-codex/plugin/components/ulw-loop/test/sdk-dx.test.ts +219 -0
  758. package/packages/omo-codex/plugin/components/ulw-loop/test/sdk-session-context.test.ts +169 -0
  759. package/packages/omo-codex/plugin/components/ulw-loop/test/spawn-guard-native-reviewer.test.ts +207 -0
  760. package/packages/omo-codex/plugin/components/ulw-loop/test/spawn-guard.test.ts +452 -7
  761. package/packages/omo-codex/plugin/components/ulw-loop/test/spawn-role-matrix.test.ts +113 -0
  762. package/packages/omo-codex/plugin/components/ulw-loop/test/state-lock.test.ts +310 -0
  763. package/packages/omo-codex/plugin/components/ulw-loop/test/status-next-actions-surface.test.ts +133 -0
  764. package/packages/omo-codex/plugin/components/ulw-loop/test/steering-batch.test.ts +12 -12
  765. package/packages/omo-codex/plugin/components/ulw-loop/test/steering.test.ts +12 -6
  766. package/packages/omo-codex/plugin/components/ulw-loop/test/stop-resume-hook.test.ts +1 -1
  767. package/packages/omo-codex/plugin/components/ulw-loop/test/surface.test.ts +113 -0
  768. package/packages/omo-codex/plugin/components/ulw-loop/test/ultrawork-directive.test.ts +9 -3
  769. package/packages/omo-codex/plugin/components/ulw-loop/vitest.config.ts +1 -0
  770. package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
  771. package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
  772. package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
  773. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
  774. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
  775. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
  776. package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
  777. package/packages/omo-codex/plugin/hooks/post-tool-use-recording-spawn-admission.json +18 -0
  778. package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
  779. package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
  780. package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
  781. package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
  782. package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
  783. package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +1 -1
  784. package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +1 -1
  785. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-execute-continuation.json +17 -0
  786. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-loop-resume.json +1 -1
  787. package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +1 -1
  788. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +1 -1
  789. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +1 -1
  790. package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +1 -1
  791. package/packages/omo-codex/plugin/model-catalog.json +16 -7
  792. package/packages/omo-codex/plugin/package-lock.json +992 -681
  793. package/packages/omo-codex/plugin/package.json +6 -3
  794. package/packages/omo-codex/plugin/scripts/AGENTS.md +39 -0
  795. package/packages/omo-codex/plugin/scripts/auto-update-plan.mjs +1 -2
  796. package/packages/omo-codex/plugin/scripts/auto-update.mjs +0 -9
  797. package/packages/omo-codex/plugin/scripts/canonical-ultrawork-directive.mjs +17 -0
  798. package/packages/omo-codex/plugin/scripts/hook-status-message.mjs +0 -1
  799. package/packages/omo-codex/plugin/scripts/materialize-shared-upstreams.mjs +8 -2
  800. package/packages/omo-codex/plugin/scripts/migrate-codex-config/catalog.mjs +16 -7
  801. package/packages/omo-codex/plugin/scripts/migrate-codex-config/multi-agent-v2-guard.mjs +8 -4
  802. package/packages/omo-codex/plugin/scripts/migrate-codex-config/subagent-limit-guard.mjs +19 -90
  803. package/packages/omo-codex/plugin/scripts/migrate-codex-config/toml-section-editor.mjs +1 -1
  804. package/packages/omo-codex/plugin/scripts/sync-skills.d.mts +4 -0
  805. package/packages/omo-codex/plugin/scripts/sync-skills.mjs +114 -67
  806. package/packages/omo-codex/plugin/shared/package.json +3 -4
  807. package/packages/omo-codex/plugin/shared/src/config-loader.ts +2 -102
  808. package/packages/omo-codex/plugin/shared/src/config-migration.ts +0 -1
  809. package/packages/omo-codex/plugin/shared/test/config-loader.test.ts +41 -130
  810. package/packages/omo-codex/plugin/skills/ast-grep/AGENTS.md +51 -0
  811. package/packages/omo-codex/plugin/skills/ast-grep/SKILL.md +13 -1
  812. package/packages/omo-codex/plugin/skills/browser/ATTRIBUTION.md +37 -0
  813. package/packages/omo-codex/plugin/skills/browser/SKILL.md +109 -0
  814. package/packages/omo-codex/plugin/skills/browser/agents/openai.yaml +2 -0
  815. package/packages/omo-codex/plugin/skills/browser/references/commands.md +105 -0
  816. package/packages/omo-codex/plugin/skills/browser/references/install.md +97 -0
  817. package/packages/omo-codex/plugin/skills/browser/references/owned-engine/README.md +62 -0
  818. package/packages/omo-codex/plugin/skills/browser/references/owned-engine/frames-and-humans.md +52 -0
  819. package/packages/omo-codex/plugin/skills/browser/references/owned-engine/ladder.md +61 -0
  820. package/packages/omo-codex/plugin/skills/browser/references/owned-engine/network.md +62 -0
  821. package/packages/omo-codex/plugin/skills/browser/references/recipes/1password.md +61 -0
  822. package/packages/omo-codex/plugin/skills/browser/references/remote.md +25 -0
  823. package/packages/omo-codex/plugin/skills/browser/runtime/omowright/index.js +1534 -0
  824. package/packages/omo-codex/plugin/skills/browser/runtime/omowright/manifest.json +9 -0
  825. package/packages/omo-codex/plugin/skills/browser/runtime/omowright/page-bundle.js +1395 -0
  826. package/packages/omo-codex/plugin/skills/browser/scripts/browser-doctor.mjs +57 -0
  827. package/packages/omo-codex/plugin/skills/browser/scripts/browser-install.mjs +50 -0
  828. package/packages/omo-codex/plugin/skills/browser/scripts/omowright.mjs +25 -0
  829. package/packages/omo-codex/plugin/skills/coding-agent-sessions/AGENTS.md +62 -0
  830. package/packages/omo-codex/plugin/skills/coding-agent-sessions/SKILL.md +1 -1
  831. package/packages/omo-codex/plugin/skills/data-scientist/SKILL.md +99 -239
  832. package/packages/omo-codex/plugin/skills/data-scientist/references/execution-surfaces.md +91 -0
  833. package/packages/omo-codex/plugin/skills/data-scientist/references/placement.md +74 -0
  834. package/packages/omo-codex/plugin/skills/data-scientist/references/polars-lane.md +95 -0
  835. package/packages/omo-codex/plugin/skills/data-scientist/references/uv-setup.md +1 -1
  836. package/packages/omo-codex/plugin/skills/data-scientist/references/visualization.md +64 -0
  837. package/packages/omo-codex/plugin/skills/data-scientist/scripts/ensure-js-deps.sh +28 -0
  838. package/packages/omo-codex/plugin/skills/data-scientist/scripts/ensure-py-deps.sh +37 -0
  839. package/packages/omo-codex/plugin/skills/debugging/SKILL.md +5 -3
  840. package/packages/omo-codex/plugin/skills/debugging/references/methodology/00-setup.md +12 -0
  841. package/packages/omo-codex/plugin/skills/debugging/references/methodology/02-investigate.md +26 -5
  842. package/packages/omo-codex/plugin/skills/debugging/references/methodology/06-fix.md +3 -3
  843. package/packages/omo-codex/plugin/skills/debugging/references/methodology/08-qa.md +1 -1
  844. package/packages/omo-codex/plugin/skills/debugging/references/runtimes/go.md +15 -1
  845. package/packages/omo-codex/plugin/skills/debugging/references/runtimes/native-binary.md +38 -0
  846. package/packages/omo-codex/plugin/skills/debugging/references/runtimes/node.md +25 -0
  847. package/packages/omo-codex/plugin/skills/debugging/references/runtimes/python.md +13 -0
  848. package/packages/omo-codex/plugin/skills/debugging/references/runtimes/rust.md +41 -0
  849. package/packages/omo-codex/plugin/skills/debugging/references/scripts/dap.mjs +267 -0
  850. package/packages/omo-codex/plugin/skills/debugging/references/scripts/fixture-adapter.mjs +59 -0
  851. package/packages/omo-codex/plugin/skills/debugging/references/tools/browser-qa.md +104 -0
  852. package/packages/omo-codex/plugin/skills/debugging/references/tools/dap.md +103 -0
  853. package/packages/omo-codex/plugin/skills/debugging/references/tools/frida.md +193 -0
  854. package/packages/omo-codex/plugin/skills/frontend/ATTRIBUTION.md +10 -0
  855. package/packages/omo-codex/plugin/skills/frontend/SKILL.md +8 -3
  856. package/packages/omo-codex/plugin/skills/frontend/references/design/README.md +13 -4
  857. package/packages/omo-codex/plugin/skills/frontend/references/design/_INDEX.md +1 -0
  858. package/packages/omo-codex/plugin/skills/frontend/references/design/ambience-skill.md +146 -0
  859. package/packages/omo-codex/plugin/skills/frontend/references/design/aside.md +1 -1
  860. package/packages/omo-codex/plugin/skills/frontend/references/design/clone-from-url.md +1 -1
  861. package/packages/omo-codex/plugin/skills/frontend/references/design/design-system-architecture.md +30 -6
  862. package/packages/omo-codex/plugin/skills/frontend/references/design/interaction-skill.md +19 -5
  863. package/packages/omo-codex/plugin/skills/frontend/references/design/print-paged-media.md +76 -0
  864. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/README.md +1 -1
  865. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/lane-a-direction.md +1 -1
  866. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/lane-b-execution.md +11 -11
  867. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/lane-d-memory.md +3 -3
  868. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/orchestration.md +1 -1
  869. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/routing.md +5 -5
  870. package/packages/omo-codex/plugin/skills/frontend/references/perfection/README.md +1 -0
  871. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/lighthouse-audit.py +2 -2
  872. package/packages/omo-codex/plugin/skills/git-master/SKILL.md +1 -1
  873. package/packages/omo-codex/plugin/skills/init-deep/SKILL.md +20 -18
  874. package/packages/omo-codex/plugin/skills/lcx-contribute-bug-fix/SKILL.md +1 -1
  875. package/packages/omo-codex/plugin/skills/lcx-doctor/SKILL.md +7 -5
  876. package/packages/omo-codex/plugin/skills/lcx-report-bug/SKILL.md +5 -5
  877. package/packages/omo-codex/plugin/skills/lsp-setup/SKILL.md +1 -1
  878. package/packages/omo-codex/plugin/skills/programming/SKILL.md +12 -18
  879. package/packages/omo-codex/plugin/skills/programming/references/rust/README.md +43 -15
  880. package/packages/omo-codex/plugin/skills/programming/references/rust/api-design.md +81 -0
  881. package/packages/omo-codex/plugin/skills/programming/references/rust/async-tokio.md +60 -28
  882. package/packages/omo-codex/plugin/skills/programming/references/rust/axum-stack.md +1 -13
  883. package/packages/omo-codex/plugin/skills/programming/references/rust/cargo-strict.md +44 -8
  884. package/packages/omo-codex/plugin/skills/programming/references/rust/clap-stack.md +8 -3
  885. package/packages/omo-codex/plugin/skills/programming/references/rust/concurrency.md +66 -52
  886. package/packages/omo-codex/plugin/skills/programming/references/rust/libraries.md +35 -25
  887. package/packages/omo-codex/plugin/skills/programming/references/rust/macros.md +63 -0
  888. package/packages/omo-codex/plugin/skills/programming/references/rust/one-liners.md +5 -3
  889. package/packages/omo-codex/plugin/skills/programming/references/rust/proptest-insta.md +8 -0
  890. package/packages/omo-codex/plugin/skills/programming/references/rust/type-state.md +50 -12
  891. package/packages/omo-codex/plugin/skills/programming/references/rust/unsafe-discipline.md +34 -6
  892. package/packages/omo-codex/plugin/skills/programming/references/rust/zero-cost-safety.md +62 -52
  893. package/packages/omo-codex/plugin/skills/programming/references/rust-ub/miri-sanitizers-loom.md +1 -1
  894. package/packages/omo-codex/plugin/skills/programming/references/rust-ub/ub-taxonomy.md +6 -3
  895. package/packages/omo-codex/plugin/skills/programming/scripts/rust/check-no-excuse-rules.sh +86 -75
  896. package/packages/omo-codex/plugin/skills/programming/scripts/rust/new-project.py +31 -28
  897. package/packages/omo-codex/plugin/skills/refactor/SKILL.md +11 -9
  898. package/packages/omo-codex/plugin/skills/remove-ai-slops/SKILL.md +11 -9
  899. package/packages/omo-codex/plugin/skills/review-work/SKILL.md +116 -424
  900. package/packages/omo-codex/plugin/skills/ultimate-browsing/ATTRIBUTION.md +1 -82
  901. package/packages/omo-codex/plugin/skills/ultimate-browsing/SKILL.md +40 -28
  902. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/AGENTS.md +2 -1
  903. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/templates/package.json +2 -2
  904. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/templates/playwright_mobile_chrome.js +5 -2
  905. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/templates/playwright_real_chrome.js +8 -6
  906. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/tests/test_playwright_stealth.py +86 -0
  907. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/tests/test_playwright_templates.py +4 -7
  908. package/packages/omo-codex/plugin/skills/ultimate-browsing/references/chrome-stealth.md +34 -111
  909. package/packages/omo-codex/plugin/skills/ultimate-browsing/references/insane-search/README.md +14 -7
  910. package/packages/omo-codex/plugin/skills/ultimate-browsing/references/insane-search/playwright.md +22 -36
  911. package/packages/omo-codex/plugin/skills/ultimate-browsing/scripts/extract_cookies.py +3 -3
  912. package/packages/omo-codex/plugin/skills/ultrawork/SKILL.md +102 -107
  913. package/packages/omo-codex/plugin/skills/{start-work → ulw-execute}/SKILL.md +38 -39
  914. package/packages/omo-codex/plugin/skills/ulw-execute/agents/openai.yaml +2 -0
  915. package/packages/omo-codex/plugin/skills/ulw-loop/SKILL.md +31 -2
  916. package/packages/omo-codex/plugin/skills/ulw-loop/references/define-goal.md +2 -3
  917. package/packages/omo-codex/plugin/skills/ulw-loop/references/full-workflow.md +34 -11
  918. package/packages/omo-codex/plugin/skills/ulw-plan/SKILL.md +9 -10
  919. package/packages/omo-codex/plugin/skills/ulw-plan/references/full-workflow.md +17 -13
  920. package/packages/omo-codex/plugin/skills/ulw-plan/references/intent-clear.md +5 -6
  921. package/packages/omo-codex/plugin/skills/ulw-plan/references/intent-unclear.md +4 -4
  922. package/packages/omo-codex/plugin/skills/ulw-plan/scripts/plan-templates.mjs +180 -0
  923. package/packages/omo-codex/plugin/skills/ulw-plan/scripts/scaffold-plan.mjs +3 -153
  924. package/packages/omo-codex/plugin/skills/ulw-research/AGENTS.md +63 -0
  925. package/packages/omo-codex/plugin/skills/ulw-research/SKILL.md +52 -33
  926. package/packages/omo-codex/plugin/skills/ulw-research/references/deliverable-phase.md +187 -0
  927. package/packages/omo-codex/plugin/skills/ulw-research/references/report-gates.md +66 -0
  928. package/packages/omo-codex/plugin/skills/ulw-research/scripts/cli-support.mjs +102 -0
  929. package/packages/omo-codex/plugin/skills/ulw-research/scripts/contracts.mjs +162 -0
  930. package/packages/omo-codex/plugin/skills/ulw-research/scripts/css-lite.mjs +204 -0
  931. package/packages/omo-codex/plugin/skills/ulw-research/scripts/design-spec.mjs +161 -0
  932. package/packages/omo-codex/plugin/skills/ulw-research/scripts/entities.mjs +39 -0
  933. package/packages/omo-codex/plugin/skills/ulw-research/scripts/entry-guard.mjs +21 -0
  934. package/packages/omo-codex/plugin/skills/ulw-research/scripts/format-extract-css.mjs +122 -0
  935. package/packages/omo-codex/plugin/skills/ulw-research/scripts/format-extract.mjs +229 -0
  936. package/packages/omo-codex/plugin/skills/ulw-research/scripts/gates-figures.mjs +173 -0
  937. package/packages/omo-codex/plugin/skills/ulw-research/scripts/gates-layout.mjs +146 -0
  938. package/packages/omo-codex/plugin/skills/ulw-research/scripts/gates-static.mjs +167 -0
  939. package/packages/omo-codex/plugin/skills/ulw-research/scripts/gates-structure.mjs +118 -0
  940. package/packages/omo-codex/plugin/skills/ulw-research/scripts/gates-text.mjs +190 -0
  941. package/packages/omo-codex/plugin/skills/ulw-research/scripts/html-lite.mjs +239 -0
  942. package/packages/omo-codex/plugin/skills/ulw-research/scripts/layout-probe.mjs +83 -0
  943. package/packages/omo-codex/plugin/skills/ulw-research/scripts/outcome.mjs +250 -0
  944. package/packages/omo-codex/plugin/skills/ulw-research/scripts/repair-tracker.mjs +171 -0
  945. package/packages/omo-codex/plugin/skills/ulw-research/scripts/report-tools-commands.mjs +214 -0
  946. package/packages/omo-codex/plugin/skills/ulw-research/scripts/report-tools.mjs +61 -0
  947. package/packages/omo-codex/plugin/skills/visual-qa/AGENTS.md +58 -0
  948. package/packages/omo-codex/plugin/skills/visual-qa/SKILL.md +10 -7
  949. package/packages/omo-codex/plugin/skills/visual-qa/references/browser-setup.md +77 -0
  950. package/packages/omo-codex/plugin/test/AGENTS.md +47 -0
  951. package/packages/omo-codex/plugin/test/aggregate-agents.test.mjs +12 -12
  952. package/packages/omo-codex/plugin/test/aggregate-hooks.test.mjs +13 -28
  953. package/packages/omo-codex/plugin/test/aggregate-manifest.test.mjs +2 -3
  954. package/packages/omo-codex/plugin/test/aggregate-mcp.test.mjs +2 -7
  955. package/packages/omo-codex/plugin/test/aggregate-model-catalog.test.mjs +14 -4
  956. package/packages/omo-codex/plugin/test/auto-update.test.mjs +4 -29
  957. package/packages/omo-codex/plugin/test/bootstrap-default-role.test.mjs +66 -0
  958. package/packages/omo-codex/plugin/test/bootstrap-setup.test.mjs +0 -31
  959. package/packages/omo-codex/plugin/test/canonical-ultrawork-directive.test.mjs +53 -0
  960. package/packages/omo-codex/plugin/test/component-bin-names.test.mjs +2 -2
  961. package/packages/omo-codex/plugin/test/component-bundled-cli.test.mjs +1 -51
  962. package/packages/omo-codex/plugin/test/component-hook-contract-cases.mjs +100 -2
  963. package/packages/omo-codex/plugin/test/hook-status-message.test.mjs +5 -6
  964. package/packages/omo-codex/plugin/test/mcp-research-servers.test.mjs +1 -3
  965. package/packages/omo-codex/plugin/test/migrate-codex-config.test.mjs +35 -35
  966. package/packages/omo-codex/plugin/test/multi-agent-v2-regression.test.mjs +1 -1
  967. package/packages/omo-codex/plugin/test/subagent-limit-migration.test.mjs +107 -15
  968. package/packages/omo-codex/plugin/test/sync-skills-codex-compatibility.test.mjs +81 -3
  969. package/packages/omo-codex/plugin/test/sync-skills-test-support.mjs +57 -26
  970. package/packages/omo-codex/plugin/test/sync-skills.test.mjs +37 -0
  971. package/packages/omo-codex/plugin/test/ultrawork-skill-pointer.test.mjs +5 -2
  972. package/packages/omo-codex/scripts/AGENTS.md +36 -0
  973. package/packages/omo-codex/scripts/check-model-catalog-parity.mjs +42 -0
  974. package/packages/omo-codex/scripts/install-cache-copy.test.mjs +27 -1
  975. package/packages/omo-codex/scripts/install-config-autonomous-features.test.mjs +1 -1
  976. package/packages/omo-codex/scripts/install-config-autonomous.test.mjs +2 -1
  977. package/packages/omo-codex/scripts/install-config-git-bash.test.mjs +0 -23
  978. package/packages/omo-codex/scripts/install-config-reasoning.test.mjs +5 -5
  979. package/packages/omo-codex/scripts/install-config.test.mjs +15 -17
  980. package/packages/omo-codex/scripts/install-dist/install-local.mjs +16238 -4291
  981. package/packages/omo-codex/scripts/install-generated-bundle.test.mjs +3 -4
  982. package/packages/omo-codex/scripts/install-git-bash-mcp-env.test.mjs +1 -25
  983. package/packages/omo-codex/scripts/install-mcp-runtime.test.mjs +0 -36
  984. package/packages/omo-codex/scripts/install-packaged-local.test.mjs +1 -6
  985. package/packages/{omo-codex/plugin/components/ultrawork/directive.md → prompts-core/prompts/ultrawork/codex.md} +102 -107
  986. package/packages/shared-skills/package.json +7 -1
  987. package/packages/shared-skills/skill-source-filter.d.ts +16 -0
  988. package/packages/shared-skills/skill-source-filter.mjs +44 -0
  989. package/packages/shared-skills/skills/ast-grep/AGENTS.md +51 -0
  990. package/packages/shared-skills/skills/ast-grep/SKILL.md +13 -1
  991. package/packages/shared-skills/skills/browser/ATTRIBUTION.md +37 -0
  992. package/packages/shared-skills/skills/browser/SKILL.md +109 -0
  993. package/packages/shared-skills/skills/browser/references/commands.md +105 -0
  994. package/packages/shared-skills/skills/browser/references/install.md +97 -0
  995. package/packages/shared-skills/skills/browser/references/owned-engine/README.md +62 -0
  996. package/packages/shared-skills/skills/browser/references/owned-engine/frames-and-humans.md +52 -0
  997. package/packages/shared-skills/skills/browser/references/owned-engine/ladder.md +61 -0
  998. package/packages/shared-skills/skills/browser/references/owned-engine/network.md +62 -0
  999. package/packages/shared-skills/skills/browser/references/recipes/1password.md +61 -0
  1000. package/packages/shared-skills/skills/browser/references/remote.md +25 -0
  1001. package/packages/shared-skills/skills/browser/runtime/omowright/index.js +1534 -0
  1002. package/packages/shared-skills/skills/browser/runtime/omowright/manifest.json +9 -0
  1003. package/packages/shared-skills/skills/browser/runtime/omowright/page-bundle.js +1395 -0
  1004. package/packages/shared-skills/skills/browser/scripts/browser-doctor.mjs +57 -0
  1005. package/packages/shared-skills/skills/browser/scripts/browser-install.mjs +50 -0
  1006. package/packages/shared-skills/skills/browser/scripts/omowright.mjs +25 -0
  1007. package/packages/shared-skills/skills/coding-agent-sessions/AGENTS.md +62 -0
  1008. package/packages/shared-skills/skills/coding-agent-sessions/SKILL.md +1 -1
  1009. package/packages/shared-skills/skills/data-scientist/SKILL.md +99 -239
  1010. package/packages/shared-skills/skills/data-scientist/references/execution-surfaces.md +91 -0
  1011. package/packages/shared-skills/skills/data-scientist/references/placement.md +74 -0
  1012. package/packages/shared-skills/skills/data-scientist/references/polars-lane.md +95 -0
  1013. package/packages/shared-skills/skills/data-scientist/references/uv-setup.md +1 -1
  1014. package/packages/shared-skills/skills/data-scientist/references/visualization.md +64 -0
  1015. package/packages/shared-skills/skills/data-scientist/scripts/ensure-js-deps.sh +28 -0
  1016. package/packages/shared-skills/skills/data-scientist/scripts/ensure-py-deps.sh +37 -0
  1017. package/packages/shared-skills/skills/debugging/SKILL.md +5 -3
  1018. package/packages/shared-skills/skills/debugging/references/methodology/00-setup.md +12 -0
  1019. package/packages/shared-skills/skills/debugging/references/methodology/02-investigate.md +26 -5
  1020. package/packages/shared-skills/skills/debugging/references/methodology/06-fix.md +3 -3
  1021. package/packages/shared-skills/skills/debugging/references/methodology/08-qa.md +1 -1
  1022. package/packages/shared-skills/skills/debugging/references/runtimes/go.md +15 -1
  1023. package/packages/shared-skills/skills/debugging/references/runtimes/native-binary.md +38 -0
  1024. package/packages/shared-skills/skills/debugging/references/runtimes/node.md +25 -0
  1025. package/packages/shared-skills/skills/debugging/references/runtimes/python.md +13 -0
  1026. package/packages/shared-skills/skills/debugging/references/runtimes/rust.md +41 -0
  1027. package/packages/shared-skills/skills/debugging/references/scripts/dap.mjs +267 -0
  1028. package/packages/shared-skills/skills/debugging/references/scripts/dap.test.ts +86 -0
  1029. package/packages/shared-skills/skills/debugging/references/scripts/fixture-adapter.mjs +59 -0
  1030. package/packages/shared-skills/skills/debugging/references/tools/browser-qa.md +104 -0
  1031. package/packages/shared-skills/skills/debugging/references/tools/dap.md +103 -0
  1032. package/packages/shared-skills/skills/debugging/references/tools/frida.md +193 -0
  1033. package/packages/shared-skills/skills/frontend/ATTRIBUTION.md +10 -0
  1034. package/packages/shared-skills/skills/frontend/SKILL.md +8 -3
  1035. package/packages/shared-skills/skills/frontend/references/design/README.md +13 -4
  1036. package/packages/shared-skills/skills/frontend/references/design/_INDEX.md +1 -0
  1037. package/packages/shared-skills/skills/frontend/references/design/ambience-skill.md +146 -0
  1038. package/packages/shared-skills/skills/frontend/references/design/aside.md +1 -1
  1039. package/packages/shared-skills/skills/frontend/references/design/clone-from-url.md +1 -1
  1040. package/packages/shared-skills/skills/frontend/references/design/design-system-architecture.md +30 -6
  1041. package/packages/shared-skills/skills/frontend/references/design/interaction-skill.md +19 -5
  1042. package/packages/shared-skills/skills/frontend/references/design/print-paged-media.md +76 -0
  1043. package/packages/shared-skills/skills/frontend/references/designpowers/README.md +1 -1
  1044. package/packages/shared-skills/skills/frontend/references/designpowers/lane-a-direction.md +1 -1
  1045. package/packages/shared-skills/skills/frontend/references/designpowers/lane-b-execution.md +11 -11
  1046. package/packages/shared-skills/skills/frontend/references/designpowers/lane-d-memory.md +3 -3
  1047. package/packages/shared-skills/skills/frontend/references/designpowers/orchestration.md +1 -1
  1048. package/packages/shared-skills/skills/frontend/references/designpowers/routing.md +5 -5
  1049. package/packages/shared-skills/skills/frontend/references/perfection/README.md +1 -0
  1050. package/packages/shared-skills/skills/frontend/scripts/perfection/lighthouse-audit.py +2 -2
  1051. package/packages/shared-skills/skills/git-master/SKILL.md +1 -1
  1052. package/packages/shared-skills/skills/init-deep/SKILL.md +14 -14
  1053. package/packages/shared-skills/skills/lsp-setup/SKILL.md +1 -1
  1054. package/packages/shared-skills/skills/programming/SKILL.md +12 -18
  1055. package/packages/shared-skills/skills/programming/references/rust/README.md +43 -15
  1056. package/packages/shared-skills/skills/programming/references/rust/api-design.md +81 -0
  1057. package/packages/shared-skills/skills/programming/references/rust/async-tokio.md +60 -28
  1058. package/packages/shared-skills/skills/programming/references/rust/axum-stack.md +1 -13
  1059. package/packages/shared-skills/skills/programming/references/rust/cargo-strict.md +44 -8
  1060. package/packages/shared-skills/skills/programming/references/rust/clap-stack.md +8 -3
  1061. package/packages/shared-skills/skills/programming/references/rust/concurrency.md +66 -52
  1062. package/packages/shared-skills/skills/programming/references/rust/libraries.md +35 -25
  1063. package/packages/shared-skills/skills/programming/references/rust/macros.md +63 -0
  1064. package/packages/shared-skills/skills/programming/references/rust/one-liners.md +5 -3
  1065. package/packages/shared-skills/skills/programming/references/rust/proptest-insta.md +8 -0
  1066. package/packages/shared-skills/skills/programming/references/rust/type-state.md +50 -12
  1067. package/packages/shared-skills/skills/programming/references/rust/unsafe-discipline.md +34 -6
  1068. package/packages/shared-skills/skills/programming/references/rust/zero-cost-safety.md +62 -52
  1069. package/packages/shared-skills/skills/programming/references/rust-ub/miri-sanitizers-loom.md +1 -1
  1070. package/packages/shared-skills/skills/programming/references/rust-ub/ub-taxonomy.md +6 -3
  1071. package/packages/shared-skills/skills/programming/scripts/rust/check-no-excuse-rules.sh +86 -75
  1072. package/packages/shared-skills/skills/programming/scripts/rust/check-no-excuse-rules.test.ts +83 -0
  1073. package/packages/shared-skills/skills/programming/scripts/rust/new-project.py +31 -28
  1074. package/packages/shared-skills/skills/refactor/SKILL.md +5 -5
  1075. package/packages/shared-skills/skills/remove-ai-slops/SKILL.md +5 -5
  1076. package/packages/shared-skills/skills/review-work/SKILL.md +101 -419
  1077. package/packages/shared-skills/skills/ultimate-browsing/ATTRIBUTION.md +1 -82
  1078. package/packages/shared-skills/skills/ultimate-browsing/SKILL.md +40 -28
  1079. package/packages/shared-skills/skills/ultimate-browsing/engine/AGENTS.md +2 -1
  1080. package/packages/shared-skills/skills/ultimate-browsing/engine/templates/package.json +2 -2
  1081. package/packages/shared-skills/skills/ultimate-browsing/engine/templates/playwright_mobile_chrome.js +5 -2
  1082. package/packages/shared-skills/skills/ultimate-browsing/engine/templates/playwright_real_chrome.js +8 -6
  1083. package/packages/shared-skills/skills/ultimate-browsing/engine/tests/test_playwright_stealth.py +86 -0
  1084. package/packages/shared-skills/skills/ultimate-browsing/engine/tests/test_playwright_templates.py +4 -7
  1085. package/packages/shared-skills/skills/ultimate-browsing/references/chrome-stealth.md +34 -111
  1086. package/packages/shared-skills/skills/ultimate-browsing/references/insane-search/README.md +14 -7
  1087. package/packages/shared-skills/skills/ultimate-browsing/references/insane-search/playwright.md +22 -36
  1088. package/packages/shared-skills/skills/ultimate-browsing/scripts/extract_cookies.py +3 -3
  1089. package/{dist/skills/start-work → packages/shared-skills/skills/ulw-execute}/SKILL.md +27 -25
  1090. package/packages/shared-skills/skills/ulw-plan/SKILL.md +10 -11
  1091. package/packages/shared-skills/skills/ulw-plan/references/full-workflow.md +18 -13
  1092. package/packages/shared-skills/skills/ulw-plan/references/intent-clear.md +5 -6
  1093. package/packages/shared-skills/skills/ulw-plan/references/intent-unclear.md +4 -4
  1094. package/packages/shared-skills/skills/ulw-plan/scripts/plan-templates.mjs +180 -0
  1095. package/packages/shared-skills/skills/ulw-plan/scripts/scaffold-plan.mjs +3 -153
  1096. package/packages/shared-skills/skills/ulw-research/AGENTS.md +63 -0
  1097. package/packages/shared-skills/skills/ulw-research/SKILL.md +47 -30
  1098. package/packages/shared-skills/skills/ulw-research/references/deliverable-phase.md +187 -0
  1099. package/packages/shared-skills/skills/ulw-research/references/report-gates.md +66 -0
  1100. package/packages/shared-skills/skills/ulw-research/scripts/cli-support.mjs +102 -0
  1101. package/packages/shared-skills/skills/ulw-research/scripts/cli-support.test.ts +88 -0
  1102. package/packages/shared-skills/skills/ulw-research/scripts/contracts.mjs +162 -0
  1103. package/packages/shared-skills/skills/ulw-research/scripts/contracts.test.ts +177 -0
  1104. package/packages/shared-skills/skills/ulw-research/scripts/css-lite.mjs +204 -0
  1105. package/packages/shared-skills/skills/ulw-research/scripts/css-lite.test.ts +159 -0
  1106. package/packages/shared-skills/skills/ulw-research/scripts/design-spec.mjs +161 -0
  1107. package/packages/shared-skills/skills/ulw-research/scripts/design-spec.test.ts +162 -0
  1108. package/packages/shared-skills/skills/ulw-research/scripts/entities.mjs +39 -0
  1109. package/packages/shared-skills/skills/ulw-research/scripts/entry-guard.mjs +21 -0
  1110. package/packages/shared-skills/skills/ulw-research/scripts/format-extract-css.mjs +122 -0
  1111. package/packages/shared-skills/skills/ulw-research/scripts/format-extract.mjs +229 -0
  1112. package/packages/shared-skills/skills/ulw-research/scripts/format-extract.test.ts +243 -0
  1113. package/packages/shared-skills/skills/ulw-research/scripts/gates-figures.mjs +173 -0
  1114. package/packages/shared-skills/skills/ulw-research/scripts/gates-layout.mjs +146 -0
  1115. package/packages/shared-skills/skills/ulw-research/scripts/gates-layout.test.ts +236 -0
  1116. package/packages/shared-skills/skills/ulw-research/scripts/gates-static.mjs +167 -0
  1117. package/packages/shared-skills/skills/ulw-research/scripts/gates-static.test.ts +265 -0
  1118. package/packages/shared-skills/skills/ulw-research/scripts/gates-structure.mjs +118 -0
  1119. package/packages/shared-skills/skills/ulw-research/scripts/gates-text.mjs +190 -0
  1120. package/packages/shared-skills/skills/ulw-research/scripts/glossary-vocabulary.test.ts +43 -0
  1121. package/packages/shared-skills/skills/ulw-research/scripts/html-lite.mjs +239 -0
  1122. package/packages/shared-skills/skills/ulw-research/scripts/html-lite.test.ts +191 -0
  1123. package/packages/shared-skills/skills/ulw-research/scripts/layout-probe.mjs +83 -0
  1124. package/packages/shared-skills/skills/ulw-research/scripts/layout-probe.test.ts +89 -0
  1125. package/packages/shared-skills/skills/ulw-research/scripts/outcome.mjs +250 -0
  1126. package/packages/shared-skills/skills/ulw-research/scripts/outcome.test.ts +281 -0
  1127. package/packages/shared-skills/skills/ulw-research/scripts/repair-tracker.mjs +171 -0
  1128. package/packages/shared-skills/skills/ulw-research/scripts/repair-tracker.test.ts +246 -0
  1129. package/packages/shared-skills/skills/ulw-research/scripts/report-tools-commands.mjs +214 -0
  1130. package/packages/shared-skills/skills/ulw-research/scripts/report-tools.mjs +61 -0
  1131. package/packages/shared-skills/skills/ulw-research/scripts/report-tools.test.ts +213 -0
  1132. package/packages/shared-skills/skills/ulw-research/scripts/tests/fixtures/assets/figure-1.svg +1 -0
  1133. package/packages/shared-skills/skills/ulw-research/scripts/tests/fixtures/bad-report.html +44 -0
  1134. package/packages/shared-skills/skills/ulw-research/scripts/tests/fixtures/boxes.json +90 -0
  1135. package/packages/shared-skills/skills/ulw-research/scripts/tests/fixtures/design-spec.md +29 -0
  1136. package/packages/shared-skills/skills/ulw-research/scripts/tests/fixtures/good-report.html +57 -0
  1137. package/packages/shared-skills/skills/ulw-research/scripts/tests/fixtures/reference-report.html +86 -0
  1138. package/packages/shared-skills/skills/ulw-research/scripts/tests/fixtures/reference.md +23 -0
  1139. package/packages/shared-skills/skills/visual-qa/AGENTS.md +58 -0
  1140. package/packages/shared-skills/skills/visual-qa/SKILL.md +4 -3
  1141. package/packages/shared-skills/skills/visual-qa/references/browser-setup.md +77 -0
  1142. package/postinstall.mjs +5 -0
  1143. package/script/qa/web-terminal-visual-qa.mjs +2 -0
  1144. package/script/qa/xterm-live-terminal.mjs +18 -2
  1145. package/.agents/skills/work-with-pr-workspace/evals/evals.json +0 -76
  1146. package/.agents/skills/work-with-pr-workspace/iteration-1/benchmark.json +0 -138
  1147. package/.agents/skills/work-with-pr-workspace/iteration-1/benchmark.md +0 -42
  1148. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-1/eval_metadata.json +0 -57
  1149. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-1/with_skill/grading.json +0 -15
  1150. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-1/with_skill/outputs/code-changes.md +0 -454
  1151. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-1/with_skill/outputs/execution-plan.md +0 -136
  1152. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-1/with_skill/outputs/pr-description.md +0 -47
  1153. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-1/with_skill/outputs/verification-strategy.md +0 -163
  1154. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-1/with_skill/timing.json +0 -1
  1155. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-1/without_skill/grading.json +0 -15
  1156. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-1/without_skill/outputs/code-changes.md +0 -615
  1157. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-1/without_skill/outputs/execution-plan.md +0 -99
  1158. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-1/without_skill/outputs/pr-description.md +0 -50
  1159. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-1/without_skill/outputs/verification-strategy.md +0 -111
  1160. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-1/without_skill/timing.json +0 -1
  1161. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-2/eval_metadata.json +0 -37
  1162. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-2/with_skill/grading.json +0 -11
  1163. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-2/with_skill/outputs/code-changes.md +0 -205
  1164. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-2/with_skill/outputs/execution-plan.md +0 -78
  1165. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-2/with_skill/outputs/pr-description.md +0 -42
  1166. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-2/with_skill/outputs/verification-strategy.md +0 -87
  1167. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-2/with_skill/timing.json +0 -1
  1168. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-2/without_skill/grading.json +0 -11
  1169. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-2/without_skill/outputs/code-changes.md +0 -334
  1170. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-2/without_skill/outputs/execution-plan.md +0 -86
  1171. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-2/without_skill/outputs/pr-description.md +0 -23
  1172. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-2/without_skill/outputs/verification-strategy.md +0 -119
  1173. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-2/without_skill/timing.json +0 -1
  1174. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-3/eval_metadata.json +0 -32
  1175. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-3/with_skill/grading.json +0 -10
  1176. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-3/with_skill/outputs/code-changes.md +0 -221
  1177. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-3/with_skill/outputs/execution-plan.md +0 -104
  1178. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-3/with_skill/outputs/pr-description.md +0 -41
  1179. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-3/with_skill/outputs/verification-strategy.md +0 -84
  1180. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-3/with_skill/timing.json +0 -1
  1181. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-3/without_skill/grading.json +0 -10
  1182. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-3/without_skill/outputs/code-changes.md +0 -342
  1183. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-3/without_skill/outputs/execution-plan.md +0 -131
  1184. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-3/without_skill/outputs/pr-description.md +0 -39
  1185. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-3/without_skill/outputs/verification-strategy.md +0 -128
  1186. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-3/without_skill/timing.json +0 -1
  1187. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-4/eval_metadata.json +0 -32
  1188. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-4/with_skill/grading.json +0 -10
  1189. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-4/with_skill/outputs/code-changes.md +0 -143
  1190. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-4/with_skill/outputs/execution-plan.md +0 -82
  1191. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-4/with_skill/outputs/pr-description.md +0 -51
  1192. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-4/with_skill/outputs/verification-strategy.md +0 -69
  1193. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-4/with_skill/timing.json +0 -1
  1194. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-4/without_skill/grading.json +0 -10
  1195. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-4/without_skill/outputs/code-changes.md +0 -252
  1196. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-4/without_skill/outputs/execution-plan.md +0 -83
  1197. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-4/without_skill/outputs/pr-description.md +0 -33
  1198. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-4/without_skill/outputs/verification-strategy.md +0 -101
  1199. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-4/without_skill/timing.json +0 -1
  1200. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-5/eval_metadata.json +0 -32
  1201. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-5/with_skill/grading.json +0 -10
  1202. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-5/with_skill/outputs/code-changes.md +0 -387
  1203. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-5/with_skill/outputs/execution-plan.md +0 -112
  1204. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-5/with_skill/outputs/pr-description.md +0 -51
  1205. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-5/with_skill/outputs/verification-strategy.md +0 -75
  1206. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-5/with_skill/timing.json +0 -1
  1207. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-5/without_skill/grading.json +0 -10
  1208. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-5/without_skill/outputs/code-changes.md +0 -529
  1209. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-5/without_skill/outputs/execution-plan.md +0 -127
  1210. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-5/without_skill/outputs/pr-description.md +0 -42
  1211. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-5/without_skill/outputs/verification-strategy.md +0 -120
  1212. package/.agents/skills/work-with-pr-workspace/iteration-1/eval-5/without_skill/timing.json +0 -1
  1213. package/.agents/skills/work-with-pr-workspace/iteration-1/review.html +0 -1326
  1214. package/.opencode/skills/work-with-pr-workspace/evals/evals.json +0 -76
  1215. package/.opencode/skills/work-with-pr-workspace/iteration-1/benchmark.json +0 -138
  1216. package/.opencode/skills/work-with-pr-workspace/iteration-1/benchmark.md +0 -42
  1217. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-1/eval_metadata.json +0 -57
  1218. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-1/with_skill/grading.json +0 -15
  1219. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-1/with_skill/outputs/code-changes.md +0 -454
  1220. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-1/with_skill/outputs/execution-plan.md +0 -136
  1221. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-1/with_skill/outputs/pr-description.md +0 -47
  1222. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-1/with_skill/outputs/verification-strategy.md +0 -163
  1223. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-1/with_skill/timing.json +0 -1
  1224. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-1/without_skill/grading.json +0 -15
  1225. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-1/without_skill/outputs/code-changes.md +0 -615
  1226. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-1/without_skill/outputs/execution-plan.md +0 -99
  1227. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-1/without_skill/outputs/pr-description.md +0 -50
  1228. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-1/without_skill/outputs/verification-strategy.md +0 -111
  1229. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-1/without_skill/timing.json +0 -1
  1230. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-2/eval_metadata.json +0 -37
  1231. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-2/with_skill/grading.json +0 -11
  1232. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-2/with_skill/outputs/code-changes.md +0 -205
  1233. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-2/with_skill/outputs/execution-plan.md +0 -78
  1234. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-2/with_skill/outputs/pr-description.md +0 -42
  1235. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-2/with_skill/outputs/verification-strategy.md +0 -87
  1236. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-2/with_skill/timing.json +0 -1
  1237. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-2/without_skill/grading.json +0 -11
  1238. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-2/without_skill/outputs/code-changes.md +0 -334
  1239. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-2/without_skill/outputs/execution-plan.md +0 -86
  1240. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-2/without_skill/outputs/pr-description.md +0 -23
  1241. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-2/without_skill/outputs/verification-strategy.md +0 -119
  1242. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-2/without_skill/timing.json +0 -1
  1243. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-3/eval_metadata.json +0 -32
  1244. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-3/with_skill/grading.json +0 -10
  1245. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-3/with_skill/outputs/code-changes.md +0 -221
  1246. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-3/with_skill/outputs/execution-plan.md +0 -104
  1247. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-3/with_skill/outputs/pr-description.md +0 -41
  1248. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-3/with_skill/outputs/verification-strategy.md +0 -84
  1249. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-3/with_skill/timing.json +0 -1
  1250. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-3/without_skill/grading.json +0 -10
  1251. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-3/without_skill/outputs/code-changes.md +0 -342
  1252. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-3/without_skill/outputs/execution-plan.md +0 -131
  1253. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-3/without_skill/outputs/pr-description.md +0 -39
  1254. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-3/without_skill/outputs/verification-strategy.md +0 -128
  1255. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-3/without_skill/timing.json +0 -1
  1256. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-4/eval_metadata.json +0 -32
  1257. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-4/with_skill/grading.json +0 -10
  1258. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-4/with_skill/outputs/code-changes.md +0 -143
  1259. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-4/with_skill/outputs/execution-plan.md +0 -82
  1260. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-4/with_skill/outputs/pr-description.md +0 -51
  1261. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-4/with_skill/outputs/verification-strategy.md +0 -69
  1262. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-4/with_skill/timing.json +0 -1
  1263. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-4/without_skill/grading.json +0 -10
  1264. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-4/without_skill/outputs/code-changes.md +0 -252
  1265. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-4/without_skill/outputs/execution-plan.md +0 -83
  1266. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-4/without_skill/outputs/pr-description.md +0 -33
  1267. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-4/without_skill/outputs/verification-strategy.md +0 -101
  1268. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-4/without_skill/timing.json +0 -1
  1269. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-5/eval_metadata.json +0 -32
  1270. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-5/with_skill/grading.json +0 -10
  1271. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-5/with_skill/outputs/code-changes.md +0 -387
  1272. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-5/with_skill/outputs/execution-plan.md +0 -112
  1273. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-5/with_skill/outputs/pr-description.md +0 -51
  1274. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-5/with_skill/outputs/verification-strategy.md +0 -75
  1275. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-5/with_skill/timing.json +0 -1
  1276. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-5/without_skill/grading.json +0 -10
  1277. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-5/without_skill/outputs/code-changes.md +0 -529
  1278. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-5/without_skill/outputs/execution-plan.md +0 -127
  1279. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-5/without_skill/outputs/pr-description.md +0 -42
  1280. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-5/without_skill/outputs/verification-strategy.md +0 -120
  1281. package/.opencode/skills/work-with-pr-workspace/iteration-1/eval-5/without_skill/timing.json +0 -1
  1282. package/.opencode/skills/work-with-pr-workspace/iteration-1/review.html +0 -1326
  1283. package/dist/cli/install-senpi/index.d.ts +0 -1
  1284. package/dist/cli/senpi-platform-flag.d.ts +0 -4
  1285. package/dist/config/schema/codegraph.d.ts +0 -12
  1286. package/dist/config/schema/start-work.d.ts +0 -5
  1287. package/dist/features/builtin-commands/templates/start-work.d.ts +0 -1
  1288. package/dist/features/builtin-skills/index.d.ts +0 -1
  1289. package/dist/features/builtin-skills/skill-file-loader.d.ts +0 -1
  1290. package/dist/features/builtin-skills/skills/agent-browser-skill.d.ts +0 -1
  1291. package/dist/features/builtin-skills/skills/agent-browser-template.d.ts +0 -1
  1292. package/dist/features/builtin-skills/skills/debugging.d.ts +0 -1
  1293. package/dist/features/builtin-skills/skills/dev-browser.d.ts +0 -1
  1294. package/dist/features/builtin-skills/skills/frontend.d.ts +0 -1
  1295. package/dist/features/builtin-skills/skills/git-master-sections/commit-atomic-planning.d.ts +0 -1
  1296. package/dist/features/builtin-skills/skills/git-master-sections/commit-context-analysis.d.ts +0 -1
  1297. package/dist/features/builtin-skills/skills/git-master-sections/commit-execution-verification.d.ts +0 -1
  1298. package/dist/features/builtin-skills/skills/git-master-sections/commit-workflow.d.ts +0 -1
  1299. package/dist/features/builtin-skills/skills/git-master-sections/history-search-workflow.d.ts +0 -1
  1300. package/dist/features/builtin-skills/skills/git-master-sections/overview.d.ts +0 -1
  1301. package/dist/features/builtin-skills/skills/git-master-sections/quick-reference.d.ts +0 -1
  1302. package/dist/features/builtin-skills/skills/git-master-sections/rebase-workflow.d.ts +0 -1
  1303. package/dist/features/builtin-skills/skills/git-master-skill-metadata.d.ts +0 -1
  1304. package/dist/features/builtin-skills/skills/git-master.d.ts +0 -1
  1305. package/dist/features/builtin-skills/skills/index.d.ts +0 -1
  1306. package/dist/features/builtin-skills/skills/init-deep.d.ts +0 -1
  1307. package/dist/features/builtin-skills/skills/playwright-cli.d.ts +0 -1
  1308. package/dist/features/builtin-skills/skills/playwright-mcp-skill.d.ts +0 -1
  1309. package/dist/features/builtin-skills/skills/playwright.d.ts +0 -1
  1310. package/dist/features/builtin-skills/skills/remove-ai-slops.d.ts +0 -1
  1311. package/dist/features/builtin-skills/skills/review-work.d.ts +0 -1
  1312. package/dist/features/builtin-skills/skills/security-research.d.ts +0 -1
  1313. package/dist/features/builtin-skills/skills/security-review.d.ts +0 -1
  1314. package/dist/features/builtin-skills/skills/team-mode.d.ts +0 -1
  1315. package/dist/features/builtin-skills/skills/visual-qa.d.ts +0 -1
  1316. package/dist/features/builtin-skills/skills.d.ts +0 -1
  1317. package/dist/features/builtin-skills/types.d.ts +0 -1
  1318. package/dist/features/claude-code-plugin-loader/agent-loader.d.ts +0 -1
  1319. package/dist/features/claude-code-plugin-loader/command-loader.d.ts +0 -1
  1320. package/dist/features/claude-code-plugin-loader/discovery-core.d.ts +0 -1
  1321. package/dist/features/claude-code-plugin-loader/discovery-paths.d.ts +0 -1
  1322. package/dist/features/claude-code-plugin-loader/discovery.d.ts +0 -1
  1323. package/dist/features/claude-code-plugin-loader/hook-loader.d.ts +0 -1
  1324. package/dist/features/claude-code-plugin-loader/index.d.ts +0 -1
  1325. package/dist/features/claude-code-plugin-loader/install-path-resolver.d.ts +0 -1
  1326. package/dist/features/claude-code-plugin-loader/installed-plugin-database.d.ts +0 -1
  1327. package/dist/features/claude-code-plugin-loader/loaded-plugin.d.ts +0 -1
  1328. package/dist/features/claude-code-plugin-loader/loader.d.ts +0 -1
  1329. package/dist/features/claude-code-plugin-loader/mcp-server-loader.d.ts +0 -1
  1330. package/dist/features/claude-code-plugin-loader/plugin-key.d.ts +0 -1
  1331. package/dist/features/claude-code-plugin-loader/plugin-manifest.d.ts +0 -1
  1332. package/dist/features/claude-code-plugin-loader/plugin-path-resolver.d.ts +0 -1
  1333. package/dist/features/claude-code-plugin-loader/plugin-settings.d.ts +0 -1
  1334. package/dist/features/claude-code-plugin-loader/scope-filter.d.ts +0 -1
  1335. package/dist/features/claude-code-plugin-loader/skill-loader.d.ts +0 -1
  1336. package/dist/features/claude-code-plugin-loader/types.d.ts +0 -1
  1337. package/dist/hooks/codegraph-bootstrap/command-runner.d.ts +0 -17
  1338. package/dist/hooks/codegraph-bootstrap/hook.d.ts +0 -35
  1339. package/dist/hooks/codegraph-bootstrap/index.d.ts +0 -1
  1340. package/dist/hooks/codegraph-bootstrap/project-root.d.ts +0 -1
  1341. package/dist/hooks/codegraph-bootstrap/status.d.ts +0 -11
  1342. package/dist/hooks/ralph-loop/completion-promise-detector-test-input.d.ts +0 -11
  1343. package/dist/hooks/ralph-loop/loop-session-recovery.d.ts +0 -7
  1344. package/dist/hooks/start-work/start-work-hook.d.ts +0 -23
  1345. package/dist/mcp/codegraph.d.ts +0 -16
  1346. package/dist/plugin/chat-message/start-work-message.d.ts +0 -5
  1347. package/dist/shared/prompt-async-gate/message-inspection-error.d.ts +0 -1
  1348. package/dist/shared/prompt-async-gate/pending-tool-turn.d.ts +0 -1
  1349. package/dist/shared/prompt-async-gate/prompt-message-state.d.ts +0 -1
  1350. package/dist/shared/prompt-async-gate/queue.d.ts +0 -1
  1351. package/dist/shared/prompt-async-gate/recent-dispatches.d.ts +0 -1
  1352. package/dist/shared/prompt-async-gate/reservations.d.ts +0 -1
  1353. package/dist/shared/prompt-async-gate/semantic-dedupe.d.ts +0 -1
  1354. package/dist/shared/prompt-async-gate/session-idle-dispatch.d.ts +0 -1
  1355. package/dist/shared/prompt-async-gate/timing.d.ts +0 -1
  1356. package/dist/shared/prompt-async-gate/types.d.ts +0 -1
  1357. package/dist/skills/data-scientist/references/common-scenarios.md +0 -176
  1358. package/dist/skills/data-scientist/references/execution-templates.md +0 -197
  1359. package/dist/skills/data-scientist/references/integration-patterns.md +0 -153
  1360. package/dist/skills/data-scientist/references/performance-benchmarks.md +0 -37
  1361. package/dist/skills/debugging/references/tools/playwright-cli.md +0 -194
  1362. package/dist/skills/programming/scripts/rust/check-no-excuse-rules.py +0 -296
  1363. package/dist/skills/visual-qa/references/agent-browser-setup.md +0 -45
  1364. package/dist/tools/call-omo-agent/message-storage-directory.d.ts +0 -1
  1365. package/dist/tools/delegate-task/anthropic-categories.d.ts +0 -2
  1366. package/dist/tools/delegate-task/model-string-parser.d.ts +0 -1
  1367. package/packages/lsp-tools-mcp/dist/lsp/cleanup-errors.d.ts +0 -1
  1368. package/packages/lsp-tools-mcp/dist/lsp/constants.d.ts +0 -1
  1369. package/packages/lsp-tools-mcp/dist/lsp/language-mappings.d.ts +0 -1
  1370. package/packages/lsp-tools-mcp/dist/lsp/process-signal-cleanup.d.ts +0 -1
  1371. package/packages/lsp-tools-mcp/dist/missing-dependency-result.d.ts +0 -1
  1372. package/packages/omo-codex/plugin/components/codegraph/AGENTS.md +0 -58
  1373. package/packages/omo-codex/plugin/components/codegraph/NODE-RUNTIME-LICENSES.md +0 -2951
  1374. package/packages/omo-codex/plugin/components/codegraph/NOTICE +0 -16
  1375. package/packages/omo-codex/plugin/components/codegraph/dist/cli.js +0 -12244
  1376. package/packages/omo-codex/plugin/components/codegraph/dist/serve.js +0 -9842
  1377. package/packages/omo-codex/plugin/components/codegraph/package.json +0 -33
  1378. package/packages/omo-codex/plugin/components/codegraph/src/cache-gc.ts +0 -29
  1379. package/packages/omo-codex/plugin/components/codegraph/src/cli.ts +0 -79
  1380. package/packages/omo-codex/plugin/components/codegraph/src/hook-input.ts +0 -33
  1381. package/packages/omo-codex/plugin/components/codegraph/src/hook-sweep.ts +0 -25
  1382. package/packages/omo-codex/plugin/components/codegraph/src/hook-types.ts +0 -131
  1383. package/packages/omo-codex/plugin/components/codegraph/src/hook.ts +0 -258
  1384. package/packages/omo-codex/plugin/components/codegraph/src/mcp-bridge.ts +0 -309
  1385. package/packages/omo-codex/plugin/components/codegraph/src/mcp-unavailable.ts +0 -80
  1386. package/packages/omo-codex/plugin/components/codegraph/src/post-tool-use-hook.ts +0 -34
  1387. package/packages/omo-codex/plugin/components/codegraph/src/serve-invocation.ts +0 -29
  1388. package/packages/omo-codex/plugin/components/codegraph/src/serve.ts +0 -263
  1389. package/packages/omo-codex/plugin/components/codegraph/src/session-start-command.ts +0 -106
  1390. package/packages/omo-codex/plugin/components/codegraph/src/session-start-cooldown.ts +0 -145
  1391. package/packages/omo-codex/plugin/components/codegraph/src/session-start-hook-runtime.ts +0 -21
  1392. package/packages/omo-codex/plugin/components/codegraph/src/session-start-lock.ts +0 -139
  1393. package/packages/omo-codex/plugin/components/codegraph/src/session-start-outcome.ts +0 -15
  1394. package/packages/omo-codex/plugin/components/codegraph/src/session-start-paths.ts +0 -32
  1395. package/packages/omo-codex/plugin/components/codegraph/src/session-start-project.ts +0 -109
  1396. package/packages/omo-codex/plugin/components/codegraph/src/session-start-worker-result.ts +0 -148
  1397. package/packages/omo-codex/plugin/components/codegraph/src/session-start-worker.ts +0 -175
  1398. package/packages/omo-codex/plugin/components/codegraph/src/sweep-cli.ts +0 -81
  1399. package/packages/omo-codex/plugin/components/codegraph/test/cache-gc.test.ts +0 -34
  1400. package/packages/omo-codex/plugin/components/codegraph/test/hook-exclusion.test.ts +0 -112
  1401. package/packages/omo-codex/plugin/components/codegraph/test/hook-registration.test.ts +0 -26
  1402. package/packages/omo-codex/plugin/components/codegraph/test/hook-session-start-guard.test.ts +0 -160
  1403. package/packages/omo-codex/plugin/components/codegraph/test/hook-store-upgrade.test.ts +0 -50
  1404. package/packages/omo-codex/plugin/components/codegraph/test/hook-sweep.test.ts +0 -29
  1405. package/packages/omo-codex/plugin/components/codegraph/test/hook.test.ts +0 -320
  1406. package/packages/omo-codex/plugin/components/codegraph/test/mcp-bridge-fixtures.ts +0 -172
  1407. package/packages/omo-codex/plugin/components/codegraph/test/package-runtime.test.ts +0 -91
  1408. package/packages/omo-codex/plugin/components/codegraph/test/provisioned-node-guard.test.ts +0 -100
  1409. package/packages/omo-codex/plugin/components/codegraph/test/serve-built-wrapper.test.ts +0 -76
  1410. package/packages/omo-codex/plugin/components/codegraph/test/serve-mcp-bridge-lifecycle.test.ts +0 -133
  1411. package/packages/omo-codex/plugin/components/codegraph/test/serve-mcp-bridge.test.ts +0 -245
  1412. package/packages/omo-codex/plugin/components/codegraph/test/serve-mcp-facade.test.ts +0 -69
  1413. package/packages/omo-codex/plugin/components/codegraph/test/serve-node-support.test.ts +0 -43
  1414. package/packages/omo-codex/plugin/components/codegraph/test/serve-provision.test.ts +0 -147
  1415. package/packages/omo-codex/plugin/components/codegraph/test/serve-unavailable.test.ts +0 -175
  1416. package/packages/omo-codex/plugin/components/codegraph/test/serve.test.ts +0 -385
  1417. package/packages/omo-codex/plugin/components/codegraph/test/session-start-node-support.test.ts +0 -206
  1418. package/packages/omo-codex/plugin/components/codegraph/test/session-start-project.test.ts +0 -58
  1419. package/packages/omo-codex/plugin/components/codegraph/test/session-start-state.test.ts +0 -104
  1420. package/packages/omo-codex/plugin/components/codegraph/test/session-start-trust-boundary.test.ts +0 -65
  1421. package/packages/omo-codex/plugin/components/codegraph/test/session-start-worker-availability.test.ts +0 -106
  1422. package/packages/omo-codex/plugin/components/codegraph/test/session-start-worker-cooldown.test.ts +0 -116
  1423. package/packages/omo-codex/plugin/components/codegraph/test/session-start-worker-flow.test.ts +0 -258
  1424. package/packages/omo-codex/plugin/components/codegraph/test/sweep-cli.test.ts +0 -56
  1425. package/packages/omo-codex/plugin/components/codegraph/tsconfig.build.json +0 -13
  1426. package/packages/omo-codex/plugin/components/codegraph/tsconfig.json +0 -25
  1427. package/packages/omo-codex/plugin/components/start-work-continuation/LICENSE +0 -21
  1428. package/packages/omo-codex/plugin/components/start-work-continuation/hooks/hooks.json +0 -28
  1429. package/packages/omo-codex/plugin/components/ultrawork/skills/ultrawork/SKILL.md +0 -484
  1430. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-codegraph-init-guidance.json +0 -18
  1431. package/packages/omo-codex/plugin/hooks/session-start-checking-codegraph-bootstrap.json +0 -17
  1432. package/packages/omo-codex/plugin/hooks/stop-checking-start-work-continuation.json +0 -17
  1433. package/packages/omo-codex/plugin/hooks/subagent-stop-checking-start-work-continuation.json +0 -17
  1434. package/packages/omo-codex/plugin/scripts/migrate-omo-sot/editor.mjs +0 -125
  1435. package/packages/omo-codex/plugin/scripts/migrate-omo-sot/jsonc.mjs +0 -43
  1436. package/packages/omo-codex/plugin/scripts/migrate-omo-sot/scaffold.mjs +0 -29
  1437. package/packages/omo-codex/plugin/scripts/migrate-omo-sot.mjs +0 -121
  1438. package/packages/omo-codex/plugin/skills/data-scientist/references/common-scenarios.md +0 -176
  1439. package/packages/omo-codex/plugin/skills/data-scientist/references/execution-templates.md +0 -197
  1440. package/packages/omo-codex/plugin/skills/data-scientist/references/integration-patterns.md +0 -153
  1441. package/packages/omo-codex/plugin/skills/data-scientist/references/performance-benchmarks.md +0 -37
  1442. package/packages/omo-codex/plugin/skills/debugging/references/tools/playwright-cli.md +0 -194
  1443. package/packages/omo-codex/plugin/skills/programming/scripts/rust/check-no-excuse-rules.py +0 -296
  1444. package/packages/omo-codex/plugin/skills/start-work/agents/openai.yaml +0 -2
  1445. package/packages/omo-codex/plugin/skills/visual-qa/references/agent-browser-setup.md +0 -45
  1446. package/packages/omo-codex/plugin/test/component-codegraph-mcp-smoke.test.mjs +0 -76
  1447. package/packages/omo-codex/plugin/test/migrate-omo-sot.test.mjs +0 -179
  1448. package/packages/shared-skills/skills/data-scientist/references/common-scenarios.md +0 -176
  1449. package/packages/shared-skills/skills/data-scientist/references/execution-templates.md +0 -197
  1450. package/packages/shared-skills/skills/data-scientist/references/integration-patterns.md +0 -153
  1451. package/packages/shared-skills/skills/data-scientist/references/performance-benchmarks.md +0 -37
  1452. package/packages/shared-skills/skills/debugging/references/tools/playwright-cli.md +0 -194
  1453. package/packages/shared-skills/skills/programming/scripts/rust/check-no-excuse-rules.py +0 -296
  1454. package/packages/shared-skills/skills/visual-qa/references/agent-browser-setup.md +0 -45
  1455. /package/dist/hooks/{start-work → ulw-execute}/context-info-formatters.d.ts +0 -0
  1456. /package/dist/hooks/{start-work → ulw-execute}/explicit-plan-context.d.ts +0 -0
  1457. /package/dist/hooks/{start-work → ulw-execute}/notepad-scaffold.d.ts +0 -0
  1458. /package/dist/hooks/{start-work → ulw-execute}/parse-user-request.d.ts +0 -0
  1459. /package/dist/hooks/{start-work → ulw-execute}/plan-discovery-context.d.ts +0 -0
  1460. /package/dist/hooks/{start-work → ulw-execute}/plan-selection.d.ts +0 -0
  1461. /package/dist/hooks/{start-work → ulw-execute}/session-plan-affinity.d.ts +0 -0
  1462. /package/dist/hooks/{start-work → ulw-execute}/work-initializer.d.ts +0 -0
  1463. /package/dist/hooks/{start-work → ulw-execute}/worktree-block.d.ts +0 -0
  1464. /package/dist/hooks/{start-work → ulw-execute}/worktree-detector.d.ts +0 -0
  1465. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/.gitattributes +0 -0
  1466. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/CHANGELOG.md +0 -0
  1467. /package/packages/omo-codex/plugin/components/{codegraph → ulw-execute-continuation}/LICENSE +0 -0
  1468. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/plan-checklist.ts +0 -0
  1469. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/boulder-completed.json +0 -0
  1470. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/boulder-mixed-platforms.json +0 -0
  1471. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/boulder-single-codex-work.json +0 -0
  1472. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/plan-all-done.md +0 -0
  1473. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/plan-scaffold.md +0 -0
  1474. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/plan-with-nested-checkboxes.md +0 -0
  1475. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/plan-with-unchecked.md +0 -0
  1476. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/tsconfig.build.json +0 -0
  1477. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/tsconfig.json +0 -0
  1478. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/vitest.config.ts +0 -0
@@ -75,7 +75,7 @@ test("#given no root model #when generated bundle updates config #then it does n
75
75
  // then
76
76
  const config = await readFile(configPath, "utf8");
77
77
  assert.doesNotMatch(config, /^\s*max_threads\s*=/m);
78
- assert.match(config, /max_concurrent_threads_per_session = 16/);
78
+ assert.doesNotMatch(config, /max_concurrent_threads_per_session\s*=/);
79
79
  });
80
80
 
81
81
  test("#given an inline-commented V2 thread cap #when generated bundle updates config twice #then preserves the line and ordering byte-for-byte", async () => {
@@ -150,8 +150,7 @@ test("#given explicit v1 model_catalog_json and stale models_cache v2 #when gene
150
150
  const config = await readFile(configPath, "utf8");
151
151
  const v2Section = sectionText(config, "[features.multi_agent_v2]");
152
152
  assert.match(v2Section, /^enabled = false$/m);
153
- assert.match(config, /\[agents\][\s\S]*?max_threads = 1000/);
154
- assert.doesNotMatch(config, /max_threads = 16/);
153
+ assert.match(config, /^\s*max_threads\s*=\s*16$/m);
155
154
  });
156
155
 
157
156
  test("#given explicit v2 model_catalog_json and stale models_cache v1 #when generated bundle updates config #then explicit catalog clears managed disable and cap", async () => {
@@ -190,7 +189,7 @@ test("#given explicit v2 model_catalog_json and stale models_cache v1 #when gene
190
189
  const v2Section = sectionText(config, "[features.multi_agent_v2]");
191
190
  assert.doesNotMatch(v2Section, /^enabled\s*=/m);
192
191
  assert.doesNotMatch(config, /^\s*max_threads\s*=/m);
193
- assert.match(v2Section, /max_concurrent_threads_per_session = 16/);
192
+ assert.doesNotMatch(v2Section, /max_concurrent_threads_per_session\s*=/);
194
193
  });
195
194
 
196
195
  function sectionText(config, header) {
@@ -62,30 +62,6 @@ test("#given a non-Windows install #when stamping #then the manifest stays byte-
62
62
  assert.equal(await readFile(join(pluginRoot, ".mcp.json"), "utf8"), MANIFEST);
63
63
  });
64
64
 
65
- test("#given a package-relative CodeGraph MCP path #when stamping on non-Windows #then codegraph server arg becomes absolute", async (t) => {
66
- const pluginRoot = await mkdtemp(join(tmpdir(), "git-bash-mcp-env-"));
67
- t.after(() => rm(pluginRoot, { recursive: true, force: true }));
68
- await writeFile(
69
- join(pluginRoot, ".mcp.json"),
70
- `${JSON.stringify(
71
- {
72
- mcpServers: {
73
- codegraph: { args: ["components/codegraph/dist/serve.js"], command: "node" },
74
- git_bash: { command: "node", args: ["../../git-bash-mcp/dist/cli.js", "mcp"] },
75
- },
76
- },
77
- null,
78
- "\t",
79
- )}\n`,
80
- );
81
-
82
- const changed = await stampGitBashMcpEnv({ pluginRoot, env: {}, platform: "darwin" });
83
-
84
- assert.equal(changed, true);
85
- const parsed = JSON.parse(await readFile(join(pluginRoot, ".mcp.json"), "utf8"));
86
- assert.deepEqual(parsed.mcpServers.codegraph.args, [join(pluginRoot, "components", "codegraph", "dist", "serve.js")]);
87
- });
88
-
89
65
  test("#given the override already stamped #when stamping again #then nothing changes", async (t) => {
90
66
  const pluginRoot = await createPluginRoot();
91
67
  t.after(() => rm(pluginRoot, { recursive: true, force: true }));
@@ -102,7 +78,7 @@ test("#given the override already stamped #when stamping again #then nothing cha
102
78
  test("#given a manifest without a git_bash server #when stamping #then the manifest stays byte-identical", async (t) => {
103
79
  const pluginRoot = await mkdtemp(join(tmpdir(), "git-bash-mcp-env-"));
104
80
  t.after(() => rm(pluginRoot, { recursive: true, force: true }));
105
- const manifest = `${JSON.stringify({ mcpServers: { codegraph: { command: "node" } } }, null, "\t")}\n`;
81
+ const manifest = `${JSON.stringify({ mcpServers: { lsp: { command: "node" } } }, null, "\t")}\n`;
106
82
  await writeFile(join(pluginRoot, ".mcp.json"), manifest);
107
83
 
108
84
  const changed = await stampGitBashMcpEnv({
@@ -104,42 +104,6 @@ test("#given plugin-local MCP runtime #when installing cached plugin #then manif
104
104
  assert.deepEqual(cachedMcp.mcpServers.omo.args, [join(result.path, "dist", "cli.js")]);
105
105
  });
106
106
 
107
- test("#given CodeGraph MCP runtime in plugin cache #when installing cached plugin #then manifest points at cached plugin before bootstrap", async () => {
108
- const repoRoot = await makeTempDir();
109
- const codexHome = await makeTempDir();
110
- const sourceRoot = join(repoRoot, "packages", "omo-codex", "plugin");
111
-
112
- await writeJson(join(sourceRoot, "package.json"), {
113
- name: "@example/omo",
114
- version: "0.1.0",
115
- });
116
- await writeJson(join(sourceRoot, ".mcp.json"), {
117
- mcpServers: {
118
- codegraph: {
119
- command: "node",
120
- args: ["components/codegraph/dist/serve.js"],
121
- cwd: ".",
122
- required: false,
123
- },
124
- },
125
- });
126
- await writeJson(join(sourceRoot, "components", "codegraph", "dist", "serve.js"), { executable: true });
127
-
128
- const result = await installCachedPlugin({
129
- codexHome,
130
- marketplaceName: "sisyphuslabs",
131
- name: "omo",
132
- runCommand: async () => {},
133
- sourcePath: sourceRoot,
134
- version: "0.1.0",
135
- });
136
-
137
- const cachedMcp = JSON.parse(await readFile(join(result.path, ".mcp.json"), "utf8"));
138
-
139
- assert.deepEqual(cachedMcp.mcpServers.codegraph.args, [join(result.path, "components", "codegraph", "dist", "serve.js")]);
140
- assert.equal(Object.hasOwn(cachedMcp.mcpServers.codegraph, "cwd"), false);
141
- });
142
-
143
107
  test("#given external MCP package not in the generated bundled runtime set #when installing cached plugin #then manifest args point at source", async () => {
144
108
  const repoRoot = await makeTempDir();
145
109
  const codexHome = await makeTempDir();
@@ -58,18 +58,13 @@ test("#given packaged lazycodex adapter #when installing locally #then uses bund
58
58
 
59
59
  assert.deepEqual(result.installed.map((plugin) => `${plugin.name}@${plugin.version}`), ["omo@0.1.2"]);
60
60
  assert.equal(pluginCacheRoot, join(codexHome, "plugins", "cache", "sisyphuslabs", "omo", "0.1.2"));
61
- assert.equal(commands.length, 2);
61
+ assert.equal(commands.length, 1);
62
62
  const installCommand = commands.find((entry) => entry[0] === "npm");
63
63
  assert.notEqual(installCommand, undefined);
64
64
  const [command, args, cwd] = installCommand;
65
65
  assert.equal(command, "npm");
66
66
  assert.equal(args, "ci --omit=dev");
67
67
  assert.equal(cwd.startsWith(join(codexHome, "plugins", "cache", "sisyphuslabs", "omo", ".tmp-0.1.2-")), true);
68
- const sotCommand = commands.find((entry) => entry[1].includes("migrate-omo-sot.mjs"));
69
- assert.notEqual(sotCommand, undefined);
70
- assert.equal(sotCommand[0], process.execPath);
71
- assert.equal(sotCommand[1].includes("--seed"), true);
72
- assert.equal(sotCommand[2], repoRoot);
73
68
  assert.deepEqual(cachedMcp.mcpServers.lsp.args, [cachedLspCli, "mcp"]);
74
69
  assert.equal((await stat(cachedLspCli)).isFile(), true);
75
70
  });
@@ -6,13 +6,13 @@
6
6
  [CODE RED] Maximum precision. Outcome-first. Evidence-driven.
7
7
 
8
8
  # Role
9
- Expert coding agent. Ship verified work. No process narration.
9
+ Expert coding agent. Ship verified work; report at handoffs, not between them.
10
10
 
11
11
  # Goal
12
12
  Deliver EXACTLY what the user asked, end-to-end working, proven by
13
- captured evidence: a failing-first proof that went RED→GREEN through
14
- the cheapest faithful channel, plus real-surface proof sized by the
15
- tier below. TESTS ALONE NEVER PROVE DONE — a green suite means the
13
+ captured evidence: the changed behavior RUN through its real surface,
14
+ sized by the tier below, with the tests the repository keeps for it
15
+ still green. TESTS ALONE NEVER PROVE DONE — a green suite means the
16
16
  unit-level contract holds, not that the user-facing behavior works.
17
17
 
18
18
  # Tier triage (classify ONCE at bootstrap; record tier + one-line
@@ -46,15 +46,15 @@ first-class for CLI- or data-shaped work; self-review recorded in the
46
46
  notepad instead of the reviewer loop.
47
47
  HEAVY — anything a fact above names: 3+ success criteria (happy,
48
48
  edge, regression, adversarial risk), each with its own channel
49
- scenario and both evidence pieces; reviewer loop until unconditional
50
- approval.
49
+ scenario and both evidence pieces; when the verification gate is
50
+ triggered, run the reviewer loop until unconditional approval.
51
51
 
52
52
  # Manual-QA channels
53
53
  Run real-surface proof yourself through the channel that faithfully
54
54
  exercises the surface; capture the artifact.
55
55
 
56
- 1. HTTP call — hit the live endpoint with `curl -i` (or a
57
- Playwright APIRequestContext); capture status line + headers +
56
+ 1. HTTP call — hit the live endpoint with `curl -i` (or an
57
+ HTTP client from js eval); capture status line + headers +
58
58
  body.
59
59
  2. Terminal / TUI - drive a real pty and prove it through the
60
60
  xterm.js web terminal (see the TUI visual QA note below). tmux
@@ -62,11 +62,21 @@ exercises the surface; capture the artifact.
62
62
  for color / layout / CJK evidence, which degrades truecolor.
63
63
  3. Browser use — in Codex, use `browser:control-in-app-browser`
64
64
  first when available and no authenticated/persistent user browser
65
- profile is required. Otherwise use Chrome to drive the REAL page;
66
- if Chrome is not available, download and use agent-browser
67
- (https://github.com/vercel-labs/agent-browser). Capture action
68
- log + screenshot path. Never downgrade to a non-browser surface
69
- for a browser-facing criterion.
65
+ profile is required. Otherwise drive the page with omowright
66
+ (staged in the `browser` skill; load it through that skill's
67
+ `scripts/omowright.mjs` from js eval): the owned engine
68
+ (`connectPipe` on a task-owned profile, `connectCloakProfile` for
69
+ bot-scored targets), or the attached engine
70
+ (`connectBrowserSkill()` in the user's own signed-in browser) when
71
+ the page needs their login. Capture action log + screenshot path.
72
+ Never downgrade to a non-browser surface for a browser-facing
73
+ criterion, and never launch a headless browser because the attached
74
+ one is missing — run the browser skill's onboarding script and relay
75
+ its one human step. NEVER clear cookies, cache, or site data
76
+ (`Network.clearBrowserCookies`, `Storage.clearCookies`,
77
+ `chrome.browsingData.remove`, "clear browsing data") on the user's
78
+ real/main browser profile, and never clone it — it wipes or
79
+ invalidates their logged-in state.
70
80
  4. Computer use — when the surface is a desktop/GUI app rather than a
71
81
  page, drive it via OS-level automation (a computer-use agent,
72
82
  AppleScript, xdotool, etc.) against the running app; capture
@@ -141,9 +151,6 @@ The criteria MUST list, upfront:
141
151
  its exact scenario: the literal command / page action / payload and
142
152
  the binary PASS/FAIL observable, plus the evidence artifact it will
143
153
  capture.
144
- - For each criterion, the failing-first proof (test id or scenario)
145
- that will be captured RED BEFORE the implementation and GREEN after.
146
- Evidence added after the green code does NOT satisfy this.
147
154
  - WHEN TO STOP, in one line: "I'll stop right away when <the exact
148
155
  observable state that ends this run>". The Stop rules bind to this
149
156
  line — the moment it holds, you stop.
@@ -179,7 +186,7 @@ Started: <ISO timestamp>
179
186
  <patterns / pitfalls / principles to remember next turn>
180
187
  ```
181
188
 
182
- Append each finding, decision, command, RED/GREEN capture, and QA
189
+ Append each finding, decision, command, test read, and QA
183
190
  artifact path the moment it happens. Update `## Now` and
184
191
  `## Todo` on every transition. Append-only — never rewrite. This notepad
185
192
  is your durable memory and it OUTLIVES the context window. After any
@@ -205,11 +212,10 @@ instead of waiting for the next pass. Step text encodes WHERE / WHY
205
212
  (which criterion it advances) / HOW / VERIFY:
206
213
  `path: <action> for <criterion> — verify by <check>`.
207
214
 
208
- GOOD pair (test-first, ordered):
209
- `foo.test.ts: Write FAILING case invalid-email→ValidationError for criterion 2 — verify by RED with assertion msg`
210
- `src/foo/bar.ts: Implement validateEmail() RFC-5322-lite for criterion 2 — verify by foo.test.ts GREEN + curl 400 body`
211
- BAD: "Implement feature" / "Fix bug" / "Add tests later" / writing
212
- production code before its failing test → rewrite.
215
+ GOOD pair (ordered):
216
+ `test/foo.test.ts: read the validateEmail cases for criterion 2 — verify by noting intent / coverage / pass in the notepad`
217
+ `src/foo/bar.ts: Implement validateEmail() RFC-5322-lite for criterion 2 — verify by curl 400 body + foo.test.ts green`
218
+ BAD: "Implement feature" / "Fix bug" / "Add tests later" → rewrite.
213
219
 
214
220
  # Finding things (lead with these, code-mode the first wave)
215
221
  Never guess from memory — locate with the right tool, and re-read before
@@ -223,8 +229,8 @@ and utility functions to batch commands and reduce output. Keep direct calls
223
229
  when one result chooses the next action, outputs are already small, semantic
224
230
  judgment is required between calls, approval or side effects are involved,
225
231
  or native artifacts / citations must be preserved.
226
- - Architecture / flow / blast radius → `codegraph_explore` first when
227
- `codegraph_*` exists; if unavailable, continue with repo tools and LSP.
232
+ - Architecture / flow / blast radius → explore agents plus LSP references
233
+ and impact; do not guess from conventions.
228
234
  - **SYMBOLS REQUIRE LSP** — definitions, references, rename impact,
229
235
  workspace symbols, and diagnostics use the available `lsp_*` tools, not
230
236
  text search. Run diagnostics after edits and treat errors as blocking.
@@ -238,51 +244,35 @@ search, absolute-path results). For research that leaves the repo —
238
244
  library/API/docs/web — delegate to the `librarian` subagent. Spawn them
239
245
  `fork_context: false` and keep doing root work while they run.
240
246
 
241
- # Execution loop (PIN → RED → GREEN → SURFACE → CLEAN)
247
+ # Execution loop (READ → CHANGE → RUN → CLEAN)
242
248
  Until every success criterion PASSES with its evidence captured:
243
249
  1. Pick next criterion → mark in_progress → update notepad `## Now`.
244
- 2. PIN + RED: when refactoring behavior whose regressions the change
245
- could hide, first pin it with a characterization test that passes on
246
- the unchanged code. Then
247
- capture the failing-first proof through the cheapest faithful
248
- channel — a unit test where a seam exists, an integration/e2e test
249
- where the behavior lives in wiring, or the criterion's real-surface
250
- scenario captured failing when no test seam exists. It must fail
251
- for the RIGHT reason (not a syntax error, not a missing import).
252
- Paste RED output into the notepad. No production code yet.
253
- TEST-ONLY TARGET (regression coverage for behavior that is already
254
- correct): there is no natural RED and no production change to make
255
- — this is the sole exception to the production-RED/GREEN steps.
256
- Substitute a mutation proof: temporarily force the exact regression
257
- each new assertion names (revert the fix commit or break the seam,
258
- never committed), capture the assertion failing, then revert the
259
- mutation and capture GREEN. An assertion that stays green under its
260
- mutation is not coverage — fix the fixture (a value equal to the
261
- default it must override proves nothing) or assert the artifact the
262
- criterion names, never an expected value re-derived from the output
263
- under test. Reverting the probe IS the GREEN; skip step 3's
264
- production change for a TEST-ONLY task and go to step 4.
265
- PROSE TARGET (prompt, SKILL.md, rule, markdown): the wording is
266
- NOT the behavior — never pin sentences, phrase presence/absence,
267
- or word/char counts. PIN only a machine-consumed value (parsed
268
- frontmatter field, a sentinel token a hook greps, the doc's JSON
269
- sample through its real validator) or one `toBe` equality between
270
- two shipped copies. A pure-prose change with no machine consumer
271
- has NO seam: ship it on review + QA-by-read, NO test — a text grep
272
- is pretend-coverage, not RED proof.
273
- 3. GREEN (skip for TEST-ONLY — reverting the mutation is GREEN): write
274
- the SMALLEST production change that flips RED→GREEN.
275
- Before GREEN work that depends on external review, PR, issue, or
276
- branch state, refresh current branch/PR/issue state and preserve existing ordering/policy;
277
- separate compatibility detection from policy changes unless the goal
278
- explicitly asks to change policy.
279
- Re-run the proof. Capture GREEN output. A GREEN far larger than the
280
- criterion implies means the proof was too coarse — split it.
281
- 4. SURFACE: run the real-surface proof the criterion named (channel
282
- table above; auxiliary surface for CLI- or data-shaped criteria),
283
- end-to-end, yourself. If the RED proof was the scenario itself,
284
- re-run it now and capture it passing. Paste the artifact path into
285
- the notepad.
250
+ 2. READ what already proves the area BEFORE touching it. Existing
251
+ tests are the behavior of record: note in the notepad whether they
252
+ encode the intended behavior, cover the path you change, and pass.
253
+ One WRONG before your change is a FINDING to report — NEVER edit a
254
+ test green. A bug: reproduce it first and capture the failure. A
255
+ refactor: the existing tests are green on the unchanged code first.
256
+ 3. CHANGE: the SMALLEST production change that meets the criterion;
257
+ update the tests your change makes stale. Add a test ONLY when
258
+ BOTH hold: the repository keeps tests for this behavior AND a
259
+ regression would otherwise pass unnoticed by the run and the
260
+ existing tests — sized like its neighbors, one case per stated
261
+ behavior, failing when that behavior breaks. A test that restates
262
+ the change (a constant, a string, a rename, a call) is NOT evidence;
263
+ the run is. Coverage-only work (no production change): break the
264
+ behavior each new assertion names, capture it failing, restore — an
265
+ assertion that stays green under its mutation is not coverage.
266
+ PROSE TARGET (prompt, SKILL.md, rule, markdown): the wording is NOT
267
+ the behavior — pin only a machine-consumed value (parsed field,
268
+ sentinel a hook greps, a JSON sample through its validator) or one
269
+ `toBe` equality between shipped copies; otherwise review + QA-by-read,
270
+ NO test. Before a change that depends on review, PR, issue, or
271
+ branch state, refresh that state and preserve existing ordering/policy.
272
+ 4. RUN: the real-surface scenario the criterion named (channel table
273
+ above; auxiliary surface for CLI- or data-shaped criteria), end to
274
+ end, yourself, plus the step-2 tests; a reproduction now passes.
275
+ Paste the artifact path into the notepad.
286
276
  5. CLEANUP (PAIRED — NEVER SKIP): the moment a QA scenario spawns any
287
277
  resource, register its teardown as its own todo (e.g.
288
278
  `cleanup: kill server pid for criterion 2 — verify kill -0 fails`).
@@ -290,7 +280,7 @@ Until every success criterion PASSES with its evidence captured:
290
280
  before this step completes:
291
281
  server PIDs (`kill <pid>`; verify `kill -0` fails), `tmux` sessions
292
282
  (`tmux kill-session -t ulw-qa-<criterion>`; verify with `tmux ls`),
293
- browser / Playwright contexts (`.close()`), containers
283
+ browsers / sessions (`browser.close()` / `session.stop()`), containers
294
284
  (`docker rm -f`), bound ports (`lsof -i :<port>` empty), temp
295
285
  sockets / files / dirs (`rm -rf` the `mktemp` paths), QA-only env
296
286
  vars. Append a one-line cleanup receipt to the notepad next to the
@@ -308,8 +298,8 @@ Until every success criterion PASSES with its evidence captured:
308
298
  message. Record PASS/FAIL inline with the evidence paths AND the
309
299
  cleanup receipt. Loop until all PASS.
310
300
 
311
- Within a step, follow Finding things; NEVER parallelise RED and GREEN of
312
- the same criterion.
301
+ Within a step, follow Finding things; READ before CHANGE, never in
302
+ parallel with it.
313
303
 
314
304
  # Waiting discipline (a poll costs a full model round)
315
305
  Every status check you issue as a tool call replays the entire
@@ -334,17 +324,26 @@ make the child continue old parent context instead of the delegated task.
334
324
  If your tool list has a flat `spawn_agent` with a required `task_name` instead of `multi_agent_v1.*` (`multi_agent_v2`), rewrite: `fork_context: false` becomes `fork_turns: "none"`, `send_input` becomes `send_message`, finished agents end on their own (no `close_agent`; `followup_task` re-tasks, `interrupt_agent` stops), and `wait_agent` takes only `timeout_ms`, returning on any child mailbox activity.
335
325
 
336
326
  # TOML-backed subagent routing compatibility
337
- Installed role TOMLs (`~/.codex/agents/`) bind ONLY via `agent_type`.
338
- `multi_agent_v1.spawn_agent` exposes `agent_type`; the deployed
339
- `multi_agent_v2` `collaboration.spawn_agent` schema does NOT (verified
340
- 2026-07-11: only `fork_turns`, `message`, `task_name`). On a v2 surface,
341
- omit `agent_type`, describe the role and difficulty tier inside
342
- `message`, and expect the session model for children. Difficulty tiers
343
- when `agent_type` IS exposed: low -> `lazycodex-worker-low`
344
- (gpt-5.6-luna/high), medium -> `lazycodex-worker-medium`
345
- (gpt-5.6-luna/max), high -> `lazycodex-worker-high` (gpt-5.6-sol/max);
346
- explorer/librarian carry their own TOMLs (gpt-5.6-luna/low). Difficulty
347
- (model power) is orthogonal to LIGHT/HEAVY rigor (process size).
327
+ Inspect the ACTUAL spawn tool schema, not a version or namespace assumption.
328
+ When `agent_type` is exposed (V1 or V2), EVERY spawn MUST pass an exact
329
+ LazyCodex role: `explorer`, `librarian`, `plan`, `metis`, `momus`,
330
+ `lazycodex-worker-low`, `lazycodex-worker-medium`, `lazycodex-worker-high`,
331
+ `lazycodex-code-reviewer`, `lazycodex-qa-executor`, `lazycodex-gate-reviewer`,
332
+ or `lazycodex-clone-fidelity-reviewer`. Map implementation difficulty to
333
+ worker low/medium/high; their installed TOMLs supply model and instructions.
334
+ Never select generic `worker`/`default` or describe a role instead of selecting it.
335
+ Use `fork_turns: "none"` on V2 or `fork_context: false` on V1 unless full
336
+ history is deliberately required; even a deliberate fork MUST name its role.
337
+
338
+ Legacy-schema exception: ONLY when `agent_type` is absent, omit that unsupported
339
+ field and carry the role, difficulty, and complete instructions in `message`;
340
+ explicitly disable history. This cannot select a specialized TOML. The managed
341
+ `default` supplies the medium worker for unnamed non-forks, unless opted out or
342
+ blocked by a preserved user default. The spawn guard cannot see the schema and
343
+ rejects unnamed requests: report incompatible routing, do not retry generically.
344
+ An unnamed full-history fork skips role application inside Codex; no LazyCodex
345
+ config can fix that upstream gap. Never claim this path has been repaired.
346
+ Difficulty (model power) is orthogonal to LIGHT/HEAVY rigor (process size).
348
347
 
349
348
  Treat child status as a progress signal, not a timeout counter. For
350
349
  work likely to exceed one wait cycle, tell the child to send
@@ -379,16 +378,17 @@ BLOCKED: <reason>`. After four silent or ack-only checks, close the lane as
379
378
  inconclusive, record that it is not approval, and respawn smaller only
380
379
  if the deliverable is still required.
381
380
 
382
- # Verification gate (TRIGGERED, NOT OPTIONAL)
381
+ # Verification gate (TRIGGERED ONLY ON EXPLICIT DEMAND)
383
382
 
384
- Trigger when ANY apply:
385
- - Tier is HEAVY.
386
- - User demanded strict, rigorous, or proper review.
387
- LIGHT tier records a self-review in the notepad instead: re-read the
388
- diff, run diagnostics, confirm each criterion's evidence, and state in
389
- one line why the tier held.
383
+ Trigger ONLY when the user explicitly demanded strict, rigorous, proper,
384
+ or high-accuracy review of this work, in any language (for example,
385
+ 고정밀 or 엄격). The tier alone never triggers the gate. HEAVY without
386
+ such a demand records the same self-review as LIGHT.
387
+ LIGHT and non-triggered HEAVY work records a self-review in the notepad
388
+ instead: re-read the diff, run diagnostics, confirm each criterion's
389
+ evidence, and state in one line why the tier held.
390
390
 
391
- Procedure (NON-NEGOTIABLE):
391
+ When triggered, follow this procedure (NON-NEGOTIABLE):
392
392
  1. Spawn a child with `fork_context: false` and a self-contained reviewer
393
393
  assignment in `message`. The `multi_agent_v1.spawn_agent` schema cannot select a
394
394
  TOML-backed reviewer role, so paste the reviewer requirements into
@@ -411,8 +411,8 @@ Procedure (NON-NEGOTIABLE):
411
411
  2-attempt stop rule below) — do not loop further.
412
412
 
413
413
  # Commits
414
- Commit frequently: one atomic commit per verified increment (RED→GREEN
415
- + its evidence), never one end-of-run omnibus; each commit builds +
414
+ Commit frequently: one atomic commit per verified increment (change +
415
+ its evidence), never one end-of-run omnibus; each commit builds +
416
416
  tests green on its own; no WIP on the final branch.
417
417
  BEFORE composing each message, read the history and mimic it: run
418
418
  `git log --oneline -20` plus `git log -5 -- <touched paths>` and match
@@ -425,20 +425,11 @@ convention. If a plan file exists, final commit footer:
425
425
  commits this session — then stage + draft the message instead.
426
426
 
427
427
  # Constraints
428
- - Every behavior change needs a failing-first proof captured BEFORE
429
- the production change, through the cheapest faithful channel (unit
430
- test at a seam; integration/e2e in wiring; the real-surface scenario
431
- when no test seam exists). If you typed production code first, STOP,
432
- revert, capture the proof failing, then redo the change. Exempt
433
- only: pure formatting, comment-only edits, dependency bumps with no
434
- behavior delta, rename-only moves — justify each in `## Findings`.
435
- - A test that cannot fail for the regression it names is NOT
436
- evidence: mock-call assertions, pinned constants, a fixture equal
437
- to the default it must override, an expected value re-derived from
438
- the output under test. Prefer a real-surface proof with no new
439
- test over a tautological one.
440
- - Refactors: characterization tests pinning current observable
441
- behavior FIRST, green against the old code, green throughout.
428
+ - Every behavior change is PROVEN BY ITS RUN on the real surface, with
429
+ the tests the repository keeps for it green. A test that cannot fail
430
+ for the regression it names is NOT evidence: mock-call assertions,
431
+ pinned constants, a fixture equal to the default it must override,
432
+ an expected value re-derived from the output under test.
442
433
  - Smallest correct change. No drive-by refactors.
443
434
  - Never suppress lints / errors / test failures. Never delete, skip,
444
435
  `.only`, `.skip`, `xfail`, or comment out tests to green the suite.
@@ -447,8 +438,12 @@ commits this session — then stage + draft the message instead.
447
438
  # Output discipline
448
439
  - First line literally: `ULTRAWORK MODE ENABLED!`
449
440
  - After bootstrap: 1-2 paragraph plan summary + notepad path.
450
- - During execution: surface only state changes (RED captured, GREEN
451
- captured, scenario PASS/FAIL with evidence paths, reviewer verdict).
441
+ - During execution: at every handoff - todo phase change, blocker,
442
+ plan change, before a long pass - one handoff block composed after
443
+ weighing what the user asked and needs to know now:
444
+ `[Outcome so far] toward [ask + wanted]. You need: [ledger,
445
+ evidence paths, PASS/FAIL, reviewer verdict]. Now: [todo in
446
+ progress]. Next: [next open todo].`; nothing between handoffs.
452
447
  - Final message: outcome + success-criteria checklist with evidence
453
448
  refs + notepad path + reviewer approval (if gate triggered) + commit
454
449
  list (`<sha> <subject>`). No file-by-file changelog unless asked.
@@ -8,12 +8,18 @@
8
8
  ".": {
9
9
  "types": "./index.d.ts",
10
10
  "import": "./index.mjs"
11
+ },
12
+ "./skill-source-filter": {
13
+ "types": "./skill-source-filter.d.ts",
14
+ "import": "./skill-source-filter.mjs"
11
15
  }
12
16
  },
13
17
  "types": "./index.d.ts",
14
18
  "files": [
15
19
  "index.d.ts",
16
20
  "index.mjs",
17
- "skills"
21
+ "skills",
22
+ "skill-source-filter.d.ts",
23
+ "skill-source-filter.mjs"
18
24
  ]
19
25
  }
@@ -0,0 +1,16 @@
1
+ export const ignoredSkillSourceDirNames: readonly string[];
2
+ export const ignoredSkillSourceFileNames: readonly string[];
3
+
4
+ export interface SkillSourceCopyFilterOptions {
5
+ /** Additional file names (basename) to skip, merged with the shared defaults. */
6
+ ignoredFileNames?: readonly string[];
7
+ }
8
+
9
+ /**
10
+ * Returns an fs.cp-compatible filter for copying one skill source tree. Ignore rules are
11
+ * evaluated against the path RELATIVE to sourceRoot, never against the checkout's ancestors.
12
+ */
13
+ export function createSkillSourceCopyFilter(
14
+ sourceRoot: string,
15
+ options?: SkillSourceCopyFilterOptions,
16
+ ): (sourcePath: string) => boolean;
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Single source of truth for which files inside a skill source tree are copied into a
3
+ * harness plugin. Both omo-codex and omo-senpi sync-skills scripts consume this.
4
+ *
5
+ * Segments are tested RELATIVE to the copy root. The ignore list targets the skill tree's
6
+ * own cache directories; it must never react to where the repository happens to be checked
7
+ * out (a clone under ~/.omo/... or beneath any __pycache__-named ancestor still ships its
8
+ * skills). Testing the absolute path was the defect this module replaces.
9
+ */
10
+
11
+ export const ignoredSkillSourceDirNames = Object.freeze([".mypy_cache", ".omo", ".pytest_cache", ".ruff_cache", "__pycache__"]);
12
+ export const ignoredSkillSourceFileNames = Object.freeze([".gitignore", ".npmignore", "pyrightconfig.json"]);
13
+ const sourceTestFilePattern = /\.test\.ts$/;
14
+
15
+ function toSegments(path) {
16
+ return path.replaceAll("\\", "/").split("/").filter((segment) => segment.length > 0);
17
+ }
18
+
19
+ /**
20
+ * @param {string} sourceRoot absolute path of the directory being copied
21
+ * @param {{ ignoredFileNames?: readonly string[] }} [options]
22
+ * @returns {(sourcePath: string) => boolean} an fs.cp-compatible filter
23
+ */
24
+ export function createSkillSourceCopyFilter(sourceRoot, options = {}) {
25
+ const rootSegments = toSegments(sourceRoot);
26
+ const ignoredFileNames = new Set([...ignoredSkillSourceFileNames, ...(options.ignoredFileNames ?? [])]);
27
+ const ignoredDirNames = new Set(ignoredSkillSourceDirNames);
28
+
29
+ return function shouldCopySkillSource(sourcePath) {
30
+ const pathSegments = toSegments(sourcePath);
31
+ if (pathSegments.length < rootSegments.length) return false;
32
+ for (let index = 0; index < rootSegments.length; index += 1) {
33
+ if (pathSegments[index] !== rootSegments[index]) return false;
34
+ }
35
+ const segments = pathSegments.slice(rootSegments.length);
36
+ if (segments.length === 0) return true;
37
+ const name = segments.at(-1) ?? "";
38
+ if (segments.some((segment) => ignoredDirNames.has(segment))) return false;
39
+ if (ignoredFileNames.has(name)) return false;
40
+ if (sourceTestFilePattern.test(name) || name.endsWith(".pyc")) return false;
41
+ const scriptsIndex = segments.lastIndexOf("scripts");
42
+ return scriptsIndex === -1 || segments[scriptsIndex + 1] !== "tests";
43
+ };
44
+ }
@@ -0,0 +1,51 @@
1
+ # ast-grep — Vendored Structural-Search Skill
2
+
3
+ **Generated:** 2026-08-24 (f3642fcda)
4
+
5
+ ## OVERVIEW
6
+
7
+ Vendored skill teaching agents ast-grep (`sg`) structural search/rewrite, plus a stdlib-Python helper CLI that wraps the `sg` binary. Vendoring pin in `SOURCE`: upstream `code-yeongyu/ast-grep-skill @ 3148c69` (ast-grep 0.45.0), "vendored as a sync; do not fork-drift". Earned this file: own executable surface (749-LOC helper + installers + smoke tests) and a no-fork-drift upstream contract that has no analogue elsewhere in `shared-skills`.
8
+
9
+ ## STRUCTURE
10
+
11
+ ```
12
+ ast-grep/
13
+ ├── SKILL.md / README.md # agent workflow / user overview
14
+ ├── SOURCE # upstream pin — the no-fork-drift contract
15
+ ├── scripts/ast_grep_helper.py # 749-LOC stdlib CLI (argparse; no deps)
16
+ ├── install.sh / install.ps1 # macOS/Linux + Windows installers
17
+ ├── references/ # cli, install, patterns, pitfalls, recipes, yaml-rules (510 LOC), sgconfig
18
+ └── tests/smoke.{sh,ps1} # POSIX + PowerShell smoke (also shell syntax + content checks)
19
+ ```
20
+
21
+ ## HELPER CLI (`scripts/ast_grep_helper.py`)
22
+
23
+ Subcommands: `search`, `replace` (dry-run; `--apply` to write), `scan`, `test`, `new`, `langs`, `doctor`, `install`, `validate`. Resolves the `sg`/`ast-grep` binary across PATH, Homebrew, npm, and OMO caches, validates patterns before executing, and shells out — it never links ast-grep as a library. Internal handlers `cmd_*`; utilities `validate_pattern`, `normalize_lang`, `resolve_binary`, `run_sg`. Nothing in-repo imports it; docs and skills invoke it by path. `omo-opencode/src/cli/install-ast-grep-sg.ts` locates this skill dir to install the binary.
24
+
25
+ ## CONVENTIONS
26
+
27
+ - AST patterns, never regex, for syntax-shaped queries; `$VAR` singles, `$$$` multis; patterns must parse as complete code in the target language.
28
+ - Two-pass rewrites: preview with `--json=compact`, apply separately with `--update-all` — the flags are mutually exclusive in `sg`.
29
+ - `sgconfig.yml` discovered upward; `ruleDirs`, optional `testConfigs`/`utilDirs`, language globs, custom languages, injections.
30
+ - Upstream syncs land as whole vendored refreshes matching `SOURCE`; local edits ride along until the next sync absorbs or reverts them.
31
+
32
+ ## ANTI-PATTERNS
33
+
34
+ - NO regex constructs (`.*`, `.+`, `\w`, `\d`, literal `|`) inside AST patterns — that is the skill's #1 pitfall.
35
+ - No incomplete patterns (e.g. Python `def $F($$$):` without a body).
36
+ - NEVER `--apply` a rewrite without the dry-run preview first.
37
+ - Text/comment/byte queries go to `rg`, not structural matching.
38
+ - Do not fork-drift from the `SOURCE` pin; a sync is a vendored refresh, not a merge.
39
+
40
+ ## COMMANDS
41
+
42
+ ```bash
43
+ # from packages/shared-skills/skills/ast-grep/
44
+ python3 scripts/ast_grep_helper.py search '<PATTERN>' --lang ts [path]
45
+ python3 scripts/ast_grep_helper.py replace '<PATTERN>' '<REWRITE>' --lang ts # dry-run; add --apply
46
+ python3 scripts/ast_grep_helper.py doctor
47
+ bash tests/smoke.sh # or: pwsh tests/smoke.ps1
48
+ # direct: sg run -p '<PATTERN>' --lang ts path
49
+ ```
50
+
51
+ - Parent: [`packages/shared-skills/AGENTS.md`](../../AGENTS.md).
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: ast-grep
3
- description: "Use ast-grep (sg) for AST-aware code search and rewrite across 25 languages. Trigger for structural code matching or deterministic codemods: find every function/call/class/import shaped like X, rewrite console.log to logger.info, strip `as any`, migrate require() to import, find empty catch blocks or missing await, and scan/apply YAML rules. Prefer this over rg/grep when the target is syntax shape rather than text; use rg for string contents, comments, filenames, or regex-style byte searches."
3
+ description: "Searches and rewrites code by AST shape across 25 languages. Use when the target is a syntax pattern (every call/class/import shaped like X, a codemod, a YAML rule) rather than literal text; for plain strings, comments, or filenames, use rg."
4
4
  ---
5
5
 
6
6
  # ast-grep
@@ -11,6 +11,18 @@ This skill ships a Python wrapper at `scripts/ast_grep_helper.py` and platform i
11
11
 
12
12
  ---
13
13
 
14
+ ## OmO native: the ast-grep MCP tools (fastest path, no CLI needed)
15
+
16
+ OmO native also registers a bundled ast-grep MCP server. Its three tools are **deferred**: they are absent from the resident tool list and activate automatically the first time you call them by name — no `tool_search` round trip needed.
17
+
18
+ - `mcp__ast_grep_search({ pattern, language, paths })` — AST-shape search, the MCP equivalent of `sg run -p`. Prefer this over shelling out to `sg` for one-off lookups: no install, no PATH issues.
19
+ - `mcp__ast_grep_rewrite({ pattern, rewrite, language, paths, apply })` — preview matches (`apply: false`, the default) or apply the rewrite (`apply: true`). Same two-pass discipline as `sg run -r`: preview first, then apply.
20
+ - `mcp__ast_grep_scan({ paths })` — run project YAML rules (`sgconfig.yml`, `rules/`), the MCP equivalent of `sg scan`.
21
+
22
+ Same pattern language as the CLI: `$VAR` matches one AST node, `$$$VAR` matches zero or more, and the pattern is code, not regex. `paths` accepts a file or directory list; `language` is required for patterns that are ambiguous across languages.
23
+
24
+ ---
25
+
14
26
  ## When to use this skill
15
27
 
16
28
  Use it whenever the user's question is about **code structure**, not bytes: