oh-my-opencode 4.10.0 → 4.11.0

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 (1689) hide show
  1. package/.agents/skills/codex-qa/SKILL.md +96 -0
  2. package/.agents/skills/codex-qa/references/app-server.md +63 -0
  3. package/.agents/skills/codex-qa/references/components-hooks.md +38 -0
  4. package/.agents/skills/codex-qa/references/docker-qa.md +62 -0
  5. package/.agents/skills/codex-qa/references/install-verify.md +57 -0
  6. package/.agents/skills/codex-qa/references/isolation.md +57 -0
  7. package/.agents/skills/codex-qa/references/logging-debug.md +60 -0
  8. package/.agents/skills/codex-qa/scripts/app-server-drive.sh +76 -0
  9. package/.agents/skills/codex-qa/scripts/hook-unit-probe.sh +69 -0
  10. package/.agents/skills/codex-qa/scripts/install-verify.sh +60 -0
  11. package/.agents/skills/codex-qa/scripts/lib/app-server-client.mjs +117 -0
  12. package/.agents/skills/codex-qa/scripts/lib/common.sh +180 -0
  13. package/.agents/skills/codex-qa/scripts/lib/mock-model.mjs +56 -0
  14. package/.agents/skills/codex-qa/scripts/tui-smoke.sh +71 -0
  15. package/.agents/skills/opencode-qa/SKILL.md +8 -1
  16. package/.agents/skills/opencode-qa/references/docker-qa.md +72 -0
  17. package/.agents/skills/tech-debt-audit/SKILL.md +14 -14
  18. package/.agents/skills/work-with-pr/SKILL.md +77 -53
  19. package/.opencode/skills/work-with-pr/SKILL.md +79 -55
  20. package/README.ja.md +3 -3
  21. package/README.ko.md +3 -3
  22. package/README.md +2 -2
  23. package/README.ru.md +3 -3
  24. package/README.zh-cn.md +3 -3
  25. package/THIRD-PARTY-NOTICES.md +205 -0
  26. package/dist/agents/dynamic-agent-prompt-types.d.ts +1 -1
  27. package/dist/agents/index.d.ts +0 -1
  28. package/dist/agents/prometheus/index.d.ts +0 -1
  29. package/dist/agents/prometheus/system-prompt.d.ts +0 -2
  30. package/dist/cli/config-manager/add-tui-plugin-to-tui-config.d.ts +7 -0
  31. package/dist/cli/doctor/checks/codex-components.d.ts +4 -4
  32. package/dist/cli/doctor/checks/codex-runtime-wrapper.d.ts +7 -0
  33. package/dist/cli/doctor/checks/codex.d.ts +1 -1
  34. package/dist/cli/doctor/checks/config.d.ts +1 -1
  35. package/dist/cli/doctor/checks/dependencies.d.ts +1 -2
  36. package/dist/cli/doctor/checks/index.d.ts +1 -1
  37. package/dist/cli/doctor/checks/model-resolution.d.ts +1 -1
  38. package/dist/cli/doctor/checks/system.d.ts +1 -1
  39. package/dist/cli/doctor/checks/team-mode.d.ts +1 -1
  40. package/dist/cli/doctor/checks/tools-gh.d.ts +1 -1
  41. package/dist/cli/doctor/checks/tools-mcp.d.ts +1 -1
  42. package/dist/cli/doctor/checks/tools.d.ts +2 -1
  43. package/dist/cli/doctor/checks/tui-plugin-config.d.ts +7 -1
  44. package/dist/cli/doctor/framework/constants.d.ts +32 -0
  45. package/dist/cli/doctor/framework/spawn-with-timeout.d.ts +8 -0
  46. package/dist/cli/doctor/framework/types.d.ts +147 -0
  47. package/dist/cli/doctor/index.d.ts +4 -4
  48. package/dist/cli/doctor/runner.d.ts +1 -1
  49. package/dist/cli/index.js +9717 -7523
  50. package/dist/cli/install-ast-grep-sg.d.ts +10 -0
  51. package/dist/cli/install-codex/codex-cache-bins.d.ts +1 -21
  52. package/dist/cli/install-codex/codex-cache-bundled-mcps.d.ts +1 -5
  53. package/dist/cli/install-codex/codex-cache-command-shim.d.ts +1 -1
  54. package/dist/cli/install-codex/codex-cache-fs.d.ts +1 -3
  55. package/dist/cli/install-codex/codex-cache-install.d.ts +1 -13
  56. package/dist/cli/install-codex/codex-cache-legacy-bins.d.ts +1 -3
  57. package/dist/cli/install-codex/codex-cache-local-dependencies.d.ts +1 -1
  58. package/dist/cli/install-codex/codex-cache-mcp-manifest.d.ts +1 -2
  59. package/dist/cli/install-codex/codex-cache-paths.d.ts +1 -2
  60. package/dist/cli/install-codex/codex-cache-prune.d.ts +1 -10
  61. package/dist/cli/install-codex/codex-cache.d.ts +1 -4
  62. package/dist/cli/install-codex/codex-cached-marketplace-manifest.d.ts +1 -6
  63. package/dist/cli/install-codex/codex-cleanup-config.d.ts +1 -6
  64. package/dist/cli/install-codex/codex-cleanup.d.ts +1 -25
  65. package/dist/cli/install-codex/codex-config-agents.d.ts +1 -3
  66. package/dist/cli/install-codex/codex-config-features.d.ts +1 -1
  67. package/dist/cli/install-codex/codex-config-marketplaces.d.ts +1 -6
  68. package/dist/cli/install-codex/codex-config-permissions.d.ts +1 -1
  69. package/dist/cli/install-codex/codex-config-plugins.d.ts +1 -9
  70. package/dist/cli/install-codex/codex-config-reasoning.d.ts +1 -2
  71. package/dist/cli/install-codex/codex-config-toml-sections.d.ts +1 -9
  72. package/dist/cli/install-codex/codex-config-toml.d.ts +1 -13
  73. package/dist/cli/install-codex/codex-hook-trust.d.ts +1 -6
  74. package/dist/cli/install-codex/codex-installation-detection.d.ts +1 -36
  75. package/dist/cli/install-codex/codex-installer-bin-dir.d.ts +1 -8
  76. package/dist/cli/install-codex/codex-marketplace-snapshot.d.ts +1 -15
  77. package/dist/cli/install-codex/codex-marketplace.d.ts +1 -9
  78. package/dist/cli/install-codex/codex-model-catalog.d.ts +1 -13
  79. package/dist/cli/install-codex/codex-multi-agent-v2-config.d.ts +1 -12
  80. package/dist/cli/install-codex/codex-package-layout.d.ts +1 -1
  81. package/dist/cli/install-codex/codex-process.d.ts +1 -7
  82. package/dist/cli/install-codex/codex-project-local-cleanup-best-effort.d.ts +1 -7
  83. package/dist/cli/install-codex/codex-project-local-cleanup.d.ts +1 -35
  84. package/dist/cli/install-codex/git-bash.d.ts +1 -35
  85. package/dist/cli/install-codex/index.d.ts +1 -11
  86. package/dist/cli/install-codex/install-codex.d.ts +1 -10
  87. package/dist/cli/install-codex/lazycodex-version-stamp.d.ts +1 -19
  88. package/dist/cli/install-codex/link-cached-plugin-agents.d.ts +1 -20
  89. package/dist/cli/install-codex/lsp-daemon-reaper.d.ts +1 -5
  90. package/dist/cli/install-codex/toml-section-editor.d.ts +1 -11
  91. package/dist/cli/install-codex/types.d.ts +1 -76
  92. package/dist/cli/mcp-oauth/login.d.ts +1 -1
  93. package/dist/cli-node/index.js +9774 -7525
  94. package/dist/config/index.d.ts +1 -1
  95. package/dist/config/schema/agent-names.d.ts +1 -1
  96. package/dist/config/schema/codegraph.d.ts +9 -0
  97. package/dist/config/schema/git-env-prefix.d.ts +1 -5
  98. package/dist/config/schema/hooks.d.ts +3 -0
  99. package/dist/config/schema/monitor.d.ts +15 -0
  100. package/dist/config/schema/oh-my-opencode-config.d.ts +27 -16
  101. package/dist/config/schema/openclaw.d.ts +5 -4
  102. package/dist/config/schema/team-mode.d.ts +1 -16
  103. package/dist/config/schema/tmux.d.ts +4 -5
  104. package/dist/config/schema/tui.d.ts +10 -0
  105. package/dist/config/schema.d.ts +2 -0
  106. package/dist/config/validate.d.ts +8 -0
  107. package/dist/create-hooks.d.ts +5 -0
  108. package/dist/create-managers.d.ts +7 -0
  109. package/dist/create-runtime-tmux-config.d.ts +1 -1
  110. package/dist/create-tools.d.ts +1 -1
  111. package/dist/features/background-agent/error-classifier.d.ts +2 -2
  112. package/dist/features/background-agent/manager.d.ts +29 -2
  113. package/dist/features/background-agent/parent-wake-dispatched-tracker.d.ts +8 -0
  114. package/dist/features/background-agent/parent-wake-notifier.d.ts +4 -0
  115. package/dist/features/background-agent/spawner/fallback-agent.d.ts +3 -2
  116. package/dist/features/background-agent/spawner/task-prompt-body.d.ts +5 -6
  117. package/dist/features/background-agent/task-snapshot.d.ts +2 -0
  118. package/dist/features/background-agent/types.d.ts +7 -0
  119. package/dist/features/builtin-commands/templates/refactor-sections/intro-and-analysis.d.ts +1 -1
  120. package/dist/features/builtin-commands/templates/refactor-sections/plan-and-execution.d.ts +1 -1
  121. package/dist/features/builtin-commands/templates/refactor-sections/team-mode-addendum.d.ts +1 -1
  122. package/dist/features/builtin-commands/templates/refactor-sections/verification-and-tooling.d.ts +1 -1
  123. package/dist/features/builtin-commands/templates/remove-ai-slops.d.ts +1 -1
  124. package/dist/features/builtin-skills/index.d.ts +1 -2
  125. package/dist/features/builtin-skills/skill-file-loader.d.ts +1 -4
  126. package/dist/features/builtin-skills/skills/agent-browser-skill.d.ts +1 -2
  127. package/dist/features/builtin-skills/skills/agent-browser-template.d.ts +1 -2
  128. package/dist/features/builtin-skills/skills/debugging.d.ts +1 -2
  129. package/dist/features/builtin-skills/skills/dev-browser.d.ts +1 -2
  130. package/dist/features/builtin-skills/skills/frontend.d.ts +1 -0
  131. package/dist/features/builtin-skills/skills/git-master-sections/commit-atomic-planning.d.ts +1 -1
  132. package/dist/features/builtin-skills/skills/git-master-sections/commit-context-analysis.d.ts +1 -1
  133. package/dist/features/builtin-skills/skills/git-master-sections/commit-execution-verification.d.ts +1 -1
  134. package/dist/features/builtin-skills/skills/git-master-sections/commit-workflow.d.ts +1 -1
  135. package/dist/features/builtin-skills/skills/git-master-sections/history-search-workflow.d.ts +1 -1
  136. package/dist/features/builtin-skills/skills/git-master-sections/overview.d.ts +1 -1
  137. package/dist/features/builtin-skills/skills/git-master-sections/quick-reference.d.ts +1 -1
  138. package/dist/features/builtin-skills/skills/git-master-sections/rebase-workflow.d.ts +1 -1
  139. package/dist/features/builtin-skills/skills/git-master-skill-metadata.d.ts +1 -2
  140. package/dist/features/builtin-skills/skills/git-master.d.ts +1 -2
  141. package/dist/features/builtin-skills/skills/index.d.ts +1 -13
  142. package/dist/features/builtin-skills/skills/init-deep.d.ts +1 -2
  143. package/dist/features/builtin-skills/skills/playwright-cli.d.ts +1 -10
  144. package/dist/features/builtin-skills/skills/playwright-mcp-skill.d.ts +1 -2
  145. package/dist/features/builtin-skills/skills/playwright.d.ts +1 -2
  146. package/dist/features/builtin-skills/skills/remove-ai-slops.d.ts +1 -2
  147. package/dist/features/builtin-skills/skills/review-work.d.ts +1 -2
  148. package/dist/features/builtin-skills/skills/security-research.d.ts +1 -2
  149. package/dist/features/builtin-skills/skills/security-review.d.ts +1 -2
  150. package/dist/features/builtin-skills/skills/team-mode.d.ts +1 -2
  151. package/dist/features/builtin-skills/skills/visual-qa.d.ts +1 -2
  152. package/dist/features/builtin-skills/skills.d.ts +1 -12
  153. package/dist/features/builtin-skills/types.d.ts +1 -15
  154. package/dist/features/claude-code-agent-loader/agent-definitions-loader.d.ts +1 -3
  155. package/dist/features/claude-code-agent-loader/claude-model-mapper.d.ts +1 -4
  156. package/dist/features/claude-code-agent-loader/index.d.ts +1 -5
  157. package/dist/features/claude-code-agent-loader/json-agent-loader.d.ts +1 -2
  158. package/dist/features/claude-code-agent-loader/loader.d.ts +1 -5
  159. package/dist/features/claude-code-agent-loader/opencode-config-agents-reader.d.ts +1 -2
  160. package/dist/features/claude-code-agent-loader/types.d.ts +1 -29
  161. package/dist/features/claude-code-command-loader/index.d.ts +1 -2
  162. package/dist/features/claude-code-command-loader/loader-cache.d.ts +1 -6
  163. package/dist/features/claude-code-command-loader/loader.d.ts +1 -8
  164. package/dist/features/claude-code-command-loader/types.d.ts +1 -42
  165. package/dist/features/claude-code-mcp-loader/configure-allowed-env-vars.d.ts +1 -5
  166. package/dist/features/claude-code-mcp-loader/index.d.ts +1 -11
  167. package/dist/features/claude-code-mcp-loader/loader.d.ts +1 -4
  168. package/dist/features/claude-code-mcp-loader/scope-filter.d.ts +1 -2
  169. package/dist/features/claude-code-mcp-loader/transformer.d.ts +1 -2
  170. package/dist/features/claude-code-mcp-loader/types.d.ts +1 -43
  171. package/dist/features/claude-code-plugin-loader/agent-loader.d.ts +1 -3
  172. package/dist/features/claude-code-plugin-loader/command-loader.d.ts +1 -3
  173. package/dist/features/claude-code-plugin-loader/discovery-core.d.ts +1 -2
  174. package/dist/features/claude-code-plugin-loader/discovery-paths.d.ts +1 -3
  175. package/dist/features/claude-code-plugin-loader/discovery.d.ts +1 -3
  176. package/dist/features/claude-code-plugin-loader/hook-loader.d.ts +1 -2
  177. package/dist/features/claude-code-plugin-loader/index.d.ts +1 -10
  178. package/dist/features/claude-code-plugin-loader/install-path-resolver.d.ts +1 -1
  179. package/dist/features/claude-code-plugin-loader/installed-plugin-database.d.ts +1 -3
  180. package/dist/features/claude-code-plugin-loader/loaded-plugin.d.ts +1 -2
  181. package/dist/features/claude-code-plugin-loader/loader.d.ts +1 -36
  182. package/dist/features/claude-code-plugin-loader/mcp-server-loader.d.ts +1 -3
  183. package/dist/features/claude-code-plugin-loader/plugin-key.d.ts +1 -1
  184. package/dist/features/claude-code-plugin-loader/plugin-manifest.d.ts +1 -4
  185. package/dist/features/claude-code-plugin-loader/plugin-path-resolver.d.ts +1 -2
  186. package/dist/features/claude-code-plugin-loader/plugin-settings.d.ts +1 -3
  187. package/dist/features/claude-code-plugin-loader/scope-filter.d.ts +1 -2
  188. package/dist/features/claude-code-plugin-loader/skill-loader.d.ts +1 -3
  189. package/dist/features/claude-code-plugin-loader/types.d.ts +1 -240
  190. package/dist/features/claude-tasks/types.d.ts +4 -4
  191. package/dist/features/hook-message-injector/sdk-message-lookup.d.ts +9 -2
  192. package/dist/features/mcp-oauth/callback-server.d.ts +1 -19
  193. package/dist/features/mcp-oauth/dcr.d.ts +1 -34
  194. package/dist/features/mcp-oauth/discovery.d.ts +1 -8
  195. package/dist/features/mcp-oauth/oauth-authorization-flow.d.ts +1 -26
  196. package/dist/features/mcp-oauth/provider.d.ts +1 -30
  197. package/dist/features/mcp-oauth/refresh-mutex.d.ts +1 -26
  198. package/dist/features/mcp-oauth/resource-indicator.d.ts +1 -0
  199. package/dist/features/mcp-oauth/schema.d.ts +1 -0
  200. package/dist/features/mcp-oauth/step-up.d.ts +1 -8
  201. package/dist/features/mcp-oauth/storage.d.ts +1 -17
  202. package/dist/features/monitor/batcher.d.ts +36 -0
  203. package/dist/features/monitor/envelope.d.ts +9 -0
  204. package/dist/features/monitor/filter.d.ts +10 -0
  205. package/dist/features/monitor/index.d.ts +2 -0
  206. package/dist/features/monitor/line-stream.d.ts +29 -0
  207. package/dist/features/monitor/manager-internals.d.ts +65 -0
  208. package/dist/features/monitor/manager.d.ts +35 -0
  209. package/dist/features/monitor/monitor-state-factory.d.ts +24 -0
  210. package/dist/features/monitor/output-injector-session-inspect.d.ts +9 -0
  211. package/dist/features/monitor/output-injector-types.d.ts +48 -0
  212. package/dist/features/monitor/output-injector.d.ts +21 -0
  213. package/dist/features/monitor/permission.d.ts +33 -0
  214. package/dist/features/monitor/pipeline.d.ts +26 -0
  215. package/dist/features/monitor/process.d.ts +21 -0
  216. package/dist/features/monitor/ring-buffer.d.ts +25 -0
  217. package/dist/features/monitor/types.d.ts +83 -0
  218. package/dist/features/opencode-runtime-skills/index.d.ts +1 -2
  219. package/dist/features/opencode-runtime-skills/runtime-skill-config.d.ts +1 -17
  220. package/dist/features/opencode-runtime-skills/skill-markdown.d.ts +1 -7
  221. package/dist/features/opencode-runtime-skills/source-server.d.ts +1 -24
  222. package/dist/features/opencode-skill-loader/allowed-tools-parser.d.ts +1 -1
  223. package/dist/features/opencode-skill-loader/config-source-discovery.d.ts +1 -7
  224. package/dist/features/opencode-skill-loader/git-master-template-injection.d.ts +1 -20
  225. package/dist/features/opencode-skill-loader/index.d.ts +1 -16
  226. package/dist/features/opencode-skill-loader/loaded-skill-from-path.d.ts +1 -9
  227. package/dist/features/opencode-skill-loader/loaded-skill-template-extractor.d.ts +1 -2
  228. package/dist/features/opencode-skill-loader/loader.d.ts +1 -21
  229. package/dist/features/opencode-skill-loader/merger/builtin-skill-converter.d.ts +1 -3
  230. package/dist/features/opencode-skill-loader/merger/config-skill-entry-loader.d.ts +1 -3
  231. package/dist/features/opencode-skill-loader/merger/scope-priority.d.ts +1 -2
  232. package/dist/features/opencode-skill-loader/merger/skill-definition-merger.d.ts +1 -3
  233. package/dist/features/opencode-skill-loader/merger/skills-config-normalizer.d.ts +1 -11
  234. package/dist/features/opencode-skill-loader/merger.d.ts +1 -7
  235. package/dist/features/opencode-skill-loader/opencode-config-skills-reader.d.ts +1 -5
  236. package/dist/features/opencode-skill-loader/skill-content.d.ts +1 -5
  237. package/dist/features/opencode-skill-loader/skill-deduplication.d.ts +1 -2
  238. package/dist/features/opencode-skill-loader/skill-definition-record.d.ts +1 -5
  239. package/dist/features/opencode-skill-loader/skill-directory-loader.d.ts +1 -8
  240. package/dist/features/opencode-skill-loader/skill-discovery.d.ts +1 -4
  241. package/dist/features/opencode-skill-loader/skill-mcp-config.d.ts +1 -3
  242. package/dist/features/opencode-skill-loader/skill-resolution-options.d.ts +1 -9
  243. package/dist/features/opencode-skill-loader/skill-template-resolver.d.ts +1 -11
  244. package/dist/features/opencode-skill-loader/types.d.ts +1 -34
  245. package/dist/features/skill-mcp-manager/cleanup.d.ts +1 -8
  246. package/dist/features/skill-mcp-manager/connection-type.d.ts +1 -7
  247. package/dist/features/skill-mcp-manager/connection.d.ts +1 -14
  248. package/dist/features/skill-mcp-manager/env-cleaner.d.ts +1 -2
  249. package/dist/features/skill-mcp-manager/error-redaction.d.ts +1 -10
  250. package/dist/features/skill-mcp-manager/http-client.d.ts +1 -19
  251. package/dist/features/skill-mcp-manager/index.d.ts +1 -2
  252. package/dist/features/skill-mcp-manager/manager.d.ts +1 -27
  253. package/dist/features/skill-mcp-manager/oauth-handler.d.ts +1 -17
  254. package/dist/features/skill-mcp-manager/stdio-client.d.ts +1 -16
  255. package/dist/features/skill-mcp-manager/types.d.ts +1 -79
  256. package/dist/features/team-mode/member-parser.d.ts +1 -16
  257. package/dist/features/team-mode/team-layout-tmux/close-team-member-pane.d.ts +1 -4
  258. package/dist/features/team-mode/team-layout-tmux/index.d.ts +1 -1
  259. package/dist/features/team-mode/team-layout-tmux/layout.d.ts +1 -37
  260. package/dist/features/team-mode/team-layout-tmux/rebalance-team-window.d.ts +1 -9
  261. package/dist/features/team-mode/team-layout-tmux/resolve-caller-tmux-session.d.ts +1 -9
  262. package/dist/features/team-mode/team-layout-tmux/sweep-stale-team-sessions.d.ts +1 -8
  263. package/dist/features/team-mode/team-mailbox/ack.d.ts +1 -2
  264. package/dist/features/team-mode/team-mailbox/inbox.d.ts +1 -3
  265. package/dist/features/team-mode/team-mailbox/index.d.ts +1 -7
  266. package/dist/features/team-mode/team-mailbox/pending-delivery-recovery.d.ts +1 -31
  267. package/dist/features/team-mode/team-mailbox/poll.d.ts +1 -10
  268. package/dist/features/team-mode/team-mailbox/reservation.d.ts +1 -11
  269. package/dist/features/team-mode/team-mailbox/send.d.ts +1 -30
  270. package/dist/features/team-mode/team-registry/index.d.ts +1 -3
  271. package/dist/features/team-mode/team-registry/loader.d.ts +1 -12
  272. package/dist/features/team-mode/team-registry/paths.d.ts +1 -28
  273. package/dist/features/team-mode/team-registry/team-spec-input-normalizer.d.ts +1 -6
  274. package/dist/features/team-mode/team-registry/validator.d.ts +1 -10
  275. package/dist/features/team-mode/team-runtime/shutdown-helpers.d.ts +1 -1
  276. package/dist/features/team-mode/team-state-store/active-resume.d.ts +1 -5
  277. package/dist/features/team-mode/team-state-store/creating-resume.d.ts +1 -4
  278. package/dist/features/team-mode/team-state-store/deleting-resume.d.ts +1 -4
  279. package/dist/features/team-mode/team-state-store/error-normalization.d.ts +1 -2
  280. package/dist/features/team-mode/team-state-store/index.d.ts +1 -1
  281. package/dist/features/team-mode/team-state-store/locks.d.ts +1 -15
  282. package/dist/features/team-mode/team-state-store/reservation-reconciliation.d.ts +1 -4
  283. package/dist/features/team-mode/team-state-store/resume-report.d.ts +1 -7
  284. package/dist/features/team-mode/team-state-store/resume.d.ts +1 -5
  285. package/dist/features/team-mode/team-state-store/runtime-cleanup.d.ts +1 -4
  286. package/dist/features/team-mode/team-state-store/session-liveness.d.ts +1 -9
  287. package/dist/features/team-mode/team-state-store/store.d.ts +1 -21
  288. package/dist/features/team-mode/team-state-store/worker-resume-status.d.ts +1 -9
  289. package/dist/features/team-mode/team-tasklist/claim.d.ts +1 -10
  290. package/dist/features/team-mode/team-tasklist/dependencies.d.ts +1 -2
  291. package/dist/features/team-mode/team-tasklist/get.d.ts +1 -3
  292. package/dist/features/team-mode/team-tasklist/index.d.ts +1 -6
  293. package/dist/features/team-mode/team-tasklist/list.d.ts +1 -8
  294. package/dist/features/team-mode/team-tasklist/store.d.ts +1 -3
  295. package/dist/features/team-mode/team-tasklist/test-support.d.ts +1 -9
  296. package/dist/features/team-mode/team-tasklist/update.d.ts +1 -9
  297. package/dist/features/team-mode/team-worktree/cleanup.d.ts +1 -3
  298. package/dist/features/team-mode/team-worktree/index.d.ts +1 -2
  299. package/dist/features/team-mode/team-worktree/manager.d.ts +1 -15
  300. package/dist/features/team-mode/tools/lifecycle-create-tool.d.ts +2 -2
  301. package/dist/features/team-mode/tools/lifecycle-inline-spec.d.ts +2 -2
  302. package/dist/features/team-mode/tools/lifecycle-participant.d.ts +2 -2
  303. package/dist/features/team-mode/tools/lifecycle-test-fixture.d.ts +8 -8
  304. package/dist/features/team-mode/tools/messaging-live-delivery-recipient.d.ts +2 -2
  305. package/dist/features/team-mode/tools/messaging-live-delivery-reservation.d.ts +1 -1
  306. package/dist/features/team-mode/tools/messaging-live-delivery-state.d.ts +1 -1
  307. package/dist/features/team-mode/tools/messaging-live-delivery.d.ts +1 -1
  308. package/dist/features/team-mode/tools/messaging-runtime.d.ts +2 -2
  309. package/dist/features/team-mode/tools/query.d.ts +3 -3
  310. package/dist/features/team-mode/tools/tasks.d.ts +2 -2
  311. package/dist/features/team-mode/types.d.ts +1 -343
  312. package/dist/features/tui-sidebar/compute-view.d.ts +10 -0
  313. package/dist/features/tui-sidebar/config-validator.d.ts +2 -0
  314. package/dist/features/tui-sidebar/constants.d.ts +10 -0
  315. package/dist/features/tui-sidebar/derivers.d.ts +10 -0
  316. package/dist/features/tui-sidebar/element-helpers.d.ts +9 -0
  317. package/dist/features/tui-sidebar/loop-reader.d.ts +2 -0
  318. package/dist/features/tui-sidebar/mirror-io.d.ts +3 -0
  319. package/dist/features/tui-sidebar/mirror-manager.d.ts +28 -0
  320. package/dist/features/tui-sidebar/mirror-path.d.ts +3 -0
  321. package/dist/features/tui-sidebar/render-view.d.ts +15 -0
  322. package/dist/features/tui-sidebar/roster-resolver.d.ts +2 -0
  323. package/dist/features/tui-sidebar/snapshot-builder.d.ts +28 -0
  324. package/dist/features/tui-sidebar/snapshot-schema.d.ts +41 -0
  325. package/dist/features/tui-sidebar/state-types.d.ts +72 -0
  326. package/dist/hooks/ast-grep-sg-provision/hook.d.ts +19 -0
  327. package/dist/hooks/ast-grep-sg-provision/index.d.ts +1 -0
  328. package/dist/hooks/auto-slash-command/constants.d.ts +1 -5
  329. package/dist/hooks/auto-slash-command/detector.d.ts +1 -15
  330. package/dist/hooks/auto-slash-command/processed-command-store.d.ts +1 -7
  331. package/dist/hooks/auto-slash-command/types.d.ts +1 -48
  332. package/dist/hooks/auto-update-checker/constants.d.ts +3 -3
  333. package/dist/hooks/codegraph-bootstrap/command-runner.d.ts +16 -0
  334. package/dist/hooks/codegraph-bootstrap/hook.d.ts +34 -0
  335. package/dist/hooks/codegraph-bootstrap/index.d.ts +1 -0
  336. package/dist/hooks/codegraph-bootstrap/project-root.d.ts +1 -0
  337. package/dist/hooks/codegraph-bootstrap/status.d.ts +11 -0
  338. package/dist/hooks/delegate-task-retry/guidance.d.ts +1 -2
  339. package/dist/hooks/delegate-task-retry/patterns.d.ts +2 -11
  340. package/dist/hooks/index.d.ts +3 -0
  341. package/dist/hooks/monitor-status-injector/hook.d.ts +30 -0
  342. package/dist/hooks/monitor-status-injector/index.d.ts +2 -0
  343. package/dist/hooks/runtime-fallback/auto-retry-signal.d.ts +1 -4
  344. package/dist/hooks/runtime-fallback/error-classifier.d.ts +7 -6
  345. package/dist/hooks/runtime-fallback/fallback-state.d.ts +3 -2
  346. package/dist/hooks/runtime-fallback/test-timeout-clock.test-support.d.ts +6 -0
  347. package/dist/hooks/tool-pair-validator/tool-part-ids.d.ts +2 -1
  348. package/dist/index.js +89513 -95172
  349. package/dist/interactive-bash-availability.d.ts +1 -0
  350. package/dist/mcp/codegraph.d.ts +16 -0
  351. package/dist/mcp/index.d.ts +10 -2
  352. package/dist/mcp/shared/ancestor-cli-resolver.d.ts +25 -0
  353. package/dist/mcp/types.d.ts +1 -1
  354. package/dist/oh-my-opencode.schema.json +139 -16
  355. package/dist/openclaw/config.d.ts +1 -8
  356. package/dist/openclaw/daemon.d.ts +1 -1
  357. package/dist/openclaw/dispatcher.d.ts +1 -12
  358. package/dist/openclaw/gateway-url-validation.d.ts +1 -1
  359. package/dist/openclaw/index.d.ts +1 -5
  360. package/dist/openclaw/reply-listener-discord.d.ts +1 -4
  361. package/dist/openclaw/reply-listener-injection.d.ts +1 -10
  362. package/dist/openclaw/reply-listener-log.d.ts +1 -2
  363. package/dist/openclaw/reply-listener-paths.d.ts +1 -7
  364. package/dist/openclaw/reply-listener-poll-loop.d.ts +1 -3
  365. package/dist/openclaw/reply-listener-process.d.ts +1 -4
  366. package/dist/openclaw/reply-listener-signature.d.ts +1 -2
  367. package/dist/openclaw/reply-listener-sleep.d.ts +1 -1
  368. package/dist/openclaw/reply-listener-spawn.d.ts +1 -5
  369. package/dist/openclaw/reply-listener-start.d.ts +1 -9
  370. package/dist/openclaw/reply-listener-startup.d.ts +1 -12
  371. package/dist/openclaw/reply-listener-state.d.ts +1 -29
  372. package/dist/openclaw/reply-listener-status.d.ts +1 -4
  373. package/dist/openclaw/reply-listener-stop.d.ts +1 -7
  374. package/dist/openclaw/reply-listener-telegram.d.ts +1 -4
  375. package/dist/openclaw/reply-listener.d.ts +1 -5
  376. package/dist/openclaw/runtime-dispatch.d.ts +1 -17
  377. package/dist/openclaw/session-registry-lock.d.ts +1 -2
  378. package/dist/openclaw/session-registry-paths.d.ts +1 -9
  379. package/dist/openclaw/session-registry-storage.d.ts +1 -4
  380. package/dist/openclaw/session-registry-types.d.ts +1 -11
  381. package/dist/openclaw/session-registry.d.ts +1 -8
  382. package/dist/openclaw/tmux.d.ts +1 -8
  383. package/dist/openclaw/types.d.ts +1 -42
  384. package/dist/plugin/event-error-utils.d.ts +2 -1
  385. package/dist/plugin/hooks/create-core-hooks.d.ts +5 -0
  386. package/dist/plugin/hooks/create-session-hooks.d.ts +3 -1
  387. package/dist/plugin/hooks/create-transform-hooks.d.ts +4 -1
  388. package/dist/plugin/messages-transform.d.ts +1 -0
  389. package/dist/plugin/skill-context.d.ts +2 -0
  390. package/dist/plugin/tool-registry-factories.d.ts +2 -1
  391. package/dist/plugin/tool-registry-gated-tools.d.ts +7 -0
  392. package/dist/plugin/tool-registry.d.ts +1 -1
  393. package/dist/plugin/types.d.ts +2 -9
  394. package/dist/plugin-handlers/prometheus-agent-config-builder.d.ts +1 -0
  395. package/dist/shared/archive-entry-validator.d.ts +1 -6
  396. package/dist/shared/bun-file-shim.d.ts +1 -8
  397. package/dist/shared/bun-spawn-shim.d.ts +1 -43
  398. package/dist/shared/bun-which-shim.d.ts +1 -1
  399. package/dist/shared/classify-path-environment.d.ts +1 -3
  400. package/dist/shared/command-executor/embedded-commands.d.ts +1 -7
  401. package/dist/shared/command-executor/execute-command.d.ts +1 -1
  402. package/dist/shared/command-executor/execute-hook-command.d.ts +1 -23
  403. package/dist/shared/command-executor/home-directory.d.ts +1 -1
  404. package/dist/shared/command-executor/resolve-commands-in-text.d.ts +1 -1
  405. package/dist/shared/command-executor/shell-path.d.ts +1 -2
  406. package/dist/shared/command-executor.d.ts +1 -4
  407. package/dist/shared/git-worktree/collect-git-diff-stats.d.ts +1 -2
  408. package/dist/shared/git-worktree/format-file-changes.d.ts +1 -2
  409. package/dist/shared/git-worktree/index.d.ts +1 -7
  410. package/dist/shared/git-worktree/parse-diff-numstat.d.ts +1 -2
  411. package/dist/shared/git-worktree/parse-status-porcelain-line.d.ts +1 -6
  412. package/dist/shared/git-worktree/parse-status-porcelain.d.ts +1 -2
  413. package/dist/shared/git-worktree/types.d.ts +1 -7
  414. package/dist/shared/internal-initiator-marker.d.ts +1 -46
  415. package/dist/shared/logger.d.ts +3 -11
  416. package/dist/shared/migration/agent-category.d.ts +1 -19
  417. package/dist/shared/migration/agent-names.d.ts +1 -6
  418. package/dist/shared/migration/config-migration.d.ts +1 -1
  419. package/dist/shared/migration/hook-names.d.ts +1 -6
  420. package/dist/shared/migration/migrations-sidecar.d.ts +1 -41
  421. package/dist/shared/migration/model-versions.d.ts +1 -22
  422. package/dist/shared/migration.d.ts +1 -5
  423. package/dist/shared/model-suggestion-retry.d.ts +39 -17
  424. package/dist/shared/plugin-identity.d.ts +8 -8
  425. package/dist/shared/posthog.d.ts +3 -0
  426. package/dist/shared/process-stream-reader.d.ts +1 -3
  427. package/dist/shared/prompt-async-gate/message-inspection-error.d.ts +1 -1
  428. package/dist/shared/prompt-async-gate/pending-tool-turn.d.ts +1 -11
  429. package/dist/shared/prompt-async-gate/prompt-message-state.d.ts +1 -9
  430. package/dist/shared/prompt-async-gate/queue.d.ts +1 -8
  431. package/dist/shared/prompt-async-gate/recent-dispatches.d.ts +1 -14
  432. package/dist/shared/prompt-async-gate/reservations.d.ts +1 -9
  433. package/dist/shared/prompt-async-gate/semantic-dedupe.d.ts +1 -7
  434. package/dist/shared/prompt-async-gate/session-idle-dispatch.d.ts +1 -16
  435. package/dist/shared/prompt-async-gate/timing.d.ts +1 -9
  436. package/dist/shared/prompt-async-gate/types.d.ts +1 -123
  437. package/dist/shared/prompt-async-gate.d.ts +3 -7
  438. package/dist/shared/prompt-failure-classifier.d.ts +1 -9
  439. package/dist/shared/session-idle-settle.d.ts +1 -12
  440. package/dist/shared/shell-env.d.ts +1 -1
  441. package/dist/shared/skill-path-resolver.d.ts +1 -1
  442. package/dist/shared/tmux/cmux-detect.d.ts +1 -8
  443. package/dist/shared/tmux/constants.d.ts +1 -5
  444. package/dist/shared/tmux/runner.d.ts +2 -13
  445. package/dist/shared/tmux/tmux-utils/adapter-deps.d.ts +9 -0
  446. package/dist/shared/tmux/tmux-utils/environment.d.ts +2 -4
  447. package/dist/shared/tmux/tmux-utils/layout.d.ts +4 -17
  448. package/dist/shared/tmux/tmux-utils/pane-close.d.ts +3 -10
  449. package/dist/shared/tmux/tmux-utils/pane-command.d.ts +1 -2
  450. package/dist/shared/tmux/tmux-utils/pane-dimensions.d.ts +2 -4
  451. package/dist/shared/tmux/tmux-utils/pane-replace.d.ts +1 -11
  452. package/dist/shared/tmux/tmux-utils/pane-spawn.d.ts +1 -13
  453. package/dist/shared/tmux/tmux-utils/server-health.d.ts +2 -15
  454. package/dist/shared/tmux/tmux-utils/session-spawn.d.ts +3 -14
  455. package/dist/shared/tmux/tmux-utils/spawn-process.d.ts +1 -1
  456. package/dist/shared/tmux/tmux-utils/stale-session-sweep.d.ts +4 -17
  457. package/dist/shared/tmux/tmux-utils/window-spawn.d.ts +1 -13
  458. package/dist/shared/tmux/types.d.ts +1 -4
  459. package/dist/shared/write-file-atomically.d.ts +2 -0
  460. package/dist/shared/zip-entry-listing/powershell-zip-entry-listing.d.ts +1 -4
  461. package/dist/shared/zip-entry-listing/python-zip-entry-listing.d.ts +1 -3
  462. package/dist/shared/zip-entry-listing/read-zip-symlink-target.d.ts +1 -1
  463. package/dist/shared/zip-entry-listing/tar-zip-entry-listing.d.ts +1 -3
  464. package/dist/shared/zip-entry-listing/zipinfo-zip-entry-listing.d.ts +1 -4
  465. package/dist/shared/zip-entry-listing.d.ts +1 -4
  466. package/dist/skills/ast-grep/LICENSE +21 -0
  467. package/dist/skills/ast-grep/README.md +136 -0
  468. package/dist/skills/ast-grep/SKILL.md +272 -0
  469. package/dist/skills/ast-grep/SOURCE +1 -0
  470. package/dist/skills/ast-grep/install.ps1 +235 -0
  471. package/dist/skills/ast-grep/install.sh +286 -0
  472. package/dist/skills/ast-grep/references/cli.md +231 -0
  473. package/dist/skills/ast-grep/references/install.md +166 -0
  474. package/dist/skills/ast-grep/references/patterns.md +147 -0
  475. package/dist/skills/ast-grep/references/pitfalls.md +303 -0
  476. package/dist/skills/ast-grep/references/recipes.md +402 -0
  477. package/dist/skills/ast-grep/references/sgconfig.md +248 -0
  478. package/dist/skills/ast-grep/references/yaml-rules.md +509 -0
  479. package/dist/skills/ast-grep/scripts/ast_grep_helper.py +748 -0
  480. package/dist/skills/ast-grep/tests/smoke.ps1 +123 -0
  481. package/dist/skills/ast-grep/tests/smoke.sh +212 -0
  482. package/dist/skills/debugging/SKILL.md +116 -0
  483. package/dist/skills/debugging/references/methodology/00-setup.md +108 -0
  484. package/dist/skills/debugging/references/methodology/02-investigate.md +130 -0
  485. package/dist/skills/debugging/references/methodology/04-oracle-triple.md +136 -0
  486. package/dist/skills/debugging/references/methodology/05-escalate.md +69 -0
  487. package/dist/skills/debugging/references/methodology/06-fix.md +116 -0
  488. package/dist/skills/debugging/references/methodology/08-qa.md +94 -0
  489. package/dist/skills/debugging/references/methodology/09-cleanup.md +164 -0
  490. package/dist/skills/debugging/references/methodology/partial-runtime-evidence.md +229 -0
  491. package/dist/skills/debugging/references/runtimes/bundled-js-binary.md +415 -0
  492. package/dist/skills/debugging/references/runtimes/go.md +252 -0
  493. package/dist/skills/debugging/references/runtimes/native-binary.md +484 -0
  494. package/dist/skills/debugging/references/runtimes/node.md +260 -0
  495. package/dist/skills/debugging/references/runtimes/python.md +248 -0
  496. package/dist/skills/debugging/references/runtimes/rust.md +234 -0
  497. package/dist/skills/debugging/references/tools/ghidra.md +212 -0
  498. package/dist/skills/debugging/references/tools/playwright-cli.md +194 -0
  499. package/dist/skills/debugging/references/tools/pwndbg.md +263 -0
  500. package/dist/skills/debugging/references/tools/pwntools.md +265 -0
  501. package/dist/skills/frontend/ATTRIBUTION.md +127 -0
  502. package/dist/skills/frontend/LICENSE-Apache-2.0.txt +201 -0
  503. package/dist/skills/frontend/SKILL.md +113 -0
  504. package/dist/skills/frontend/references/design/README.md +240 -0
  505. package/dist/skills/frontend/references/design/_INDEX.md +189 -0
  506. package/dist/skills/frontend/references/design/airbnb.md +390 -0
  507. package/dist/skills/frontend/references/design/airtable.md +89 -0
  508. package/dist/skills/frontend/references/design/apple.md +247 -0
  509. package/dist/skills/frontend/references/design/binance.md +345 -0
  510. package/dist/skills/frontend/references/design/bmw.md +180 -0
  511. package/dist/skills/frontend/references/design/brutalist-skill.md +92 -0
  512. package/dist/skills/frontend/references/design/bugatti.md +268 -0
  513. package/dist/skills/frontend/references/design/cal.md +259 -0
  514. package/dist/skills/frontend/references/design/claude.md +312 -0
  515. package/dist/skills/frontend/references/design/clay.md +304 -0
  516. package/dist/skills/frontend/references/design/clickhouse.md +281 -0
  517. package/dist/skills/frontend/references/design/cohere.md +266 -0
  518. package/dist/skills/frontend/references/design/coinbase.md +129 -0
  519. package/dist/skills/frontend/references/design/composio.md +307 -0
  520. package/dist/skills/frontend/references/design/cursor.md +309 -0
  521. package/dist/skills/frontend/references/design/design-system-architecture.md +217 -0
  522. package/dist/skills/frontend/references/design/elevenlabs.md +265 -0
  523. package/dist/skills/frontend/references/design/expo.md +281 -0
  524. package/dist/skills/frontend/references/design/ferrari.md +314 -0
  525. package/dist/skills/frontend/references/design/figma.md +220 -0
  526. package/dist/skills/frontend/references/design/framer.md +246 -0
  527. package/dist/skills/frontend/references/design/gpt-tasteskill.md +74 -0
  528. package/dist/skills/frontend/references/design/hashicorp.md +278 -0
  529. package/dist/skills/frontend/references/design/ibm.md +332 -0
  530. package/dist/skills/frontend/references/design/image-to-code-skill.md +1228 -0
  531. package/dist/skills/frontend/references/design/imagegen-brandkit.md +798 -0
  532. package/dist/skills/frontend/references/design/imagegen-frontend-mobile.md +1465 -0
  533. package/dist/skills/frontend/references/design/imagegen-frontend-web.md +686 -0
  534. package/dist/skills/frontend/references/design/intercom.md +146 -0
  535. package/dist/skills/frontend/references/design/kraken.md +125 -0
  536. package/dist/skills/frontend/references/design/lamborghini.md +288 -0
  537. package/dist/skills/frontend/references/design/linear.app.md +367 -0
  538. package/dist/skills/frontend/references/design/lovable.md +298 -0
  539. package/dist/skills/frontend/references/design/mastercard.md +365 -0
  540. package/dist/skills/frontend/references/design/meta.md +366 -0
  541. package/dist/skills/frontend/references/design/minimalist-skill.md +85 -0
  542. package/dist/skills/frontend/references/design/minimax.md +257 -0
  543. package/dist/skills/frontend/references/design/mintlify.md +326 -0
  544. package/dist/skills/frontend/references/design/miro.md +108 -0
  545. package/dist/skills/frontend/references/design/mistral.ai.md +261 -0
  546. package/dist/skills/frontend/references/design/mongodb.md +266 -0
  547. package/dist/skills/frontend/references/design/nike.md +363 -0
  548. package/dist/skills/frontend/references/design/notion.md +309 -0
  549. package/dist/skills/frontend/references/design/nvidia.md +293 -0
  550. package/dist/skills/frontend/references/design/ollama.md +267 -0
  551. package/dist/skills/frontend/references/design/opencode.ai.md +281 -0
  552. package/dist/skills/frontend/references/design/output-skill.md +49 -0
  553. package/dist/skills/frontend/references/design/pinterest.md +230 -0
  554. package/dist/skills/frontend/references/design/playstation.md +364 -0
  555. package/dist/skills/frontend/references/design/posthog.md +256 -0
  556. package/dist/skills/frontend/references/design/raycast.md +268 -0
  557. package/dist/skills/frontend/references/design/react-dev-tooling-skill.md +230 -0
  558. package/dist/skills/frontend/references/design/redesign-skill.md +178 -0
  559. package/dist/skills/frontend/references/design/renault.md +311 -0
  560. package/dist/skills/frontend/references/design/replicate.md +261 -0
  561. package/dist/skills/frontend/references/design/resend.md +303 -0
  562. package/dist/skills/frontend/references/design/revolut.md +185 -0
  563. package/dist/skills/frontend/references/design/runwayml.md +244 -0
  564. package/dist/skills/frontend/references/design/sanity.md +357 -0
  565. package/dist/skills/frontend/references/design/sentry.md +262 -0
  566. package/dist/skills/frontend/references/design/shopify.md +350 -0
  567. package/dist/skills/frontend/references/design/soft-skill.md +98 -0
  568. package/dist/skills/frontend/references/design/spacex.md +194 -0
  569. package/dist/skills/frontend/references/design/spotify.md +246 -0
  570. package/dist/skills/frontend/references/design/starbucks.md +580 -0
  571. package/dist/skills/frontend/references/design/stitch-skill.md +184 -0
  572. package/dist/skills/frontend/references/design/stripe.md +322 -0
  573. package/dist/skills/frontend/references/design/supabase.md +255 -0
  574. package/dist/skills/frontend/references/design/superhuman.md +252 -0
  575. package/dist/skills/frontend/references/design/taste-skill.md +226 -0
  576. package/dist/skills/frontend/references/design/tesla.md +286 -0
  577. package/dist/skills/frontend/references/design/theverge.md +339 -0
  578. package/dist/skills/frontend/references/design/together.ai.md +263 -0
  579. package/dist/skills/frontend/references/design/uber.md +295 -0
  580. package/dist/skills/frontend/references/design/vercel.md +310 -0
  581. package/dist/skills/frontend/references/design/vodafone.md +423 -0
  582. package/dist/skills/frontend/references/design/voltagent.md +323 -0
  583. package/dist/skills/frontend/references/design/warp.md +253 -0
  584. package/dist/skills/frontend/references/design/webflow.md +92 -0
  585. package/dist/skills/frontend/references/design/wired.md +278 -0
  586. package/dist/skills/frontend/references/design/wise.md +173 -0
  587. package/dist/skills/frontend/references/design/x.ai.md +257 -0
  588. package/dist/skills/frontend/references/design/zapier.md +328 -0
  589. package/dist/skills/frontend/references/perfection/README.md +160 -0
  590. package/dist/skills/frontend/references/perfection/react-perf-tooling.md +127 -0
  591. package/dist/skills/frontend/references/ui-ux-db/README.md +273 -0
  592. package/dist/skills/frontend/references/ui-ux-db/data/charts.csv +26 -0
  593. package/dist/skills/frontend/references/ui-ux-db/data/colors.csv +97 -0
  594. package/dist/skills/frontend/references/ui-ux-db/data/icons.csv +101 -0
  595. package/dist/skills/frontend/references/ui-ux-db/data/landing.csv +31 -0
  596. package/dist/skills/frontend/references/ui-ux-db/data/products.csv +97 -0
  597. package/dist/skills/frontend/references/ui-ux-db/data/react-performance.csv +45 -0
  598. package/dist/skills/frontend/references/ui-ux-db/data/stacks/astro.csv +54 -0
  599. package/dist/skills/frontend/references/ui-ux-db/data/stacks/flutter.csv +53 -0
  600. package/dist/skills/frontend/references/ui-ux-db/data/stacks/html-tailwind.csv +56 -0
  601. package/dist/skills/frontend/references/ui-ux-db/data/stacks/jetpack-compose.csv +53 -0
  602. package/dist/skills/frontend/references/ui-ux-db/data/stacks/nextjs.csv +53 -0
  603. package/dist/skills/frontend/references/ui-ux-db/data/stacks/nuxt-ui.csv +51 -0
  604. package/dist/skills/frontend/references/ui-ux-db/data/stacks/nuxtjs.csv +59 -0
  605. package/dist/skills/frontend/references/ui-ux-db/data/stacks/react-native.csv +52 -0
  606. package/dist/skills/frontend/references/ui-ux-db/data/stacks/react.csv +54 -0
  607. package/dist/skills/frontend/references/ui-ux-db/data/stacks/shadcn.csv +61 -0
  608. package/dist/skills/frontend/references/ui-ux-db/data/stacks/svelte.csv +54 -0
  609. package/dist/skills/frontend/references/ui-ux-db/data/stacks/swiftui.csv +51 -0
  610. package/dist/skills/frontend/references/ui-ux-db/data/stacks/vue.csv +50 -0
  611. package/dist/skills/frontend/references/ui-ux-db/data/styles.csv +68 -0
  612. package/dist/skills/frontend/references/ui-ux-db/data/typography.csv +58 -0
  613. package/dist/skills/frontend/references/ui-ux-db/data/ui-reasoning.csv +101 -0
  614. package/dist/skills/frontend/references/ui-ux-db/data/ux-guidelines.csv +100 -0
  615. package/dist/skills/frontend/references/ui-ux-db/data/web-interface.csv +31 -0
  616. package/dist/skills/frontend/references/ui-ux-db/scripts/core.py +253 -0
  617. package/dist/skills/frontend/references/ui-ux-db/scripts/design_system.py +1067 -0
  618. package/dist/skills/frontend/references/ui-ux-db/scripts/search.py +114 -0
  619. package/dist/skills/frontend/scripts/perfection/lighthouse-audit.py +201 -0
  620. package/dist/skills/git-master/SKILL.md +100 -0
  621. package/dist/skills/git-master/agents/openai.yaml +13 -0
  622. package/dist/skills/init-deep/SKILL.md +309 -0
  623. package/dist/skills/lcx-contribute-bug-fix/SKILL.md +242 -0
  624. package/dist/skills/lcx-contribute-bug-fix/agents/openai.yaml +12 -0
  625. package/dist/skills/lcx-contribute-bug-fix/scripts/create-pr-body.mjs +107 -0
  626. package/dist/skills/lcx-doctor/SKILL.md +93 -0
  627. package/dist/skills/lcx-doctor/agents/openai.yaml +11 -0
  628. package/dist/skills/lcx-report-bug/SKILL.md +237 -0
  629. package/dist/skills/lcx-report-bug/agents/openai.yaml +11 -0
  630. package/dist/skills/lsp-setup/SKILL.md +139 -0
  631. package/dist/skills/lsp-setup/references/bash/README.md +60 -0
  632. package/dist/skills/lsp-setup/references/c-cpp/README.md +61 -0
  633. package/dist/skills/lsp-setup/references/csharp/README.md +71 -0
  634. package/dist/skills/lsp-setup/references/dart/README.md +48 -0
  635. package/dist/skills/lsp-setup/references/elixir/README.md +51 -0
  636. package/dist/skills/lsp-setup/references/go/README.md +57 -0
  637. package/dist/skills/lsp-setup/references/haskell/README.md +57 -0
  638. package/dist/skills/lsp-setup/references/java/README.md +57 -0
  639. package/dist/skills/lsp-setup/references/julia/README.md +60 -0
  640. package/dist/skills/lsp-setup/references/kotlin/README.md +59 -0
  641. package/dist/skills/lsp-setup/references/lua/README.md +66 -0
  642. package/dist/skills/lsp-setup/references/php/README.md +62 -0
  643. package/dist/skills/lsp-setup/references/python/README.md +71 -0
  644. package/dist/skills/lsp-setup/references/ruby/README.md +53 -0
  645. package/dist/skills/lsp-setup/references/rust/README.md +59 -0
  646. package/dist/skills/lsp-setup/references/swift/README.md +51 -0
  647. package/dist/skills/lsp-setup/references/terraform/README.md +62 -0
  648. package/dist/skills/lsp-setup/references/typescript/README.md +77 -0
  649. package/dist/skills/lsp-setup/references/yaml/README.md +70 -0
  650. package/dist/skills/lsp-setup/references/zig/README.md +49 -0
  651. package/dist/skills/lsp-setup/scripts/detect-lsp.ts +210 -0
  652. package/dist/skills/lsp-setup/scripts/lsp-server-table.ts +177 -0
  653. package/dist/skills/lsp-setup/scripts/tsconfig.json +17 -0
  654. package/dist/skills/lsp-setup/scripts/verify-lsp.ts +147 -0
  655. package/dist/skills/programming/SKILL.md +463 -0
  656. package/dist/skills/programming/references/go/README.md +90 -0
  657. package/dist/skills/programming/references/go/backend-stack.md +641 -0
  658. package/dist/skills/programming/references/go/bootstrap.md +328 -0
  659. package/dist/skills/programming/references/go/bubbletea-v2.md +360 -0
  660. package/dist/skills/programming/references/go/cobra-stack.md +468 -0
  661. package/dist/skills/programming/references/go/concurrency.md +362 -0
  662. package/dist/skills/programming/references/go/data-modeling.md +329 -0
  663. package/dist/skills/programming/references/go/error-handling.md +359 -0
  664. package/dist/skills/programming/references/go/golangci-strict.md +236 -0
  665. package/dist/skills/programming/references/go/grpc-connect.md +375 -0
  666. package/dist/skills/programming/references/go/libraries.md +337 -0
  667. package/dist/skills/programming/references/go/one-liners.md +202 -0
  668. package/dist/skills/programming/references/go/sqlc-pgx.md +471 -0
  669. package/dist/skills/programming/references/go/testing.md +467 -0
  670. package/dist/skills/programming/references/go/type-patterns.md +298 -0
  671. package/dist/skills/programming/references/python/README.md +314 -0
  672. package/dist/skills/programming/references/python/async-anyio.md +442 -0
  673. package/dist/skills/programming/references/python/data-modeling.md +233 -0
  674. package/dist/skills/programming/references/python/data-processing.md +133 -0
  675. package/dist/skills/programming/references/python/error-handling.md +218 -0
  676. package/dist/skills/programming/references/python/fastapi-stack.md +316 -0
  677. package/dist/skills/programming/references/python/httpx2-optimization.md +360 -0
  678. package/dist/skills/programming/references/python/libraries.md +307 -0
  679. package/dist/skills/programming/references/python/one-liners.md +268 -0
  680. package/dist/skills/programming/references/python/orjson-stack.md +378 -0
  681. package/dist/skills/programming/references/python/pydantic-ai.md +285 -0
  682. package/dist/skills/programming/references/python/pyproject-strict.md +232 -0
  683. package/dist/skills/programming/references/python/textual-tui.md +201 -0
  684. package/dist/skills/programming/references/python/type-patterns.md +176 -0
  685. package/dist/skills/programming/references/rust/README.md +317 -0
  686. package/dist/skills/programming/references/rust/async-tokio.md +299 -0
  687. package/dist/skills/programming/references/rust/axum-stack.md +467 -0
  688. package/dist/skills/programming/references/rust/cargo-strict.md +317 -0
  689. package/dist/skills/programming/references/rust/clap-stack.md +409 -0
  690. package/dist/skills/programming/references/rust/concurrency.md +375 -0
  691. package/dist/skills/programming/references/rust/libraries.md +439 -0
  692. package/dist/skills/programming/references/rust/one-liners.md +291 -0
  693. package/dist/skills/programming/references/rust/proptest-insta.md +429 -0
  694. package/dist/skills/programming/references/rust/type-state.md +354 -0
  695. package/dist/skills/programming/references/rust/unsafe-discipline.md +250 -0
  696. package/dist/skills/programming/references/rust/zero-cost-safety.md +527 -0
  697. package/dist/skills/programming/references/rust-ub/README.md +289 -0
  698. package/dist/skills/programming/references/rust-ub/miri-sanitizers-loom.md +411 -0
  699. package/dist/skills/programming/references/rust-ub/ub-taxonomy.md +269 -0
  700. package/dist/skills/programming/references/typescript/README.md +195 -0
  701. package/dist/skills/programming/references/typescript/backend-hono.md +672 -0
  702. package/dist/skills/programming/references/typescript/bootstrap.md +199 -0
  703. package/dist/skills/programming/references/typescript/data-modeling.md +202 -0
  704. package/dist/skills/programming/references/typescript/error-handling.md +169 -0
  705. package/dist/skills/programming/references/typescript/tsconfig-strict.md +152 -0
  706. package/dist/skills/programming/references/typescript/type-patterns.md +196 -0
  707. package/dist/skills/programming/scripts/go/check-no-excuse-rules.sh +173 -0
  708. package/dist/skills/programming/scripts/go/new-project.py +138 -0
  709. package/dist/skills/programming/scripts/go/templates/.editorconfig +13 -0
  710. package/dist/skills/programming/scripts/go/templates/.golangci.yml +95 -0
  711. package/dist/skills/programming/scripts/go/templates/AGENTS.md.tmpl +24 -0
  712. package/dist/skills/programming/scripts/go/templates/README.md.tmpl +12 -0
  713. package/dist/skills/programming/scripts/go/templates/Taskfile.yml +40 -0
  714. package/dist/skills/programming/scripts/go/templates/ci.yml +37 -0
  715. package/dist/skills/programming/scripts/go/templates/config.go +24 -0
  716. package/dist/skills/programming/scripts/go/templates/gitignore +15 -0
  717. package/dist/skills/programming/scripts/go/templates/main.go.tmpl +22 -0
  718. package/dist/skills/programming/scripts/go/templates/run.go +15 -0
  719. package/dist/skills/programming/scripts/python/check-no-excuse-rules.py +687 -0
  720. package/dist/skills/programming/scripts/python/new-project.py +172 -0
  721. package/dist/skills/programming/scripts/python/new-script.py +116 -0
  722. package/dist/skills/programming/scripts/rust/check-no-excuse-rules.py +296 -0
  723. package/dist/skills/programming/scripts/rust/check-no-excuse-rules.sh +158 -0
  724. package/dist/skills/programming/scripts/rust/new-project.py +175 -0
  725. package/dist/skills/programming/scripts/typescript/check-no-excuse-rules.ts +282 -0
  726. package/dist/skills/programming/scripts/typescript/new-project.ts +177 -0
  727. package/dist/skills/refactor/SKILL.md +754 -0
  728. package/dist/skills/remove-ai-slops/SKILL.md +317 -0
  729. package/dist/skills/review-work/SKILL.md +594 -0
  730. package/dist/skills/start-work/SKILL.md +178 -0
  731. package/dist/skills/ultraresearch/SKILL.md +230 -0
  732. package/dist/skills/ulw-plan/SKILL.md +69 -0
  733. package/dist/skills/ulw-plan/agents/openai.yaml +7 -0
  734. package/dist/skills/ulw-plan/references/full-workflow.md +99 -0
  735. package/dist/skills/ulw-plan/references/intent-clear.md +44 -0
  736. package/dist/skills/ulw-plan/references/intent-unclear.md +44 -0
  737. package/dist/skills/ulw-plan/scripts/scaffold-plan.mjs +301 -0
  738. package/dist/skills/visual-qa/SKILL.md +235 -0
  739. package/dist/skills/visual-qa/references/agent-browser-setup.md +44 -0
  740. package/dist/skills/visual-qa/scripts/ansi.test.ts +45 -0
  741. package/dist/skills/visual-qa/scripts/ansi.ts +17 -0
  742. package/dist/skills/visual-qa/scripts/cli.test.ts +73 -0
  743. package/dist/skills/visual-qa/scripts/cli.ts +82 -0
  744. package/dist/skills/visual-qa/scripts/east-asian-width.test.ts +60 -0
  745. package/dist/skills/visual-qa/scripts/east-asian-width.ts +72 -0
  746. package/dist/skills/visual-qa/scripts/image-diff.test.ts +70 -0
  747. package/dist/skills/visual-qa/scripts/image-diff.ts +109 -0
  748. package/dist/skills/visual-qa/scripts/png-crc.ts +27 -0
  749. package/dist/skills/visual-qa/scripts/png-decode.test.ts +44 -0
  750. package/dist/skills/visual-qa/scripts/png-decode.ts +206 -0
  751. package/dist/skills/visual-qa/scripts/png-synth.ts +57 -0
  752. package/dist/skills/visual-qa/scripts/skill-prompt-contract.test.ts +127 -0
  753. package/dist/skills/visual-qa/scripts/tui-grid.test.ts +57 -0
  754. package/dist/skills/visual-qa/scripts/tui-grid.ts +88 -0
  755. package/dist/skills/visual-qa/scripts/types.ts +54 -0
  756. package/dist/tools/delegate-task/background-task-description.d.ts +2 -0
  757. package/dist/tools/delegate-task/constants.d.ts +13 -1
  758. package/dist/tools/delegate-task/model-selection.d.ts +3 -17
  759. package/dist/tools/delegate-task/model-string-parser.d.ts +1 -9
  760. package/dist/tools/delegate-task/sync-result-fetcher.d.ts +1 -0
  761. package/dist/tools/delegate-task/sync-session-poller.d.ts +1 -0
  762. package/dist/tools/delegate-task/types.d.ts +59 -2
  763. package/dist/tools/index.d.ts +1 -0
  764. package/dist/tools/monitor/create-monitor-tools.d.ts +4 -0
  765. package/dist/tools/monitor/index.d.ts +1 -0
  766. package/dist/tools/monitor/monitor-list.d.ts +7 -0
  767. package/dist/tools/monitor/monitor-output.d.ts +3 -0
  768. package/dist/tools/monitor/monitor-start.d.ts +9 -0
  769. package/dist/tools/monitor/monitor-stop.d.ts +16 -0
  770. package/dist/tools/skill/native-skills.d.ts +2 -2
  771. package/dist/tools/skill/scope-priority.d.ts +1 -4
  772. package/dist/tools/skill/skill-matcher.d.ts +1 -5
  773. package/dist/tools/task/types.d.ts +10 -10
  774. package/dist/tui.d.ts +4 -0
  775. package/dist/tui.js +69330 -0
  776. package/package.json +57 -36
  777. package/packages/git-bash-mcp/dist/cli.js +225 -55
  778. package/packages/lsp-core/package.json +41 -0
  779. package/packages/lsp-core/src/index.ts +28 -0
  780. package/packages/lsp-core/src/lsp/cleanup-errors.ts +5 -0
  781. package/packages/lsp-core/src/lsp/client-wrapper.ts +173 -0
  782. package/packages/lsp-core/src/lsp/client.ts +172 -0
  783. package/packages/lsp-core/src/lsp/config-loader.ts +266 -0
  784. package/packages/lsp-core/src/lsp/connection.ts +73 -0
  785. package/packages/lsp-core/src/lsp/constants.ts +11 -0
  786. package/packages/lsp-core/src/lsp/directory-diagnostics.ts +154 -0
  787. package/packages/lsp-core/src/lsp/effective-extension.ts +10 -0
  788. package/packages/lsp-core/src/lsp/errors.ts +63 -0
  789. package/packages/lsp-core/src/lsp/formatters.ts +141 -0
  790. package/packages/lsp-core/src/lsp/infer-extension.ts +66 -0
  791. package/packages/lsp-core/src/lsp/json-rpc-connection.ts +296 -0
  792. package/packages/lsp-core/src/lsp/language-mappings.ts +173 -0
  793. package/packages/lsp-core/src/lsp/manager.ts +369 -0
  794. package/packages/lsp-core/src/lsp/process-signal-cleanup.ts +21 -0
  795. package/packages/lsp-core/src/lsp/process.ts +202 -0
  796. package/packages/lsp-core/src/lsp/server-definitions.ts +176 -0
  797. package/packages/lsp-core/src/lsp/server-install-state.ts +70 -0
  798. package/packages/lsp-core/src/lsp/server-installation.ts +45 -0
  799. package/packages/lsp-core/src/lsp/server-resolution.ts +104 -0
  800. package/packages/lsp-core/src/lsp/startup-failure.ts +1 -0
  801. package/packages/lsp-core/src/lsp/transport.ts +299 -0
  802. package/packages/lsp-core/src/lsp/types.ts +126 -0
  803. package/packages/lsp-core/src/lsp/utils.test.ts +72 -0
  804. package/packages/lsp-core/src/lsp/utils.ts +40 -0
  805. package/packages/lsp-core/src/lsp/workspace-edit.ts +206 -0
  806. package/packages/lsp-core/src/mcp-protocol-pin.test.ts +68 -0
  807. package/packages/lsp-core/src/mcp.ts +95 -0
  808. package/packages/lsp-core/src/missing-dependency-result.ts +19 -0
  809. package/packages/lsp-core/src/request-context.ts +22 -0
  810. package/packages/lsp-core/src/tool-surface.test.ts +157 -0
  811. package/packages/lsp-core/src/tools/definitions.ts +141 -0
  812. package/packages/lsp-core/src/tools/diagnostics.ts +97 -0
  813. package/packages/lsp-core/src/tools/index.ts +10 -0
  814. package/packages/lsp-core/src/tools/install-decision.ts +39 -0
  815. package/packages/lsp-core/src/tools/navigation.ts +86 -0
  816. package/packages/lsp-core/src/tools/parameters.ts +49 -0
  817. package/packages/lsp-core/src/tools/rename.ts +72 -0
  818. package/packages/lsp-core/src/tools/result.ts +5 -0
  819. package/packages/lsp-core/src/tools/runtime.ts +21 -0
  820. package/packages/lsp-core/src/tools/schema.ts +9 -0
  821. package/packages/lsp-core/src/tools/status.ts +28 -0
  822. package/packages/lsp-core/src/tools/symbols.ts +99 -0
  823. package/packages/lsp-core/src/tools/types.ts +104 -0
  824. package/packages/lsp-core/src/tools.ts +1 -0
  825. package/packages/lsp-daemon/dist/cli.js +712 -527
  826. package/packages/lsp-daemon/dist/daemon-client.d.ts +1 -1
  827. package/packages/lsp-daemon/dist/daemon-server.js +1 -1
  828. package/packages/lsp-daemon/dist/index.d.ts +1 -1
  829. package/packages/lsp-daemon/dist/index.js +687 -500
  830. package/packages/lsp-daemon/dist/proxy.d.ts +3 -2
  831. package/packages/lsp-daemon/dist/proxy.js +16 -40
  832. package/packages/lsp-daemon/dist/request-routing.d.ts +2 -2
  833. package/packages/lsp-daemon/dist/request-routing.js +2 -2
  834. package/packages/lsp-daemon/package.json +2 -1
  835. package/packages/lsp-tools-mcp/dist/cli.js +3348 -15
  836. package/packages/lsp-tools-mcp/dist/lsp/cleanup-errors.d.ts +1 -1
  837. package/packages/lsp-tools-mcp/dist/lsp/client-wrapper.d.ts +1 -13
  838. package/packages/lsp-tools-mcp/dist/lsp/client.d.ts +1 -20
  839. package/packages/lsp-tools-mcp/dist/lsp/config-loader.d.ts +1 -16
  840. package/packages/lsp-tools-mcp/dist/lsp/connection.d.ts +1 -4
  841. package/packages/lsp-tools-mcp/dist/lsp/constants.d.ts +1 -10
  842. package/packages/lsp-tools-mcp/dist/lsp/directory-diagnostics.d.ts +1 -3
  843. package/packages/lsp-tools-mcp/dist/lsp/effective-extension.d.ts +1 -1
  844. package/packages/lsp-tools-mcp/dist/lsp/errors.d.ts +1 -35
  845. package/packages/lsp-tools-mcp/dist/lsp/formatters.d.ts +1 -12
  846. package/packages/lsp-tools-mcp/dist/lsp/infer-extension.d.ts +1 -1
  847. package/packages/lsp-tools-mcp/dist/lsp/json-rpc-connection.d.ts +1 -36
  848. package/packages/lsp-tools-mcp/dist/lsp/language-mappings.d.ts +1 -4
  849. package/packages/lsp-tools-mcp/dist/lsp/manager.d.ts +1 -46
  850. package/packages/lsp-tools-mcp/dist/lsp/manager.js +1390 -265
  851. package/packages/lsp-tools-mcp/dist/lsp/process-signal-cleanup.d.ts +1 -1
  852. package/packages/lsp-tools-mcp/dist/lsp/process.d.ts +1 -25
  853. package/packages/lsp-tools-mcp/dist/lsp/server-definitions.d.ts +1 -4
  854. package/packages/lsp-tools-mcp/dist/lsp/server-install-state.d.ts +1 -12
  855. package/packages/lsp-tools-mcp/dist/lsp/server-installation.d.ts +1 -1
  856. package/packages/lsp-tools-mcp/dist/lsp/server-resolution.d.ts +1 -11
  857. package/packages/lsp-tools-mcp/dist/lsp/startup-failure.d.ts +1 -3
  858. package/packages/lsp-tools-mcp/dist/lsp/transport.d.ts +1 -35
  859. package/packages/lsp-tools-mcp/dist/lsp/types.d.ts +1 -124
  860. package/packages/lsp-tools-mcp/dist/lsp/utils.d.ts +1 -0
  861. package/packages/lsp-tools-mcp/dist/lsp/workspace-edit.d.ts +1 -11
  862. package/packages/lsp-tools-mcp/dist/mcp.d.ts +1 -30
  863. package/packages/lsp-tools-mcp/dist/mcp.js +3312 -70
  864. package/packages/lsp-tools-mcp/dist/missing-dependency-result.d.ts +1 -2
  865. package/packages/lsp-tools-mcp/dist/request-context.d.ts +1 -7
  866. package/packages/lsp-tools-mcp/dist/request-context.js +16 -10
  867. package/packages/lsp-tools-mcp/dist/tools.d.ts +1 -90
  868. package/packages/lsp-tools-mcp/dist/tools.js +3028 -439
  869. package/packages/lsp-tools-mcp/package.json +3 -1
  870. package/packages/omo-codex/THIRD-PARTY-NOTICES.md +155 -0
  871. package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
  872. package/packages/omo-codex/plugin/.mcp.json +6 -5
  873. package/packages/omo-codex/plugin/README.md +1 -1
  874. package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +1637 -1245
  875. package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
  876. package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
  877. package/packages/omo-codex/plugin/components/bootstrap/scripts/generate-manifests.mjs +8 -52
  878. package/packages/omo-codex/plugin/components/bootstrap/src/provision.ts +35 -143
  879. package/packages/omo-codex/plugin/components/bootstrap/src/setup.ts +11 -11
  880. package/packages/omo-codex/plugin/components/bootstrap/test/environment.test.ts +3 -2
  881. package/packages/omo-codex/plugin/components/bootstrap/test/provision.test.ts +37 -37
  882. package/packages/omo-codex/plugin/components/codegraph/dist/cli.js +2205 -0
  883. package/packages/omo-codex/plugin/components/codegraph/dist/serve.d.ts +32 -0
  884. package/packages/omo-codex/plugin/components/codegraph/dist/serve.js +1603 -0
  885. package/packages/omo-codex/plugin/components/codegraph/package.json +27 -0
  886. package/packages/omo-codex/plugin/components/codegraph/src/cli.ts +55 -0
  887. package/packages/omo-codex/plugin/components/codegraph/src/hook-types.ts +83 -0
  888. package/packages/omo-codex/plugin/components/codegraph/src/hook.ts +108 -0
  889. package/packages/omo-codex/plugin/components/codegraph/src/serve.ts +191 -0
  890. package/packages/omo-codex/plugin/components/codegraph/src/session-start-worker.ts +213 -0
  891. package/packages/omo-codex/plugin/components/codegraph/test/hook.test.ts +563 -0
  892. package/packages/omo-codex/plugin/components/codegraph/test/serve.test.ts +401 -0
  893. package/packages/omo-codex/plugin/components/codegraph/tsconfig.build.json +13 -0
  894. package/packages/omo-codex/plugin/components/codegraph/tsconfig.json +25 -0
  895. package/packages/omo-codex/plugin/components/comment-checker/dist/cli.js +610 -7
  896. package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
  897. package/packages/omo-codex/plugin/components/comment-checker/package.json +4 -3
  898. package/packages/omo-codex/plugin/components/comment-checker/src/apply-patch.ts +28 -156
  899. package/packages/omo-codex/plugin/components/comment-checker/src/core-values.ts +1 -1
  900. package/packages/omo-codex/plugin/components/comment-checker/src/core.ts +2 -2
  901. package/packages/omo-codex/plugin/components/comment-checker/src/request-extractor.ts +1 -1
  902. package/packages/omo-codex/plugin/components/comment-checker/src/runner.ts +6 -2
  903. package/packages/omo-codex/plugin/components/comment-checker/test/core.test.ts +38 -35
  904. package/packages/omo-codex/plugin/components/comment-checker/test/fixtures/apply-patch-mixed-requests.ts +60 -0
  905. package/packages/omo-codex/plugin/components/git-bash/dist/cli.js +155 -26
  906. package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
  907. package/packages/omo-codex/plugin/components/git-bash/package.json +2 -1
  908. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/biome.json +48 -0
  909. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/directive.md +11 -0
  910. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/cli.js +223 -0
  911. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/codex-hook.d.ts +2 -0
  912. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/codex-hook.js +123 -0
  913. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/directive.d.ts +2 -0
  914. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/directive.js +5 -0
  915. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/index.d.ts +4 -0
  916. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/index.js +3 -0
  917. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/state.d.ts +9 -0
  918. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/state.js +45 -0
  919. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/types.d.ts +39 -0
  920. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/dist/types.js +1 -0
  921. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +17 -0
  922. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +44 -0
  923. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/src/cli.ts +56 -0
  924. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/src/codex-hook.ts +129 -0
  925. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/src/directive.ts +13 -0
  926. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/src/index.ts +4 -0
  927. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/src/state.ts +62 -0
  928. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/src/types.ts +38 -0
  929. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/test/cli.test.ts +124 -0
  930. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/test/codex-hook.test.ts +346 -0
  931. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/tsconfig.build.json +12 -0
  932. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/tsconfig.json +27 -0
  933. package/packages/omo-codex/plugin/components/lazycodex-executor-verify/vitest.config.ts +10 -0
  934. package/packages/omo-codex/plugin/components/lsp/dist/cli.js +3738 -28
  935. package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
  936. package/packages/omo-codex/plugin/components/lsp/package.json +1 -1
  937. package/packages/omo-codex/plugin/components/rules/bundled-rules/hephaestus.md +1 -1
  938. package/packages/omo-codex/plugin/components/rules/dist/cli.js +4565 -89
  939. package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
  940. package/packages/omo-codex/plugin/components/rules/package.json +4 -3
  941. package/packages/omo-codex/plugin/components/rules/src/cli.ts +16 -3
  942. package/packages/omo-codex/plugin/components/rules/src/config.ts +3 -3
  943. package/packages/omo-codex/plugin/components/rules/src/dynamic-target-fingerprints.ts +6 -6
  944. package/packages/omo-codex/plugin/components/rules/src/event-budget.ts +1 -1
  945. package/packages/omo-codex/plugin/components/rules/src/persistent-cache.ts +1 -1
  946. package/packages/omo-codex/plugin/components/rules/src/post-compact-budget.ts +1 -1
  947. package/packages/omo-codex/plugin/components/rules/src/rules-engine-factory.ts +9 -4
  948. package/packages/omo-codex/plugin/components/rules/src/static-injection.ts +3 -3
  949. package/packages/omo-codex/plugin/components/rules/src/transcript-rule-filter.ts +1 -1
  950. package/packages/omo-codex/plugin/components/rules/test/bundled-rules-priority.test.ts +4 -4
  951. package/packages/omo-codex/plugin/components/rules/test/bundled-rules.test.ts +1 -1
  952. package/packages/omo-codex/plugin/components/rules/test/dynamic-target-fingerprints.test.ts +1 -1
  953. package/packages/omo-codex/plugin/components/rules/test/engine.test.ts +3 -3
  954. package/packages/omo-codex/plugin/components/rules/test/finder.test.ts +2 -2
  955. package/packages/omo-codex/plugin/components/rules/test/formatter.test.ts +2 -2
  956. package/packages/omo-codex/plugin/components/rules/test/matcher.test.ts +2 -2
  957. package/packages/omo-codex/plugin/components/rules/test/parser.test.ts +1 -1
  958. package/packages/omo-codex/plugin/components/rules/test/post-compact-budget.test.ts +1 -1
  959. package/packages/omo-codex/plugin/components/rules/test/rules-engine-consumption.test.ts +92 -0
  960. package/packages/omo-codex/plugin/components/rules/test/scanner.test.ts +1 -1
  961. package/packages/omo-codex/plugin/components/rules/test/sources.test.ts +4 -4
  962. package/packages/omo-codex/plugin/components/rules/test/windows-git-bash-bundled-rule.test.ts +1 -1
  963. package/packages/omo-codex/plugin/components/start-work-continuation/dist/cli.js +394 -37
  964. package/packages/omo-codex/plugin/components/start-work-continuation/hooks/hooks.json +2 -2
  965. package/packages/omo-codex/plugin/components/start-work-continuation/package.json +4 -3
  966. package/packages/omo-codex/plugin/components/start-work-continuation/src/boulder-reader.ts +20 -147
  967. package/packages/omo-codex/plugin/components/start-work-continuation/src/codex-hook.ts +1 -1
  968. package/packages/omo-codex/plugin/components/start-work-continuation/src/index.ts +1 -1
  969. package/packages/omo-codex/plugin/components/start-work-continuation/test/boulder-reader.test.ts +151 -27
  970. package/packages/omo-codex/plugin/components/start-work-continuation/test/codex-hook.test.ts +87 -49
  971. package/packages/omo-codex/plugin/components/telemetry/LICENSE +21 -0
  972. package/packages/omo-codex/plugin/components/telemetry/NOTICE +6 -0
  973. package/packages/omo-codex/plugin/components/telemetry/dist/cli.js +5869 -42
  974. package/packages/omo-codex/plugin/components/telemetry/dist/posthog.js +5783 -108
  975. package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
  976. package/packages/omo-codex/plugin/components/telemetry/package.json +4 -5
  977. package/packages/omo-codex/plugin/components/telemetry/src/codex-hook.ts +3 -3
  978. package/packages/omo-codex/plugin/components/telemetry/src/posthog.ts +92 -142
  979. package/packages/omo-codex/plugin/components/telemetry/src/product-identity.ts +59 -3
  980. package/packages/omo-codex/plugin/components/telemetry/test/codex-hook-diagnostics.test.ts +3 -3
  981. package/packages/omo-codex/plugin/components/telemetry/test/diagnostics.test.ts +13 -7
  982. package/packages/omo-codex/plugin/components/ultrawork/AGENTS.md +2 -2
  983. package/packages/omo-codex/plugin/components/ultrawork/README.md +1 -1
  984. package/packages/omo-codex/plugin/components/ultrawork/agents/explorer.toml +1 -1
  985. package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-clone-fidelity-reviewer.toml +31 -0
  986. package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-code-reviewer.toml +29 -0
  987. package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-executor.toml +24 -0
  988. package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-gate-reviewer.toml +23 -0
  989. package/packages/omo-codex/plugin/components/ultrawork/agents/lazycodex-qa-executor.toml +22 -0
  990. package/packages/omo-codex/plugin/components/ultrawork/agents/librarian.toml +1 -1
  991. package/packages/omo-codex/plugin/components/ultrawork/agents/plan.toml +1 -1
  992. package/packages/omo-codex/plugin/components/ultrawork/directive.md +104 -156
  993. package/packages/omo-codex/plugin/components/ultrawork/dist/cli.js +162 -37
  994. package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
  995. package/packages/omo-codex/plugin/components/ultrawork/package.json +4 -3
  996. package/packages/omo-codex/plugin/components/ultrawork/scripts/sync-directive.mjs +11 -0
  997. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/SKILL.md +47 -20
  998. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/full-workflow.md +55 -88
  999. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/intent-clear.md +44 -0
  1000. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/references/intent-unclear.md +44 -0
  1001. package/packages/omo-codex/plugin/components/ultrawork/skills/ulw-plan/scripts/scaffold-plan.mjs +301 -0
  1002. package/packages/omo-codex/plugin/components/ultrawork/src/codex-hook.ts +2 -2
  1003. package/packages/omo-codex/plugin/components/ultrawork/test/codex-hook-test-helpers.ts +101 -0
  1004. package/packages/omo-codex/plugin/components/ultrawork/test/codex-hook-trigger-policy.test.ts +111 -0
  1005. package/packages/omo-codex/plugin/components/ultrawork/test/codex-hook.test.ts +24 -128
  1006. package/packages/omo-codex/plugin/components/ultrawork/test/directive-source.test.ts +16 -0
  1007. package/packages/omo-codex/plugin/components/ultrawork/test/package-smoke.test.ts +4 -2
  1008. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-reconciliation.d.ts +5 -0
  1009. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint-reconciliation.js +79 -0
  1010. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint.d.ts +1 -1
  1011. package/packages/omo-codex/plugin/components/ulw-loop/dist/checkpoint.js +56 -82
  1012. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-commands.js +38 -144
  1013. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-subcommands.d.ts +10 -0
  1014. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli-subcommands.js +173 -0
  1015. package/packages/omo-codex/plugin/components/ulw-loop/dist/cli.js +2419 -32
  1016. package/packages/omo-codex/plugin/components/ulw-loop/dist/codex-goal-instruction.js +13 -9
  1017. package/packages/omo-codex/plugin/components/ulw-loop/dist/domain-types.d.ts +60 -12
  1018. package/packages/omo-codex/plugin/components/ulw-loop/dist/evidence.d.ts +3 -0
  1019. package/packages/omo-codex/plugin/components/ulw-loop/dist/evidence.js +67 -10
  1020. package/packages/omo-codex/plugin/components/ulw-loop/dist/goal-status.d.ts +3 -0
  1021. package/packages/omo-codex/plugin/components/ulw-loop/dist/goal-status.js +14 -0
  1022. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-crud.d.ts +2 -6
  1023. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-crud.js +49 -39
  1024. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-goal-factory.d.ts +8 -0
  1025. package/packages/omo-codex/plugin/components/ulw-loop/dist/plan-goal-factory.js +109 -0
  1026. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-blockers.d.ts +5 -0
  1027. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-blockers.js +41 -0
  1028. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-fields.d.ts +8 -0
  1029. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate-fields.js +39 -0
  1030. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate.d.ts +13 -6
  1031. package/packages/omo-codex/plugin/components/ulw-loop/dist/quality-gate.js +176 -105
  1032. package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +2 -2
  1033. package/packages/omo-codex/plugin/components/ulw-loop/package.json +1 -1
  1034. package/packages/omo-codex/plugin/components/ulw-loop/skills/ulw-loop/references/full-workflow.md +17 -17
  1035. package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint-reconciliation.ts +100 -0
  1036. package/packages/omo-codex/plugin/components/ulw-loop/src/checkpoint.ts +162 -85
  1037. package/packages/omo-codex/plugin/components/ulw-loop/src/cli-commands.ts +62 -136
  1038. package/packages/omo-codex/plugin/components/ulw-loop/src/cli-subcommands.ts +250 -0
  1039. package/packages/omo-codex/plugin/components/ulw-loop/src/codex-goal-instruction.ts +18 -9
  1040. package/packages/omo-codex/plugin/components/ulw-loop/src/domain-types.ts +67 -4
  1041. package/packages/omo-codex/plugin/components/ulw-loop/src/evidence.ts +124 -18
  1042. package/packages/omo-codex/plugin/components/ulw-loop/src/goal-status.ts +16 -0
  1043. package/packages/omo-codex/plugin/components/ulw-loop/src/plan-crud.ts +131 -54
  1044. package/packages/omo-codex/plugin/components/ulw-loop/src/plan-goal-factory.ts +124 -0
  1045. package/packages/omo-codex/plugin/components/ulw-loop/src/quality-gate-blockers.ts +48 -0
  1046. package/packages/omo-codex/plugin/components/ulw-loop/src/quality-gate-fields.ts +44 -0
  1047. package/packages/omo-codex/plugin/components/ulw-loop/src/quality-gate.ts +230 -138
  1048. package/packages/omo-codex/plugin/components/ulw-loop/test/checkpoint-final.test.ts +186 -0
  1049. package/packages/omo-codex/plugin/components/ulw-loop/test/checkpoint-status.test.ts +85 -0
  1050. package/packages/omo-codex/plugin/components/ulw-loop/test/checkpoint.test.ts +120 -192
  1051. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-checkpoint.test.ts +215 -0
  1052. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-commands.test.ts +1 -195
  1053. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-complete-goals.test.ts +15 -0
  1054. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-create-goals.test.ts +172 -0
  1055. package/packages/omo-codex/plugin/components/ulw-loop/test/cli-helpers.test.ts +0 -6
  1056. package/packages/omo-codex/plugin/components/ulw-loop/test/codex-goal-instruction.test.ts +39 -8
  1057. package/packages/omo-codex/plugin/components/ulw-loop/test/evidence-criteria-gate.test.ts +29 -1
  1058. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/artifacts/browser-screenshot.txt +1 -0
  1059. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/artifacts/cli-pass.txt +1 -0
  1060. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/artifacts/code-review.md +1 -0
  1061. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/artifacts/data-diff.txt +5 -0
  1062. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/artifacts/gate-review.md +1 -0
  1063. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/artifacts/http-dump.txt +4 -0
  1064. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/artifacts/rejection.txt +1 -0
  1065. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/checkpoint-builders.ts +98 -0
  1066. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/quality-gate-builder.ts +91 -0
  1067. package/packages/omo-codex/plugin/components/ulw-loop/test/fixtures/sample-quality-gate.json +110 -8
  1068. package/packages/omo-codex/plugin/components/ulw-loop/test/goal-status.test.ts +35 -0
  1069. package/packages/omo-codex/plugin/components/ulw-loop/test/plan-crud.test.ts +11 -1
  1070. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-blockers.test.ts +102 -0
  1071. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-doc.test.ts +38 -0
  1072. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate-roles.test.ts +131 -0
  1073. package/packages/omo-codex/plugin/components/ulw-loop/test/quality-gate.test.ts +150 -176
  1074. package/packages/omo-codex/plugin/components/ulw-loop/test/skill-contract.test.ts +12 -0
  1075. package/packages/omo-codex/plugin/hooks/hooks.json +38 -17
  1076. package/packages/omo-codex/plugin/package-lock.json +144 -49
  1077. package/packages/omo-codex/plugin/package.json +4 -2
  1078. package/packages/omo-codex/plugin/scripts/auto-update.mjs +2 -0
  1079. package/packages/omo-codex/plugin/scripts/build-bundled-mcp-runtimes.mjs +0 -5
  1080. package/packages/omo-codex/plugin/scripts/build-components.mjs +29 -5
  1081. package/packages/omo-codex/plugin/scripts/hook-status-message.mjs +2 -0
  1082. package/packages/omo-codex/plugin/scripts/migrate-omo-sot/editor.mjs +125 -0
  1083. package/packages/omo-codex/plugin/scripts/migrate-omo-sot/jsonc.mjs +43 -0
  1084. package/packages/omo-codex/plugin/scripts/migrate-omo-sot/scaffold.mjs +29 -0
  1085. package/packages/omo-codex/plugin/scripts/migrate-omo-sot.mjs +121 -0
  1086. package/packages/omo-codex/plugin/scripts/sync-skills.mjs +5 -5
  1087. package/packages/omo-codex/plugin/shared/package.json +24 -0
  1088. package/packages/omo-codex/plugin/shared/src/config-loader.ts +28 -0
  1089. package/packages/omo-codex/plugin/shared/test/config-loader.test.ts +105 -0
  1090. package/packages/omo-codex/plugin/shared/tsconfig.build.json +9 -0
  1091. package/packages/omo-codex/plugin/shared/tsconfig.json +16 -0
  1092. package/packages/omo-codex/plugin/skills/ast-grep/LICENSE +21 -0
  1093. package/packages/omo-codex/plugin/skills/ast-grep/README.md +136 -0
  1094. package/packages/omo-codex/plugin/skills/ast-grep/SKILL.md +272 -0
  1095. package/packages/omo-codex/plugin/skills/ast-grep/SOURCE +1 -0
  1096. package/packages/omo-codex/plugin/skills/ast-grep/install.ps1 +235 -0
  1097. package/packages/omo-codex/plugin/skills/ast-grep/install.sh +286 -0
  1098. package/packages/omo-codex/plugin/skills/ast-grep/references/cli.md +231 -0
  1099. package/packages/omo-codex/plugin/skills/ast-grep/references/install.md +166 -0
  1100. package/packages/omo-codex/plugin/skills/ast-grep/references/patterns.md +147 -0
  1101. package/packages/omo-codex/plugin/skills/ast-grep/references/pitfalls.md +303 -0
  1102. package/packages/omo-codex/plugin/skills/ast-grep/references/recipes.md +402 -0
  1103. package/packages/omo-codex/plugin/skills/ast-grep/references/sgconfig.md +248 -0
  1104. package/packages/omo-codex/plugin/skills/ast-grep/references/yaml-rules.md +509 -0
  1105. package/packages/omo-codex/plugin/skills/ast-grep/scripts/ast_grep_helper.py +748 -0
  1106. package/packages/omo-codex/plugin/skills/ast-grep/tests/smoke.ps1 +123 -0
  1107. package/packages/omo-codex/plugin/skills/ast-grep/tests/smoke.sh +212 -0
  1108. package/packages/omo-codex/plugin/skills/frontend/ATTRIBUTION.md +127 -0
  1109. package/packages/omo-codex/plugin/skills/frontend/LICENSE-Apache-2.0.txt +201 -0
  1110. package/packages/omo-codex/plugin/skills/frontend/SKILL.md +113 -0
  1111. package/packages/omo-codex/plugin/skills/frontend/references/design/README.md +240 -0
  1112. package/packages/omo-codex/plugin/skills/frontend/references/design/_INDEX.md +189 -0
  1113. package/packages/omo-codex/plugin/skills/frontend/references/design/airbnb.md +390 -0
  1114. package/packages/omo-codex/plugin/skills/frontend/references/design/airtable.md +89 -0
  1115. package/packages/omo-codex/plugin/skills/frontend/references/design/apple.md +247 -0
  1116. package/packages/omo-codex/plugin/skills/frontend/references/design/binance.md +345 -0
  1117. package/packages/omo-codex/plugin/skills/frontend/references/design/bmw.md +180 -0
  1118. package/packages/omo-codex/plugin/skills/frontend/references/design/brutalist-skill.md +92 -0
  1119. package/packages/omo-codex/plugin/skills/frontend/references/design/bugatti.md +268 -0
  1120. package/packages/omo-codex/plugin/skills/frontend/references/design/cal.md +259 -0
  1121. package/packages/omo-codex/plugin/skills/frontend/references/design/claude.md +312 -0
  1122. package/packages/omo-codex/plugin/skills/frontend/references/design/clay.md +304 -0
  1123. package/packages/omo-codex/plugin/skills/frontend/references/design/clickhouse.md +281 -0
  1124. package/packages/omo-codex/plugin/skills/frontend/references/design/cohere.md +266 -0
  1125. package/packages/omo-codex/plugin/skills/frontend/references/design/coinbase.md +129 -0
  1126. package/packages/omo-codex/plugin/skills/frontend/references/design/composio.md +307 -0
  1127. package/packages/omo-codex/plugin/skills/frontend/references/design/cursor.md +309 -0
  1128. package/packages/omo-codex/plugin/skills/frontend/references/design/design-system-architecture.md +217 -0
  1129. package/packages/omo-codex/plugin/skills/frontend/references/design/elevenlabs.md +265 -0
  1130. package/packages/omo-codex/plugin/skills/frontend/references/design/expo.md +281 -0
  1131. package/packages/omo-codex/plugin/skills/frontend/references/design/ferrari.md +314 -0
  1132. package/packages/omo-codex/plugin/skills/frontend/references/design/figma.md +220 -0
  1133. package/packages/omo-codex/plugin/skills/frontend/references/design/framer.md +246 -0
  1134. package/packages/omo-codex/plugin/skills/frontend/references/design/gpt-tasteskill.md +74 -0
  1135. package/packages/omo-codex/plugin/skills/frontend/references/design/hashicorp.md +278 -0
  1136. package/packages/omo-codex/plugin/skills/frontend/references/design/ibm.md +332 -0
  1137. package/packages/omo-codex/plugin/skills/frontend/references/design/image-to-code-skill.md +1228 -0
  1138. package/packages/omo-codex/plugin/skills/frontend/references/design/imagegen-brandkit.md +798 -0
  1139. package/packages/omo-codex/plugin/skills/frontend/references/design/imagegen-frontend-mobile.md +1465 -0
  1140. package/packages/omo-codex/plugin/skills/frontend/references/design/imagegen-frontend-web.md +686 -0
  1141. package/packages/omo-codex/plugin/skills/frontend/references/design/intercom.md +146 -0
  1142. package/packages/omo-codex/plugin/skills/frontend/references/design/kraken.md +125 -0
  1143. package/packages/omo-codex/plugin/skills/frontend/references/design/lamborghini.md +288 -0
  1144. package/packages/omo-codex/plugin/skills/frontend/references/design/linear.app.md +367 -0
  1145. package/packages/omo-codex/plugin/skills/frontend/references/design/lovable.md +298 -0
  1146. package/packages/omo-codex/plugin/skills/frontend/references/design/mastercard.md +365 -0
  1147. package/packages/omo-codex/plugin/skills/frontend/references/design/meta.md +366 -0
  1148. package/packages/omo-codex/plugin/skills/frontend/references/design/minimalist-skill.md +85 -0
  1149. package/packages/omo-codex/plugin/skills/frontend/references/design/minimax.md +257 -0
  1150. package/packages/omo-codex/plugin/skills/frontend/references/design/mintlify.md +326 -0
  1151. package/packages/omo-codex/plugin/skills/frontend/references/design/miro.md +108 -0
  1152. package/packages/omo-codex/plugin/skills/frontend/references/design/mistral.ai.md +261 -0
  1153. package/packages/omo-codex/plugin/skills/frontend/references/design/mongodb.md +266 -0
  1154. package/packages/omo-codex/plugin/skills/frontend/references/design/nike.md +363 -0
  1155. package/packages/omo-codex/plugin/skills/frontend/references/design/notion.md +309 -0
  1156. package/packages/omo-codex/plugin/skills/frontend/references/design/nvidia.md +293 -0
  1157. package/packages/omo-codex/plugin/skills/frontend/references/design/ollama.md +267 -0
  1158. package/packages/omo-codex/plugin/skills/frontend/references/design/opencode.ai.md +281 -0
  1159. package/packages/omo-codex/plugin/skills/frontend/references/design/output-skill.md +49 -0
  1160. package/packages/omo-codex/plugin/skills/frontend/references/design/pinterest.md +230 -0
  1161. package/packages/omo-codex/plugin/skills/frontend/references/design/playstation.md +364 -0
  1162. package/packages/omo-codex/plugin/skills/frontend/references/design/posthog.md +256 -0
  1163. package/packages/omo-codex/plugin/skills/frontend/references/design/raycast.md +268 -0
  1164. package/packages/omo-codex/plugin/skills/frontend/references/design/react-dev-tooling-skill.md +230 -0
  1165. package/packages/omo-codex/plugin/skills/frontend/references/design/redesign-skill.md +178 -0
  1166. package/packages/omo-codex/plugin/skills/frontend/references/design/renault.md +311 -0
  1167. package/packages/omo-codex/plugin/skills/frontend/references/design/replicate.md +261 -0
  1168. package/packages/omo-codex/plugin/skills/frontend/references/design/resend.md +303 -0
  1169. package/packages/omo-codex/plugin/skills/frontend/references/design/revolut.md +185 -0
  1170. package/packages/omo-codex/plugin/skills/frontend/references/design/runwayml.md +244 -0
  1171. package/packages/omo-codex/plugin/skills/frontend/references/design/sanity.md +357 -0
  1172. package/packages/omo-codex/plugin/skills/frontend/references/design/sentry.md +262 -0
  1173. package/packages/omo-codex/plugin/skills/frontend/references/design/shopify.md +350 -0
  1174. package/packages/omo-codex/plugin/skills/frontend/references/design/soft-skill.md +98 -0
  1175. package/packages/omo-codex/plugin/skills/frontend/references/design/spacex.md +194 -0
  1176. package/packages/omo-codex/plugin/skills/frontend/references/design/spotify.md +246 -0
  1177. package/packages/omo-codex/plugin/skills/frontend/references/design/starbucks.md +580 -0
  1178. package/packages/omo-codex/plugin/skills/frontend/references/design/stitch-skill.md +184 -0
  1179. package/packages/omo-codex/plugin/skills/frontend/references/design/stripe.md +322 -0
  1180. package/packages/omo-codex/plugin/skills/frontend/references/design/supabase.md +255 -0
  1181. package/packages/omo-codex/plugin/skills/frontend/references/design/superhuman.md +252 -0
  1182. package/packages/omo-codex/plugin/skills/frontend/references/design/taste-skill.md +226 -0
  1183. package/packages/omo-codex/plugin/skills/frontend/references/design/tesla.md +286 -0
  1184. package/packages/omo-codex/plugin/skills/frontend/references/design/theverge.md +339 -0
  1185. package/packages/omo-codex/plugin/skills/frontend/references/design/together.ai.md +263 -0
  1186. package/packages/omo-codex/plugin/skills/frontend/references/design/uber.md +295 -0
  1187. package/packages/omo-codex/plugin/skills/frontend/references/design/vercel.md +310 -0
  1188. package/packages/omo-codex/plugin/skills/frontend/references/design/vodafone.md +423 -0
  1189. package/packages/omo-codex/plugin/skills/frontend/references/design/voltagent.md +323 -0
  1190. package/packages/omo-codex/plugin/skills/frontend/references/design/warp.md +253 -0
  1191. package/packages/omo-codex/plugin/skills/frontend/references/design/webflow.md +92 -0
  1192. package/packages/omo-codex/plugin/skills/frontend/references/design/wired.md +278 -0
  1193. package/packages/omo-codex/plugin/skills/frontend/references/design/wise.md +173 -0
  1194. package/packages/omo-codex/plugin/skills/frontend/references/design/x.ai.md +257 -0
  1195. package/packages/omo-codex/plugin/skills/frontend/references/design/zapier.md +328 -0
  1196. package/packages/omo-codex/plugin/skills/frontend/references/perfection/README.md +160 -0
  1197. package/packages/omo-codex/plugin/skills/frontend/references/perfection/react-perf-tooling.md +127 -0
  1198. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/README.md +273 -0
  1199. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/charts.csv +26 -0
  1200. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/colors.csv +97 -0
  1201. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/icons.csv +101 -0
  1202. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/landing.csv +31 -0
  1203. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/products.csv +97 -0
  1204. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/react-performance.csv +45 -0
  1205. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/stacks/astro.csv +54 -0
  1206. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/stacks/flutter.csv +53 -0
  1207. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/stacks/html-tailwind.csv +56 -0
  1208. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/stacks/jetpack-compose.csv +53 -0
  1209. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/stacks/nextjs.csv +53 -0
  1210. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/stacks/nuxt-ui.csv +51 -0
  1211. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/stacks/nuxtjs.csv +59 -0
  1212. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/stacks/react-native.csv +52 -0
  1213. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/stacks/react.csv +54 -0
  1214. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/stacks/shadcn.csv +61 -0
  1215. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/stacks/svelte.csv +54 -0
  1216. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/stacks/swiftui.csv +51 -0
  1217. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/stacks/vue.csv +50 -0
  1218. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/styles.csv +68 -0
  1219. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/typography.csv +58 -0
  1220. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/ui-reasoning.csv +101 -0
  1221. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/ux-guidelines.csv +100 -0
  1222. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/data/web-interface.csv +31 -0
  1223. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/scripts/core.py +253 -0
  1224. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/scripts/design_system.py +1067 -0
  1225. package/packages/omo-codex/plugin/skills/frontend/references/ui-ux-db/scripts/search.py +114 -0
  1226. package/packages/omo-codex/plugin/skills/frontend/scripts/perfection/lighthouse-audit.py +201 -0
  1227. package/packages/omo-codex/plugin/skills/init-deep/SKILL.md +3 -3
  1228. package/packages/omo-codex/plugin/skills/refactor/SKILL.md +14 -23
  1229. package/packages/omo-codex/plugin/skills/remove-ai-slops/SKILL.md +2 -2
  1230. package/packages/omo-codex/plugin/skills/review-work/SKILL.md +2 -2
  1231. package/packages/omo-codex/plugin/skills/start-work/SKILL.md +3 -3
  1232. package/packages/omo-codex/plugin/skills/ultraresearch/SKILL.md +2 -2
  1233. package/packages/omo-codex/plugin/skills/ulw-loop/references/full-workflow.md +17 -17
  1234. package/packages/omo-codex/plugin/skills/ulw-plan/SKILL.md +47 -20
  1235. package/packages/omo-codex/plugin/skills/ulw-plan/references/full-workflow.md +55 -88
  1236. package/packages/omo-codex/plugin/skills/ulw-plan/references/intent-clear.md +44 -0
  1237. package/packages/omo-codex/plugin/skills/ulw-plan/references/intent-unclear.md +44 -0
  1238. package/packages/omo-codex/plugin/skills/ulw-plan/scripts/scaffold-plan.mjs +301 -0
  1239. package/packages/omo-codex/plugin/skills/visual-qa/SKILL.md +19 -3
  1240. package/packages/omo-codex/plugin/skills/visual-qa/references/agent-browser-setup.md +44 -0
  1241. package/packages/omo-codex/plugin/test/aggregate-agents.test.mjs +119 -11
  1242. package/packages/omo-codex/plugin/test/aggregate-build.test.mjs +2 -4
  1243. package/packages/omo-codex/plugin/test/aggregate-hooks.test.mjs +29 -2
  1244. package/packages/omo-codex/plugin/test/aggregate-manifest.test.mjs +2 -0
  1245. package/packages/omo-codex/plugin/test/aggregate-mcp.test.mjs +12 -12
  1246. package/packages/omo-codex/plugin/test/auto-update.test.mjs +26 -0
  1247. package/packages/omo-codex/plugin/test/component-bundled-cli.test.mjs +287 -0
  1248. package/packages/omo-codex/plugin/test/component-hook-contract-cases.mjs +199 -0
  1249. package/packages/omo-codex/plugin/test/hook-status-message.test.mjs +38 -2
  1250. package/packages/omo-codex/plugin/test/index.js +13 -0
  1251. package/packages/omo-codex/plugin/test/install-time-build-runtime.test.mjs +4 -5
  1252. package/packages/omo-codex/plugin/test/mcp-research-servers.test.mjs +5 -3
  1253. package/packages/omo-codex/plugin/test/migrate-omo-sot.test.mjs +179 -0
  1254. package/packages/omo-codex/plugin/test/payload-equivalence.test.mjs +109 -0
  1255. package/packages/omo-codex/plugin/test/scaffold-plan.test.mjs +165 -0
  1256. package/packages/omo-codex/plugin/test/sync-skills-orchestration.test.mjs +6 -6
  1257. package/packages/omo-codex/plugin/test/sync-skills-test-support.mjs +2 -3
  1258. package/packages/omo-codex/plugin/test/sync-skills.test.mjs +37 -1
  1259. package/packages/omo-codex/scripts/install-bin-links.test.mjs +3 -3
  1260. package/packages/omo-codex/scripts/install-cache-copy.test.mjs +1 -1
  1261. package/packages/omo-codex/scripts/install-cli-args.test.mjs +1 -1
  1262. package/packages/omo-codex/scripts/install-config-autonomous-features.test.mjs +1 -1
  1263. package/packages/omo-codex/scripts/install-config-autonomous.test.mjs +1 -1
  1264. package/packages/omo-codex/scripts/install-config-git-bash.test.mjs +1 -1
  1265. package/packages/omo-codex/scripts/install-config-preservation.test.mjs +1 -1
  1266. package/packages/omo-codex/scripts/install-config-reasoning.test.mjs +1 -2
  1267. package/packages/omo-codex/scripts/install-config.test.mjs +8 -6
  1268. package/packages/omo-codex/scripts/install-delegated-command.test.mjs +1 -1
  1269. package/packages/omo-codex/scripts/install-dist/install-local.mjs +13377 -0
  1270. package/packages/omo-codex/scripts/install-generated-bundle.test.mjs +55 -0
  1271. package/packages/omo-codex/scripts/install-git-bash-mcp-env.test.mjs +3 -4
  1272. package/packages/omo-codex/scripts/install-hook-targets.test.mjs +1 -1
  1273. package/packages/omo-codex/scripts/install-local.mjs +54 -237
  1274. package/packages/omo-codex/scripts/install-local.test.mjs +8 -1
  1275. package/packages/omo-codex/scripts/install-marketplace-cache.test.mjs +3 -3
  1276. package/packages/omo-codex/scripts/install-mcp-runtime.test.mjs +34 -77
  1277. package/packages/omo-codex/scripts/install-packaged-local.test.mjs +8 -4
  1278. package/packages/omo-codex/scripts/install-project-local-cleanup.test.mjs +1 -1
  1279. package/packages/shared-skills/package.json +6 -1
  1280. package/packages/shared-skills/skills/ast-grep/LICENSE +21 -0
  1281. package/packages/shared-skills/skills/ast-grep/README.md +136 -0
  1282. package/packages/shared-skills/skills/ast-grep/SKILL.md +272 -0
  1283. package/packages/shared-skills/skills/ast-grep/SOURCE +1 -0
  1284. package/packages/shared-skills/skills/ast-grep/install.ps1 +235 -0
  1285. package/packages/shared-skills/skills/ast-grep/install.sh +286 -0
  1286. package/packages/shared-skills/skills/ast-grep/references/cli.md +231 -0
  1287. package/packages/shared-skills/skills/ast-grep/references/install.md +166 -0
  1288. package/packages/shared-skills/skills/ast-grep/references/patterns.md +147 -0
  1289. package/packages/shared-skills/skills/ast-grep/references/pitfalls.md +303 -0
  1290. package/packages/shared-skills/skills/ast-grep/references/recipes.md +402 -0
  1291. package/packages/shared-skills/skills/ast-grep/references/sgconfig.md +248 -0
  1292. package/packages/shared-skills/skills/ast-grep/references/yaml-rules.md +509 -0
  1293. package/packages/shared-skills/skills/ast-grep/scripts/ast_grep_helper.py +748 -0
  1294. package/packages/shared-skills/skills/ast-grep/tests/smoke.ps1 +123 -0
  1295. package/packages/shared-skills/skills/ast-grep/tests/smoke.sh +212 -0
  1296. package/packages/shared-skills/skills/frontend/ATTRIBUTION.md +127 -0
  1297. package/packages/shared-skills/skills/frontend/LICENSE-Apache-2.0.txt +201 -0
  1298. package/packages/shared-skills/skills/frontend/SKILL.md +113 -0
  1299. package/packages/shared-skills/skills/frontend/references/design/README.md +240 -0
  1300. package/packages/shared-skills/skills/frontend/references/design/_INDEX.md +189 -0
  1301. package/packages/shared-skills/skills/frontend/references/design/airbnb.md +390 -0
  1302. package/packages/shared-skills/skills/frontend/references/design/airtable.md +89 -0
  1303. package/packages/shared-skills/skills/frontend/references/design/apple.md +247 -0
  1304. package/packages/shared-skills/skills/frontend/references/design/binance.md +345 -0
  1305. package/packages/shared-skills/skills/frontend/references/design/bmw.md +180 -0
  1306. package/packages/shared-skills/skills/frontend/references/design/brutalist-skill.md +92 -0
  1307. package/packages/shared-skills/skills/frontend/references/design/bugatti.md +268 -0
  1308. package/packages/shared-skills/skills/frontend/references/design/cal.md +259 -0
  1309. package/packages/shared-skills/skills/frontend/references/design/claude.md +312 -0
  1310. package/packages/shared-skills/skills/frontend/references/design/clay.md +304 -0
  1311. package/packages/shared-skills/skills/frontend/references/design/clickhouse.md +281 -0
  1312. package/packages/shared-skills/skills/frontend/references/design/cohere.md +266 -0
  1313. package/packages/shared-skills/skills/frontend/references/design/coinbase.md +129 -0
  1314. package/packages/shared-skills/skills/frontend/references/design/composio.md +307 -0
  1315. package/packages/shared-skills/skills/frontend/references/design/cursor.md +309 -0
  1316. package/packages/shared-skills/skills/frontend/references/design/design-system-architecture.md +217 -0
  1317. package/packages/shared-skills/skills/frontend/references/design/elevenlabs.md +265 -0
  1318. package/packages/shared-skills/skills/frontend/references/design/expo.md +281 -0
  1319. package/packages/shared-skills/skills/frontend/references/design/ferrari.md +314 -0
  1320. package/packages/shared-skills/skills/frontend/references/design/figma.md +220 -0
  1321. package/packages/shared-skills/skills/frontend/references/design/framer.md +246 -0
  1322. package/packages/shared-skills/skills/frontend/references/design/gpt-tasteskill.md +74 -0
  1323. package/packages/shared-skills/skills/frontend/references/design/hashicorp.md +278 -0
  1324. package/packages/shared-skills/skills/frontend/references/design/ibm.md +332 -0
  1325. package/packages/shared-skills/skills/frontend/references/design/image-to-code-skill.md +1228 -0
  1326. package/packages/shared-skills/skills/frontend/references/design/imagegen-brandkit.md +798 -0
  1327. package/packages/shared-skills/skills/frontend/references/design/imagegen-frontend-mobile.md +1465 -0
  1328. package/packages/shared-skills/skills/frontend/references/design/imagegen-frontend-web.md +686 -0
  1329. package/packages/shared-skills/skills/frontend/references/design/intercom.md +146 -0
  1330. package/packages/shared-skills/skills/frontend/references/design/kraken.md +125 -0
  1331. package/packages/shared-skills/skills/frontend/references/design/lamborghini.md +288 -0
  1332. package/packages/shared-skills/skills/frontend/references/design/linear.app.md +367 -0
  1333. package/packages/shared-skills/skills/frontend/references/design/lovable.md +298 -0
  1334. package/packages/shared-skills/skills/frontend/references/design/mastercard.md +365 -0
  1335. package/packages/shared-skills/skills/frontend/references/design/meta.md +366 -0
  1336. package/packages/shared-skills/skills/frontend/references/design/minimalist-skill.md +85 -0
  1337. package/packages/shared-skills/skills/frontend/references/design/minimax.md +257 -0
  1338. package/packages/shared-skills/skills/frontend/references/design/mintlify.md +326 -0
  1339. package/packages/shared-skills/skills/frontend/references/design/miro.md +108 -0
  1340. package/packages/shared-skills/skills/frontend/references/design/mistral.ai.md +261 -0
  1341. package/packages/shared-skills/skills/frontend/references/design/mongodb.md +266 -0
  1342. package/packages/shared-skills/skills/frontend/references/design/nike.md +363 -0
  1343. package/packages/shared-skills/skills/frontend/references/design/notion.md +309 -0
  1344. package/packages/shared-skills/skills/frontend/references/design/nvidia.md +293 -0
  1345. package/packages/shared-skills/skills/frontend/references/design/ollama.md +267 -0
  1346. package/packages/shared-skills/skills/frontend/references/design/opencode.ai.md +281 -0
  1347. package/packages/shared-skills/skills/frontend/references/design/output-skill.md +49 -0
  1348. package/packages/shared-skills/skills/frontend/references/design/pinterest.md +230 -0
  1349. package/packages/shared-skills/skills/frontend/references/design/playstation.md +364 -0
  1350. package/packages/shared-skills/skills/frontend/references/design/posthog.md +256 -0
  1351. package/packages/shared-skills/skills/frontend/references/design/raycast.md +268 -0
  1352. package/packages/shared-skills/skills/frontend/references/design/react-dev-tooling-skill.md +230 -0
  1353. package/packages/shared-skills/skills/frontend/references/design/redesign-skill.md +178 -0
  1354. package/packages/shared-skills/skills/frontend/references/design/renault.md +311 -0
  1355. package/packages/shared-skills/skills/frontend/references/design/replicate.md +261 -0
  1356. package/packages/shared-skills/skills/frontend/references/design/resend.md +303 -0
  1357. package/packages/shared-skills/skills/frontend/references/design/revolut.md +185 -0
  1358. package/packages/shared-skills/skills/frontend/references/design/runwayml.md +244 -0
  1359. package/packages/shared-skills/skills/frontend/references/design/sanity.md +357 -0
  1360. package/packages/shared-skills/skills/frontend/references/design/sentry.md +262 -0
  1361. package/packages/shared-skills/skills/frontend/references/design/shopify.md +350 -0
  1362. package/packages/shared-skills/skills/frontend/references/design/soft-skill.md +98 -0
  1363. package/packages/shared-skills/skills/frontend/references/design/spacex.md +194 -0
  1364. package/packages/shared-skills/skills/frontend/references/design/spotify.md +246 -0
  1365. package/packages/shared-skills/skills/frontend/references/design/starbucks.md +580 -0
  1366. package/packages/shared-skills/skills/frontend/references/design/stitch-skill.md +184 -0
  1367. package/packages/shared-skills/skills/frontend/references/design/stripe.md +322 -0
  1368. package/packages/shared-skills/skills/frontend/references/design/supabase.md +255 -0
  1369. package/packages/shared-skills/skills/frontend/references/design/superhuman.md +252 -0
  1370. package/packages/shared-skills/skills/frontend/references/design/taste-skill.md +226 -0
  1371. package/packages/shared-skills/skills/frontend/references/design/tesla.md +286 -0
  1372. package/packages/shared-skills/skills/frontend/references/design/theverge.md +339 -0
  1373. package/packages/shared-skills/skills/frontend/references/design/together.ai.md +263 -0
  1374. package/packages/shared-skills/skills/frontend/references/design/uber.md +295 -0
  1375. package/packages/shared-skills/skills/frontend/references/design/vercel.md +310 -0
  1376. package/packages/shared-skills/skills/frontend/references/design/vodafone.md +423 -0
  1377. package/packages/shared-skills/skills/frontend/references/design/voltagent.md +323 -0
  1378. package/packages/shared-skills/skills/frontend/references/design/warp.md +253 -0
  1379. package/packages/shared-skills/skills/frontend/references/design/webflow.md +92 -0
  1380. package/packages/shared-skills/skills/frontend/references/design/wired.md +278 -0
  1381. package/packages/shared-skills/skills/frontend/references/design/wise.md +173 -0
  1382. package/packages/shared-skills/skills/frontend/references/design/x.ai.md +257 -0
  1383. package/packages/shared-skills/skills/frontend/references/design/zapier.md +328 -0
  1384. package/packages/shared-skills/skills/frontend/references/perfection/README.md +160 -0
  1385. package/packages/shared-skills/skills/frontend/references/perfection/react-perf-tooling.md +127 -0
  1386. package/packages/shared-skills/skills/frontend/references/ui-ux-db/README.md +273 -0
  1387. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/charts.csv +26 -0
  1388. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/colors.csv +97 -0
  1389. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/icons.csv +101 -0
  1390. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/landing.csv +31 -0
  1391. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/products.csv +97 -0
  1392. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/react-performance.csv +45 -0
  1393. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/stacks/astro.csv +54 -0
  1394. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/stacks/flutter.csv +53 -0
  1395. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/stacks/html-tailwind.csv +56 -0
  1396. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/stacks/jetpack-compose.csv +53 -0
  1397. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/stacks/nextjs.csv +53 -0
  1398. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/stacks/nuxt-ui.csv +51 -0
  1399. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/stacks/nuxtjs.csv +59 -0
  1400. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/stacks/react-native.csv +52 -0
  1401. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/stacks/react.csv +54 -0
  1402. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/stacks/shadcn.csv +61 -0
  1403. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/stacks/svelte.csv +54 -0
  1404. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/stacks/swiftui.csv +51 -0
  1405. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/stacks/vue.csv +50 -0
  1406. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/styles.csv +68 -0
  1407. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/typography.csv +58 -0
  1408. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/ui-reasoning.csv +101 -0
  1409. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/ux-guidelines.csv +100 -0
  1410. package/packages/shared-skills/skills/frontend/references/ui-ux-db/data/web-interface.csv +31 -0
  1411. package/packages/shared-skills/skills/frontend/references/ui-ux-db/scripts/core.py +253 -0
  1412. package/packages/shared-skills/skills/frontend/references/ui-ux-db/scripts/design_system.py +1067 -0
  1413. package/packages/shared-skills/skills/frontend/references/ui-ux-db/scripts/search.py +114 -0
  1414. package/packages/shared-skills/skills/frontend/scripts/perfection/lighthouse-audit.py +201 -0
  1415. package/packages/shared-skills/skills/init-deep/SKILL.md +1 -1
  1416. package/packages/shared-skills/skills/refactor/SKILL.md +12 -21
  1417. package/packages/shared-skills/skills/review-work/SKILL.md +11 -9
  1418. package/packages/shared-skills/skills/start-work/SKILL.md +5 -4
  1419. package/packages/shared-skills/skills/ultraresearch/SKILL.md +9 -8
  1420. package/packages/shared-skills/skills/ulw-plan/SKILL.md +69 -0
  1421. package/packages/shared-skills/skills/ulw-plan/agents/openai.yaml +7 -0
  1422. package/packages/shared-skills/skills/ulw-plan/references/full-workflow.md +99 -0
  1423. package/packages/shared-skills/skills/ulw-plan/references/intent-clear.md +44 -0
  1424. package/packages/shared-skills/skills/ulw-plan/references/intent-unclear.md +44 -0
  1425. package/packages/shared-skills/skills/ulw-plan/scripts/scaffold-plan.mjs +301 -0
  1426. package/packages/shared-skills/skills/visual-qa/SKILL.md +17 -1
  1427. package/packages/shared-skills/skills/visual-qa/references/agent-browser-setup.md +44 -0
  1428. package/packages/shared-skills/skills/visual-qa/scripts/skill-prompt-contract.test.ts +48 -4
  1429. package/dist/cli/doctor/constants.d.ts +0 -32
  1430. package/dist/cli/doctor/spawn-with-timeout.d.ts +0 -8
  1431. package/dist/cli/doctor/types.d.ts +0 -148
  1432. package/dist/features/builtin-skills/skills/frontend-ui-ux.d.ts +0 -2
  1433. package/dist/mcp/ast-grep.d.ts +0 -11
  1434. package/packages/ast-grep-mcp/dist/cli.js +0 -1159
  1435. package/packages/lsp-tools-mcp/dist/lsp/cleanup-errors.js +0 -6
  1436. package/packages/lsp-tools-mcp/dist/lsp/client-wrapper.js +0 -132
  1437. package/packages/lsp-tools-mcp/dist/lsp/client.js +0 -131
  1438. package/packages/lsp-tools-mcp/dist/lsp/config-loader.js +0 -220
  1439. package/packages/lsp-tools-mcp/dist/lsp/connection.js +0 -66
  1440. package/packages/lsp-tools-mcp/dist/lsp/constants.js +0 -10
  1441. package/packages/lsp-tools-mcp/dist/lsp/directory-diagnostics.js +0 -125
  1442. package/packages/lsp-tools-mcp/dist/lsp/effective-extension.js +0 -8
  1443. package/packages/lsp-tools-mcp/dist/lsp/errors.js +0 -56
  1444. package/packages/lsp-tools-mcp/dist/lsp/formatters.js +0 -106
  1445. package/packages/lsp-tools-mcp/dist/lsp/infer-extension.js +0 -59
  1446. package/packages/lsp-tools-mcp/dist/lsp/json-rpc-connection.js +0 -247
  1447. package/packages/lsp-tools-mcp/dist/lsp/language-mappings.js +0 -170
  1448. package/packages/lsp-tools-mcp/dist/lsp/process-signal-cleanup.js +0 -17
  1449. package/packages/lsp-tools-mcp/dist/lsp/process.js +0 -153
  1450. package/packages/lsp-tools-mcp/dist/lsp/server-definitions.js +0 -170
  1451. package/packages/lsp-tools-mcp/dist/lsp/server-install-state.js +0 -51
  1452. package/packages/lsp-tools-mcp/dist/lsp/server-installation.js +0 -40
  1453. package/packages/lsp-tools-mcp/dist/lsp/server-resolution.js +0 -86
  1454. package/packages/lsp-tools-mcp/dist/lsp/startup-failure.js +0 -35
  1455. package/packages/lsp-tools-mcp/dist/lsp/transport.js +0 -241
  1456. package/packages/lsp-tools-mcp/dist/lsp/types.js +0 -1
  1457. package/packages/lsp-tools-mcp/dist/lsp/workspace-edit.js +0 -175
  1458. package/packages/lsp-tools-mcp/dist/missing-dependency-result.js +0 -14
  1459. package/packages/omo-codex/plugin/components/bootstrap/manifests/ast-grep.json +0 -22
  1460. package/packages/omo-codex/plugin/components/comment-checker/dist/apply-patch.d.ts +0 -7
  1461. package/packages/omo-codex/plugin/components/comment-checker/dist/apply-patch.js +0 -173
  1462. package/packages/omo-codex/plugin/components/comment-checker/dist/codex-hook.d.ts +0 -22
  1463. package/packages/omo-codex/plugin/components/comment-checker/dist/codex-hook.js +0 -165
  1464. package/packages/omo-codex/plugin/components/comment-checker/dist/core-values.d.ts +0 -1
  1465. package/packages/omo-codex/plugin/components/comment-checker/dist/core-values.js +0 -1
  1466. package/packages/omo-codex/plugin/components/comment-checker/dist/core.d.ts +0 -5
  1467. package/packages/omo-codex/plugin/components/comment-checker/dist/core.js +0 -4
  1468. package/packages/omo-codex/plugin/components/comment-checker/dist/hook-input.d.ts +0 -6
  1469. package/packages/omo-codex/plugin/components/comment-checker/dist/hook-input.js +0 -10
  1470. package/packages/omo-codex/plugin/components/comment-checker/dist/record.d.ts +0 -2
  1471. package/packages/omo-codex/plugin/components/comment-checker/dist/record.js +0 -11
  1472. package/packages/omo-codex/plugin/components/comment-checker/dist/request-extractor.d.ts +0 -3
  1473. package/packages/omo-codex/plugin/components/comment-checker/dist/request-extractor.js +0 -104
  1474. package/packages/omo-codex/plugin/components/comment-checker/dist/runner.d.ts +0 -26
  1475. package/packages/omo-codex/plugin/components/comment-checker/dist/runner.js +0 -144
  1476. package/packages/omo-codex/plugin/components/comment-checker/dist/types.d.ts +0 -43
  1477. package/packages/omo-codex/plugin/components/comment-checker/dist/types.js +0 -1
  1478. package/packages/omo-codex/plugin/components/comment-checker/src/record.ts +0 -11
  1479. package/packages/omo-codex/plugin/components/rules/dist/codex-hook-options.d.ts +0 -5
  1480. package/packages/omo-codex/plugin/components/rules/dist/codex-hook-options.js +0 -1
  1481. package/packages/omo-codex/plugin/components/rules/dist/codex-hook.d.ts +0 -47
  1482. package/packages/omo-codex/plugin/components/rules/dist/codex-hook.js +0 -127
  1483. package/packages/omo-codex/plugin/components/rules/dist/config.d.ts +0 -2
  1484. package/packages/omo-codex/plugin/components/rules/dist/config.js +0 -100
  1485. package/packages/omo-codex/plugin/components/rules/dist/context-pressure.d.ts +0 -2
  1486. package/packages/omo-codex/plugin/components/rules/dist/context-pressure.js +0 -26
  1487. package/packages/omo-codex/plugin/components/rules/dist/debug-log.d.ts +0 -8
  1488. package/packages/omo-codex/plugin/components/rules/dist/debug-log.js +0 -36
  1489. package/packages/omo-codex/plugin/components/rules/dist/dynamic-target-fingerprints.d.ts +0 -7
  1490. package/packages/omo-codex/plugin/components/rules/dist/dynamic-target-fingerprints.js +0 -65
  1491. package/packages/omo-codex/plugin/components/rules/dist/event-budget.d.ts +0 -3
  1492. package/packages/omo-codex/plugin/components/rules/dist/event-budget.js +0 -14
  1493. package/packages/omo-codex/plugin/components/rules/dist/hook-output.d.ts +0 -2
  1494. package/packages/omo-codex/plugin/components/rules/dist/hook-output.js +0 -24
  1495. package/packages/omo-codex/plugin/components/rules/dist/path-utils.d.ts +0 -4
  1496. package/packages/omo-codex/plugin/components/rules/dist/path-utils.js +0 -24
  1497. package/packages/omo-codex/plugin/components/rules/dist/persistent-cache.d.ts +0 -13
  1498. package/packages/omo-codex/plugin/components/rules/dist/persistent-cache.js +0 -172
  1499. package/packages/omo-codex/plugin/components/rules/dist/post-compact-budget.d.ts +0 -6
  1500. package/packages/omo-codex/plugin/components/rules/dist/post-compact-budget.js +0 -74
  1501. package/packages/omo-codex/plugin/components/rules/dist/post-compact-claim.d.ts +0 -4
  1502. package/packages/omo-codex/plugin/components/rules/dist/post-compact-claim.js +0 -6
  1503. package/packages/omo-codex/plugin/components/rules/dist/post-compact-directive.d.ts +0 -1
  1504. package/packages/omo-codex/plugin/components/rules/dist/post-compact-directive.js +0 -32
  1505. package/packages/omo-codex/plugin/components/rules/dist/post-compact-state.d.ts +0 -13
  1506. package/packages/omo-codex/plugin/components/rules/dist/post-compact-state.js +0 -29
  1507. package/packages/omo-codex/plugin/components/rules/dist/rules/cache.d.ts +0 -9
  1508. package/packages/omo-codex/plugin/components/rules/dist/rules/cache.js +0 -51
  1509. package/packages/omo-codex/plugin/components/rules/dist/rules/constants.d.ts +0 -70
  1510. package/packages/omo-codex/plugin/components/rules/dist/rules/constants.js +0 -101
  1511. package/packages/omo-codex/plugin/components/rules/dist/rules/engine-dynamic-cache.d.ts +0 -5
  1512. package/packages/omo-codex/plugin/components/rules/dist/rules/engine-dynamic-cache.js +0 -60
  1513. package/packages/omo-codex/plugin/components/rules/dist/rules/engine-dynamic-loader.d.ts +0 -6
  1514. package/packages/omo-codex/plugin/components/rules/dist/rules/engine-dynamic-loader.js +0 -61
  1515. package/packages/omo-codex/plugin/components/rules/dist/rules/engine-loader.d.ts +0 -7
  1516. package/packages/omo-codex/plugin/components/rules/dist/rules/engine-loader.js +0 -60
  1517. package/packages/omo-codex/plugin/components/rules/dist/rules/engine-paths.d.ts +0 -11
  1518. package/packages/omo-codex/plugin/components/rules/dist/rules/engine-paths.js +0 -75
  1519. package/packages/omo-codex/plugin/components/rules/dist/rules/engine-static-loader.d.ts +0 -6
  1520. package/packages/omo-codex/plugin/components/rules/dist/rules/engine-static-loader.js +0 -29
  1521. package/packages/omo-codex/plugin/components/rules/dist/rules/engine-types.d.ts +0 -44
  1522. package/packages/omo-codex/plugin/components/rules/dist/rules/engine-types.js +0 -1
  1523. package/packages/omo-codex/plugin/components/rules/dist/rules/engine.d.ts +0 -5
  1524. package/packages/omo-codex/plugin/components/rules/dist/rules/engine.js +0 -85
  1525. package/packages/omo-codex/plugin/components/rules/dist/rules/errors.d.ts +0 -6
  1526. package/packages/omo-codex/plugin/components/rules/dist/rules/errors.js +0 -12
  1527. package/packages/omo-codex/plugin/components/rules/dist/rules/finder-cache.d.ts +0 -14
  1528. package/packages/omo-codex/plugin/components/rules/dist/rules/finder-cache.js +0 -51
  1529. package/packages/omo-codex/plugin/components/rules/dist/rules/finder-paths.d.ts +0 -6
  1530. package/packages/omo-codex/plugin/components/rules/dist/rules/finder-paths.js +0 -33
  1531. package/packages/omo-codex/plugin/components/rules/dist/rules/finder-sources.d.ts +0 -5
  1532. package/packages/omo-codex/plugin/components/rules/dist/rules/finder-sources.js +0 -40
  1533. package/packages/omo-codex/plugin/components/rules/dist/rules/finder.d.ts +0 -28
  1534. package/packages/omo-codex/plugin/components/rules/dist/rules/finder.js +0 -146
  1535. package/packages/omo-codex/plugin/components/rules/dist/rules/formatter.d.ts +0 -7
  1536. package/packages/omo-codex/plugin/components/rules/dist/rules/formatter.js +0 -112
  1537. package/packages/omo-codex/plugin/components/rules/dist/rules/matcher.d.ts +0 -18
  1538. package/packages/omo-codex/plugin/components/rules/dist/rules/matcher.js +0 -93
  1539. package/packages/omo-codex/plugin/components/rules/dist/rules/ordering.d.ts +0 -3
  1540. package/packages/omo-codex/plugin/components/rules/dist/rules/ordering.js +0 -27
  1541. package/packages/omo-codex/plugin/components/rules/dist/rules/parser-frontmatter.d.ts +0 -7
  1542. package/packages/omo-codex/plugin/components/rules/dist/rules/parser-frontmatter.js +0 -30
  1543. package/packages/omo-codex/plugin/components/rules/dist/rules/parser-yaml.d.ts +0 -2
  1544. package/packages/omo-codex/plugin/components/rules/dist/rules/parser-yaml.js +0 -237
  1545. package/packages/omo-codex/plugin/components/rules/dist/rules/parser.d.ts +0 -3
  1546. package/packages/omo-codex/plugin/components/rules/dist/rules/parser.js +0 -31
  1547. package/packages/omo-codex/plugin/components/rules/dist/rules/plugin-root.d.ts +0 -1
  1548. package/packages/omo-codex/plugin/components/rules/dist/rules/plugin-root.js +0 -48
  1549. package/packages/omo-codex/plugin/components/rules/dist/rules/project-root.d.ts +0 -1
  1550. package/packages/omo-codex/plugin/components/rules/dist/rules/project-root.js +0 -23
  1551. package/packages/omo-codex/plugin/components/rules/dist/rules/scanner.d.ts +0 -14
  1552. package/packages/omo-codex/plugin/components/rules/dist/rules/scanner.js +0 -111
  1553. package/packages/omo-codex/plugin/components/rules/dist/rules/sources.d.ts +0 -3
  1554. package/packages/omo-codex/plugin/components/rules/dist/rules/sources.js +0 -9
  1555. package/packages/omo-codex/plugin/components/rules/dist/rules/truncator.d.ts +0 -18
  1556. package/packages/omo-codex/plugin/components/rules/dist/rules/truncator.js +0 -59
  1557. package/packages/omo-codex/plugin/components/rules/dist/rules/types.d.ts +0 -126
  1558. package/packages/omo-codex/plugin/components/rules/dist/rules/types.js +0 -8
  1559. package/packages/omo-codex/plugin/components/rules/dist/rules-engine-factory.d.ts +0 -6
  1560. package/packages/omo-codex/plugin/components/rules/dist/rules-engine-factory.js +0 -20
  1561. package/packages/omo-codex/plugin/components/rules/dist/session-state-lock.d.ts +0 -3
  1562. package/packages/omo-codex/plugin/components/rules/dist/session-state-lock.js +0 -41
  1563. package/packages/omo-codex/plugin/components/rules/dist/sparkshell-awareness.d.ts +0 -10
  1564. package/packages/omo-codex/plugin/components/rules/dist/sparkshell-awareness.js +0 -90
  1565. package/packages/omo-codex/plugin/components/rules/dist/static-injection.d.ts +0 -3
  1566. package/packages/omo-codex/plugin/components/rules/dist/static-injection.js +0 -128
  1567. package/packages/omo-codex/plugin/components/rules/dist/tool-paths.d.ts +0 -6
  1568. package/packages/omo-codex/plugin/components/rules/dist/tool-paths.js +0 -168
  1569. package/packages/omo-codex/plugin/components/rules/dist/transcript-rule-filter.d.ts +0 -4
  1570. package/packages/omo-codex/plugin/components/rules/dist/transcript-rule-filter.js +0 -49
  1571. package/packages/omo-codex/plugin/components/rules/dist/transcript-search.d.ts +0 -4
  1572. package/packages/omo-codex/plugin/components/rules/dist/transcript-search.js +0 -91
  1573. package/packages/omo-codex/plugin/components/rules/src/rules/cache.ts +0 -64
  1574. package/packages/omo-codex/plugin/components/rules/src/rules/constants.ts +0 -122
  1575. package/packages/omo-codex/plugin/components/rules/src/rules/engine-dynamic-cache.ts +0 -87
  1576. package/packages/omo-codex/plugin/components/rules/src/rules/engine-dynamic-loader.ts +0 -94
  1577. package/packages/omo-codex/plugin/components/rules/src/rules/engine-loader.ts +0 -84
  1578. package/packages/omo-codex/plugin/components/rules/src/rules/engine-paths.ts +0 -103
  1579. package/packages/omo-codex/plugin/components/rules/src/rules/engine-static-loader.ts +0 -43
  1580. package/packages/omo-codex/plugin/components/rules/src/rules/engine-types.ts +0 -45
  1581. package/packages/omo-codex/plugin/components/rules/src/rules/engine.ts +0 -123
  1582. package/packages/omo-codex/plugin/components/rules/src/rules/errors.ts +0 -13
  1583. package/packages/omo-codex/plugin/components/rules/src/rules/finder-cache.ts +0 -73
  1584. package/packages/omo-codex/plugin/components/rules/src/rules/finder-paths.ts +0 -47
  1585. package/packages/omo-codex/plugin/components/rules/src/rules/finder-sources.ts +0 -45
  1586. package/packages/omo-codex/plugin/components/rules/src/rules/finder.ts +0 -220
  1587. package/packages/omo-codex/plugin/components/rules/src/rules/formatter.ts +0 -149
  1588. package/packages/omo-codex/plugin/components/rules/src/rules/matcher.ts +0 -142
  1589. package/packages/omo-codex/plugin/components/rules/src/rules/ordering.ts +0 -33
  1590. package/packages/omo-codex/plugin/components/rules/src/rules/parser-frontmatter.ts +0 -39
  1591. package/packages/omo-codex/plugin/components/rules/src/rules/parser-yaml.ts +0 -271
  1592. package/packages/omo-codex/plugin/components/rules/src/rules/parser.ts +0 -35
  1593. package/packages/omo-codex/plugin/components/rules/src/rules/plugin-root.ts +0 -55
  1594. package/packages/omo-codex/plugin/components/rules/src/rules/project-root.ts +0 -30
  1595. package/packages/omo-codex/plugin/components/rules/src/rules/scanner.ts +0 -162
  1596. package/packages/omo-codex/plugin/components/rules/src/rules/sources.ts +0 -13
  1597. package/packages/omo-codex/plugin/components/rules/src/rules/truncator.ts +0 -84
  1598. package/packages/omo-codex/plugin/components/rules/src/rules/types.ts +0 -141
  1599. package/packages/omo-codex/plugin/components/start-work-continuation/dist/boulder-reader.d.ts +0 -16
  1600. package/packages/omo-codex/plugin/components/start-work-continuation/dist/boulder-reader.js +0 -146
  1601. package/packages/omo-codex/plugin/components/start-work-continuation/dist/cli.d.ts +0 -2
  1602. package/packages/omo-codex/plugin/components/start-work-continuation/dist/codex-hook.d.ts +0 -2
  1603. package/packages/omo-codex/plugin/components/start-work-continuation/dist/codex-hook.js +0 -80
  1604. package/packages/omo-codex/plugin/components/start-work-continuation/dist/directive.d.ts +0 -1
  1605. package/packages/omo-codex/plugin/components/start-work-continuation/dist/directive.js +0 -2
  1606. package/packages/omo-codex/plugin/components/start-work-continuation/dist/index.d.ts +0 -5
  1607. package/packages/omo-codex/plugin/components/start-work-continuation/dist/index.js +0 -3
  1608. package/packages/omo-codex/plugin/components/start-work-continuation/dist/types.d.ts +0 -20
  1609. package/packages/omo-codex/plugin/components/start-work-continuation/dist/types.js +0 -1
  1610. package/packages/omo-codex/plugin/components/telemetry/dist/atomic-write.d.ts +0 -1
  1611. package/packages/omo-codex/plugin/components/telemetry/dist/atomic-write.js +0 -18
  1612. package/packages/omo-codex/plugin/components/telemetry/dist/cli.d.ts +0 -2
  1613. package/packages/omo-codex/plugin/components/telemetry/dist/codex-hook.d.ts +0 -15
  1614. package/packages/omo-codex/plugin/components/telemetry/dist/codex-hook.js +0 -42
  1615. package/packages/omo-codex/plugin/components/telemetry/dist/data-path.d.ts +0 -10
  1616. package/packages/omo-codex/plugin/components/telemetry/dist/data-path.js +0 -35
  1617. package/packages/omo-codex/plugin/components/telemetry/dist/diagnostics.d.ts +0 -12
  1618. package/packages/omo-codex/plugin/components/telemetry/dist/diagnostics.js +0 -108
  1619. package/packages/omo-codex/plugin/components/telemetry/dist/env-flags.d.ts +0 -4
  1620. package/packages/omo-codex/plugin/components/telemetry/dist/env-flags.js +0 -31
  1621. package/packages/omo-codex/plugin/components/telemetry/dist/posthog-activity-state.d.ts +0 -8
  1622. package/packages/omo-codex/plugin/components/telemetry/dist/posthog-activity-state.js +0 -68
  1623. package/packages/omo-codex/plugin/components/telemetry/dist/posthog.d.ts +0 -21
  1624. package/packages/omo-codex/plugin/components/telemetry/dist/product-identity.d.ts +0 -8
  1625. package/packages/omo-codex/plugin/components/telemetry/dist/product-identity.js +0 -29
  1626. package/packages/omo-codex/plugin/components/telemetry/src/atomic-write.ts +0 -22
  1627. package/packages/omo-codex/plugin/components/telemetry/src/data-path.ts +0 -45
  1628. package/packages/omo-codex/plugin/components/telemetry/src/diagnostics.ts +0 -154
  1629. package/packages/omo-codex/plugin/components/telemetry/src/env-flags.ts +0 -43
  1630. package/packages/omo-codex/plugin/components/telemetry/src/posthog-activity-state.ts +0 -97
  1631. package/packages/omo-codex/plugin/components/ultrawork/agents/codex-ultrawork-reviewer.toml +0 -21
  1632. package/packages/omo-codex/plugin/components/ultrawork/dist/cli.d.ts +0 -2
  1633. package/packages/omo-codex/plugin/components/ultrawork/dist/codex-hook.d.ts +0 -7
  1634. package/packages/omo-codex/plugin/components/ultrawork/dist/codex-hook.js +0 -122
  1635. package/packages/omo-codex/plugin/components/ultrawork/dist/directive.d.ts +0 -1
  1636. package/packages/omo-codex/plugin/components/ultrawork/dist/directive.js +0 -2
  1637. package/packages/omo-codex/plugin/skills/frontend-ui-ux/SKILL.md +0 -77
  1638. package/packages/omo-codex/plugin/test/start-work-skill.test.mjs +0 -85
  1639. package/packages/omo-codex/plugin/test/ulw-plan-skill.test.mjs +0 -89
  1640. package/packages/omo-codex/scripts/atomic-write.test.mjs +0 -82
  1641. package/packages/omo-codex/scripts/install/agent-source-roots.mjs +0 -13
  1642. package/packages/omo-codex/scripts/install/agents.d.mts +0 -18
  1643. package/packages/omo-codex/scripts/install/agents.mjs +0 -227
  1644. package/packages/omo-codex/scripts/install/atomic-write.mjs +0 -59
  1645. package/packages/omo-codex/scripts/install/bin-dir.d.mts +0 -7
  1646. package/packages/omo-codex/scripts/install/bin-dir.mjs +0 -20
  1647. package/packages/omo-codex/scripts/install/bin-links.d.mts +0 -18
  1648. package/packages/omo-codex/scripts/install/bin-links.mjs +0 -276
  1649. package/packages/omo-codex/scripts/install/cache.mjs +0 -295
  1650. package/packages/omo-codex/scripts/install/cached-marketplace-manifest.mjs +0 -21
  1651. package/packages/omo-codex/scripts/install/cli-args.mjs +0 -149
  1652. package/packages/omo-codex/scripts/install/command-shim.mjs +0 -1
  1653. package/packages/omo-codex/scripts/install/config.d.mts +0 -35
  1654. package/packages/omo-codex/scripts/install/config.mjs +0 -267
  1655. package/packages/omo-codex/scripts/install/delegated-command.mjs +0 -29
  1656. package/packages/omo-codex/scripts/install/git-bash-mcp-env.d.mts +0 -5
  1657. package/packages/omo-codex/scripts/install/git-bash-mcp-env.mjs +0 -28
  1658. package/packages/omo-codex/scripts/install/git-bash.d.mts +0 -23
  1659. package/packages/omo-codex/scripts/install/git-bash.mjs +0 -107
  1660. package/packages/omo-codex/scripts/install/git-bash.test.mjs +0 -209
  1661. package/packages/omo-codex/scripts/install/hook-targets.mjs +0 -46
  1662. package/packages/omo-codex/scripts/install/hook-trust.d.mts +0 -10
  1663. package/packages/omo-codex/scripts/install/hook-trust.mjs +0 -84
  1664. package/packages/omo-codex/scripts/install/lazycodex-version-stamp.mjs +0 -102
  1665. package/packages/omo-codex/scripts/install/legacy-bins.mjs +0 -66
  1666. package/packages/omo-codex/scripts/install/marketplace.mjs +0 -104
  1667. package/packages/omo-codex/scripts/install/mcp-runtime-cache.mjs +0 -81
  1668. package/packages/omo-codex/scripts/install/model-catalog.mjs +0 -74
  1669. package/packages/omo-codex/scripts/install/multi-agent-v2-config.mjs +0 -50
  1670. package/packages/omo-codex/scripts/install/permissions.d.mts +0 -1
  1671. package/packages/omo-codex/scripts/install/permissions.mjs +0 -37
  1672. package/packages/omo-codex/scripts/install/process.mjs +0 -22
  1673. package/packages/omo-codex/scripts/install/project-local-cleanup.mjs +0 -228
  1674. package/packages/omo-codex/scripts/install/reasoning-config.mjs +0 -72
  1675. package/packages/omo-codex/scripts/install/snapshot.mjs +0 -53
  1676. package/packages/omo-codex/scripts/install/source-package-build.mjs +0 -20
  1677. package/packages/omo-codex/scripts/install/toml-editor.mjs +0 -64
  1678. package/packages/omo-codex/scripts/install/utils.mjs +0 -15
  1679. package/packages/omo-codex/scripts/sync-telemetry-component.mjs +0 -116
  1680. package/packages/omo-codex/scripts/sync-telemetry-component.test.mjs +0 -94
  1681. package/packages/shared-skills/skills/frontend-ui-ux/SKILL.md +0 -77
  1682. /package/dist/cli/doctor/{doctor-target.d.ts → framework/doctor-target.d.ts} +0 -0
  1683. /package/dist/cli/doctor/{format-default.d.ts → framework/format-default.d.ts} +0 -0
  1684. /package/dist/cli/doctor/{format-shared.d.ts → framework/format-shared.d.ts} +0 -0
  1685. /package/dist/cli/doctor/{format-status.d.ts → framework/format-status.d.ts} +0 -0
  1686. /package/dist/cli/doctor/{format-verbose.d.ts → framework/format-verbose.d.ts} +0 -0
  1687. /package/dist/cli/doctor/{formatter.d.ts → framework/formatter.d.ts} +0 -0
  1688. /package/packages/omo-codex/plugin/components/{comment-checker → codegraph}/dist/cli.d.ts +0 -0
  1689. /package/packages/omo-codex/plugin/components/{rules → lazycodex-executor-verify}/dist/cli.d.ts +0 -0
