oh-my-opencode 5.0.0-beta.6 → 5.0.0-beta.62

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 (997) hide show
  1. package/.agents/command/publish.md +59 -23
  2. package/.agents/skills/codex-qa/scripts/lsp-e2e.sh +1 -3
  3. package/.agents/skills/opencode-qa/scripts/lsp-e2e.sh +1 -1
  4. package/.agents/skills/pre-publish-review/SKILL.md +9 -12
  5. package/.agents/skills/publish/SKILL.md +59 -23
  6. package/.agents/skills/senpi-qa/SKILL.md +80 -0
  7. package/.agents/skills/senpi-qa/scripts/resolve-evidence-dir.mjs +65 -0
  8. package/.agents/skills/senpi-qa/scripts/resolve-evidence-dir.test.mjs +171 -0
  9. package/.agents/skills/tech-debt-audit/SKILL.md +6 -76
  10. package/.agents/skills/work-with-pr/SKILL.md +37 -23
  11. package/.opencode/command/publish.md +59 -23
  12. package/.opencode/skills/pre-publish-review/SKILL.md +9 -12
  13. package/.opencode/skills/work-with-pr/SKILL.md +37 -23
  14. package/README.ja.md +65 -60
  15. package/README.ko.md +66 -61
  16. package/README.md +65 -72
  17. package/README.ru.md +62 -60
  18. package/README.zh-cn.md +61 -60
  19. package/THIRD-PARTY-NOTICES.md +27 -99
  20. package/dist/agents/atlas/agent.d.ts +0 -1
  21. package/dist/agents/gpt-prompt-identity.d.ts +1 -1
  22. package/dist/agents/sisyphus/grok-4.d.ts +20 -0
  23. package/dist/agents/sisyphus/index.d.ts +2 -0
  24. package/dist/agents/sisyphus-agent-config.d.ts +6 -0
  25. package/dist/agents/sisyphus-agent-factory.d.ts +1 -1
  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/doctor/checks/index.d.ts +2 -0
  30. package/dist/cli/doctor/checks/latest-version.d.ts +11 -0
  31. package/dist/cli/doctor/checks/system-plugin.d.ts +4 -3
  32. package/dist/cli/doctor/framework/constants.d.ts +5 -0
  33. package/dist/cli/doctor/framework/types.d.ts +2 -0
  34. package/dist/cli/fallback-lane-policy.d.ts +1 -0
  35. package/dist/cli/index.js +52548 -60412
  36. package/dist/cli/install-codex/install-codex-test-fixtures.d.ts +1 -1
  37. package/dist/cli/run/on-complete-hook.d.ts +2 -0
  38. package/dist/cli/runtime-commands.d.ts +1 -1
  39. package/dist/cli/worktree-sweep/classify.d.ts +16 -0
  40. package/dist/cli/worktree-sweep/format.d.ts +8 -0
  41. package/dist/cli/worktree-sweep/git.d.ts +19 -0
  42. package/dist/cli/worktree-sweep/index.d.ts +7 -0
  43. package/dist/cli/worktree-sweep/options.d.ts +2 -0
  44. package/dist/cli/worktree-sweep/parse-worktree-list.d.ts +8 -0
  45. package/dist/cli/worktree-sweep/sweep.d.ts +2 -0
  46. package/dist/cli/worktree-sweep/types.d.ts +65 -0
  47. package/dist/cli/worktree-sweep/worktree-sweep.d.ts +2 -0
  48. package/dist/cli-node/index.js +51202 -59043
  49. package/dist/config/index.d.ts +1 -1
  50. package/dist/config/schema/background-task.d.ts +1 -0
  51. package/dist/config/schema/commands.d.ts +1 -1
  52. package/dist/config/schema/hooks.d.ts +1 -2
  53. package/dist/config/schema/oh-my-opencode-config.d.ts +5 -11
  54. package/dist/config/schema/ulw-execute.d.ts +5 -0
  55. package/dist/config/schema.d.ts +0 -1
  56. package/dist/config/validate.d.ts +2 -0
  57. package/dist/create-hooks.d.ts +3 -2
  58. package/dist/features/background-agent/compaction-aware-message-resolver.d.ts +1 -0
  59. package/dist/features/background-agent/constants.d.ts +0 -7
  60. package/dist/features/background-agent/error-classifier.d.ts +1 -0
  61. package/dist/features/background-agent/manager.d.ts +9 -1
  62. package/dist/features/background-agent/parent-wake-dispatched-tracker.d.ts +0 -1
  63. package/dist/features/background-agent/parent-wake-notifier-types.d.ts +1 -1
  64. package/dist/features/background-agent/parent-wake-prompt-dispatch.d.ts +1 -1
  65. package/dist/features/background-agent/parent-wake-session-inspector.d.ts +1 -1
  66. package/dist/features/background-agent/subagent-spawn-limits.d.ts +8 -0
  67. package/dist/features/background-agent/types.d.ts +4 -0
  68. package/dist/features/btw-side/btw-command-draft.d.ts +7 -0
  69. package/dist/features/btw-side/context-injector.d.ts +15 -0
  70. package/dist/features/btw-side/index.d.ts +8 -0
  71. package/dist/features/btw-side/metadata.d.ts +15 -0
  72. package/dist/features/btw-side/parent-context-budget.d.ts +9 -0
  73. package/dist/features/btw-side/server-session-registry.d.ts +8 -0
  74. package/dist/features/btw-side/tui-adoption-cache.d.ts +13 -0
  75. package/dist/features/btw-side/tui-adoption-guard.d.ts +5 -0
  76. package/dist/features/btw-side/tui-controller-types.d.ts +68 -0
  77. package/dist/features/btw-side/tui-controller.d.ts +19 -0
  78. package/dist/features/btw-side/tui-escape-return.d.ts +12 -0
  79. package/dist/features/btw-side/tui-keymap.d.ts +17 -0
  80. package/dist/features/btw-side/tui-parent-validator.d.ts +6 -0
  81. package/dist/features/btw-side/tui-picker-options.d.ts +20 -0
  82. package/dist/features/btw-side/tui-picker.d.ts +9 -0
  83. package/dist/features/btw-side/tui-prompt-queue.d.ts +8 -0
  84. package/dist/features/btw-side/tui-session-bridge.d.ts +11 -0
  85. package/dist/features/btw-side/tui-session-catalog.d.ts +35 -0
  86. package/dist/features/btw-side/tui-side-removal.d.ts +11 -0
  87. package/dist/features/btw-side/tui-side-start.d.ts +9 -0
  88. package/dist/features/btw-side/tui-wiring.d.ts +8 -0
  89. package/dist/features/builtin-commands/templates/ulw-execute.d.ts +1 -0
  90. package/dist/features/builtin-commands/types.d.ts +1 -1
  91. package/dist/features/claude-tasks/storage.d.ts +7 -2
  92. package/dist/features/hook-message-injector/index.d.ts +1 -0
  93. package/dist/features/hook-message-injector/sdk-message-lookup.d.ts +1 -0
  94. package/dist/features/monitor/manager-internals.d.ts +1 -1
  95. package/dist/features/monitor/output-injector-types.d.ts +1 -1
  96. package/dist/features/opengateway-provider/index.d.ts +13 -0
  97. package/dist/features/task-toast-manager/manager.d.ts +0 -24
  98. package/dist/features/team-mode/tools/messaging-fallback-wake.d.ts +17 -0
  99. package/dist/features/team-mode/tools/messaging-live-delivery-recipient.d.ts +3 -0
  100. package/dist/features/team-mode/tools/messaging-runtime.d.ts +7 -0
  101. package/dist/hooks/anthropic-context-window-limit-recovery/message-storage-directory.d.ts +0 -3
  102. package/dist/hooks/anthropic-context-window-limit-recovery/state.d.ts +1 -0
  103. package/dist/hooks/anthropic-context-window-limit-recovery/storage/empty-messages.d.ts +0 -1
  104. package/dist/hooks/anthropic-context-window-limit-recovery/tool-result-storage.d.ts +11 -0
  105. package/dist/hooks/atlas/atlas-hook.d.ts +1 -0
  106. package/dist/hooks/atlas/atlas-lifecycle-store.d.ts +50 -0
  107. package/dist/hooks/atlas/event-handler.d.ts +1 -0
  108. package/dist/hooks/atlas/final-wave-approval-gate.test-support.d.ts +50 -0
  109. package/dist/hooks/atlas/system-reminder-templates.d.ts +0 -1
  110. package/dist/hooks/atlas/tool-execute-before.d.ts +3 -0
  111. package/dist/hooks/atlas/types.d.ts +1 -0
  112. package/dist/hooks/claude-code-hooks/session-hook-state.d.ts +1 -0
  113. package/dist/hooks/claude-code-hooks/stop.d.ts +2 -0
  114. package/dist/hooks/claude-code-hooks/todo.d.ts +0 -1
  115. package/dist/hooks/claude-code-hooks/transcript.d.ts +2 -0
  116. package/dist/hooks/compaction-context-injector/validated-model.d.ts +2 -0
  117. package/dist/hooks/fsync-skip-warning/index.d.ts +4 -0
  118. package/dist/hooks/hashline-edit-diff-enhancer/hook.d.ts +1 -0
  119. package/dist/hooks/hashline-edit-diff-enhancer/pending-captures.d.ts +13 -0
  120. package/dist/hooks/index.d.ts +1 -2
  121. package/dist/hooks/keyword-detector/hook.d.ts +9 -0
  122. package/dist/hooks/keyword-detector/ultrawork/index.d.ts +2 -0
  123. package/dist/hooks/keyword-detector/ultrawork/source-detector.d.ts +0 -1
  124. package/dist/hooks/model-fallback/hook.d.ts +1 -1
  125. package/dist/hooks/prometheus-md-only/agent-resolution.d.ts +2 -2
  126. package/dist/hooks/runtime-fallback/chat-message-handler.d.ts +2 -0
  127. package/dist/hooks/runtime-fallback/retry-model-payload.d.ts +1 -0
  128. package/dist/hooks/runtime-fallback/runtime-model-settings.d.ts +6 -0
  129. package/dist/hooks/runtime-fallback/session-status-handler.d.ts +1 -1
  130. package/dist/hooks/runtime-fallback/types.d.ts +3 -1
  131. package/dist/hooks/sisyphus-junior-notepad/constants.d.ts +1 -1
  132. package/dist/hooks/todo-continuation-enforcer/types.d.ts +1 -0
  133. package/dist/hooks/{start-work → ulw-execute}/context-info-builder.d.ts +1 -1
  134. package/dist/hooks/{start-work → ulw-execute}/index.d.ts +1 -1
  135. package/dist/hooks/ulw-execute/ulw-execute-hook.d.ts +23 -0
  136. package/dist/hooks/unstable-agent-babysitter/task-message-analyzer.d.ts +1 -0
  137. package/dist/index.js +29256 -25391
  138. package/dist/mcp/index.d.ts +0 -4
  139. package/dist/mcp/types.d.ts +0 -1
  140. package/dist/oh-my-opencode.schema.json +21 -47
  141. package/dist/plugin/chat-message/types.d.ts +6 -4
  142. package/dist/plugin/chat-message/ulw-execute-message.d.ts +5 -0
  143. package/dist/plugin/event-session-lifecycle.d.ts +1 -0
  144. package/dist/plugin/hooks/create-core-hooks.d.ts +2 -2
  145. package/dist/plugin/hooks/create-session-hooks.d.ts +2 -3
  146. package/dist/plugin/hooks/create-transform-hooks.d.ts +2 -0
  147. package/dist/plugin/messages-transform.d.ts +1 -0
  148. package/dist/plugin/stop-continuation.d.ts +3 -0
  149. package/dist/plugin/system-transform.d.ts +5 -1
  150. package/dist/plugin-dispose.d.ts +3 -0
  151. package/dist/shared/agent-tool-restrictions.d.ts +0 -1
  152. package/dist/shared/compaction-agent-config-checkpoint.d.ts +1 -0
  153. package/dist/shared/index.d.ts +2 -0
  154. package/dist/shared/legacy-plugin-warning.d.ts +2 -1
  155. package/dist/shared/normalize-sdk-response.d.ts +1 -0
  156. package/dist/shared/omo-process-sweep.d.ts +2 -4
  157. package/dist/shared/plugin-entry-migrator.d.ts +4 -3
  158. package/dist/shared/plugin-entry-shape.d.ts +6 -0
  159. package/dist/shared/runtime-fallback-retry-marker.d.ts +16 -0
  160. package/dist/shared/shell-env.d.ts +1 -1
  161. package/dist/skills/ast-grep/AGENTS.md +51 -0
  162. package/dist/skills/ast-grep/SKILL.md +1 -1
  163. package/dist/skills/coding-agent-sessions/AGENTS.md +62 -0
  164. package/dist/skills/coding-agent-sessions/SKILL.md +1 -1
  165. package/dist/skills/data-scientist/SKILL.md +99 -239
  166. package/dist/skills/data-scientist/references/execution-surfaces.md +91 -0
  167. package/dist/skills/data-scientist/references/placement.md +74 -0
  168. package/dist/skills/data-scientist/references/polars-lane.md +95 -0
  169. package/dist/skills/data-scientist/references/uv-setup.md +1 -1
  170. package/dist/skills/data-scientist/references/visualization.md +64 -0
  171. package/dist/skills/data-scientist/scripts/ensure-js-deps.sh +28 -0
  172. package/dist/skills/data-scientist/scripts/ensure-py-deps.sh +37 -0
  173. package/dist/skills/debugging/SKILL.md +3 -1
  174. package/dist/skills/debugging/references/methodology/00-setup.md +12 -0
  175. package/dist/skills/debugging/references/methodology/02-investigate.md +21 -0
  176. package/dist/skills/debugging/references/runtimes/go.md +15 -1
  177. package/dist/skills/debugging/references/runtimes/native-binary.md +38 -0
  178. package/dist/skills/debugging/references/runtimes/node.md +25 -0
  179. package/dist/skills/debugging/references/runtimes/python.md +13 -0
  180. package/dist/skills/debugging/references/runtimes/rust.md +41 -0
  181. package/dist/skills/debugging/references/scripts/dap.mjs +267 -0
  182. package/dist/skills/debugging/references/scripts/dap.test.ts +86 -0
  183. package/dist/skills/debugging/references/scripts/fixture-adapter.mjs +59 -0
  184. package/dist/skills/debugging/references/tools/dap.md +103 -0
  185. package/dist/skills/debugging/references/tools/frida.md +193 -0
  186. package/dist/skills/frontend/ATTRIBUTION.md +10 -0
  187. package/dist/skills/frontend/SKILL.md +15 -8
  188. package/dist/skills/frontend/references/design/README.md +10 -2
  189. package/dist/skills/frontend/references/design/_INDEX.md +2 -0
  190. package/dist/skills/frontend/references/design/ambience-skill.md +145 -0
  191. package/dist/skills/frontend/references/design/interaction-skill.md +2 -0
  192. package/dist/skills/frontend/references/design/print-paged-media.md +76 -0
  193. package/dist/skills/frontend/references/design/stylegallery.md +80 -0
  194. package/dist/skills/frontend/references/designpowers/README.md +1 -1
  195. package/dist/skills/frontend/references/designpowers/lane-a-direction.md +1 -1
  196. package/dist/skills/frontend/references/designpowers/lane-b-execution.md +11 -11
  197. package/dist/skills/frontend/references/designpowers/lane-d-memory.md +3 -3
  198. package/dist/skills/frontend/references/designpowers/orchestration.md +1 -1
  199. package/dist/skills/frontend/references/designpowers/routing.md +5 -5
  200. package/dist/skills/git-master/SKILL.md +1 -1
  201. package/dist/skills/init-deep/SKILL.md +14 -14
  202. package/dist/skills/lsp-setup/SKILL.md +1 -1
  203. package/dist/skills/programming/SKILL.md +1 -1
  204. package/dist/skills/refactor/SKILL.md +4 -4
  205. package/dist/skills/remove-ai-slops/SKILL.md +1 -1
  206. package/dist/skills/review-work/SKILL.md +101 -419
  207. package/dist/skills/ultimate-browsing/ATTRIBUTION.md +38 -11
  208. package/dist/skills/ultimate-browsing/SKILL.md +26 -9
  209. package/dist/skills/ultimate-browsing/engine/AGENTS.md +110 -0
  210. package/dist/skills/ultimate-browsing/engine/templates/package.json +1 -1
  211. package/dist/skills/ultimate-browsing/references/chrome-stealth.md +23 -18
  212. package/dist/skills/ultimate-browsing/references/insane-search/README.md +9 -2
  213. package/dist/skills/{start-work → ulw-execute}/SKILL.md +20 -19
  214. package/dist/skills/ulw-plan/SKILL.md +7 -8
  215. package/dist/skills/ulw-plan/references/full-workflow.md +31 -7
  216. package/dist/skills/ulw-plan/references/intent-clear.md +2 -1
  217. package/dist/skills/ulw-plan/references/intent-unclear.md +5 -5
  218. package/dist/skills/ulw-plan/scripts/scaffold-plan.mjs +1 -1
  219. package/dist/skills/ulw-research/SKILL.md +8 -3
  220. package/dist/skills/visual-qa/AGENTS.md +58 -0
  221. package/dist/skills/visual-qa/SKILL.md +4 -3
  222. package/dist/tools/delegate-task/builtin-categories.d.ts +3 -1
  223. package/dist/tools/delegate-task/builtin-category-definition.d.ts +2 -1
  224. package/dist/tools/delegate-task/constants.d.ts +2 -2
  225. package/dist/tools/delegate-task/openai-categories.d.ts +7 -2
  226. package/dist/tools/delegate-task/sync-session-cleanup.d.ts +3 -0
  227. package/dist/tools/delegate-task/sync-session-poller.d.ts +1 -0
  228. package/dist/tools/delegate-task/tool-description.d.ts +3 -1
  229. package/dist/tools/delegate-task/types.d.ts +4 -0
  230. package/dist/tools/session-manager/directory-filter.d.ts +2 -0
  231. package/dist/tui.d.ts +12 -0
  232. package/dist/tui.js +37048 -46599
  233. package/package.json +47 -41
  234. package/packages/git-bash-mcp/dist/cli.js +6 -1
  235. package/packages/git-bash-mcp/package.json +1 -1
  236. package/packages/lsp-core/src/index.ts +1 -0
  237. package/packages/lsp-core/src/lsp/client-diagnostics-concurrency.integration.test.ts +44 -0
  238. package/packages/lsp-core/src/lsp/client-diagnostics-freshness.integration.test.ts +57 -48
  239. package/packages/lsp-core/src/lsp/client-diagnostics-pull-timeout.test.ts +64 -0
  240. package/packages/lsp-core/src/lsp/client-wrapper-outside-cwd.test.ts +78 -0
  241. package/packages/lsp-core/src/lsp/client-wrapper.test.ts +103 -6
  242. package/packages/lsp-core/src/lsp/client-wrapper.ts +50 -16
  243. package/packages/lsp-core/src/lsp/client.ts +32 -3
  244. package/packages/lsp-core/src/lsp/connection.ts +16 -0
  245. package/packages/lsp-core/src/lsp/constants.ts +6 -0
  246. package/packages/lsp-core/src/lsp/controlled-clock-test-support.ts +61 -0
  247. package/packages/lsp-core/src/lsp/errors.ts +15 -0
  248. package/packages/lsp-core/src/lsp/fixtures/workspace-edit-server.mjs +10 -3
  249. package/packages/lsp-core/src/lsp/format-document.test.ts +143 -0
  250. package/packages/lsp-core/src/lsp/format-document.ts +90 -0
  251. package/packages/lsp-core/src/lsp/json-rpc-connection.ts +11 -6
  252. package/packages/lsp-core/src/lsp/manager-lifecycle.test.ts +262 -0
  253. package/packages/lsp-core/src/lsp/manager-max-clients.test.ts +151 -0
  254. package/packages/lsp-core/src/lsp/manager.ts +138 -12
  255. package/packages/lsp-core/src/lsp/outside-context-workspace.ts +33 -0
  256. package/packages/lsp-core/src/lsp/server-definitions.ts +29 -0
  257. package/packages/lsp-core/src/lsp/server-installation.test.ts +376 -0
  258. package/packages/lsp-core/src/lsp/server-installation.ts +200 -27
  259. package/packages/lsp-core/src/lsp/server-resolution-local-binary.test.ts +170 -0
  260. package/packages/lsp-core/src/lsp/server-resolution.ts +18 -5
  261. package/packages/lsp-core/src/lsp/timer-provider.ts +13 -0
  262. package/packages/lsp-core/src/lsp/transport-request-timeout.test.ts +73 -0
  263. package/packages/lsp-core/src/lsp/transport.ts +16 -2
  264. package/packages/lsp-core/src/lsp/types.ts +8 -0
  265. package/packages/lsp-core/src/lsp/workspace-apply-edit-test-support.ts +29 -1
  266. package/packages/lsp-core/src/lsp/workspace-document-state.test.ts +84 -1
  267. package/packages/lsp-core/src/lsp/workspace-document-state.ts +30 -11
  268. package/packages/lsp-core/src/lsp/workspace-markers.ts +18 -0
  269. package/packages/lsp-core/src/mcp.ts +3 -0
  270. package/packages/lsp-core/src/request-context.test.ts +29 -0
  271. package/packages/lsp-core/src/request-context.ts +1 -1
  272. package/packages/lsp-core/src/tool-surface.test.ts +13 -1
  273. package/packages/lsp-core/src/tools/definitions.ts +14 -0
  274. package/packages/lsp-core/src/tools/format.test.ts +56 -0
  275. package/packages/lsp-core/src/tools/format.ts +56 -0
  276. package/packages/lsp-core/src/tools/index.ts +1 -0
  277. package/packages/lsp-core/src/tools/parameters.test.ts +51 -0
  278. package/packages/lsp-core/src/tools/types.ts +10 -0
  279. package/packages/lsp-daemon/dist/cli.js +902 -479
  280. package/packages/lsp-daemon/dist/client.d.ts +10 -0
  281. package/packages/lsp-daemon/dist/client.js +920 -493
  282. package/packages/lsp-daemon/dist/daemon-client.d.ts +1 -0
  283. package/packages/lsp-daemon/dist/daemon-client.js +3 -0
  284. package/packages/lsp-daemon/dist/ensure-daemon.d.ts +6 -1
  285. package/packages/lsp-daemon/dist/ensure-daemon.js +10 -2
  286. package/packages/lsp-daemon/dist/index.js +824 -402
  287. package/packages/lsp-daemon/dist/ownership.js +2 -2
  288. package/packages/lsp-daemon/dist/proxy.js +3 -0
  289. package/packages/lsp-daemon/dist/version-reap.js +1 -1
  290. package/packages/lsp-daemon/package.json +1 -1
  291. package/packages/lsp-tools-mcp/dist/cli.js +762 -341
  292. package/packages/lsp-tools-mcp/dist/lsp/manager.js +272 -138
  293. package/packages/lsp-tools-mcp/dist/mcp.js +787 -368
  294. package/packages/lsp-tools-mcp/dist/request-context.js +12 -13
  295. package/packages/lsp-tools-mcp/dist/tools.js +717 -302
  296. package/packages/lsp-tools-mcp/package.json +1 -1
  297. package/packages/omo-codex/THIRD-PARTY-NOTICES.md +4 -21
  298. package/packages/omo-codex/plugin/.codex-plugin/plugin.json +4 -6
  299. package/packages/omo-codex/plugin/.mcp.json +0 -6
  300. package/packages/omo-codex/plugin/AGENTS.md +47 -0
  301. package/packages/omo-codex/plugin/README.md +6 -2
  302. package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +7093 -408
  303. package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
  304. package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
  305. package/packages/omo-codex/plugin/components/bootstrap/src/hook.ts +1 -0
  306. package/packages/omo-codex/plugin/components/bootstrap/src/setup.ts +7 -1
  307. package/packages/omo-codex/plugin/components/comment-checker/AGENTS.md +9 -0
  308. package/packages/omo-codex/plugin/components/comment-checker/biome.json +2 -2
  309. package/packages/omo-codex/plugin/components/comment-checker/dist/cli.js +2 -1
  310. package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
  311. package/packages/omo-codex/plugin/components/comment-checker/package.json +5 -5
  312. package/packages/omo-codex/plugin/components/comment-checker/src/apply-patch.ts +2 -8
  313. package/packages/omo-codex/plugin/components/comment-checker/src/core.ts +1 -2
  314. package/packages/omo-codex/plugin/components/comment-checker/src/request-extractor.ts +1 -1
  315. package/packages/omo-codex/plugin/components/comment-checker/src/runner.ts +1 -0
  316. package/packages/omo-codex/plugin/components/git-bash/AGENTS.md +1 -1
  317. package/packages/omo-codex/plugin/components/git-bash/dist/cli.js +1 -1
  318. package/packages/omo-codex/plugin/components/git-bash/dist/codex-hook.js +2 -1
  319. package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
  320. package/packages/omo-codex/plugin/components/git-bash/package.json +3 -4
  321. package/packages/omo-codex/plugin/components/git-bash/src/codex-hook.ts +2 -1
  322. package/packages/omo-codex/plugin/components/git-bash/test/codex-hook.test.ts +6 -7
  323. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/AGENTS.md +2 -2
  324. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/biome.json +2 -2
  325. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/directive.md +2 -0
  326. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/cli.js +36 -29
  327. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/codex-hook.js +32 -26
  328. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/types.d.ts +3 -0
  329. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
  330. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +5 -5
  331. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/src/codex-hook.ts +32 -28
  332. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/src/types.ts +3 -0
  333. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/test/cli.test.ts +1 -1
  334. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/test/codex-hook.test.ts +137 -28
  335. package/packages/omo-codex/plugin/components/lcx/skills/lcx-doctor/SKILL.md +4 -2
  336. package/packages/omo-codex/plugin/components/lsp/AGENTS.md +30 -15
  337. package/packages/omo-codex/plugin/components/lsp/biome.json +2 -2
  338. package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +4 -4
  339. package/packages/omo-codex/plugin/components/lsp/dist/cli.js +941 -540
  340. package/packages/omo-codex/plugin/components/lsp/dist/daemon-cli-path.js +1 -1
  341. package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
  342. package/packages/omo-codex/plugin/components/lsp/package.json +5 -5
  343. package/packages/omo-codex/plugin/components/lsp/src/cli.ts +1 -1
  344. package/packages/omo-codex/plugin/components/lsp/src/codex-hook.ts +1 -1
  345. package/packages/omo-codex/plugin/components/lsp/src/daemon-cli-path.ts +1 -5
  346. package/packages/omo-codex/plugin/components/lsp/test/codex-hook-unavailable.test.ts +6 -7
  347. package/packages/omo-codex/plugin/components/lsp/test/codex-hook.test.ts +1 -2
  348. package/packages/omo-codex/plugin/components/lsp/test/package-smoke.test.ts +11 -1
  349. package/packages/omo-codex/plugin/components/rules/AGENTS.md +12 -0
  350. package/packages/omo-codex/plugin/components/rules/README.md +2 -0
  351. package/packages/omo-codex/plugin/components/rules/biome.json +2 -2
  352. package/packages/omo-codex/plugin/components/rules/bundled-rules/hephaestus/gpt-6.md +123 -0
  353. package/packages/omo-codex/plugin/components/rules/dist/cli.js +91 -68
  354. package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
  355. package/packages/omo-codex/plugin/components/rules/package.json +7 -7
  356. package/packages/omo-codex/plugin/components/rules/src/config.ts +1 -2
  357. package/packages/omo-codex/plugin/components/rules/src/persistent-cache.ts +1 -2
  358. package/packages/omo-codex/plugin/components/rules/src/post-compact-budget.ts +15 -5
  359. package/packages/omo-codex/plugin/components/rules/src/rules-engine-factory.ts +1 -4
  360. package/packages/omo-codex/plugin/components/rules/src/static-injection.ts +4 -9
  361. package/packages/omo-codex/plugin/components/rules/test/bundled-rules-priority.test.ts +11 -16
  362. package/packages/omo-codex/plugin/components/rules/test/bundled-rules.test.ts +17 -25
  363. package/packages/omo-codex/plugin/components/rules/test/codex-hook-post-compact-budget.test.ts +9 -7
  364. package/packages/omo-codex/plugin/components/rules/test/codex-hook-post-compact-context.test.ts +0 -6
  365. package/packages/omo-codex/plugin/components/rules/test/codex-hook-post-compact-dedup.test.ts +6 -4
  366. package/packages/omo-codex/plugin/components/rules/test/codex-hook-post-compact-directive.test.ts +12 -9
  367. package/packages/omo-codex/plugin/components/rules/test/codex-hook.test.ts +28 -37
  368. package/packages/omo-codex/plugin/components/rules/test/dynamic-target-fingerprints.test.ts +1 -2
  369. package/packages/omo-codex/plugin/components/rules/test/engine.test.ts +7 -4
  370. package/packages/omo-codex/plugin/components/rules/test/finder.test.ts +2 -3
  371. package/packages/omo-codex/plugin/components/rules/test/formatter.test.ts +39 -72
  372. package/packages/omo-codex/plugin/components/rules/test/hephaestus-model-variant.test.ts +38 -3
  373. package/packages/omo-codex/plugin/components/rules/test/hook-output.test.ts +2 -3
  374. package/packages/omo-codex/plugin/components/rules/test/matcher.test.ts +2 -3
  375. package/packages/omo-codex/plugin/components/rules/test/package-smoke.test.ts +1 -1
  376. package/packages/omo-codex/plugin/components/rules/test/parser.test.ts +1 -2
  377. package/packages/omo-codex/plugin/components/rules/test/post-compact-budget.test.ts +29 -6
  378. package/packages/omo-codex/plugin/components/rules/test/rules-engine-consumption.test.ts +3 -6
  379. package/packages/omo-codex/plugin/components/rules/test/scanner.test.ts +1 -2
  380. package/packages/omo-codex/plugin/components/rules/test/sources.test.ts +2 -5
  381. package/packages/omo-codex/plugin/components/rules/test/windows-git-bash-bundled-rule.test.ts +2 -17
  382. package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
  383. package/packages/omo-codex/plugin/components/teammode/package.json +5 -5
  384. package/packages/omo-codex/plugin/components/teammode/test/thread-title-hook.test.ts +4 -10
  385. package/packages/omo-codex/plugin/components/telemetry/AGENTS.md +8 -0
  386. package/packages/omo-codex/plugin/components/telemetry/biome.json +2 -2
  387. package/packages/omo-codex/plugin/components/telemetry/dist/cli.js +2407 -684
  388. package/packages/omo-codex/plugin/components/telemetry/dist/posthog.js +2411 -689
  389. package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
  390. package/packages/omo-codex/plugin/components/telemetry/package.json +5 -5
  391. package/packages/omo-codex/plugin/components/telemetry/src/codex-hook.ts +1 -4
  392. package/packages/omo-codex/plugin/components/telemetry/src/posthog.ts +4 -14
  393. package/packages/omo-codex/plugin/components/telemetry/src/product-identity.ts +1 -1
  394. package/packages/omo-codex/plugin/components/telemetry/test/diagnostics.test.ts +2 -5
  395. package/packages/omo-codex/plugin/components/ultrawork/AGENTS.md +10 -4
  396. package/packages/omo-codex/plugin/components/ultrawork/README.md +2 -0
  397. package/packages/omo-codex/plugin/components/ultrawork/agents/explorer.toml +1 -1
  398. package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-clone-fidelity-reviewer.toml +1 -1
  399. package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-code-reviewer.toml +1 -1
  400. package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-gate-reviewer.toml +1 -1
  401. package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-qa-executor.toml +1 -1
  402. package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-worker-high.toml +1 -1
  403. package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-worker-low.toml +1 -1
  404. package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-worker-medium.toml +1 -1
  405. package/packages/omo-codex/plugin/components/ultrawork/agents/librarian.toml +1 -1
  406. package/packages/omo-codex/plugin/components/ultrawork/agents/metis.toml +1 -1
  407. package/packages/omo-codex/plugin/components/ultrawork/agents/momus.toml +1 -1
  408. package/packages/omo-codex/plugin/components/ultrawork/agents/plan.toml +1 -1
  409. package/packages/omo-codex/plugin/components/ultrawork/biome.json +2 -2
  410. package/packages/omo-codex/plugin/components/ultrawork/dist/cli.js +499 -4
  411. package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
  412. package/packages/omo-codex/plugin/components/ultrawork/package.json +5 -6
  413. package/packages/omo-codex/plugin/components/ultrawork/scripts/sync-directive.mjs +30 -14
  414. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/SKILL.md +6 -7
  415. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/full-workflow.md +31 -7
  416. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/intent-clear.md +2 -1
  417. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/intent-unclear.md +5 -5
  418. package/packages/omo-codex/plugin/components/ultrawork/src/directive-content.ts +4 -0
  419. package/packages/omo-codex/plugin/components/ultrawork/src/directive.ts +5 -2
  420. package/packages/omo-codex/plugin/components/ultrawork/test/codex-hook-trigger-policy.test.ts +9 -1
  421. package/packages/omo-codex/plugin/components/ultrawork/test/codex-hook.test.ts +0 -136
  422. package/packages/omo-codex/plugin/components/ultrawork/test/directive-source.test.ts +14 -8
  423. package/packages/omo-codex/plugin/components/ultrawork/test/package-smoke.test.ts +12 -1
  424. package/packages/omo-codex/plugin/components/ultrawork/test/skill-pointer.test.ts +0 -2
  425. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/AGENTS.md +4 -4
  426. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/NOTICE +1 -1
  427. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/README.md +6 -6
  428. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/biome.json +2 -2
  429. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/directive.md +10 -10
  430. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/dist/cli.js +16 -16
  431. package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +16 -0
  432. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/package.json +12 -12
  433. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/boulder-reader.ts +1 -1
  434. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/cli.ts +1 -1
  435. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/codex-hook.ts +4 -4
  436. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/directive.ts +1 -1
  437. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/index.ts +1 -1
  438. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/types.ts +1 -1
  439. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/boulder-reader.test.ts +3 -3
  440. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/cli.test.ts +4 -11
  441. package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/codex-hook.test.ts +24 -22
  442. package/packages/omo-codex/plugin/components/ulw-loop/AGENTS.md +19 -0
  443. package/packages/omo-codex/plugin/components/ulw-loop/CHANGELOG.md +3 -1
  444. package/packages/omo-codex/plugin/components/ulw-loop/README.md +12 -1
  445. package/packages/omo-codex/plugin/components/ulw-loop/biome.json +2 -2
  446. package/packages/omo-codex/plugin/components/ulw-loop/directive.md +46 -24
  447. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-codex-validation.d.ts +16 -0
  448. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-codex-validation.js +25 -0
  449. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-continuation.js +10 -4
  450. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-reconciliation.d.ts +2 -5
  451. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-reconciliation.js +5 -78
  452. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-template.d.ts +12 -0
  453. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-template.js +114 -0
  454. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint.d.ts +7 -1
  455. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint.js +50 -42
  456. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-arg-parser.js +2 -2
  457. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-commands.js +21 -8
  458. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-output.d.ts +2 -1
  459. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-output.js +12 -1
  460. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-subcommands.d.ts +1 -1
  461. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-subcommands.js +40 -37
  462. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli.js +1468 -535
  463. package/packages/omo-codex/plugin/components/ulw-loop/dist/codex-goal-instruction.d.ts +2 -0
  464. package/packages/omo-codex/plugin/components/ulw-loop/dist/codex-goal-instruction.js +28 -8
  465. package/packages/omo-codex/plugin/components/ulw-loop/dist/codex-goal-snapshot.d.ts +2 -5
  466. package/packages/omo-codex/plugin/components/ulw-loop/dist/codex-goal-snapshot.js +24 -20
  467. package/packages/omo-codex/plugin/components/ulw-loop/dist/constants.d.ts +1 -0
  468. package/packages/omo-codex/plugin/components/ulw-loop/dist/constants.js +1 -0
  469. package/packages/omo-codex/plugin/components/ulw-loop/dist/domain-types.d.ts +17 -9
  470. package/packages/omo-codex/plugin/components/ulw-loop/dist/paths.d.ts +1 -0
  471. package/packages/omo-codex/plugin/components/ulw-loop/dist/paths.js +13 -4
  472. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-io.d.ts +1 -0
  473. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-io.js +34 -4
  474. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-missing-recovery.d.ts +14 -0
  475. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-missing-recovery.js +29 -0
  476. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-aggregate.d.ts +7 -0
  477. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-aggregate.js +9 -0
  478. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-artifacts.d.ts +12 -0
  479. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-artifacts.js +104 -0
  480. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-fields.d.ts +13 -1
  481. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-fields.js +65 -9
  482. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-verdicts.js +5 -1
  483. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate.d.ts +4 -2
  484. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate.js +72 -117
  485. package/packages/omo-codex/plugin/components/ulw-loop/dist/review-blockers.d.ts +2 -0
  486. package/packages/omo-codex/plugin/components/ulw-loop/dist/review-blockers.js +16 -7
  487. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk/factory.d.ts +2 -0
  488. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk/factory.js +141 -0
  489. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk/manifest.d.ts +46 -0
  490. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk/manifest.js +28 -0
  491. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk/types.d.ts +127 -0
  492. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk/types.js +1 -0
  493. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk.d.ts +3 -0
  494. package/packages/omo-codex/plugin/components/ulw-loop/dist/sdk.js +3 -0
  495. package/packages/omo-codex/plugin/components/ulw-loop/dist/spawn-guard.d.ts +7 -1
  496. package/packages/omo-codex/plugin/components/ulw-loop/dist/spawn-guard.js +216 -33
  497. package/packages/omo-codex/plugin/components/ulw-loop/dist/spawn-role-guard.d.ts +2 -0
  498. package/packages/omo-codex/plugin/components/ulw-loop/dist/spawn-role-guard.js +22 -0
  499. package/packages/omo-codex/plugin/components/ulw-loop/dist/state-lock.d.ts +9 -0
  500. package/packages/omo-codex/plugin/components/ulw-loop/dist/state-lock.js +227 -0
  501. package/packages/omo-codex/plugin/components/ulw-loop/dist/status-next-actions.d.ts +6 -0
  502. package/packages/omo-codex/plugin/components/ulw-loop/dist/status-next-actions.js +33 -0
  503. package/packages/omo-codex/plugin/components/ulw-loop/dist/stop-resume-hook.js +20 -6
  504. package/packages/omo-codex/plugin/components/ulw-loop/dist/surface.d.ts +19 -0
  505. package/packages/omo-codex/plugin/components/ulw-loop/dist/surface.js +75 -0
  506. package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +18 -5
  507. package/packages/omo-codex/plugin/components/ulw-loop/package.json +6 -6
  508. package/packages/omo-codex/plugin/components/ulw-loop/skills/ulw-loop/SKILL.md +10 -4
  509. package/packages/omo-codex/plugin/components/ulw-loop/skills/ulw-loop/references/define-goal.md +108 -0
  510. package/packages/omo-codex/plugin/components/ulw-loop/skills/ulw-loop/references/full-workflow.md +32 -8
  511. package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint-codex-validation.ts +40 -0
  512. package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint-continuation.ts +8 -6
  513. package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint-reconciliation.ts +5 -98
  514. package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint-template.ts +134 -0
  515. package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint.ts +52 -73
  516. package/packages/omo-codex/plugin/components/ulw-loop/src/cli-arg-parser.ts +10 -4
  517. package/packages/omo-codex/plugin/components/ulw-loop/src/cli-commands.ts +24 -8
  518. package/packages/omo-codex/plugin/components/ulw-loop/src/cli-output.ts +14 -1
  519. package/packages/omo-codex/plugin/components/ulw-loop/src/cli-subcommands.ts +52 -46
  520. package/packages/omo-codex/plugin/components/ulw-loop/src/cli.ts +8 -6
  521. package/packages/omo-codex/plugin/components/ulw-loop/src/codex-goal-instruction.ts +35 -7
  522. package/packages/omo-codex/plugin/components/ulw-loop/src/codex-goal-snapshot.ts +34 -28
  523. package/packages/omo-codex/plugin/components/ulw-loop/src/codex-hook.ts +3 -1
  524. package/packages/omo-codex/plugin/components/ulw-loop/src/constants.ts +1 -0
  525. package/packages/omo-codex/plugin/components/ulw-loop/src/domain-types.ts +19 -9
  526. package/packages/omo-codex/plugin/components/ulw-loop/src/paths.ts +25 -4
  527. package/packages/omo-codex/plugin/components/ulw-loop/src/plan-io.ts +39 -4
  528. package/packages/omo-codex/plugin/components/ulw-loop/src/plan-missing-recovery.ts +38 -0
  529. package/packages/omo-codex/plugin/components/ulw-loop/src/quality-gate-aggregate.ts +11 -0
  530. package/packages/omo-codex/plugin/components/ulw-loop/src/quality-gate-artifacts.ts +123 -0
  531. package/packages/omo-codex/plugin/components/ulw-loop/src/quality-gate-fields.ts +71 -15
  532. package/packages/omo-codex/plugin/components/ulw-loop/src/quality-gate-verdicts.ts +6 -1
  533. package/packages/omo-codex/plugin/components/ulw-loop/src/quality-gate.ts +92 -136
  534. package/packages/omo-codex/plugin/components/ulw-loop/src/review-blockers.ts +29 -8
  535. package/packages/omo-codex/plugin/components/ulw-loop/src/sdk/factory.ts +183 -0
  536. package/packages/omo-codex/plugin/components/ulw-loop/src/sdk/manifest.ts +42 -0
  537. package/packages/omo-codex/plugin/components/ulw-loop/src/sdk/types.ts +140 -0
  538. package/packages/omo-codex/plugin/components/ulw-loop/src/sdk.ts +3 -0
  539. package/packages/omo-codex/plugin/components/ulw-loop/src/spawn-guard.ts +226 -31
  540. package/packages/omo-codex/plugin/components/ulw-loop/src/spawn-role-guard.ts +22 -0
  541. package/packages/omo-codex/plugin/components/ulw-loop/src/state-lock.ts +239 -0
  542. package/packages/omo-codex/plugin/components/ulw-loop/src/status-next-actions.ts +36 -0
  543. package/packages/omo-codex/plugin/components/ulw-loop/src/stop-resume-hook.ts +19 -6
  544. package/packages/omo-codex/plugin/components/ulw-loop/src/surface.ts +107 -0
  545. package/packages/omo-codex/plugin/components/ulw-loop/test/checkpoint-continuation.test.ts +0 -1
  546. package/packages/omo-codex/plugin/components/ulw-loop/test/checkpoint-final.test.ts +131 -82
  547. package/packages/omo-codex/plugin/components/ulw-loop/test/checkpoint-template.test.ts +147 -0
  548. package/packages/omo-codex/plugin/components/ulw-loop/test/checkpoint.test.ts +16 -22
  549. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-checkpoint-continuation.test.ts +4 -2
  550. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-checkpoint.test.ts +31 -2
  551. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-commands.test.ts +2 -0
  552. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-complete-goals.test.ts +3 -1
  553. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-create-goals.test.ts +35 -8
  554. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-entrypoint.test.ts +38 -4
  555. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-json-errors.test.ts +27 -0
  556. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-scope-required.test.ts +144 -0
  557. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-status-next-actions.test.ts +185 -0
  558. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-steering-batch.test.ts +8 -3
  559. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-validation-batch.test.ts +6 -0
  560. package/packages/omo-codex/plugin/components/ulw-loop/test/codex-goal-instruction.test.ts +37 -2
  561. package/packages/omo-codex/plugin/components/ulw-loop/test/codex-goal-snapshot.test.ts +52 -11
  562. package/packages/omo-codex/plugin/components/ulw-loop/test/codex-hook.test.ts +0 -3
  563. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/cli-session.ts +4 -0
  564. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/quality-gate-builder.ts +9 -4
  565. package/packages/omo-codex/plugin/components/ulw-loop/test/guided-recovery.test.ts +67 -0
  566. package/packages/omo-codex/plugin/components/ulw-loop/test/package-smoke.test.ts +5 -37
  567. package/packages/omo-codex/plugin/components/ulw-loop/test/paths.test.ts +9 -0
  568. package/packages/omo-codex/plugin/components/ulw-loop/test/plan-io-cross-process.test.ts +106 -0
  569. package/packages/omo-codex/plugin/components/ulw-loop/test/plan-io.test.ts +36 -2
  570. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-aggregate-basics.test.ts +258 -0
  571. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-cap-and-dedupe.test.ts +22 -0
  572. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-fields-messages.test.ts +98 -0
  573. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-lazycodex-surface.test.ts +93 -0
  574. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-poisoning-cascades.test.ts +97 -0
  575. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-roles.test.ts +51 -2
  576. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-senpi-surface.test.ts +131 -0
  577. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-single-report.test.ts +241 -0
  578. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate.test.ts +58 -3
  579. package/packages/omo-codex/plugin/components/ulw-loop/test/review-blockers.test.ts +9 -7
  580. package/packages/omo-codex/plugin/components/ulw-loop/test/sdk-contract.test.ts +137 -0
  581. package/packages/omo-codex/plugin/components/ulw-loop/test/sdk-driver-states.test.ts +145 -0
  582. package/packages/omo-codex/plugin/components/ulw-loop/test/sdk-session-context.test.ts +148 -0
  583. package/packages/omo-codex/plugin/components/ulw-loop/test/spawn-guard.test.ts +450 -7
  584. package/packages/omo-codex/plugin/components/ulw-loop/test/spawn-role-matrix.test.ts +113 -0
  585. package/packages/omo-codex/plugin/components/ulw-loop/test/state-lock.test.ts +218 -0
  586. package/packages/omo-codex/plugin/components/ulw-loop/test/steering.test.ts +8 -5
  587. package/packages/omo-codex/plugin/components/ulw-loop/test/stop-resume-hook.test.ts +1 -1
  588. package/packages/omo-codex/plugin/components/ulw-loop/test/surface.test.ts +74 -0
  589. package/packages/omo-codex/plugin/components/ulw-loop/test/ultrawork-directive.test.ts +13 -8
  590. package/packages/omo-codex/plugin/components/ulw-loop/vitest.config.ts +1 -0
  591. package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
  592. package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
  593. package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
  594. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
  595. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
  596. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
  597. package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
  598. package/packages/omo-codex/plugin/hooks/post-tool-use-recording-spawn-admission.json +18 -0
  599. package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
  600. package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
  601. package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
  602. package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
  603. package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
  604. package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +1 -1
  605. package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +1 -1
  606. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-execute-continuation.json +17 -0
  607. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-loop-resume.json +1 -1
  608. package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +1 -1
  609. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +1 -1
  610. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +1 -1
  611. package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +1 -1
  612. package/packages/omo-codex/plugin/model-catalog.json +16 -7
  613. package/packages/omo-codex/plugin/package-lock.json +676 -524
  614. package/packages/omo-codex/plugin/package.json +2 -3
  615. package/packages/omo-codex/plugin/scripts/AGENTS.md +39 -0
  616. package/packages/omo-codex/plugin/scripts/auto-update-plan.mjs +1 -2
  617. package/packages/omo-codex/plugin/scripts/auto-update.mjs +0 -9
  618. package/packages/omo-codex/plugin/scripts/canonical-ultrawork-directive.mjs +17 -0
  619. package/packages/omo-codex/plugin/scripts/hook-status-message.mjs +0 -1
  620. package/packages/omo-codex/plugin/scripts/migrate-codex-config/catalog.mjs +16 -7
  621. package/packages/omo-codex/plugin/scripts/migrate-codex-config/multi-agent-v2-guard.mjs +8 -4
  622. package/packages/omo-codex/plugin/scripts/migrate-codex-config/subagent-limit-guard.mjs +19 -90
  623. package/packages/omo-codex/plugin/scripts/migrate-codex-config/toml-section-editor.mjs +1 -1
  624. package/packages/omo-codex/plugin/scripts/sync-skills.mjs +96 -57
  625. package/packages/omo-codex/plugin/shared/package.json +3 -4
  626. package/packages/omo-codex/plugin/shared/src/config-loader.ts +2 -102
  627. package/packages/omo-codex/plugin/shared/src/config-migration.ts +0 -1
  628. package/packages/omo-codex/plugin/shared/test/config-loader.test.ts +41 -130
  629. package/packages/omo-codex/plugin/skills/ast-grep/AGENTS.md +51 -0
  630. package/packages/omo-codex/plugin/skills/ast-grep/SKILL.md +1 -1
  631. package/packages/omo-codex/plugin/skills/coding-agent-sessions/AGENTS.md +62 -0
  632. package/packages/omo-codex/plugin/skills/coding-agent-sessions/SKILL.md +1 -1
  633. package/packages/omo-codex/plugin/skills/data-scientist/SKILL.md +99 -239
  634. package/packages/omo-codex/plugin/skills/data-scientist/references/execution-surfaces.md +91 -0
  635. package/packages/omo-codex/plugin/skills/data-scientist/references/placement.md +74 -0
  636. package/packages/omo-codex/plugin/skills/data-scientist/references/polars-lane.md +95 -0
  637. package/packages/omo-codex/plugin/skills/data-scientist/references/uv-setup.md +1 -1
  638. package/packages/omo-codex/plugin/skills/data-scientist/references/visualization.md +64 -0
  639. package/packages/omo-codex/plugin/skills/data-scientist/scripts/ensure-js-deps.sh +28 -0
  640. package/packages/omo-codex/plugin/skills/data-scientist/scripts/ensure-py-deps.sh +37 -0
  641. package/packages/omo-codex/plugin/skills/debugging/SKILL.md +3 -1
  642. package/packages/omo-codex/plugin/skills/debugging/references/methodology/00-setup.md +12 -0
  643. package/packages/omo-codex/plugin/skills/debugging/references/methodology/02-investigate.md +21 -0
  644. package/packages/omo-codex/plugin/skills/debugging/references/runtimes/go.md +15 -1
  645. package/packages/omo-codex/plugin/skills/debugging/references/runtimes/native-binary.md +38 -0
  646. package/packages/omo-codex/plugin/skills/debugging/references/runtimes/node.md +25 -0
  647. package/packages/omo-codex/plugin/skills/debugging/references/runtimes/python.md +13 -0
  648. package/packages/omo-codex/plugin/skills/debugging/references/runtimes/rust.md +41 -0
  649. package/packages/omo-codex/plugin/skills/debugging/references/scripts/dap.mjs +267 -0
  650. package/packages/omo-codex/plugin/skills/debugging/references/scripts/fixture-adapter.mjs +59 -0
  651. package/packages/omo-codex/plugin/skills/debugging/references/tools/dap.md +103 -0
  652. package/packages/omo-codex/plugin/skills/debugging/references/tools/frida.md +193 -0
  653. package/packages/omo-codex/plugin/skills/frontend/ATTRIBUTION.md +10 -0
  654. package/packages/omo-codex/plugin/skills/frontend/SKILL.md +15 -8
  655. package/packages/omo-codex/plugin/skills/frontend/references/design/README.md +10 -2
  656. package/packages/omo-codex/plugin/skills/frontend/references/design/_INDEX.md +2 -0
  657. package/packages/omo-codex/plugin/skills/frontend/references/design/ambience-skill.md +145 -0
  658. package/packages/omo-codex/plugin/skills/frontend/references/design/interaction-skill.md +2 -0
  659. package/packages/omo-codex/plugin/skills/frontend/references/design/print-paged-media.md +76 -0
  660. package/packages/omo-codex/plugin/skills/frontend/references/design/stylegallery.md +80 -0
  661. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/README.md +1 -1
  662. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/lane-a-direction.md +1 -1
  663. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/lane-b-execution.md +11 -11
  664. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/lane-d-memory.md +3 -3
  665. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/orchestration.md +1 -1
  666. package/packages/omo-codex/plugin/skills/frontend/references/designpowers/routing.md +5 -5
  667. package/packages/omo-codex/plugin/skills/git-master/SKILL.md +1 -1
  668. package/packages/omo-codex/plugin/skills/init-deep/SKILL.md +20 -18
  669. package/packages/omo-codex/plugin/skills/lcx-doctor/SKILL.md +4 -2
  670. package/packages/omo-codex/plugin/skills/lsp-setup/SKILL.md +1 -1
  671. package/packages/omo-codex/plugin/skills/programming/SKILL.md +1 -1
  672. package/packages/omo-codex/plugin/skills/refactor/SKILL.md +10 -8
  673. package/packages/omo-codex/plugin/skills/remove-ai-slops/SKILL.md +7 -5
  674. package/packages/omo-codex/plugin/skills/review-work/SKILL.md +116 -424
  675. package/packages/omo-codex/plugin/skills/ultimate-browsing/ATTRIBUTION.md +38 -11
  676. package/packages/omo-codex/plugin/skills/ultimate-browsing/SKILL.md +26 -9
  677. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/AGENTS.md +110 -0
  678. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/templates/package.json +1 -1
  679. package/packages/omo-codex/plugin/skills/ultimate-browsing/references/chrome-stealth.md +23 -18
  680. package/packages/omo-codex/plugin/skills/ultimate-browsing/references/insane-search/README.md +9 -2
  681. package/packages/omo-codex/plugin/skills/ultrawork/SKILL.md +46 -24
  682. package/packages/omo-codex/plugin/skills/{start-work → ulw-execute}/SKILL.md +31 -33
  683. package/packages/omo-codex/plugin/skills/ulw-execute/agents/openai.yaml +2 -0
  684. package/packages/omo-codex/plugin/skills/ulw-loop/SKILL.md +34 -4
  685. package/packages/omo-codex/plugin/skills/ulw-loop/references/define-goal.md +108 -0
  686. package/packages/omo-codex/plugin/skills/ulw-loop/references/full-workflow.md +32 -8
  687. package/packages/omo-codex/plugin/skills/ulw-plan/SKILL.md +6 -7
  688. package/packages/omo-codex/plugin/skills/ulw-plan/references/full-workflow.md +31 -7
  689. package/packages/omo-codex/plugin/skills/ulw-plan/references/intent-clear.md +2 -1
  690. package/packages/omo-codex/plugin/skills/ulw-plan/references/intent-unclear.md +5 -5
  691. package/packages/omo-codex/plugin/skills/ulw-research/SKILL.md +14 -7
  692. package/packages/omo-codex/plugin/skills/visual-qa/AGENTS.md +58 -0
  693. package/packages/omo-codex/plugin/skills/visual-qa/SKILL.md +10 -7
  694. package/packages/omo-codex/plugin/test/AGENTS.md +47 -0
  695. package/packages/omo-codex/plugin/test/aggregate-agents.test.mjs +19 -173
  696. package/packages/omo-codex/plugin/test/aggregate-hooks.test.mjs +16 -51
  697. package/packages/omo-codex/plugin/test/aggregate-manifest.test.mjs +2 -3
  698. package/packages/omo-codex/plugin/test/aggregate-mcp.test.mjs +2 -7
  699. package/packages/omo-codex/plugin/test/aggregate-model-catalog.test.mjs +14 -4
  700. package/packages/omo-codex/plugin/test/aggregate-plugin-fixture.mjs +175 -13
  701. package/packages/omo-codex/plugin/test/aggregate.test.mjs +78 -2
  702. package/packages/omo-codex/plugin/test/auto-update-release-notes.test.mjs +19 -33
  703. package/packages/omo-codex/plugin/test/auto-update.test.mjs +4 -29
  704. package/packages/omo-codex/plugin/test/bootstrap-default-role.test.mjs +66 -0
  705. package/packages/omo-codex/plugin/test/bootstrap-setup.test.mjs +0 -31
  706. package/packages/omo-codex/plugin/test/canonical-ultrawork-directive.test.mjs +53 -0
  707. package/packages/omo-codex/plugin/test/component-bin-names.test.mjs +2 -2
  708. package/packages/omo-codex/plugin/test/component-bundled-cli.test.mjs +1 -51
  709. package/packages/omo-codex/plugin/test/component-hook-contract-cases.mjs +100 -2
  710. package/packages/omo-codex/plugin/test/hook-status-message.test.mjs +5 -6
  711. package/packages/omo-codex/plugin/test/lcx-contribute-bug-fix-template.test.mjs +21 -27
  712. package/packages/omo-codex/plugin/test/mcp-research-servers.test.mjs +1 -3
  713. package/packages/omo-codex/plugin/test/migrate-codex-config.test.mjs +35 -35
  714. package/packages/omo-codex/plugin/test/multi-agent-v2-regression.test.mjs +1 -1
  715. package/packages/omo-codex/plugin/test/scaffold-plan.test.mjs +0 -36
  716. package/packages/omo-codex/plugin/test/subagent-limit-migration.test.mjs +107 -15
  717. package/packages/omo-codex/plugin/test/sync-skills-codex-compatibility.test.mjs +168 -0
  718. package/packages/omo-codex/plugin/test/sync-skills-test-support.mjs +54 -24
  719. package/packages/omo-codex/plugin/test/sync-skills.test.mjs +18 -119
  720. package/packages/omo-codex/plugin/test/teammode-archive-ambiguity.test.mjs +0 -40
  721. package/packages/omo-codex/plugin/test/teammode-communication.test.mjs +6 -62
  722. package/packages/omo-codex/plugin/test/teammode-thread-links.test.mjs +3 -36
  723. package/packages/omo-codex/plugin/test/teammode-transport.test.mjs +0 -44
  724. package/packages/omo-codex/plugin/test/teammode-worktree.test.mjs +2 -6
  725. package/packages/omo-codex/plugin/test/ultrawork-skill-pointer.test.mjs +5 -5
  726. package/packages/omo-codex/plugin/test/ulw-plan-review-state-contract.test.mjs +0 -3
  727. package/packages/omo-codex/scripts/AGENTS.md +36 -0
  728. package/packages/omo-codex/scripts/check-model-catalog-parity.mjs +42 -0
  729. package/packages/omo-codex/scripts/install-cache-copy.test.mjs +27 -1
  730. package/packages/omo-codex/scripts/install-config-autonomous-features.test.mjs +1 -1
  731. package/packages/omo-codex/scripts/install-config-autonomous.test.mjs +2 -1
  732. package/packages/omo-codex/scripts/install-config-git-bash.test.mjs +0 -23
  733. package/packages/omo-codex/scripts/install-config-reasoning.test.mjs +5 -5
  734. package/packages/omo-codex/scripts/install-config.test.mjs +15 -17
  735. package/packages/omo-codex/scripts/install-dist/install-local.mjs +9652 -1394
  736. package/packages/omo-codex/scripts/install-generated-bundle.test.mjs +3 -4
  737. package/packages/omo-codex/scripts/install-git-bash-mcp-env.test.mjs +1 -25
  738. package/packages/omo-codex/scripts/install-lazycodex-version-stamp.test.mjs +7 -2
  739. package/packages/omo-codex/scripts/install-mcp-runtime.test.mjs +0 -36
  740. package/packages/omo-codex/scripts/install-packaged-local.test.mjs +1 -6
  741. package/packages/{omo-codex/plugin/components/ultrawork/skills/ultrawork/SKILL.md → prompts-core/prompts/ultrawork/codex.md} +46 -31
  742. package/packages/shared-skills/package.json +7 -1
  743. package/packages/shared-skills/skill-source-filter.d.ts +16 -0
  744. package/packages/shared-skills/skill-source-filter.mjs +44 -0
  745. package/packages/shared-skills/skills/ast-grep/AGENTS.md +51 -0
  746. package/packages/shared-skills/skills/ast-grep/SKILL.md +1 -1
  747. package/packages/shared-skills/skills/coding-agent-sessions/AGENTS.md +62 -0
  748. package/packages/shared-skills/skills/coding-agent-sessions/SKILL.md +1 -1
  749. package/packages/shared-skills/skills/data-scientist/SKILL.md +99 -239
  750. package/packages/shared-skills/skills/data-scientist/references/execution-surfaces.md +91 -0
  751. package/packages/shared-skills/skills/data-scientist/references/placement.md +74 -0
  752. package/packages/shared-skills/skills/data-scientist/references/polars-lane.md +95 -0
  753. package/packages/shared-skills/skills/data-scientist/references/uv-setup.md +1 -1
  754. package/packages/shared-skills/skills/data-scientist/references/visualization.md +64 -0
  755. package/packages/shared-skills/skills/data-scientist/scripts/ensure-js-deps.sh +28 -0
  756. package/packages/shared-skills/skills/data-scientist/scripts/ensure-py-deps.sh +37 -0
  757. package/packages/shared-skills/skills/debugging/SKILL.md +3 -1
  758. package/packages/shared-skills/skills/debugging/references/methodology/00-setup.md +12 -0
  759. package/packages/shared-skills/skills/debugging/references/methodology/02-investigate.md +21 -0
  760. package/packages/shared-skills/skills/debugging/references/runtimes/go.md +15 -1
  761. package/packages/shared-skills/skills/debugging/references/runtimes/native-binary.md +38 -0
  762. package/packages/shared-skills/skills/debugging/references/runtimes/node.md +25 -0
  763. package/packages/shared-skills/skills/debugging/references/runtimes/python.md +13 -0
  764. package/packages/shared-skills/skills/debugging/references/runtimes/rust.md +41 -0
  765. package/packages/shared-skills/skills/debugging/references/scripts/dap.mjs +267 -0
  766. package/packages/shared-skills/skills/debugging/references/scripts/dap.test.ts +86 -0
  767. package/packages/shared-skills/skills/debugging/references/scripts/fixture-adapter.mjs +59 -0
  768. package/packages/shared-skills/skills/debugging/references/tools/dap.md +103 -0
  769. package/packages/shared-skills/skills/debugging/references/tools/frida.md +193 -0
  770. package/packages/shared-skills/skills/frontend/ATTRIBUTION.md +10 -0
  771. package/packages/shared-skills/skills/frontend/SKILL.md +15 -8
  772. package/packages/shared-skills/skills/frontend/references/design/README.md +10 -2
  773. package/packages/shared-skills/skills/frontend/references/design/_INDEX.md +2 -0
  774. package/packages/shared-skills/skills/frontend/references/design/ambience-skill.md +145 -0
  775. package/packages/shared-skills/skills/frontend/references/design/interaction-skill.md +2 -0
  776. package/packages/shared-skills/skills/frontend/references/design/print-paged-media.md +76 -0
  777. package/packages/shared-skills/skills/frontend/references/design/stylegallery.md +80 -0
  778. package/packages/shared-skills/skills/frontend/references/designpowers/README.md +1 -1
  779. package/packages/shared-skills/skills/frontend/references/designpowers/lane-a-direction.md +1 -1
  780. package/packages/shared-skills/skills/frontend/references/designpowers/lane-b-execution.md +11 -11
  781. package/packages/shared-skills/skills/frontend/references/designpowers/lane-d-memory.md +3 -3
  782. package/packages/shared-skills/skills/frontend/references/designpowers/orchestration.md +1 -1
  783. package/packages/shared-skills/skills/frontend/references/designpowers/routing.md +5 -5
  784. package/packages/shared-skills/skills/git-master/SKILL.md +1 -1
  785. package/packages/shared-skills/skills/init-deep/SKILL.md +14 -14
  786. package/packages/shared-skills/skills/lsp-setup/SKILL.md +1 -1
  787. package/packages/shared-skills/skills/programming/SKILL.md +1 -1
  788. package/packages/shared-skills/skills/refactor/SKILL.md +4 -4
  789. package/packages/shared-skills/skills/remove-ai-slops/SKILL.md +1 -1
  790. package/packages/shared-skills/skills/review-work/SKILL.md +101 -419
  791. package/packages/shared-skills/skills/ultimate-browsing/ATTRIBUTION.md +38 -11
  792. package/packages/shared-skills/skills/ultimate-browsing/SKILL.md +26 -9
  793. package/packages/shared-skills/skills/ultimate-browsing/engine/AGENTS.md +110 -0
  794. package/packages/shared-skills/skills/ultimate-browsing/engine/templates/package.json +1 -1
  795. package/packages/shared-skills/skills/ultimate-browsing/references/chrome-stealth.md +23 -18
  796. package/packages/shared-skills/skills/ultimate-browsing/references/insane-search/README.md +9 -2
  797. package/packages/shared-skills/skills/{start-work → ulw-execute}/SKILL.md +20 -19
  798. package/packages/shared-skills/skills/ulw-plan/SKILL.md +7 -8
  799. package/packages/shared-skills/skills/ulw-plan/references/full-workflow.md +31 -7
  800. package/packages/shared-skills/skills/ulw-plan/references/intent-clear.md +2 -1
  801. package/packages/shared-skills/skills/ulw-plan/references/intent-unclear.md +5 -5
  802. package/packages/shared-skills/skills/ulw-plan/scripts/scaffold-plan.mjs +1 -1
  803. package/packages/shared-skills/skills/ulw-research/SKILL.md +8 -3
  804. package/packages/shared-skills/skills/visual-qa/AGENTS.md +58 -0
  805. package/packages/shared-skills/skills/visual-qa/SKILL.md +4 -3
  806. package/postinstall.mjs +2 -0
  807. package/script/qa/web-terminal-visual-qa.mjs +2 -0
  808. package/script/qa/xterm-live-terminal.mjs +18 -2
  809. package/dist/config/schema/codegraph.d.ts +0 -12
  810. package/dist/config/schema/start-work.d.ts +0 -5
  811. package/dist/features/builtin-commands/templates/start-work.d.ts +0 -1
  812. package/dist/features/builtin-skills/index.d.ts +0 -1
  813. package/dist/features/builtin-skills/skill-file-loader.d.ts +0 -1
  814. package/dist/features/builtin-skills/skills/agent-browser-skill.d.ts +0 -1
  815. package/dist/features/builtin-skills/skills/agent-browser-template.d.ts +0 -1
  816. package/dist/features/builtin-skills/skills/debugging.d.ts +0 -1
  817. package/dist/features/builtin-skills/skills/dev-browser.d.ts +0 -1
  818. package/dist/features/builtin-skills/skills/frontend.d.ts +0 -1
  819. package/dist/features/builtin-skills/skills/git-master-sections/commit-atomic-planning.d.ts +0 -1
  820. package/dist/features/builtin-skills/skills/git-master-sections/commit-context-analysis.d.ts +0 -1
  821. package/dist/features/builtin-skills/skills/git-master-sections/commit-execution-verification.d.ts +0 -1
  822. package/dist/features/builtin-skills/skills/git-master-sections/commit-workflow.d.ts +0 -1
  823. package/dist/features/builtin-skills/skills/git-master-sections/history-search-workflow.d.ts +0 -1
  824. package/dist/features/builtin-skills/skills/git-master-sections/overview.d.ts +0 -1
  825. package/dist/features/builtin-skills/skills/git-master-sections/quick-reference.d.ts +0 -1
  826. package/dist/features/builtin-skills/skills/git-master-sections/rebase-workflow.d.ts +0 -1
  827. package/dist/features/builtin-skills/skills/git-master-skill-metadata.d.ts +0 -1
  828. package/dist/features/builtin-skills/skills/git-master.d.ts +0 -1
  829. package/dist/features/builtin-skills/skills/index.d.ts +0 -1
  830. package/dist/features/builtin-skills/skills/init-deep.d.ts +0 -1
  831. package/dist/features/builtin-skills/skills/playwright-cli.d.ts +0 -1
  832. package/dist/features/builtin-skills/skills/playwright-mcp-skill.d.ts +0 -1
  833. package/dist/features/builtin-skills/skills/playwright.d.ts +0 -1
  834. package/dist/features/builtin-skills/skills/remove-ai-slops.d.ts +0 -1
  835. package/dist/features/builtin-skills/skills/review-work.d.ts +0 -1
  836. package/dist/features/builtin-skills/skills/security-research.d.ts +0 -1
  837. package/dist/features/builtin-skills/skills/security-review.d.ts +0 -1
  838. package/dist/features/builtin-skills/skills/team-mode.d.ts +0 -1
  839. package/dist/features/builtin-skills/skills/visual-qa.d.ts +0 -1
  840. package/dist/features/builtin-skills/skills.d.ts +0 -1
  841. package/dist/features/builtin-skills/types.d.ts +0 -1
  842. package/dist/features/claude-code-plugin-loader/agent-loader.d.ts +0 -1
  843. package/dist/features/claude-code-plugin-loader/command-loader.d.ts +0 -1
  844. package/dist/features/claude-code-plugin-loader/discovery-core.d.ts +0 -1
  845. package/dist/features/claude-code-plugin-loader/discovery-paths.d.ts +0 -1
  846. package/dist/features/claude-code-plugin-loader/discovery.d.ts +0 -1
  847. package/dist/features/claude-code-plugin-loader/hook-loader.d.ts +0 -1
  848. package/dist/features/claude-code-plugin-loader/index.d.ts +0 -1
  849. package/dist/features/claude-code-plugin-loader/install-path-resolver.d.ts +0 -1
  850. package/dist/features/claude-code-plugin-loader/installed-plugin-database.d.ts +0 -1
  851. package/dist/features/claude-code-plugin-loader/loaded-plugin.d.ts +0 -1
  852. package/dist/features/claude-code-plugin-loader/loader.d.ts +0 -1
  853. package/dist/features/claude-code-plugin-loader/mcp-server-loader.d.ts +0 -1
  854. package/dist/features/claude-code-plugin-loader/plugin-key.d.ts +0 -1
  855. package/dist/features/claude-code-plugin-loader/plugin-manifest.d.ts +0 -1
  856. package/dist/features/claude-code-plugin-loader/plugin-path-resolver.d.ts +0 -1
  857. package/dist/features/claude-code-plugin-loader/plugin-settings.d.ts +0 -1
  858. package/dist/features/claude-code-plugin-loader/scope-filter.d.ts +0 -1
  859. package/dist/features/claude-code-plugin-loader/skill-loader.d.ts +0 -1
  860. package/dist/features/claude-code-plugin-loader/types.d.ts +0 -1
  861. package/dist/hooks/codegraph-bootstrap/command-runner.d.ts +0 -17
  862. package/dist/hooks/codegraph-bootstrap/hook.d.ts +0 -35
  863. package/dist/hooks/codegraph-bootstrap/index.d.ts +0 -1
  864. package/dist/hooks/codegraph-bootstrap/project-root.d.ts +0 -1
  865. package/dist/hooks/codegraph-bootstrap/status.d.ts +0 -11
  866. package/dist/hooks/ralph-loop/completion-promise-detector-test-input.d.ts +0 -11
  867. package/dist/hooks/ralph-loop/loop-session-recovery.d.ts +0 -7
  868. package/dist/hooks/start-work/start-work-hook.d.ts +0 -23
  869. package/dist/mcp/codegraph.d.ts +0 -16
  870. package/dist/plugin/chat-message/start-work-message.d.ts +0 -5
  871. package/dist/shared/prompt-async-gate/message-inspection-error.d.ts +0 -1
  872. package/dist/shared/prompt-async-gate/pending-tool-turn.d.ts +0 -1
  873. package/dist/shared/prompt-async-gate/prompt-message-state.d.ts +0 -1
  874. package/dist/shared/prompt-async-gate/queue.d.ts +0 -1
  875. package/dist/shared/prompt-async-gate/recent-dispatches.d.ts +0 -1
  876. package/dist/shared/prompt-async-gate/reservations.d.ts +0 -1
  877. package/dist/shared/prompt-async-gate/semantic-dedupe.d.ts +0 -1
  878. package/dist/shared/prompt-async-gate/session-idle-dispatch.d.ts +0 -1
  879. package/dist/shared/prompt-async-gate/timing.d.ts +0 -1
  880. package/dist/shared/prompt-async-gate/types.d.ts +0 -1
  881. package/dist/skills/data-scientist/references/common-scenarios.md +0 -176
  882. package/dist/skills/data-scientist/references/execution-templates.md +0 -197
  883. package/dist/skills/data-scientist/references/integration-patterns.md +0 -153
  884. package/dist/skills/data-scientist/references/performance-benchmarks.md +0 -37
  885. package/dist/tools/call-omo-agent/background-agent-executor.d.ts +0 -5
  886. package/dist/tools/call-omo-agent/message-storage-directory.d.ts +0 -1
  887. package/dist/tools/delegate-task/anthropic-categories.d.ts +0 -2
  888. package/dist/tools/delegate-task/model-string-parser.d.ts +0 -1
  889. package/packages/lsp-tools-mcp/dist/lsp/cleanup-errors.d.ts +0 -1
  890. package/packages/lsp-tools-mcp/dist/lsp/constants.d.ts +0 -1
  891. package/packages/lsp-tools-mcp/dist/lsp/language-mappings.d.ts +0 -1
  892. package/packages/lsp-tools-mcp/dist/lsp/process-signal-cleanup.d.ts +0 -1
  893. package/packages/lsp-tools-mcp/dist/missing-dependency-result.d.ts +0 -1
  894. package/packages/omo-codex/plugin/components/codegraph/AGENTS.md +0 -58
  895. package/packages/omo-codex/plugin/components/codegraph/NODE-RUNTIME-LICENSES.md +0 -2951
  896. package/packages/omo-codex/plugin/components/codegraph/NOTICE +0 -16
  897. package/packages/omo-codex/plugin/components/codegraph/dist/cli.js +0 -12149
  898. package/packages/omo-codex/plugin/components/codegraph/dist/serve.js +0 -9747
  899. package/packages/omo-codex/plugin/components/codegraph/package.json +0 -33
  900. package/packages/omo-codex/plugin/components/codegraph/src/cache-gc.ts +0 -29
  901. package/packages/omo-codex/plugin/components/codegraph/src/cli.ts +0 -79
  902. package/packages/omo-codex/plugin/components/codegraph/src/hook-input.ts +0 -33
  903. package/packages/omo-codex/plugin/components/codegraph/src/hook-sweep.ts +0 -25
  904. package/packages/omo-codex/plugin/components/codegraph/src/hook-types.ts +0 -131
  905. package/packages/omo-codex/plugin/components/codegraph/src/hook.ts +0 -258
  906. package/packages/omo-codex/plugin/components/codegraph/src/mcp-bridge.ts +0 -309
  907. package/packages/omo-codex/plugin/components/codegraph/src/mcp-unavailable.ts +0 -80
  908. package/packages/omo-codex/plugin/components/codegraph/src/post-tool-use-hook.ts +0 -34
  909. package/packages/omo-codex/plugin/components/codegraph/src/serve-invocation.ts +0 -29
  910. package/packages/omo-codex/plugin/components/codegraph/src/serve.ts +0 -263
  911. package/packages/omo-codex/plugin/components/codegraph/src/session-start-command.ts +0 -106
  912. package/packages/omo-codex/plugin/components/codegraph/src/session-start-cooldown.ts +0 -145
  913. package/packages/omo-codex/plugin/components/codegraph/src/session-start-hook-runtime.ts +0 -21
  914. package/packages/omo-codex/plugin/components/codegraph/src/session-start-lock.ts +0 -139
  915. package/packages/omo-codex/plugin/components/codegraph/src/session-start-outcome.ts +0 -15
  916. package/packages/omo-codex/plugin/components/codegraph/src/session-start-paths.ts +0 -32
  917. package/packages/omo-codex/plugin/components/codegraph/src/session-start-project.ts +0 -109
  918. package/packages/omo-codex/plugin/components/codegraph/src/session-start-worker-result.ts +0 -148
  919. package/packages/omo-codex/plugin/components/codegraph/src/session-start-worker.ts +0 -175
  920. package/packages/omo-codex/plugin/components/codegraph/src/sweep-cli.ts +0 -81
  921. package/packages/omo-codex/plugin/components/codegraph/test/cache-gc.test.ts +0 -34
  922. package/packages/omo-codex/plugin/components/codegraph/test/hook-exclusion.test.ts +0 -112
  923. package/packages/omo-codex/plugin/components/codegraph/test/hook-registration.test.ts +0 -26
  924. package/packages/omo-codex/plugin/components/codegraph/test/hook-session-start-guard.test.ts +0 -160
  925. package/packages/omo-codex/plugin/components/codegraph/test/hook-store-upgrade.test.ts +0 -50
  926. package/packages/omo-codex/plugin/components/codegraph/test/hook-sweep.test.ts +0 -29
  927. package/packages/omo-codex/plugin/components/codegraph/test/hook.test.ts +0 -320
  928. package/packages/omo-codex/plugin/components/codegraph/test/mcp-bridge-fixtures.ts +0 -172
  929. package/packages/omo-codex/plugin/components/codegraph/test/package-runtime.test.ts +0 -91
  930. package/packages/omo-codex/plugin/components/codegraph/test/provisioned-node-guard.test.ts +0 -100
  931. package/packages/omo-codex/plugin/components/codegraph/test/serve-built-wrapper.test.ts +0 -76
  932. package/packages/omo-codex/plugin/components/codegraph/test/serve-mcp-bridge-lifecycle.test.ts +0 -133
  933. package/packages/omo-codex/plugin/components/codegraph/test/serve-mcp-bridge.test.ts +0 -245
  934. package/packages/omo-codex/plugin/components/codegraph/test/serve-mcp-facade.test.ts +0 -69
  935. package/packages/omo-codex/plugin/components/codegraph/test/serve-node-support.test.ts +0 -43
  936. package/packages/omo-codex/plugin/components/codegraph/test/serve-provision.test.ts +0 -147
  937. package/packages/omo-codex/plugin/components/codegraph/test/serve-unavailable.test.ts +0 -175
  938. package/packages/omo-codex/plugin/components/codegraph/test/serve.test.ts +0 -385
  939. package/packages/omo-codex/plugin/components/codegraph/test/session-start-node-support.test.ts +0 -206
  940. package/packages/omo-codex/plugin/components/codegraph/test/session-start-project.test.ts +0 -58
  941. package/packages/omo-codex/plugin/components/codegraph/test/session-start-state.test.ts +0 -104
  942. package/packages/omo-codex/plugin/components/codegraph/test/session-start-trust-boundary.test.ts +0 -65
  943. package/packages/omo-codex/plugin/components/codegraph/test/session-start-worker-availability.test.ts +0 -106
  944. package/packages/omo-codex/plugin/components/codegraph/test/session-start-worker-cooldown.test.ts +0 -116
  945. package/packages/omo-codex/plugin/components/codegraph/test/session-start-worker-flow.test.ts +0 -258
  946. package/packages/omo-codex/plugin/components/codegraph/test/sweep-cli.test.ts +0 -56
  947. package/packages/omo-codex/plugin/components/codegraph/tsconfig.build.json +0 -13
  948. package/packages/omo-codex/plugin/components/codegraph/tsconfig.json +0 -25
  949. package/packages/omo-codex/plugin/components/start-work-continuation/LICENSE +0 -21
  950. package/packages/omo-codex/plugin/components/start-work-continuation/hooks/hooks.json +0 -28
  951. package/packages/omo-codex/plugin/components/ultrawork/directive.md +0 -471
  952. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-codegraph-init-guidance.json +0 -18
  953. package/packages/omo-codex/plugin/hooks/session-start-checking-codegraph-bootstrap.json +0 -17
  954. package/packages/omo-codex/plugin/hooks/stop-checking-start-work-continuation.json +0 -17
  955. package/packages/omo-codex/plugin/hooks/subagent-stop-checking-start-work-continuation.json +0 -17
  956. package/packages/omo-codex/plugin/scripts/migrate-omo-sot/editor.mjs +0 -125
  957. package/packages/omo-codex/plugin/scripts/migrate-omo-sot/jsonc.mjs +0 -43
  958. package/packages/omo-codex/plugin/scripts/migrate-omo-sot/scaffold.mjs +0 -29
  959. package/packages/omo-codex/plugin/scripts/migrate-omo-sot.mjs +0 -121
  960. package/packages/omo-codex/plugin/skills/data-scientist/references/common-scenarios.md +0 -176
  961. package/packages/omo-codex/plugin/skills/data-scientist/references/execution-templates.md +0 -197
  962. package/packages/omo-codex/plugin/skills/data-scientist/references/integration-patterns.md +0 -153
  963. package/packages/omo-codex/plugin/skills/data-scientist/references/performance-benchmarks.md +0 -37
  964. package/packages/omo-codex/plugin/skills/start-work/agents/openai.yaml +0 -2
  965. package/packages/omo-codex/plugin/test/aggregate-skills.test.mjs +0 -92
  966. package/packages/omo-codex/plugin/test/component-codegraph-mcp-smoke.test.mjs +0 -76
  967. package/packages/omo-codex/plugin/test/migrate-omo-sot.test.mjs +0 -179
  968. package/packages/omo-codex/plugin/test/sync-skills-orchestration.test.mjs +0 -314
  969. package/packages/omo-codex/plugin/test/ulw-plan-scope-contract.test.mjs +0 -24
  970. package/packages/shared-skills/skills/data-scientist/references/common-scenarios.md +0 -176
  971. package/packages/shared-skills/skills/data-scientist/references/execution-templates.md +0 -197
  972. package/packages/shared-skills/skills/data-scientist/references/integration-patterns.md +0 -153
  973. package/packages/shared-skills/skills/data-scientist/references/performance-benchmarks.md +0 -37
  974. /package/dist/hooks/{start-work → ulw-execute}/context-info-formatters.d.ts +0 -0
  975. /package/dist/hooks/{start-work → ulw-execute}/explicit-plan-context.d.ts +0 -0
  976. /package/dist/hooks/{start-work → ulw-execute}/notepad-scaffold.d.ts +0 -0
  977. /package/dist/hooks/{start-work → ulw-execute}/parse-user-request.d.ts +0 -0
  978. /package/dist/hooks/{start-work → ulw-execute}/plan-discovery-context.d.ts +0 -0
  979. /package/dist/hooks/{start-work → ulw-execute}/plan-selection.d.ts +0 -0
  980. /package/dist/hooks/{start-work → ulw-execute}/session-plan-affinity.d.ts +0 -0
  981. /package/dist/hooks/{start-work → ulw-execute}/work-initializer.d.ts +0 -0
  982. /package/dist/hooks/{start-work → ulw-execute}/worktree-block.d.ts +0 -0
  983. /package/dist/hooks/{start-work → ulw-execute}/worktree-detector.d.ts +0 -0
  984. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/.gitattributes +0 -0
  985. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/CHANGELOG.md +0 -0
  986. /package/packages/omo-codex/plugin/components/{codegraph → ulw-execute-continuation}/LICENSE +0 -0
  987. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/src/plan-checklist.ts +0 -0
  988. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/boulder-completed.json +0 -0
  989. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/boulder-mixed-platforms.json +0 -0
  990. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/boulder-single-codex-work.json +0 -0
  991. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/plan-all-done.md +0 -0
  992. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/plan-scaffold.md +0 -0
  993. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/plan-with-nested-checkboxes.md +0 -0
  994. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/test/fixtures/plan-with-unchecked.md +0 -0
  995. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/tsconfig.build.json +0 -0
  996. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/tsconfig.json +0 -0
  997. /package/packages/omo-codex/plugin/components/{start-work-continuation → ulw-execute-continuation}/vitest.config.ts +0 -0
