oh-my-opencode 5.1.48 → 5.1.54

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 (1312) hide show
  1. package/dist/agents/atlas/agent.d.ts +5 -5
  2. package/dist/agents/dynamic-agent-core-sections.d.ts +0 -1
  3. package/dist/agents/dynamic-agent-prompt-builder.d.ts +1 -1
  4. package/dist/agents/gpt-apply-patch-guard.d.ts +0 -1
  5. package/dist/agents/hephaestus/agent.d.ts +3 -7
  6. package/dist/agents/hephaestus/model-support.d.ts +6 -0
  7. package/dist/agents/metis.d.ts +0 -15
  8. package/dist/agents/native-model-prompt.d.ts +9 -0
  9. package/dist/agents/native-prompt-frame.d.ts +20 -0
  10. package/dist/agents/native-tool-snippet.d.ts +6 -0
  11. package/dist/agents/refusal-rule.d.ts +7 -0
  12. package/dist/agents/sisyphus/default.d.ts +0 -1
  13. package/dist/agents/sisyphus-agent-factory.d.ts +2 -11
  14. package/dist/agents/sisyphus-junior/agent.d.ts +2 -20
  15. package/dist/agents/sisyphus-junior/index.d.ts +1 -11
  16. package/dist/agents/sisyphus-runtime-prompt-reconciler.d.ts +6 -0
  17. package/dist/agents/types.d.ts +2 -2
  18. package/dist/cli/index.js +2255 -1044
  19. package/dist/cli/service-auth/accounts-gate.d.ts +11 -0
  20. package/dist/cli/service-auth/commands.d.ts +2 -4
  21. package/dist/cli/service-auth/credential-lock.d.ts +11 -0
  22. package/dist/cli/service-auth/credential-owner.d.ts +10 -0
  23. package/dist/cli/service-auth/index.d.ts +3 -1
  24. package/dist/cli/service-auth/keystore.d.ts +33 -2
  25. package/dist/cli/service-auth/owned-refresh.d.ts +21 -0
  26. package/dist/cli/service-auth/protocol-v2.d.ts +27 -0
  27. package/dist/cli/service-auth/protocol.d.ts +32 -2
  28. package/dist/cli/service-auth/recovery-clock.d.ts +7 -0
  29. package/dist/cli/service-auth/refresh-attempt.d.ts +34 -0
  30. package/dist/cli/service-auth/session.d.ts +15 -2
  31. package/dist/cli/service-auth/signed-out-marker.d.ts +11 -0
  32. package/dist/cli-node/index.js +2255 -1044
  33. package/dist/config/schema/hooks.d.ts +1 -0
  34. package/dist/create-hooks.d.ts +1 -0
  35. package/dist/features/boulder-state/storage.d.ts +1 -1
  36. package/dist/features/boulder-state/types.d.ts +1 -1
  37. package/dist/hooks/atlas/idle-continuation.d.ts +2 -1
  38. package/dist/hooks/atlas/types.d.ts +9 -1
  39. package/dist/hooks/index.d.ts +1 -0
  40. package/dist/hooks/momus-review-persistence/hook.d.ts +19 -0
  41. package/dist/hooks/momus-review-persistence/index.d.ts +1 -0
  42. package/dist/hooks/momus-review-persistence/review-resolution.d.ts +20 -0
  43. package/dist/hooks/native-edition-nudge/hook.d.ts +3 -4
  44. package/dist/hooks/prometheus-md-only/constants.d.ts +2 -0
  45. package/dist/hooks/prometheus-md-only/fixtures/denial-log.d.ts +1 -0
  46. package/dist/hooks/prometheus-md-only/fixtures/guarded-hashline.d.ts +1 -0
  47. package/dist/hooks/prometheus-md-only/fixtures/invoke-before.d.ts +7 -0
  48. package/dist/hooks/prometheus-md-only/fixtures/opencode-patch-parser.d.ts +2 -0
  49. package/dist/hooks/prometheus-md-only/hook.d.ts +5 -1
  50. package/dist/hooks/prometheus-md-only/path-policy.d.ts +2 -9
  51. package/dist/hooks/prometheus-md-only/vendor/opencode-patch-parser.d.ts +22 -0
  52. package/dist/index.js +17483 -9494
  53. package/dist/plugin/hooks/create-core-hooks.d.ts +1 -0
  54. package/dist/plugin/hooks/create-tool-guard-hooks.d.ts +2 -1
  55. package/dist/plugin/session-tool-permissions.d.ts +10 -0
  56. package/dist/plugin/system-transform.d.ts +2 -1
  57. package/dist/plugin/tool-definition.d.ts +1 -0
  58. package/dist/shared/bun-ffi-shim.d.ts +29 -0
  59. package/dist/shared/json-file-cache-store.d.ts +11 -0
  60. package/dist/shared/posthog-activity-state.d.ts +1 -0
  61. package/dist/shared/posthog.d.ts +1 -2
  62. package/dist/shared/resolve-file-write-path.d.ts +6 -0
  63. package/dist/skills/ast-grep/README.md +1 -1
  64. package/dist/skills/ast-grep/install.ps1 +5 -3
  65. package/dist/skills/ast-grep/install.sh +4 -5
  66. package/dist/skills/ast-grep/references/install.md +2 -2
  67. package/dist/skills/ast-grep/scripts/ast_grep_helper.py +13 -3
  68. package/dist/skills/browser/runtime/omowright/index.js +24 -33
  69. package/dist/skills/browser/runtime/omowright/manifest.json +3 -3
  70. package/dist/skills/coding-agent-sessions/AGENTS.md +5 -4
  71. package/dist/skills/coding-agent-sessions/SKILL.md +11 -11
  72. package/dist/skills/coding-agent-sessions/references/all-platforms.md +2 -2
  73. package/dist/skills/coding-agent-sessions/references/codex.md +4 -4
  74. package/dist/skills/coding-agent-sessions/scripts/agent_sessions/cli.py +1 -1
  75. package/dist/skills/coding-agent-sessions/scripts/find-agent-sessions.py +6 -3
  76. package/dist/skills/frontend/ATTRIBUTION.md +105 -2
  77. package/dist/skills/frontend/SKILL.md +40 -14
  78. package/dist/skills/frontend/references/design/README.md +2 -2
  79. package/dist/skills/frontend/references/design/_INDEX.md +2 -1
  80. package/dist/skills/frontend/references/design/component-catalogs.md +14 -10
  81. package/dist/skills/frontend/references/design/design-system-architecture.md +22 -9
  82. package/dist/skills/frontend/references/design/grounding.md +29 -0
  83. package/dist/skills/frontend/references/perfection/craft-floor.md +59 -0
  84. package/dist/skills/frontend/references/perfection/detect.md +52 -0
  85. package/dist/skills/frontend/references/ui-ux-db/scripts/design_system.py +2 -0
  86. package/dist/skills/frontend/references/ui-ux-db/scripts/search.py +2 -0
  87. package/dist/skills/frontend/scripts/detect/cli.ts +70 -0
  88. package/dist/skills/frontend/scripts/detect/config.test.ts +26 -0
  89. package/dist/skills/frontend/scripts/detect/config.ts +53 -0
  90. package/dist/skills/frontend/scripts/detect/core/characters.ts +2 -0
  91. package/dist/skills/frontend/scripts/detect/core/color.test.ts +29 -0
  92. package/dist/skills/frontend/scripts/detect/core/color.ts +150 -0
  93. package/dist/skills/frontend/scripts/detect/core/page.ts +84 -0
  94. package/dist/skills/frontend/scripts/detect/core/shadow.ts +40 -0
  95. package/dist/skills/frontend/scripts/detect/core/source.ts +33 -0
  96. package/dist/skills/frontend/scripts/detect/detect.ts +77 -0
  97. package/dist/skills/frontend/scripts/detect/index.ts +23 -0
  98. package/dist/skills/frontend/scripts/detect/lint.test.ts +27 -0
  99. package/dist/skills/frontend/scripts/detect/lint.ts +98 -0
  100. package/dist/skills/frontend/scripts/detect/render/probe-placement.test.ts +19 -0
  101. package/dist/skills/frontend/scripts/detect/render/probe-placement.ts +50 -0
  102. package/dist/skills/frontend/scripts/detect/render/renderer.ts +37 -0
  103. package/dist/skills/frontend/scripts/detect/render/webview.ts +71 -0
  104. package/dist/skills/frontend/scripts/detect/report.ts +29 -0
  105. package/dist/skills/frontend/scripts/detect/rule.ts +42 -0
  106. package/dist/skills/frontend/scripts/detect/rules/color/ai-color-palette.test.ts +74 -0
  107. package/dist/skills/frontend/scripts/detect/rules/color/ai-color-palette.ts +83 -0
  108. package/dist/skills/frontend/scripts/detect/rules/color/cream-palette.test.ts +24 -0
  109. package/dist/skills/frontend/scripts/detect/rules/color/cream-palette.ts +35 -0
  110. package/dist/skills/frontend/scripts/detect/rules/color/dark-glow.test.ts +47 -0
  111. package/dist/skills/frontend/scripts/detect/rules/color/dark-glow.ts +44 -0
  112. package/dist/skills/frontend/scripts/detect/rules/color/design-system-color.test.ts +26 -0
  113. package/dist/skills/frontend/scripts/detect/rules/color/design-system-color.ts +35 -0
  114. package/dist/skills/frontend/scripts/detect/rules/color/gradient-text.test.ts +24 -0
  115. package/dist/skills/frontend/scripts/detect/rules/color/gradient-text.ts +59 -0
  116. package/dist/skills/frontend/scripts/detect/rules/color/gray-on-color.test.ts +39 -0
  117. package/dist/skills/frontend/scripts/detect/rules/color/gray-on-color.ts +38 -0
  118. package/dist/skills/frontend/scripts/detect/rules/color/index.ts +15 -0
  119. package/dist/skills/frontend/scripts/detect/rules/color/low-contrast.test.ts +209 -0
  120. package/dist/skills/frontend/scripts/detect/rules/color/low-contrast.ts +57 -0
  121. package/dist/skills/frontend/scripts/detect/rules/color/placeholder-contrast.test.ts +62 -0
  122. package/dist/skills/frontend/scripts/detect/rules/color/radial-halo.test.ts +40 -0
  123. package/dist/skills/frontend/scripts/detect/rules/color/radial-halo.ts +31 -0
  124. package/dist/skills/frontend/scripts/detect/rules/color/radial-spotlight-glow.test.ts +27 -0
  125. package/dist/skills/frontend/scripts/detect/rules/color/radial-spotlight-glow.ts +33 -0
  126. package/dist/skills/frontend/scripts/detect/rules/color/support/animation-opacity.ts +78 -0
  127. package/dist/skills/frontend/scripts/detect/rules/color/support/color-path.ts +15 -0
  128. package/dist/skills/frontend/scripts/detect/rules/color/support/contrast-pairs.ts +54 -0
  129. package/dist/skills/frontend/scripts/detect/rules/color/support/contrast-role.ts +76 -0
  130. package/dist/skills/frontend/scripts/detect/rules/color/support/glow-forms.ts +56 -0
  131. package/dist/skills/frontend/scripts/detect/rules/color/support/gradient-samples.ts +134 -0
  132. package/dist/skills/frontend/scripts/detect/rules/color/support/gradients.ts +91 -0
  133. package/dist/skills/frontend/scripts/detect/rules/color/support/mockup-roots.ts +63 -0
  134. package/dist/skills/frontend/scripts/detect/rules/color/support/page-ignore.ts +7 -0
  135. package/dist/skills/frontend/scripts/detect/rules/color/support/painted-text.ts +141 -0
  136. package/dist/skills/frontend/scripts/detect/rules/color/support/palette-roles.ts +58 -0
  137. package/dist/skills/frontend/scripts/detect/rules/color/support/placeholder-contrast.ts +25 -0
  138. package/dist/skills/frontend/scripts/detect/rules/color/support/stock-accent.ts +31 -0
  139. package/dist/skills/frontend/scripts/detect/rules/color/support/text-colors.ts +80 -0
  140. package/dist/skills/frontend/scripts/detect/rules/copy/aphoristic-cadence.test.ts +18 -0
  141. package/dist/skills/frontend/scripts/detect/rules/copy/aphoristic-cadence.ts +20 -0
  142. package/dist/skills/frontend/scripts/detect/rules/copy/broken-image.test.ts +25 -0
  143. package/dist/skills/frontend/scripts/detect/rules/copy/broken-image.ts +17 -0
  144. package/dist/skills/frontend/scripts/detect/rules/copy/em-dash-overuse.test.ts +39 -0
  145. package/dist/skills/frontend/scripts/detect/rules/copy/em-dash-overuse.ts +46 -0
  146. package/dist/skills/frontend/scripts/detect/rules/copy/index.ts +15 -0
  147. package/dist/skills/frontend/scripts/detect/rules/copy/marketing-buzzword.test.ts +18 -0
  148. package/dist/skills/frontend/scripts/detect/rules/copy/marketing-buzzword.ts +33 -0
  149. package/dist/skills/frontend/scripts/detect/rules/copy/numbered-section-labels.test.ts +58 -0
  150. package/dist/skills/frontend/scripts/detect/rules/copy/numbered-section-labels.ts +34 -0
  151. package/dist/skills/frontend/scripts/detect/rules/copy/repeated-container-text.test.ts +43 -0
  152. package/dist/skills/frontend/scripts/detect/rules/copy/repeated-container-text.ts +56 -0
  153. package/dist/skills/frontend/scripts/detect/rules/copy/script-error.test.ts +48 -0
  154. package/dist/skills/frontend/scripts/detect/rules/copy/script-error.ts +38 -0
  155. package/dist/skills/frontend/scripts/detect/rules/copy/skipped-heading.test.ts +49 -0
  156. package/dist/skills/frontend/scripts/detect/rules/copy/skipped-heading.ts +81 -0
  157. package/dist/skills/frontend/scripts/detect/rules/copy/support/numbered-label.ts +94 -0
  158. package/dist/skills/frontend/scripts/detect/rules/copy/support/page-text.ts +37 -0
  159. package/dist/skills/frontend/scripts/detect/rules/copy/theater-slop-phrase.test.ts +17 -0
  160. package/dist/skills/frontend/scripts/detect/rules/copy/theater-slop-phrase.ts +21 -0
  161. package/dist/skills/frontend/scripts/detect/rules/decoration/blinking-cursor.test.ts +43 -0
  162. package/dist/skills/frontend/scripts/detect/rules/decoration/blinking-cursor.ts +48 -0
  163. package/dist/skills/frontend/scripts/detect/rules/decoration/border-accent-on-rounded.test.ts +33 -0
  164. package/dist/skills/frontend/scripts/detect/rules/decoration/border-accent-on-rounded.ts +14 -0
  165. package/dist/skills/frontend/scripts/detect/rules/decoration/bounce-easing.test.ts +72 -0
  166. package/dist/skills/frontend/scripts/detect/rules/decoration/bounce-easing.ts +83 -0
  167. package/dist/skills/frontend/scripts/detect/rules/decoration/buried-raster.test.ts +95 -0
  168. package/dist/skills/frontend/scripts/detect/rules/decoration/buried-raster.ts +72 -0
  169. package/dist/skills/frontend/scripts/detect/rules/decoration/codex-grid-background.test.ts +28 -0
  170. package/dist/skills/frontend/scripts/detect/rules/decoration/codex-grid-background.ts +34 -0
  171. package/dist/skills/frontend/scripts/detect/rules/decoration/design-system-radius.test.ts +37 -0
  172. package/dist/skills/frontend/scripts/detect/rules/decoration/design-system-radius.ts +31 -0
  173. package/dist/skills/frontend/scripts/detect/rules/decoration/gpt-thin-border-wide-shadow.test.ts +59 -0
  174. package/dist/skills/frontend/scripts/detect/rules/decoration/gpt-thin-border-wide-shadow.ts +66 -0
  175. package/dist/skills/frontend/scripts/detect/rules/decoration/hard-offset-shadow.test.ts +45 -0
  176. package/dist/skills/frontend/scripts/detect/rules/decoration/hard-offset-shadow.ts +31 -0
  177. package/dist/skills/frontend/scripts/detect/rules/decoration/hero-eyebrow-chip.test.ts +76 -0
  178. package/dist/skills/frontend/scripts/detect/rules/decoration/hero-eyebrow-chip.ts +19 -0
  179. package/dist/skills/frontend/scripts/detect/rules/decoration/icon-tile-stack.test.ts +67 -0
  180. package/dist/skills/frontend/scripts/detect/rules/decoration/icon-tile-stack.ts +92 -0
  181. package/dist/skills/frontend/scripts/detect/rules/decoration/index.ts +38 -0
  182. package/dist/skills/frontend/scripts/detect/rules/decoration/kicker-above-heading.test.ts +126 -0
  183. package/dist/skills/frontend/scripts/detect/rules/decoration/kicker-above-heading.ts +69 -0
  184. package/dist/skills/frontend/scripts/detect/rules/decoration/marquee.test.ts +63 -0
  185. package/dist/skills/frontend/scripts/detect/rules/decoration/marquee.ts +51 -0
  186. package/dist/skills/frontend/scripts/detect/rules/decoration/organic-clip-path.test.ts +67 -0
  187. package/dist/skills/frontend/scripts/detect/rules/decoration/organic-clip-path.ts +41 -0
  188. package/dist/skills/frontend/scripts/detect/rules/decoration/pulsing-dot.test.ts +58 -0
  189. package/dist/skills/frontend/scripts/detect/rules/decoration/pulsing-dot.ts +72 -0
  190. package/dist/skills/frontend/scripts/detect/rules/decoration/repeating-stripes-gradient.test.ts +26 -0
  191. package/dist/skills/frontend/scripts/detect/rules/decoration/repeating-stripes-gradient.ts +25 -0
  192. package/dist/skills/frontend/scripts/detect/rules/decoration/shape-assembled-illustration.test.ts +59 -0
  193. package/dist/skills/frontend/scripts/detect/rules/decoration/shape-assembled-illustration.ts +58 -0
  194. package/dist/skills/frontend/scripts/detect/rules/decoration/side-tab.test.ts +91 -0
  195. package/dist/skills/frontend/scripts/detect/rules/decoration/side-tab.ts +17 -0
  196. package/dist/skills/frontend/scripts/detect/rules/decoration/support/appearance.ts +110 -0
  197. package/dist/skills/frontend/scripts/detect/rules/decoration/support/assert-cases.ts +25 -0
  198. package/dist/skills/frontend/scripts/detect/rules/decoration/support/borders.ts +150 -0
  199. package/dist/skills/frontend/scripts/detect/rules/decoration/support/clip-geometry.ts +151 -0
  200. package/dist/skills/frontend/scripts/detect/rules/decoration/support/css-candidates.ts +66 -0
  201. package/dist/skills/frontend/scripts/detect/rules/decoration/support/curve-samples.ts +55 -0
  202. package/dist/skills/frontend/scripts/detect/rules/decoration/support/gradient-pattern.ts +40 -0
  203. package/dist/skills/frontend/scripts/detect/rules/decoration/support/keyframes.ts +134 -0
  204. package/dist/skills/frontend/scripts/detect/rules/decoration/support/labels.ts +85 -0
  205. package/dist/skills/frontend/scripts/detect/rules/decoration/support/raster-state.ts +51 -0
  206. package/dist/skills/frontend/scripts/detect/rules/index.ts +16 -0
  207. package/dist/skills/frontend/scripts/detect/rules/layout/body-text-viewport-edge.test.ts +64 -0
  208. package/dist/skills/frontend/scripts/detect/rules/layout/body-text-viewport-edge.ts +62 -0
  209. package/dist/skills/frontend/scripts/detect/rules/layout/clipped-overflow-container.test.ts +40 -0
  210. package/dist/skills/frontend/scripts/detect/rules/layout/clipped-overflow-container.ts +15 -0
  211. package/dist/skills/frontend/scripts/detect/rules/layout/content-hidden-at-rest.test.ts +62 -0
  212. package/dist/skills/frontend/scripts/detect/rules/layout/content-hidden-at-rest.ts +63 -0
  213. package/dist/skills/frontend/scripts/detect/rules/layout/cramped-padding.test.ts +61 -0
  214. package/dist/skills/frontend/scripts/detect/rules/layout/cramped-padding.ts +97 -0
  215. package/dist/skills/frontend/scripts/detect/rules/layout/edge-flush-cards.test.ts +43 -0
  216. package/dist/skills/frontend/scripts/detect/rules/layout/edge-flush-cards.ts +47 -0
  217. package/dist/skills/frontend/scripts/detect/rules/layout/first-viewport-column-overflow.test.ts +28 -0
  218. package/dist/skills/frontend/scripts/detect/rules/layout/first-viewport-column-overflow.ts +43 -0
  219. package/dist/skills/frontend/scripts/detect/rules/layout/heading-rhythm.test.ts +67 -0
  220. package/dist/skills/frontend/scripts/detect/rules/layout/heading-rhythm.ts +30 -0
  221. package/dist/skills/frontend/scripts/detect/rules/layout/index.ts +21 -0
  222. package/dist/skills/frontend/scripts/detect/rules/layout/monotonous-spacing.test.ts +19 -0
  223. package/dist/skills/frontend/scripts/detect/rules/layout/monotonous-spacing.ts +32 -0
  224. package/dist/skills/frontend/scripts/detect/rules/layout/nested-cards.test.ts +60 -0
  225. package/dist/skills/frontend/scripts/detect/rules/layout/nested-cards.ts +38 -0
  226. package/dist/skills/frontend/scripts/detect/rules/layout/straggler.test.ts +33 -0
  227. package/dist/skills/frontend/scripts/detect/rules/layout/straggler.ts +28 -0
  228. package/dist/skills/frontend/scripts/detect/rules/layout/support/cards.ts +114 -0
  229. package/dist/skills/frontend/scripts/detect/rules/layout/support/clipping.ts +71 -0
  230. package/dist/skills/frontend/scripts/detect/rules/layout/support/declared-mockups.ts +46 -0
  231. package/dist/skills/frontend/scripts/detect/rules/layout/support/geometry.ts +73 -0
  232. package/dist/skills/frontend/scripts/detect/rules/layout/support/hidden-interface.ts +35 -0
  233. package/dist/skills/frontend/scripts/detect/rules/layout/support/layout-cases.ts +23 -0
  234. package/dist/skills/frontend/scripts/detect/rules/layout/support/line-breaks.ts +32 -0
  235. package/dist/skills/frontend/scripts/detect/rules/layout/support/motion.ts +77 -0
  236. package/dist/skills/frontend/scripts/detect/rules/layout/support/padding.ts +93 -0
  237. package/dist/skills/frontend/scripts/detect/rules/layout/support/rhythm.ts +161 -0
  238. package/dist/skills/frontend/scripts/detect/rules/layout/text-occlusion.test.ts +37 -0
  239. package/dist/skills/frontend/scripts/detect/rules/layout/text-occlusion.ts +84 -0
  240. package/dist/skills/frontend/scripts/detect/rules/layout/text-overflow.test.ts +83 -0
  241. package/dist/skills/frontend/scripts/detect/rules/layout/text-overflow.ts +72 -0
  242. package/dist/skills/frontend/scripts/detect/rules/layout/unbalanced-heading.test.ts +22 -0
  243. package/dist/skills/frontend/scripts/detect/rules/layout/unbalanced-heading.ts +22 -0
  244. package/dist/skills/frontend/scripts/detect/rules/layout/viewport-reflow.test.ts +34 -0
  245. package/dist/skills/frontend/scripts/detect/rules/layout/viewport-reflow.ts +33 -0
  246. package/dist/skills/frontend/scripts/detect/rules/source/ai-color-palette.test.ts +13 -0
  247. package/dist/skills/frontend/scripts/detect/rules/source/ai-color-palette.ts +11 -0
  248. package/dist/skills/frontend/scripts/detect/rules/source/aphoristic-cadence.test.ts +12 -0
  249. package/dist/skills/frontend/scripts/detect/rules/source/aphoristic-cadence.ts +14 -0
  250. package/dist/skills/frontend/scripts/detect/rules/source/border-accent-on-rounded.test.ts +14 -0
  251. package/dist/skills/frontend/scripts/detect/rules/source/border-accent-on-rounded.ts +20 -0
  252. package/dist/skills/frontend/scripts/detect/rules/source/bounce-easing.test.ts +19 -0
  253. package/dist/skills/frontend/scripts/detect/rules/source/bounce-easing.ts +21 -0
  254. package/dist/skills/frontend/scripts/detect/rules/source/broken-image.test.ts +27 -0
  255. package/dist/skills/frontend/scripts/detect/rules/source/broken-image.ts +16 -0
  256. package/dist/skills/frontend/scripts/detect/rules/source/codex-grid-background.test.ts +11 -0
  257. package/dist/skills/frontend/scripts/detect/rules/source/codex-grid-background.ts +18 -0
  258. package/dist/skills/frontend/scripts/detect/rules/source/dark-glow.test.ts +15 -0
  259. package/dist/skills/frontend/scripts/detect/rules/source/dark-glow.ts +21 -0
  260. package/dist/skills/frontend/scripts/detect/rules/source/em-dash-overuse.test.ts +13 -0
  261. package/dist/skills/frontend/scripts/detect/rules/source/em-dash-overuse.ts +15 -0
  262. package/dist/skills/frontend/scripts/detect/rules/source/gradient-text.test.ts +12 -0
  263. package/dist/skills/frontend/scripts/detect/rules/source/gradient-text.ts +11 -0
  264. package/dist/skills/frontend/scripts/detect/rules/source/gray-on-color.test.ts +20 -0
  265. package/dist/skills/frontend/scripts/detect/rules/source/gray-on-color.ts +13 -0
  266. package/dist/skills/frontend/scripts/detect/rules/source/index.ts +19 -0
  267. package/dist/skills/frontend/scripts/detect/rules/source/marketing-buzzword.test.ts +12 -0
  268. package/dist/skills/frontend/scripts/detect/rules/source/marketing-buzzword.ts +17 -0
  269. package/dist/skills/frontend/scripts/detect/rules/source/marquee.test.ts +12 -0
  270. package/dist/skills/frontend/scripts/detect/rules/source/marquee.ts +12 -0
  271. package/dist/skills/frontend/scripts/detect/rules/source/monotonous-spacing.test.ts +13 -0
  272. package/dist/skills/frontend/scripts/detect/rules/source/monotonous-spacing.ts +22 -0
  273. package/dist/skills/frontend/scripts/detect/rules/source/overused-font.test.ts +21 -0
  274. package/dist/skills/frontend/scripts/detect/rules/source/overused-font.ts +16 -0
  275. package/dist/skills/frontend/scripts/detect/rules/source/radial-halo.test.ts +16 -0
  276. package/dist/skills/frontend/scripts/detect/rules/source/radial-halo.ts +14 -0
  277. package/dist/skills/frontend/scripts/detect/rules/source/side-tab.test.ts +29 -0
  278. package/dist/skills/frontend/scripts/detect/rules/source/side-tab.ts +58 -0
  279. package/dist/skills/frontend/scripts/detect/rules/source/support/accent-scans.ts +78 -0
  280. package/dist/skills/frontend/scripts/detect/rules/source/support/check-source.ts +6 -0
  281. package/dist/skills/frontend/scripts/detect/rules/source/support/corners.ts +105 -0
  282. package/dist/skills/frontend/scripts/detect/rules/source/support/css-effects.ts +81 -0
  283. package/dist/skills/frontend/scripts/detect/rules/source/support/css-scopes.ts +131 -0
  284. package/dist/skills/frontend/scripts/detect/rules/source/support/image-tags.ts +113 -0
  285. package/dist/skills/frontend/scripts/detect/rules/source/support/js-punctuation.ts +34 -0
  286. package/dist/skills/frontend/scripts/detect/rules/source/support/markup-scope.ts +44 -0
  287. package/dist/skills/frontend/scripts/detect/rules/source/support/source-color.ts +42 -0
  288. package/dist/skills/frontend/scripts/detect/rules/source/support/source-shadow.ts +15 -0
  289. package/dist/skills/frontend/scripts/detect/rules/source/support/source-text.ts +110 -0
  290. package/dist/skills/frontend/scripts/detect/rules/typography/all-caps-body.test.ts +24 -0
  291. package/dist/skills/frontend/scripts/detect/rules/typography/all-caps-body.ts +15 -0
  292. package/dist/skills/frontend/scripts/detect/rules/typography/design-system-font-size.test.ts +21 -0
  293. package/dist/skills/frontend/scripts/detect/rules/typography/design-system-font-size.ts +23 -0
  294. package/dist/skills/frontend/scripts/detect/rules/typography/design-system-font.test.ts +22 -0
  295. package/dist/skills/frontend/scripts/detect/rules/typography/design-system-font.ts +24 -0
  296. package/dist/skills/frontend/scripts/detect/rules/typography/extreme-negative-tracking.test.ts +23 -0
  297. package/dist/skills/frontend/scripts/detect/rules/typography/extreme-negative-tracking.ts +18 -0
  298. package/dist/skills/frontend/scripts/detect/rules/typography/flat-type-hierarchy.test.ts +33 -0
  299. package/dist/skills/frontend/scripts/detect/rules/typography/flat-type-hierarchy.ts +26 -0
  300. package/dist/skills/frontend/scripts/detect/rules/typography/index.ts +21 -0
  301. package/dist/skills/frontend/scripts/detect/rules/typography/italic-serif-display.test.ts +24 -0
  302. package/dist/skills/frontend/scripts/detect/rules/typography/italic-serif-display.ts +24 -0
  303. package/dist/skills/frontend/scripts/detect/rules/typography/justified-text.test.ts +31 -0
  304. package/dist/skills/frontend/scripts/detect/rules/typography/justified-text.ts +32 -0
  305. package/dist/skills/frontend/scripts/detect/rules/typography/line-length.test.ts +43 -0
  306. package/dist/skills/frontend/scripts/detect/rules/typography/line-length.ts +28 -0
  307. package/dist/skills/frontend/scripts/detect/rules/typography/oversized-h1.test.ts +26 -0
  308. package/dist/skills/frontend/scripts/detect/rules/typography/oversized-h1.ts +20 -0
  309. package/dist/skills/frontend/scripts/detect/rules/typography/overused-font.test.ts +35 -0
  310. package/dist/skills/frontend/scripts/detect/rules/typography/overused-font.ts +45 -0
  311. package/dist/skills/frontend/scripts/detect/rules/typography/support/drawn-enlargement.ts +48 -0
  312. package/dist/skills/frontend/scripts/detect/rules/typography/support/fading-text.ts +48 -0
  313. package/dist/skills/frontend/scripts/detect/rules/typography/support/flex-runs.ts +16 -0
  314. package/dist/skills/frontend/scripts/detect/rules/typography/support/font-family.ts +28 -0
  315. package/dist/skills/frontend/scripts/detect/rules/typography/support/painted-text.test.ts +63 -0
  316. package/dist/skills/frontend/scripts/detect/rules/typography/support/painted-text.ts +81 -0
  317. package/dist/skills/frontend/scripts/detect/rules/typography/support/svg-size.ts +57 -0
  318. package/dist/skills/frontend/scripts/detect/rules/typography/support/text-context.ts +112 -0
  319. package/dist/skills/frontend/scripts/detect/rules/typography/support/text-lines.ts +43 -0
  320. package/dist/skills/frontend/scripts/detect/rules/typography/support/type-hierarchy.ts +48 -0
  321. package/dist/skills/frontend/scripts/detect/rules/typography/tight-leading.test.ts +54 -0
  322. package/dist/skills/frontend/scripts/detect/rules/typography/tight-leading.ts +47 -0
  323. package/dist/skills/frontend/scripts/detect/rules/typography/tiny-text.test.ts +60 -0
  324. package/dist/skills/frontend/scripts/detect/rules/typography/tiny-text.ts +23 -0
  325. package/dist/skills/frontend/scripts/detect/rules/typography/undersized-ui-text.test.ts +98 -0
  326. package/dist/skills/frontend/scripts/detect/rules/typography/undersized-ui-text.ts +28 -0
  327. package/dist/skills/frontend/scripts/detect/rules/typography/wide-tracking.test.ts +26 -0
  328. package/dist/skills/frontend/scripts/detect/rules/typography/wide-tracking.ts +26 -0
  329. package/dist/skills/frontend/scripts/detect/snapshot/collect.ts +158 -0
  330. package/dist/skills/frontend/scripts/detect/snapshot/style-props.ts +25 -0
  331. package/dist/skills/frontend/scripts/detect/testing/build-snapshot.ts +78 -0
  332. package/dist/skills/frontend/scripts/detect/tsconfig.json +19 -0
  333. package/dist/skills/frontend/scripts/detect/types.ts +124 -0
  334. package/dist/skills/programming/SKILL.md +15 -74
  335. package/dist/skills/programming/references/go/README.md +1 -1
  336. package/dist/skills/programming/references/go/bootstrap.md +2 -2
  337. package/dist/skills/programming/references/python/README.md +4 -4
  338. package/dist/skills/programming/references/python/one-liners.md +5 -5
  339. package/dist/skills/programming/references/testing/README.md +82 -0
  340. package/dist/skills/programming/references/testing/junk-classes.md +56 -0
  341. package/dist/skills/programming/references/typescript/README.md +1 -2
  342. package/dist/skills/programming/scripts/go/new-project.ts +197 -0
  343. package/dist/skills/programming/scripts/python/new-project.ts +231 -0
  344. package/dist/skills/programming/scripts/python/new-script.ts +134 -0
  345. package/dist/skills/programming/scripts/rust/new-project.ts +215 -0
  346. package/dist/skills/programming/scripts/scaffolders.test.ts +96 -0
  347. package/dist/skills/programming/scripts/shared/run-tool.ts +19 -0
  348. package/dist/skills/ultimate-browsing/SKILL.md +5 -4
  349. package/dist/skills/ultimate-browsing/engine/AGENTS.md +2 -2
  350. package/dist/skills/ultimate-browsing/engine/__main__.py +9 -6
  351. package/dist/skills/ultimate-browsing/engine/summary.py +1 -1
  352. package/dist/skills/ultimate-browsing/references/insane-search/README.md +4 -4
  353. package/dist/skills/ultimate-browsing/scripts/extract_cookies.py +4 -2
  354. package/dist/skills/ulw-research/AGENTS.md +8 -4
  355. package/dist/skills/ulw-research/SKILL.md +7 -316
  356. package/dist/skills/ulw-research/references/deliverable-phase.md +23 -21
  357. package/dist/skills/ulw-research/references/fact-ledger-grammar.md +7 -3
  358. package/dist/skills/ulw-research/references/fact-ledger.md +42 -8
  359. package/dist/skills/ulw-research/references/fidelity-claim-kinds.md +1 -1
  360. package/dist/skills/ulw-research/references/markdown-blocks.md +12 -0
  361. package/dist/skills/ulw-research/references/report-gates.md +12 -5
  362. package/dist/skills/ulw-research/references/research-collection.md +195 -0
  363. package/dist/skills/ulw-research/references/research-delivery.md +123 -0
  364. package/dist/skills/ulw-research/scripts/claim-kinds.mjs +33 -5
  365. package/dist/skills/ulw-research/scripts/claim-kinds.test.ts +37 -2
  366. package/dist/skills/ulw-research/scripts/claim-prefix.test.ts +76 -0
  367. package/dist/skills/ulw-research/scripts/contracts-validation.test.ts +83 -0
  368. package/dist/skills/ulw-research/scripts/contracts.mjs +13 -4
  369. package/dist/skills/ulw-research/scripts/contracts.test.ts +6 -110
  370. package/dist/skills/ulw-research/scripts/conversion-altered.test.ts +154 -0
  371. package/dist/skills/ulw-research/scripts/conversion-originals.test.ts +297 -0
  372. package/dist/skills/ulw-research/scripts/conversion-probe-classes.test.ts +361 -0
  373. package/dist/skills/ulw-research/scripts/conversion-probe.mjs +229 -0
  374. package/dist/skills/ulw-research/scripts/conversion-probe.test.ts +218 -0
  375. package/dist/skills/ulw-research/scripts/copy-returns-polish.test.ts +4 -3
  376. package/dist/skills/ulw-research/scripts/css-hiding.mjs +158 -0
  377. package/dist/skills/ulw-research/scripts/css-lite.mjs +4 -2
  378. package/dist/skills/ulw-research/scripts/delivery-barrier-meaning.test.ts +186 -0
  379. package/dist/skills/ulw-research/scripts/delivery-barrier.test.ts +40 -87
  380. package/dist/skills/ulw-research/scripts/entities.mjs +13 -4
  381. package/dist/skills/ulw-research/scripts/fact-commands-fill.mjs +11 -1
  382. package/dist/skills/ulw-research/scripts/fact-commands-meaning.mjs +13 -9
  383. package/dist/skills/ulw-research/scripts/fact-commands-polish.mjs +40 -18
  384. package/dist/skills/ulw-research/scripts/fact-commands-verify.mjs +25 -8
  385. package/dist/skills/ulw-research/scripts/fact-commands.mjs +35 -16
  386. package/dist/skills/ulw-research/scripts/fact-derive-2.test.ts +149 -0
  387. package/dist/skills/ulw-research/scripts/fact-derive.mjs +7 -2
  388. package/dist/skills/ulw-research/scripts/fact-derive.test.ts +7 -192
  389. package/dist/skills/ulw-research/scripts/fact-fill.mjs +6 -4
  390. package/dist/skills/ulw-research/scripts/fact-ledger-kinds.mjs +6 -7
  391. package/dist/skills/ulw-research/scripts/fact-ledger-kinds.test.ts +2 -1
  392. package/dist/skills/ulw-research/scripts/fact-ledger-legacy.test.ts +2 -1
  393. package/dist/skills/ulw-research/scripts/fact-locate.mjs +15 -9
  394. package/dist/skills/ulw-research/scripts/fact-unit-dimensions-2.test.ts +149 -0
  395. package/dist/skills/ulw-research/scripts/fact-unit-dimensions.test.ts +4 -168
  396. package/dist/skills/ulw-research/scripts/fact-unit-rules.test.ts +3 -229
  397. package/dist/skills/ulw-research/scripts/fidelity-claims.mjs +4 -3
  398. package/dist/skills/ulw-research/scripts/fidelity-csv.mjs +32 -0
  399. package/dist/skills/ulw-research/scripts/fidelity-lexicon.mjs +1 -1
  400. package/dist/skills/ulw-research/scripts/fidelity-originals.mjs +161 -0
  401. package/dist/skills/ulw-research/scripts/fidelity-policy.mjs +4 -4
  402. package/dist/skills/ulw-research/scripts/fidelity-records.mjs +81 -14
  403. package/dist/skills/ulw-research/scripts/fidelity-snapshot-readability.mjs +49 -0
  404. package/dist/skills/ulw-research/scripts/fidelity-sources.mjs +76 -0
  405. package/dist/skills/ulw-research/scripts/fidelity-trace.mjs +25 -11
  406. package/dist/skills/ulw-research/scripts/fidelity-value-unit.mjs +202 -0
  407. package/dist/skills/ulw-research/scripts/fidelity-values.mjs +40 -39
  408. package/dist/skills/ulw-research/scripts/fidelity-values.test.ts +8 -29
  409. package/dist/skills/ulw-research/scripts/gates-fidelity.mjs +8 -6
  410. package/dist/skills/ulw-research/scripts/gates-static-headings.test.ts +17 -0
  411. package/dist/skills/ulw-research/scripts/gates-static.mjs +10 -1
  412. package/dist/skills/ulw-research/scripts/html-lite.mjs +6 -2
  413. package/dist/skills/ulw-research/scripts/html-markup.mjs +2 -2
  414. package/dist/skills/ulw-research/scripts/html-text-map.mjs +140 -0
  415. package/dist/skills/ulw-research/scripts/html-text-map.test.ts +148 -0
  416. package/dist/skills/ulw-research/scripts/markdown-closers.mjs +126 -0
  417. package/dist/skills/ulw-research/scripts/md-lite-boundaries.test.ts +46 -0
  418. package/dist/skills/ulw-research/scripts/md-lite.mjs +1 -1
  419. package/dist/skills/ulw-research/scripts/number-grammar.mjs +33 -0
  420. package/dist/skills/ulw-research/scripts/number-grammar.test.ts +36 -0
  421. package/dist/skills/ulw-research/scripts/numerals.mjs +18 -7
  422. package/dist/skills/ulw-research/scripts/numerals.test.ts +3 -0
  423. package/dist/skills/ulw-research/scripts/outcome-start.mjs +66 -0
  424. package/dist/skills/ulw-research/scripts/outcome-start.test.ts +109 -0
  425. package/dist/skills/ulw-research/scripts/outcome.mjs +11 -22
  426. package/dist/skills/ulw-research/scripts/page-source-locator.test.ts +187 -0
  427. package/dist/skills/ulw-research/scripts/placeholder.mjs +18 -6
  428. package/dist/skills/ulw-research/scripts/polish-apply.mjs +3 -2
  429. package/dist/skills/ulw-research/scripts/polish-markup.test.ts +15 -1
  430. package/dist/skills/ulw-research/scripts/polish-partial.test.ts +42 -0
  431. package/dist/skills/ulw-research/scripts/raw-decode.mjs +110 -0
  432. package/dist/skills/ulw-research/scripts/raw-locator.mjs +47 -0
  433. package/dist/skills/ulw-research/scripts/raw-snapshot.test.ts +139 -0
  434. package/dist/skills/ulw-research/scripts/report-tools-2.test.ts +233 -0
  435. package/dist/skills/ulw-research/scripts/report-tools-3.test.ts +141 -0
  436. package/dist/skills/ulw-research/scripts/report-tools-4.test.ts +135 -0
  437. package/dist/skills/ulw-research/scripts/report-tools-5.test.ts +231 -0
  438. package/dist/skills/ulw-research/scripts/report-tools-commands.mjs +1 -1
  439. package/dist/skills/ulw-research/scripts/report-tools.mjs +7 -1
  440. package/dist/skills/ulw-research/scripts/report-tools.test.ts +5 -800
  441. package/dist/skills/ulw-research/scripts/snapshot-readability.test.ts +116 -0
  442. package/dist/skills/ulw-research/scripts/source-commands.mjs +79 -26
  443. package/dist/skills/ulw-research/scripts/source-integrity.test.ts +243 -0
  444. package/dist/skills/ulw-research/scripts/source-refresh.mjs +82 -0
  445. package/dist/skills/ulw-research/scripts/source-snapshot.mjs +73 -69
  446. package/dist/skills/ulw-research/scripts/source-snapshot.test.ts +7 -4
  447. package/dist/skills/ulw-research/scripts/source-view.mjs +89 -0
  448. package/dist/skills/ulw-research/scripts/sources-citation.mjs +203 -0
  449. package/dist/skills/ulw-research/scripts/sources-citation.test.ts +236 -0
  450. package/dist/skills/ulw-research/scripts/tests/contracts-support.ts +147 -0
  451. package/dist/skills/ulw-research/scripts/tests/delivery-barrier-session.ts +59 -0
  452. package/dist/skills/ulw-research/scripts/tests/derive-clock.ts +4 -0
  453. package/dist/skills/ulw-research/scripts/tests/fact-derive-support.ts +65 -0
  454. package/dist/skills/ulw-research/scripts/tests/fact-unit-dimensions-support.ts +41 -0
  455. package/dist/skills/ulw-research/scripts/tests/fact-unit-rules-support.ts +241 -0
  456. package/dist/skills/ulw-research/scripts/tests/fidelity-values-support.ts +30 -0
  457. package/dist/skills/ulw-research/scripts/tests/fixtures/conversion-probe.html +14 -0
  458. package/dist/skills/ulw-research/scripts/tests/fixtures/sources-shapes.html +20 -0
  459. package/dist/skills/ulw-research/scripts/tests/numeral-classes.ts +196 -0
  460. package/dist/skills/ulw-research/scripts/tests/report-tools-support.ts +182 -0
  461. package/dist/skills/ulw-research/scripts/tests/value-mode-support.ts +48 -0
  462. package/dist/skills/ulw-research/scripts/units.mjs +14 -3
  463. package/dist/skills/ulw-research/scripts/units.test.ts +10 -0
  464. package/dist/skills/ulw-research/scripts/value-mode-unit-classes.test.ts +255 -0
  465. package/dist/skills/ulw-research/scripts/value-mode-unit.test.ts +179 -0
  466. package/dist/skills/ulw-research/scripts/value-rules-cli.test.ts +157 -0
  467. package/dist/skills/ulw-research/scripts/value-rules-followups.test.ts +72 -0
  468. package/dist/skills/ulw-research/scripts/value-rules-priority.test.ts +80 -0
  469. package/dist/skills/visual-qa/SKILL.md +12 -1
  470. package/dist/tools/delegate-task/executor-types.d.ts +1 -0
  471. package/dist/tools/delegate-task/sync-session-existence.d.ts +4 -0
  472. package/dist/tools/delegate-task/types.d.ts +1 -0
  473. package/dist/tools/skill/description-formatter.d.ts +2 -1
  474. package/dist/tools/skill/types.d.ts +6 -0
  475. package/dist/tui.js +245 -58
  476. package/package.json +24 -20
  477. package/packages/git-bash-mcp/package.json +1 -1
  478. package/packages/lsp-core/src/lsp/config-loader.ts +18 -2
  479. package/packages/lsp-core/src/lsp/host-js-runtime.test.ts +150 -0
  480. package/packages/lsp-core/src/lsp/host-js-runtime.ts +57 -0
  481. package/packages/lsp-core/src/lsp/server-definitions.ts +10 -0
  482. package/packages/lsp-core/src/lsp/server-resolution.ts +9 -1
  483. package/packages/lsp-core/src/lsp/typescript-server-defaults.test.ts +84 -0
  484. package/packages/lsp-daemon/dist/cli.js +81 -15
  485. package/packages/lsp-daemon/dist/client.js +74 -8
  486. package/packages/lsp-daemon/dist/index.js +76 -10
  487. package/packages/lsp-tools-mcp/dist/cli.js +74 -8
  488. package/packages/lsp-tools-mcp/dist/mcp.js +74 -8
  489. package/packages/lsp-tools-mcp/dist/tools.js +74 -8
  490. package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
  491. package/packages/omo-codex/plugin/README.md +1 -1
  492. package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +20 -4
  493. package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
  494. package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
  495. package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
  496. package/packages/omo-codex/plugin/components/comment-checker/package.json +1 -1
  497. package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
  498. package/packages/omo-codex/plugin/components/git-bash/package.json +1 -1
  499. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
  500. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +1 -1
  501. package/packages/omo-codex/plugin/components/lcx/skills/lcx-contribute-bug-fix/SKILL.md +51 -55
  502. package/packages/omo-codex/plugin/components/lcx/skills/lcx-contribute-bug-fix/agents/openai.yaml +1 -1
  503. package/packages/omo-codex/plugin/components/lcx/skills/lcx-report-bug/SKILL.md +7 -7
  504. package/packages/omo-codex/plugin/components/lcx/skills/lcx-report-bug/agents/openai.yaml +1 -1
  505. package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +3 -3
  506. package/packages/omo-codex/plugin/components/lsp/dist/cli.js +77 -13
  507. package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
  508. package/packages/omo-codex/plugin/components/lsp/package.json +1 -1
  509. package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
  510. package/packages/omo-codex/plugin/components/rules/package.json +1 -1
  511. package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
  512. package/packages/omo-codex/plugin/components/teammode/package.json +2 -2
  513. package/packages/omo-codex/plugin/components/telemetry/README.md +2 -2
  514. package/packages/omo-codex/plugin/components/telemetry/dist/cli.js +85 -16
  515. package/packages/omo-codex/plugin/components/telemetry/dist/posthog.js +85 -20
  516. package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
  517. package/packages/omo-codex/plugin/components/telemetry/package.json +1 -1
  518. package/packages/omo-codex/plugin/components/telemetry/src/codex-hook.ts +2 -9
  519. package/packages/omo-codex/plugin/components/telemetry/src/posthog.ts +4 -13
  520. package/packages/omo-codex/plugin/components/telemetry/src/product-identity.ts +0 -2
  521. package/packages/omo-codex/plugin/components/telemetry/test/codex-hook-diagnostics.test.ts +0 -3
  522. package/packages/omo-codex/plugin/components/telemetry/test/codex-hook.test.ts +17 -9
  523. package/packages/omo-codex/plugin/components/ultrawork/dist/cli.js +3 -0
  524. package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
  525. package/packages/omo-codex/plugin/components/ultrawork/package.json +1 -1
  526. package/packages/omo-codex/plugin/components/ultrawork/src/directive-content.ts +1 -1
  527. package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +1 -1
  528. package/packages/omo-codex/plugin/components/ulw-execute-continuation/package.json +1 -1
  529. package/packages/omo-codex/plugin/components/ulw-loop/directive.md +3 -0
  530. package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +5 -5
  531. package/packages/omo-codex/plugin/components/ulw-loop/package.json +1 -1
  532. package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
  533. package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
  534. package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
  535. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
  536. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
  537. package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
  538. package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
  539. package/packages/omo-codex/plugin/hooks/post-tool-use-recording-spawn-admission.json +1 -1
  540. package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
  541. package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
  542. package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
  543. package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
  544. package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
  545. package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +1 -1
  546. package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +1 -1
  547. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-execute-continuation.json +1 -1
  548. package/packages/omo-codex/plugin/hooks/stop-checking-ulw-loop-resume.json +1 -1
  549. package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +1 -1
  550. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +1 -1
  551. package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +1 -1
  552. package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +1 -1
  553. package/packages/omo-codex/plugin/package-lock.json +16 -16
  554. package/packages/omo-codex/plugin/package.json +1 -1
  555. package/packages/omo-codex/plugin/scripts/auto-update-plan.mjs +16 -1
  556. package/packages/omo-codex/plugin/shared/package.json +1 -1
  557. package/packages/omo-codex/plugin/skills/ast-grep/README.md +1 -1
  558. package/packages/omo-codex/plugin/skills/ast-grep/install.ps1 +5 -3
  559. package/packages/omo-codex/plugin/skills/ast-grep/install.sh +4 -5
  560. package/packages/omo-codex/plugin/skills/ast-grep/references/install.md +2 -2
  561. package/packages/omo-codex/plugin/skills/ast-grep/scripts/ast_grep_helper.py +13 -3
  562. package/packages/omo-codex/plugin/skills/browser/runtime/omowright/index.js +24 -33
  563. package/packages/omo-codex/plugin/skills/browser/runtime/omowright/manifest.json +3 -3
  564. package/packages/omo-codex/plugin/skills/coding-agent-sessions/AGENTS.md +5 -4
  565. package/packages/omo-codex/plugin/skills/coding-agent-sessions/SKILL.md +11 -11
  566. package/packages/omo-codex/plugin/skills/coding-agent-sessions/references/all-platforms.md +2 -2
  567. package/packages/omo-codex/plugin/skills/coding-agent-sessions/references/codex.md +4 -4
  568. package/packages/omo-codex/plugin/skills/coding-agent-sessions/scripts/agent_sessions/cli.py +1 -1
  569. package/packages/omo-codex/plugin/skills/coding-agent-sessions/scripts/find-agent-sessions.py +6 -3
  570. package/packages/omo-codex/plugin/skills/frontend/ATTRIBUTION.md +105 -2
  571. package/packages/omo-codex/plugin/skills/frontend/SKILL.md +40 -14
  572. package/packages/omo-codex/plugin/skills/frontend/references/design/README.md +2 -2
  573. package/packages/omo-codex/plugin/skills/frontend/references/design/_INDEX.md +2 -1
  574. package/packages/omo-codex/plugin/skills/frontend/references/design/component-catalogs.md +14 -10
  575. package/packages/omo-codex/plugin/skills/frontend/references/design/design-system-architecture.md +22 -9
  576. package/packages/omo-codex/plugin/skills/frontend/references/design/grounding.md +29 -0
  577. package/packages/omo-codex/plugin/skills/frontend/references/perfection/craft-floor.md +59 -0
  578. package/packages/omo-codex/plugin/skills/frontend/references/perfection/detect.md +52 -0
  579. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/scripts/design_system.py +2 -0
  580. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/scripts/search.py +2 -0
  581. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/cli.ts +70 -0
  582. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/config.ts +53 -0
  583. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/core/characters.ts +2 -0
  584. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/core/color.ts +150 -0
  585. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/core/page.ts +84 -0
  586. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/core/shadow.ts +40 -0
  587. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/core/source.ts +33 -0
  588. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/detect.ts +77 -0
  589. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/index.ts +23 -0
  590. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/lint.ts +98 -0
  591. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/render/probe-placement.ts +50 -0
  592. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/render/renderer.ts +37 -0
  593. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/render/webview.ts +71 -0
  594. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/report.ts +29 -0
  595. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rule.ts +42 -0
  596. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/ai-color-palette.ts +83 -0
  597. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/cream-palette.ts +35 -0
  598. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/dark-glow.ts +44 -0
  599. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/design-system-color.ts +35 -0
  600. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/gradient-text.ts +59 -0
  601. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/gray-on-color.ts +38 -0
  602. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/index.ts +15 -0
  603. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/low-contrast.ts +57 -0
  604. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/radial-halo.ts +31 -0
  605. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/radial-spotlight-glow.ts +33 -0
  606. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/support/animation-opacity.ts +78 -0
  607. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/support/color-path.ts +15 -0
  608. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/support/contrast-pairs.ts +54 -0
  609. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/support/contrast-role.ts +76 -0
  610. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/support/glow-forms.ts +56 -0
  611. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/support/gradient-samples.ts +134 -0
  612. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/support/gradients.ts +91 -0
  613. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/support/mockup-roots.ts +63 -0
  614. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/support/page-ignore.ts +7 -0
  615. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/support/painted-text.ts +141 -0
  616. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/support/palette-roles.ts +58 -0
  617. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/support/placeholder-contrast.ts +25 -0
  618. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/support/stock-accent.ts +31 -0
  619. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/color/support/text-colors.ts +80 -0
  620. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/copy/aphoristic-cadence.ts +20 -0
  621. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/copy/broken-image.ts +17 -0
  622. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/copy/em-dash-overuse.ts +46 -0
  623. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/copy/index.ts +15 -0
  624. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/copy/marketing-buzzword.ts +33 -0
  625. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/copy/numbered-section-labels.ts +34 -0
  626. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/copy/repeated-container-text.ts +56 -0
  627. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/copy/script-error.ts +38 -0
  628. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/copy/skipped-heading.ts +81 -0
  629. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/copy/support/numbered-label.ts +94 -0
  630. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/copy/support/page-text.ts +37 -0
  631. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/copy/theater-slop-phrase.ts +21 -0
  632. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/blinking-cursor.ts +48 -0
  633. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/border-accent-on-rounded.ts +14 -0
  634. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/bounce-easing.ts +83 -0
  635. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/buried-raster.ts +72 -0
  636. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/codex-grid-background.ts +34 -0
  637. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/design-system-radius.ts +31 -0
  638. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/gpt-thin-border-wide-shadow.ts +66 -0
  639. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/hard-offset-shadow.ts +31 -0
  640. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/hero-eyebrow-chip.ts +19 -0
  641. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/icon-tile-stack.ts +92 -0
  642. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/index.ts +38 -0
  643. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/kicker-above-heading.ts +69 -0
  644. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/marquee.ts +51 -0
  645. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/organic-clip-path.ts +41 -0
  646. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/pulsing-dot.ts +72 -0
  647. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/repeating-stripes-gradient.ts +25 -0
  648. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/shape-assembled-illustration.ts +58 -0
  649. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/side-tab.ts +17 -0
  650. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/support/appearance.ts +110 -0
  651. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/support/assert-cases.ts +25 -0
  652. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/support/borders.ts +150 -0
  653. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/support/clip-geometry.ts +151 -0
  654. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/support/css-candidates.ts +66 -0
  655. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/support/curve-samples.ts +55 -0
  656. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/support/gradient-pattern.ts +40 -0
  657. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/support/keyframes.ts +134 -0
  658. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/support/labels.ts +85 -0
  659. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/decoration/support/raster-state.ts +51 -0
  660. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/index.ts +16 -0
  661. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/body-text-viewport-edge.ts +62 -0
  662. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/clipped-overflow-container.ts +15 -0
  663. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/content-hidden-at-rest.ts +63 -0
  664. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/cramped-padding.ts +97 -0
  665. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/edge-flush-cards.ts +47 -0
  666. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/first-viewport-column-overflow.ts +43 -0
  667. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/heading-rhythm.ts +30 -0
  668. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/index.ts +21 -0
  669. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/monotonous-spacing.ts +32 -0
  670. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/nested-cards.ts +38 -0
  671. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/straggler.ts +28 -0
  672. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/support/cards.ts +114 -0
  673. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/support/clipping.ts +71 -0
  674. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/support/declared-mockups.ts +46 -0
  675. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/support/geometry.ts +73 -0
  676. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/support/hidden-interface.ts +35 -0
  677. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/support/layout-cases.ts +23 -0
  678. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/support/line-breaks.ts +32 -0
  679. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/support/motion.ts +77 -0
  680. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/support/padding.ts +93 -0
  681. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/support/rhythm.ts +161 -0
  682. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/text-occlusion.ts +84 -0
  683. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/text-overflow.ts +72 -0
  684. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/unbalanced-heading.ts +22 -0
  685. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/layout/viewport-reflow.ts +33 -0
  686. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/ai-color-palette.ts +11 -0
  687. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/aphoristic-cadence.ts +14 -0
  688. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/border-accent-on-rounded.ts +20 -0
  689. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/bounce-easing.ts +21 -0
  690. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/broken-image.ts +16 -0
  691. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/codex-grid-background.ts +18 -0
  692. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/dark-glow.ts +21 -0
  693. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/em-dash-overuse.ts +15 -0
  694. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/gradient-text.ts +11 -0
  695. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/gray-on-color.ts +13 -0
  696. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/index.ts +19 -0
  697. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/marketing-buzzword.ts +17 -0
  698. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/marquee.ts +12 -0
  699. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/monotonous-spacing.ts +22 -0
  700. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/overused-font.ts +16 -0
  701. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/radial-halo.ts +14 -0
  702. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/side-tab.ts +58 -0
  703. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/support/accent-scans.ts +78 -0
  704. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/support/check-source.ts +6 -0
  705. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/support/corners.ts +105 -0
  706. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/support/css-effects.ts +81 -0
  707. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/support/css-scopes.ts +131 -0
  708. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/support/image-tags.ts +113 -0
  709. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/support/js-punctuation.ts +34 -0
  710. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/support/markup-scope.ts +44 -0
  711. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/support/source-color.ts +42 -0
  712. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/support/source-shadow.ts +15 -0
  713. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/source/support/source-text.ts +110 -0
  714. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/all-caps-body.ts +15 -0
  715. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/design-system-font-size.ts +23 -0
  716. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/design-system-font.ts +24 -0
  717. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/extreme-negative-tracking.ts +18 -0
  718. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/flat-type-hierarchy.ts +26 -0
  719. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/index.ts +21 -0
  720. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/italic-serif-display.ts +24 -0
  721. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/justified-text.ts +32 -0
  722. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/line-length.ts +28 -0
  723. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/oversized-h1.ts +20 -0
  724. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/overused-font.ts +45 -0
  725. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/support/drawn-enlargement.ts +48 -0
  726. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/support/fading-text.ts +48 -0
  727. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/support/flex-runs.ts +16 -0
  728. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/support/font-family.ts +28 -0
  729. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/support/painted-text.ts +81 -0
  730. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/support/svg-size.ts +57 -0
  731. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/support/text-context.ts +112 -0
  732. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/support/text-lines.ts +43 -0
  733. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/support/type-hierarchy.ts +48 -0
  734. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/tight-leading.ts +47 -0
  735. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/tiny-text.ts +23 -0
  736. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/undersized-ui-text.ts +28 -0
  737. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/rules/typography/wide-tracking.ts +26 -0
  738. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/snapshot/collect.ts +158 -0
  739. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/snapshot/style-props.ts +25 -0
  740. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/testing/build-snapshot.ts +78 -0
  741. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/tsconfig.json +19 -0
  742. package/packages/omo-codex/plugin/skills/frontend/scripts/detect/types.ts +124 -0
  743. package/packages/omo-codex/plugin/skills/lcx-contribute-bug-fix/SKILL.md +51 -55
  744. package/packages/omo-codex/plugin/skills/lcx-contribute-bug-fix/agents/openai.yaml +1 -1
  745. package/packages/omo-codex/plugin/skills/lcx-report-bug/SKILL.md +7 -7
  746. package/packages/omo-codex/plugin/skills/lcx-report-bug/agents/openai.yaml +1 -1
  747. package/packages/omo-codex/plugin/skills/programming/SKILL.md +15 -74
  748. package/packages/omo-codex/plugin/skills/programming/references/go/README.md +1 -1
  749. package/packages/omo-codex/plugin/skills/programming/references/go/bootstrap.md +2 -2
  750. package/packages/omo-codex/plugin/skills/programming/references/python/README.md +4 -4
  751. package/packages/omo-codex/plugin/skills/programming/references/python/one-liners.md +5 -5
  752. package/packages/omo-codex/plugin/skills/programming/references/testing/README.md +82 -0
  753. package/packages/omo-codex/plugin/skills/programming/references/testing/junk-classes.md +56 -0
  754. package/packages/omo-codex/plugin/skills/programming/references/typescript/README.md +1 -2
  755. package/packages/omo-codex/plugin/skills/programming/scripts/go/new-project.ts +197 -0
  756. package/packages/omo-codex/plugin/skills/programming/scripts/python/new-project.ts +231 -0
  757. package/packages/omo-codex/plugin/skills/programming/scripts/python/new-script.ts +134 -0
  758. package/packages/omo-codex/plugin/skills/programming/scripts/rust/new-project.ts +215 -0
  759. package/packages/omo-codex/plugin/skills/programming/scripts/shared/run-tool.ts +19 -0
  760. package/packages/omo-codex/plugin/skills/ultimate-browsing/SKILL.md +5 -4
  761. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/AGENTS.md +2 -2
  762. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/__main__.py +9 -6
  763. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/summary.py +1 -1
  764. package/packages/omo-codex/plugin/skills/ultimate-browsing/references/insane-search/README.md +4 -4
  765. package/packages/omo-codex/plugin/skills/ultimate-browsing/scripts/extract_cookies.py +4 -2
  766. package/packages/omo-codex/plugin/skills/ultrawork/SKILL.md +3 -0
  767. package/packages/omo-codex/plugin/skills/ulw-research/AGENTS.md +8 -4
  768. package/packages/omo-codex/plugin/skills/ulw-research/SKILL.md +7 -316
  769. package/packages/omo-codex/plugin/skills/ulw-research/references/deliverable-phase.md +23 -21
  770. package/packages/omo-codex/plugin/skills/ulw-research/references/fact-ledger-grammar.md +7 -3
  771. package/packages/omo-codex/plugin/skills/ulw-research/references/fact-ledger.md +42 -8
  772. package/packages/omo-codex/plugin/skills/ulw-research/references/fidelity-claim-kinds.md +1 -1
  773. package/packages/omo-codex/plugin/skills/ulw-research/references/markdown-blocks.md +12 -0
  774. package/packages/omo-codex/plugin/skills/ulw-research/references/report-gates.md +12 -5
  775. package/packages/omo-codex/plugin/skills/ulw-research/references/research-collection.md +195 -0
  776. package/packages/omo-codex/plugin/skills/ulw-research/references/research-delivery.md +123 -0
  777. package/packages/omo-codex/plugin/skills/ulw-research/scripts/claim-kinds.mjs +33 -5
  778. package/packages/omo-codex/plugin/skills/ulw-research/scripts/contracts.mjs +13 -4
  779. package/packages/omo-codex/plugin/skills/ulw-research/scripts/conversion-probe.mjs +229 -0
  780. package/packages/omo-codex/plugin/skills/ulw-research/scripts/css-hiding.mjs +158 -0
  781. package/packages/omo-codex/plugin/skills/ulw-research/scripts/css-lite.mjs +4 -2
  782. package/packages/omo-codex/plugin/skills/ulw-research/scripts/entities.mjs +13 -4
  783. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fact-commands-fill.mjs +11 -1
  784. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fact-commands-meaning.mjs +13 -9
  785. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fact-commands-polish.mjs +40 -18
  786. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fact-commands-verify.mjs +25 -8
  787. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fact-commands.mjs +35 -16
  788. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fact-derive.mjs +7 -2
  789. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fact-fill.mjs +6 -4
  790. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fact-ledger-kinds.mjs +6 -7
  791. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fact-locate.mjs +15 -9
  792. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fidelity-claims.mjs +4 -3
  793. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fidelity-csv.mjs +32 -0
  794. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fidelity-lexicon.mjs +1 -1
  795. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fidelity-originals.mjs +161 -0
  796. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fidelity-policy.mjs +4 -4
  797. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fidelity-records.mjs +81 -14
  798. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fidelity-snapshot-readability.mjs +49 -0
  799. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fidelity-sources.mjs +76 -0
  800. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fidelity-trace.mjs +25 -11
  801. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fidelity-value-unit.mjs +202 -0
  802. package/packages/omo-codex/plugin/skills/ulw-research/scripts/fidelity-values.mjs +40 -39
  803. package/packages/omo-codex/plugin/skills/ulw-research/scripts/gates-fidelity.mjs +8 -6
  804. package/packages/omo-codex/plugin/skills/ulw-research/scripts/gates-static.mjs +10 -1
  805. package/packages/omo-codex/plugin/skills/ulw-research/scripts/html-lite.mjs +6 -2
  806. package/packages/omo-codex/plugin/skills/ulw-research/scripts/html-markup.mjs +2 -2
  807. package/packages/omo-codex/plugin/skills/ulw-research/scripts/html-text-map.mjs +140 -0
  808. package/packages/omo-codex/plugin/skills/ulw-research/scripts/markdown-closers.mjs +126 -0
  809. package/packages/omo-codex/plugin/skills/ulw-research/scripts/md-lite.mjs +1 -1
  810. package/packages/omo-codex/plugin/skills/ulw-research/scripts/number-grammar.mjs +33 -0
  811. package/packages/omo-codex/plugin/skills/ulw-research/scripts/numerals.mjs +18 -7
  812. package/packages/omo-codex/plugin/skills/ulw-research/scripts/outcome-start.mjs +66 -0
  813. package/packages/omo-codex/plugin/skills/ulw-research/scripts/outcome.mjs +11 -22
  814. package/packages/omo-codex/plugin/skills/ulw-research/scripts/placeholder.mjs +18 -6
  815. package/packages/omo-codex/plugin/skills/ulw-research/scripts/polish-apply.mjs +3 -2
  816. package/packages/omo-codex/plugin/skills/ulw-research/scripts/raw-decode.mjs +110 -0
  817. package/packages/omo-codex/plugin/skills/ulw-research/scripts/raw-locator.mjs +47 -0
  818. package/packages/omo-codex/plugin/skills/ulw-research/scripts/report-tools-commands.mjs +1 -1
  819. package/packages/omo-codex/plugin/skills/ulw-research/scripts/report-tools.mjs +7 -1
  820. package/packages/omo-codex/plugin/skills/ulw-research/scripts/source-commands.mjs +79 -26
  821. package/packages/omo-codex/plugin/skills/ulw-research/scripts/source-refresh.mjs +82 -0
  822. package/packages/omo-codex/plugin/skills/ulw-research/scripts/source-snapshot.mjs +73 -69
  823. package/packages/omo-codex/plugin/skills/ulw-research/scripts/source-view.mjs +89 -0
  824. package/packages/omo-codex/plugin/skills/ulw-research/scripts/sources-citation.mjs +203 -0
  825. package/packages/omo-codex/plugin/skills/ulw-research/scripts/units.mjs +14 -3
  826. package/packages/omo-codex/plugin/skills/visual-qa/SKILL.md +12 -1
  827. package/packages/omo-codex/plugin/test/auto-update.test.mjs +62 -0
  828. package/packages/omo-codex/plugin/test/payload-equivalence.test.mjs +18 -6
  829. package/packages/omo-codex/plugin/test/sync-skills.test.mjs +4 -3
  830. package/packages/omo-codex/scripts/install-dist/install-local.mjs +413 -245
  831. package/packages/prompts-core/prompts/ultrawork/codex.md +3 -0
  832. package/packages/shared-skills/skill-source-filter.mjs +6 -2
  833. package/packages/shared-skills/skills/ast-grep/README.md +1 -1
  834. package/packages/shared-skills/skills/ast-grep/install.ps1 +5 -3
  835. package/packages/shared-skills/skills/ast-grep/install.sh +4 -5
  836. package/packages/shared-skills/skills/ast-grep/references/install.md +2 -2
  837. package/packages/shared-skills/skills/ast-grep/scripts/ast_grep_helper.py +13 -3
  838. package/packages/shared-skills/skills/browser/runtime/omowright/index.js +24 -33
  839. package/packages/shared-skills/skills/browser/runtime/omowright/manifest.json +3 -3
  840. package/packages/shared-skills/skills/coding-agent-sessions/AGENTS.md +5 -4
  841. package/packages/shared-skills/skills/coding-agent-sessions/SKILL.md +11 -11
  842. package/packages/shared-skills/skills/coding-agent-sessions/references/all-platforms.md +2 -2
  843. package/packages/shared-skills/skills/coding-agent-sessions/references/codex.md +4 -4
  844. package/packages/shared-skills/skills/coding-agent-sessions/scripts/agent_sessions/cli.py +1 -1
  845. package/packages/shared-skills/skills/coding-agent-sessions/scripts/find-agent-sessions.py +6 -3
  846. package/packages/shared-skills/skills/frontend/ATTRIBUTION.md +105 -2
  847. package/packages/shared-skills/skills/frontend/SKILL.md +40 -14
  848. package/packages/shared-skills/skills/frontend/references/design/README.md +2 -2
  849. package/packages/shared-skills/skills/frontend/references/design/_INDEX.md +2 -1
  850. package/packages/shared-skills/skills/frontend/references/design/component-catalogs.md +14 -10
  851. package/packages/shared-skills/skills/frontend/references/design/design-system-architecture.md +22 -9
  852. package/packages/shared-skills/skills/frontend/references/design/grounding.md +29 -0
  853. package/packages/shared-skills/skills/frontend/references/perfection/craft-floor.md +59 -0
  854. package/packages/shared-skills/skills/frontend/references/perfection/detect.md +52 -0
  855. package/packages/shared-skills/skills/frontend/references/ui-ux-db/scripts/design_system.py +2 -0
  856. package/packages/shared-skills/skills/frontend/references/ui-ux-db/scripts/search.py +2 -0
  857. package/packages/shared-skills/skills/frontend/scripts/detect/cli.ts +70 -0
  858. package/packages/shared-skills/skills/frontend/scripts/detect/config.test.ts +26 -0
  859. package/packages/shared-skills/skills/frontend/scripts/detect/config.ts +53 -0
  860. package/packages/shared-skills/skills/frontend/scripts/detect/core/characters.ts +2 -0
  861. package/packages/shared-skills/skills/frontend/scripts/detect/core/color.test.ts +29 -0
  862. package/packages/shared-skills/skills/frontend/scripts/detect/core/color.ts +150 -0
  863. package/packages/shared-skills/skills/frontend/scripts/detect/core/page.ts +84 -0
  864. package/packages/shared-skills/skills/frontend/scripts/detect/core/shadow.ts +40 -0
  865. package/packages/shared-skills/skills/frontend/scripts/detect/core/source.ts +33 -0
  866. package/packages/shared-skills/skills/frontend/scripts/detect/detect.ts +77 -0
  867. package/packages/shared-skills/skills/frontend/scripts/detect/index.ts +23 -0
  868. package/packages/shared-skills/skills/frontend/scripts/detect/lint.test.ts +27 -0
  869. package/packages/shared-skills/skills/frontend/scripts/detect/lint.ts +98 -0
  870. package/packages/shared-skills/skills/frontend/scripts/detect/render/probe-placement.test.ts +19 -0
  871. package/packages/shared-skills/skills/frontend/scripts/detect/render/probe-placement.ts +50 -0
  872. package/packages/shared-skills/skills/frontend/scripts/detect/render/renderer.ts +37 -0
  873. package/packages/shared-skills/skills/frontend/scripts/detect/render/webview.ts +71 -0
  874. package/packages/shared-skills/skills/frontend/scripts/detect/report.ts +29 -0
  875. package/packages/shared-skills/skills/frontend/scripts/detect/rule.ts +42 -0
  876. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/ai-color-palette.test.ts +74 -0
  877. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/ai-color-palette.ts +83 -0
  878. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/cream-palette.test.ts +24 -0
  879. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/cream-palette.ts +35 -0
  880. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/dark-glow.test.ts +47 -0
  881. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/dark-glow.ts +44 -0
  882. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/design-system-color.test.ts +26 -0
  883. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/design-system-color.ts +35 -0
  884. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/gradient-text.test.ts +24 -0
  885. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/gradient-text.ts +59 -0
  886. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/gray-on-color.test.ts +39 -0
  887. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/gray-on-color.ts +38 -0
  888. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/index.ts +15 -0
  889. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/low-contrast.test.ts +209 -0
  890. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/low-contrast.ts +57 -0
  891. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/placeholder-contrast.test.ts +62 -0
  892. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/radial-halo.test.ts +40 -0
  893. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/radial-halo.ts +31 -0
  894. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/radial-spotlight-glow.test.ts +27 -0
  895. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/radial-spotlight-glow.ts +33 -0
  896. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/support/animation-opacity.ts +78 -0
  897. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/support/color-path.ts +15 -0
  898. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/support/contrast-pairs.ts +54 -0
  899. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/support/contrast-role.ts +76 -0
  900. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/support/glow-forms.ts +56 -0
  901. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/support/gradient-samples.ts +134 -0
  902. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/support/gradients.ts +91 -0
  903. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/support/mockup-roots.ts +63 -0
  904. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/support/page-ignore.ts +7 -0
  905. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/support/painted-text.ts +141 -0
  906. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/support/palette-roles.ts +58 -0
  907. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/support/placeholder-contrast.ts +25 -0
  908. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/support/stock-accent.ts +31 -0
  909. package/packages/shared-skills/skills/frontend/scripts/detect/rules/color/support/text-colors.ts +80 -0
  910. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/aphoristic-cadence.test.ts +18 -0
  911. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/aphoristic-cadence.ts +20 -0
  912. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/broken-image.test.ts +25 -0
  913. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/broken-image.ts +17 -0
  914. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/em-dash-overuse.test.ts +39 -0
  915. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/em-dash-overuse.ts +46 -0
  916. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/index.ts +15 -0
  917. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/marketing-buzzword.test.ts +18 -0
  918. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/marketing-buzzword.ts +33 -0
  919. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/numbered-section-labels.test.ts +58 -0
  920. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/numbered-section-labels.ts +34 -0
  921. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/repeated-container-text.test.ts +43 -0
  922. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/repeated-container-text.ts +56 -0
  923. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/script-error.test.ts +48 -0
  924. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/script-error.ts +38 -0
  925. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/skipped-heading.test.ts +49 -0
  926. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/skipped-heading.ts +81 -0
  927. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/support/numbered-label.ts +94 -0
  928. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/support/page-text.ts +37 -0
  929. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/theater-slop-phrase.test.ts +17 -0
  930. package/packages/shared-skills/skills/frontend/scripts/detect/rules/copy/theater-slop-phrase.ts +21 -0
  931. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/blinking-cursor.test.ts +43 -0
  932. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/blinking-cursor.ts +48 -0
  933. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/border-accent-on-rounded.test.ts +33 -0
  934. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/border-accent-on-rounded.ts +14 -0
  935. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/bounce-easing.test.ts +72 -0
  936. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/bounce-easing.ts +83 -0
  937. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/buried-raster.test.ts +95 -0
  938. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/buried-raster.ts +72 -0
  939. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/codex-grid-background.test.ts +28 -0
  940. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/codex-grid-background.ts +34 -0
  941. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/design-system-radius.test.ts +37 -0
  942. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/design-system-radius.ts +31 -0
  943. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/gpt-thin-border-wide-shadow.test.ts +59 -0
  944. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/gpt-thin-border-wide-shadow.ts +66 -0
  945. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/hard-offset-shadow.test.ts +45 -0
  946. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/hard-offset-shadow.ts +31 -0
  947. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/hero-eyebrow-chip.test.ts +76 -0
  948. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/hero-eyebrow-chip.ts +19 -0
  949. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/icon-tile-stack.test.ts +67 -0
  950. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/icon-tile-stack.ts +92 -0
  951. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/index.ts +38 -0
  952. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/kicker-above-heading.test.ts +126 -0
  953. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/kicker-above-heading.ts +69 -0
  954. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/marquee.test.ts +63 -0
  955. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/marquee.ts +51 -0
  956. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/organic-clip-path.test.ts +67 -0
  957. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/organic-clip-path.ts +41 -0
  958. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/pulsing-dot.test.ts +58 -0
  959. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/pulsing-dot.ts +72 -0
  960. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/repeating-stripes-gradient.test.ts +26 -0
  961. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/repeating-stripes-gradient.ts +25 -0
  962. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/shape-assembled-illustration.test.ts +59 -0
  963. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/shape-assembled-illustration.ts +58 -0
  964. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/side-tab.test.ts +91 -0
  965. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/side-tab.ts +17 -0
  966. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/support/appearance.ts +110 -0
  967. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/support/assert-cases.ts +25 -0
  968. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/support/borders.ts +150 -0
  969. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/support/clip-geometry.ts +151 -0
  970. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/support/css-candidates.ts +66 -0
  971. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/support/curve-samples.ts +55 -0
  972. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/support/gradient-pattern.ts +40 -0
  973. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/support/keyframes.ts +134 -0
  974. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/support/labels.ts +85 -0
  975. package/packages/shared-skills/skills/frontend/scripts/detect/rules/decoration/support/raster-state.ts +51 -0
  976. package/packages/shared-skills/skills/frontend/scripts/detect/rules/index.ts +16 -0
  977. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/body-text-viewport-edge.test.ts +64 -0
  978. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/body-text-viewport-edge.ts +62 -0
  979. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/clipped-overflow-container.test.ts +40 -0
  980. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/clipped-overflow-container.ts +15 -0
  981. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/content-hidden-at-rest.test.ts +62 -0
  982. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/content-hidden-at-rest.ts +63 -0
  983. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/cramped-padding.test.ts +61 -0
  984. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/cramped-padding.ts +97 -0
  985. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/edge-flush-cards.test.ts +43 -0
  986. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/edge-flush-cards.ts +47 -0
  987. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/first-viewport-column-overflow.test.ts +28 -0
  988. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/first-viewport-column-overflow.ts +43 -0
  989. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/heading-rhythm.test.ts +67 -0
  990. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/heading-rhythm.ts +30 -0
  991. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/index.ts +21 -0
  992. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/monotonous-spacing.test.ts +19 -0
  993. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/monotonous-spacing.ts +32 -0
  994. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/nested-cards.test.ts +60 -0
  995. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/nested-cards.ts +38 -0
  996. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/straggler.test.ts +33 -0
  997. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/straggler.ts +28 -0
  998. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/support/cards.ts +114 -0
  999. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/support/clipping.ts +71 -0
  1000. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/support/declared-mockups.ts +46 -0
  1001. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/support/geometry.ts +73 -0
  1002. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/support/hidden-interface.ts +35 -0
  1003. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/support/layout-cases.ts +23 -0
  1004. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/support/line-breaks.ts +32 -0
  1005. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/support/motion.ts +77 -0
  1006. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/support/padding.ts +93 -0
  1007. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/support/rhythm.ts +161 -0
  1008. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/text-occlusion.test.ts +37 -0
  1009. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/text-occlusion.ts +84 -0
  1010. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/text-overflow.test.ts +83 -0
  1011. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/text-overflow.ts +72 -0
  1012. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/unbalanced-heading.test.ts +22 -0
  1013. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/unbalanced-heading.ts +22 -0
  1014. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/viewport-reflow.test.ts +34 -0
  1015. package/packages/shared-skills/skills/frontend/scripts/detect/rules/layout/viewport-reflow.ts +33 -0
  1016. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/ai-color-palette.test.ts +13 -0
  1017. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/ai-color-palette.ts +11 -0
  1018. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/aphoristic-cadence.test.ts +12 -0
  1019. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/aphoristic-cadence.ts +14 -0
  1020. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/border-accent-on-rounded.test.ts +14 -0
  1021. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/border-accent-on-rounded.ts +20 -0
  1022. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/bounce-easing.test.ts +19 -0
  1023. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/bounce-easing.ts +21 -0
  1024. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/broken-image.test.ts +27 -0
  1025. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/broken-image.ts +16 -0
  1026. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/codex-grid-background.test.ts +11 -0
  1027. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/codex-grid-background.ts +18 -0
  1028. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/dark-glow.test.ts +15 -0
  1029. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/dark-glow.ts +21 -0
  1030. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/em-dash-overuse.test.ts +13 -0
  1031. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/em-dash-overuse.ts +15 -0
  1032. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/gradient-text.test.ts +12 -0
  1033. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/gradient-text.ts +11 -0
  1034. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/gray-on-color.test.ts +20 -0
  1035. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/gray-on-color.ts +13 -0
  1036. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/index.ts +19 -0
  1037. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/marketing-buzzword.test.ts +12 -0
  1038. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/marketing-buzzword.ts +17 -0
  1039. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/marquee.test.ts +12 -0
  1040. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/marquee.ts +12 -0
  1041. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/monotonous-spacing.test.ts +13 -0
  1042. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/monotonous-spacing.ts +22 -0
  1043. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/overused-font.test.ts +21 -0
  1044. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/overused-font.ts +16 -0
  1045. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/radial-halo.test.ts +16 -0
  1046. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/radial-halo.ts +14 -0
  1047. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/side-tab.test.ts +29 -0
  1048. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/side-tab.ts +58 -0
  1049. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/support/accent-scans.ts +78 -0
  1050. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/support/check-source.ts +6 -0
  1051. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/support/corners.ts +105 -0
  1052. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/support/css-effects.ts +81 -0
  1053. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/support/css-scopes.ts +131 -0
  1054. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/support/image-tags.ts +113 -0
  1055. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/support/js-punctuation.ts +34 -0
  1056. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/support/markup-scope.ts +44 -0
  1057. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/support/source-color.ts +42 -0
  1058. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/support/source-shadow.ts +15 -0
  1059. package/packages/shared-skills/skills/frontend/scripts/detect/rules/source/support/source-text.ts +110 -0
  1060. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/all-caps-body.test.ts +24 -0
  1061. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/all-caps-body.ts +15 -0
  1062. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/design-system-font-size.test.ts +21 -0
  1063. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/design-system-font-size.ts +23 -0
  1064. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/design-system-font.test.ts +22 -0
  1065. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/design-system-font.ts +24 -0
  1066. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/extreme-negative-tracking.test.ts +23 -0
  1067. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/extreme-negative-tracking.ts +18 -0
  1068. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/flat-type-hierarchy.test.ts +33 -0
  1069. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/flat-type-hierarchy.ts +26 -0
  1070. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/index.ts +21 -0
  1071. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/italic-serif-display.test.ts +24 -0
  1072. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/italic-serif-display.ts +24 -0
  1073. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/justified-text.test.ts +31 -0
  1074. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/justified-text.ts +32 -0
  1075. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/line-length.test.ts +43 -0
  1076. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/line-length.ts +28 -0
  1077. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/oversized-h1.test.ts +26 -0
  1078. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/oversized-h1.ts +20 -0
  1079. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/overused-font.test.ts +35 -0
  1080. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/overused-font.ts +45 -0
  1081. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/support/drawn-enlargement.ts +48 -0
  1082. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/support/fading-text.ts +48 -0
  1083. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/support/flex-runs.ts +16 -0
  1084. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/support/font-family.ts +28 -0
  1085. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/support/painted-text.test.ts +63 -0
  1086. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/support/painted-text.ts +81 -0
  1087. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/support/svg-size.ts +57 -0
  1088. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/support/text-context.ts +112 -0
  1089. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/support/text-lines.ts +43 -0
  1090. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/support/type-hierarchy.ts +48 -0
  1091. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/tight-leading.test.ts +54 -0
  1092. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/tight-leading.ts +47 -0
  1093. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/tiny-text.test.ts +60 -0
  1094. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/tiny-text.ts +23 -0
  1095. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/undersized-ui-text.test.ts +98 -0
  1096. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/undersized-ui-text.ts +28 -0
  1097. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/wide-tracking.test.ts +26 -0
  1098. package/packages/shared-skills/skills/frontend/scripts/detect/rules/typography/wide-tracking.ts +26 -0
  1099. package/packages/shared-skills/skills/frontend/scripts/detect/snapshot/collect.ts +158 -0
  1100. package/packages/shared-skills/skills/frontend/scripts/detect/snapshot/style-props.ts +25 -0
  1101. package/packages/shared-skills/skills/frontend/scripts/detect/testing/build-snapshot.ts +78 -0
  1102. package/packages/shared-skills/skills/frontend/scripts/detect/tsconfig.json +19 -0
  1103. package/packages/shared-skills/skills/frontend/scripts/detect/types.ts +124 -0
  1104. package/packages/shared-skills/skills/programming/SKILL.md +15 -74
  1105. package/packages/shared-skills/skills/programming/references/go/README.md +1 -1
  1106. package/packages/shared-skills/skills/programming/references/go/bootstrap.md +2 -2
  1107. package/packages/shared-skills/skills/programming/references/python/README.md +4 -4
  1108. package/packages/shared-skills/skills/programming/references/python/one-liners.md +5 -5
  1109. package/packages/shared-skills/skills/programming/references/testing/README.md +82 -0
  1110. package/packages/shared-skills/skills/programming/references/testing/junk-classes.md +56 -0
  1111. package/packages/shared-skills/skills/programming/references/typescript/README.md +1 -2
  1112. package/packages/shared-skills/skills/programming/scripts/go/new-project.ts +197 -0
  1113. package/packages/shared-skills/skills/programming/scripts/python/new-project.ts +231 -0
  1114. package/packages/shared-skills/skills/programming/scripts/python/new-script.ts +134 -0
  1115. package/packages/shared-skills/skills/programming/scripts/rust/new-project.ts +215 -0
  1116. package/packages/shared-skills/skills/programming/scripts/scaffolders.test.ts +96 -0
  1117. package/packages/shared-skills/skills/programming/scripts/shared/run-tool.ts +19 -0
  1118. package/packages/shared-skills/skills/ultimate-browsing/SKILL.md +5 -4
  1119. package/packages/shared-skills/skills/ultimate-browsing/engine/AGENTS.md +2 -2
  1120. package/packages/shared-skills/skills/ultimate-browsing/engine/__main__.py +9 -6
  1121. package/packages/shared-skills/skills/ultimate-browsing/engine/summary.py +1 -1
  1122. package/packages/shared-skills/skills/ultimate-browsing/references/insane-search/README.md +4 -4
  1123. package/packages/shared-skills/skills/ultimate-browsing/scripts/extract_cookies.py +4 -2
  1124. package/packages/shared-skills/skills/ulw-research/AGENTS.md +8 -4
  1125. package/packages/shared-skills/skills/ulw-research/SKILL.md +7 -316
  1126. package/packages/shared-skills/skills/ulw-research/references/deliverable-phase.md +23 -21
  1127. package/packages/shared-skills/skills/ulw-research/references/fact-ledger-grammar.md +7 -3
  1128. package/packages/shared-skills/skills/ulw-research/references/fact-ledger.md +42 -8
  1129. package/packages/shared-skills/skills/ulw-research/references/fidelity-claim-kinds.md +1 -1
  1130. package/packages/shared-skills/skills/ulw-research/references/markdown-blocks.md +12 -0
  1131. package/packages/shared-skills/skills/ulw-research/references/report-gates.md +12 -5
  1132. package/packages/shared-skills/skills/ulw-research/references/research-collection.md +195 -0
  1133. package/packages/shared-skills/skills/ulw-research/references/research-delivery.md +123 -0
  1134. package/packages/shared-skills/skills/ulw-research/scripts/claim-kinds.mjs +33 -5
  1135. package/packages/shared-skills/skills/ulw-research/scripts/claim-kinds.test.ts +37 -2
  1136. package/packages/shared-skills/skills/ulw-research/scripts/claim-prefix.test.ts +76 -0
  1137. package/packages/shared-skills/skills/ulw-research/scripts/contracts-validation.test.ts +83 -0
  1138. package/packages/shared-skills/skills/ulw-research/scripts/contracts.mjs +13 -4
  1139. package/packages/shared-skills/skills/ulw-research/scripts/contracts.test.ts +6 -110
  1140. package/packages/shared-skills/skills/ulw-research/scripts/conversion-altered.test.ts +154 -0
  1141. package/packages/shared-skills/skills/ulw-research/scripts/conversion-originals.test.ts +297 -0
  1142. package/packages/shared-skills/skills/ulw-research/scripts/conversion-probe-classes.test.ts +361 -0
  1143. package/packages/shared-skills/skills/ulw-research/scripts/conversion-probe.mjs +229 -0
  1144. package/packages/shared-skills/skills/ulw-research/scripts/conversion-probe.test.ts +218 -0
  1145. package/packages/shared-skills/skills/ulw-research/scripts/copy-returns-polish.test.ts +4 -3
  1146. package/packages/shared-skills/skills/ulw-research/scripts/css-hiding.mjs +158 -0
  1147. package/packages/shared-skills/skills/ulw-research/scripts/css-lite.mjs +4 -2
  1148. package/packages/shared-skills/skills/ulw-research/scripts/delivery-barrier-meaning.test.ts +186 -0
  1149. package/packages/shared-skills/skills/ulw-research/scripts/delivery-barrier.test.ts +40 -87
  1150. package/packages/shared-skills/skills/ulw-research/scripts/entities.mjs +13 -4
  1151. package/packages/shared-skills/skills/ulw-research/scripts/fact-commands-fill.mjs +11 -1
  1152. package/packages/shared-skills/skills/ulw-research/scripts/fact-commands-meaning.mjs +13 -9
  1153. package/packages/shared-skills/skills/ulw-research/scripts/fact-commands-polish.mjs +40 -18
  1154. package/packages/shared-skills/skills/ulw-research/scripts/fact-commands-verify.mjs +25 -8
  1155. package/packages/shared-skills/skills/ulw-research/scripts/fact-commands.mjs +35 -16
  1156. package/packages/shared-skills/skills/ulw-research/scripts/fact-derive-2.test.ts +149 -0
  1157. package/packages/shared-skills/skills/ulw-research/scripts/fact-derive.mjs +7 -2
  1158. package/packages/shared-skills/skills/ulw-research/scripts/fact-derive.test.ts +7 -192
  1159. package/packages/shared-skills/skills/ulw-research/scripts/fact-fill.mjs +6 -4
  1160. package/packages/shared-skills/skills/ulw-research/scripts/fact-ledger-kinds.mjs +6 -7
  1161. package/packages/shared-skills/skills/ulw-research/scripts/fact-ledger-kinds.test.ts +2 -1
  1162. package/packages/shared-skills/skills/ulw-research/scripts/fact-ledger-legacy.test.ts +2 -1
  1163. package/packages/shared-skills/skills/ulw-research/scripts/fact-locate.mjs +15 -9
  1164. package/packages/shared-skills/skills/ulw-research/scripts/fact-unit-dimensions-2.test.ts +149 -0
  1165. package/packages/shared-skills/skills/ulw-research/scripts/fact-unit-dimensions.test.ts +4 -168
  1166. package/packages/shared-skills/skills/ulw-research/scripts/fact-unit-rules.test.ts +3 -229
  1167. package/packages/shared-skills/skills/ulw-research/scripts/fidelity-claims.mjs +4 -3
  1168. package/packages/shared-skills/skills/ulw-research/scripts/fidelity-csv.mjs +32 -0
  1169. package/packages/shared-skills/skills/ulw-research/scripts/fidelity-lexicon.mjs +1 -1
  1170. package/packages/shared-skills/skills/ulw-research/scripts/fidelity-originals.mjs +161 -0
  1171. package/packages/shared-skills/skills/ulw-research/scripts/fidelity-policy.mjs +4 -4
  1172. package/packages/shared-skills/skills/ulw-research/scripts/fidelity-records.mjs +81 -14
  1173. package/packages/shared-skills/skills/ulw-research/scripts/fidelity-snapshot-readability.mjs +49 -0
  1174. package/packages/shared-skills/skills/ulw-research/scripts/fidelity-sources.mjs +76 -0
  1175. package/packages/shared-skills/skills/ulw-research/scripts/fidelity-trace.mjs +25 -11
  1176. package/packages/shared-skills/skills/ulw-research/scripts/fidelity-value-unit.mjs +202 -0
  1177. package/packages/shared-skills/skills/ulw-research/scripts/fidelity-values.mjs +40 -39
  1178. package/packages/shared-skills/skills/ulw-research/scripts/fidelity-values.test.ts +8 -29
  1179. package/packages/shared-skills/skills/ulw-research/scripts/gates-fidelity.mjs +8 -6
  1180. package/packages/shared-skills/skills/ulw-research/scripts/gates-static-headings.test.ts +17 -0
  1181. package/packages/shared-skills/skills/ulw-research/scripts/gates-static.mjs +10 -1
  1182. package/packages/shared-skills/skills/ulw-research/scripts/html-lite.mjs +6 -2
  1183. package/packages/shared-skills/skills/ulw-research/scripts/html-markup.mjs +2 -2
  1184. package/packages/shared-skills/skills/ulw-research/scripts/html-text-map.mjs +140 -0
  1185. package/packages/shared-skills/skills/ulw-research/scripts/html-text-map.test.ts +148 -0
  1186. package/packages/shared-skills/skills/ulw-research/scripts/markdown-closers.mjs +126 -0
  1187. package/packages/shared-skills/skills/ulw-research/scripts/md-lite-boundaries.test.ts +46 -0
  1188. package/packages/shared-skills/skills/ulw-research/scripts/md-lite.mjs +1 -1
  1189. package/packages/shared-skills/skills/ulw-research/scripts/number-grammar.mjs +33 -0
  1190. package/packages/shared-skills/skills/ulw-research/scripts/number-grammar.test.ts +36 -0
  1191. package/packages/shared-skills/skills/ulw-research/scripts/numerals.mjs +18 -7
  1192. package/packages/shared-skills/skills/ulw-research/scripts/numerals.test.ts +3 -0
  1193. package/packages/shared-skills/skills/ulw-research/scripts/outcome-start.mjs +66 -0
  1194. package/packages/shared-skills/skills/ulw-research/scripts/outcome-start.test.ts +109 -0
  1195. package/packages/shared-skills/skills/ulw-research/scripts/outcome.mjs +11 -22
  1196. package/packages/shared-skills/skills/ulw-research/scripts/page-source-locator.test.ts +187 -0
  1197. package/packages/shared-skills/skills/ulw-research/scripts/placeholder.mjs +18 -6
  1198. package/packages/shared-skills/skills/ulw-research/scripts/polish-apply.mjs +3 -2
  1199. package/packages/shared-skills/skills/ulw-research/scripts/polish-markup.test.ts +15 -1
  1200. package/packages/shared-skills/skills/ulw-research/scripts/polish-partial.test.ts +42 -0
  1201. package/packages/shared-skills/skills/ulw-research/scripts/raw-decode.mjs +110 -0
  1202. package/packages/shared-skills/skills/ulw-research/scripts/raw-locator.mjs +47 -0
  1203. package/packages/shared-skills/skills/ulw-research/scripts/raw-snapshot.test.ts +139 -0
  1204. package/packages/shared-skills/skills/ulw-research/scripts/report-tools-2.test.ts +233 -0
  1205. package/packages/shared-skills/skills/ulw-research/scripts/report-tools-3.test.ts +141 -0
  1206. package/packages/shared-skills/skills/ulw-research/scripts/report-tools-4.test.ts +135 -0
  1207. package/packages/shared-skills/skills/ulw-research/scripts/report-tools-5.test.ts +231 -0
  1208. package/packages/shared-skills/skills/ulw-research/scripts/report-tools-commands.mjs +1 -1
  1209. package/packages/shared-skills/skills/ulw-research/scripts/report-tools.mjs +7 -1
  1210. package/packages/shared-skills/skills/ulw-research/scripts/report-tools.test.ts +5 -800
  1211. package/packages/shared-skills/skills/ulw-research/scripts/snapshot-readability.test.ts +116 -0
  1212. package/packages/shared-skills/skills/ulw-research/scripts/source-commands.mjs +79 -26
  1213. package/packages/shared-skills/skills/ulw-research/scripts/source-integrity.test.ts +243 -0
  1214. package/packages/shared-skills/skills/ulw-research/scripts/source-refresh.mjs +82 -0
  1215. package/packages/shared-skills/skills/ulw-research/scripts/source-snapshot.mjs +73 -69
  1216. package/packages/shared-skills/skills/ulw-research/scripts/source-snapshot.test.ts +7 -4
  1217. package/packages/shared-skills/skills/ulw-research/scripts/source-view.mjs +89 -0
  1218. package/packages/shared-skills/skills/ulw-research/scripts/sources-citation.mjs +203 -0
  1219. package/packages/shared-skills/skills/ulw-research/scripts/sources-citation.test.ts +236 -0
  1220. package/packages/shared-skills/skills/ulw-research/scripts/tests/contracts-support.ts +147 -0
  1221. package/packages/shared-skills/skills/ulw-research/scripts/tests/delivery-barrier-session.ts +59 -0
  1222. package/packages/shared-skills/skills/ulw-research/scripts/tests/derive-clock.ts +4 -0
  1223. package/packages/shared-skills/skills/ulw-research/scripts/tests/fact-derive-support.ts +65 -0
  1224. package/packages/shared-skills/skills/ulw-research/scripts/tests/fact-unit-dimensions-support.ts +41 -0
  1225. package/packages/shared-skills/skills/ulw-research/scripts/tests/fact-unit-rules-support.ts +241 -0
  1226. package/packages/shared-skills/skills/ulw-research/scripts/tests/fidelity-values-support.ts +30 -0
  1227. package/packages/shared-skills/skills/ulw-research/scripts/tests/fixtures/conversion-probe.html +14 -0
  1228. package/packages/shared-skills/skills/ulw-research/scripts/tests/fixtures/sources-shapes.html +20 -0
  1229. package/packages/shared-skills/skills/ulw-research/scripts/tests/numeral-classes.ts +196 -0
  1230. package/packages/shared-skills/skills/ulw-research/scripts/tests/report-tools-support.ts +182 -0
  1231. package/packages/shared-skills/skills/ulw-research/scripts/tests/value-mode-support.ts +48 -0
  1232. package/packages/shared-skills/skills/ulw-research/scripts/units.mjs +14 -3
  1233. package/packages/shared-skills/skills/ulw-research/scripts/units.test.ts +10 -0
  1234. package/packages/shared-skills/skills/ulw-research/scripts/value-mode-unit-classes.test.ts +255 -0
  1235. package/packages/shared-skills/skills/ulw-research/scripts/value-mode-unit.test.ts +179 -0
  1236. package/packages/shared-skills/skills/ulw-research/scripts/value-rules-cli.test.ts +157 -0
  1237. package/packages/shared-skills/skills/ulw-research/scripts/value-rules-followups.test.ts +72 -0
  1238. package/packages/shared-skills/skills/ulw-research/scripts/value-rules-priority.test.ts +80 -0
  1239. package/packages/shared-skills/skills/visual-qa/SKILL.md +12 -1
  1240. package/dist/agents/gpt-prompt-identity.d.ts +0 -3
  1241. package/dist/agents/hephaestus/gpt-5-4.d.ts +0 -24
  1242. package/dist/agents/hephaestus/gpt-5-5.d.ts +0 -2
  1243. package/dist/agents/hephaestus/gpt-5-6.d.ts +0 -2
  1244. package/dist/agents/kimi-tool-loop-guard.d.ts +0 -1
  1245. package/dist/agents/sisyphus/claude-fable-5.d.ts +0 -19
  1246. package/dist/agents/sisyphus/claude-opus-4-7.d.ts +0 -22
  1247. package/dist/agents/sisyphus/claude-opus-4-8.d.ts +0 -19
  1248. package/dist/agents/sisyphus/claude-opus-5.d.ts +0 -33
  1249. package/dist/agents/sisyphus/gemini.d.ts +0 -20
  1250. package/dist/agents/sisyphus/glm-5-2.d.ts +0 -4
  1251. package/dist/agents/sisyphus/gpt-5-4.d.ts +0 -26
  1252. package/dist/agents/sisyphus/gpt-5-5.d.ts +0 -6
  1253. package/dist/agents/sisyphus/gpt-task-system-guide.d.ts +0 -1
  1254. package/dist/agents/sisyphus/grok-4.d.ts +0 -21
  1255. package/dist/agents/sisyphus/index.d.ts +0 -31
  1256. package/dist/agents/sisyphus/kimi-k2-6.d.ts +0 -32
  1257. package/dist/agents/sisyphus/kimi-k2-7.d.ts +0 -17
  1258. package/dist/agents/sisyphus/kimi-k3-1.d.ts +0 -9
  1259. package/dist/agents/sisyphus/kimi-k3.d.ts +0 -19
  1260. package/dist/agents/sisyphus-dynamic-prompt-builder.d.ts +0 -2
  1261. package/dist/agents/sisyphus-dynamic-prompt-execution.d.ts +0 -2
  1262. package/dist/agents/sisyphus-dynamic-prompt-exploration.d.ts +0 -2
  1263. package/dist/agents/sisyphus-dynamic-prompt-role.d.ts +0 -2
  1264. package/dist/agents/sisyphus-dynamic-prompt-sections.d.ts +0 -18
  1265. package/dist/agents/sisyphus-dynamic-prompt-style.d.ts +0 -2
  1266. package/dist/agents/sisyphus-dynamic-prompt.d.ts +0 -3
  1267. package/dist/agents/sisyphus-gemini-fallback-overrides.d.ts +0 -1
  1268. package/dist/agents/sisyphus-junior/gemini.d.ts +0 -10
  1269. package/dist/agents/sisyphus-junior/glm-5-2.d.ts +0 -1
  1270. package/dist/agents/sisyphus-junior/gpt-5-4.d.ts +0 -11
  1271. package/dist/agents/sisyphus-junior/gpt-5-5.d.ts +0 -5
  1272. package/dist/agents/sisyphus-junior/gpt.d.ts +0 -9
  1273. package/dist/agents/sisyphus-junior/kimi-k2-6.d.ts +0 -13
  1274. package/dist/agents/sisyphus-junior/kimi-k2-7.d.ts +0 -11
  1275. package/dist/agents/sisyphus-junior/kimi-k3-1.d.ts +0 -6
  1276. package/dist/agents/sisyphus-junior/kimi-k3.d.ts +0 -12
  1277. package/dist/features/claude-code-agent-loader/opencode-config-agents-reader.d.ts +0 -1
  1278. package/dist/features/claude-code-command-loader/loader-cache.d.ts +0 -1
  1279. package/dist/features/claude-code-command-loader/loader.d.ts +0 -1
  1280. package/dist/features/opencode-skill-loader/config-source-discovery.d.ts +0 -1
  1281. package/dist/features/opencode-skill-loader/merger/config-skill-entry-loader.d.ts +0 -1
  1282. package/dist/features/opencode-skill-loader/opencode-config-skills-reader.d.ts +0 -1
  1283. package/dist/features/team-mode/team-layout-tmux/resolve-caller-tmux-session.d.ts +0 -1
  1284. package/dist/features/team-mode/team-registry/team-spec-input-normalizer.d.ts +0 -1
  1285. package/dist/shared/git-worktree/collect-git-diff-stats.d.ts +0 -1
  1286. package/dist/shared/git-worktree/parse-status-porcelain-line.d.ts +0 -1
  1287. package/dist/shared/migration/agent-names.d.ts +0 -1
  1288. package/dist/shared/migration/migrations-sidecar.d.ts +0 -1
  1289. package/dist/shared/skill-path-resolver.d.ts +0 -1
  1290. package/dist/shared/zip-entry-listing/powershell-zip-entry-listing.d.ts +0 -1
  1291. package/dist/shared/zip-entry-listing/zipinfo-zip-entry-listing.d.ts +0 -1
  1292. package/dist/skills/programming/scripts/go/new-project.py +0 -138
  1293. package/dist/skills/programming/scripts/python/new-project.py +0 -172
  1294. package/dist/skills/programming/scripts/python/new-script.py +0 -116
  1295. package/dist/skills/programming/scripts/rust/new-project.py +0 -178
  1296. package/packages/omo-codex/plugin/skills/programming/scripts/go/new-project.py +0 -138
  1297. package/packages/omo-codex/plugin/skills/programming/scripts/python/new-project.py +0 -172
  1298. package/packages/omo-codex/plugin/skills/programming/scripts/python/new-script.py +0 -116
  1299. package/packages/omo-codex/plugin/skills/programming/scripts/rust/new-project.py +0 -178
  1300. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/tests/fixtures/amp_redirect_stub.html +0 -7
  1301. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/tests/fixtures/search_interstitial.html +0 -19
  1302. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/tests/fixtures/wayback_available.json +0 -1
  1303. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/tests/fixtures/wayback_snapshot.html +0 -1128
  1304. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/tests/test_fetch_chain.py +0 -77
  1305. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/tests/test_playwright_stealth.py +0 -86
  1306. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/tests/test_playwright_templates.py +0 -279
  1307. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/tests/test_surrogate.py +0 -252
  1308. package/packages/omo-codex/plugin/skills/ultimate-browsing/engine/tests/test_surrogate_validators.py +0 -78
  1309. package/packages/shared-skills/skills/programming/scripts/go/new-project.py +0 -138
  1310. package/packages/shared-skills/skills/programming/scripts/python/new-project.py +0 -172
  1311. package/packages/shared-skills/skills/programming/scripts/python/new-script.py +0 -116
  1312. package/packages/shared-skills/skills/programming/scripts/rust/new-project.py +0 -178
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: lcx-contribute-bug-fix
3
- description: "Contribute a verified bug fix for LazyCodex, lazycodex-ai, omo-codex, bundled Codex skills, or upstream Codex CLI bugs. Opens a fork PR only for upstream openai/codex; LazyCodex-owned defects become a verified-fix issue on code-yeongyu/lazycodex (never a PR — that repo is a generated distribution mirror). Use when the user asks to fix a bug, contribute a bug fix, contribute to fix bug, open a PR for a bug, or debug and PR a LazyCodex/Codex defect."
3
+ description: "Contribute a verified bug fix for LazyCodex, lazycodex-ai, omo-codex, bundled Codex skills, or upstream Codex CLI bugs. LazyCodex-owned defects get a fork PR against code-yeongyu/oh-my-openagent (base dev, source-tree paths under packages/omo-codex/plugin, with the changelog fragment); upstream Codex bugs get a fork PR against openai/codex. code-yeongyu/lazycodex is a generated distribution mirror and never gets a PR. Use when the user asks to fix a bug, contribute a bug fix, contribute to fix bug, open a PR for a bug, or debug and PR a LazyCodex/Codex defect."
4
4
  metadata:
