@hiai-gg/hiai-opencode 0.1.6 → 0.1.8

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 (1219) hide show
  1. package/.env.example +7 -0
  2. package/AGENTS.md +81 -1
  3. package/ARCHITECTURE.md +45 -3
  4. package/README.md +99 -18
  5. package/assets/cli/hiai-opencode.mjs +78 -0
  6. package/config/hiai-opencode.schema.json +16 -1
  7. package/dist/agents/agent-skills.d.ts +7 -0
  8. package/dist/agents/brainstormer.d.ts +7 -0
  9. package/dist/agents/coder/agent.d.ts +2 -2
  10. package/dist/agents/coder/gpt.d.ts +2 -1
  11. package/dist/agents/designer.d.ts +7 -0
  12. package/dist/agents/dynamic-agent-core-sections.d.ts +3 -1
  13. package/dist/agents/guard/agent.d.ts +4 -15
  14. package/dist/agents/prompt-library/index.d.ts +1 -0
  15. package/dist/agents/prompt-library/integration-map.d.ts +9 -0
  16. package/dist/agents/strategist/system-prompt.d.ts +5 -8
  17. package/dist/agents/sub/agent.d.ts +6 -8
  18. package/dist/agents/sub/index.d.ts +0 -4
  19. package/dist/agents/types.d.ts +3 -1
  20. package/dist/config/index.d.ts +0 -1
  21. package/dist/config/platform-schema.d.ts +32 -0
  22. package/dist/config/schema/hooks.d.ts +0 -2
  23. package/dist/config/schema/index.d.ts +0 -2
  24. package/dist/config/schema/oh-my-opencode-config.d.ts +0 -6
  25. package/dist/config/types.d.ts +3 -1
  26. package/dist/create-hooks.d.ts +0 -2
  27. package/dist/features/builtin-skills/skills/index.d.ts +1 -0
  28. package/dist/features/builtin-skills/skills/website-copywriting.d.ts +2 -0
  29. package/dist/hooks/agent-usage-reminder/constants.d.ts +1 -1
  30. package/dist/hooks/index.d.ts +0 -2
  31. package/dist/hooks/keyword-detector/ultrawork/default.d.ts +1 -1
  32. package/dist/hooks/keyword-detector/ultrawork/gemini.d.ts +1 -1
  33. package/dist/hooks/keyword-detector/ultrawork/gpt.d.ts +1 -1
  34. package/dist/hooks/keyword-detector/ultrawork/intent-gate.d.ts +0 -0
  35. package/dist/hooks/keyword-detector/ultrawork/planner.d.ts +1 -1
  36. package/dist/index.js +9119 -156678
  37. package/dist/mcp/index.d.ts +0 -1
  38. package/dist/mcp/registry.d.ts +1 -1
  39. package/dist/plugin/hooks/create-core-hooks.d.ts +0 -2
  40. package/dist/plugin/hooks/create-session-hooks.d.ts +1 -3
  41. package/dist/plugin/startup-diagnostics.d.ts +1 -0
  42. package/dist/shared/index.d.ts +1 -0
  43. package/dist/shared/learn-system.d.ts +18 -0
  44. package/dist/shared/logger.d.ts +2 -0
  45. package/dist/shared/mode-routing.d.ts +6 -0
  46. package/dist/tools/delegate-task/git-categories.d.ts +2 -0
  47. package/dist/tools/delegate-task/sub-agent.d.ts +2 -0
  48. package/dist/tools/skill-mcp/constants.d.ts +1 -1
  49. package/hiai-opencode.json +48 -20
  50. package/package.json +8 -5
  51. package/dist/agents/bob/default.d.ts +0 -9
  52. package/dist/agents/bob/gemini.d.ts +0 -20
  53. package/dist/agents/bob/gpt-pro.d.ts +0 -26
  54. package/dist/agents/bob/index.d.ts +0 -11
  55. package/dist/agents/coder/gpt-codex.d.ts +0 -20
  56. package/dist/agents/coder/gpt-pro.d.ts +0 -24
  57. package/dist/agents/guard/gemini-prompt-sections.d.ts +0 -12
  58. package/dist/agents/guard/gemini.d.ts +0 -2
  59. package/dist/agents/guard/gpt-prompt-sections.d.ts +0 -12
  60. package/dist/agents/guard/gpt.d.ts +0 -2
  61. package/dist/agents/strategist/gemini.d.ts +0 -12
  62. package/dist/agents/strategist/gpt.d.ts +0 -11
  63. package/dist/agents/sub/gemini.d.ts +0 -10
  64. package/dist/agents/sub/gpt-codex.d.ts +0 -8
  65. package/dist/agents/sub/gpt-pro.d.ts +0 -11
  66. package/dist/agents/sub/gpt.d.ts +0 -9
  67. package/dist/config/schema/websearch.d.ts +0 -13
  68. package/dist/hooks/no-bob-gpt/hook.d.ts +0 -16
  69. package/dist/hooks/no-bob-gpt/index.d.ts +0 -1
  70. package/dist/hooks/no-coder-non-gpt/hook.d.ts +0 -20
  71. package/dist/hooks/no-coder-non-gpt/index.d.ts +0 -1
  72. package/dist/mcp/grep-app.d.ts +0 -6
  73. package/dist/mcp/omo-mcp-index.d.ts +0 -10
  74. package/dist/mcp/websearch.d.ts +0 -11
  75. package/dist/skills/index.d.ts +0 -7
  76. package/dist/testing/module-mock-lifecycle.d.ts +0 -21
  77. package/src/AGENTS.md +0 -41
  78. package/src/agents/AGENTS.md +0 -74
  79. package/src/agents/agent-builder.ts +0 -50
  80. package/src/agents/bob/AGENTS.md +0 -29
  81. package/src/agents/bob/default.ts +0 -133
  82. package/src/agents/bob/gemini.ts +0 -237
  83. package/src/agents/bob/gpt-pro.ts +0 -431
  84. package/src/agents/bob/index.ts +0 -19
  85. package/src/agents/bob.ts +0 -529
  86. package/src/agents/builtin-agents/agent-overrides.ts +0 -75
  87. package/src/agents/builtin-agents/available-skills.ts +0 -35
  88. package/src/agents/builtin-agents/bob-agent.ts +0 -96
  89. package/src/agents/builtin-agents/coder-agent.ts +0 -98
  90. package/src/agents/builtin-agents/environment-context.ts +0 -16
  91. package/src/agents/builtin-agents/general-agents.ts +0 -122
  92. package/src/agents/builtin-agents/guard-agent.ts +0 -66
  93. package/src/agents/builtin-agents/model-resolution.ts +0 -31
  94. package/src/agents/builtin-agents/resolve-file-uri.ts +0 -42
  95. package/src/agents/builtin-agents.ts +0 -194
  96. package/src/agents/coder/AGENTS.md +0 -34
  97. package/src/agents/coder/agent.ts +0 -162
  98. package/src/agents/coder/gpt-codex.ts +0 -405
  99. package/src/agents/coder/gpt-pro.ts +0 -320
  100. package/src/agents/coder/gpt.ts +0 -254
  101. package/src/agents/coder/index.ts +0 -8
  102. package/src/agents/critic/agent.ts +0 -105
  103. package/src/agents/custom-agent-summaries.ts +0 -61
  104. package/src/agents/dynamic-agent-category-skills-guide.ts +0 -138
  105. package/src/agents/dynamic-agent-core-sections.ts +0 -273
  106. package/src/agents/dynamic-agent-policy-sections.ts +0 -182
  107. package/src/agents/dynamic-agent-prompt-builder.ts +0 -32
  108. package/src/agents/dynamic-agent-prompt-types.ts +0 -24
  109. package/src/agents/dynamic-agent-tool-categorization.ts +0 -45
  110. package/src/agents/env-context.ts +0 -16
  111. package/src/agents/gpt-apply-patch-guard.ts +0 -7
  112. package/src/agents/guard/agent.ts +0 -146
  113. package/src/agents/guard/default-prompt-sections.ts +0 -305
  114. package/src/agents/guard/default.ts +0 -22
  115. package/src/agents/guard/gemini-prompt-sections.ts +0 -293
  116. package/src/agents/guard/gemini.ts +0 -22
  117. package/src/agents/guard/gpt-prompt-sections.ts +0 -296
  118. package/src/agents/guard/gpt.ts +0 -22
  119. package/src/agents/guard/index.ts +0 -2
  120. package/src/agents/guard/prompt-section-builder.ts +0 -104
  121. package/src/agents/guard/shared-prompt.ts +0 -172
  122. package/src/agents/index.ts +0 -5
  123. package/src/agents/platform-adapter.ts +0 -236
  124. package/src/agents/platform-manager.ts +0 -57
  125. package/src/agents/prompt-library/identity.ts +0 -14
  126. package/src/agents/prompt-library/index.ts +0 -7
  127. package/src/agents/prompt-library/intent-gate.ts +0 -149
  128. package/src/agents/prompt-library/orchestration.ts +0 -60
  129. package/src/agents/prompt-library/platform.ts +0 -36
  130. package/src/agents/prompt-library/specialized.ts +0 -39
  131. package/src/agents/prompt-library/strategy.ts +0 -80
  132. package/src/agents/prompt-library/todo-discipline.ts +0 -23
  133. package/src/agents/quality-guardian.ts +0 -76
  134. package/src/agents/researcher.ts +0 -73
  135. package/src/agents/strategist/AGENTS.md +0 -37
  136. package/src/agents/strategist/behavioral-summary.ts +0 -79
  137. package/src/agents/strategist/gemini.ts +0 -333
  138. package/src/agents/strategist/gpt.ts +0 -460
  139. package/src/agents/strategist/high-accuracy-mode.ts +0 -78
  140. package/src/agents/strategist/identity-constraints.ts +0 -336
  141. package/src/agents/strategist/index.ts +0 -6
  142. package/src/agents/strategist/interview-mode.ts +0 -335
  143. package/src/agents/strategist/plan-generation.ts +0 -213
  144. package/src/agents/strategist/plan-template.ts +0 -325
  145. package/src/agents/strategist/system-prompt.ts +0 -68
  146. package/src/agents/sub/agent.ts +0 -141
  147. package/src/agents/sub/default.ts +0 -52
  148. package/src/agents/sub/gemini.ts +0 -194
  149. package/src/agents/sub/gpt-codex.ts +0 -156
  150. package/src/agents/sub/gpt-pro.ts +0 -161
  151. package/src/agents/sub/gpt.ts +0 -157
  152. package/src/agents/sub/index.ts +0 -13
  153. package/src/agents/types.ts +0 -144
  154. package/src/agents/ui.ts +0 -58
  155. package/src/config/data/model-capabilities.json +0 -40690
  156. package/src/config/defaults.ts +0 -211
  157. package/src/config/hiai-opencode.schema.json +0 -12
  158. package/src/config/index.ts +0 -66
  159. package/src/config/loader.test.ts +0 -80
  160. package/src/config/loader.ts +0 -188
  161. package/src/config/model-slots-and-export.test.ts +0 -55
  162. package/src/config/platform-schema.ts +0 -240
  163. package/src/config/schema/agent-definitions.ts +0 -5
  164. package/src/config/schema/agent-names.ts +0 -66
  165. package/src/config/schema/agent-overrides.ts +0 -97
  166. package/src/config/schema/babysitting.ts +0 -7
  167. package/src/config/schema/background-task.ts +0 -29
  168. package/src/config/schema/bob-agent.ts +0 -11
  169. package/src/config/schema/bob.ts +0 -17
  170. package/src/config/schema/browser-automation.ts +0 -24
  171. package/src/config/schema/categories.ts +0 -45
  172. package/src/config/schema/claude-code.ts +0 -13
  173. package/src/config/schema/commands.ts +0 -16
  174. package/src/config/schema/comment-checker.ts +0 -8
  175. package/src/config/schema/dynamic-context-pruning.ts +0 -53
  176. package/src/config/schema/experimental.ts +0 -27
  177. package/src/config/schema/fallback-models.ts +0 -31
  178. package/src/config/schema/fast-apply.ts +0 -14
  179. package/src/config/schema/git-env-prefix.ts +0 -28
  180. package/src/config/schema/git-master.ts +0 -14
  181. package/src/config/schema/hooks.ts +0 -61
  182. package/src/config/schema/index.ts +0 -54
  183. package/src/config/schema/internal/permission.ts +0 -20
  184. package/src/config/schema/model-capabilities.ts +0 -10
  185. package/src/config/schema/notification.ts +0 -8
  186. package/src/config/schema/oh-my-opencode-config.ts +0 -90
  187. package/src/config/schema/openclaw.ts +0 -50
  188. package/src/config/schema/ralph-loop.ts +0 -11
  189. package/src/config/schema/runtime-fallback.ts +0 -18
  190. package/src/config/schema/skill-discovery.ts +0 -25
  191. package/src/config/schema/skills.ts +0 -39
  192. package/src/config/schema/start-work.ts +0 -7
  193. package/src/config/schema/tmux.ts +0 -28
  194. package/src/config/schema/websearch.ts +0 -15
  195. package/src/config/types.ts +0 -219
  196. package/src/create-hooks.ts +0 -93
  197. package/src/create-managers.ts +0 -116
  198. package/src/create-runtime-tmux-config.ts +0 -18
  199. package/src/create-tools.ts +0 -56
  200. package/src/features/background-agent/AGENTS.md +0 -56
  201. package/src/features/background-agent/abort-with-timeout.ts +0 -35
  202. package/src/features/background-agent/background-task-notification-template.ts +0 -74
  203. package/src/features/background-agent/compaction-aware-message-resolver.ts +0 -164
  204. package/src/features/background-agent/concurrency.ts +0 -137
  205. package/src/features/background-agent/constants.ts +0 -58
  206. package/src/features/background-agent/duration-formatter.ts +0 -14
  207. package/src/features/background-agent/error-classifier.ts +0 -83
  208. package/src/features/background-agent/fallback-retry-handler.ts +0 -134
  209. package/src/features/background-agent/index.ts +0 -2
  210. package/src/features/background-agent/loop-detector.ts +0 -102
  211. package/src/features/background-agent/manager.ts +0 -2220
  212. package/src/features/background-agent/opencode-client.ts +0 -3
  213. package/src/features/background-agent/process-cleanup.ts +0 -98
  214. package/src/features/background-agent/remove-task-toast-tracking.ts +0 -8
  215. package/src/features/background-agent/session-existence.ts +0 -57
  216. package/src/features/background-agent/session-idle-event-handler.ts +0 -93
  217. package/src/features/background-agent/session-status-classifier.ts +0 -20
  218. package/src/features/background-agent/spawner/parent-directory-resolver.ts +0 -24
  219. package/src/features/background-agent/spawner.ts +0 -327
  220. package/src/features/background-agent/state.ts +0 -199
  221. package/src/features/background-agent/subagent-spawn-limits.ts +0 -97
  222. package/src/features/background-agent/task-history.ts +0 -79
  223. package/src/features/background-agent/task-poller.ts +0 -225
  224. package/src/features/background-agent/types.ts +0 -100
  225. package/src/features/boulder-state/constants.ts +0 -13
  226. package/src/features/boulder-state/index.ts +0 -4
  227. package/src/features/boulder-state/storage.ts +0 -336
  228. package/src/features/boulder-state/top-level-task.ts +0 -78
  229. package/src/features/boulder-state/types.ts +0 -61
  230. package/src/features/builtin-commands/commands.ts +0 -157
  231. package/src/features/builtin-commands/index.ts +0 -2
  232. package/src/features/builtin-commands/templates/doctor.ts +0 -43
  233. package/src/features/builtin-commands/templates/handoff.ts +0 -177
  234. package/src/features/builtin-commands/templates/init-deep.ts +0 -305
  235. package/src/features/builtin-commands/templates/mcp-status.ts +0 -36
  236. package/src/features/builtin-commands/templates/ralph-loop.ts +0 -66
  237. package/src/features/builtin-commands/templates/refactor.ts +0 -619
  238. package/src/features/builtin-commands/templates/remove-ai-slops.ts +0 -96
  239. package/src/features/builtin-commands/templates/start-work.ts +0 -128
  240. package/src/features/builtin-commands/templates/stop-continuation.ts +0 -13
  241. package/src/features/builtin-commands/types.ts +0 -9
  242. package/src/features/builtin-skills/index.ts +0 -2
  243. package/src/features/builtin-skills/materialize.ts +0 -338
  244. package/src/features/builtin-skills/skills/ai-slop-remover.ts +0 -145
  245. package/src/features/builtin-skills/skills/dev-browser.ts +0 -221
  246. package/src/features/builtin-skills/skills/frontend-ui-ux.ts +0 -79
  247. package/src/features/builtin-skills/skills/git-master-sections/commit-workflow.ts +0 -509
  248. package/src/features/builtin-skills/skills/git-master-sections/history-search-workflow.ts +0 -229
  249. package/src/features/builtin-skills/skills/git-master-sections/overview.ts +0 -64
  250. package/src/features/builtin-skills/skills/git-master-sections/quick-reference.ts +0 -86
  251. package/src/features/builtin-skills/skills/git-master-sections/rebase-workflow.ts +0 -181
  252. package/src/features/builtin-skills/skills/git-master-skill-metadata.ts +0 -4
  253. package/src/features/builtin-skills/skills/git-master.ts +0 -28
  254. package/src/features/builtin-skills/skills/hiai-opencode-setup.ts +0 -69
  255. package/src/features/builtin-skills/skills/index.ts +0 -8
  256. package/src/features/builtin-skills/skills/playwright-cli.ts +0 -268
  257. package/src/features/builtin-skills/skills/playwright.ts +0 -488
  258. package/src/features/builtin-skills/skills/review-work.ts +0 -536
  259. package/src/features/builtin-skills/skills.ts +0 -48
  260. package/src/features/builtin-skills/types.ts +0 -16
  261. package/src/features/claude-code-agent-loader/agent-definitions-loader.ts +0 -87
  262. package/src/features/claude-code-agent-loader/claude-model-mapper.ts +0 -53
  263. package/src/features/claude-code-agent-loader/index.ts +0 -5
  264. package/src/features/claude-code-agent-loader/json-agent-loader.ts +0 -53
  265. package/src/features/claude-code-agent-loader/loader.ts +0 -86
  266. package/src/features/claude-code-agent-loader/opencode-config-agents-reader.ts +0 -125
  267. package/src/features/claude-code-agent-loader/types.ts +0 -31
  268. package/src/features/claude-code-command-loader/index.ts +0 -2
  269. package/src/features/claude-code-command-loader/loader.ts +0 -169
  270. package/src/features/claude-code-command-loader/types.ts +0 -46
  271. package/src/features/claude-code-mcp-loader/configure-allowed-env-vars.ts +0 -48
  272. package/src/features/claude-code-mcp-loader/env-expander.ts +0 -51
  273. package/src/features/claude-code-mcp-loader/index.ts +0 -12
  274. package/src/features/claude-code-mcp-loader/loader.ts +0 -156
  275. package/src/features/claude-code-mcp-loader/scope-filter.ts +0 -17
  276. package/src/features/claude-code-mcp-loader/transformer.ts +0 -57
  277. package/src/features/claude-code-mcp-loader/types.ts +0 -51
  278. package/src/features/claude-code-plugin-loader/agent-loader.ts +0 -59
  279. package/src/features/claude-code-plugin-loader/command-loader.ts +0 -53
  280. package/src/features/claude-code-plugin-loader/discovery.ts +0 -251
  281. package/src/features/claude-code-plugin-loader/hook-loader.ts +0 -26
  282. package/src/features/claude-code-plugin-loader/index.ts +0 -10
  283. package/src/features/claude-code-plugin-loader/loader.ts +0 -134
  284. package/src/features/claude-code-plugin-loader/mcp-server-loader.ts +0 -59
  285. package/src/features/claude-code-plugin-loader/plugin-path-resolver.ts +0 -23
  286. package/src/features/claude-code-plugin-loader/scope-filter.ts +0 -29
  287. package/src/features/claude-code-plugin-loader/skill-loader.ts +0 -62
  288. package/src/features/claude-code-plugin-loader/types.ts +0 -255
  289. package/src/features/claude-code-session-state/index.ts +0 -1
  290. package/src/features/claude-code-session-state/state.ts +0 -154
  291. package/src/features/claude-tasks/session-storage.ts +0 -52
  292. package/src/features/claude-tasks/storage.ts +0 -169
  293. package/src/features/claude-tasks/types.ts +0 -20
  294. package/src/features/context-injector/collector.ts +0 -91
  295. package/src/features/context-injector/index.ts +0 -14
  296. package/src/features/context-injector/injector.ts +0 -167
  297. package/src/features/context-injector/types.ts +0 -91
  298. package/src/features/hook-message-injector/constants.ts +0 -1
  299. package/src/features/hook-message-injector/index.ts +0 -11
  300. package/src/features/hook-message-injector/injector.ts +0 -437
  301. package/src/features/hook-message-injector/types.ts +0 -49
  302. package/src/features/mcp-oauth/AGENTS.md +0 -54
  303. package/src/features/mcp-oauth/callback-server.ts +0 -106
  304. package/src/features/mcp-oauth/dcr.ts +0 -98
  305. package/src/features/mcp-oauth/discovery.ts +0 -134
  306. package/src/features/mcp-oauth/oauth-authorization-flow.ts +0 -150
  307. package/src/features/mcp-oauth/provider.ts +0 -215
  308. package/src/features/mcp-oauth/refresh-mutex.ts +0 -58
  309. package/src/features/mcp-oauth/resource-indicator.ts +0 -16
  310. package/src/features/mcp-oauth/schema.ts +0 -8
  311. package/src/features/mcp-oauth/step-up.ts +0 -79
  312. package/src/features/mcp-oauth/storage.ts +0 -155
  313. package/src/features/opencode-skill-loader/AGENTS.md +0 -59
  314. package/src/features/opencode-skill-loader/allowed-tools-parser.ts +0 -9
  315. package/src/features/opencode-skill-loader/async-loader.ts +0 -213
  316. package/src/features/opencode-skill-loader/blocking.ts +0 -62
  317. package/src/features/opencode-skill-loader/config-source-discovery.ts +0 -114
  318. package/src/features/opencode-skill-loader/discover-worker.ts +0 -56
  319. package/src/features/opencode-skill-loader/git-master-template-injection.ts +0 -150
  320. package/src/features/opencode-skill-loader/index.ts +0 -17
  321. package/src/features/opencode-skill-loader/loaded-skill-from-path.ts +0 -73
  322. package/src/features/opencode-skill-loader/loaded-skill-template-extractor.ts +0 -16
  323. package/src/features/opencode-skill-loader/loader.ts +0 -183
  324. package/src/features/opencode-skill-loader/merger/builtin-skill-converter.ts +0 -26
  325. package/src/features/opencode-skill-loader/merger/config-skill-entry-loader.ts +0 -117
  326. package/src/features/opencode-skill-loader/merger/scope-priority.ts +0 -10
  327. package/src/features/opencode-skill-loader/merger/skill-definition-merger.ts +0 -31
  328. package/src/features/opencode-skill-loader/merger/skills-config-normalizer.ts +0 -19
  329. package/src/features/opencode-skill-loader/merger.ts +0 -96
  330. package/src/features/opencode-skill-loader/skill-content.ts +0 -11
  331. package/src/features/opencode-skill-loader/skill-deduplication.ts +0 -13
  332. package/src/features/opencode-skill-loader/skill-definition-record.ts +0 -11
  333. package/src/features/opencode-skill-loader/skill-directory-loader.ts +0 -112
  334. package/src/features/opencode-skill-loader/skill-discovery.ts +0 -76
  335. package/src/features/opencode-skill-loader/skill-mcp-config.ts +0 -45
  336. package/src/features/opencode-skill-loader/skill-resolution-options.ts +0 -9
  337. package/src/features/opencode-skill-loader/skill-template-resolver.ts +0 -97
  338. package/src/features/opencode-skill-loader/types.ts +0 -38
  339. package/src/features/run-continuation-state/constants.ts +0 -1
  340. package/src/features/run-continuation-state/index.ts +0 -3
  341. package/src/features/run-continuation-state/storage.ts +0 -80
  342. package/src/features/run-continuation-state/types.ts +0 -15
  343. package/src/features/skill-mcp-manager/AGENTS.md +0 -111
  344. package/src/features/skill-mcp-manager/cleanup.ts +0 -153
  345. package/src/features/skill-mcp-manager/connection-type.ts +0 -26
  346. package/src/features/skill-mcp-manager/connection.ts +0 -146
  347. package/src/features/skill-mcp-manager/env-cleaner.ts +0 -59
  348. package/src/features/skill-mcp-manager/error-redaction.ts +0 -47
  349. package/src/features/skill-mcp-manager/http-client.ts +0 -126
  350. package/src/features/skill-mcp-manager/index.ts +0 -2
  351. package/src/features/skill-mcp-manager/manager.ts +0 -178
  352. package/src/features/skill-mcp-manager/oauth-handler.ts +0 -160
  353. package/src/features/skill-mcp-manager/stdio-client.ts +0 -112
  354. package/src/features/skill-mcp-manager/types.ts +0 -96
  355. package/src/features/task-toast-manager/index.ts +0 -2
  356. package/src/features/task-toast-manager/manager.ts +0 -251
  357. package/src/features/task-toast-manager/types.ts +0 -29
  358. package/src/features/tmux-subagent/action-executor-core.ts +0 -82
  359. package/src/features/tmux-subagent/action-executor.ts +0 -137
  360. package/src/features/tmux-subagent/cleanup.ts +0 -42
  361. package/src/features/tmux-subagent/decision-engine.ts +0 -22
  362. package/src/features/tmux-subagent/event-handlers.ts +0 -6
  363. package/src/features/tmux-subagent/grid-planning.ts +0 -137
  364. package/src/features/tmux-subagent/index.ts +0 -16
  365. package/src/features/tmux-subagent/manager.ts +0 -969
  366. package/src/features/tmux-subagent/oldest-agent-pane.ts +0 -37
  367. package/src/features/tmux-subagent/pane-split-availability.ts +0 -77
  368. package/src/features/tmux-subagent/pane-state-parser.ts +0 -135
  369. package/src/features/tmux-subagent/pane-state-querier.ts +0 -76
  370. package/src/features/tmux-subagent/polling-constants.ts +0 -6
  371. package/src/features/tmux-subagent/polling-manager.ts +0 -167
  372. package/src/features/tmux-subagent/polling.ts +0 -183
  373. package/src/features/tmux-subagent/session-created-event.ts +0 -44
  374. package/src/features/tmux-subagent/session-created-handler.ts +0 -175
  375. package/src/features/tmux-subagent/session-deleted-handler.ts +0 -50
  376. package/src/features/tmux-subagent/session-message-count.ts +0 -3
  377. package/src/features/tmux-subagent/session-ready-waiter.ts +0 -44
  378. package/src/features/tmux-subagent/session-status-parser.ts +0 -17
  379. package/src/features/tmux-subagent/spawn-action-decider.ts +0 -147
  380. package/src/features/tmux-subagent/spawn-target-finder.ts +0 -146
  381. package/src/features/tmux-subagent/tmux-grid-constants.ts +0 -57
  382. package/src/features/tmux-subagent/tracked-session-state.ts +0 -29
  383. package/src/features/tmux-subagent/types.ts +0 -54
  384. package/src/features/tool-metadata-store/index.ts +0 -7
  385. package/src/features/tool-metadata-store/store.ts +0 -84
  386. package/src/hooks/agent-usage-reminder/constants.ts +0 -52
  387. package/src/hooks/agent-usage-reminder/hook.ts +0 -134
  388. package/src/hooks/agent-usage-reminder/index.ts +0 -1
  389. package/src/hooks/agent-usage-reminder/storage.ts +0 -42
  390. package/src/hooks/agent-usage-reminder/types.ts +0 -6
  391. package/src/hooks/anthropic-context-window-limit-recovery/AGENTS.md +0 -49
  392. package/src/hooks/anthropic-context-window-limit-recovery/aggressive-truncation-strategy.ts +0 -87
  393. package/src/hooks/anthropic-context-window-limit-recovery/client.ts +0 -21
  394. package/src/hooks/anthropic-context-window-limit-recovery/deduplication-recovery.ts +0 -77
  395. package/src/hooks/anthropic-context-window-limit-recovery/empty-content-recovery-sdk.ts +0 -199
  396. package/src/hooks/anthropic-context-window-limit-recovery/empty-content-recovery.ts +0 -149
  397. package/src/hooks/anthropic-context-window-limit-recovery/executor.ts +0 -83
  398. package/src/hooks/anthropic-context-window-limit-recovery/index.ts +0 -8
  399. package/src/hooks/anthropic-context-window-limit-recovery/message-builder.ts +0 -190
  400. package/src/hooks/anthropic-context-window-limit-recovery/message-storage-directory.ts +0 -40
  401. package/src/hooks/anthropic-context-window-limit-recovery/parser.ts +0 -209
  402. package/src/hooks/anthropic-context-window-limit-recovery/pruning-deduplication.ts +0 -189
  403. package/src/hooks/anthropic-context-window-limit-recovery/pruning-tool-output-truncation.ts +0 -142
  404. package/src/hooks/anthropic-context-window-limit-recovery/pruning-types.ts +0 -44
  405. package/src/hooks/anthropic-context-window-limit-recovery/recovery-hook.test-support.ts +0 -119
  406. package/src/hooks/anthropic-context-window-limit-recovery/recovery-hook.ts +0 -193
  407. package/src/hooks/anthropic-context-window-limit-recovery/recovery-strategy.ts +0 -2
  408. package/src/hooks/anthropic-context-window-limit-recovery/session-timeout-map.ts +0 -20
  409. package/src/hooks/anthropic-context-window-limit-recovery/state.ts +0 -78
  410. package/src/hooks/anthropic-context-window-limit-recovery/storage-paths.ts +0 -6
  411. package/src/hooks/anthropic-context-window-limit-recovery/storage.ts +0 -18
  412. package/src/hooks/anthropic-context-window-limit-recovery/summarize-retry-strategy.ts +0 -218
  413. package/src/hooks/anthropic-context-window-limit-recovery/target-token-truncation.ts +0 -196
  414. package/src/hooks/anthropic-context-window-limit-recovery/tool-part-types.ts +0 -38
  415. package/src/hooks/anthropic-context-window-limit-recovery/tool-result-storage-sdk.ts +0 -123
  416. package/src/hooks/anthropic-context-window-limit-recovery/tool-result-storage.ts +0 -119
  417. package/src/hooks/anthropic-context-window-limit-recovery/types.ts +0 -44
  418. package/src/hooks/anthropic-effort/hook.ts +0 -93
  419. package/src/hooks/anthropic-effort/index.ts +0 -1
  420. package/src/hooks/auto-slash-command/constants.ts +0 -12
  421. package/src/hooks/auto-slash-command/detector.ts +0 -88
  422. package/src/hooks/auto-slash-command/executor.ts +0 -165
  423. package/src/hooks/auto-slash-command/hook.ts +0 -238
  424. package/src/hooks/auto-slash-command/index.ts +0 -7
  425. package/src/hooks/auto-slash-command/processed-command-store.ts +0 -74
  426. package/src/hooks/auto-slash-command/types.ts +0 -42
  427. package/src/hooks/background-notification/hook.ts +0 -54
  428. package/src/hooks/background-notification/index.ts +0 -2
  429. package/src/hooks/background-notification/types.ts +0 -5
  430. package/src/hooks/bash-file-read-guard.ts +0 -44
  431. package/src/hooks/category-skill-reminder/formatter.ts +0 -37
  432. package/src/hooks/category-skill-reminder/hook.ts +0 -142
  433. package/src/hooks/category-skill-reminder/index.ts +0 -1
  434. package/src/hooks/claude-code-hooks/AGENTS.md +0 -41
  435. package/src/hooks/claude-code-hooks/claude-code-hooks-hook.ts +0 -28
  436. package/src/hooks/claude-code-hooks/config-loader.ts +0 -151
  437. package/src/hooks/claude-code-hooks/config.ts +0 -147
  438. package/src/hooks/claude-code-hooks/dispatch-hook.ts +0 -27
  439. package/src/hooks/claude-code-hooks/execute-http-hook.ts +0 -116
  440. package/src/hooks/claude-code-hooks/handlers/chat-message-handler.ts +0 -140
  441. package/src/hooks/claude-code-hooks/handlers/pre-compact-handler.ts +0 -41
  442. package/src/hooks/claude-code-hooks/handlers/session-event-handler.ts +0 -137
  443. package/src/hooks/claude-code-hooks/handlers/tool-execute-after-handler.ts +0 -160
  444. package/src/hooks/claude-code-hooks/handlers/tool-execute-before-handler.ts +0 -93
  445. package/src/hooks/claude-code-hooks/index.ts +0 -1
  446. package/src/hooks/claude-code-hooks/plugin-config.ts +0 -12
  447. package/src/hooks/claude-code-hooks/post-tool-use.ts +0 -195
  448. package/src/hooks/claude-code-hooks/pre-compact.ts +0 -105
  449. package/src/hooks/claude-code-hooks/pre-tool-use.ts +0 -168
  450. package/src/hooks/claude-code-hooks/session-hook-state.ts +0 -17
  451. package/src/hooks/claude-code-hooks/stop.ts +0 -118
  452. package/src/hooks/claude-code-hooks/todo.ts +0 -76
  453. package/src/hooks/claude-code-hooks/tool-input-cache.ts +0 -82
  454. package/src/hooks/claude-code-hooks/transcript.ts +0 -248
  455. package/src/hooks/claude-code-hooks/types.ts +0 -214
  456. package/src/hooks/claude-code-hooks/user-prompt-submit.ts +0 -121
  457. package/src/hooks/comment-checker/cli-runner.ts +0 -127
  458. package/src/hooks/comment-checker/cli.ts +0 -269
  459. package/src/hooks/comment-checker/downloader.ts +0 -170
  460. package/src/hooks/comment-checker/hook.ts +0 -192
  461. package/src/hooks/comment-checker/index.ts +0 -1
  462. package/src/hooks/comment-checker/pending-calls.ts +0 -45
  463. package/src/hooks/comment-checker/types.ts +0 -33
  464. package/src/hooks/compaction-context-injector/compaction-context-prompt.ts +0 -56
  465. package/src/hooks/compaction-context-injector/constants.ts +0 -5
  466. package/src/hooks/compaction-context-injector/hook.ts +0 -164
  467. package/src/hooks/compaction-context-injector/index.ts +0 -1
  468. package/src/hooks/compaction-context-injector/recovery-prompt-config.ts +0 -77
  469. package/src/hooks/compaction-context-injector/recovery.ts +0 -163
  470. package/src/hooks/compaction-context-injector/session-id.ts +0 -8
  471. package/src/hooks/compaction-context-injector/session-prompt-config-resolver.ts +0 -120
  472. package/src/hooks/compaction-context-injector/tail-monitor.ts +0 -52
  473. package/src/hooks/compaction-context-injector/types.ts +0 -25
  474. package/src/hooks/compaction-context-injector/validated-model.ts +0 -47
  475. package/src/hooks/compaction-todo-preserver/hook.ts +0 -127
  476. package/src/hooks/compaction-todo-preserver/index.ts +0 -2
  477. package/src/hooks/context-window-monitor.ts +0 -113
  478. package/src/hooks/delegate-task-retry/guidance.ts +0 -45
  479. package/src/hooks/delegate-task-retry/hook.ts +0 -22
  480. package/src/hooks/delegate-task-retry/index.ts +0 -4
  481. package/src/hooks/delegate-task-retry/patterns.ts +0 -77
  482. package/src/hooks/directory-agents-injector/constants.ts +0 -7
  483. package/src/hooks/directory-agents-injector/finder.ts +0 -38
  484. package/src/hooks/directory-agents-injector/hook.ts +0 -80
  485. package/src/hooks/directory-agents-injector/index.ts +0 -1
  486. package/src/hooks/directory-agents-injector/injector.ts +0 -59
  487. package/src/hooks/directory-agents-injector/storage.ts +0 -8
  488. package/src/hooks/directory-readme-injector/constants.ts +0 -7
  489. package/src/hooks/directory-readme-injector/finder.ts +0 -33
  490. package/src/hooks/directory-readme-injector/hook.ts +0 -80
  491. package/src/hooks/directory-readme-injector/index.ts +0 -1
  492. package/src/hooks/directory-readme-injector/injector.ts +0 -59
  493. package/src/hooks/directory-readme-injector/storage.ts +0 -8
  494. package/src/hooks/edit-error-recovery/hook.ts +0 -58
  495. package/src/hooks/edit-error-recovery/index.ts +0 -5
  496. package/src/hooks/empty-task-response-detector.ts +0 -27
  497. package/src/hooks/fast-apply/hook.ts +0 -11
  498. package/src/hooks/fast-apply/index.ts +0 -1
  499. package/src/hooks/fast-apply/ollama-client.ts +0 -53
  500. package/src/hooks/fast-apply/tool-execute-before-handler.ts +0 -86
  501. package/src/hooks/guard/AGENTS.md +0 -64
  502. package/src/hooks/guard/background-launch-session-tracking.ts +0 -97
  503. package/src/hooks/guard/bob-path.ts +0 -8
  504. package/src/hooks/guard/boulder-continuation-injector.ts +0 -109
  505. package/src/hooks/guard/boulder-session-lineage.ts +0 -44
  506. package/src/hooks/guard/event-handler.ts +0 -104
  507. package/src/hooks/guard/final-wave-approval-gate.ts +0 -47
  508. package/src/hooks/guard/final-wave-plan-state.ts +0 -60
  509. package/src/hooks/guard/guard-hook.ts +0 -27
  510. package/src/hooks/guard/hook-name.ts +0 -1
  511. package/src/hooks/guard/idle-event.ts +0 -341
  512. package/src/hooks/guard/index.ts +0 -3
  513. package/src/hooks/guard/is-abort-error.ts +0 -20
  514. package/src/hooks/guard/recent-model-resolver.ts +0 -89
  515. package/src/hooks/guard/resolve-active-boulder-session.ts +0 -29
  516. package/src/hooks/guard/session-last-agent.ts +0 -153
  517. package/src/hooks/guard/subagent-session-id.ts +0 -54
  518. package/src/hooks/guard/system-reminder-templates.ts +0 -249
  519. package/src/hooks/guard/task-context.ts +0 -45
  520. package/src/hooks/guard/tool-execute-after.ts +0 -209
  521. package/src/hooks/guard/tool-execute-before.ts +0 -102
  522. package/src/hooks/guard/tsconfig.json +0 -9
  523. package/src/hooks/guard/types.ts +0 -45
  524. package/src/hooks/guard/verification-reminders.ts +0 -197
  525. package/src/hooks/guard/write-edit-tool-policy.ts +0 -5
  526. package/src/hooks/hashline-edit-diff-enhancer/hook.ts +0 -106
  527. package/src/hooks/hashline-read-enhancer/hook.ts +0 -193
  528. package/src/hooks/hashline-read-enhancer/index.ts +0 -1
  529. package/src/hooks/index.ts +0 -58
  530. package/src/hooks/interactive-bash-session/constants.ts +0 -13
  531. package/src/hooks/interactive-bash-session/hook.ts +0 -125
  532. package/src/hooks/interactive-bash-session/index.ts +0 -3
  533. package/src/hooks/interactive-bash-session/interactive-bash-session-tracker.ts +0 -119
  534. package/src/hooks/interactive-bash-session/parser.ts +0 -118
  535. package/src/hooks/interactive-bash-session/state-manager.ts +0 -35
  536. package/src/hooks/interactive-bash-session/storage.ts +0 -59
  537. package/src/hooks/interactive-bash-session/tmux-command-parser.ts +0 -125
  538. package/src/hooks/interactive-bash-session/types.ts +0 -11
  539. package/src/hooks/json-error-recovery/hook.ts +0 -58
  540. package/src/hooks/json-error-recovery/index.ts +0 -6
  541. package/src/hooks/keyword-detector/AGENTS.md +0 -57
  542. package/src/hooks/keyword-detector/analyze/default.ts +0 -28
  543. package/src/hooks/keyword-detector/analyze/index.ts +0 -1
  544. package/src/hooks/keyword-detector/constants.ts +0 -45
  545. package/src/hooks/keyword-detector/detector.ts +0 -53
  546. package/src/hooks/keyword-detector/hook.ts +0 -143
  547. package/src/hooks/keyword-detector/index.ts +0 -5
  548. package/src/hooks/keyword-detector/search/default.ts +0 -20
  549. package/src/hooks/keyword-detector/search/index.ts +0 -1
  550. package/src/hooks/keyword-detector/types.ts +0 -4
  551. package/src/hooks/keyword-detector/ultrawork/default.ts +0 -302
  552. package/src/hooks/keyword-detector/ultrawork/gemini.ts +0 -290
  553. package/src/hooks/keyword-detector/ultrawork/gpt.ts +0 -173
  554. package/src/hooks/keyword-detector/ultrawork/index.ts +0 -56
  555. package/src/hooks/keyword-detector/ultrawork/planner.ts +0 -140
  556. package/src/hooks/keyword-detector/ultrawork/source-detector.ts +0 -65
  557. package/src/hooks/legacy-plugin-toast/auto-migrate-runner.ts +0 -2
  558. package/src/hooks/legacy-plugin-toast/auto-migrate.ts +0 -64
  559. package/src/hooks/legacy-plugin-toast/hook.ts +0 -68
  560. package/src/hooks/legacy-plugin-toast/index.ts +0 -1
  561. package/src/hooks/legacy-plugin-toast/plugin-entry-migrator.ts +0 -1
  562. package/src/hooks/model-fallback/chat-message-fallback-handler.ts +0 -74
  563. package/src/hooks/model-fallback/hook.ts +0 -201
  564. package/src/hooks/model-fallback/next-fallback.ts +0 -84
  565. package/src/hooks/no-bob-gpt/hook.ts +0 -56
  566. package/src/hooks/no-bob-gpt/index.ts +0 -1
  567. package/src/hooks/no-coder-non-gpt/hook.ts +0 -67
  568. package/src/hooks/no-coder-non-gpt/index.ts +0 -1
  569. package/src/hooks/non-interactive-env/constants.ts +0 -70
  570. package/src/hooks/non-interactive-env/detector.ts +0 -19
  571. package/src/hooks/non-interactive-env/index.ts +0 -5
  572. package/src/hooks/non-interactive-env/non-interactive-env-hook.ts +0 -73
  573. package/src/hooks/non-interactive-env/types.ts +0 -3
  574. package/src/hooks/preemptive-compaction-degradation-monitor.ts +0 -212
  575. package/src/hooks/preemptive-compaction-no-text-tail.ts +0 -70
  576. package/src/hooks/preemptive-compaction.ts +0 -218
  577. package/src/hooks/question-label-truncator/hook.ts +0 -62
  578. package/src/hooks/question-label-truncator/index.ts +0 -1
  579. package/src/hooks/ralph-loop/AGENTS.md +0 -62
  580. package/src/hooks/ralph-loop/command-arguments.ts +0 -30
  581. package/src/hooks/ralph-loop/completion-handler.ts +0 -65
  582. package/src/hooks/ralph-loop/completion-promise-detector-test-input.ts +0 -23
  583. package/src/hooks/ralph-loop/completion-promise-detector.ts +0 -165
  584. package/src/hooks/ralph-loop/constants.ts +0 -7
  585. package/src/hooks/ralph-loop/continuation-prompt-builder.ts +0 -77
  586. package/src/hooks/ralph-loop/continuation-prompt-injector.ts +0 -91
  587. package/src/hooks/ralph-loop/index.ts +0 -6
  588. package/src/hooks/ralph-loop/iteration-continuation.ts +0 -64
  589. package/src/hooks/ralph-loop/logician-verification-detector.ts +0 -88
  590. package/src/hooks/ralph-loop/loop-session-recovery.ts +0 -33
  591. package/src/hooks/ralph-loop/loop-state-controller.ts +0 -178
  592. package/src/hooks/ralph-loop/message-storage-directory.ts +0 -1
  593. package/src/hooks/ralph-loop/pending-verification-handler.ts +0 -152
  594. package/src/hooks/ralph-loop/ralph-loop-event-handler.ts +0 -231
  595. package/src/hooks/ralph-loop/ralph-loop-hook.ts +0 -90
  596. package/src/hooks/ralph-loop/session-event-handler.ts +0 -56
  597. package/src/hooks/ralph-loop/session-reset-strategy.ts +0 -69
  598. package/src/hooks/ralph-loop/storage.ts +0 -164
  599. package/src/hooks/ralph-loop/types.ts +0 -25
  600. package/src/hooks/ralph-loop/verification-failure-handler.ts +0 -103
  601. package/src/hooks/ralph-loop/with-timeout.ts +0 -20
  602. package/src/hooks/read-image-resizer/hook.ts +0 -209
  603. package/src/hooks/read-image-resizer/image-dimensions.ts +0 -191
  604. package/src/hooks/read-image-resizer/image-resizer.ts +0 -191
  605. package/src/hooks/read-image-resizer/index.ts +0 -1
  606. package/src/hooks/read-image-resizer/png-fallback-resizer.ts +0 -359
  607. package/src/hooks/read-image-resizer/types.ts +0 -16
  608. package/src/hooks/rules-injector/AGENTS.md +0 -53
  609. package/src/hooks/rules-injector/cache.ts +0 -27
  610. package/src/hooks/rules-injector/constants.ts +0 -31
  611. package/src/hooks/rules-injector/finder.ts +0 -3
  612. package/src/hooks/rules-injector/hook.ts +0 -94
  613. package/src/hooks/rules-injector/index.ts +0 -2
  614. package/src/hooks/rules-injector/injector.ts +0 -189
  615. package/src/hooks/rules-injector/matcher.ts +0 -63
  616. package/src/hooks/rules-injector/output-path.ts +0 -22
  617. package/src/hooks/rules-injector/parser.ts +0 -211
  618. package/src/hooks/rules-injector/project-root-finder.ts +0 -36
  619. package/src/hooks/rules-injector/rule-distance.ts +0 -53
  620. package/src/hooks/rules-injector/rule-file-finder.ts +0 -139
  621. package/src/hooks/rules-injector/rule-file-scanner.ts +0 -55
  622. package/src/hooks/rules-injector/storage.ts +0 -59
  623. package/src/hooks/rules-injector/types.ts +0 -57
  624. package/src/hooks/runtime-fallback/AGENTS.md +0 -102
  625. package/src/hooks/runtime-fallback/agent-resolver.ts +0 -50
  626. package/src/hooks/runtime-fallback/auto-retry-signal.ts +0 -32
  627. package/src/hooks/runtime-fallback/auto-retry.ts +0 -228
  628. package/src/hooks/runtime-fallback/chat-message-handler.ts +0 -62
  629. package/src/hooks/runtime-fallback/constants.ts +0 -47
  630. package/src/hooks/runtime-fallback/error-classifier.ts +0 -183
  631. package/src/hooks/runtime-fallback/event-handler.ts +0 -213
  632. package/src/hooks/runtime-fallback/fallback-bootstrap-model.ts +0 -63
  633. package/src/hooks/runtime-fallback/fallback-models.ts +0 -86
  634. package/src/hooks/runtime-fallback/fallback-retry-dispatcher.ts +0 -55
  635. package/src/hooks/runtime-fallback/fallback-state.ts +0 -74
  636. package/src/hooks/runtime-fallback/hook.ts +0 -87
  637. package/src/hooks/runtime-fallback/index.ts +0 -2
  638. package/src/hooks/runtime-fallback/last-user-retry-parts.ts +0 -20
  639. package/src/hooks/runtime-fallback/message-update-handler.ts +0 -168
  640. package/src/hooks/runtime-fallback/retry-model-payload.ts +0 -30
  641. package/src/hooks/runtime-fallback/session-messages.ts +0 -38
  642. package/src/hooks/runtime-fallback/session-status-handler.ts +0 -126
  643. package/src/hooks/runtime-fallback/types.ts +0 -77
  644. package/src/hooks/runtime-fallback/visible-assistant-response.ts +0 -80
  645. package/src/hooks/session-notification-content.ts +0 -145
  646. package/src/hooks/session-notification-formatting.ts +0 -25
  647. package/src/hooks/session-notification-scheduler.ts +0 -188
  648. package/src/hooks/session-notification-sender.ts +0 -117
  649. package/src/hooks/session-notification-utils.ts +0 -80
  650. package/src/hooks/session-notification.ts +0 -219
  651. package/src/hooks/session-recovery/AGENTS.md +0 -59
  652. package/src/hooks/session-recovery/constants.ts +0 -5
  653. package/src/hooks/session-recovery/detect-error-type.ts +0 -102
  654. package/src/hooks/session-recovery/hook.ts +0 -166
  655. package/src/hooks/session-recovery/index.ts +0 -7
  656. package/src/hooks/session-recovery/recover-empty-content-message-sdk.ts +0 -201
  657. package/src/hooks/session-recovery/recover-thinking-block-order.ts +0 -137
  658. package/src/hooks/session-recovery/recover-thinking-disabled-violation.ts +0 -75
  659. package/src/hooks/session-recovery/recover-tool-result-missing.ts +0 -108
  660. package/src/hooks/session-recovery/recover-unavailable-tool.ts +0 -108
  661. package/src/hooks/session-recovery/resume.ts +0 -49
  662. package/src/hooks/session-recovery/storage/empty-messages.ts +0 -47
  663. package/src/hooks/session-recovery/storage/empty-text.ts +0 -118
  664. package/src/hooks/session-recovery/storage/message-dir.ts +0 -1
  665. package/src/hooks/session-recovery/storage/messages-reader.ts +0 -83
  666. package/src/hooks/session-recovery/storage/orphan-thinking-search.ts +0 -43
  667. package/src/hooks/session-recovery/storage/part-content.ts +0 -28
  668. package/src/hooks/session-recovery/storage/part-id.ts +0 -5
  669. package/src/hooks/session-recovery/storage/parts-reader.ts +0 -56
  670. package/src/hooks/session-recovery/storage/text-part-injector.ts +0 -63
  671. package/src/hooks/session-recovery/storage/thinking-block-search.ts +0 -42
  672. package/src/hooks/session-recovery/storage/thinking-prepend.ts +0 -223
  673. package/src/hooks/session-recovery/storage/thinking-strip.ts +0 -67
  674. package/src/hooks/session-recovery/storage.ts +0 -34
  675. package/src/hooks/session-recovery/types.ts +0 -101
  676. package/src/hooks/session-todo-status.ts +0 -20
  677. package/src/hooks/shared/compaction-model-resolver.ts +0 -34
  678. package/src/hooks/shared/shared/compaction-model-resolver.ts +0 -34
  679. package/src/hooks/start-work/context-info-builder.ts +0 -319
  680. package/src/hooks/start-work/index.ts +0 -4
  681. package/src/hooks/start-work/parse-user-request.ts +0 -32
  682. package/src/hooks/start-work/start-work-hook.ts +0 -135
  683. package/src/hooks/start-work/worktree-block.ts +0 -11
  684. package/src/hooks/start-work/worktree-detector.ts +0 -77
  685. package/src/hooks/stop-continuation-guard/hook.ts +0 -122
  686. package/src/hooks/stop-continuation-guard/index.ts +0 -2
  687. package/src/hooks/strategist-md-only/agent-matcher.ts +0 -5
  688. package/src/hooks/strategist-md-only/agent-resolution.ts +0 -70
  689. package/src/hooks/strategist-md-only/constants.ts +0 -78
  690. package/src/hooks/strategist-md-only/hook.ts +0 -82
  691. package/src/hooks/strategist-md-only/index.ts +0 -2
  692. package/src/hooks/strategist-md-only/path-policy.ts +0 -41
  693. package/src/hooks/sub-notepad/constants.ts +0 -29
  694. package/src/hooks/sub-notepad/hook.ts +0 -44
  695. package/src/hooks/sub-notepad/index.ts +0 -3
  696. package/src/hooks/task-reminder/hook.ts +0 -59
  697. package/src/hooks/task-reminder/index.ts +0 -1
  698. package/src/hooks/task-resume-info/hook.ts +0 -39
  699. package/src/hooks/task-resume-info/index.ts +0 -1
  700. package/src/hooks/tasks-todowrite-disabler/constants.ts +0 -30
  701. package/src/hooks/tasks-todowrite-disabler/hook.ts +0 -34
  702. package/src/hooks/tasks-todowrite-disabler/index.ts +0 -2
  703. package/src/hooks/think-mode/detector.ts +0 -59
  704. package/src/hooks/think-mode/hook.ts +0 -76
  705. package/src/hooks/think-mode/index.ts +0 -5
  706. package/src/hooks/think-mode/switcher.ts +0 -100
  707. package/src/hooks/think-mode/types.ts +0 -16
  708. package/src/hooks/thinking-block-validator/hook.ts +0 -181
  709. package/src/hooks/thinking-block-validator/index.ts +0 -1
  710. package/src/hooks/todo-continuation-enforcer/AGENTS.md +0 -65
  711. package/src/hooks/todo-continuation-enforcer/abort-detection.ts +0 -17
  712. package/src/hooks/todo-continuation-enforcer/compaction-guard.ts +0 -39
  713. package/src/hooks/todo-continuation-enforcer/constants.ts +0 -25
  714. package/src/hooks/todo-continuation-enforcer/continuation-injection.ts +0 -222
  715. package/src/hooks/todo-continuation-enforcer/countdown.ts +0 -86
  716. package/src/hooks/todo-continuation-enforcer/handler.ts +0 -99
  717. package/src/hooks/todo-continuation-enforcer/idle-event.ts +0 -225
  718. package/src/hooks/todo-continuation-enforcer/index.ts +0 -59
  719. package/src/hooks/todo-continuation-enforcer/message-directory.ts +0 -1
  720. package/src/hooks/todo-continuation-enforcer/non-idle-events.ts +0 -107
  721. package/src/hooks/todo-continuation-enforcer/pending-question-detection.ts +0 -40
  722. package/src/hooks/todo-continuation-enforcer/resolve-message-info.ts +0 -48
  723. package/src/hooks/todo-continuation-enforcer/session-state.ts +0 -283
  724. package/src/hooks/todo-continuation-enforcer/stagnation-detection.ts +0 -36
  725. package/src/hooks/todo-continuation-enforcer/todo.ts +0 -11
  726. package/src/hooks/todo-continuation-enforcer/token-limit-detection.ts +0 -38
  727. package/src/hooks/todo-continuation-enforcer/types.ts +0 -74
  728. package/src/hooks/todo-description-override/description.ts +0 -28
  729. package/src/hooks/todo-description-override/hook.ts +0 -14
  730. package/src/hooks/todo-description-override/index.ts +0 -1
  731. package/src/hooks/tool-output-truncator.ts +0 -66
  732. package/src/hooks/tool-pair-validator/hook.ts +0 -184
  733. package/src/hooks/tool-pair-validator/index.ts +0 -1
  734. package/src/hooks/unstable-agent-babysitter/index.ts +0 -9
  735. package/src/hooks/unstable-agent-babysitter/task-message-analyzer.ts +0 -110
  736. package/src/hooks/unstable-agent-babysitter/unstable-agent-babysitter-hook.ts +0 -238
  737. package/src/hooks/webfetch-redirect-guard/constants.ts +0 -11
  738. package/src/hooks/webfetch-redirect-guard/hook.ts +0 -123
  739. package/src/hooks/webfetch-redirect-guard/index.ts +0 -1
  740. package/src/hooks/webfetch-redirect-guard/redirect-resolution.ts +0 -89
  741. package/src/hooks/write-existing-file-guard/hook.ts +0 -108
  742. package/src/hooks/write-existing-file-guard/index.ts +0 -1
  743. package/src/hooks/write-existing-file-guard/session-read-permissions.ts +0 -36
  744. package/src/hooks/write-existing-file-guard/tool-execute-before-handler.ts +0 -176
  745. package/src/index.ts +0 -252
  746. package/src/internals/plugins/pty/LICENSE +0 -21
  747. package/src/internals/plugins/pty/constants.ts +0 -7
  748. package/src/internals/plugins/pty/plugin.ts +0 -28
  749. package/src/internals/plugins/pty/pty/buffer.ts +0 -75
  750. package/src/internals/plugins/pty/pty/formatters.ts +0 -22
  751. package/src/internals/plugins/pty/pty/manager.ts +0 -175
  752. package/src/internals/plugins/pty/pty/notification-manager.ts +0 -75
  753. package/src/internals/plugins/pty/pty/output-manager.ts +0 -29
  754. package/src/internals/plugins/pty/pty/permissions.ts +0 -115
  755. package/src/internals/plugins/pty/pty/session-lifecycle.ts +0 -161
  756. package/src/internals/plugins/pty/pty/tools/kill.ts +0 -41
  757. package/src/internals/plugins/pty/pty/tools/kill.txt +0 -25
  758. package/src/internals/plugins/pty/pty/tools/list.ts +0 -25
  759. package/src/internals/plugins/pty/pty/tools/list.txt +0 -22
  760. package/src/internals/plugins/pty/pty/tools/read.ts +0 -234
  761. package/src/internals/plugins/pty/pty/tools/read.txt +0 -39
  762. package/src/internals/plugins/pty/pty/tools/spawn.ts +0 -71
  763. package/src/internals/plugins/pty/pty/tools/spawn.txt +0 -47
  764. package/src/internals/plugins/pty/pty/tools/write.ts +0 -96
  765. package/src/internals/plugins/pty/pty/tools/write.txt +0 -28
  766. package/src/internals/plugins/pty/pty/types.ts +0 -67
  767. package/src/internals/plugins/pty/pty/utils.ts +0 -21
  768. package/src/internals/plugins/pty/pty/wildcard.ts +0 -62
  769. package/src/internals/plugins/pty/shared/constants.ts +0 -7
  770. package/src/internals/plugins/pty/types.ts +0 -7
  771. package/src/internals/plugins/subtask2/LICENSE +0 -128
  772. package/src/internals/plugins/subtask2/commands/index.ts +0 -7
  773. package/src/internals/plugins/subtask2/commands/loader.ts +0 -39
  774. package/src/internals/plugins/subtask2/commands/manifest.ts +0 -64
  775. package/src/internals/plugins/subtask2/commands/resolver.ts +0 -28
  776. package/src/internals/plugins/subtask2/core/plugin.ts +0 -52
  777. package/src/internals/plugins/subtask2/core/state.ts +0 -764
  778. package/src/internals/plugins/subtask2/features/auto.ts +0 -57
  779. package/src/internals/plugins/subtask2/features/index.ts +0 -9
  780. package/src/internals/plugins/subtask2/features/inline-subtasks.ts +0 -205
  781. package/src/internals/plugins/subtask2/features/parallel.ts +0 -148
  782. package/src/internals/plugins/subtask2/features/results.ts +0 -48
  783. package/src/internals/plugins/subtask2/features/returns.ts +0 -273
  784. package/src/internals/plugins/subtask2/features/turns.ts +0 -190
  785. package/src/internals/plugins/subtask2/hooks/command-hooks.ts +0 -283
  786. package/src/internals/plugins/subtask2/hooks/message-hooks.ts +0 -603
  787. package/src/internals/plugins/subtask2/hooks/session-idle-hook.ts +0 -358
  788. package/src/internals/plugins/subtask2/hooks/tool-hooks.ts +0 -309
  789. package/src/internals/plugins/subtask2/loop.ts +0 -122
  790. package/src/internals/plugins/subtask2/parsing/auto.ts +0 -33
  791. package/src/internals/plugins/subtask2/parsing/commands.ts +0 -154
  792. package/src/internals/plugins/subtask2/parsing/frontmatter.ts +0 -20
  793. package/src/internals/plugins/subtask2/parsing/index.ts +0 -10
  794. package/src/internals/plugins/subtask2/parsing/overrides.ts +0 -68
  795. package/src/internals/plugins/subtask2/parsing/parallel.ts +0 -88
  796. package/src/internals/plugins/subtask2/parsing/turns.ts +0 -78
  797. package/src/internals/plugins/subtask2/types.ts +0 -41
  798. package/src/internals/plugins/subtask2/utils/config.ts +0 -100
  799. package/src/internals/plugins/subtask2/utils/index.ts +0 -7
  800. package/src/internals/plugins/subtask2/utils/logger.ts +0 -67
  801. package/src/internals/plugins/subtask2/utils/prompts.ts +0 -117
  802. package/src/lsp/index.ts +0 -16
  803. package/src/mcp/context7.ts +0 -9
  804. package/src/mcp/grep-app.ts +0 -6
  805. package/src/mcp/index.ts +0 -54
  806. package/src/mcp/omo-mcp-index.ts +0 -30
  807. package/src/mcp/registry.ts +0 -137
  808. package/src/mcp/types.ts +0 -19
  809. package/src/mcp/websearch.ts +0 -44
  810. package/src/permissions/index.ts +0 -25
  811. package/src/plugin/AGENTS.md +0 -54
  812. package/src/plugin/available-categories.ts +0 -24
  813. package/src/plugin/chat-headers.ts +0 -141
  814. package/src/plugin/chat-message.ts +0 -309
  815. package/src/plugin/chat-params.ts +0 -182
  816. package/src/plugin/command-execute-before.ts +0 -80
  817. package/src/plugin/event.ts +0 -639
  818. package/src/plugin/hooks/create-continuation-hooks.ts +0 -128
  819. package/src/plugin/hooks/create-core-hooks.ts +0 -47
  820. package/src/plugin/hooks/create-session-hooks.ts +0 -286
  821. package/src/plugin/hooks/create-skill-hooks.ts +0 -50
  822. package/src/plugin/hooks/create-tool-guard-hooks.ts +0 -159
  823. package/src/plugin/hooks/create-transform-hooks.ts +0 -85
  824. package/src/plugin/messages-transform.ts +0 -28
  825. package/src/plugin/normalize-tool-arg-schemas.ts +0 -75
  826. package/src/plugin/recent-synthetic-idles.ts +0 -20
  827. package/src/plugin/session-agent-resolver.ts +0 -37
  828. package/src/plugin/session-status-normalizer.ts +0 -22
  829. package/src/plugin/skill-context.ts +0 -150
  830. package/src/plugin/skill-discovery-config.ts +0 -32
  831. package/src/plugin/system-transform.ts +0 -6
  832. package/src/plugin/tool-execute-after.ts +0 -178
  833. package/src/plugin/tool-execute-before.ts +0 -222
  834. package/src/plugin/tool-registry.ts +0 -286
  835. package/src/plugin/types.ts +0 -26
  836. package/src/plugin/ultrawork-db-model-override.ts +0 -142
  837. package/src/plugin/ultrawork-model-override.ts +0 -196
  838. package/src/plugin/ultrawork-variant-availability.ts +0 -51
  839. package/src/plugin/unstable-agent-babysitter.ts +0 -41
  840. package/src/plugin-config.ts +0 -314
  841. package/src/plugin-dispose.ts +0 -51
  842. package/src/plugin-handlers/AGENTS.md +0 -92
  843. package/src/plugin-handlers/agent-config-handler.ts +0 -509
  844. package/src/plugin-handlers/agent-key-remapper.ts +0 -39
  845. package/src/plugin-handlers/agent-override-protection.ts +0 -38
  846. package/src/plugin-handlers/agent-priority-order.ts +0 -63
  847. package/src/plugin-handlers/category-config-resolver.ts +0 -9
  848. package/src/plugin-handlers/command-config-handler.ts +0 -115
  849. package/src/plugin-handlers/config-handler.ts +0 -61
  850. package/src/plugin-handlers/index.ts +0 -10
  851. package/src/plugin-handlers/mcp-config-handler.ts +0 -205
  852. package/src/plugin-handlers/plan-model-inheritance.ts +0 -27
  853. package/src/plugin-handlers/plugin-components-loader.ts +0 -70
  854. package/src/plugin-handlers/provider-config-handler.ts +0 -73
  855. package/src/plugin-handlers/strategist-agent-config-builder.ts +0 -128
  856. package/src/plugin-handlers/tool-config-handler.ts +0 -193
  857. package/src/plugin-interface.ts +0 -83
  858. package/src/plugin-state.ts +0 -18
  859. package/src/shared/AGENTS.md +0 -54
  860. package/src/shared/agent-display-names.ts +0 -182
  861. package/src/shared/agent-tool-restrictions.ts +0 -80
  862. package/src/shared/agent-variant.ts +0 -101
  863. package/src/shared/agents-config-dir.ts +0 -23
  864. package/src/shared/archive-entry-validator.ts +0 -83
  865. package/src/shared/background-output-consumption.ts +0 -69
  866. package/src/shared/binary-downloader.ts +0 -127
  867. package/src/shared/claude-config-dir.ts +0 -16
  868. package/src/shared/closure-protocol.ts +0 -53
  869. package/src/shared/command-executor/embedded-commands.ts +0 -26
  870. package/src/shared/command-executor/execute-command.ts +0 -28
  871. package/src/shared/command-executor/execute-hook-command.ts +0 -129
  872. package/src/shared/command-executor/home-directory.ts +0 -5
  873. package/src/shared/command-executor/resolve-commands-in-text.ts +0 -49
  874. package/src/shared/command-executor/shell-path.ts +0 -27
  875. package/src/shared/command-executor.ts +0 -5
  876. package/src/shared/compaction-agent-config-checkpoint.ts +0 -42
  877. package/src/shared/compaction-marker.ts +0 -61
  878. package/src/shared/config-errors.ts +0 -18
  879. package/src/shared/connected-providers-cache.ts +0 -215
  880. package/src/shared/contains-path.ts +0 -50
  881. package/src/shared/context-limit-resolver.ts +0 -42
  882. package/src/shared/data-path.ts +0 -64
  883. package/src/shared/deep-merge.ts +0 -53
  884. package/src/shared/disabled-tools.ts +0 -19
  885. package/src/shared/dynamic-truncator.ts +0 -222
  886. package/src/shared/external-plugin-detector.ts +0 -139
  887. package/src/shared/fallback-chain-from-models.ts +0 -124
  888. package/src/shared/fallback-model-availability.ts +0 -102
  889. package/src/shared/file-reference-resolver.ts +0 -99
  890. package/src/shared/file-utils.ts +0 -34
  891. package/src/shared/first-message-variant.ts +0 -28
  892. package/src/shared/frontmatter.ts +0 -31
  893. package/src/shared/git-worktree/collect-git-diff-stats.ts +0 -56
  894. package/src/shared/git-worktree/format-file-changes.ts +0 -46
  895. package/src/shared/git-worktree/index.ts +0 -7
  896. package/src/shared/git-worktree/parse-diff-numstat.ts +0 -27
  897. package/src/shared/git-worktree/parse-status-porcelain-line.ts +0 -27
  898. package/src/shared/git-worktree/parse-status-porcelain.ts +0 -15
  899. package/src/shared/git-worktree/types.ts +0 -8
  900. package/src/shared/hook-disabled.ts +0 -22
  901. package/src/shared/index.ts +0 -80
  902. package/src/shared/internal-initiator-marker.ts +0 -18
  903. package/src/shared/is-abort-error.ts +0 -20
  904. package/src/shared/json-file-cache-store.ts +0 -98
  905. package/src/shared/jsonc-parser.ts +0 -98
  906. package/src/shared/known-variants.ts +0 -16
  907. package/src/shared/legacy-plugin-warning.ts +0 -68
  908. package/src/shared/load-opencode-plugins.ts +0 -60
  909. package/src/shared/log-legacy-plugin-startup-warning.ts +0 -46
  910. package/src/shared/logger.ts +0 -48
  911. package/src/shared/mcp-static-export.ts +0 -121
  912. package/src/shared/merge-categories.ts +0 -18
  913. package/src/shared/migrate-legacy-config-file.ts +0 -66
  914. package/src/shared/migrate-legacy-plugin-entry.ts +0 -75
  915. package/src/shared/migration/agent-category.ts +0 -60
  916. package/src/shared/migration/agent-names.ts +0 -100
  917. package/src/shared/migration/config-migration.ts +0 -210
  918. package/src/shared/migration/hook-names.ts +0 -40
  919. package/src/shared/migration/migrations-sidecar.ts +0 -92
  920. package/src/shared/migration/model-versions.ts +0 -50
  921. package/src/shared/migration.ts +0 -5
  922. package/src/shared/model-availability.ts +0 -294
  923. package/src/shared/model-capabilities/bundled-snapshot.ts +0 -15
  924. package/src/shared/model-capabilities/get-model-capabilities.ts +0 -140
  925. package/src/shared/model-capabilities/index.ts +0 -9
  926. package/src/shared/model-capabilities/runtime-model-readers.ts +0 -190
  927. package/src/shared/model-capabilities/types.ts +0 -80
  928. package/src/shared/model-capabilities-cache.ts +0 -213
  929. package/src/shared/model-capability-aliases.ts +0 -108
  930. package/src/shared/model-capability-guardrails.ts +0 -149
  931. package/src/shared/model-capability-heuristics.ts +0 -32
  932. package/src/shared/model-error-classifier.ts +0 -214
  933. package/src/shared/model-format-normalizer.ts +0 -20
  934. package/src/shared/model-normalization.ts +0 -8
  935. package/src/shared/model-requirements.ts +0 -26
  936. package/src/shared/model-resolution-pipeline.ts +0 -216
  937. package/src/shared/model-resolution-types.ts +0 -41
  938. package/src/shared/model-resolver.ts +0 -106
  939. package/src/shared/model-sanitizer.ts +0 -12
  940. package/src/shared/model-settings-compatibility.ts +0 -200
  941. package/src/shared/model-suggestion-retry.ts +0 -182
  942. package/src/shared/normalize-sdk-response.ts +0 -36
  943. package/src/shared/opencode-command-dirs.ts +0 -36
  944. package/src/shared/opencode-config-dir-types.ts +0 -15
  945. package/src/shared/opencode-config-dir.ts +0 -135
  946. package/src/shared/opencode-http-api.ts +0 -140
  947. package/src/shared/opencode-message-dir.ts +0 -29
  948. package/src/shared/opencode-server-auth.ts +0 -190
  949. package/src/shared/opencode-storage-detection.ts +0 -34
  950. package/src/shared/opencode-storage-paths.ts +0 -7
  951. package/src/shared/opencode-version.ts +0 -80
  952. package/src/shared/parse-tools-config.ts +0 -25
  953. package/src/shared/pattern-matcher.ts +0 -46
  954. package/src/shared/permission-compat.ts +0 -86
  955. package/src/shared/plugin-command-discovery.ts +0 -28
  956. package/src/shared/plugin-entry-migrator.ts +0 -21
  957. package/src/shared/plugin-identity.ts +0 -8
  958. package/src/shared/port-utils.ts +0 -48
  959. package/src/shared/project-discovery-dirs.ts +0 -101
  960. package/src/shared/prompt-timeout-context.ts +0 -49
  961. package/src/shared/prompt-tools.ts +0 -35
  962. package/src/shared/provider-model-id-transform.ts +0 -58
  963. package/src/shared/question-denied-session-permission.ts +0 -9
  964. package/src/shared/record-type-guard.ts +0 -3
  965. package/src/shared/resolve-agent-definition-paths.ts +0 -22
  966. package/src/shared/retry-status-utils.ts +0 -19
  967. package/src/shared/runtime-plugin-config.ts +0 -98
  968. package/src/shared/safe-create-hook.ts +0 -24
  969. package/src/shared/session-category-registry.ts +0 -27
  970. package/src/shared/session-cursor.ts +0 -108
  971. package/src/shared/session-directory-resolver.ts +0 -41
  972. package/src/shared/session-injected-paths.ts +0 -59
  973. package/src/shared/session-model-state.ts +0 -15
  974. package/src/shared/session-prompt-params-helpers.ts +0 -31
  975. package/src/shared/session-prompt-params-state.ts +0 -37
  976. package/src/shared/session-tools-store.ts +0 -18
  977. package/src/shared/session-utils.ts +0 -25
  978. package/src/shared/shell-env.ts +0 -175
  979. package/src/shared/skill-path-resolver.ts +0 -26
  980. package/src/shared/snake-case.ts +0 -44
  981. package/src/shared/spawn-with-windows-hide.ts +0 -84
  982. package/src/shared/startup-diagnostics.ts +0 -77
  983. package/src/shared/system-directive.ts +0 -67
  984. package/src/shared/task-system-enabled.ts +0 -9
  985. package/src/shared/tmux/constants.ts +0 -12
  986. package/src/shared/tmux/index.ts +0 -3
  987. package/src/shared/tmux/tmux-utils/environment.ts +0 -13
  988. package/src/shared/tmux/tmux-utils/layout.ts +0 -96
  989. package/src/shared/tmux/tmux-utils/pane-close.ts +0 -48
  990. package/src/shared/tmux/tmux-utils/pane-dimensions.ts +0 -28
  991. package/src/shared/tmux/tmux-utils/pane-replace.ts +0 -73
  992. package/src/shared/tmux/tmux-utils/pane-spawn.ts +0 -94
  993. package/src/shared/tmux/tmux-utils/server-health.ts +0 -62
  994. package/src/shared/tmux/tmux-utils/session-spawn.ts +0 -145
  995. package/src/shared/tmux/tmux-utils/window-spawn.ts +0 -93
  996. package/src/shared/tmux/tmux-utils.ts +0 -15
  997. package/src/shared/tmux/types.ts +0 -4
  998. package/src/shared/tool-name.ts +0 -27
  999. package/src/shared/truncate-description.ts +0 -11
  1000. package/src/shared/vision-capable-models-cache.ts +0 -17
  1001. package/src/shared/write-file-atomically.ts +0 -31
  1002. package/src/shared/zip-entry-listing/powershell-zip-entry-listing.ts +0 -99
  1003. package/src/shared/zip-entry-listing/python-zip-entry-listing.ts +0 -55
  1004. package/src/shared/zip-entry-listing/read-zip-symlink-target.ts +0 -23
  1005. package/src/shared/zip-entry-listing/tar-zip-entry-listing.ts +0 -93
  1006. package/src/shared/zip-entry-listing/zipinfo-zip-entry-listing.ts +0 -72
  1007. package/src/shared/zip-entry-listing.ts +0 -13
  1008. package/src/shared/zip-extractor.ts +0 -118
  1009. package/src/skills/index.ts +0 -56
  1010. package/src/testing/module-mock-lifecycle.ts +0 -143
  1011. package/src/tools/AGENTS.md +0 -108
  1012. package/src/tools/ast-grep/cli-binary-path-resolution.ts +0 -60
  1013. package/src/tools/ast-grep/cli.ts +0 -177
  1014. package/src/tools/ast-grep/constants.ts +0 -5
  1015. package/src/tools/ast-grep/downloader.ts +0 -119
  1016. package/src/tools/ast-grep/environment-check.ts +0 -59
  1017. package/src/tools/ast-grep/index.ts +0 -5
  1018. package/src/tools/ast-grep/language-support.ts +0 -60
  1019. package/src/tools/ast-grep/process-output-timeout.ts +0 -28
  1020. package/src/tools/ast-grep/result-formatter.ts +0 -102
  1021. package/src/tools/ast-grep/sg-cli-path.ts +0 -102
  1022. package/src/tools/ast-grep/sg-compact-json-output.ts +0 -54
  1023. package/src/tools/ast-grep/tools.ts +0 -117
  1024. package/src/tools/ast-grep/types.ts +0 -60
  1025. package/src/tools/background-task/AGENTS.md +0 -53
  1026. package/src/tools/background-task/clients.ts +0 -32
  1027. package/src/tools/background-task/constants.ts +0 -9
  1028. package/src/tools/background-task/create-background-cancel.ts +0 -115
  1029. package/src/tools/background-task/create-background-output.ts +0 -159
  1030. package/src/tools/background-task/create-background-task.ts +0 -126
  1031. package/src/tools/background-task/delay.ts +0 -3
  1032. package/src/tools/background-task/full-session-format.ts +0 -148
  1033. package/src/tools/background-task/index.ts +0 -8
  1034. package/src/tools/background-task/message-dir.ts +0 -1
  1035. package/src/tools/background-task/session-messages.ts +0 -22
  1036. package/src/tools/background-task/task-result-format.ts +0 -113
  1037. package/src/tools/background-task/task-status-format.ts +0 -72
  1038. package/src/tools/background-task/time-format.ts +0 -30
  1039. package/src/tools/background-task/tools.ts +0 -11
  1040. package/src/tools/background-task/truncate-text.ts +0 -4
  1041. package/src/tools/background-task/types.ts +0 -72
  1042. package/src/tools/call-omo-agent/AGENTS.md +0 -51
  1043. package/src/tools/call-omo-agent/agent-resolver.ts +0 -64
  1044. package/src/tools/call-omo-agent/background-agent-executor.ts +0 -91
  1045. package/src/tools/call-omo-agent/background-executor.ts +0 -98
  1046. package/src/tools/call-omo-agent/completion-poller.ts +0 -65
  1047. package/src/tools/call-omo-agent/constants.ts +0 -23
  1048. package/src/tools/call-omo-agent/index.ts +0 -3
  1049. package/src/tools/call-omo-agent/message-dir.ts +0 -1
  1050. package/src/tools/call-omo-agent/message-processor.ts +0 -86
  1051. package/src/tools/call-omo-agent/message-storage-directory.ts +0 -1
  1052. package/src/tools/call-omo-agent/session-creator.ts +0 -70
  1053. package/src/tools/call-omo-agent/subagent-session-creator.ts +0 -74
  1054. package/src/tools/call-omo-agent/sync-executor.ts +0 -148
  1055. package/src/tools/call-omo-agent/tool-context-with-metadata.ts +0 -10
  1056. package/src/tools/call-omo-agent/tools.ts +0 -192
  1057. package/src/tools/call-omo-agent/types.ts +0 -34
  1058. package/src/tools/delegate-task/AGENTS.md +0 -58
  1059. package/src/tools/delegate-task/anthropic-categories.ts +0 -62
  1060. package/src/tools/delegate-task/available-models.ts +0 -64
  1061. package/src/tools/delegate-task/background-continuation.ts +0 -68
  1062. package/src/tools/delegate-task/background-task.ts +0 -165
  1063. package/src/tools/delegate-task/builtin-categories.ts +0 -33
  1064. package/src/tools/delegate-task/builtin-category-definition.ts +0 -8
  1065. package/src/tools/delegate-task/cancel-unstable-agent-task.ts +0 -19
  1066. package/src/tools/delegate-task/categories.ts +0 -77
  1067. package/src/tools/delegate-task/category-resolver.ts +0 -310
  1068. package/src/tools/delegate-task/constants.ts +0 -351
  1069. package/src/tools/delegate-task/delegated-model-config.ts +0 -20
  1070. package/src/tools/delegate-task/error-formatting.ts +0 -51
  1071. package/src/tools/delegate-task/executor-types.ts +0 -39
  1072. package/src/tools/delegate-task/executor.ts +0 -16
  1073. package/src/tools/delegate-task/fallback-entry-resolution.ts +0 -27
  1074. package/src/tools/delegate-task/fallback-entry-settings.ts +0 -20
  1075. package/src/tools/delegate-task/google-categories.ts +0 -130
  1076. package/src/tools/delegate-task/index.ts +0 -4
  1077. package/src/tools/delegate-task/kimi-categories.ts +0 -40
  1078. package/src/tools/delegate-task/model-selection.ts +0 -201
  1079. package/src/tools/delegate-task/model-string-parser.ts +0 -63
  1080. package/src/tools/delegate-task/openai-categories.ts +0 -128
  1081. package/src/tools/delegate-task/parent-context-resolver.ts +0 -47
  1082. package/src/tools/delegate-task/prompt-builder.ts +0 -107
  1083. package/src/tools/delegate-task/resolve-call-id.ts +0 -5
  1084. package/src/tools/delegate-task/skill-resolver.ts +0 -22
  1085. package/src/tools/delegate-task/sub-agent.ts +0 -70
  1086. package/src/tools/delegate-task/subagent-discovery.ts +0 -152
  1087. package/src/tools/delegate-task/subagent-resolver.ts +0 -225
  1088. package/src/tools/delegate-task/sync-continuation-deps.ts +0 -9
  1089. package/src/tools/delegate-task/sync-continuation.ts +0 -149
  1090. package/src/tools/delegate-task/sync-prompt-sender.ts +0 -137
  1091. package/src/tools/delegate-task/sync-result-fetcher.ts +0 -60
  1092. package/src/tools/delegate-task/sync-session-creator.ts +0 -29
  1093. package/src/tools/delegate-task/sync-session-poller.ts +0 -188
  1094. package/src/tools/delegate-task/sync-task-deps.ts +0 -13
  1095. package/src/tools/delegate-task/sync-task-fallback.ts +0 -68
  1096. package/src/tools/delegate-task/sync-task.ts +0 -243
  1097. package/src/tools/delegate-task/time-formatter.ts +0 -13
  1098. package/src/tools/delegate-task/timing.ts +0 -46
  1099. package/src/tools/delegate-task/token-limiter.ts +0 -123
  1100. package/src/tools/delegate-task/tools.ts +0 -259
  1101. package/src/tools/delegate-task/types.ts +0 -89
  1102. package/src/tools/delegate-task/unstable-agent-task.ts +0 -243
  1103. package/src/tools/glob/cli.ts +0 -206
  1104. package/src/tools/glob/constants.ts +0 -12
  1105. package/src/tools/glob/index.ts +0 -1
  1106. package/src/tools/glob/result-formatter.ts +0 -26
  1107. package/src/tools/glob/tools.ts +0 -49
  1108. package/src/tools/glob/types.ts +0 -23
  1109. package/src/tools/grep/cli.ts +0 -279
  1110. package/src/tools/grep/constants.ts +0 -141
  1111. package/src/tools/grep/downloader.ts +0 -128
  1112. package/src/tools/grep/index.ts +0 -1
  1113. package/src/tools/grep/result-formatter.ts +0 -60
  1114. package/src/tools/grep/tools.ts +0 -75
  1115. package/src/tools/grep/types.ts +0 -42
  1116. package/src/tools/hashline-edit/AGENTS.md +0 -92
  1117. package/src/tools/hashline-edit/autocorrect-replacement-lines.ts +0 -179
  1118. package/src/tools/hashline-edit/constants.ts +0 -10
  1119. package/src/tools/hashline-edit/diff-utils.ts +0 -53
  1120. package/src/tools/hashline-edit/edit-deduplication.ts +0 -43
  1121. package/src/tools/hashline-edit/edit-operation-primitives.ts +0 -126
  1122. package/src/tools/hashline-edit/edit-operations.ts +0 -103
  1123. package/src/tools/hashline-edit/edit-ordering.ts +0 -56
  1124. package/src/tools/hashline-edit/edit-text-normalization.ts +0 -111
  1125. package/src/tools/hashline-edit/file-text-canonicalization.ts +0 -44
  1126. package/src/tools/hashline-edit/formatter-trigger.ts +0 -132
  1127. package/src/tools/hashline-edit/hash-computation.ts +0 -154
  1128. package/src/tools/hashline-edit/hashline-chunk-formatter.ts +0 -52
  1129. package/src/tools/hashline-edit/hashline-edit-diff.ts +0 -31
  1130. package/src/tools/hashline-edit/hashline-edit-executor.ts +0 -197
  1131. package/src/tools/hashline-edit/index.ts +0 -20
  1132. package/src/tools/hashline-edit/normalize-edits.ts +0 -95
  1133. package/src/tools/hashline-edit/tool-description.ts +0 -95
  1134. package/src/tools/hashline-edit/tools.ts +0 -42
  1135. package/src/tools/hashline-edit/types.ts +0 -20
  1136. package/src/tools/hashline-edit/validation.ts +0 -181
  1137. package/src/tools/index.ts +0 -64
  1138. package/src/tools/interactive-bash/constants.ts +0 -18
  1139. package/src/tools/interactive-bash/index.ts +0 -4
  1140. package/src/tools/interactive-bash/tmux-path-resolver.ts +0 -71
  1141. package/src/tools/interactive-bash/tools.ts +0 -136
  1142. package/src/tools/look-at/assistant-message-extractor.ts +0 -67
  1143. package/src/tools/look-at/constants.ts +0 -3
  1144. package/src/tools/look-at/image-converter.ts +0 -164
  1145. package/src/tools/look-at/index.ts +0 -3
  1146. package/src/tools/look-at/look-at-arguments.ts +0 -34
  1147. package/src/tools/look-at/mime-type-inference.ts +0 -94
  1148. package/src/tools/look-at/multimodal-agent-metadata.ts +0 -166
  1149. package/src/tools/look-at/multimodal-fallback-chain.ts +0 -66
  1150. package/src/tools/look-at/session-poller.ts +0 -42
  1151. package/src/tools/look-at/tools.ts +0 -245
  1152. package/src/tools/look-at/types.ts +0 -5
  1153. package/src/tools/lsp/AGENTS.md +0 -70
  1154. package/src/tools/lsp/client.ts +0 -3
  1155. package/src/tools/lsp/config.ts +0 -3
  1156. package/src/tools/lsp/constants.ts +0 -7
  1157. package/src/tools/lsp/diagnostics-tool.ts +0 -75
  1158. package/src/tools/lsp/directory-diagnostics.ts +0 -163
  1159. package/src/tools/lsp/find-references-tool.ts +0 -43
  1160. package/src/tools/lsp/goto-definition-tool.ts +0 -42
  1161. package/src/tools/lsp/index.ts +0 -9
  1162. package/src/tools/lsp/infer-extension.ts +0 -65
  1163. package/src/tools/lsp/language-config.ts +0 -5
  1164. package/src/tools/lsp/language-mappings.ts +0 -171
  1165. package/src/tools/lsp/lsp-client-connection.ts +0 -66
  1166. package/src/tools/lsp/lsp-client-transport.ts +0 -210
  1167. package/src/tools/lsp/lsp-client-wrapper.ts +0 -116
  1168. package/src/tools/lsp/lsp-client.ts +0 -129
  1169. package/src/tools/lsp/lsp-formatters.ts +0 -193
  1170. package/src/tools/lsp/lsp-manager-process-cleanup.ts +0 -83
  1171. package/src/tools/lsp/lsp-manager-temp-directory-cleanup.ts +0 -29
  1172. package/src/tools/lsp/lsp-process.ts +0 -158
  1173. package/src/tools/lsp/lsp-server.ts +0 -217
  1174. package/src/tools/lsp/rename-tools.ts +0 -53
  1175. package/src/tools/lsp/server-config-loader.ts +0 -116
  1176. package/src/tools/lsp/server-definitions.ts +0 -91
  1177. package/src/tools/lsp/server-installation.ts +0 -58
  1178. package/src/tools/lsp/server-path-bases.ts +0 -16
  1179. package/src/tools/lsp/server-resolution.ts +0 -109
  1180. package/src/tools/lsp/symbols-tool.ts +0 -76
  1181. package/src/tools/lsp/tools.ts +0 -5
  1182. package/src/tools/lsp/types.ts +0 -124
  1183. package/src/tools/lsp/workspace-edit.ts +0 -121
  1184. package/src/tools/session-manager/constants.ts +0 -93
  1185. package/src/tools/session-manager/file-storage.ts +0 -203
  1186. package/src/tools/session-manager/index.ts +0 -3
  1187. package/src/tools/session-manager/sdk-storage.ts +0 -135
  1188. package/src/tools/session-manager/sdk-unavailable.ts +0 -43
  1189. package/src/tools/session-manager/session-formatter.ts +0 -199
  1190. package/src/tools/session-manager/storage.ts +0 -161
  1191. package/src/tools/session-manager/tools.ts +0 -197
  1192. package/src/tools/session-manager/types.ts +0 -99
  1193. package/src/tools/shared/semaphore.ts +0 -32
  1194. package/src/tools/skill/constants.ts +0 -14
  1195. package/src/tools/skill/description-formatter.ts +0 -61
  1196. package/src/tools/skill/index.ts +0 -3
  1197. package/src/tools/skill/mcp-capability-formatter.ts +0 -97
  1198. package/src/tools/skill/native-skills.ts +0 -62
  1199. package/src/tools/skill/scope-priority.ts +0 -17
  1200. package/src/tools/skill/skill-body.ts +0 -26
  1201. package/src/tools/skill/skill-matcher.ts +0 -40
  1202. package/src/tools/skill/tools.ts +0 -196
  1203. package/src/tools/skill/types.ts +0 -48
  1204. package/src/tools/skill-mcp/constants.ts +0 -9
  1205. package/src/tools/skill-mcp/index.ts +0 -3
  1206. package/src/tools/skill-mcp/tools.test.ts +0 -44
  1207. package/src/tools/skill-mcp/tools.ts +0 -242
  1208. package/src/tools/skill-mcp/types.ts +0 -8
  1209. package/src/tools/slashcommand/command-discovery.ts +0 -161
  1210. package/src/tools/slashcommand/command-output-formatter.ts +0 -75
  1211. package/src/tools/slashcommand/index.ts +0 -2
  1212. package/src/tools/slashcommand/types.ts +0 -21
  1213. package/src/tools/task/index.ts +0 -7
  1214. package/src/tools/task/task-create.ts +0 -113
  1215. package/src/tools/task/task-get.ts +0 -47
  1216. package/src/tools/task/task-list.ts +0 -79
  1217. package/src/tools/task/task-update.ts +0 -152
  1218. package/src/tools/task/todo-sync.ts +0 -205
  1219. package/src/tools/task/types.ts +0 -77