@@ -1,19 +1,46 @@
1
1
  # ATTRIBUTION / NOTICE
2
2
 
3
3
  This skill (`ultimate-browsing`, part of `@oh-my-opencode/shared-skills`) ships
4
- project-original content plus two third-party tools that it installs at runtime
5
- (it does NOT vendor their source). Each runtime tool's license and required
6
- notices are reproduced below.
4
+ project-original content, one vendored-and-modified upstream engine, plus two
5
+ third-party tools that it installs at runtime (it does NOT vendor their source).
6
+ Each component's provenance, license, and required notices are reproduced below.
7
7
 
8
8
  ---
9
9
 
10
- ## 1. Project-original content (no third-party source vendored)
10
+ ## 1. insane-search engine — vendored upstream snapshot, modified
11
+
12
+ `engine/**` originates from the **insane-search** project and is NOT
13
+ project-original code, despite being heavily modified since import.
14
+
15
+ - Upstream source: https://github.com/fivetaku/insane-search
16
+ - Vendored into this repository on 2026-06-21 by commit
17
+ **`a4e4ed797`** (`feat(ultimate-browsing): vendor insane-search engine (junk-excluded)`),
18
+ via an explicit file whitelist that excluded caches and smoke-test junk.
19
+ - Baseline: the upstream state as of that date, a **pre-0.7.0 snapshot**.
20
+ Upstream's CHANGELOG dates 0.7.0 to 2026-06-22; imported files carry no
21
+ version marker. We have never re-vendored since; the tree has diverged in
22
+ both directions.
23
+ - Modifications by this project (non-exhaustive): de-personalization
24
+ (`4743199a5`), the Phase 2.5 surrogate retrieval stage and surrogate registry,
25
+ the provenance/trust result contract, the `bias_check.py` no-site-name CI gate,
26
+ module split of the fetch chain, and the Python test suite under
27
+ `engine/tests/`.
28
+ - No upstream `LICENSE` file was included in the vendored snapshot, so this
29
+ repository has no upstream license text to reproduce here. Do not infer
30
+ project-original licensing from that absence; treat `engine/**` as
31
+ upstream-derived when reasoning about provenance.
32
+
33
+ The binding version policy — which upstream baseline we sit on, why we stay
34
+ pinned, what a future re-vendor must preserve, and what it must not import — is
35
+ [`engine/AGENTS.md` §UPSTREAM BASELINE AND VERSION POLICY](engine/AGENTS.md).
36
+
37
+ ---
38
+
39
+ ## 2. Project-original content (no third-party source vendored)
11
40
 