5
5
  short-description: Contribute verified LazyCodex or Codex bug fixes
6
6
  ---
@@ -11,12 +11,12 @@ Use this skill to debug a concrete LazyCodex or Codex defect, implement the smal
11
11
 
12
12
  Route ownership the same way as `$lcx-report-bug`, but the deliverable differs by target:
13
13
 
14
- - `code-yeongyu/lazycodex` for LazyCodex, lazycodex-ai, omo-codex, bundled skills, hooks, MCP wiring, installer behavior, marketplace sync, docs, or packaging. Deliverable: a verified-fix issue with the patch embedded. NEVER open a PR or push a branch against this repo — its contents are regenerated from the source tree on every release, so PRs there cannot be merged and will be closed.
14
+ - `code-yeongyu/oh-my-openagent` (base branch `dev`) for LazyCodex, lazycodex-ai, omo-codex, bundled skills, hooks, MCP wiring, installer behavior, marketplace sync, docs, or packaging. Deliverable: a PR from a fork that edits the source-tree paths under `packages/omo-codex/plugin/` and carries the changelog fragment that repo requires. `code-yeongyu/lazycodex` is a distribution mirror generated from it (its `plugins/omo/` tree is synced from `packages/omo-codex/plugin/`), and the maintainer lands LazyCodex fixes from PRs against oh-my-openagent. NEVER open a PR or push a branch against `code-yeongyu/lazycodex`: its contents are regenerated on every release, so a PR there cannot be merged and will be closed. At most file a short issue there (symptom plus failing input) that links the oh-my-openagent PR; never embed a patch.
15
15
  - `openai/codex` for upstream Codex CLI bugs that reproduce without LazyCodex or come from Codex core behavior. Deliverable: a PR from a fork.