@@ -1,1159 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- // src/cli.ts
4
- import { argv, stderr } from "node:process";
5
-
6
- // src/mcp-lifecycle-log.ts
7
- import { appendFileSync, renameSync, statSync } from "node:fs";
8
- import { tmpdir } from "node:os";
9
- import { join } from "node:path";
10
- var LOG_FILE_NAME = "omo-ast-grep-mcp.log";
11
- var MAX_LOG_BYTES = 5 * 1024 * 1024;
12
- function mcpLifecycleLogPath() {
13
- return join(tmpdir(), LOG_FILE_NAME);
14
- }
15
- function writeMcpLifecycleLog(event, fields = {}) {
16
- const path = mcpLifecycleLogPath();
17
- try {
18
- rotateLogIfNeeded(path);
19
- appendFileSync(path, `${JSON.stringify({ ts: new Date().toISOString(), event, pid: process.pid, ppid: process.ppid, ...fields })}
20
- `);
21
- } catch {}
22
- }
23
- function rotateLogIfNeeded(path) {
24
- try {
25
- if (statSync(path).size < MAX_LOG_BYTES)
26
- return;
27
- renameSync(path, `${path}.1`);
28
- } catch {}
29
- }
30
-
31
- // ../ast-grep-core/src/language-support.ts
32
- var CLI_LANGUAGES = [
33
- "bash",
34
- "c",
35
- "cpp",
36
- "csharp",
37
- "css",
38
- "elixir",
39
- "go",
40
- "haskell",
41
- "html",
42
- "java",
43
- "javascript",
44
- "json",
45
- "kotlin",
46
- "lua",
47
- "nix",
48
- "php",
49
- "python",
50
- "ruby",
51
- "rust",
52
- "scala",
53
- "solidity",
54
- "swift",
55
- "typescript",
56
- "tsx",
57
- "yaml"
58
- ];
59
- var DEFAULT_TIMEOUT_MS = 300000;
60
- var DEFAULT_MAX_OUTPUT_BYTES = 1 * 1024 * 1024;
61
- var DEFAULT_MAX_MATCHES = 500;
62
- // ../ast-grep-core/src/pattern-hints.ts
63
- function detectRegexMisuse(pattern) {
64
- const src = pattern.trim();
65
- if (/\\[wWdDsSbB]/.test(src)) {
66
- return 'Hint: "\\w", "\\d", "\\s", "\\b" are regex escapes. ast-grep matches AST nodes, not text - use $VAR for identifiers, $$$ for node lists, or switch to grep for text search.';
67
- }
68
- if (/\[[a-zA-Z0-9]-[a-zA-Z0-9]\]/.test(src)) {
69
- return 'Hint: "[a-z]" and similar character classes are regex, not AST. Use $VAR to match any identifier, or switch to grep for text search.';
70
- }
71
- if (!src.includes("$") && /\w\.[*+]/.test(src)) {
72
- return 'Hint: ".*" and ".+" are regex wildcards. In ast-grep use $$$ for multiple AST nodes and $VAR for a single node. For text patterns, switch to grep.';
73
- }
74
- if (/^[-\w.*]+\|[-\w.*|]+$/.test(src)) {
75
- return 'Hint: "|" is regex alternation and does NOT work in ast-grep patterns. Options: (a) fire one ast_grep_search per alternative, or (b) switch to grep with a regex pattern like "foo|bar".';
76
- }
77
- return null;
78
- }
79
- function detectLanguageSpecificMistake(pattern, lang) {
80
- const src = pattern.trim();
81
- if (lang === "python") {
82
- if (src.startsWith("class ") && src.endsWith(":")) {
83
- return `Hint: Remove trailing colon. Try: "${src.slice(0, -1)}"`;
84
- }
85
- if ((src.startsWith("def ") || src.startsWith("async def ")) && src.endsWith(":")) {
86
- return `Hint: Remove trailing colon. Try: "${src.slice(0, -1)}"`;
87
- }
88
- }
89
- if (["javascript", "typescript", "tsx"].includes(lang)) {
90
- if (/^(export\s+)?(async\s+)?function\s+\$[A-Z_]+\s*$/i.test(src)) {
91
- return 'Hint: Function patterns need params and body. Try "function $NAME($$$) { $$$ }"';
92
- }
93
- }
94
- if (lang === "go") {
95
- if (/^func\s+\$[A-Z_]+\s*$/i.test(src)) {
96
- return 'Hint: Go function patterns need params and body. Try "func $NAME($$$) { $$$ }"';
97
- }
98
- }
99
- if (lang === "rust") {
100
- if (/^fn\s+\$[A-Z_]+\s*$/i.test(src)) {
101
- return 'Hint: Rust fn patterns need params and body. Try "fn $NAME($$$) { $$$ }"';
102
- }
103
- }
104
- return null;
105
- }
106
- function getPatternHint(pattern, lang) {
107
- return detectRegexMisuse(pattern) ?? detectLanguageSpecificMistake(pattern, lang);
108
- }
109
- // ../ast-grep-core/src/result-formatter.ts
110
- function formatSearchResult(result) {
111
- if (result.error) {
112
- return `Error: ${result.error}`;
113
- }
114
- if (result.matches.length === 0) {
115
- return "No matches found";
116
- }
117
- const lines = [];
118
- if (result.truncated) {
119
- const reason = result.truncatedReason === "max_matches" ? `showing first ${result.matches.length} of ${result.totalMatches}` : result.truncatedReason === "max_output_bytes" ? "output exceeded 1MB limit" : "search timed out";
120
- lines.push(`[TRUNCATED] Results truncated (${reason})
121
- `);
122
- }
123
- lines.push(`Found ${result.matches.length} match(es)${result.truncated ? ` (truncated from ${result.totalMatches})` : ""}:
124
- `);
125
- for (const match of result.matches) {
126
- const loc = `${match.file}:${match.range.start.line + 1}:${match.range.start.column + 1}`;
127
- lines.push(`${loc}`);
128
- lines.push(` ${match.lines.trim()}`);
129
- lines.push("");
130
- }
131
- return lines.join(`
132
- `);
133
- }
134
- function formatReplaceResult(result, isDryRun) {
135
- if (result.error) {
136
- return `Error: ${result.error}`;
137
- }
138
- if (result.matches.length === 0) {
139
- return "No matches found to replace";
140
- }
141
- const prefix = isDryRun ? "[DRY RUN] " : "";
142
- const lines = [];
143
- if (result.truncated) {
144
- const reason = result.truncatedReason === "max_matches" ? `showing first ${result.matches.length} of ${result.totalMatches}` : result.truncatedReason === "max_output_bytes" ? "output exceeded 1MB limit" : "search timed out";
145
- lines.push(`[TRUNCATED] Results truncated (${reason})
146
- `);
147
- }
148
- lines.push(`${prefix}${result.matches.length} replacement(s):
149
- `);
150
- for (const match of result.matches) {
151
- const loc = `${match.file}:${match.range.start.line + 1}:${match.range.start.column + 1}`;
152
- lines.push(`${loc}`);
153
- lines.push(` ${match.text}`);
154
- lines.push("");
155
- }
156
- if (isDryRun) {
157
- lines.push("Use dryRun=false to apply changes");
158
- }
159
- return lines.join(`
160
- `);
161
- }
162
- // ../ast-grep-core/src/sg-compact-json-output.ts
163
- function createSgResultFromStdout(stdout) {
164
- if (!stdout.trim()) {
165
- return { matches: [], totalMatches: 0, truncated: false };
166
- }
167
- const outputTruncated = stdout.length >= DEFAULT_MAX_OUTPUT_BYTES;
168
- const outputToProcess = outputTruncated ? stdout.substring(0, DEFAULT_MAX_OUTPUT_BYTES) : stdout;
169
- let matches = [];
170
- try {
171
- matches = JSON.parse(outputToProcess);
172
- } catch {
173
- if (outputTruncated) {
174
- try {
175
- const lastValidIndex = outputToProcess.lastIndexOf("}");
176
- if (lastValidIndex > 0) {
177
- const bracketIndex = outputToProcess.lastIndexOf("},", lastValidIndex);
178
- if (bracketIndex > 0) {
179
- const truncatedJson = outputToProcess.substring(0, bracketIndex + 1) + "]";
180
- matches = JSON.parse(truncatedJson);
181
- }
182
- }
183
- } catch {
184
- return {
185
- matches: [],
186
- totalMatches: 0,
187
- truncated: true,
188
- truncatedReason: "max_output_bytes",
189
- error: "Output too large and could not be parsed"
190
- };
191
- }
192
- } else {
193
- return { matches: [], totalMatches: 0, truncated: false };
194
- }
195
- }
196
- const totalMatches = matches.length;
197
- const matchesTruncated = totalMatches > DEFAULT_MAX_MATCHES;
198
- const finalMatches = matchesTruncated ? matches.slice(0, DEFAULT_MAX_MATCHES) : matches;
199
- return {
200
- matches: finalMatches,
201
- totalMatches,
202
- truncated: outputTruncated || matchesTruncated,
203
- truncatedReason: outputTruncated ? "max_output_bytes" : matchesTruncated ? "max_matches" : undefined
204
- };
205
- }
206
- // ../ast-grep-core/src/runner.ts
207
- var SG_BINARY_NOT_FOUND_MESSAGE = `ast-grep (sg) binary not found.
208
-
209
- ` + `Install options:
210
- ` + ` bun add -D @ast-grep/cli
211
- ` + ` cargo install ast-grep --locked
212
- ` + ` brew install ast-grep`;
213
- function buildSgArgs(options, flags) {
214
- const args = ["run", "-p", options.pattern, "--lang", options.lang];
215
- if (flags.includeJson) {
216
- args.push("--json=compact");
217
- }
218
- if (options.rewrite) {
219
- args.push("-r", options.rewrite);
220
- if (flags.includeUpdateAll) {
221
- args.push("--update-all");
222
- }
223
- }
224
- if (typeof options.context === "number" && options.context > 0) {
225
- args.push("-C", String(options.context));
226
- }
227
- if (options.globs) {
228
- for (const glob of options.globs) {
229
- args.push("--globs", glob);
230
- }
231
- }
232
- const paths = options.paths && options.paths.length > 0 ? options.paths : ["."];
233
- args.push("--", ...paths);
234
- return args;
235
- }
236
- async function runSg(options, deps) {
237
- const shouldSeparateWritePass = Boolean(options.rewrite && options.updateAll);
238
- const args = buildSgArgs(options, { includeJson: true, includeUpdateAll: false });
239
- let binary;
240
- try {
241
- binary = await deps.resolveBinary();
242
- } catch (error) {
243
- return {
244
- matches: [],
245
- totalMatches: 0,
246
- truncated: false,
247
- error: isNoEntryError(error) ? SG_BINARY_NOT_FOUND_MESSAGE : `Failed to resolve ast-grep binary: ${errorMessage(error)}`
248
- };
249
- }
250
- const searchResult = await trySpawn(binary, args, options.cwd, deps);
251
- if (searchResult.error) {
252
- return searchResult.error;
253
- }
254
- const output = searchResult.value;
255
- if (output.exitCode !== 0 && output.stdout.trim() === "") {
256
- if (output.stderr.includes("No files found")) {
257
- return { matches: [], totalMatches: 0, truncated: false };
258
- }
259
- if (output.stderr.trim()) {
260
- return { matches: [], totalMatches: 0, truncated: false, error: output.stderr.trim() };
261
- }
262
- return { matches: [], totalMatches: 0, truncated: false };
263
- }
264
- const jsonResult = createSgResultFromStdout(output.stdout);
265
- if (!(shouldSeparateWritePass && jsonResult.matches.length > 0)) {
266
- return jsonResult;
267
- }
268
- const writeArgs = buildSgArgs(options, { includeJson: false, includeUpdateAll: true });
269
- const writeResult = await trySpawn(binary, writeArgs, options.cwd, deps);
270
- if (writeResult.error) {
271
- return { ...jsonResult, error: `Replace failed: ${writeResult.error.error ?? "unknown error"}` };
272
- }
273
- if (writeResult.value.exitCode !== 0) {
274
- const errorDetail = writeResult.value.stderr.trim() || `ast-grep exited with code ${writeResult.value.exitCode}`;
275
- return { ...jsonResult, error: `Replace failed: ${errorDetail}` };
276
- }
277
- return jsonResult;
278
- }
279
- async function trySpawn(binary, args, cwd, deps) {
280
- try {
281
- const value = await deps.spawnProcess(binary, args, {
282
- cwd,
283
- stdout: "pipe",
284
- stderr: "pipe"
285
- });
286
- return { value };
287
- } catch (error) {
288
- if (error instanceof Error && error.message.includes("timeout")) {
289
- return {
290
- error: {
291
- matches: [],
292
- totalMatches: 0,
293
- truncated: true,
294
- truncatedReason: "timeout",
295
- error: error.message
296
- }
297
- };
298
- }
299
- if (isNoEntryError(error)) {
300
- return {
301
- error: {
302
- matches: [],
303
- totalMatches: 0,
304
- truncated: false,
305
- error: SG_BINARY_NOT_FOUND_MESSAGE
306
- }
307
- };
308
- }
309
- return {
310
- error: {
311
- matches: [],
312
- totalMatches: 0,
313
- truncated: false,
314
- error: `Failed to spawn ast-grep: ${errorMessage(error)}`
315
- }
316
- };
317
- }
318
- }
319
- function isNoEntryError(error) {
320
- if (typeof error !== "object" || error === null) {
321
- return false;
322
- }
323
- const code = Reflect.get(error, "code");
324
- const message = errorMessage(error);
325
- return code === "ENOENT" || message.includes("ENOENT") || message.includes("not found");
326
- }
327
- function errorMessage(error) {
328
- if (error instanceof Error) {
329
- return error.message;
330
- }
331
- return String(error);
332
- }
333
- // src/sg-cli-path.ts
334
- import { createRequire } from "node:module";
335
- import { homedir as defaultHomedir } from "node:os";
336
- import { dirname, join as join2 } from "node:path";
337
- import { existsSync, statSync as statSync2 } from "node:fs";
338
- var SG_PATH_ENV_KEY = "OMO_AST_GREP_SG_PATH";
339
- var WINDOWS_EXECUTABLE_EXTENSIONS = [".exe", ".cmd", ".bat"];
340
- function isValidBinary(filePath) {
341
- try {
342
- const stats = statSync2(filePath);
343
- if (!stats.isFile()) {
344
- return false;
345
- }
346
- const size = stats.size;
347
- const lowerPath = filePath.toLowerCase();
348
- if (lowerPath.endsWith(".cmd") || lowerPath.endsWith(".bat")) {
349
- return size > 0;
350
- }
351
- return size > 1e4;
352
- } catch {
353
- return false;
354
- }
355
- }
356
- function executableCandidates(filePath, platform = process.platform) {
357
- if (platform !== "win32")
358
- return [filePath];
359
- const candidates = [filePath];
360
- const lowerPath = filePath.toLowerCase();
361
- if (WINDOWS_EXECUTABLE_EXTENSIONS.some((extension) => lowerPath.endsWith(extension))) {
362
- return candidates;
363
- }
364
- for (const extension of WINDOWS_EXECUTABLE_EXTENSIONS) {
365
- candidates.push(`${filePath}${extension}`);
366
- }
367
- return candidates;
368
- }
369
- function findValidExecutable(filePath, platform = process.platform) {
370
- for (const candidate of executableCandidates(filePath, platform)) {
371
- if (existsSync(candidate) && isValidBinary(candidate)) {
372
- return candidate;
373
- }
374
- }
375
- return null;
376
- }
377
- function getPlatformPackageName(platform, arch) {
378
- const platformMap = {
379
- "darwin-arm64": "@ast-grep/cli-darwin-arm64",
380
- "darwin-x64": "@ast-grep/cli-darwin-x64",
381
- "linux-arm64": "@ast-grep/cli-linux-arm64-gnu",
382
- "linux-x64": "@ast-grep/cli-linux-x64-gnu",
383
- "win32-x64": "@ast-grep/cli-win32-x64-msvc",
384
- "win32-arm64": "@ast-grep/cli-win32-arm64-msvc",
385
- "win32-ia32": "@ast-grep/cli-win32-ia32-msvc"
386
- };
387
- return platformMap[`${platform}-${arch}`] ?? null;
388
- }
389
- function isModuleResolutionFailure(error) {
390
- return error instanceof Error && (error.message.includes("Cannot find module") || error.message.includes("Cannot find package"));
391
- }
392
- function defaultResolveModulePath(specifier) {
393
- const require2 = createRequire(import.meta.url);
394
- return require2.resolve(specifier);
395
- }
396
- function nonEmptyValue(value) {
397
- if (value === undefined)
398
- return;
399
- const trimmed = value.trim();
400
- return trimmed.length === 0 ? undefined : trimmed;
401
- }
402
- function findEnvOverrideSgPath(env, platform) {
403
- const overridePath = nonEmptyValue(env[SG_PATH_ENV_KEY]);
404
- if (overridePath === undefined)
405
- return null;
406
- return findValidExecutable(overridePath, platform);
407
- }
408
- function findRuntimeDirSgPath(env, platform, arch, homedir) {
409
- const codexHome = nonEmptyValue(env["CODEX_HOME"]) ?? join2(homedir(), ".codex");
410
- const binaryName = platform === "win32" ? "sg.exe" : "sg";
411
- const runtimePath = join2(codexHome, "runtime", "ast-grep", `${platform}-${arch}`, binaryName);
412
- return findValidExecutable(runtimePath, platform);
413
- }
414
- function findSgCliPathSync(options = {}) {
415
- const env = options.env ?? process.env;
416
- const platform = options.platform ?? process.platform;
417
- const arch = options.arch ?? process.arch;
418
- const homedir = options.homedir ?? defaultHomedir;
419
- const resolveModulePath = options.resolveModulePath ?? defaultResolveModulePath;
420
- const envOverridePath = findEnvOverrideSgPath(env, platform);
421
- if (envOverridePath) {
422
- return envOverridePath;
423
- }
424
- const runtimeDirPath = findRuntimeDirSgPath(env, platform, arch, homedir);
425
- if (runtimeDirPath) {
426
- return runtimeDirPath;
427
- }
428
- const binaryName = "sg";
429
- try {
430
- const cliPackageJsonPath = resolveModulePath("@ast-grep/cli/package.json");
431
- const cliDirectory = dirname(cliPackageJsonPath);
432
- const sgPath = join2(cliDirectory, binaryName);
433
- const validSgPath = findValidExecutable(sgPath, platform);
434
- if (validSgPath) {
435
- return validSgPath;
436
- }
437
- } catch (error) {
438
- if (!isModuleResolutionFailure(error)) {
439
- throw error;
440
- }
441
- }
442
- const platformPackage = getPlatformPackageName(platform, arch);
443
- if (platformPackage) {
444
- try {
445
- const packageJsonPath = resolveModulePath(`${platformPackage}/package.json`);
446
- const packageDirectory = dirname(packageJsonPath);
447
- const astGrepBinaryName = "ast-grep";
448
- const binaryPath = join2(packageDirectory, astGrepBinaryName);
449
- const validBinaryPath = findValidExecutable(binaryPath, platform);
450
- if (validBinaryPath) {
451
- return validBinaryPath;
452
- }
453
- } catch (error) {
454
- if (!isModuleResolutionFailure(error)) {
455
- throw error;
456
- }
457
- }
458
- }
459
- if (platform === "darwin") {
460
- const homebrewPaths = ["/opt/homebrew/bin/sg", "/usr/local/bin/sg"];
461
- for (const path of homebrewPaths) {
462
- if (existsSync(path) && isValidBinary(path)) {
463
- return path;
464
- }
465
- }
466
- }
467
- return null;
468
- }
469
- var resolvedCliPath = null;
470
- function getSgCliPath() {
471
- if (resolvedCliPath !== null) {
472
- return resolvedCliPath;
473
- }
474
- const syncPath = findSgCliPathSync();
475
- if (syncPath) {
476
- resolvedCliPath = syncPath;
477
- return syncPath;
478
- }
479
- return null;
480
- }
481
- function setSgCliPath(path) {
482
- resolvedCliPath = path;
483
- }
484
- // src/mcp-stdio-transport.ts
485
- var HEADER_SEPARATOR = Buffer.from(`\r
486
- \r
487
- `);
488
- async function* readStdioJsonRpcMessages(input) {
489
- let buffer = Buffer.alloc(0);
490
- for await (const chunk of input) {
491
- buffer = Buffer.concat([buffer, bufferFromChunk(chunk)]);
492
- while (true) {
493
- const result = readNextMessage(buffer);
494
- if (result.kind === "incomplete")
495
- break;
496
- buffer = result.remaining;
497
- if (result.message)
498
- yield result.message;
499
- }
500
- }
501
- const trailing = buffer.toString("utf8").trim();
502
- if (trailing.length > 0) {
503
- yield parseJsonPayload(trailing, "line");
504
- }
505
- }
506
- function writeStdioJsonRpcResponse(output, response, responseMode) {
507
- const body = JSON.stringify(response);
508
- if (responseMode === "framed") {
509
- output.write(`Content-Length: ${Buffer.byteLength(body, "utf8")}\r
510
- \r
511
- ${body}`);
512
- return;
513
- }
514
- output.write(`${body}
515
- `);
516
- }
517
- function readNextMessage(buffer) {
518
- if (buffer.length === 0)
519
- return { kind: "incomplete" };
520
- return startsWithContentLength(buffer) ? readFramedMessage(buffer) : readLineMessage(buffer);
521
- }
522
- function readLineMessage(buffer) {
523
- const newlineIndex = buffer.indexOf(10);
524
- if (newlineIndex === -1)
525
- return { kind: "incomplete" };
526
- const line = buffer.subarray(0, newlineIndex).toString("utf8").replace(/\r$/, "");
527
- if (line.trim().length === 0) {
528
- return {
529
- kind: "complete",
530
- remaining: buffer.subarray(newlineIndex + 1)
531
- };
532
- }
533
- return {
534
- kind: "complete",
535
- message: parseJsonPayload(line, "line"),
536
- remaining: buffer.subarray(newlineIndex + 1)
537
- };
538
- }
539
- function readFramedMessage(buffer) {
540
- const separatorIndex = buffer.indexOf(HEADER_SEPARATOR);
541
- if (separatorIndex === -1)
542
- return { kind: "incomplete" };
543
- const headers = buffer.subarray(0, separatorIndex).toString("ascii");
544
- const contentLength = parseContentLength(headers);
545
- const bodyStart = separatorIndex + HEADER_SEPARATOR.length;
546
- if (contentLength === undefined) {
547
- return {
548
- kind: "complete",
549
- message: {
550
- kind: "parse_error",
551
- message: "Missing or invalid Content-Length header",
552
- responseMode: "framed"
553
- },
554
- remaining: buffer.subarray(bodyStart)
555
- };
556
- }
557
- const bodyEnd = bodyStart + contentLength;
558
- if (buffer.length < bodyEnd)
559
- return { kind: "incomplete" };
560
- const body = buffer.subarray(bodyStart, bodyEnd).toString("utf8");
561
- return {
562
- kind: "complete",
563
- message: parseJsonPayload(body, "framed"),
564
- remaining: buffer.subarray(bodyEnd)
565
- };
566
- }
567
- function startsWithContentLength(buffer) {
568
- const prefix = buffer.subarray(0, "content-length:".length).toString("ascii").toLowerCase();
569
- return prefix === "content-length:";
570
- }
571
- function parseContentLength(headers) {
572
- for (const line of headers.split(`\r
573
- `)) {
574
- const match = /^content-length:\s*(\d+)$/i.exec(line);
575
- if (match === null)
576
- continue;
577
- const value = match[1];
578
- if (value === undefined)
579
- return;
580
- return Number(value);
581
- }
582
- return;
583
- }
584
- function parseJsonPayload(payload, responseMode) {
585
- try {
586
- return { kind: "request", payload: JSON.parse(payload), responseMode };
587
- } catch (error) {
588
- return { kind: "parse_error", message: messageFromError(error), responseMode };
589
- }
590
- }
591
- function bufferFromChunk(chunk) {
592
- if (Buffer.isBuffer(chunk))
593
- return chunk;
594
- if (typeof chunk === "string")
595
- return Buffer.from(chunk);
596
- throw new TypeError(`Unsupported stdio chunk type: ${typeof chunk}`);
597
- }
598
- function messageFromError(error) {
599
- return error instanceof Error ? error.message : String(error);
600
- }
601
-
602
- // src/mcp-stdio-server.ts
603
- var DEFAULT_IDLE_TIMEOUT_MS = 10 * 60000;
604
- var noopLog = () => {};
605
- async function runJsonRpcStdioServer(handler, input, output, options, stdioOptions = {}) {
606
- const log = stdioOptions.log ?? noopLog;
607
- const idleTimeoutMs = stdioOptions.idleTimeoutMs ?? DEFAULT_IDLE_TIMEOUT_MS;
608
- const idleTimer = createIdleTimer(idleTimeoutMs, log, stdioOptions.onIdleTimeout);
609
- log("stdio_started", { cwd: process.cwd(), idle_timeout_ms: idleTimeoutMs });
610
- idleTimer.arm();
611
- try {
612
- for await (const message of readStdioJsonRpcMessages(input)) {
613
- if (idleTimer.closed())
614
- break;
615
- idleTimer.arm();
616
- if (message.kind === "parse_error") {
617
- log("parse_error", { message: message.message });
618
- writeStdioJsonRpcResponse(output, errorResponse(null, -32700, "Parse error", message.message), message.responseMode);
619
- continue;
620
- }
621
- const parsed = message.payload;
622
- const id = isRecord(parsed) ? jsonRpcId(parsed.id) : null;
623
- const method = isRecord(parsed) && typeof parsed.method === "string" ? parsed.method : null;
624
- log("request", { id: id === null ? null : String(id), method });
625
- const response = await handler(parsed, options);
626
- if (response) {
627
- writeStdioJsonRpcResponse(output, response, message.responseMode);
628
- log("response", { id: String(response.id), method, is_error: response.error !== undefined });
629
- }
630
- }
631
- } finally {
632
- idleTimer.clear();
633
- log("stdio_stopped");
634
- }
635
- }
636
- function createIdleTimer(idleTimeoutMs, log, onIdleTimeout) {
637
- let timer = null;
638
- let isClosed = false;
639
- return {
640
- arm: () => {
641
- if (timer !== null)
642
- clearTimeout(timer);
643
- if (idleTimeoutMs <= 0)
644
- return;
645
- timer = setTimeout(() => {
646
- isClosed = true;
647
- log("idle_timeout", { idle_timeout_ms: idleTimeoutMs });
648
- onIdleTimeout?.();
649
- }, idleTimeoutMs);
650
- timer.unref();
651
- },
652
- clear: () => {
653
- if (timer === null)
654
- return;
655
- clearTimeout(timer);
656
- timer = null;
657
- },
658
- closed: () => isClosed
659
- };
660
- }
661
- function errorResponse(id, code, message, data) {
662
- return { jsonrpc: "2.0", id, error: data === undefined ? { code, message } : { code, message, data } };
663
- }
664
- function jsonRpcId(value) {
665
- return typeof value === "string" || typeof value === "number" || value === null ? value : null;
666
- }
667
- function isRecord(value) {
668
- return typeof value === "object" && value !== null && !Array.isArray(value);
669
- }
670
- // src/runner.ts
671
- import { existsSync as existsSync3 } from "node:fs";
672
-
673
- // src/bun-spawn-shim.ts
674
- import { spawn as nodeSpawn, spawnSync as nodeSpawnSync } from "node:child_process";
675
- import { Writable } from "node:stream";
676
- var runtime = globalThis;
677
- var IS_BUN = typeof runtime.Bun !== "undefined";
678
- function emptyReadableStream() {
679
- return new ReadableStream({
680
- start(controller) {
681
- controller.close();
682
- }
683
- });
684
- }
685
- function toReadableStream(stream) {
686
- if (!stream)
687
- return emptyReadableStream();
688
- return new ReadableStream({
689
- async start(controller) {
690
- try {
691
- for await (const chunk of stream) {
692
- controller.enqueue(toUint8Array(chunk));
693
- }
694
- controller.close();
695
- } catch (error) {
696
- controller.error(error);
697
- }
698
- }
699
- });
700
- }
701
- function toUint8Array(chunk) {
702
- if (chunk instanceof Uint8Array)
703
- return new Uint8Array(chunk);
704
- return new TextEncoder().encode(String(chunk));
705
- }
706
- function emptyWritableStream() {
707
- return new Writable({
708
- write(_chunk, _encoding, callback) {
709
- callback();
710
- }
711
- });
712
- }
713
- function isOptionsWithCommand(value) {
714
- return typeof value === "object" && value !== null && "cmd" in value && Array.isArray(value.cmd);
715
- }
716
- function resolveCommand(cmdOrOpts, optsArg) {
717
- if (isOptionsWithCommand(cmdOrOpts))
718
- return { cmd: cmdOrOpts.cmd, opts: cmdOrOpts };
719
- return { cmd: cmdOrOpts, opts: optsArg ?? {} };
720
- }
721
- function resolveStdio(options) {
722
- if (options.stdio)
723
- return options.stdio;
724
- return [options.stdin ?? "ignore", options.stdout ?? "pipe", options.stderr ?? "inherit"];
725
- }
726
- function wrapNodeProcess(proc) {
727
- let exitCode = null;
728
- const exited = new Promise((resolve, reject) => {
729
- proc.on("exit", (code) => {
730
- exitCode = code ?? 1;
731
- resolve(exitCode);
732
- });
733
- proc.on("error", (error) => {
734
- if (exitCode === null) {
735
- exitCode = 1;
736
- reject(error);
737
- }
738
- });
739
- });
740
- return {
741
- get exitCode() {
742
- return exitCode;
743
- },
744
- exited,
745
- stdout: toReadableStream(proc.stdout),
746
- stderr: toReadableStream(proc.stderr),
747
- stdin: proc.stdin ?? emptyWritableStream(),
748
- pid: proc.pid,
749
- kill(signal) {
750
- if (proc.killed || exitCode !== null)
751
- return;
752
- proc.kill(signal);
753
- },
754
- ref() {
755
- proc.ref();
756
- },
757
- unref() {
758
- proc.unref();
759
- }
760
- };
761
- }
762
- function wrapBunProcess(proc) {
763
- return {
764
- ...proc,
765
- stdout: proc.stdout ?? emptyReadableStream(),
766
- stderr: proc.stderr ?? emptyReadableStream()
767
- };
768
- }
769
- function spawn(cmdOrOpts, opts) {
770
- const { cmd, opts: options } = resolveCommand(cmdOrOpts, opts);
771
- if (IS_BUN)
772
- return wrapBunProcess(runtime.Bun.spawn(cmd, options));
773
- const [bin, ...args] = cmd;
774
- if (!bin)
775
- throw new Error("spawn requires a command");
776
- return wrapNodeProcess(nodeSpawn(bin, args, {
777
- cwd: options.cwd,
778
- env: options.env,
779
- stdio: resolveStdio(options),
780
- detached: options.detached,
781
- signal: options.signal
782
- }));
783
- }
784
-
785
- // src/cli-binary-path-resolution.ts
786
- import { existsSync as existsSync2 } from "fs";
787
- var resolvedCliPath2 = null;
788
- var initPromise = null;
789
- async function getAstGrepPath() {
790
- if (resolvedCliPath2 !== null && existsSync2(resolvedCliPath2)) {
791
- return resolvedCliPath2;
792
- }
793
- if (initPromise) {
794
- return initPromise;
795
- }
796
- initPromise = (async () => {
797
- const syncPath = findSgCliPathSync();
798
- if (syncPath && existsSync2(syncPath)) {
799
- resolvedCliPath2 = syncPath;
800
- setSgCliPath(syncPath);
801
- return syncPath;
802
- }
803
- return null;
804
- })();
805
- return initPromise;
806
- }
807
-
808
- // src/process-output-timeout.ts
809
- async function collectProcessOutputWithTimeout(process2, timeoutMs) {
810
- const timeoutPromise = new Promise((_, reject) => {
811
- const timeoutId = setTimeout(() => {
812
- process2.kill();
813
- reject(new Error(`Search timeout after ${timeoutMs}ms`));
814
- }, timeoutMs);
815
- process2.exited.then(() => clearTimeout(timeoutId));
816
- });
817
- const stdoutPromise = process2.stdout ? new Response(process2.stdout).text() : Promise.resolve("");
818
- const stderrPromise = process2.stderr ? new Response(process2.stderr).text() : Promise.resolve("");
819
- const stdout = await Promise.race([stdoutPromise, timeoutPromise]);
820
- const stderr = await stderrPromise;
821
- const exitCode = await process2.exited;
822
- return { stdout, stderr, exitCode };
823
- }
824
-
825
- // src/runner.ts
826
- async function runSg2(options) {
827
- return runSg(options, {
828
- resolveBinary: resolveBinaryPath,
829
- spawnProcess
830
- });
831
- }
832
- async function resolveBinaryPath() {
833
- const cliPath = getSgCliPath();
834
- if (cliPath && existsSync3(cliPath)) {
835
- return cliPath;
836
- }
837
- const resolvedPath = await getAstGrepPath();
838
- if (!resolvedPath) {
839
- const noEntryError = new Error("ENOENT: ast-grep binary not found");
840
- Reflect.set(noEntryError, "code", "ENOENT");
841
- throw noEntryError;
842
- }
843
- return resolvedPath;
844
- }
845
- async function spawnProcess(binary, args, options) {
846
- const proc = spawn([binary, ...args], {
847
- cwd: options?.cwd,
848
- stdout: options?.stdout ?? "pipe",
849
- stderr: options?.stderr ?? "pipe"
850
- });
851
- return collectProcessOutputWithTimeout(proc, DEFAULT_TIMEOUT_MS);
852
- }
853
-
854
- // src/tool-descriptions.ts
855
- var AST_GREP_SEARCH_DESCRIPTION = [
856
- "Search code by AST structure (25 languages). This is NOT regex.",
857
- "",
858
- "Meta-variables (the only wildcards ast-grep understands):",
859
- " $VAR - one AST node (an identifier, expression, statement, ...)",
860
- " $$$ - zero or more nodes (argument lists, function bodies, ...)",
861
- " $$$VAR - same, captured by name",
862
- "Patterns must be complete, parseable source code. Each meta-variable replaces a whole node, not a substring.",
863
- "",
864
- "Regex syntax does NOT work - never pass these to pattern:",
865
- ' "foo|bar" alternation → run separate calls, or switch to grep',
866
- ' ".*", ".+" wildcards → use $$$ between AST fragments',
867
- ' "\\w", "\\d" escapes → use $VAR to capture any identifier',
868
- ' "[a-z]" class ranges → no AST equivalent',
869
- "For text search, cross-language search, or regex features, use the grep tool instead.",
870
- "",
871
- "Examples by language:",
872
- ` typescript/tsx "function $NAME($$$) { $$$ }", "console.log($$$)", "import { $$$ } from '$MOD'"`,
873
- ' python "def $FUNC($$$)", "class $C($$$)" - no trailing colon',
874
- ' go "func $NAME($$$) { $$$ }", "if err != nil { $$$ }"',
875
- ' rust "fn $NAME($$$) -> $RET { $$$ }", "impl $TRAIT for $T { $$$ }"',
876
- "",
877
- "On empty results the tool returns a hint naming the exact mistake. If the pattern is fundamentally text-shaped, stop retrying and switch to grep."
878
- ].join(`
879
- `);
880
- var AST_GREP_SEARCH_PATTERN_PARAM = "AST pattern - valid, parseable code using $VAR (one node) and $$$ (many nodes). NOT regex: no `|`, no `.*`, no `\\w`, no `[a-z]`. For text or alternation, use grep instead.";
881
- var AST_GREP_REPLACE_DESCRIPTION = [
882
- "Rewrite code by AST pattern (25 languages). Dry-run by default.",
883
- "Both pattern and rewrite use AST syntax ($VAR for one node, $$$ for many) - regex does NOT work.",
884
- "Meta-variables captured in pattern can be reused in rewrite to preserve matched content.",
885
- 'Example: pattern="console.log($MSG)" rewrite="logger.info($MSG)"',
886
- "For text-only replacement or regex features, use a text editor instead."
887
- ].join(`
888
- `);
889
-
890
- // src/workspace-paths.ts
891
- import { existsSync as existsSync4, realpathSync } from "node:fs";
892
- import { isAbsolute, relative, resolve } from "node:path";
893
- function normalizeWorkspaceDirectory(workspaceDirectory) {
894
- return realpathSync(resolve(workspaceDirectory));
895
- }
896
- function resolveWorkspacePaths(rawPaths, workspaceDirectory) {
897
- const workspace = normalizeWorkspaceDirectory(workspaceDirectory);
898
- const requestedPaths = rawPaths && rawPaths.length > 0 ? rawPaths : ["."];
899
- return requestedPaths.map((rawPath) => resolveWorkspacePath(rawPath, workspace));
900
- }
901
- function resolveWorkspacePath(rawPath, workspaceDirectory) {
902
- if (rawPath.length === 0)
903
- throw new Error("paths entries must be non-empty strings");
904
- if (rawPath.startsWith("-"))
905
- throw new Error(`paths entries must not start with '-': ${rawPath}`);
906
- if (rawPath.includes("\x00"))
907
- throw new Error("paths entries must not contain null bytes");
908
- if (isAbsolute(rawPath))
909
- return resolveAbsoluteWorkspacePath(rawPath, workspaceDirectory);
910
- const absolutePath = resolve(workspaceDirectory, rawPath);
911
- assertInsideWorkspace(absolutePath, workspaceDirectory, rawPath);
912
- if (existsSync4(absolutePath)) {
913
- const realPath = realpathSync(absolutePath);
914
- assertInsideWorkspace(realPath, workspaceDirectory, rawPath);
915
- }
916
- const normalizedPath = relative(workspaceDirectory, absolutePath);
917
- return normalizedPath === "" ? "." : normalizedPath;
918
- }
919
- function resolveAbsoluteWorkspacePath(rawPath, workspaceDirectory) {
920
- let realPath;
921
- try {
922
- realPath = realpathSync(rawPath);
923
- } catch {
924
- throw new Error(`absolute path entry does not exist: ${rawPath}`);
925
- }
926
- assertInsideWorkspace(realPath, workspaceDirectory, rawPath);
927
- const normalizedPath = relative(workspaceDirectory, realPath);
928
- return normalizedPath === "" ? "." : normalizedPath;
929
- }
930
- function assertInsideWorkspace(candidatePath, workspaceDirectory, rawPath) {
931
- const workspaceRelativePath = relative(workspaceDirectory, candidatePath);
932
- if (workspaceRelativePath === "" || !workspaceRelativePath.startsWith("..") && !isAbsolute(workspaceRelativePath))
933
- return;
934
- throw new Error(`paths entries must stay inside the workspace: ${rawPath}`);
935
- }
936
-
937
- // src/mcp.ts
938
- var SERVER_NAME = "ast_grep";
939
- var SERVER_VERSION = "0.1.0";
940
- var LANGUAGE_VALUES = CLI_LANGUAGES;
941
- var DISABLED_TOOLS_ENV = "OMO_AST_GREP_DISABLED_TOOLS";
942
- var AST_GREP_MCP_TOOLS = [
943
- {
944
- name: "search",
945
- title: "AST grep search",
946
- description: AST_GREP_SEARCH_DESCRIPTION,
947
- inputSchema: {
948
- type: "object",
949
- properties: {
950
- pattern: { type: "string", description: AST_GREP_SEARCH_PATTERN_PARAM },
951
- lang: { type: "string", enum: CLI_LANGUAGES, description: "Target language" },
952
- paths: { type: "array", items: { type: "string" }, description: "Paths to search" },
953
- globs: { type: "array", items: { type: "string" }, description: "Include/exclude globs" },
954
- context: { type: "number", description: "Context lines around each match" }
955
- },
956
- required: ["pattern", "lang"],
957
- additionalProperties: false
958
- }
959
- },
960
- {
961
- name: "replace",
962
- title: "AST grep replace",
963
- description: AST_GREP_REPLACE_DESCRIPTION,
964
- inputSchema: {
965
- type: "object",
966
- properties: {
967
- pattern: { type: "string", description: "AST pattern to match" },
968
- rewrite: { type: "string", description: "Replacement pattern" },
969
- lang: { type: "string", enum: CLI_LANGUAGES, description: "Target language" },
970
- paths: { type: "array", items: { type: "string" }, description: "Paths to search" },
971
- globs: { type: "array", items: { type: "string" }, description: "Include/exclude globs" },
972
- dryRun: { type: "boolean", description: "Preview changes without applying. Defaults to true." }
973
- },
974
- required: ["pattern", "rewrite", "lang"],
975
- additionalProperties: false
976
- }
977
- }
978
- ];
979
- async function handleAstGrepMcpRequest(input, options = {}) {
980
- if (!isRecord2(input))
981
- return errorResponse2(null, -32600, "Invalid Request");
982
- const id = jsonRpcId2(input.id);
983
- if (input.method === "notifications/initialized")
984
- return;
985
- if (input.method === "ping")
986
- return successResponse(id, {});
987
- if (input.method === "initialize") {
988
- return successResponse(id, {
989
- capabilities: { tools: { listChanged: false } },
990
- serverInfo: { name: SERVER_NAME, version: SERVER_VERSION },
991
- protocolVersion: requestedProtocolVersion(input.params)
992
- });
993
- }
994
- if (input.method === "tools/list")
995
- return successResponse(id, { tools: enabledTools(options) });
996
- if (input.method === "tools/call")
997
- return handleToolCall(id, input.params, options);
998
- return errorResponse2(id, -32601, `Method not found: ${String(input.method)}`);
999
- }
1000
- async function runMcpStdioServer(input = process.stdin, output = process.stdout, options = {}, stdioOptions = {}) {
1001
- await runJsonRpcStdioServer(handleAstGrepMcpRequest, input, output, options, stdioOptions);
1002
- }
1003
- async function handleToolCall(id, params, options) {
1004
- if (!isRecord2(params) || typeof params.name !== "string")
1005
- return errorResponse2(id, -32602, "tools/call requires params.name");
1006
- try {
1007
- const result = await executeAstGrepTool(params.name, params.arguments, options);
1008
- return successResponse(id, { content: result.content, isError: result.isError ?? false });
1009
- } catch (error) {
1010
- return successResponse(id, { content: [{ type: "text", text: messageFromError2(error) }], isError: true });
1011
- }
1012
- }
1013
- async function executeAstGrepTool(name, args, options) {
1014
- if (disabledToolNames(options).has(name))
1015
- throw new Error(`ast-grep tool is disabled: ${name}`);
1016
- const runner = options.runSg ?? runSg2;
1017
- const workspaceDirectory = normalizeWorkspaceDirectory(options.workspaceDirectory ?? process.env.OMO_AST_GREP_WORKSPACE ?? process.cwd());
1018
- if (name === "search") {
1019
- const input = parseSearchArgs(args, workspaceDirectory);
1020
- const result = await runner(input);
1021
- let output = formatSearchResult(result);
1022
- if (result.matches.length === 0 && !result.error) {
1023
- const hint = getPatternHint(input.pattern, input.lang);
1024
- if (hint)
1025
- output += `
1026
-
1027
- ${hint}`;
1028
- }
1029
- return { content: [{ type: "text", text: output }], isError: Boolean(result.error) };
1030
- }
1031
- if (name === "replace") {
1032
- const input = parseReplaceArgs(args, workspaceDirectory);
1033
- const result = await runner(input.options);
1034
- return { content: [{ type: "text", text: formatReplaceResult(result, input.dryRun) }], isError: Boolean(result.error) };
1035
- }
1036
- throw new Error(`Unknown ast-grep tool: ${name}`);
1037
- }
1038
- function parseSearchArgs(args, workspaceDirectory) {
1039
- const input = requireRecord(args);
1040
- return {
1041
- pattern: requireString(input, "pattern"),
1042
- lang: requireLanguage(input, "lang"),
1043
- cwd: workspaceDirectory,
1044
- paths: resolveWorkspacePaths(optionalStringArray(input, "paths"), workspaceDirectory),
1045
- globs: optionalStringArray(input, "globs"),
1046
- context: optionalNumber(input, "context")
1047
- };
1048
- }
1049
- function parseReplaceArgs(args, workspaceDirectory) {
1050
- const input = requireRecord(args);
1051
- const dryRun = optionalBoolean(input, "dryRun") ?? true;
1052
- return {
1053
- dryRun,
1054
- options: {
1055
- pattern: requireString(input, "pattern"),
1056
- rewrite: requireString(input, "rewrite"),
1057
- lang: requireLanguage(input, "lang"),
1058
- cwd: workspaceDirectory,
1059
- paths: resolveWorkspacePaths(optionalStringArray(input, "paths"), workspaceDirectory),
1060
- globs: optionalStringArray(input, "globs"),
1061
- updateAll: !dryRun
1062
- }
1063
- };
1064
- }
1065
- function requireRecord(value) {
1066
- if (!isRecord2(value))
1067
- throw new Error("Tool arguments must be an object");
1068
- return value;
1069
- }
1070
- function requireString(input, key) {
1071
- const value = input[key];
1072
- if (typeof value !== "string" || value.length === 0)
1073
- throw new Error(`${key} must be a non-empty string`);
1074
- return value;
1075
- }
1076
- function requireLanguage(input, key) {
1077
- const value = requireString(input, key);
1078
- if (!isCliLanguage(value))
1079
- throw new Error(`${key} must be one of: ${LANGUAGE_VALUES.join(", ")}`);
1080
- return value;
1081
- }
1082
- function isCliLanguage(value) {
1083
- return LANGUAGE_VALUES.includes(value);
1084
- }
1085
- function optionalStringArray(input, key) {
1086
- const value = input[key];
1087
- if (value === undefined)
1088
- return;
1089
- if (!Array.isArray(value) || !value.every((item) => typeof item === "string"))
1090
- throw new Error(`${key} must be an array of strings`);
1091
- return value;
1092
- }
1093
- function enabledTools(options) {
1094
- const disabled = disabledToolNames(options);
1095
- return AST_GREP_MCP_TOOLS.filter((tool) => !disabled.has(tool.name));
1096
- }
1097
- function disabledToolNames(options) {
1098
- const fromOptions = options.disabledTools ?? [];
1099
- const fromEnv = process.env[DISABLED_TOOLS_ENV]?.split(",") ?? [];
1100
- return new Set([...fromOptions, ...fromEnv].map((tool) => tool.trim()).filter(Boolean));
1101
- }
1102
- function optionalNumber(input, key) {
1103
- const value = input[key];
1104
- if (value === undefined)
1105
- return;
1106
- if (typeof value !== "number")
1107
- throw new Error(`${key} must be a number`);
1108
- return value;
1109
- }
1110
- function optionalBoolean(input, key) {
1111
- const value = input[key];
1112
- if (value === undefined)
1113
- return;
1114
- if (typeof value !== "boolean")
1115
- throw new Error(`${key} must be a boolean`);
1116
- return value;
1117
- }
1118
- function successResponse(id, result) {
1119
- return { jsonrpc: "2.0", id, result };
1120
- }
1121
- function errorResponse2(id, code, message, data) {
1122
- return { jsonrpc: "2.0", id, error: data === undefined ? { code, message } : { code, message, data } };
1123
- }
1124
- function requestedProtocolVersion(params) {
1125
- if (!isRecord2(params) || typeof params.protocolVersion !== "string")
1126
- return "2024-11-05";
1127
- return params.protocolVersion;
1128
- }
1129
- function jsonRpcId2(value) {
1130
- return typeof value === "string" || typeof value === "number" || value === null ? value : null;
1131
- }
1132
- function isRecord2(value) {
1133
- return typeof value === "object" && value !== null && !Array.isArray(value);
1134
- }
1135
- function messageFromError2(error) {
1136
- return error instanceof Error ? error.message : String(error);
1137
- }
1138
-
1139
- // src/cli.ts
1140
- async function main() {
1141
- const [command = "mcp"] = argv.slice(2);
1142
- if (command === "mcp") {
1143
- await runMcpStdioServer(process.stdin, process.stdout, {}, {
1144
- log: writeMcpLifecycleLog,
1145
- onIdleTimeout: () => {
1146
- process.exit(0);
1147
- }
1148
- });
1149
- return;
1150
- }
1151
- stderr.write(`Usage: omo-ast-grep [mcp]
1152
- `);
1153
- process.exitCode = 2;
1154
- }
1155
- main().catch((error) => {
1156
- stderr.write(`${error instanceof Error ? error.stack ?? error.message : String(error)}
1157
- `);
1158
- process.exitCode = 1;
1159
- });