12
41
  The following are authored by the oh-my-openagent project and carry no third-party
13
42
  license obligation:
14
43
 
15
- - `engine/**` — the insane-search Tier-1 fetch engine (curl_cffi grid, WAF
16
- detection, Playwright fallback templates, `bias_check.py` no-site-name gate).
17
44
  - `references/insane-search/**` and `references/agent-reach/**` — the Tier-1 and
18
45
  Tier-1.5 reference docs.
19
46
  - `scripts/extract_cookies.py`, `scripts/cookie_paths.py`, `scripts/cookie_crypto.py`
@@ -26,13 +53,13 @@ user installs separately; this skill includes none of their source.
26
53
 
27
54
  ---
28
55
 
29
- ## 2. CloakBrowser (CloakHQ) — Tier-2 stealth Chromium (runtime dependency)
56
+ ## 3. CloakBrowser (CloakHQ) — Tier-2 stealth Chromium (runtime dependency)
30
57
 
31
58
  The Tier-2 stealth browser is **CloakBrowser**, installed at runtime via `pip`
32
59
  (`pip install cloakbrowser`). No CloakBrowser source is vendored in this repository.
33
60
 
34
61
  - Source: https://github.com/CloakHQ/CloakBrowser
35
- - Pinned runtime version: **0.4.10** (documented in `references/chrome-stealth.md`;
62
+ - Pinned runtime version: **0.5.7** (documented in `references/chrome-stealth.md`;
36
63
  this is a documented version string, not an automated drift check).
37
64
  - Wrapper source license: MIT License.
38
65
  - Binary license: the compiled CloakBrowser Chromium binary downloaded by
@@ -73,13 +100,13 @@ SOFTWARE.
73
100
 
74
101
  ---
75
102
 
76
- ## 3. agent-browser (vercel-labs) — Tier-2 CDP automation CLI (runtime dependency)
103
+ ## 4. agent-browser (vercel-labs) — Tier-2 CDP automation CLI (runtime dependency)
77
104
 
78
105
  The Tier-2 automation CLI is **agent-browser**, installed at runtime via `npm`
79
- (`npm i -g agent-browser`). No agent-browser source is vendored in this repository.
106
+ (`bun add -g agent-browser`). No agent-browser source is vendored in this repository.
80
107
 
81
108
  - Source: https://github.com/vercel-labs/agent-browser
82
- - Pinned runtime version: **0.31.1** (documented in `references/chrome-stealth.md`;
109
+ - Pinned runtime version: **0.34.0** (documented in `references/chrome-stealth.md`;
83
110
  documented version string, no automated drift check).
84
111
  - Licensed under the Apache License, Version 2.0 (the "License"); you may not use
85
112
  these files except in compliance with the License. You may obtain a copy of the
@@ -1,13 +1,13 @@
1
1
  ---
2
2
  name: ultimate-browsing
3
- description: "Escalation skill for blocked or hard-to-reach web access — load it when a normal browse/fetch is blocked (WAF, 403, Cloudflare, JS-only render, login-gated, or a platform a generic fetcher cannot read). Tiered router: TIER 1 insane-search (headless extraction + WAF bypass via curl_cffi TLS impersonation, yt-dlp, Jina Reader, public APIs, Playwright real-Chrome fallback); TIER 1.5 agent-reach (platform-native readers for Chinese and social platforms: Xiaohongshu, Douyin, Weibo, Bilibili, V2EX, WeChat, plus Twitter/Reddit/LinkedIn/GitHub); TIER 2 Chrome stealth (CloakBrowser stealth Chromium + agent-browser CDP for clicks, forms, screenshots, video, cookie login). Triggers: blocked site, bypass bot detection, cloudflare/WAF bypass, scrape, stealth browser, import cookies, fill form, screenshot, play youtube, xiaohongshu, douyin, weibo, bilibili, v2ex, wechat article, podcast transcript. NOT for simple searches (use web-search) or plain fetches (use webfetch)."
3
+ description: "Reaches web pages a plain fetch cannot: renders JS, drives clicks and forms, captures screenshots, holds a login, and gets past WAF blocks through platform-native readers and stealth Chrome. Use for any page work beyond retrieving static text."
4
4
  ---
5
5
 
6
6
  # Ultimate Browsing
7
7
 
8
- Escalation web access for tasks a normal browse or fetch cannot complete. Reach for this skill the moment a page is blocked (WAF / 403 / Cloudflare), needs JS rendering, hides behind a login, or lives on a platform a generic fetcher cannot read. Escalate only when the cheaper tier cannot do the job:
8
+ Web access for everything a plain fetch cannot finish: a page that renders in JS, a click or a form, a screenshot, a login that must persist across pages, or a host that blocks generic fetchers (WAF / 403 / Cloudflare). Start at the cheapest tier that can do the job and climb only when it cannot:
9
9
 
10
- **Tier 1 — insane-search** (headless extraction + WAF bypass) -> **Tier 1.5 — agent-reach** (platform-native APIs, esp. Chinese platforms) -> **Tier 2 — Chrome stealth** (real interaction via CloakBrowser + agent-browser).
10
+ **Tier 1 — insane-search** (headless extraction + WAF bypass) -> **Tier 1.5 — agent-reach** (platform-native APIs, esp. Chinese platforms) -> **Tier 2 — a real browser**: 2a a code-driven kernel browser, 2b Chrome stealth (CloakBrowser + agent-browser) when the page fights back.
11
11
 
12
12
  ## PHASE 0 — ROUTE FIRST (MANDATORY)
13
13
 
@@ -23,11 +23,11 @@ User request
23
23
  +- podcast transcript / stock forum ----------------- TIER 1.5 agent-reach
24
24
  +- Twitter feed / LinkedIn profile / GitHub via CLI - TIER 1.5 agent-reach
25
25
  |
26
- +- Tier 1/1.5 returned empty or partial ------------- TIER 2 Chrome stealth
27
- +- click / fill form / scroll / interact ------------ TIER 2 Chrome stealth
28
- +- screenshot / render / play video ----------------- TIER 2 Chrome stealth
29
- +- login session across pages / inject cookies ------ TIER 2 Chrome stealth
30
- +- test web app / QA / dogfood ---------------------- TIER 2 Chrome stealth
26
+ +- Tier 1/1.5 returned empty or partial ------------- TIER 2 2a kernel browser -> 2b stealth
27
+ +- click / fill form / scroll / interact ------------ TIER 2 2a kernel browser -> 2b stealth
28
+ +- screenshot / render / play video ----------------- TIER 2 2a kernel browser -> 2b stealth
29
+ +- login session across pages / inject cookies ------ TIER 2 2b Chrome stealth (profile + cookies)
30
+ +- test web app / QA / dogfood ---------------------- TIER 2 2a kernel browser -> 2b stealth
31
31
  |
32
32
  +- simple search query ------------------------------ NOT this skill (use web-search)
33
33
  ```
@@ -80,12 +80,29 @@ curl -s "https://www.v2ex.com/api/topics/hot.json" # V2EX public API
80
80
 
81
81
  Routing table, per-platform auth (set `TWITTER_*` env vars, `gh auth login`, a transcription key — only if you have access), rate-limit notes, and known version quirks are in [references/agent-reach/README.md](references/agent-reach/README.md).
82
82
 
83
- ## Tier 2 — Chrome stealth (real interaction)
83
+ ## Tier 2 — a real browser (real interaction)
84
84
 
85
85
  **When**: real interaction is needed (clicks, forms, screenshots, video, persistent login), or Tier 1/1.5 failed.
86
86
 
87
+ ### Tier 2a — kernel browser (default)
88
+
89
+ Drive the page from the code cell you are already in, with no CLI process and no open CDP port. On a Bun >= 1.4 runtime that is `new Bun.WebView()` (`navigate`, `click`, `type`, `evaluate`, `screenshot`, raw `cdp`); elsewhere it is `playwright-core`/`puppeteer-core` against the local Chrome. Snapshots and screenshots come back in-process, so this is the cheapest way to answer "what does the page actually render".
90
+
91
+ ```js
92
+ await using view = new Bun.WebView({ width: 1280, height: 800 })
93
+ await view.navigate(url)
94
+ const title = await view.evaluate("document.title")
95
+ await view.screenshot({ path: "/tmp/page.png" })
96
+ ```
97
+
98
+ Climb to 2b when the site detects automation (Turnstile, FingerprintJS, "unusual traffic"), when the flow needs a persistent logged-in profile or injected cookies, or when the kernel browser cannot reach the page at all.
99
+
100
+ ### Tier 2b — Chrome stealth (blocked or logged-in pages)
101
+
87
102
  CloakBrowser is a stealth Chromium with source-level fingerprint patches that passes Cloudflare Turnstile, FingerprintJS, BrowserScan, and 30+ detectors; agent-browser is the CDP automation CLI that drives it. Both are runtime-installed tools (not vendored here). Full setup, version pins, launch flow, cookie login, and cross-platform notes are in [references/chrome-stealth.md](references/chrome-stealth.md).
88
103
 
104
+ NEVER clear cookies, cache, or site data (`Network.clearBrowserCookies`, `Storage.clearCookies`, `chrome.browsingData.remove`, "clear browsing data") on the user's real/main browser profile — it wipes their logged-in state everywhere. If the task needs that profile's login state, clone the profile directory first (`rsync -a <profile>/ <tmp-clone>/`) and launch CloakBrowser / agent-browser with the clone as the user-data-dir; run any clearing on the clone only.
105
+
89
106
  ```bash
90
107
  # 1. Launch CloakBrowser with CDP on :9242 (see chrome-stealth.md for install + venv).
91
108
  # 2. CloakBrowser launches tabless — open the first tab via CDP before any agent-browser command:
@@ -2,6 +2,116 @@
2
2
 
3
3
  **Generated:** 2026-08-10 / 38d268995
4
4
 
5
+ ## UPSTREAM BASELINE AND VERSION POLICY
6
+
7
+ **READ THIS BEFORE TOUCHING `engine/**` OR PROPOSING AN UPSTREAM SYNC.**
8
+
9
+ This engine is NOT project-original code. It is a vendored-and-modified snapshot of
10
+ [fivetaku/insane-search](https://github.com/fivetaku/insane-search), and the version
11
+ we run on is a deliberate choice, not an accident of neglect.
12
+
13
+ ### The pin
14
+
15
+ | Fact | Value |
16
+ |---|---|
17
+ | Upstream project | `https://github.com/fivetaku/insane-search` |
18
+ | Vendoring commit | `a4e4ed797` (2026-06-21) `feat(ultimate-browsing): vendor insane-search engine (junk-excluded)` |
19
+ | De-personalization | `4743199a5` (2026-06-21) |
20
+ | Pinned upstream baseline | upstream state as of 2026-06-21, **pre-0.7.0** (0.7.0 is dated 2026-06-22) |
21
+ | Re-vendors since | none — every later change here is ours |
22
+
23
+ We intentionally track a **pinned baseline plus local divergence**, not upstream HEAD.
24
+ There is no submodule and no automated drift check for this engine (unlike the
25
+ `frontend` skill's upstream submodules): the vendored files ARE the source of truth,
26
+ and upstream is a reference we port FROM, deliberately, file by file.
27
+
28
+ ### Why we do not blind-rebase onto upstream HEAD
29
+
30
+ 1. **Upstream reset its public history.** On 2026-08-06 upstream published a single
31
+ squashed commit, `019ee16 refactor: reset public history at 0.14.0`, discarding the
32
+ prior public history through 0.13.x. There is no upstream commit graph to rebase onto and no
33
+ way to cherry-pick an individual upstream change by sha — only whole-file diffing
34
+ against a moving HEAD.
35
+ 2. **Upstream 0.14.0 REMOVED capability.** The endpoint-mining / internal-API
36
+ auto-derivation / site-recipe subsystems that upstream carried publicly between
37
+ 0.12.0 and 0.14.0 are gone from upstream HEAD. Syncing to HEAD is therefore not
38
+ strictly an upgrade: parts of it are a downgrade relative to the intermediate
39
+ versions, and none of it is recoverable from the reset history.
40
+ 3. **Our tree diverged on purpose.** The KEEP list below is functionality upstream
41
+ never had. A wholesale overwrite with upstream HEAD would silently delete it.
42
+ 4. **Different threat model.** Our engine ships inside a published npm package and a
43
+ public marketplace mirror, under a CI no-site-name gate and a de-personalization
44
+ deny-list. Upstream carries neither constraint, so upstream code is not
45
+ drop-in-shippable here.
46
+
47
+ ### KEEP — our divergences a re-vendor MUST NOT regress
48
+
49
+ These exist only in our tree. Any upstream sync that removes or bypasses one of them
50
+ is a regression, not an upgrade:
51
+
52
+ - **Phase 2.5 surrogate retrieval** (`surrogate.py`, `surrogates.yaml`) — archive /
53
+ reader / proxy routes tried before paying for a browser spin-up, with per-entry
54
+ `last_verified` staleness handling and `--allow-proxy` gating.
55
+ - **Provenance / trust contract** (`result_schema.py`) — `Provenance` and `Trust`
56
+ literals on every result, so a snapshot can never be reported as the live page.
57
+ - **Surrogate dead-end validation** (L1.5 in `validators.py`) — interstitial titles and
58
+ AMP-style redirect stubs rejected instead of returned as content.
59
+ - **The no-site-name rule and its CI gate** (`bias_check.py`) — zero hard-coded site
60
+ names, brands, or target domains in `engine/**`.
61
+ - **Module split of the fetch chain** — `curl_probe` / `referers` / `url_transforms` /
62
+ `waf_detector` / `validators` / `executor` / `summary` as separate modules rather than
63
+ one monolith.
64
+ - **The Python test suite** under `engine/tests/` with its HTML/JSON fixtures.
65
+ - **De-personalization** — no personal absolute paths, no personal auth token literals,
66
+ no personal browser choice; enforced by `depersonalization-gate.test.ts`.
67
+ - **Skill-level layering** — the engine is Tier 1 under a router that also owns Tier 1.5
68
+ (agent-reach) and Tier 2 (CloakBrowser + agent-browser). Upstream has no such tiering.
69
+
70
+ ### WANT — upstream improvements worth porting forward
71
+
72
+ Our snapshot predates these; they are wanted, and each must be ported as a reviewed,
73
+ site-agnostic change that preserves every KEEP item above. Port individually; never as
74
+ a tree overwrite:
75
+
76
+ - **Content quality**: dedicated markdown conversion of fetched HTML, main-content
77
+ extraction, PDF text extraction, and JSON-LD rescue when the HTML body is thin.
78
+ - **Transient-failure retry** and **render-merge** of statically fetched HTML with the
79
+ browser-rendered DOM.
80
+ - **Differential block classification** — distinguishing a bot-detection block from an
81
+ infrastructure or authentication failure, instead of collapsing both into `challenge`.
82
+ - **Additional stealth fetch backends** beyond the current Playwright templates, and
83
+ additional WAF vendor profiles.
84
+ - **Per-host route learning** — remembering which route succeeded for a host, with a TTL
85
+ and a bounded store. Must stay runtime state, never committed site knowledge (R4).
86
+ - **Engine-level Phase 0 routing** — the official-public-API preference is currently only
87
+ a documented rule (R5) the agent can skip; upstream moved it into code so it cannot be
88
+ skipped. Worth adopting.
89
+
90
+ ### OUT OF SCOPE
91
+
92
+ - **The removed upstream endpoint-mining / internal-API auto-derivation / site-recipe
93
+ subsystems.** They are absent from upstream HEAD and are not reconstructed here. They
94
+ also sit against R3/R4 and R7's anti-bias rule: discovered internal endpoints are
95
+ runtime findings, never committed engine knowledge.
96
+ - **Any upstream code carrying site-specific selectors, domains, or brand names.** It
97
+ fails `bias_check.py` at the door; re-derive it site-agnostically or leave it out.
98
+ - **Automated upstream tracking.** No submodule, no drift check, no auto-bump. Syncing is
99
+ a deliberate, reviewed, human-initiated act.
100
+
101
+ ### THE SYNC RULE
102
+
103
+ Any future upstream sync preserves BOTH sides. Concretely:
104
+
105
+ 1. Diff the specific upstream capability you want against our tree — do not overwrite
106
+ files wholesale, and never `git checkout` upstream over `engine/`.
107
+ 2. Port it as its own reviewed change, keeping every KEEP item intact.
108
+ 3. Re-run `python3 engine/bias_check.py` and the `engine/tests/` suite; a port that
109
+ introduces a site name or breaks a fixture does not ship.
110
+ 4. Update the pin table above (baseline, date, what was ported) in the same change, plus
111
+ the provenance section of [`../ATTRIBUTION.md`](../ATTRIBUTION.md).
112
+ 5. If a port must drop a KEEP item, say so explicitly in the PR and get it agreed first —
113
+ silent regressions of the KEEP list are the failure mode this policy exists to prevent.
114
+
5
115
  ## OVERVIEW
6
116
 
7
117
  A 17-module Python package embedded in the `ultimate-browsing` skill: a site-agnostic fetch chain that escalates from a cheap curl probe to a real browser, with declarative WAF and surrogate registries. Not "optional scripts" — it has its own CLI entry (`python3 -m engine URL`), two YAML config schemas, a 4-file test suite, and a standalone CI guard. Package exports (`__init__.py`): `fetch`, `FetchResult`, `Attempt`, `Verdict`, `ValidationResult`, `validate`, `CHALLENGE_MARKERS`, `detect`, `TRANSFORMS`, `apply_transform`.
@@ -4,7 +4,7 @@
4
4
  "private": true,
5
5
  "description": "Local deps for Playwright real-Chrome templates. npm install && npx playwright install chrome",
6
6
  "dependencies": {
7
- "playwright": "^1.61.1",
7
+ "playwright": "^1.62.1",
8
8
  "playwright-extra": "^4.3.6",
9
9
  "puppeteer-extra-plugin-stealth": "^2.11.2"
10
10
  }
@@ -2,8 +2,8 @@
2
2
 
3
3
  Real interaction (clicks, forms, screenshots, video, persistent login) for pages that defeat Tier 1/1.5. Two runtime tools, both installed on demand — neither is vendored in this skill:
4
4
 
5
- - **CloakBrowser** (`pip`) — stealth Chromium with source-level C++ fingerprint patches. The Python wrapper source is MIT; the downloaded Chromium binary is covered by CloakBrowser's separate binary license and is not redistributed by this package. Passes Cloudflare Turnstile, FingerprintJS, BrowserScan, and 30+ detectors. Pin **0.5.5**.
6
- - **agent-browser** (`npm`, Apache-2.0) — native CDP automation CLI that drives CloakBrowser. AX-tree snapshots, `@eN` refs, click/fill/type/scroll, screenshots, video, cookie/state/session management. Pin **0.33.2**.
5
+ - **CloakBrowser** (`pip`) — stealth Chromium with source-level C++ fingerprint patches. The Python wrapper source is MIT; the downloaded Chromium binary is covered by CloakBrowser's separate binary license and is not redistributed by this package. Passes Cloudflare Turnstile, FingerprintJS, BrowserScan, and 30+ detectors. Pin **0.5.7**.
6
+ - **agent-browser** (`npm`, Apache-2.0) — native CDP automation CLI that drives CloakBrowser. AX-tree snapshots, `@eN` refs, click/fill/type/scroll, screenshots, video, cookie/state/session management. Pin **0.34.0**.
7
7
 
8
8
  ```
9
9
  CloakBrowser (stealth Chromium) <- CDP port 9242 -> agent-browser CLI
@@ -17,30 +17,35 @@ CloakBrowser (stealth Chromium) <- CDP port 9242 -> agent-browser CLI
17
17
 
18
18
  CloakBrowser runs in a dedicated Python venv. Cross-platform: macOS, Linux, and Windows all supported by both tools (use the venv path convention for your OS).
19
19
 
20
+ The venv lives at a fixed path so every session reuses one stealth-Chromium download instead of creating a new venv per working directory, and every command below calls its interpreter by absolute path — no `activate` step to forget.
21
+
20
22
  ```bash
21
- # CloakBrowser (MIT wrapper source; separate binary license, pin 0.5.5):
22
- uv venv .cloak-venv --python 3.13
23
- # macOS/Linux: source .cloak-venv/bin/activate Windows: .cloak-venv\Scripts\activate
24
- uv pip install "cloakbrowser==0.5.5"
25
- python -c "import cloakbrowser; cloakbrowser.ensure_binary()" # downloads stealth Chromium on first import
26
-
27
- # agent-browser (Apache-2.0, pin 0.33.2):
28
- npm i -g agent-browser@0.33.2 && agent-browser install
29
- agent-browser --version # 0.33.2
23
+ # CloakBrowser (MIT wrapper source; separate binary license, pin 0.5.7):
24
+ VENV="$HOME/.agents/cloak-venv" # Windows: %USERPROFILE%\.agents\cloak-venv
25
+ uv venv "$VENV" --python 3.13
26
+ uv pip install --python "$VENV/bin/python" "cloakbrowser==0.5.7"
27
+ "$VENV/bin/python" -c "import cloakbrowser; cloakbrowser.ensure_binary()" # downloads stealth Chromium on first import
28
+
29
+ # agent-browser (Apache-2.0, pin 0.34.0):
30
+ bun add -g agent-browser@0.34.0 && agent-browser install
31
+ agent-browser --version # 0.34.0
30
32
  ```
31
33
 
32
34
  Verify CloakBrowser:
33
35
 
34
36
  ```bash
35
- python -c "import cloakbrowser; print(cloakbrowser.__version__, cloakbrowser.CHROMIUM_VERSION, cloakbrowser.binary_info()['installed'])"
36
- # -> 0.5.5 <chromium-version> True
37
+ "$VENV/bin/python" -c "import cloakbrowser; print(cloakbrowser.__version__, cloakbrowser.CHROMIUM_VERSION, cloakbrowser.binary_info()['installed'])"
38
+ # -> 0.5.7 <chromium-version> True
37
39
  ```
38
40
 
39
41
  ## Launch + drive
40
42
 
43
+ NEVER clear cookies, cache, or site data (`Network.clearBrowserCookies`, `Storage.clearCookies`, `chrome.browsingData.remove`, "clear browsing data") on the user's real/main browser profile — it wipes their logged-in state everywhere. If you need that profile's login state, clone it first (`rsync -a <profile>/ <tmp-clone>/`) and launch with the clone as the user-data-dir; run any clearing on the clone only.
44
+
41
45
  ```bash
42
- # 1. Launch CloakBrowser with CDP on :9242 (background). With the venv active:
43
- python -c "import asyncio,cloakbrowser; asyncio.run(cloakbrowser.launch_async(headless=False, stealth_args=True, args=['--remote-debugging-port=9242']))" &
46
+ # 1. Launch CloakBrowser with CDP on :9242 (background). cloakbrowser lives only in the venv,
47
+ # so call its interpreter by absolute path — this works in any shell, activated or not:
48
+ "$HOME/.agents/cloak-venv/bin/python" -c "import asyncio,cloakbrowser; asyncio.run(cloakbrowser.launch_async(headless=False, stealth_args=True, args=['--remote-debugging-port=9242']))" &
44
49
 
45
50
  # 2. CloakBrowser launches tabless -> agent-browser would say "No page found".
46
51
  # Open the first tab via CDP before any agent-browser command:
@@ -76,7 +81,7 @@ agent-browser skills list # everything available on the installed
76
81
  agent-browser --cdp 9242 eval 'navigator.webdriver' # must print false
77
82
  ```
78
83
 
79
- Verified 2026-07 with CloakBrowser 0.5.5 + agent-browser 0.33.2: `navigator.webdriver` reads the boolean false with no init-script, bot.sannysoft.com all-green, browserscan.net "Normal" (15/15), nowsecure.nl Turnstile bypassed.
84
+ Verified 2026-07 with CloakBrowser 0.5.7 + agent-browser 0.34.0: `navigator.webdriver` reads the boolean false with no init-script, bot.sannysoft.com all-green, browserscan.net "Normal" (15/15), nowsecure.nl Turnstile bypassed.
80
85
 
81
86
  > **agent-browser 0.33.x behavior note:** the daemon now defaults to a 1-hour idle timeout (saves restore state, closes the browser, exits after 1 h of no commands). Set `AGENT_BROWSER_IDLE_TIMEOUT_MS=0` to restore the old always-persist behavior. External WebSocket stream consumers see latest-wins frame delivery; `record` (CDP) and the dashboard are unaffected.
82
87
 
@@ -117,6 +122,6 @@ lsof -ti:9242 | xargs kill -9
117
122
  # agent-browser can't connect:
118
123
  curl -s http://127.0.0.1:9242/json/version | head -5 # empty -> CloakBrowser not running
119
124
  # Update either tool:
120
- uv pip install --upgrade "cloakbrowser==0.5.5" && python -c "import cloakbrowser; cloakbrowser.ensure_binary()"
121
- npm i -g agent-browser@0.33.2
125
+ uv pip install --python "$HOME/.agents/cloak-venv/bin/python" --upgrade "cloakbrowser==0.5.7" && "$HOME/.agents/cloak-venv/bin/python" -c "import cloakbrowser; cloakbrowser.ensure_binary()"
126
+ bun add -g agent-browser@0.34.0
122
127
  ```
@@ -16,7 +16,8 @@
16
16
  1. WebFetch, 즉흥 curl, 수동 헤더 조합 **시도 금지**
17
17
  2. 즉시 다음을 실행:
18
18
  ```bash
19
- python3 -m engine "<URL>" [--selector "<CSS>"] [--device auto|desktop|mobile] [--trace]
19
+ python3 -m engine "<URL>" [--selector "<CSS>"] [--device auto|desktop|mobile] [--trace] \
20
+ [--no-retry] [--no-extract]
20
21
  ```
21
22
  3. 종료코드 0(ok) 또는 1(fail) 받은 뒤 판단. trace를 먼저 읽고 재시도 결정.
22
23
  4. 실패 시에만 `--trace --json`으로 재호출해서 원인 진단 후 `--device` 또는 `user_hint` 조정.
@@ -135,7 +136,13 @@ result = fetch(
135
136
 
136
137
  if result.ok:
137
138
  print(result.verdict) # strong_ok | weak_ok
138
- html = result.content
139
+ html = result.content # raw body — 단, content-rescue가 발동한 경우 구조 텍스트
140
+ # v0.10.0 content-rescue: PDF 응답은 pypdf 추출 텍스트, visible text가 얇은
141
+ # SPA 셸은 JSON-LD articleBody / 렌더된 innerText로 대체될 수 있다.
142
+ # result.extraction_source로 판별: "raw"(원문 그대로) | pdf | json_ld | *+inner_text.
143
+ # 일반 HTML 성공은 항상 raw. 끄기: enable_extraction=False / --no-extract.
144
+ # 429/502/503/504는 probe에서 백오프 재시도(Retry-After 반영, 총 10초 캡);
145
+ # 끄기: enable_retry=False / --no-retry.
139
146
  else:
140
147
  # Phase 3 수동 개입 (Playwright MCP) 필요 — result.trace로 원인 진단
141
148
  pass
@@ -53,8 +53,8 @@ first-class for CLI- or data-shaped work; self-review recorded in the
53
53
  notepad instead of the reviewer loop.
54
54
  HEAVY — anything a fact above names: 3+ success criteria (happy,
55
55
  edge, regression, adversarial risk), each with its own channel
56
- scenario and both evidence pieces; reviewer loop until unconditional
57
- approval.
56
+ scenario and both evidence pieces; when the verification gate is
57
+ triggered, run the reviewer loop until unconditional approval.
58
58
 
59
59
  # Manual-QA channels
60
60
  Run real-surface proof yourself through the channel that faithfully
@@ -73,7 +73,13 @@ exercises the surface; capture the artifact.
73
73
  if Chrome is not available, download and use agent-browser
74
74
  (https://github.com/vercel-labs/agent-browser). Capture action
75
75
  log + screenshot path. Never downgrade to a non-browser surface
76
- for a browser-facing criterion.
76
+ for a browser-facing criterion. NEVER clear cookies, cache, or
77
+ site data (`Network.clearBrowserCookies`, `Storage.clearCookies`,
78
+ `chrome.browsingData.remove`, "clear browsing data") on the user's
79
+ real/main browser profile — it wipes their logged-in state. If you
80
+ need that profile's login state, clone it first (`rsync -a
81
+ <profile>/ <tmp-clone>/`) and launch Chrome / agent-browser against
82
+ the clone as the user-data-dir; run any clearing there only.
77
83
  4. Computer use — when the surface is a desktop/GUI app rather than a
78
84
  page, drive it via OS-level automation (a computer-use agent,
79
85
  AppleScript, xdotool, etc.) against the running app; capture
@@ -133,6 +139,12 @@ exactly `objective`; do not include `status`. Only when no goal tool
133
139
  exists on this surface, open your reply with a `# Goal` block treated
134
140
  as binding. Goals are unlimited; never invent a numeric budget or
135
141
  limit.
142
+ Check `get_goal` first: continue a matching active goal instead of
143
+ duplicating one; surface a conflicting one. Write the objective
144
+ outcome-first: the concrete thing that will be TRUE when done (an
145
+ outcome, never an activity), the named deliverable surfaces, and
146
+ explicit scope bounds — a vague objective produces vague criteria,
147
+ and vague criteria cannot be proven.
136
148
  The criteria MUST list, upfront:
137
149
  - The user-visible deliverable in one line, and the tier with its
138
150
  justification.
@@ -224,8 +236,8 @@ and utility functions to batch commands and reduce output. Keep direct calls
224
236
  when one result chooses the next action, outputs are already small, semantic
225
237
  judgment is required between calls, approval or side effects are involved,
226
238
  or native artifacts / citations must be preserved.
227
- - Architecture / flow / blast radius → `codegraph_explore` first when
228
- `codegraph_*` exists; if unavailable, continue with repo tools and LSP.
239
+ - Architecture / flow / blast radius → explore agents plus LSP references
240
+ and impact; do not guess from conventions.
229
241
  - **SYMBOLS REQUIRE LSP** — definitions, references, rename impact,
230
242
  workspace symbols, and diagnostics use the available `lsp_*` tools, not
231
243
  text search. Run diagnostics after edits and treat errors as blocking.
@@ -335,17 +347,26 @@ make the child continue old parent context instead of the delegated task.
335
347
  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.
336
348
 
337
349
  # TOML-backed subagent routing compatibility
338
- Installed role TOMLs (`~/.codex/agents/`) bind ONLY via `agent_type`.
339
- `multi_agent_v1.spawn_agent` exposes `agent_type`; the deployed
340
- `multi_agent_v2` `collaboration.spawn_agent` schema does NOT (verified
341
- 2026-07-11: only `fork_turns`, `message`, `task_name`). On a v2 surface,
342
- omit `agent_type`, describe the role and difficulty tier inside
343
- `message`, and expect the session model for children. Difficulty tiers
344
- when `agent_type` IS exposed: low -> `lazycodex-worker-low`
345
- (gpt-5.6-luna/high), medium -> `lazycodex-worker-medium`
346
- (gpt-5.6-luna/max), high -> `lazycodex-worker-high` (gpt-5.6-sol/max);
347
- explorer/librarian carry their own TOMLs (gpt-5.6-luna/low). Difficulty
348
- (model power) is orthogonal to LIGHT/HEAVY rigor (process size).
350
+ Inspect the ACTUAL spawn tool schema, not a version or namespace assumption.
351
+ When `agent_type` is exposed (V1 or V2), EVERY spawn MUST pass an exact
352
+ LazyCodex role: `explorer`, `librarian`, `plan`, `metis`, `momus`,
353
+ `lazycodex-worker-low`, `lazycodex-worker-medium`, `lazycodex-worker-high`,
354
+ `lazycodex-code-reviewer`, `lazycodex-qa-executor`, `lazycodex-gate-reviewer`,
355
+ or `lazycodex-clone-fidelity-reviewer`. Map implementation difficulty to
356
+ worker low/medium/high; their installed TOMLs supply model and instructions.
357
+ Never select generic `worker`/`default` or describe a role instead of selecting it.
358
+ Use `fork_turns: "none"` on V2 or `fork_context: false` on V1 unless full
359
+ history is deliberately required; even a deliberate fork MUST name its role.
360
+
361
+ Legacy-schema exception: ONLY when `agent_type` is absent, omit that unsupported
362
+ field and carry the role, difficulty, and complete instructions in `message`;
363
+ explicitly disable history. This cannot select a specialized TOML. The managed
364
+ `default` supplies the medium worker for unnamed non-forks, unless opted out or
365
+ blocked by a preserved user default. The spawn guard cannot see the schema and
366
+ rejects unnamed requests: report incompatible routing, do not retry generically.
367
+ An unnamed full-history fork skips role application inside Codex; no LazyCodex
368
+ config can fix that upstream gap. Never claim this path has been repaired.
369
+ Difficulty (model power) is orthogonal to LIGHT/HEAVY rigor (process size).
349
370
 
350
371
  Treat child status as a progress signal, not a timeout counter. For
351
372
  work likely to exceed one wait cycle, tell the child to send
@@ -380,16 +401,17 @@ BLOCKED: <reason>`. After four silent or ack-only checks, close the lane as
380
401
  inconclusive, record that it is not approval, and respawn smaller only
381
402
  if the deliverable is still required.
382
403
 
383
- # Verification gate (TRIGGERED, NOT OPTIONAL)
404
+ # Verification gate (TRIGGERED ONLY ON EXPLICIT DEMAND)
384
405
 
385
- Trigger when ANY apply:
386
- - Tier is HEAVY.
387
- - User demanded strict, rigorous, or proper review.
388
- LIGHT tier records a self-review in the notepad instead: re-read the
389
- diff, run diagnostics, confirm each criterion's evidence, and state in
390
- one line why the tier held.
406
+ Trigger ONLY when the user explicitly demanded strict, rigorous, proper,
407
+ or high-accuracy review of this work, in any language (for example,
408
+ 고정밀 or 엄격). The tier alone never triggers the gate. HEAVY without
409
+ such a demand records the same self-review as LIGHT.
410
+ LIGHT and non-triggered HEAVY work records a self-review in the notepad
411
+ instead: re-read the diff, run diagnostics, confirm each criterion's
412
+ evidence, and state in one line why the tier held.
391
413
 
392
- Procedure (NON-NEGOTIABLE):
414
+ When triggered, follow this procedure (NON-NEGOTIABLE):
393
415
  1. Spawn a child with `fork_context: false` and a self-contained reviewer
394
416
  assignment in `message`. The `multi_agent_v1.spawn_agent` schema cannot select a
395
417
  TOML-backed reviewer role, so paste the reviewer requirements into