@@ -1,58 +0,0 @@
1
- import type { OAuthTokenData } from "./storage"
2
-
3
- /**
4
- * Per-server OAuth refresh mutex to prevent concurrent refresh race conditions.
5
- *
6
- * When multiple operations need to refresh a token for the same server,
7
- * this ensures only one refresh request is made and all waiters receive
8
- * the same result.
9
- */
10
-
11
- const ongoingRefreshes = new Map<string, Promise<OAuthTokenData>>()
12
-
13
- /**
14
- * Execute a token refresh with per-server mutual exclusion.
15
- *
16
- * If a refresh is already in progress for the given server, this will
17
- * return the same promise to all concurrent callers. Once the refresh
18
- * completes (success or failure), the lock is released.
19
- *
20
- * @param serverUrl - The OAuth server URL (used as mutex key)
21
- * @param refreshFn - The actual refresh operation to execute
22
- * @returns Promise that resolves to the new token data
23
- */
24
- export async function withRefreshMutex(
25
- serverUrl: string,
26
- refreshFn: () => Promise<OAuthTokenData>,
27
- ): Promise<OAuthTokenData> {
28
- const existing = ongoingRefreshes.get(serverUrl)
29
- if (existing) {
30
- return existing
31
- }
32
-
33
- const refreshPromise = refreshFn().finally(() => {
34
- ongoingRefreshes.delete(serverUrl)
35
- })
36
-
37
- ongoingRefreshes.set(serverUrl, refreshPromise)
38
- return refreshPromise
39
- }
40
-
41
- /**
42
- * Check if a refresh is currently in progress for a server.
43
- *
44
- * @param serverUrl - The OAuth server URL
45
- * @returns true if a refresh operation is active
46
- */
47
- export function isRefreshInProgress(serverUrl: string): boolean {
48
- return ongoingRefreshes.has(serverUrl)
49
- }
50
-
51
- /**
52
- * Get the number of servers currently undergoing token refresh.
53
- *
54
- * @returns Number of active refresh operations
55
- */
56
- export function getActiveRefreshCount(): number {
57
- return ongoingRefreshes.size
58
- }
@@ -1,16 +0,0 @@
1
- export function getResourceIndicator(url: string): string {
2
- const parsed = new URL(url)
3
- parsed.search = ""
4
- parsed.hash = ""
5
-
6
- let normalized = parsed.toString()
7
- if (normalized.endsWith("/")) {
8
- normalized = normalized.slice(0, -1)
9
- }
10
-
11
- return normalized
12
- }
13
-
14
- export function addResourceToParams(params: URLSearchParams, resource: string): void {
15
- params.set("resource", resource)
16
- }
@@ -1,8 +0,0 @@
1
- import { z } from "zod"
2
-
3
- export const McpOauthSchema = z.object({
4
- clientId: z.string().optional(),
5
- scopes: z.array(z.string()).optional(),
6
- })
7
-
8
- export type McpOauth = z.infer<typeof McpOauthSchema>
@@ -1,79 +0,0 @@
1
- export interface StepUpInfo {
2
- requiredScopes: string[]
3
- error?: string
4
- errorDescription?: string
5
- }
6
-
7
- export function parseWwwAuthenticate(header: string): StepUpInfo | null {
8
- const trimmed = header.trim()
9
- const lowerHeader = trimmed.toLowerCase()
10
- const bearerIndex = lowerHeader.indexOf("bearer")
11
- if (bearerIndex === -1) {
12
- return null
13
- }
14
-
15
- const params = trimmed.slice(bearerIndex + "bearer".length).trim()
16
- if (params.length === 0) {
17
- return null
18
- }
19
-
20
- const scope = extractParam(params, "scope")
21
- if (scope === null) {
22
- return null
23
- }
24
-
25
- const requiredScopes = scope
26
- .split(/\s+/)
27
- .filter((s) => s.length > 0)
28
-
29
- if (requiredScopes.length === 0) {
30
- return null
31
- }
32
-
33
- const info: StepUpInfo = { requiredScopes }
34
-
35
- const error = extractParam(params, "error")
36
- if (error !== null) {
37
- info.error = error
38
- }
39
-
40
- const errorDescription = extractParam(params, "error_description")
41
- if (errorDescription !== null) {
42
- info.errorDescription = errorDescription
43
- }
44
-
45
- return info
46
- }
47
-
48
- function extractParam(params: string, name: string): string | null {
49
- const quotedPattern = new RegExp(`${name}="([^"]*)"`)
50
- const quotedMatch = quotedPattern.exec(params)
51
- if (quotedMatch) {
52
- return quotedMatch[1]
53
- }
54
-
55
- const unquotedPattern = new RegExp(`${name}=([^\\s,]+)`)
56
- const unquotedMatch = unquotedPattern.exec(params)
57
- return unquotedMatch?.[1] ?? null
58
- }
59
-
60
- export function mergeScopes(existing: string[], required: string[]): string[] {
61
- const set = new Set(existing)
62
- for (const scope of required) {
63
- set.add(scope)
64
- }
65
- return [...set]
66
- }
67
-
68
- export function isStepUpRequired(statusCode: number, headers: Record<string, string>): StepUpInfo | null {
69
- if (statusCode !== 403) {
70
- return null
71
- }
72
-
73
- const wwwAuth = headers["www-authenticate"] ?? headers["WWW-Authenticate"]
74
- if (!wwwAuth) {
75
- return null
76
- }
77
-
78
- return parseWwwAuthenticate(wwwAuth)
79
- }
@@ -1,155 +0,0 @@
1
- import { chmodSync, existsSync, mkdirSync, readFileSync, renameSync, unlinkSync, writeFileSync } from "node:fs"
2
- import { dirname, join } from "node:path"
3
- import { getOpenCodeConfigDir } from "../../shared"
4
-
5
- export interface OAuthTokenData {
6
- accessToken: string
7
- refreshToken?: string
8
- expiresAt?: number
9
- clientInfo?: {
10
- clientId: string
11
- clientSecret?: string
12
- }
13
- }
14
-
15
- type TokenStore = Record<string, OAuthTokenData>
16
-
17
- const STORAGE_FILE_NAME = "mcp-oauth.json"
18
-
19
- export function getMcpOauthStoragePath(): string {
20
- return join(getOpenCodeConfigDir({ binary: "opencode" }), STORAGE_FILE_NAME)
21
- }
22
-
23
- function normalizeHost(serverHost: string): string {
24
- let host = serverHost.trim()
25
- if (!host) return host
26
-
27
- if (host.includes("://")) {
28
- try {
29
- host = new URL(host).hostname
30
- } catch {
31
- host = host.split("/")[0]
32
- }
33
- } else {
34
- host = host.split("/")[0]
35
- }
36
-
37
- if (host.startsWith("[")) {
38
- const closing = host.indexOf("]")
39
- if (closing !== -1) {
40
- host = host.slice(0, closing + 1)
41
- }
42
- return host
43
- }
44
-
45
- if (host.includes(":")) {
46
- host = host.split(":")[0]
47
- }
48
-
49
- return host
50
- }
51
-
52
- function normalizeResource(resource: string): string {
53
- return resource.replace(/^\/+/, "")
54
- }
55
-
56
- function buildKey(serverHost: string, resource: string): string {
57
- const host = normalizeHost(serverHost)
58
- const normalizedResource = normalizeResource(resource)
59
- return `${host}/${normalizedResource}`
60
- }
61
-
62
- function readStore(): TokenStore | null {
63
- const filePath = getMcpOauthStoragePath()
64
- if (!existsSync(filePath)) {
65
- return null
66
- }
67
-
68
- try {
69
- const content = readFileSync(filePath, "utf-8")
70
- return JSON.parse(content) as TokenStore
71
- } catch {
72
- return null
73
- }
74
- }
75
-
76
- function writeStore(store: TokenStore): boolean {
77
- const filePath = getMcpOauthStoragePath()
78
-
79
- try {
80
- const dir = dirname(filePath)
81
- if (!existsSync(dir)) {
82
- mkdirSync(dir, { recursive: true })
83
- }
84
-
85
- const tempPath = `${filePath}.tmp.${Date.now()}`
86
- writeFileSync(tempPath, JSON.stringify(store, null, 2), { encoding: "utf-8", mode: 0o600 })
87
- chmodSync(tempPath, 0o600)
88
- renameSync(tempPath, filePath)
89
- return true
90
- } catch {
91
- return false
92
- }
93
- }
94
-
95
- export function loadToken(serverHost: string, resource: string): OAuthTokenData | null {
96
- const store = readStore()
97
- if (!store) return null
98
-
99
- const key = buildKey(serverHost, resource)
100
- return store[key] ?? null
101
- }
102
-
103
- export function saveToken(serverHost: string, resource: string, token: OAuthTokenData): boolean {
104
- const store = readStore() ?? {}
105
- const key = buildKey(serverHost, resource)
106
- store[key] = token
107
- return writeStore(store)
108
- }
109
-
110
- export function deleteToken(serverHost: string, resource: string): boolean {
111
- const store = readStore()
112
- if (!store) return true
113
-
114
- const key = buildKey(serverHost, resource)
115
- if (!(key in store)) {
116
- return true
117
- }
118
-
119
- delete store[key]
120
-
121
- if (Object.keys(store).length === 0) {
122
- try {
123
- const filePath = getMcpOauthStoragePath()
124
- if (existsSync(filePath)) {
125
- unlinkSync(filePath)
126
- }
127
- return true
128
- } catch {
129
- return false
130
- }
131
- }
132
-
133
- return writeStore(store)
134
- }
135
-
136
- export function listTokensByHost(serverHost: string): TokenStore {
137
- const store = readStore()
138
- if (!store) return {}
139
-
140
- const host = normalizeHost(serverHost)
141
- const prefix = `${host}/`
142
- const result: TokenStore = {}
143
-
144
- for (const [key, value] of Object.entries(store)) {
145
- if (key.startsWith(prefix)) {
146
- result[key] = value
147
- }
148
- }
149
-
150
- return result
151
- }
152
-
153
- export function listAllTokens(): TokenStore {
154
- return readStore() ?? {}
155
- }
@@ -1,59 +0,0 @@
1
- # src/features/opencode-skill-loader/ — 4-Scope Skill Discovery
2
-
3
- **Generated:** 2026-04-11
4
-
5
- ## OVERVIEW
6
-
7
- 28 files (~3.2k LOC). Discovers, parses, merges, and resolves SKILL.md files from 4 scopes with priority deduplication.
8
-
9
- ## 4-SCOPE PRIORITY (highest → lowest)
10
-
11
- ```
12
- 1. Project (.opencode/skills/)
13
- 2. OpenCode config (~/.config/opencode/skills/)
14
- 3. User (~/.config/opencode/oh-my-opencode/skills/)
15
- 4. Global (built-in skills)
16
- ```
17
-
18
- Same-named skill at higher scope overrides lower.
19
-
20
- ## KEY FILES
21
-
22
- | File | Purpose |
23
- |------|---------|
24
- | `loader.ts` | Main `loadSkills()` — orchestrates discovery → parse → merge |
25
- | `async-loader.ts` | Async variant for non-blocking skill loading |
26
- | `blocking.ts` | Sync variant for initial load |
27
- | `merger.ts` | Priority-based deduplication across scopes |
28
- | `skill-content.ts` | YAML frontmatter parsing from SKILL.md |
29
- | `skill-discovery.ts` | Find SKILL.md files in directory trees |
30
- | `skill-directory-loader.ts` | Load all skills from a single directory |
31
- | `config-source-discovery.ts` | Discover scope directories from config |
32
- | `skill-template-resolver.ts` | Variable substitution in skill templates |
33
- | `skill-mcp-config.ts` | Extract MCP configs from skill YAML |
34
- | `types.ts` | `LoadedSkill`, `SkillScope`, `SkillDiscoveryResult` |
35
-
36
- ## SKILL FORMAT (SKILL.md)
37
-
38
- ```markdown
39
- ---
40
- name: my-skill
41
- description: What this skill does
42
- tools: [Bash, Read, Write]
43
- mcp:
44
- - name: my-mcp
45
- type: stdio
46
- command: npx
47
- args: [-y, my-mcp-server]
48
- ---
49
-
50
- Skill content (instructions for the agent)...
51
- ```
52
-
53
- ## MERGER SUBDIRECTORY
54
-
55
- Handles complex merge logic when skills from multiple scopes have overlapping names or MCP configs.
56
-
57
- ## TEMPLATE RESOLUTION
58
-
59
- Variables like `{{directory}}`, `{{agent}}` in skill content get resolved at load time based on current context.
@@ -1,9 +0,0 @@
1
- export function parseAllowedTools(allowedTools: string | string[] | undefined): string[] | undefined {
2
- if (!allowedTools) return undefined
3
-
4
- if (Array.isArray(allowedTools)) {
5
- return allowedTools.map((tool) => tool.trim()).filter(Boolean)
6
- }
7
-
8
- return allowedTools.split(/\s+/).filter(Boolean)
9
- }
@@ -1,213 +0,0 @@
1
- import { readFile, readdir } from "fs/promises"
2
- import type { Dirent } from "fs"
3
- import { join, basename } from "path"
4
- import yaml from "js-yaml"
5
- import { parseFrontmatter } from "../../shared/frontmatter"
6
- import { sanitizeModelField } from "../../shared/model-sanitizer"
7
- import { resolveSymlink, isMarkdownFile } from "../../shared/file-utils"
8
- import { resolveSkillPathReferences } from "../../shared/skill-path-resolver"
9
- import type { CommandDefinition } from "../claude-code-command-loader/types"
10
- import type { SkillScope, SkillMetadata, LoadedSkill } from "./types"
11
- import type { SkillMcpConfig } from "../skill-mcp-manager/types"
12
-
13
- export async function mapWithConcurrency<T, R>(
14
- items: T[],
15
- mapper: (item: T) => Promise<R>,
16
- concurrency: number
17
- ): Promise<R[]> {
18
- const results: R[] = new Array(items.length)
19
- let index = 0
20
-
21
- const worker = async () => {
22
- while (index < items.length) {
23
- const currentIndex = index++
24
- results[currentIndex] = await mapper(items[currentIndex])
25
- }
26
- }
27
-
28
- const workers = Array.from({ length: Math.min(concurrency, items.length) }, () => worker())
29
- await Promise.all(workers)
30
-
31
- return results
32
- }
33
-
34
- function parseSkillMcpConfigFromFrontmatter(content: string): SkillMcpConfig | undefined {
35
- const frontmatterMatch = content.match(/^---\r?\n([\s\S]*?)\r?\n---/)
36
- if (!frontmatterMatch) return undefined
37
-
38
- try {
39
- const parsed = yaml.load(frontmatterMatch[1]) as Record<string, unknown>
40
- if (parsed && typeof parsed === "object" && "mcp" in parsed && parsed.mcp) {
41
- return parsed.mcp as SkillMcpConfig
42
- }
43
- } catch {
44
- return undefined
45
- }
46
- return undefined
47
- }
48
-
49
- export async function loadMcpJsonFromDirAsync(skillDir: string): Promise<SkillMcpConfig | undefined> {
50
- const mcpJsonPath = join(skillDir, "mcp.json")
51
-
52
- try {
53
- const content = await readFile(mcpJsonPath, "utf-8")
54
- const parsed = JSON.parse(content) as Record<string, unknown>
55
-
56
- if (parsed && typeof parsed === "object" && "mcpServers" in parsed && parsed.mcpServers) {
57
- return parsed.mcpServers as SkillMcpConfig
58
- }
59
-
60
- if (parsed && typeof parsed === "object" && !("mcpServers" in parsed)) {
61
- const hasCommandField = Object.values(parsed).some(
62
- (v) => v && typeof v === "object" && "command" in (v as Record<string, unknown>)
63
- )
64
- if (hasCommandField) {
65
- return parsed as SkillMcpConfig
66
- }
67
- }
68
- } catch {
69
- return undefined
70
- }
71
- return undefined
72
- }
73
-
74
- export async function loadSkillFromPathAsync(
75
- skillPath: string,
76
- resolvedPath: string,
77
- defaultName: string,
78
- scope: SkillScope,
79
- namePrefix = ""
80
- ): Promise<LoadedSkill | null> {
81
- try {
82
- const content = await readFile(skillPath, "utf-8")
83
- const { data, body, parseError } = parseFrontmatter<SkillMetadata>(content)
84
- if (parseError) return null
85
-
86
- const frontmatterMcp = parseSkillMcpConfigFromFrontmatter(content)
87
- const mcpJsonMcp = await loadMcpJsonFromDirAsync(resolvedPath)
88
- const mcpConfig = mcpJsonMcp || frontmatterMcp
89
-
90
- const baseName = String(data.name || defaultName)
91
- const skillName = namePrefix ? `${namePrefix}/${baseName}` : baseName
92
- const originalDescription = data.description || ""
93
- const isOpencodeSource = scope === "opencode" || scope === "opencode-project"
94
- const formattedDescription = `(${scope} - Skill) ${originalDescription}`
95
-
96
- const resolvedBody = resolveSkillPathReferences(body.trim(), resolvedPath)
97
- const wrappedTemplate = `<skill-instruction>
98
- Base directory for this skill: ${resolvedPath}/
99
- File references (@path) in this skill are relative to this directory.
100
-
101
- ${resolvedBody}
102
- </skill-instruction>
103
-
104
- <user-request>
105
- $ARGUMENTS
106
- </user-request>`
107
-
108
- const definition: CommandDefinition = {
109
- name: skillName,
110
- description: formattedDescription,
111
- template: wrappedTemplate,
112
- model: sanitizeModelField(data.model, isOpencodeSource ? "opencode" : "claude-code"),
113
- agent: data.agent,
114
- subtask: data.subtask,
115
- argumentHint: data["argument-hint"],
116
- }
117
-
118
- return {
119
- name: skillName,
120
- path: skillPath,
121
- resolvedPath,
122
- definition,
123
- scope,
124
- license: data.license,
125
- compatibility: data.compatibility,
126
- metadata: data.metadata,
127
- allowedTools: parseAllowedTools(data["allowed-tools"]),
128
- mcpConfig,
129
- }
130
- } catch {
131
- return null
132
- }
133
- }
134
-
135
- function parseAllowedTools(allowedTools: string | string[] | undefined): string[] | undefined {
136
- if (!allowedTools) return undefined
137
-
138
- // Handle YAML array format: already parsed as string[]
139
- if (Array.isArray(allowedTools)) {
140
- return allowedTools.map(t => t.trim()).filter(Boolean)
141
- }
142
-
143
- // Handle space-separated string format: "Read Write Edit Bash"
144
- return allowedTools.split(/\s+/).filter(Boolean)
145
- }
146
-
147
- export async function discoverSkillsInDirAsync(
148
- skillsDir: string,
149
- scope: SkillScope = "opencode-project",
150
- namePrefix = "",
151
- depth = 0,
152
- maxDepth = 2
153
- ): Promise<LoadedSkill[]> {
154
- try {
155
- const entries = await readdir(skillsDir, { withFileTypes: true })
156
-
157
- const processEntry = async (entry: Dirent): Promise<LoadedSkill | LoadedSkill[] | null> => {
158
- if (entry.name.startsWith(".")) return null
159
-
160
- const entryPath = join(skillsDir, entry.name)
161
-
162
- if (entry.isDirectory() || entry.isSymbolicLink()) {
163
- const resolvedPath = resolveSymlink(entryPath)
164
- const dirName = entry.name
165
-
166
- const skillMdPath = join(resolvedPath, "SKILL.md")
167
- try {
168
- await readFile(skillMdPath, "utf-8")
169
- return await loadSkillFromPathAsync(skillMdPath, resolvedPath, dirName, scope, namePrefix)
170
- } catch {
171
- const namedSkillMdPath = join(resolvedPath, `${dirName}.md`)
172
- try {
173
- await readFile(namedSkillMdPath, "utf-8")
174
- return await loadSkillFromPathAsync(namedSkillMdPath, resolvedPath, dirName, scope, namePrefix)
175
- } catch {
176
- if (depth >= maxDepth) {
177
- return null
178
- }
179
-
180
- const nestedPrefix = namePrefix ? `${namePrefix}/${dirName}` : dirName
181
- const nestedSkills = await discoverSkillsInDirAsync(
182
- resolvedPath,
183
- scope,
184
- nestedPrefix,
185
- depth + 1,
186
- maxDepth
187
- )
188
-
189
- return nestedSkills.length > 0 ? nestedSkills : null
190
- }
191
- }
192
- }
193
-
194
- if (isMarkdownFile(entry)) {
195
- const skillName = basename(entry.name, ".md")
196
- return await loadSkillFromPathAsync(entryPath, skillsDir, skillName, scope, namePrefix)
197
- }
198
-
199
- return null
200
- }
201
-
202
- const skillPromises = await mapWithConcurrency(entries, processEntry, 16)
203
- return skillPromises.flatMap((skill): LoadedSkill[] => {
204
- if (skill === null) return []
205
- return Array.isArray(skill) ? skill : [skill]
206
- })
207
- } catch (error: unknown) {
208
- if (error && typeof error === "object" && "code" in error && error.code === "ENOENT") {
209
- return []
210
- }
211
- return []
212
- }
213
- }
@@ -1,62 +0,0 @@
1
- import { Worker, MessageChannel, receiveMessageOnPort } from "worker_threads"
2
- import type { LoadedSkill, SkillScope } from "./types"
3
-
4
- interface WorkerInput {
5
- dirs: string[]
6
- scopes: SkillScope[]
7
- }
8
-
9
- interface WorkerOutputSuccess {
10
- ok: true
11
- skills: LoadedSkill[]
12
- }
13
-
14
- interface WorkerOutputError {
15
- ok: false
16
- error: { message: string; stack?: string }
17
- }
18
-
19
- type WorkerOutput = WorkerOutputSuccess | WorkerOutputError
20
-
21
- const TIMEOUT_MS = 30000
22
-
23
- export function discoverAllSkillsBlocking(dirs: string[], scopes: SkillScope[]): LoadedSkill[] {
24
- const signal = new Int32Array(new SharedArrayBuffer(4))
25
- const { port1, port2 } = new MessageChannel()
26
-
27
- const worker = new Worker(new URL("./discover-worker.ts", import.meta.url), {
28
- // workerData is structured-cloned; pass the SharedArrayBuffer and recreate the view in the worker.
29
- workerData: { signalBuffer: signal.buffer },
30
- })
31
-
32
- const input: WorkerInput = { dirs, scopes }
33
- // Avoid a race where the worker hasn't attached listeners to the MessagePort yet.
34
- worker.postMessage({ port: port2, input }, [port2])
35
-
36
- const waitResult = Atomics.wait(signal, 0, 0, TIMEOUT_MS)
37
-
38
- if (waitResult === "timed-out") {
39
- worker.terminate()
40
- port1.close()
41
- throw new Error(`Worker timeout after ${TIMEOUT_MS}ms`)
42
- }
43
-
44
- const message = receiveMessageOnPort(port1)
45
-
46
- worker.terminate()
47
- port1.close()
48
-
49
- if (!message) {
50
- throw new Error("Worker did not return result")
51
- }
52
-
53
- const output = message.message as WorkerOutput
54
-
55
- if (output.ok === false) {
56
- const error = new Error(output.error.message)
57
- error.stack = output.error.stack
58
- throw error
59
- }
60
-
61
- return output.skills
62
- }