16
16
 
17
17
  ## Required Outcome
18
18
 
19
- For `openai/codex`, create a fork PR that includes:
19
+ For `code-yeongyu/oh-my-openagent` and `openai/codex`, create a fork PR that includes:
20
20
 
21
21
  - a focused branch from a fresh `${TMPDIR:-/tmp}` clone/worktree
22
22
  - reproduction logs from before the fix
@@ -24,22 +24,24 @@ For `openai/codex`, create a fork PR that includes:
24
24
  - verification logs from after the fix
25
25
  - apply `lazycodex-generated` when label management is available
26
26
  - the required LazyCodex footer tag `Tag: lazycodex-generated`
27
+ - for `code-yeongyu/oh-my-openagent`: base `dev`, edits at `packages/omo-codex/plugin/...` (never the mirror's `plugins/omo/...` paths), and the changelog fragment `changes/unreleased/<pr-number>.md` that the repo's AGENTS.md describes
27
28
  - cleanup of temporary worktrees and clones
28
29
 
29
- For `code-yeongyu/lazycodex`, create an issue (never a PR) that includes:
30
-
31
- - reproduction logs from before the fix
32
- - the root cause with source evidence
33
- - the verified patch as a unified diff, produced and tested in a fresh `${TMPDIR:-/tmp}` clone/worktree
34
- - verification logs from after the fix
35
- - the `lazycodex-generated` label and the footer tag `Tag: lazycodex-generated`
36
- - cleanup of temporary worktrees and clones
30
+ For `code-yeongyu/lazycodex`, deliver no PR and no patch. When a pointer is useful there, file a short issue (symptom plus failing input, the `lazycodex-generated` label and the footer tag `Tag: lazycodex-generated`) that links the oh-my-openagent PR.
37
31
 
38
32
  ## Required Workflow
39
33
 
40
34
  1. Read the user's bug report and identify the affected surface. Before commands, apply the bundled ultrawork directive’s Task resources and todo rules; read those sections if absent from context.
41
35
  2. Invoke `$omo:debugging` for the investigation. If only unqualified skill names are exposed, invoke `$debugging` and state that it is the OMO debugging skill.
42
- 3. Materialize the latest sources under `LAZYCODEX_SOURCE_ROOT="${LAZYCODEX_SOURCE_ROOT:-${TMPDIR:-/tmp}/lazycodex-sources}"`, then decide the target repository. Sync both checkouts on every run and compare them before choosing. Validate cached checkouts before reuse so an incomplete `.git` directory cannot route the fix to the wrong repo:
36
+ 3. Search for an existing lead PR before anything is filed. Search your own open PRs across all repos by the symptom or the changed symbol, then the target repo's open PRs, so a fix that already exists is found first and gets new evidence instead of a duplicate:
37
+
38
+ ```bash
39
+ gh search prs --author @me --state open "<symbol or error text>"
40
+ gh search prs --repo code-yeongyu/oh-my-openagent --state open "<symbol or error text>"
41
+ ```
42
+
43
+ If a matching open PR exists, add evidence to it or report it instead of opening a second one.
44
+ 4. Materialize the latest sources under `LAZYCODEX_SOURCE_ROOT="${LAZYCODEX_SOURCE_ROOT:-${TMPDIR:-/tmp}/lazycodex-sources}"`, then decide the target repository. Sync the checkouts on every run and compare them before choosing. Validate cached checkouts before reuse so an incomplete `.git` directory cannot route the fix to the wrong repo:
43
45
 
44
46
  ```bash
45
47
  # The default checkout cache is per-task under TMPDIR=$RUN_TMP.
@@ -85,12 +87,13 @@ sync_latest_source() {
85
87
  git -C "$DEST" checkout -B "$DEFAULT_BRANCH" FETCH_HEAD
86
88
  }
87
89
  sync_latest_source code-yeongyu/lazycodex "$LAZYCODEX_SOURCE_ROOT/lazycodex-source"
90
+ sync_latest_source code-yeongyu/oh-my-openagent "$LAZYCODEX_SOURCE_ROOT/oh-my-openagent-source"
88
91
  sync_latest_source openai/codex "$LAZYCODEX_SOURCE_ROOT/chatgpt-subscription-source"
89
92
  ```
90
- 4. Create a fresh temporary clone and branch under `${TMPDIR:-/tmp}`. Do not modify the user's current repository for the target fix unless the current repository is itself the requested target and the user explicitly asked for local edits. Apply those resource rules at clone/worktree creation.
93
+ 5. Create a fresh temporary clone and branch under `${TMPDIR:-/tmp}`. Do not modify the user's current repository for the target fix unless the current repository is itself the requested target and the user explicitly asked for local edits. Apply those resource rules at clone/worktree creation.
91
94
 
92
95
  ```bash
93
- TARGET_REPO="code-yeongyu/lazycodex" # or openai/codex
96
+ TARGET_REPO="code-yeongyu/oh-my-openagent" # or openai/codex
94
97
  WORK_ROOT="${RUN_TMP:?apply ultrawork Task resources first}"
95
98
  gh repo clone "$TARGET_REPO" "$WORK_ROOT/repo" -- --depth=1
96
99
  cd "$WORK_ROOT/repo"
@@ -103,11 +106,11 @@ cd "$WORK_ROOT/worktree"
103
106
 
104
107
  If `gh` cannot clone, use `git clone --depth=1 "https://github.com/$TARGET_REPO" "$WORK_ROOT/repo"` and continue with the same worktree flow.
105
108
 
106
- 5. Reproduce the bug in the worktree through the real surface. Save exact command output to `${TMPDIR:-/tmp}/lazycodex-fix-<short-slug>-repro.log`.
107
- 6. Write or update a failing regression test before production changes. Confirm it fails for the bug, not for a missing fixture or typo.
108
- 7. Implement the smallest correct fix. Avoid refactors unless the fix cannot be made safely without one.
109
- 8. Run the regression test, adjacent tests, and the smallest real-surface QA command that proves the user-visible behavior changed.
110
- 9. Commit the verified fix in the worktree. Inspect the status first so the delivered diff cannot be empty or stale:
109
+ 6. Reproduce the bug in the worktree through the real surface. Save exact command output to `${TMPDIR:-/tmp}/lazycodex-fix-<short-slug>-repro.log`.
110
+ 7. Write or update a failing regression test before production changes. Confirm it fails for the bug, not for a missing fixture or typo.
111
+ 8. Implement the smallest correct fix. Avoid refactors unless the fix cannot be made safely without one.
112
+ 9. Run the regression test, adjacent tests, and the smallest real-surface QA command that proves the user-visible behavior changed.
113
+ 10. Commit the verified fix in the worktree. Inspect the status first so the delivered diff cannot be empty or stale:
111
114
 
112
115
  ```bash
113
116
  git status --short
@@ -116,16 +119,11 @@ git commit -m "fix: <short bug-fix summary>"
116
119
  git log --oneline "origin/$BASE_BRANCH..HEAD"
117
120
  ```
118
121
 
119
- 10. Build the delivery body for the target:
120
- - `openai/codex`: generate the PR body with `scripts/create-pr-body.mjs`.
121
- - `code-yeongyu/lazycodex`: export the verified patch and write the issue body from the Verified-Fix Issue Template below:
122
-
123
- ```bash
124
- PATCH_FILE="${TMPDIR:-/tmp}/lazycodex-fix-<short-slug>.patch"
125
- git diff "origin/$BASE_BRANCH"..HEAD > "$PATCH_FILE"
126
- ```
122
+ 11. Build the delivery body for the target:
123
+ - `code-yeongyu/oh-my-openagent` and `openai/codex`: generate the PR body with `scripts/create-pr-body.mjs` (set `targetRepository` to the repo you are filing against).
124
+ - `code-yeongyu/oh-my-openagent` only: add the changelog fragment `changes/unreleased/<pr-number>.md` once the PR number exists, in the format `docs/reference/changelog-fragments.md` of that repo defines, and commit it to the same branch.
127
125
 
128
- 11. Ensure the generated label exists when the target repo allows label management. Keep the footer tag even when label creation is unavailable:
126
+ 12. Ensure the generated label exists when the target repo allows label management. Keep the footer tag even when label creation is unavailable:
129
127
 
130
128
  ```bash
131
129
  LABEL_ARGS=()
@@ -136,8 +134,17 @@ else
136
134
  fi
137
135
  ```
138
136
 
139
- 12. Deliver the fix.
140
- - `code-yeongyu/lazycodex`: create the verified-fix issue. Never push a branch to this repo and never run `gh pr create` against it:
137
+ 13. Deliver the fix.
138
+ - `code-yeongyu/oh-my-openagent`: fork, push the branch to the fork, and create the PR against base `dev`. Never push a branch to or run `gh pr create` against `code-yeongyu/lazycodex`:
139
+
140
+ ```bash
141
+ gh repo fork code-yeongyu/oh-my-openagent --remote --remote-name fork
142
+ GH_USER="$(gh api user --jq .login)"
143
+ git push -u fork "$BRANCH_NAME"
144
+ gh pr create --repo code-yeongyu/oh-my-openagent --base dev --head "$GH_USER:$BRANCH_NAME" --title "<short fix title>" "${LABEL_ARGS[@]}" --body-file "$PR_BODY"
145
+ ```
146
+
147
+ - `code-yeongyu/lazycodex` (optional pointer): a short issue with the symptom, the failing input and a link to the oh-my-openagent PR, never a diff:
141
148
 
142
149
  ```bash
143
150
  ISSUE_BODY="${TMPDIR:-/tmp}/lazycodex-fix-<short-slug>-issue.md"
@@ -153,7 +160,7 @@ git push -u fork "$BRANCH_NAME"
153
160
  gh pr create --repo openai/codex --base "$BASE_BRANCH" --head "$GH_USER:$BRANCH_NAME" --title "<short fix title>" "${LABEL_ARGS[@]}" --body-file "$PR_BODY"
154
161
  ```
155
162
 
156
- 13. Finish cleanup per Task resources. Run this only when that rule permits removing the worktree and run root; otherwise retain them and report the outstanding cleanup todo:
163
+ 14. Finish cleanup per Task resources. Run this only when that rule permits removing the worktree and run root; otherwise retain them and report the outstanding cleanup todo:
157
164
 
158
165
  ```bash
159
166
  cd /
@@ -166,34 +173,22 @@ test ! -e "$WORK_ROOT" && printf 'cleanup: worktree and caches REMOVED\n'
166
173
 
167
174
  Return the PR or issue URL, the reproduction command, the verification command, and the cleanup receipt.
168
175
 
169
- ## Verified-Fix Issue Template (code-yeongyu/lazycodex)
176
+ ## Pointer Issue Template (code-yeongyu/lazycodex, optional)
170
177
 
171
- Write the issue body in English. Embed the patch verbatim so a maintainer can apply it to the source tree:
178
+ Write the issue body in English. It names the symptom and the failing input and links the oh-my-openagent PR; the fix itself lives in that PR:
172
179
 
173
180
  ````markdown
174
- ## Problem Situation
181
+ ## Symptom
175
182
  [What failed for the user.]
176
183
 
177
- ## Reproduction Logs
178
- [Exact failing command and relevant log excerpt.]
179
-
180
- ## Root Cause
181
- [Confirmed cause with runtime and source evidence.]
184
+ ## Failing Input
185
+ [Exact failing command and the shortest log excerpt.]
182
186
 
183
- ## Verified Fix
184
- [What changed and why this is the smallest correct fix.]
185
-
186
- ```diff
187
- [Contents of $PATCH_FILE.]
188
- ```
189
-
190
- ## Verification
191
- - [RED test output or repro before the fix]
192
- - [GREEN test output after the fix]
193
- - [Manual QA command and result]
187
+ ## Fix
188
+ [Link to the code-yeongyu/oh-my-openagent PR.]
194
189
 
195
190
  ---
196
- This fix was debugged, implemented, and verified with [LazyCodex](https://github.com/code-yeongyu/lazycodex).
191
+ This issue was generated by LazyCodex.
197
192
  Tag: lazycodex-generated
198
193
  ````
199
194
 
@@ -267,10 +262,11 @@ Stop and ask one narrow question only when:
267
262
 
268
263
  Do not open:
269
264
 
270
- - a PR or pushed branch targeting `code-yeongyu/lazycodex` — deliver the verified-fix issue instead, always
271
- - a PR or verified-fix issue without a failing-before and passing-after test
272
- - a PR or verified-fix issue without a real-surface QA command
265
+ - a PR or pushed branch targeting `code-yeongyu/lazycodex` — send the fix as a PR against `code-yeongyu/oh-my-openagent` instead, always
266
+ - a PR for a defect that already has an open lead PR found by the search in step 3
267
+ - a PR without a failing-before and passing-after test
268
+ - a PR without a real-surface QA command
273
269
  - a PR or issue without the `Tag: lazycodex-generated` footer
274
- - a verified-fix issue without the patch embedded in a `diff` block
270
+ - an issue on `code-yeongyu/lazycodex` that embeds a patch
275
271
  - a vague fix that does not identify the root cause
276
272
  - a broad refactor disguised as a bug fix
@@ -9,4 +9,4 @@ interface:
9
9
  - "lazycodex fix"
10
10
  - "omo-codex bug fix"
11
11
  - "codex bug fix pr"
12
- default_prompt: "Use $lcx-contribute-bug-fix to debug this LazyCodex or Codex bug, work from a fresh ${TMPDIR:-/tmp} clone and worktree, implement the smallest verified fix, apply the lazycodex-generated label, deliver it (verified-fix issue on code-yeongyu/lazycodex — never a PR there; fork PR only for openai/codex), and clean up."
12
+ default_prompt: "Use $lcx-contribute-bug-fix to debug this LazyCodex or Codex bug, search my open PRs for an existing lead PR first, work from a fresh ${TMPDIR:-/tmp} clone and worktree, implement the smallest verified fix, apply the lazycodex-generated label, deliver it as a fork PR (code-yeongyu/oh-my-openagent base dev for LazyCodex defects, openai/codex for upstream; never a PR on the code-yeongyu/lazycodex mirror), and clean up."
@@ -9,8 +9,8 @@ metadata:
9
9
 
10
10
  You are a LazyCodex bug router and reporter. Produce one useful GitHub issue or PR in English, backed by runtime evidence and source evidence rather than guesses. Route it to the repository that owns the defect:
11
11
 
12
- - `code-yeongyu/lazycodex` for LazyCodex, lazycodex-ai, omo-codex, marketplace, bundled skill, hook, MCP, installer, or packaging bugs. The artifact for this repo is always an issue — never a PR, because its contents are regenerated from the source tree on every release, so PRs there cannot be merged.
13
- - `openai/codex` for upstream Codex CLI bugs that reproduce without LazyCodex or are caused by Codex core behavior. This is the only repo where this skill may create a PR.
12
+ - `code-yeongyu/lazycodex` for LazyCodex, lazycodex-ai, omo-codex, marketplace, bundled skill, hook, MCP, installer, or packaging bugs. The artifact for this repo is always an issue, never a PR: it is a distribution mirror generated from `code-yeongyu/oh-my-openagent` (its `plugins/omo/` tree is synced from `packages/omo-codex/plugin/`), so PRs there cannot be merged. A fix for these defects goes to `code-yeongyu/oh-my-openagent` as a fork PR (base `dev`, source-tree paths, changelog fragment) through `$lcx-contribute-bug-fix`; the mirror issue stays short and links that PR.
13
+ - `openai/codex` for upstream Codex CLI bugs that reproduce without LazyCodex or are caused by Codex core behavior. A PR may be created here.
14
14
 
15
15
  Use GPT-5.5 style: outcome first, concise, evidence-bound. Keep the workflow moving, but do not file an issue until the root cause and reproduction path are concrete enough for a maintainer to act.
16
16
 
@@ -90,7 +90,7 @@ sync_latest_source openai/codex "$LAZYCODEX_SOURCE_ROOT/chatgpt-subscription-sou
90
90
  - Use `code-yeongyu/lazycodex` when the bug is in LazyCodex integration, distribution, bundled plugin code, skills, hooks, MCP wiring, installer behavior, aliases, marketplace sync, docs, or any behavior that disappears in clean upstream Codex.
91
91
  - Use `openai/codex` when the bug reproduces in clean upstream Codex without LazyCodex, or the failing behavior comes from Codex CLI core, plugin API contracts, sandboxing, approvals, config loading, or built-in tool behavior.
92
92
  - If ownership remains ambiguous after evidence gathering, do not guess. Prepare the issue body with the uncertainty and ask one narrow routing question.
93
- 7. Search for an existing issue in the selected repo before creating a new one. Search the other repo too when the ownership boundary is close:
93
+ 7. Search for an existing issue or lead PR before creating anything new. Search your own open PRs across all repos first (`gh search prs --author @me --state open "<symbol or error text>"`), then the selected repo, and the other repo too when the ownership boundary is close:
94
94
 
95
95
  ```bash
96
96
  TARGET_REPO="code-yeongyu/lazycodex" # or openai/codex
@@ -111,7 +111,7 @@ fi
111
111
 
112
112
  If the selected repo is `openai/codex` and label management is not available, still include the footer tag in the body and continue without claiming label creation succeeded.
113
113
  10. If no matching issue exists, create the issue with `gh` and apply the `lazycodex-generated` label.
114
- 11. Create a PR only when the target repo is `openai/codex` AND the user asked for a PR, the fix is already implemented on a branch, or the smallest correct fix can be safely made there. Never create a PR or push a branch against `code-yeongyu/lazycodex` — always file an issue there, embedding the verified patch in the Proposed Fix section when one exists. Apply the `lazycodex-generated` label to every PR created by this skill. Otherwise create an issue with fix guidance.
114
+ 11. Create a PR only when the target repo is `openai/codex` or `code-yeongyu/oh-my-openagent` (the source of the LazyCodex mirror, base `dev`) AND the user asked for a PR, the fix is already implemented on a branch, or the smallest correct fix can be safely made there; use `$lcx-contribute-bug-fix` for the fix workflow. Never create a PR or push a branch against `code-yeongyu/lazycodex`: file a short issue there (symptom and failing input) that links the oh-my-openagent PR, with no patch. Apply the `lazycodex-generated` label to every PR created by this skill. Otherwise create an issue with fix guidance.
115
115
 
116
116
  ## Required Label And Footer
117
117
 
@@ -176,7 +176,7 @@ Tag: lazycodex-generated
176
176
 
177
177
  ## PR Body Template
178
178
 
179
- Use this only when a PR is the right artifact, which is only ever for `openai/codex`:
179
+ Use this only when a PR is the right artifact, which is only ever for `openai/codex` or `code-yeongyu/oh-my-openagent`:
180
180
 
181
181
  ```markdown
182
182
  ## Summary
@@ -226,7 +226,7 @@ if [ "${#LABEL_ARGS[@]}" -gt 0 ]; then
226
226
  fi
227
227
  ```
228
228
 
229
- For a PR from a branch pushed to a fork — `openai/codex` only, never `code-yeongyu/lazycodex`:
229
+ For a PR from a branch pushed to a fork, against `openai/codex` or `code-yeongyu/oh-my-openagent` (never `code-yeongyu/lazycodex`):
230
230
 
231
231
  ```bash
232
232
  PR_BODY="${TMPDIR:-/tmp}/lcx-report-bug-pr-$(date +%Y%m%d-%H%M%S).md"
@@ -259,7 +259,7 @@ Stop and ask one narrow question only when the missing fact changes the issue ma
259
259
 
260
260
  Do not file:
261
261
 
262
- - a PR or pushed branch targeting `code-yeongyu/lazycodex` — file the issue instead, always
262
+ - a PR or pushed branch targeting `code-yeongyu/lazycodex` — send a fix PR to `code-yeongyu/oh-my-openagent` and keep any mirror issue short, always
263
263
  - a vague issue without reproduction steps
264
264
  - an issue that claims a root cause not supported by runtime evidence
265
265
  - a duplicate when commenting on an existing issue is enough
@@ -8,4 +8,4 @@ interface:
8
8
  - "omo-codex bug"
9
9
  - "openai codex bug"
10
10
  - "codex upstream issue"
11
- default_prompt: "Use $lcx-report-bug to investigate this LazyCodex or Codex bug, compare LazyCodex evidence with sources under LAZYCODEX_SOURCE_ROOT or ${TMPDIR:-/tmp}/lazycodex-sources, choose the correct GitHub repo, and file an issue (or, for openai/codex only, a PR — never a PR on code-yeongyu/lazycodex) with reproduction, root cause, fix guidance, and the lazycodex-generated label and footer."
11
+ default_prompt: "Use $lcx-report-bug to investigate this LazyCodex or Codex bug, compare LazyCodex evidence with sources under LAZYCODEX_SOURCE_ROOT or ${TMPDIR:-/tmp}/lazycodex-sources, choose the correct GitHub repo, and file an issue (or a PR on code-yeongyu/oh-my-openagent or openai/codex when the fix is ready — never a PR on the code-yeongyu/lazycodex mirror) with reproduction, root cause, fix guidance, and the lazycodex-generated label and footer."
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
- "version": "5.1.48",
4
- "inputDigest": "sha256:be1d599745bd7b9394f34c8c277f3888b908c4b7fa1fd672aeae6c8025a4cd07",
3
+ "version": "5.1.54",
4
+ "inputDigest": "sha256:697a2c789b11bcef3067ffa642529c4ec64469117934d7cc53fae09b1e77822d",
5
5
  "outputs": [
6
6
  {
7
7
  "path": "cli.d.ts",
@@ -9,7 +9,7 @@
9
9
  },
10
10
  {
11
11
  "path": "cli.js",
12
- "sha256": "93e248d2fb5ccb0bdc1a01e2ac7c6e05184a919093dd3ab979a1a48af27b8dcd"
12
+ "sha256": "0d10efe6a0c981e5b7b2f3e98876abc198456463d522338f175f3e9d55ab3caa"
13
13
  },
14
14
  {
15
15
  "path": "codex-hook-cli.d.ts",
@@ -8,7 +8,7 @@ import { argv, execPath as execPath2, stderr } from "node:process";
8
8
  import { stdin as processStdin } from "node:process";
9
9
 
10
10
  // src/codex-hook.ts
11
- import { readFileSync as readFileSync10, realpathSync as realpathSync7 } from "node:fs";
11
+ import { readFileSync as readFileSync10, realpathSync as realpathSync8 } from "node:fs";
12
12
  import { homedir as homedir4 } from "node:os";
13
13
  import { join as join12, resolve as resolve13 } from "node:path";
14
14
 
@@ -45,7 +45,7 @@ import * as path from "node:path";
45
45
  import { fileURLToPath } from "node:url";
46
46
  import { statSync as statSync2 } from "node:fs";
47
47
  import { isAbsolute as isAbsolute2 } from "node:path";
48
- import { existsSync as existsSync11, realpathSync as realpathSync5, statSync as statSync4 } from "node:fs";
48
+ import { existsSync as existsSync11, realpathSync as realpathSync6, statSync as statSync4 } from "node:fs";
49
49
  import { basename as basename3, dirname as dirname10, join as join5, resolve as resolve8 } from "node:path";
50
50
  import { basename as basename2, extname } from "node:path";
51
51
  import { resolve as resolve6 } from "node:path";
@@ -70,6 +70,7 @@ import { dirname as dirname7, join as join3 } from "node:path";
70
70
  import { existsSync as existsSync8, mkdirSync as mkdirSync3, readFileSync as readFileSync4, renameSync as renameSync2, writeFileSync as writeFileSync2 } from "node:fs";
71
71
  import { dirname as dirname8 } from "node:path";
72
72
  import { existsSync as existsSync9, readFileSync as readFileSync5 } from "node:fs";
73
+ import { closeSync as closeSync3, openSync as openSync3, readSync, realpathSync as realpathSync5 } from "node:fs";
73
74
  import { existsSync as existsSync10 } from "node:fs";
74
75
  import { delimiter as delimiter3, dirname as dirname9, isAbsolute as isAbsolute5, join as join4, resolve as resolve7 } from "node:path";
75
76
  import { existsSync as existsSync12, lstatSync as lstatSync5, readdirSync as readdirSync3 } from "node:fs";
@@ -3872,10 +3873,15 @@ var LSP_LOCAL_INSTALL_HINTS = {
3872
3873
  ty: "uv add --dev ty",
3873
3874
  "ruby-lsp": "bundle add ruby-lsp --group development"
3874
3875
  };
3876
+ var TYPESCRIPT_SERVER_INITIALIZATION = {
3877
+ tsserver: { useSyntaxServer: "never" },
3878
+ disableAutomaticTypingAcquisition: true
3879
+ };
3875
3880
  var BUILTIN_SERVERS = {
3876
3881
  typescript: {
3877
3882
  command: ["typescript-language-server", "--stdio"],
3878
- extensions: [".ts", ".tsx", ".js", ".jsx", ".mjs", ".cjs", ".mts", ".cts"]
3883
+ extensions: [".ts", ".tsx", ".js", ".jsx", ".mjs", ".cjs", ".mts", ".cts"],
3884
+ initialization: TYPESCRIPT_SERVER_INITIALIZATION
3879
3885
  },
3880
3886
  deno: { command: ["deno", "lsp"], extensions: [".ts", ".tsx", ".js", ".jsx", ".mjs"] },
3881
3887
  vue: { command: ["vue-language-server", "--stdio"], extensions: [".vue"] },
@@ -4086,7 +4092,8 @@ function getMergedServers() {
4086
4092
  command: config.command,
4087
4093
  extensions: config.extensions,
4088
4094
  priority: -100,
4089
- source: "builtin"
4095
+ source: "builtin",
4096
+ ...config.initialization === undefined ? {} : { initialization: config.initialization }
4090
4097
  });
4091
4098
  }
4092
4099
  return servers.sort((a, b) => {
@@ -4113,8 +4120,9 @@ function createServerFromEntry(id, entry, source) {
4113
4120
  priority: entry.priority ?? 0,
4114
4121
  source
4115
4122
  });
4116
- if (entry.initialization !== undefined) {
4117
- server.initialization = entry.initialization;
4123
+ const initialization = mergeInitialization(builtin.initialization, entry.initialization);
4124
+ if (initialization !== undefined) {
4125
+ server.initialization = initialization;
4118
4126
  }
4119
4127
  return server;
4120
4128
  }
@@ -4139,8 +4147,20 @@ function createServerFromEntry(id, entry, source) {
4139
4147
  source
4140
4148
  });
4141
4149
  applyOptionalServerFields(server, entry);
4150
+ const builtinInitialization = entry.command === undefined ? builtin.initialization : undefined;
4151
+ const initialization = mergeInitialization(builtinInitialization, entry.initialization);
4152
+ if (initialization !== undefined) {
4153
+ server.initialization = initialization;
4154
+ }
4142
4155
  return server;
4143
4156
  }
4157
+ function mergeInitialization(builtin, entry) {
4158
+ if (builtin === undefined)
4159
+ return entry;
4160
+ if (entry === undefined)
4161
+ return builtin;
4162
+ return { ...builtin, ...entry };
4163
+ }
4144
4164
  function createServer(input) {
4145
4165
  const server = {
4146
4166
  id: input.id,
@@ -4210,6 +4230,46 @@ function getDisabledServerIds() {
4210
4230
  }
4211
4231
  return disabled;
4212
4232
  }
4233
+ var HOST_RUNTIME_SERVER_IDS = new Set(["typescript"]);
4234
+ var JS_ENTRY = /\.[cm]?js$/;
4235
+ var NODE_SHEBANG = /^#![^\n]*\bnode\b/;
4236
+ function currentHostJsRuntime() {
4237
+ return { bunExecPath: process.versions["bun"] === undefined ? undefined : process.execPath };
4238
+ }
4239
+ function withHostJsRuntime(serverId, command, host = currentHostJsRuntime()) {
4240
+ if (host.bunExecPath === undefined || !HOST_RUNTIME_SERVER_IDS.has(serverId))
4241
+ return command;
4242
+ const [binary, ...args] = command;
4243
+ if (binary === undefined)
4244
+ return command;
4245
+ const script = nodeScriptPath(binary);
4246
+ return script === undefined ? command : [host.bunExecPath, script, ...args];
4247
+ }
4248
+ function nodeScriptPath(binary) {
4249
+ let real;
4250
+ try {
4251
+ real = realpathSync5(binary);
4252
+ } catch {
4253
+ return;
4254
+ }
4255
+ if (JS_ENTRY.test(real))
4256
+ return real;
4257
+ try {
4258
+ return NODE_SHEBANG.test(readHead(real)) ? real : undefined;
4259
+ } catch {
4260
+ return;
4261
+ }
4262
+ }
4263
+ function readHead(path) {
4264
+ const fd = openSync3(path, "r");
4265
+ try {
4266
+ const buffer = Buffer.alloc(128);
4267
+ const bytes = readSync(fd, buffer, 0, buffer.length, 0);
4268
+ return buffer.toString("utf8", 0, bytes);
4269
+ } finally {
4270
+ closeSync3(fd);
4271
+ }
4272
+ }
4213
4273
  var LOCAL_BIN_RULES = [
4214
4274
  {
4215
4275
  markers: ["package.json", "bun.lock", "bun.lockb", "package-lock.json", "yarn.lock", "pnpm-lock.yaml"],
@@ -4344,6 +4404,10 @@ function isServerInstalled(command, workingDirectory, options = {}) {
4344
4404
  function withResolvedCommand(command, binaryPath) {
4345
4405
  return [binaryPath, ...command.slice(1)];
4346
4406
  }
4407
+ function usesBuiltinCommand(id, command) {
4408
+ const builtin = BUILTIN_SERVERS[id]?.command;
4409
+ return builtin !== undefined && builtin.length === command.length && builtin.every((part, index) => part === command[index]);
4410
+ }
4347
4411
  function findServerForExtension(ext) {
4348
4412
  const servers = getMergedServers();
4349
4413
  const workingDirectory = contextCwd();
@@ -4354,7 +4418,7 @@ function findServerForExtension(ext) {
4354
4418
  if (binaryPath !== null) {
4355
4419
  const resolvedServer = {
4356
4420
  id: server.id,
4357
- command: withResolvedCommand(server.command, binaryPath),
4421
+ command: usesBuiltinCommand(server.id, server.command) ? withHostJsRuntime(server.id, withResolvedCommand(server.command, binaryPath)) : withResolvedCommand(server.command, binaryPath),
4358
4422
  extensions: server.extensions,
4359
4423
  priority: server.priority
4360
4424
  };
@@ -4493,7 +4557,7 @@ function rebaseThroughCanonicalAncestor(path, cwd) {
4493
4557
  const suffix = [];
4494
4558
  while (true) {
4495
4559
  if (existsSync11(current)) {
4496
- const canonical = realpathSync5(current);
4560
+ const canonical = realpathSync6(current);
4497
4561
  if (isPathInside(cwd, canonical))
4498
4562
  return suffix.length === 0 ? canonical : join5(canonical, ...suffix);
4499
4563
  }
@@ -4507,7 +4571,7 @@ function rebaseThroughCanonicalAncestor(path, cwd) {
4507
4571
  function existingDirectoryInsideContext(directory, cwd) {
4508
4572
  if (!existsSync11(directory))
4509
4573
  return;
4510
- const canonical = realpathSync5(directory);
4574
+ const canonical = realpathSync6(directory);
4511
4575
  if (!statSync4(canonical).isDirectory())
4512
4576
  return;
4513
4577
  return isPathInside(cwd, canonical) ? canonical : undefined;
@@ -6129,7 +6193,7 @@ var WORKSPACE_MARKERS2 = [GIT_WORKSPACE_MARKER2, ...PROJECT_WORKSPACE_MARKERS2];
6129
6193
 
6130
6194
  // ../../../../lsp-core/src/request-context.ts
6131
6195
  import { AsyncLocalStorage as AsyncLocalStorage2 } from "node:async_hooks";
6132
- import { existsSync as existsSync14, realpathSync as realpathSync6, statSync as statSync7 } from "node:fs";
6196
+ import { existsSync as existsSync14, realpathSync as realpathSync7, statSync as statSync7 } from "node:fs";
6133
6197
  import { basename as basename4, delimiter as delimiter4, dirname as dirname2, isAbsolute as isAbsolute7, join as join9, relative as relative5, resolve as resolve12 } from "node:path";
6134
6198
 
6135
6199
  class LspRequestContextParseError2 extends Error {
@@ -6175,14 +6239,14 @@ function canonicalCwd2(cwd) {
6175
6239
  if (!existsSync14(resolved) || !statSync7(resolved).isDirectory()) {
6176
6240
  throw new LspRequestContextParseError2("invalid_cwd", `LSP request cwd must be an existing directory: ${cwd}`);
6177
6241
  }
6178
- return realpathSync6(resolved);
6242
+ return realpathSync7(resolved);
6179
6243
  }
6180
6244
  function canonicalizeExistingOrNearestAncestor2(path) {
6181
6245
  let current = resolve12(path);
6182
6246
  const suffix = [];
6183
6247
  while (true) {
6184
6248
  try {
6185
- const existing = realpathSync6(current);
6249
+ const existing = realpathSync7(current);
6186
6250
  return suffix.length === 0 ? existing : join9(existing, ...suffix);
6187
6251
  } catch (error) {
6188
6252
  if (!isMissingPathError2(error))
@@ -6642,7 +6706,7 @@ function notInstalledOutcome(availability, text) {
6642
6706
  return decision === "declined" || decision === "allowed" ? { ...base, decision } : base;
6643
6707
  }
6644
6708
  function codexLspRequestContext(env = process.env, cwd = process.cwd()) {
6645
- const canonicalCwd = realpathSync7(resolve13(cwd));
6709
+ const canonicalCwd = realpathSync8(resolve13(cwd));
6646
6710
  const codexHome = resolve13(env["CODEX_HOME"]?.trim() || join12(homedir4(), ".codex"));
6647
6711
  return parseLspRequestContext2({
6648
6712
  cwd: canonicalCwd,
@@ -8,7 +8,7 @@
8
8
  "type": "command",
9
9
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-tool-use",
10
10
  "timeout": 60,
11
- "statusMessage": "(OmO 5.1.48) Checking LSP Diagnostics"
11
+ "statusMessage": "(OmO 5.1.54) Checking LSP Diagnostics"
12
12
  }
13
13
  ]
14
14
  }
@@ -21,7 +21,7 @@
21
21
  "type": "command",
22
22
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-compact",
23
23
  "timeout": 5,
24
- "statusMessage": "(OmO 5.1.48) Resetting LSP Diagnostics Cache"
24
+ "statusMessage": "(OmO 5.1.54) Resetting LSP Diagnostics Cache"
25
25
  }
26
26
  ]
27
27
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-lsp",
3
- "version": "5.1.48",
3
+ "version": "5.1.54",
4
4
  "description": "Codex plugin that exposes Language Server Protocol tools and post-edit diagnostics.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -7,7 +7,7 @@
7
7
  "type": "command",
8
8
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook session-start",
9
9
  "timeout": 10,
10
- "statusMessage": "(OmO 5.1.48) Loading Project Rules"
10
+ "statusMessage": "(OmO 5.1.54) Loading Project Rules"
11
11
  }
12
12
  ]
13
13
  }
@@ -19,7 +19,7 @@
19
19
  "type": "command",
20
20
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook user-prompt-submit",
21
21
  "timeout": 10,
22
- "statusMessage": "(OmO 5.1.48) Loading Project Rules"
22
+ "statusMessage": "(OmO 5.1.54) Loading Project Rules"
23
23
  }
24
24
  ]
25
25
  }
@@ -32,7 +32,7 @@
32
32
  "type": "command",
33
33
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-tool-use",
34
34
  "timeout": 10,
35
- "statusMessage": "(OmO 5.1.48) Matching Project Rules"
35
+ "statusMessage": "(OmO 5.1.54) Matching Project Rules"
36
36
  }
37
37
  ]
38
38
  }
@@ -45,7 +45,7 @@
45
45
  "type": "command",
46
46
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-compact",
47
47
  "timeout": 10,
48
- "statusMessage": "(OmO 5.1.48) Resetting Project Rule Cache"
48
+ "statusMessage": "(OmO 5.1.54) Resetting Project Rule Cache"
49
49
  }
50
50
  ]
51
51
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/codex-rules",
3
- "version": "5.1.48",
3
+ "version": "5.1.54",
4
4
  "description": "Codex plugin that injects project rule files into model context through lifecycle hooks.",
5
5
  "type": "module",
6
6
  "packageManager": "npm@11.12.1",
@@ -8,7 +8,7 @@
8
8
  "type": "command",
9
9
  "command": "node \"${PLUGIN_ROOT}/dist/cli.js\" hook post-tool-use",
10
10
  "timeout": 10,
11
- "statusMessage": "(OmO 5.1.48) Checking Thread Title Hygiene"
11
+ "statusMessage": "(OmO 5.1.54) Checking Thread Title Hygiene"
12
12
  }
13
13
  ]
14
14
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sisyphuslabs/codex-teammode",
3
- "version": "5.1.48",
3
+ "version": "5.1.54",
4
4
  "description": "Codex team-mode hook component that keeps background thread titles descriptive after create_thread.",
5
5
  "type": "module",
6
6
  "private": true,
@@ -17,7 +17,7 @@
17
17
  "devDependencies": {
18
18
  "@vitest/coverage-v8": "5.0.1",
19
19
  "@types/node": "^26.6.2",
20
- "bun-types": "^1.4.3",
20
+ "bun-types": "1.4.4",
21
21
  "typescript": "^7.0.2",
22
22
  "vitest": "5.0.1"
23
23
  },
@@ -2,7 +2,7 @@
2
2
 
3
3
  Codex plugin component that emits a single anonymous daily-active event (`omo_codex_daily_active`) to PostHog whenever a Codex session starts.
4
4
 
5
- The event is sent **at most once per UTC day per machine**. It uses a SHA256-hashed installation identifier derived from `omo-codex:${hostname}` and never sends the raw hostname. PostHog person profiles are explicitly disabled.
5
+ The event is sent **at most once per UTC day per machine**. Its distinct id is `sha256` of a random install id created on the first send and stored as `install-id` in the telemetry state directory; nothing about the machine or user is used to build it. PostHog person profiles are explicitly disabled.
6
6
 
7
7
  ## Hook Wiring
8
8
 
@@ -33,7 +33,7 @@ The aggregate `plugin/hooks/hooks.json` mounts this hook alongside `rules` and `
33
33
  A single PostHog `capture` call with:
34
34
 
35
35
  - `event: "omo_codex_daily_active"`
36
- - `distinctId: sha256("omo-codex:" + hostname)`
36
+ - `distinctId: sha256(install id)`
37
37
  - `properties`:
38
38
  - `platform`, `product_name`, `package_name`, `package_version`
39
39
  - `runtime` (`"node"`), `runtime_version`