@hiai-gg/hiai-opencode 0.1.7 → 0.1.9

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 (1195) hide show
  1. package/AGENTS.md +35 -0
  2. package/ARCHITECTURE.md +39 -0
  3. package/README.md +96 -9
  4. package/dist/agents/coder/agent.d.ts +2 -2
  5. package/dist/agents/dynamic-agent-core-sections.d.ts +3 -1
  6. package/dist/agents/guard/agent.d.ts +4 -15
  7. package/dist/agents/prompt-library/index.d.ts +1 -0
  8. package/dist/agents/prompt-library/integration-map.d.ts +9 -0
  9. package/dist/agents/strategist/system-prompt.d.ts +5 -8
  10. package/dist/agents/sub/agent.d.ts +6 -8
  11. package/dist/agents/sub/index.d.ts +0 -4
  12. package/dist/config/schema/oh-my-opencode-config.d.ts +2 -0
  13. package/dist/config/schema/ralph-loop.d.ts +2 -0
  14. package/dist/hooks/keyword-detector/ultrawork/default.d.ts +1 -1
  15. package/dist/hooks/keyword-detector/ultrawork/gemini.d.ts +1 -1
  16. package/dist/hooks/keyword-detector/ultrawork/gpt.d.ts +1 -1
  17. package/dist/hooks/keyword-detector/ultrawork/intent-gate.d.ts +0 -0
  18. package/dist/hooks/keyword-detector/ultrawork/planner.d.ts +1 -1
  19. package/dist/hooks/todo-continuation-enforcer/auto-loop.d.ts +23 -0
  20. package/dist/hooks/todo-continuation-enforcer/handler.d.ts +5 -0
  21. package/dist/hooks/todo-continuation-enforcer/idle-event.d.ts +5 -0
  22. package/dist/hooks/todo-continuation-enforcer/types.d.ts +18 -0
  23. package/dist/index.js +1532 -4127
  24. package/dist/plugin/hooks/create-continuation-hooks.d.ts +2 -1
  25. package/dist/shared/index.d.ts +1 -0
  26. package/dist/shared/learn-system.d.ts +18 -0
  27. package/hiai-opencode.json +8 -5
  28. package/package.json +3 -3
  29. package/dist/agents/bob/default.d.ts +0 -10
  30. package/dist/agents/bob/gemini.d.ts +0 -21
  31. package/dist/agents/bob/gpt-pro.d.ts +0 -27
  32. package/dist/agents/bob/index.d.ts +0 -11
  33. package/dist/agents/coder/gpt-codex.d.ts +0 -20
  34. package/dist/agents/coder/gpt-pro.d.ts +0 -25
  35. package/dist/agents/guard/gemini-prompt-sections.d.ts +0 -12
  36. package/dist/agents/guard/gemini.d.ts +0 -2
  37. package/dist/agents/guard/gpt-prompt-sections.d.ts +0 -12
  38. package/dist/agents/guard/gpt.d.ts +0 -2
  39. package/dist/agents/strategist/gemini.d.ts +0 -13
  40. package/dist/agents/strategist/gpt.d.ts +0 -12
  41. package/dist/agents/sub/gemini.d.ts +0 -10
  42. package/dist/agents/sub/gpt-codex.d.ts +0 -8
  43. package/dist/agents/sub/gpt-pro.d.ts +0 -11
  44. package/dist/agents/sub/gpt.d.ts +0 -9
  45. package/dist/skills/index.d.ts +0 -7
  46. package/dist/testing/module-mock-lifecycle.d.ts +0 -21
  47. package/src/AGENTS.md +0 -41
  48. package/src/agents/AGENTS.md +0 -74
  49. package/src/agents/agent-builder.ts +0 -50
  50. package/src/agents/agent-skills.ts +0 -70
  51. package/src/agents/bob/AGENTS.md +0 -29
  52. package/src/agents/bob/default.ts +0 -134
  53. package/src/agents/bob/gemini.ts +0 -238
  54. package/src/agents/bob/gpt-pro.ts +0 -432
  55. package/src/agents/bob/index.ts +0 -19
  56. package/src/agents/bob.ts +0 -531
  57. package/src/agents/brainstormer.ts +0 -72
  58. package/src/agents/builtin-agents/agent-overrides.ts +0 -75
  59. package/src/agents/builtin-agents/available-skills.ts +0 -35
  60. package/src/agents/builtin-agents/bob-agent.ts +0 -96
  61. package/src/agents/builtin-agents/coder-agent.ts +0 -98
  62. package/src/agents/builtin-agents/environment-context.ts +0 -16
  63. package/src/agents/builtin-agents/general-agents.ts +0 -122
  64. package/src/agents/builtin-agents/guard-agent.ts +0 -66
  65. package/src/agents/builtin-agents/model-resolution.ts +0 -31
  66. package/src/agents/builtin-agents/resolve-file-uri.ts +0 -42
  67. package/src/agents/builtin-agents.ts +0 -250
  68. package/src/agents/coder/AGENTS.md +0 -34
  69. package/src/agents/coder/agent.ts +0 -162
  70. package/src/agents/coder/gpt-codex.ts +0 -406
  71. package/src/agents/coder/gpt-pro.ts +0 -321
  72. package/src/agents/coder/gpt.ts +0 -255
  73. package/src/agents/coder/index.ts +0 -8
  74. package/src/agents/critic/agent.ts +0 -106
  75. package/src/agents/custom-agent-summaries.ts +0 -61
  76. package/src/agents/designer.ts +0 -70
  77. package/src/agents/dynamic-agent-category-skills-guide.ts +0 -144
  78. package/src/agents/dynamic-agent-core-sections.ts +0 -273
  79. package/src/agents/dynamic-agent-policy-sections.ts +0 -182
  80. package/src/agents/dynamic-agent-prompt-builder.ts +0 -32
  81. package/src/agents/dynamic-agent-prompt-types.ts +0 -24
  82. package/src/agents/dynamic-agent-tool-categorization.ts +0 -45
  83. package/src/agents/env-context.ts +0 -16
  84. package/src/agents/gpt-apply-patch-guard.ts +0 -7
  85. package/src/agents/guard/agent.ts +0 -146
  86. package/src/agents/guard/default-prompt-sections.ts +0 -305
  87. package/src/agents/guard/default.ts +0 -23
  88. package/src/agents/guard/gemini-prompt-sections.ts +0 -293
  89. package/src/agents/guard/gemini.ts +0 -23
  90. package/src/agents/guard/gpt-prompt-sections.ts +0 -296
  91. package/src/agents/guard/gpt.ts +0 -23
  92. package/src/agents/guard/index.ts +0 -2
  93. package/src/agents/guard/prompt-section-builder.ts +0 -104
  94. package/src/agents/guard/shared-prompt.ts +0 -172
  95. package/src/agents/index.ts +0 -5
  96. package/src/agents/platform-adapter.ts +0 -236
  97. package/src/agents/platform-manager.ts +0 -73
  98. package/src/agents/prompt-library/identity.ts +0 -14
  99. package/src/agents/prompt-library/index.ts +0 -7
  100. package/src/agents/prompt-library/intent-gate.ts +0 -149
  101. package/src/agents/prompt-library/orchestration.ts +0 -60
  102. package/src/agents/prompt-library/platform.ts +0 -70
  103. package/src/agents/prompt-library/specialized.ts +0 -39
  104. package/src/agents/prompt-library/strategy.ts +0 -80
  105. package/src/agents/prompt-library/todo-discipline.ts +0 -23
  106. package/src/agents/quality-guardian.ts +0 -76
  107. package/src/agents/researcher.ts +0 -74
  108. package/src/agents/strategist/AGENTS.md +0 -37
  109. package/src/agents/strategist/behavioral-summary.ts +0 -79
  110. package/src/agents/strategist/gemini.ts +0 -334
  111. package/src/agents/strategist/gpt.ts +0 -461
  112. package/src/agents/strategist/high-accuracy-mode.ts +0 -78
  113. package/src/agents/strategist/identity-constraints.ts +0 -336
  114. package/src/agents/strategist/index.ts +0 -6
  115. package/src/agents/strategist/interview-mode.ts +0 -335
  116. package/src/agents/strategist/plan-generation.ts +0 -213
  117. package/src/agents/strategist/plan-template.ts +0 -325
  118. package/src/agents/strategist/system-prompt.ts +0 -68
  119. package/src/agents/sub/agent.ts +0 -141
  120. package/src/agents/sub/default.ts +0 -52
  121. package/src/agents/sub/gemini.ts +0 -194
  122. package/src/agents/sub/gpt-codex.ts +0 -156
  123. package/src/agents/sub/gpt-pro.ts +0 -161
  124. package/src/agents/sub/gpt.ts +0 -157
  125. package/src/agents/sub/index.ts +0 -13
  126. package/src/agents/types.ts +0 -147
  127. package/src/agents/ui.ts +0 -59
  128. package/src/config/data/model-capabilities.json +0 -40690
  129. package/src/config/defaults.ts +0 -230
  130. package/src/config/hiai-opencode.schema.json +0 -12
  131. package/src/config/index.ts +0 -65
  132. package/src/config/loader.test.ts +0 -80
  133. package/src/config/loader.ts +0 -188
  134. package/src/config/model-slots-and-export.test.ts +0 -73
  135. package/src/config/platform-schema.ts +0 -242
  136. package/src/config/schema/agent-definitions.ts +0 -5
  137. package/src/config/schema/agent-names.ts +0 -66
  138. package/src/config/schema/agent-overrides.ts +0 -97
  139. package/src/config/schema/babysitting.ts +0 -7
  140. package/src/config/schema/background-task.ts +0 -29
  141. package/src/config/schema/bob-agent.ts +0 -11
  142. package/src/config/schema/bob.ts +0 -17
  143. package/src/config/schema/browser-automation.ts +0 -24
  144. package/src/config/schema/categories.ts +0 -45
  145. package/src/config/schema/claude-code.ts +0 -13
  146. package/src/config/schema/commands.ts +0 -16
  147. package/src/config/schema/comment-checker.ts +0 -8
  148. package/src/config/schema/dynamic-context-pruning.ts +0 -53
  149. package/src/config/schema/experimental.ts +0 -27
  150. package/src/config/schema/fallback-models.ts +0 -31
  151. package/src/config/schema/fast-apply.ts +0 -14
  152. package/src/config/schema/git-env-prefix.ts +0 -28
  153. package/src/config/schema/git-master.ts +0 -14
  154. package/src/config/schema/hooks.ts +0 -59
  155. package/src/config/schema/index.ts +0 -52
  156. package/src/config/schema/internal/permission.ts +0 -20
  157. package/src/config/schema/model-capabilities.ts +0 -10
  158. package/src/config/schema/notification.ts +0 -8
  159. package/src/config/schema/oh-my-opencode-config.ts +0 -88
  160. package/src/config/schema/openclaw.ts +0 -50
  161. package/src/config/schema/ralph-loop.ts +0 -11
  162. package/src/config/schema/runtime-fallback.ts +0 -18
  163. package/src/config/schema/skill-discovery.ts +0 -25
  164. package/src/config/schema/skills.ts +0 -39
  165. package/src/config/schema/start-work.ts +0 -7
  166. package/src/config/schema/tmux.ts +0 -28
  167. package/src/config/types.ts +0 -221
  168. package/src/create-hooks.ts +0 -93
  169. package/src/create-managers.ts +0 -116
  170. package/src/create-runtime-tmux-config.ts +0 -18
  171. package/src/create-tools.ts +0 -56
  172. package/src/features/background-agent/AGENTS.md +0 -56
  173. package/src/features/background-agent/abort-with-timeout.ts +0 -35
  174. package/src/features/background-agent/background-task-notification-template.ts +0 -74
  175. package/src/features/background-agent/compaction-aware-message-resolver.ts +0 -164
  176. package/src/features/background-agent/concurrency.ts +0 -137
  177. package/src/features/background-agent/constants.ts +0 -58
  178. package/src/features/background-agent/duration-formatter.ts +0 -14
  179. package/src/features/background-agent/error-classifier.ts +0 -83
  180. package/src/features/background-agent/fallback-retry-handler.ts +0 -134
  181. package/src/features/background-agent/index.ts +0 -2
  182. package/src/features/background-agent/loop-detector.ts +0 -102
  183. package/src/features/background-agent/manager.ts +0 -2220
  184. package/src/features/background-agent/opencode-client.ts +0 -3
  185. package/src/features/background-agent/process-cleanup.ts +0 -98
  186. package/src/features/background-agent/remove-task-toast-tracking.ts +0 -8
  187. package/src/features/background-agent/session-existence.ts +0 -57
  188. package/src/features/background-agent/session-idle-event-handler.ts +0 -93
  189. package/src/features/background-agent/session-status-classifier.ts +0 -20
  190. package/src/features/background-agent/spawner/parent-directory-resolver.ts +0 -24
  191. package/src/features/background-agent/spawner.ts +0 -327
  192. package/src/features/background-agent/state.ts +0 -199
  193. package/src/features/background-agent/subagent-spawn-limits.ts +0 -97
  194. package/src/features/background-agent/task-history.ts +0 -79
  195. package/src/features/background-agent/task-poller.ts +0 -225
  196. package/src/features/background-agent/types.ts +0 -100
  197. package/src/features/boulder-state/constants.ts +0 -13
  198. package/src/features/boulder-state/index.ts +0 -4
  199. package/src/features/boulder-state/storage.ts +0 -336
  200. package/src/features/boulder-state/top-level-task.ts +0 -78
  201. package/src/features/boulder-state/types.ts +0 -61
  202. package/src/features/builtin-commands/commands.ts +0 -157
  203. package/src/features/builtin-commands/index.ts +0 -2
  204. package/src/features/builtin-commands/templates/doctor.ts +0 -43
  205. package/src/features/builtin-commands/templates/handoff.ts +0 -177
  206. package/src/features/builtin-commands/templates/init-deep.ts +0 -305
  207. package/src/features/builtin-commands/templates/mcp-status.ts +0 -36
  208. package/src/features/builtin-commands/templates/ralph-loop.ts +0 -66
  209. package/src/features/builtin-commands/templates/refactor.ts +0 -619
  210. package/src/features/builtin-commands/templates/remove-ai-slops.ts +0 -96
  211. package/src/features/builtin-commands/templates/start-work.ts +0 -128
  212. package/src/features/builtin-commands/templates/stop-continuation.ts +0 -13
  213. package/src/features/builtin-commands/types.ts +0 -9
  214. package/src/features/builtin-skills/index.ts +0 -2
  215. package/src/features/builtin-skills/materialize.ts +0 -338
  216. package/src/features/builtin-skills/skills/ai-slop-remover.ts +0 -145
  217. package/src/features/builtin-skills/skills/dev-browser.ts +0 -221
  218. package/src/features/builtin-skills/skills/frontend-ui-ux.ts +0 -79
  219. package/src/features/builtin-skills/skills/git-master-sections/commit-workflow.ts +0 -509
  220. package/src/features/builtin-skills/skills/git-master-sections/history-search-workflow.ts +0 -229
  221. package/src/features/builtin-skills/skills/git-master-sections/overview.ts +0 -64
  222. package/src/features/builtin-skills/skills/git-master-sections/quick-reference.ts +0 -86
  223. package/src/features/builtin-skills/skills/git-master-sections/rebase-workflow.ts +0 -181
  224. package/src/features/builtin-skills/skills/git-master-skill-metadata.ts +0 -4
  225. package/src/features/builtin-skills/skills/git-master.ts +0 -28
  226. package/src/features/builtin-skills/skills/hiai-opencode-setup.ts +0 -69
  227. package/src/features/builtin-skills/skills/index.ts +0 -9
  228. package/src/features/builtin-skills/skills/playwright-cli.ts +0 -268
  229. package/src/features/builtin-skills/skills/playwright.ts +0 -488
  230. package/src/features/builtin-skills/skills/review-work.ts +0 -536
  231. package/src/features/builtin-skills/skills/website-copywriting.ts +0 -41
  232. package/src/features/builtin-skills/skills.test.ts +0 -8
  233. package/src/features/builtin-skills/skills.ts +0 -50
  234. package/src/features/builtin-skills/types.ts +0 -16
  235. package/src/features/claude-code-agent-loader/agent-definitions-loader.ts +0 -87
  236. package/src/features/claude-code-agent-loader/claude-model-mapper.ts +0 -53
  237. package/src/features/claude-code-agent-loader/index.ts +0 -5
  238. package/src/features/claude-code-agent-loader/json-agent-loader.ts +0 -53
  239. package/src/features/claude-code-agent-loader/loader.ts +0 -86
  240. package/src/features/claude-code-agent-loader/opencode-config-agents-reader.ts +0 -125
  241. package/src/features/claude-code-agent-loader/types.ts +0 -31
  242. package/src/features/claude-code-command-loader/index.ts +0 -2
  243. package/src/features/claude-code-command-loader/loader.ts +0 -169
  244. package/src/features/claude-code-command-loader/types.ts +0 -46
  245. package/src/features/claude-code-mcp-loader/configure-allowed-env-vars.ts +0 -48
  246. package/src/features/claude-code-mcp-loader/env-expander.ts +0 -51
  247. package/src/features/claude-code-mcp-loader/index.ts +0 -12
  248. package/src/features/claude-code-mcp-loader/loader.ts +0 -156
  249. package/src/features/claude-code-mcp-loader/scope-filter.ts +0 -17
  250. package/src/features/claude-code-mcp-loader/transformer.ts +0 -57
  251. package/src/features/claude-code-mcp-loader/types.ts +0 -51
  252. package/src/features/claude-code-plugin-loader/agent-loader.ts +0 -59
  253. package/src/features/claude-code-plugin-loader/command-loader.ts +0 -53
  254. package/src/features/claude-code-plugin-loader/discovery.ts +0 -251
  255. package/src/features/claude-code-plugin-loader/hook-loader.ts +0 -26
  256. package/src/features/claude-code-plugin-loader/index.ts +0 -10
  257. package/src/features/claude-code-plugin-loader/loader.ts +0 -134
  258. package/src/features/claude-code-plugin-loader/mcp-server-loader.ts +0 -59
  259. package/src/features/claude-code-plugin-loader/plugin-path-resolver.ts +0 -23
  260. package/src/features/claude-code-plugin-loader/scope-filter.ts +0 -29
  261. package/src/features/claude-code-plugin-loader/skill-loader.ts +0 -62
  262. package/src/features/claude-code-plugin-loader/types.ts +0 -255
  263. package/src/features/claude-code-session-state/index.ts +0 -1
  264. package/src/features/claude-code-session-state/state.ts +0 -154
  265. package/src/features/claude-tasks/session-storage.ts +0 -52
  266. package/src/features/claude-tasks/storage.ts +0 -169
  267. package/src/features/claude-tasks/types.ts +0 -20
  268. package/src/features/context-injector/collector.ts +0 -91
  269. package/src/features/context-injector/index.ts +0 -14
  270. package/src/features/context-injector/injector.ts +0 -167
  271. package/src/features/context-injector/types.ts +0 -91
  272. package/src/features/hook-message-injector/constants.ts +0 -1
  273. package/src/features/hook-message-injector/index.ts +0 -11
  274. package/src/features/hook-message-injector/injector.ts +0 -437
  275. package/src/features/hook-message-injector/types.ts +0 -49
  276. package/src/features/mcp-oauth/AGENTS.md +0 -54
  277. package/src/features/mcp-oauth/callback-server.ts +0 -106
  278. package/src/features/mcp-oauth/dcr.ts +0 -98
  279. package/src/features/mcp-oauth/discovery.ts +0 -134
  280. package/src/features/mcp-oauth/oauth-authorization-flow.ts +0 -150
  281. package/src/features/mcp-oauth/provider.ts +0 -215
  282. package/src/features/mcp-oauth/refresh-mutex.ts +0 -58
  283. package/src/features/mcp-oauth/resource-indicator.ts +0 -16
  284. package/src/features/mcp-oauth/schema.ts +0 -8
  285. package/src/features/mcp-oauth/step-up.ts +0 -79
  286. package/src/features/mcp-oauth/storage.ts +0 -155
  287. package/src/features/opencode-skill-loader/AGENTS.md +0 -59
  288. package/src/features/opencode-skill-loader/allowed-tools-parser.ts +0 -9
  289. package/src/features/opencode-skill-loader/async-loader.ts +0 -213
  290. package/src/features/opencode-skill-loader/blocking.ts +0 -62
  291. package/src/features/opencode-skill-loader/config-source-discovery.ts +0 -114
  292. package/src/features/opencode-skill-loader/discover-worker.ts +0 -56
  293. package/src/features/opencode-skill-loader/git-master-template-injection.ts +0 -150
  294. package/src/features/opencode-skill-loader/index.ts +0 -17
  295. package/src/features/opencode-skill-loader/loaded-skill-from-path.ts +0 -73
  296. package/src/features/opencode-skill-loader/loaded-skill-template-extractor.ts +0 -16
  297. package/src/features/opencode-skill-loader/loader.ts +0 -183
  298. package/src/features/opencode-skill-loader/merger/builtin-skill-converter.ts +0 -26
  299. package/src/features/opencode-skill-loader/merger/config-skill-entry-loader.ts +0 -117
  300. package/src/features/opencode-skill-loader/merger/scope-priority.ts +0 -10
  301. package/src/features/opencode-skill-loader/merger/skill-definition-merger.ts +0 -31
  302. package/src/features/opencode-skill-loader/merger/skills-config-normalizer.ts +0 -19
  303. package/src/features/opencode-skill-loader/merger.ts +0 -96
  304. package/src/features/opencode-skill-loader/skill-content.ts +0 -11
  305. package/src/features/opencode-skill-loader/skill-deduplication.ts +0 -13
  306. package/src/features/opencode-skill-loader/skill-definition-record.ts +0 -11
  307. package/src/features/opencode-skill-loader/skill-directory-loader.ts +0 -112
  308. package/src/features/opencode-skill-loader/skill-discovery.ts +0 -76
  309. package/src/features/opencode-skill-loader/skill-mcp-config.ts +0 -45
  310. package/src/features/opencode-skill-loader/skill-resolution-options.ts +0 -9
  311. package/src/features/opencode-skill-loader/skill-template-resolver.ts +0 -97
  312. package/src/features/opencode-skill-loader/types.ts +0 -38
  313. package/src/features/run-continuation-state/constants.ts +0 -1
  314. package/src/features/run-continuation-state/index.ts +0 -3
  315. package/src/features/run-continuation-state/storage.ts +0 -80
  316. package/src/features/run-continuation-state/types.ts +0 -15
  317. package/src/features/skill-mcp-manager/AGENTS.md +0 -111
  318. package/src/features/skill-mcp-manager/cleanup.ts +0 -153
  319. package/src/features/skill-mcp-manager/connection-type.ts +0 -26
  320. package/src/features/skill-mcp-manager/connection.ts +0 -146
  321. package/src/features/skill-mcp-manager/env-cleaner.ts +0 -59
  322. package/src/features/skill-mcp-manager/error-redaction.ts +0 -47
  323. package/src/features/skill-mcp-manager/http-client.ts +0 -126
  324. package/src/features/skill-mcp-manager/index.ts +0 -2
  325. package/src/features/skill-mcp-manager/manager.ts +0 -178
  326. package/src/features/skill-mcp-manager/oauth-handler.ts +0 -160
  327. package/src/features/skill-mcp-manager/stdio-client.ts +0 -112
  328. package/src/features/skill-mcp-manager/types.ts +0 -96
  329. package/src/features/task-toast-manager/index.ts +0 -2
  330. package/src/features/task-toast-manager/manager.ts +0 -251
  331. package/src/features/task-toast-manager/types.ts +0 -29
  332. package/src/features/tmux-subagent/action-executor-core.ts +0 -82
  333. package/src/features/tmux-subagent/action-executor.ts +0 -137
  334. package/src/features/tmux-subagent/cleanup.ts +0 -42
  335. package/src/features/tmux-subagent/decision-engine.ts +0 -22
  336. package/src/features/tmux-subagent/event-handlers.ts +0 -6
  337. package/src/features/tmux-subagent/grid-planning.ts +0 -137
  338. package/src/features/tmux-subagent/index.ts +0 -16
  339. package/src/features/tmux-subagent/manager.ts +0 -969
  340. package/src/features/tmux-subagent/oldest-agent-pane.ts +0 -37
  341. package/src/features/tmux-subagent/pane-split-availability.ts +0 -77
  342. package/src/features/tmux-subagent/pane-state-parser.ts +0 -135
  343. package/src/features/tmux-subagent/pane-state-querier.ts +0 -76
  344. package/src/features/tmux-subagent/polling-constants.ts +0 -6
  345. package/src/features/tmux-subagent/polling-manager.ts +0 -167
  346. package/src/features/tmux-subagent/polling.ts +0 -183
  347. package/src/features/tmux-subagent/session-created-event.ts +0 -44
  348. package/src/features/tmux-subagent/session-created-handler.ts +0 -175
  349. package/src/features/tmux-subagent/session-deleted-handler.ts +0 -50
  350. package/src/features/tmux-subagent/session-message-count.ts +0 -3
  351. package/src/features/tmux-subagent/session-ready-waiter.ts +0 -44
  352. package/src/features/tmux-subagent/session-status-parser.ts +0 -17
  353. package/src/features/tmux-subagent/spawn-action-decider.ts +0 -147
  354. package/src/features/tmux-subagent/spawn-target-finder.ts +0 -146
  355. package/src/features/tmux-subagent/tmux-grid-constants.ts +0 -57
  356. package/src/features/tmux-subagent/tracked-session-state.ts +0 -29
  357. package/src/features/tmux-subagent/types.ts +0 -54
  358. package/src/features/tool-metadata-store/index.ts +0 -7
  359. package/src/features/tool-metadata-store/store.ts +0 -84
  360. package/src/hooks/agent-usage-reminder/constants.ts +0 -52
  361. package/src/hooks/agent-usage-reminder/hook.ts +0 -134
  362. package/src/hooks/agent-usage-reminder/index.ts +0 -1
  363. package/src/hooks/agent-usage-reminder/storage.ts +0 -42
  364. package/src/hooks/agent-usage-reminder/types.ts +0 -6
  365. package/src/hooks/anthropic-context-window-limit-recovery/AGENTS.md +0 -49
  366. package/src/hooks/anthropic-context-window-limit-recovery/aggressive-truncation-strategy.ts +0 -87
  367. package/src/hooks/anthropic-context-window-limit-recovery/client.ts +0 -21
  368. package/src/hooks/anthropic-context-window-limit-recovery/deduplication-recovery.ts +0 -77
  369. package/src/hooks/anthropic-context-window-limit-recovery/empty-content-recovery-sdk.ts +0 -199
  370. package/src/hooks/anthropic-context-window-limit-recovery/empty-content-recovery.ts +0 -149
  371. package/src/hooks/anthropic-context-window-limit-recovery/executor.ts +0 -83
  372. package/src/hooks/anthropic-context-window-limit-recovery/index.ts +0 -8
  373. package/src/hooks/anthropic-context-window-limit-recovery/message-builder.ts +0 -190
  374. package/src/hooks/anthropic-context-window-limit-recovery/message-storage-directory.ts +0 -40
  375. package/src/hooks/anthropic-context-window-limit-recovery/parser.ts +0 -209
  376. package/src/hooks/anthropic-context-window-limit-recovery/pruning-deduplication.ts +0 -189
  377. package/src/hooks/anthropic-context-window-limit-recovery/pruning-tool-output-truncation.ts +0 -142
  378. package/src/hooks/anthropic-context-window-limit-recovery/pruning-types.ts +0 -44
  379. package/src/hooks/anthropic-context-window-limit-recovery/recovery-hook.test-support.ts +0 -119
  380. package/src/hooks/anthropic-context-window-limit-recovery/recovery-hook.ts +0 -193
  381. package/src/hooks/anthropic-context-window-limit-recovery/recovery-strategy.ts +0 -2
  382. package/src/hooks/anthropic-context-window-limit-recovery/session-timeout-map.ts +0 -20
  383. package/src/hooks/anthropic-context-window-limit-recovery/state.ts +0 -78
  384. package/src/hooks/anthropic-context-window-limit-recovery/storage-paths.ts +0 -6
  385. package/src/hooks/anthropic-context-window-limit-recovery/storage.ts +0 -18
  386. package/src/hooks/anthropic-context-window-limit-recovery/summarize-retry-strategy.ts +0 -218
  387. package/src/hooks/anthropic-context-window-limit-recovery/target-token-truncation.ts +0 -196
  388. package/src/hooks/anthropic-context-window-limit-recovery/tool-part-types.ts +0 -38
  389. package/src/hooks/anthropic-context-window-limit-recovery/tool-result-storage-sdk.ts +0 -123
  390. package/src/hooks/anthropic-context-window-limit-recovery/tool-result-storage.ts +0 -119
  391. package/src/hooks/anthropic-context-window-limit-recovery/types.ts +0 -44
  392. package/src/hooks/anthropic-effort/hook.ts +0 -93
  393. package/src/hooks/anthropic-effort/index.ts +0 -1
  394. package/src/hooks/auto-slash-command/constants.ts +0 -12
  395. package/src/hooks/auto-slash-command/detector.ts +0 -88
  396. package/src/hooks/auto-slash-command/executor.ts +0 -165
  397. package/src/hooks/auto-slash-command/hook.ts +0 -238
  398. package/src/hooks/auto-slash-command/index.ts +0 -7
  399. package/src/hooks/auto-slash-command/processed-command-store.ts +0 -74
  400. package/src/hooks/auto-slash-command/types.ts +0 -42
  401. package/src/hooks/background-notification/hook.ts +0 -54
  402. package/src/hooks/background-notification/index.ts +0 -2
  403. package/src/hooks/background-notification/types.ts +0 -5
  404. package/src/hooks/bash-file-read-guard.ts +0 -44
  405. package/src/hooks/category-skill-reminder/formatter.ts +0 -37
  406. package/src/hooks/category-skill-reminder/hook.ts +0 -142
  407. package/src/hooks/category-skill-reminder/index.ts +0 -1
  408. package/src/hooks/claude-code-hooks/AGENTS.md +0 -41
  409. package/src/hooks/claude-code-hooks/claude-code-hooks-hook.ts +0 -28
  410. package/src/hooks/claude-code-hooks/config-loader.ts +0 -151
  411. package/src/hooks/claude-code-hooks/config.ts +0 -147
  412. package/src/hooks/claude-code-hooks/dispatch-hook.ts +0 -27
  413. package/src/hooks/claude-code-hooks/execute-http-hook.ts +0 -116
  414. package/src/hooks/claude-code-hooks/handlers/chat-message-handler.ts +0 -140
  415. package/src/hooks/claude-code-hooks/handlers/pre-compact-handler.ts +0 -41
  416. package/src/hooks/claude-code-hooks/handlers/session-event-handler.ts +0 -137
  417. package/src/hooks/claude-code-hooks/handlers/tool-execute-after-handler.ts +0 -160
  418. package/src/hooks/claude-code-hooks/handlers/tool-execute-before-handler.ts +0 -93
  419. package/src/hooks/claude-code-hooks/index.ts +0 -1
  420. package/src/hooks/claude-code-hooks/plugin-config.ts +0 -12
  421. package/src/hooks/claude-code-hooks/post-tool-use.ts +0 -195
  422. package/src/hooks/claude-code-hooks/pre-compact.ts +0 -105
  423. package/src/hooks/claude-code-hooks/pre-tool-use.ts +0 -168
  424. package/src/hooks/claude-code-hooks/session-hook-state.ts +0 -17
  425. package/src/hooks/claude-code-hooks/stop.ts +0 -118
  426. package/src/hooks/claude-code-hooks/todo.ts +0 -76
  427. package/src/hooks/claude-code-hooks/tool-input-cache.ts +0 -82
  428. package/src/hooks/claude-code-hooks/transcript.ts +0 -248
  429. package/src/hooks/claude-code-hooks/types.ts +0 -214
  430. package/src/hooks/claude-code-hooks/user-prompt-submit.ts +0 -121
  431. package/src/hooks/comment-checker/cli-runner.ts +0 -127
  432. package/src/hooks/comment-checker/cli.ts +0 -269
  433. package/src/hooks/comment-checker/downloader.ts +0 -170
  434. package/src/hooks/comment-checker/hook.ts +0 -192
  435. package/src/hooks/comment-checker/index.ts +0 -1
  436. package/src/hooks/comment-checker/pending-calls.ts +0 -45
  437. package/src/hooks/comment-checker/types.ts +0 -33
  438. package/src/hooks/compaction-context-injector/compaction-context-prompt.ts +0 -56
  439. package/src/hooks/compaction-context-injector/constants.ts +0 -5
  440. package/src/hooks/compaction-context-injector/hook.ts +0 -164
  441. package/src/hooks/compaction-context-injector/index.ts +0 -1
  442. package/src/hooks/compaction-context-injector/recovery-prompt-config.ts +0 -77
  443. package/src/hooks/compaction-context-injector/recovery.ts +0 -163
  444. package/src/hooks/compaction-context-injector/session-id.ts +0 -8
  445. package/src/hooks/compaction-context-injector/session-prompt-config-resolver.ts +0 -120
  446. package/src/hooks/compaction-context-injector/tail-monitor.ts +0 -52
  447. package/src/hooks/compaction-context-injector/types.ts +0 -25
  448. package/src/hooks/compaction-context-injector/validated-model.ts +0 -47
  449. package/src/hooks/compaction-todo-preserver/hook.ts +0 -127
  450. package/src/hooks/compaction-todo-preserver/index.ts +0 -2
  451. package/src/hooks/context-window-monitor.ts +0 -113
  452. package/src/hooks/delegate-task-retry/guidance.ts +0 -45
  453. package/src/hooks/delegate-task-retry/hook.ts +0 -22
  454. package/src/hooks/delegate-task-retry/index.ts +0 -4
  455. package/src/hooks/delegate-task-retry/patterns.ts +0 -77
  456. package/src/hooks/directory-agents-injector/constants.ts +0 -7
  457. package/src/hooks/directory-agents-injector/finder.ts +0 -38
  458. package/src/hooks/directory-agents-injector/hook.ts +0 -80
  459. package/src/hooks/directory-agents-injector/index.ts +0 -1
  460. package/src/hooks/directory-agents-injector/injector.ts +0 -59
  461. package/src/hooks/directory-agents-injector/storage.ts +0 -8
  462. package/src/hooks/directory-readme-injector/constants.ts +0 -7
  463. package/src/hooks/directory-readme-injector/finder.ts +0 -33
  464. package/src/hooks/directory-readme-injector/hook.ts +0 -80
  465. package/src/hooks/directory-readme-injector/index.ts +0 -1
  466. package/src/hooks/directory-readme-injector/injector.ts +0 -59
  467. package/src/hooks/directory-readme-injector/storage.ts +0 -8
  468. package/src/hooks/edit-error-recovery/hook.ts +0 -58
  469. package/src/hooks/edit-error-recovery/index.ts +0 -5
  470. package/src/hooks/empty-task-response-detector.ts +0 -27
  471. package/src/hooks/fast-apply/hook.ts +0 -11
  472. package/src/hooks/fast-apply/index.ts +0 -1
  473. package/src/hooks/fast-apply/ollama-client.ts +0 -53
  474. package/src/hooks/fast-apply/tool-execute-before-handler.ts +0 -86
  475. package/src/hooks/guard/AGENTS.md +0 -64
  476. package/src/hooks/guard/background-launch-session-tracking.ts +0 -97
  477. package/src/hooks/guard/bob-path.ts +0 -8
  478. package/src/hooks/guard/boulder-continuation-injector.ts +0 -109
  479. package/src/hooks/guard/boulder-session-lineage.ts +0 -44
  480. package/src/hooks/guard/event-handler.ts +0 -104
  481. package/src/hooks/guard/final-wave-approval-gate.ts +0 -47
  482. package/src/hooks/guard/final-wave-plan-state.ts +0 -60
  483. package/src/hooks/guard/guard-hook.ts +0 -27
  484. package/src/hooks/guard/hook-name.ts +0 -1
  485. package/src/hooks/guard/idle-event.ts +0 -341
  486. package/src/hooks/guard/index.ts +0 -3
  487. package/src/hooks/guard/is-abort-error.ts +0 -20
  488. package/src/hooks/guard/recent-model-resolver.ts +0 -89
  489. package/src/hooks/guard/resolve-active-boulder-session.ts +0 -29
  490. package/src/hooks/guard/session-last-agent.ts +0 -153
  491. package/src/hooks/guard/subagent-session-id.ts +0 -54
  492. package/src/hooks/guard/system-reminder-templates.ts +0 -249
  493. package/src/hooks/guard/task-context.ts +0 -45
  494. package/src/hooks/guard/tool-execute-after.ts +0 -209
  495. package/src/hooks/guard/tool-execute-before.ts +0 -102
  496. package/src/hooks/guard/tsconfig.json +0 -9
  497. package/src/hooks/guard/types.ts +0 -45
  498. package/src/hooks/guard/verification-reminders.ts +0 -197
  499. package/src/hooks/guard/write-edit-tool-policy.ts +0 -5
  500. package/src/hooks/hashline-edit-diff-enhancer/hook.ts +0 -106
  501. package/src/hooks/hashline-read-enhancer/hook.ts +0 -193
  502. package/src/hooks/hashline-read-enhancer/index.ts +0 -1
  503. package/src/hooks/index.ts +0 -56
  504. package/src/hooks/interactive-bash-session/constants.ts +0 -13
  505. package/src/hooks/interactive-bash-session/hook.ts +0 -125
  506. package/src/hooks/interactive-bash-session/index.ts +0 -3
  507. package/src/hooks/interactive-bash-session/interactive-bash-session-tracker.ts +0 -119
  508. package/src/hooks/interactive-bash-session/parser.ts +0 -118
  509. package/src/hooks/interactive-bash-session/state-manager.ts +0 -35
  510. package/src/hooks/interactive-bash-session/storage.ts +0 -59
  511. package/src/hooks/interactive-bash-session/tmux-command-parser.ts +0 -125
  512. package/src/hooks/interactive-bash-session/types.ts +0 -11
  513. package/src/hooks/json-error-recovery/hook.ts +0 -58
  514. package/src/hooks/json-error-recovery/index.ts +0 -6
  515. package/src/hooks/keyword-detector/AGENTS.md +0 -57
  516. package/src/hooks/keyword-detector/analyze/default.ts +0 -28
  517. package/src/hooks/keyword-detector/analyze/index.ts +0 -1
  518. package/src/hooks/keyword-detector/constants.ts +0 -45
  519. package/src/hooks/keyword-detector/detector.ts +0 -53
  520. package/src/hooks/keyword-detector/hook.ts +0 -143
  521. package/src/hooks/keyword-detector/index.ts +0 -5
  522. package/src/hooks/keyword-detector/search/default.ts +0 -20
  523. package/src/hooks/keyword-detector/search/index.ts +0 -1
  524. package/src/hooks/keyword-detector/types.ts +0 -4
  525. package/src/hooks/keyword-detector/ultrawork/default.ts +0 -302
  526. package/src/hooks/keyword-detector/ultrawork/gemini.ts +0 -290
  527. package/src/hooks/keyword-detector/ultrawork/gpt.ts +0 -171
  528. package/src/hooks/keyword-detector/ultrawork/index.ts +0 -56
  529. package/src/hooks/keyword-detector/ultrawork/planner.ts +0 -140
  530. package/src/hooks/keyword-detector/ultrawork/source-detector.ts +0 -65
  531. package/src/hooks/legacy-plugin-toast/auto-migrate-runner.ts +0 -2
  532. package/src/hooks/legacy-plugin-toast/auto-migrate.ts +0 -64
  533. package/src/hooks/legacy-plugin-toast/hook.ts +0 -68
  534. package/src/hooks/legacy-plugin-toast/index.ts +0 -1
  535. package/src/hooks/legacy-plugin-toast/plugin-entry-migrator.ts +0 -1
  536. package/src/hooks/model-fallback/chat-message-fallback-handler.ts +0 -74
  537. package/src/hooks/model-fallback/hook.ts +0 -201
  538. package/src/hooks/model-fallback/next-fallback.ts +0 -84
  539. package/src/hooks/non-interactive-env/constants.ts +0 -70
  540. package/src/hooks/non-interactive-env/detector.ts +0 -19
  541. package/src/hooks/non-interactive-env/index.ts +0 -5
  542. package/src/hooks/non-interactive-env/non-interactive-env-hook.ts +0 -73
  543. package/src/hooks/non-interactive-env/types.ts +0 -3
  544. package/src/hooks/preemptive-compaction-degradation-monitor.ts +0 -212
  545. package/src/hooks/preemptive-compaction-no-text-tail.ts +0 -70
  546. package/src/hooks/preemptive-compaction.ts +0 -218
  547. package/src/hooks/question-label-truncator/hook.ts +0 -62
  548. package/src/hooks/question-label-truncator/index.ts +0 -1
  549. package/src/hooks/ralph-loop/AGENTS.md +0 -62
  550. package/src/hooks/ralph-loop/command-arguments.ts +0 -30
  551. package/src/hooks/ralph-loop/completion-handler.ts +0 -65
  552. package/src/hooks/ralph-loop/completion-promise-detector-test-input.ts +0 -23
  553. package/src/hooks/ralph-loop/completion-promise-detector.ts +0 -165
  554. package/src/hooks/ralph-loop/constants.ts +0 -7
  555. package/src/hooks/ralph-loop/continuation-prompt-builder.ts +0 -77
  556. package/src/hooks/ralph-loop/continuation-prompt-injector.ts +0 -91
  557. package/src/hooks/ralph-loop/index.ts +0 -6
  558. package/src/hooks/ralph-loop/iteration-continuation.ts +0 -64
  559. package/src/hooks/ralph-loop/logician-verification-detector.ts +0 -88
  560. package/src/hooks/ralph-loop/loop-session-recovery.ts +0 -33
  561. package/src/hooks/ralph-loop/loop-state-controller.ts +0 -178
  562. package/src/hooks/ralph-loop/message-storage-directory.ts +0 -1
  563. package/src/hooks/ralph-loop/pending-verification-handler.ts +0 -152
  564. package/src/hooks/ralph-loop/ralph-loop-event-handler.ts +0 -231
  565. package/src/hooks/ralph-loop/ralph-loop-hook.ts +0 -90
  566. package/src/hooks/ralph-loop/session-event-handler.ts +0 -56
  567. package/src/hooks/ralph-loop/session-reset-strategy.ts +0 -69
  568. package/src/hooks/ralph-loop/storage.ts +0 -164
  569. package/src/hooks/ralph-loop/types.ts +0 -25
  570. package/src/hooks/ralph-loop/verification-failure-handler.ts +0 -103
  571. package/src/hooks/ralph-loop/with-timeout.ts +0 -20
  572. package/src/hooks/read-image-resizer/hook.ts +0 -209
  573. package/src/hooks/read-image-resizer/image-dimensions.ts +0 -191
  574. package/src/hooks/read-image-resizer/image-resizer.ts +0 -191
  575. package/src/hooks/read-image-resizer/index.ts +0 -1
  576. package/src/hooks/read-image-resizer/png-fallback-resizer.ts +0 -359
  577. package/src/hooks/read-image-resizer/types.ts +0 -16
  578. package/src/hooks/rules-injector/AGENTS.md +0 -53
  579. package/src/hooks/rules-injector/cache.ts +0 -27
  580. package/src/hooks/rules-injector/constants.ts +0 -31
  581. package/src/hooks/rules-injector/finder.ts +0 -3
  582. package/src/hooks/rules-injector/hook.ts +0 -94
  583. package/src/hooks/rules-injector/index.ts +0 -2
  584. package/src/hooks/rules-injector/injector.ts +0 -189
  585. package/src/hooks/rules-injector/matcher.ts +0 -63
  586. package/src/hooks/rules-injector/output-path.ts +0 -22
  587. package/src/hooks/rules-injector/parser.ts +0 -211
  588. package/src/hooks/rules-injector/project-root-finder.ts +0 -36
  589. package/src/hooks/rules-injector/rule-distance.ts +0 -53
  590. package/src/hooks/rules-injector/rule-file-finder.ts +0 -139
  591. package/src/hooks/rules-injector/rule-file-scanner.ts +0 -55
  592. package/src/hooks/rules-injector/storage.ts +0 -59
  593. package/src/hooks/rules-injector/types.ts +0 -57
  594. package/src/hooks/runtime-fallback/AGENTS.md +0 -102
  595. package/src/hooks/runtime-fallback/agent-resolver.ts +0 -50
  596. package/src/hooks/runtime-fallback/auto-retry-signal.ts +0 -32
  597. package/src/hooks/runtime-fallback/auto-retry.ts +0 -228
  598. package/src/hooks/runtime-fallback/chat-message-handler.ts +0 -62
  599. package/src/hooks/runtime-fallback/constants.ts +0 -47
  600. package/src/hooks/runtime-fallback/error-classifier.ts +0 -183
  601. package/src/hooks/runtime-fallback/event-handler.ts +0 -213
  602. package/src/hooks/runtime-fallback/fallback-bootstrap-model.ts +0 -63
  603. package/src/hooks/runtime-fallback/fallback-models.ts +0 -86
  604. package/src/hooks/runtime-fallback/fallback-retry-dispatcher.ts +0 -55
  605. package/src/hooks/runtime-fallback/fallback-state.ts +0 -74
  606. package/src/hooks/runtime-fallback/hook.ts +0 -87
  607. package/src/hooks/runtime-fallback/index.ts +0 -2
  608. package/src/hooks/runtime-fallback/last-user-retry-parts.ts +0 -20
  609. package/src/hooks/runtime-fallback/message-update-handler.ts +0 -168
  610. package/src/hooks/runtime-fallback/retry-model-payload.ts +0 -30
  611. package/src/hooks/runtime-fallback/session-messages.ts +0 -38
  612. package/src/hooks/runtime-fallback/session-status-handler.ts +0 -126
  613. package/src/hooks/runtime-fallback/types.ts +0 -77
  614. package/src/hooks/runtime-fallback/visible-assistant-response.ts +0 -80
  615. package/src/hooks/session-notification-content.ts +0 -145
  616. package/src/hooks/session-notification-formatting.ts +0 -25
  617. package/src/hooks/session-notification-scheduler.ts +0 -188
  618. package/src/hooks/session-notification-sender.ts +0 -117
  619. package/src/hooks/session-notification-utils.ts +0 -80
  620. package/src/hooks/session-notification.ts +0 -219
  621. package/src/hooks/session-recovery/AGENTS.md +0 -59
  622. package/src/hooks/session-recovery/constants.ts +0 -5
  623. package/src/hooks/session-recovery/detect-error-type.ts +0 -102
  624. package/src/hooks/session-recovery/hook.ts +0 -166
  625. package/src/hooks/session-recovery/index.ts +0 -7
  626. package/src/hooks/session-recovery/recover-empty-content-message-sdk.ts +0 -201
  627. package/src/hooks/session-recovery/recover-thinking-block-order.ts +0 -137
  628. package/src/hooks/session-recovery/recover-thinking-disabled-violation.ts +0 -75
  629. package/src/hooks/session-recovery/recover-tool-result-missing.ts +0 -108
  630. package/src/hooks/session-recovery/recover-unavailable-tool.ts +0 -108
  631. package/src/hooks/session-recovery/resume.ts +0 -49
  632. package/src/hooks/session-recovery/storage/empty-messages.ts +0 -47
  633. package/src/hooks/session-recovery/storage/empty-text.ts +0 -118
  634. package/src/hooks/session-recovery/storage/message-dir.ts +0 -1
  635. package/src/hooks/session-recovery/storage/messages-reader.ts +0 -83
  636. package/src/hooks/session-recovery/storage/orphan-thinking-search.ts +0 -43
  637. package/src/hooks/session-recovery/storage/part-content.ts +0 -28
  638. package/src/hooks/session-recovery/storage/part-id.ts +0 -5
  639. package/src/hooks/session-recovery/storage/parts-reader.ts +0 -56
  640. package/src/hooks/session-recovery/storage/text-part-injector.ts +0 -63
  641. package/src/hooks/session-recovery/storage/thinking-block-search.ts +0 -42
  642. package/src/hooks/session-recovery/storage/thinking-prepend.ts +0 -223
  643. package/src/hooks/session-recovery/storage/thinking-strip.ts +0 -67
  644. package/src/hooks/session-recovery/storage.ts +0 -34
  645. package/src/hooks/session-recovery/types.ts +0 -101
  646. package/src/hooks/session-todo-status.ts +0 -20
  647. package/src/hooks/shared/compaction-model-resolver.ts +0 -34
  648. package/src/hooks/shared/shared/compaction-model-resolver.ts +0 -34
  649. package/src/hooks/start-work/context-info-builder.ts +0 -319
  650. package/src/hooks/start-work/index.ts +0 -4
  651. package/src/hooks/start-work/parse-user-request.ts +0 -32
  652. package/src/hooks/start-work/start-work-hook.ts +0 -135
  653. package/src/hooks/start-work/worktree-block.ts +0 -11
  654. package/src/hooks/start-work/worktree-detector.ts +0 -77
  655. package/src/hooks/stop-continuation-guard/hook.ts +0 -122
  656. package/src/hooks/stop-continuation-guard/index.ts +0 -2
  657. package/src/hooks/strategist-md-only/agent-matcher.ts +0 -5
  658. package/src/hooks/strategist-md-only/agent-resolution.ts +0 -70
  659. package/src/hooks/strategist-md-only/constants.ts +0 -78
  660. package/src/hooks/strategist-md-only/hook.ts +0 -82
  661. package/src/hooks/strategist-md-only/index.ts +0 -2
  662. package/src/hooks/strategist-md-only/path-policy.ts +0 -41
  663. package/src/hooks/sub-notepad/constants.ts +0 -29
  664. package/src/hooks/sub-notepad/hook.ts +0 -44
  665. package/src/hooks/sub-notepad/index.ts +0 -3
  666. package/src/hooks/task-reminder/hook.ts +0 -59
  667. package/src/hooks/task-reminder/index.ts +0 -1
  668. package/src/hooks/task-resume-info/hook.ts +0 -39
  669. package/src/hooks/task-resume-info/index.ts +0 -1
  670. package/src/hooks/tasks-todowrite-disabler/constants.ts +0 -30
  671. package/src/hooks/tasks-todowrite-disabler/hook.ts +0 -34
  672. package/src/hooks/tasks-todowrite-disabler/index.ts +0 -2
  673. package/src/hooks/think-mode/detector.ts +0 -59
  674. package/src/hooks/think-mode/hook.ts +0 -76
  675. package/src/hooks/think-mode/index.ts +0 -5
  676. package/src/hooks/think-mode/switcher.ts +0 -100
  677. package/src/hooks/think-mode/types.ts +0 -16
  678. package/src/hooks/thinking-block-validator/hook.ts +0 -181
  679. package/src/hooks/thinking-block-validator/index.ts +0 -1
  680. package/src/hooks/todo-continuation-enforcer/AGENTS.md +0 -65
  681. package/src/hooks/todo-continuation-enforcer/abort-detection.ts +0 -17
  682. package/src/hooks/todo-continuation-enforcer/compaction-guard.ts +0 -39
  683. package/src/hooks/todo-continuation-enforcer/constants.ts +0 -25
  684. package/src/hooks/todo-continuation-enforcer/continuation-injection.ts +0 -222
  685. package/src/hooks/todo-continuation-enforcer/countdown.ts +0 -86
  686. package/src/hooks/todo-continuation-enforcer/handler.ts +0 -99
  687. package/src/hooks/todo-continuation-enforcer/idle-event.ts +0 -225
  688. package/src/hooks/todo-continuation-enforcer/index.ts +0 -59
  689. package/src/hooks/todo-continuation-enforcer/message-directory.ts +0 -1
  690. package/src/hooks/todo-continuation-enforcer/non-idle-events.ts +0 -107
  691. package/src/hooks/todo-continuation-enforcer/pending-question-detection.ts +0 -40
  692. package/src/hooks/todo-continuation-enforcer/resolve-message-info.ts +0 -48
  693. package/src/hooks/todo-continuation-enforcer/session-state.ts +0 -283
  694. package/src/hooks/todo-continuation-enforcer/stagnation-detection.ts +0 -36
  695. package/src/hooks/todo-continuation-enforcer/todo.ts +0 -11
  696. package/src/hooks/todo-continuation-enforcer/token-limit-detection.ts +0 -38
  697. package/src/hooks/todo-continuation-enforcer/types.ts +0 -74
  698. package/src/hooks/todo-description-override/description.ts +0 -28
  699. package/src/hooks/todo-description-override/hook.ts +0 -14
  700. package/src/hooks/todo-description-override/index.ts +0 -1
  701. package/src/hooks/tool-output-truncator.ts +0 -66
  702. package/src/hooks/tool-pair-validator/hook.ts +0 -184
  703. package/src/hooks/tool-pair-validator/index.ts +0 -1
  704. package/src/hooks/unstable-agent-babysitter/index.ts +0 -9
  705. package/src/hooks/unstable-agent-babysitter/task-message-analyzer.ts +0 -110
  706. package/src/hooks/unstable-agent-babysitter/unstable-agent-babysitter-hook.ts +0 -238
  707. package/src/hooks/webfetch-redirect-guard/constants.ts +0 -11
  708. package/src/hooks/webfetch-redirect-guard/hook.ts +0 -123
  709. package/src/hooks/webfetch-redirect-guard/index.ts +0 -1
  710. package/src/hooks/webfetch-redirect-guard/redirect-resolution.ts +0 -89
  711. package/src/hooks/write-existing-file-guard/hook.ts +0 -108
  712. package/src/hooks/write-existing-file-guard/index.ts +0 -1
  713. package/src/hooks/write-existing-file-guard/session-read-permissions.ts +0 -36
  714. package/src/hooks/write-existing-file-guard/tool-execute-before-handler.ts +0 -176
  715. package/src/index.ts +0 -254
  716. package/src/internals/plugins/pty/LICENSE +0 -21
  717. package/src/internals/plugins/pty/constants.ts +0 -7
  718. package/src/internals/plugins/pty/plugin.ts +0 -28
  719. package/src/internals/plugins/pty/pty/buffer.ts +0 -75
  720. package/src/internals/plugins/pty/pty/formatters.ts +0 -22
  721. package/src/internals/plugins/pty/pty/manager.ts +0 -175
  722. package/src/internals/plugins/pty/pty/notification-manager.ts +0 -75
  723. package/src/internals/plugins/pty/pty/output-manager.ts +0 -29
  724. package/src/internals/plugins/pty/pty/permissions.ts +0 -115
  725. package/src/internals/plugins/pty/pty/session-lifecycle.ts +0 -161
  726. package/src/internals/plugins/pty/pty/tools/kill.ts +0 -41
  727. package/src/internals/plugins/pty/pty/tools/kill.txt +0 -25
  728. package/src/internals/plugins/pty/pty/tools/list.ts +0 -25
  729. package/src/internals/plugins/pty/pty/tools/list.txt +0 -22
  730. package/src/internals/plugins/pty/pty/tools/read.ts +0 -234
  731. package/src/internals/plugins/pty/pty/tools/read.txt +0 -39
  732. package/src/internals/plugins/pty/pty/tools/spawn.ts +0 -71
  733. package/src/internals/plugins/pty/pty/tools/spawn.txt +0 -47
  734. package/src/internals/plugins/pty/pty/tools/write.ts +0 -96
  735. package/src/internals/plugins/pty/pty/tools/write.txt +0 -28
  736. package/src/internals/plugins/pty/pty/types.ts +0 -67
  737. package/src/internals/plugins/pty/pty/utils.ts +0 -21
  738. package/src/internals/plugins/pty/pty/wildcard.ts +0 -62
  739. package/src/internals/plugins/pty/shared/constants.ts +0 -7
  740. package/src/internals/plugins/pty/types.ts +0 -7
  741. package/src/internals/plugins/subtask2/LICENSE +0 -128
  742. package/src/internals/plugins/subtask2/commands/index.ts +0 -7
  743. package/src/internals/plugins/subtask2/commands/loader.ts +0 -39
  744. package/src/internals/plugins/subtask2/commands/manifest.ts +0 -60
  745. package/src/internals/plugins/subtask2/commands/resolver.ts +0 -28
  746. package/src/internals/plugins/subtask2/core/plugin.ts +0 -52
  747. package/src/internals/plugins/subtask2/core/state.ts +0 -764
  748. package/src/internals/plugins/subtask2/features/auto.ts +0 -57
  749. package/src/internals/plugins/subtask2/features/index.ts +0 -9
  750. package/src/internals/plugins/subtask2/features/inline-subtasks.ts +0 -205
  751. package/src/internals/plugins/subtask2/features/parallel.ts +0 -148
  752. package/src/internals/plugins/subtask2/features/results.ts +0 -48
  753. package/src/internals/plugins/subtask2/features/returns.ts +0 -273
  754. package/src/internals/plugins/subtask2/features/turns.ts +0 -190
  755. package/src/internals/plugins/subtask2/hooks/command-hooks.ts +0 -283
  756. package/src/internals/plugins/subtask2/hooks/message-hooks.ts +0 -603
  757. package/src/internals/plugins/subtask2/hooks/session-idle-hook.ts +0 -358
  758. package/src/internals/plugins/subtask2/hooks/tool-hooks.ts +0 -309
  759. package/src/internals/plugins/subtask2/loop.ts +0 -122
  760. package/src/internals/plugins/subtask2/parsing/auto.ts +0 -33
  761. package/src/internals/plugins/subtask2/parsing/commands.ts +0 -154
  762. package/src/internals/plugins/subtask2/parsing/frontmatter.ts +0 -20
  763. package/src/internals/plugins/subtask2/parsing/index.ts +0 -10
  764. package/src/internals/plugins/subtask2/parsing/overrides.ts +0 -68
  765. package/src/internals/plugins/subtask2/parsing/parallel.ts +0 -91
  766. package/src/internals/plugins/subtask2/parsing/turns.ts +0 -78
  767. package/src/internals/plugins/subtask2/types.ts +0 -41
  768. package/src/internals/plugins/subtask2/utils/config.ts +0 -100
  769. package/src/internals/plugins/subtask2/utils/index.ts +0 -7
  770. package/src/internals/plugins/subtask2/utils/logger.ts +0 -67
  771. package/src/internals/plugins/subtask2/utils/prompts.ts +0 -117
  772. package/src/lsp/index.ts +0 -16
  773. package/src/mcp/context7.ts +0 -9
  774. package/src/mcp/index.ts +0 -53
  775. package/src/mcp/registry.ts +0 -164
  776. package/src/mcp/types.ts +0 -19
  777. package/src/permissions/index.ts +0 -25
  778. package/src/plugin/AGENTS.md +0 -54
  779. package/src/plugin/available-categories.ts +0 -24
  780. package/src/plugin/chat-headers.ts +0 -141
  781. package/src/plugin/chat-message.ts +0 -307
  782. package/src/plugin/chat-params.ts +0 -182
  783. package/src/plugin/command-execute-before.ts +0 -80
  784. package/src/plugin/event.ts +0 -639
  785. package/src/plugin/hooks/create-continuation-hooks.ts +0 -128
  786. package/src/plugin/hooks/create-core-hooks.ts +0 -47
  787. package/src/plugin/hooks/create-session-hooks.ts +0 -269
  788. package/src/plugin/hooks/create-skill-hooks.ts +0 -50
  789. package/src/plugin/hooks/create-tool-guard-hooks.ts +0 -159
  790. package/src/plugin/hooks/create-transform-hooks.ts +0 -85
  791. package/src/plugin/messages-transform.ts +0 -28
  792. package/src/plugin/normalize-tool-arg-schemas.ts +0 -75
  793. package/src/plugin/recent-synthetic-idles.ts +0 -20
  794. package/src/plugin/session-agent-resolver.ts +0 -37
  795. package/src/plugin/session-status-normalizer.ts +0 -22
  796. package/src/plugin/skill-context.ts +0 -150
  797. package/src/plugin/skill-discovery-config.ts +0 -32
  798. package/src/plugin/startup-diagnostics.ts +0 -27
  799. package/src/plugin/system-transform.ts +0 -6
  800. package/src/plugin/tool-execute-after.ts +0 -178
  801. package/src/plugin/tool-execute-before.ts +0 -222
  802. package/src/plugin/tool-registry.ts +0 -286
  803. package/src/plugin/types.ts +0 -26
  804. package/src/plugin/ultrawork-db-model-override.ts +0 -142
  805. package/src/plugin/ultrawork-model-override.ts +0 -196
  806. package/src/plugin/ultrawork-variant-availability.ts +0 -51
  807. package/src/plugin/unstable-agent-babysitter.ts +0 -41
  808. package/src/plugin-config.ts +0 -314
  809. package/src/plugin-dispose.ts +0 -51
  810. package/src/plugin-handlers/AGENTS.md +0 -92
  811. package/src/plugin-handlers/agent-config-handler.ts +0 -510
  812. package/src/plugin-handlers/agent-key-remapper.ts +0 -39
  813. package/src/plugin-handlers/agent-override-protection.ts +0 -38
  814. package/src/plugin-handlers/agent-priority-order.ts +0 -63
  815. package/src/plugin-handlers/category-config-resolver.ts +0 -9
  816. package/src/plugin-handlers/command-config-handler.ts +0 -115
  817. package/src/plugin-handlers/config-handler.ts +0 -61
  818. package/src/plugin-handlers/index.ts +0 -10
  819. package/src/plugin-handlers/mcp-config-handler.test.ts +0 -63
  820. package/src/plugin-handlers/mcp-config-handler.ts +0 -220
  821. package/src/plugin-handlers/plan-model-inheritance.ts +0 -27
  822. package/src/plugin-handlers/plugin-components-loader.ts +0 -70
  823. package/src/plugin-handlers/provider-config-handler.ts +0 -73
  824. package/src/plugin-handlers/strategist-agent-config-builder.ts +0 -128
  825. package/src/plugin-handlers/tool-config-handler.ts +0 -193
  826. package/src/plugin-interface.ts +0 -83
  827. package/src/plugin-state.ts +0 -18
  828. package/src/shared/AGENTS.md +0 -54
  829. package/src/shared/agent-display-names.test.ts +0 -9
  830. package/src/shared/agent-display-names.ts +0 -187
  831. package/src/shared/agent-tool-restrictions.ts +0 -80
  832. package/src/shared/agent-variant.ts +0 -101
  833. package/src/shared/agents-config-dir.ts +0 -23
  834. package/src/shared/archive-entry-validator.ts +0 -83
  835. package/src/shared/background-output-consumption.ts +0 -69
  836. package/src/shared/binary-downloader.ts +0 -127
  837. package/src/shared/claude-config-dir.ts +0 -16
  838. package/src/shared/closure-protocol.ts +0 -53
  839. package/src/shared/command-executor/embedded-commands.ts +0 -26
  840. package/src/shared/command-executor/execute-command.ts +0 -28
  841. package/src/shared/command-executor/execute-hook-command.ts +0 -129
  842. package/src/shared/command-executor/home-directory.ts +0 -5
  843. package/src/shared/command-executor/resolve-commands-in-text.ts +0 -49
  844. package/src/shared/command-executor/shell-path.ts +0 -27
  845. package/src/shared/command-executor.ts +0 -5
  846. package/src/shared/compaction-agent-config-checkpoint.ts +0 -42
  847. package/src/shared/compaction-marker.ts +0 -61
  848. package/src/shared/config-errors.ts +0 -18
  849. package/src/shared/connected-providers-cache.ts +0 -215
  850. package/src/shared/contains-path.ts +0 -50
  851. package/src/shared/context-limit-resolver.ts +0 -42
  852. package/src/shared/data-path.ts +0 -64
  853. package/src/shared/deep-merge.ts +0 -53
  854. package/src/shared/disabled-tools.ts +0 -19
  855. package/src/shared/dynamic-truncator.ts +0 -222
  856. package/src/shared/external-plugin-detector.ts +0 -139
  857. package/src/shared/fallback-chain-from-models.ts +0 -124
  858. package/src/shared/fallback-model-availability.ts +0 -102
  859. package/src/shared/file-reference-resolver.ts +0 -99
  860. package/src/shared/file-utils.ts +0 -34
  861. package/src/shared/first-message-variant.ts +0 -28
  862. package/src/shared/frontmatter.ts +0 -31
  863. package/src/shared/git-worktree/collect-git-diff-stats.ts +0 -56
  864. package/src/shared/git-worktree/format-file-changes.ts +0 -46
  865. package/src/shared/git-worktree/index.ts +0 -7
  866. package/src/shared/git-worktree/parse-diff-numstat.ts +0 -27
  867. package/src/shared/git-worktree/parse-status-porcelain-line.ts +0 -27
  868. package/src/shared/git-worktree/parse-status-porcelain.ts +0 -15
  869. package/src/shared/git-worktree/types.ts +0 -8
  870. package/src/shared/hook-disabled.ts +0 -22
  871. package/src/shared/index.ts +0 -80
  872. package/src/shared/internal-initiator-marker.ts +0 -18
  873. package/src/shared/is-abort-error.ts +0 -20
  874. package/src/shared/json-file-cache-store.ts +0 -98
  875. package/src/shared/jsonc-parser.ts +0 -98
  876. package/src/shared/known-variants.ts +0 -16
  877. package/src/shared/legacy-plugin-warning.ts +0 -68
  878. package/src/shared/load-opencode-plugins.ts +0 -60
  879. package/src/shared/log-legacy-plugin-startup-warning.ts +0 -44
  880. package/src/shared/logger.ts +0 -56
  881. package/src/shared/mcp-static-export.ts +0 -119
  882. package/src/shared/merge-categories.ts +0 -18
  883. package/src/shared/migrate-legacy-config-file.ts +0 -66
  884. package/src/shared/migrate-legacy-plugin-entry.ts +0 -75
  885. package/src/shared/migration/agent-category.ts +0 -60
  886. package/src/shared/migration/agent-names.ts +0 -108
  887. package/src/shared/migration/config-migration.ts +0 -210
  888. package/src/shared/migration/hook-names.ts +0 -40
  889. package/src/shared/migration/migrations-sidecar.ts +0 -92
  890. package/src/shared/migration/model-versions.ts +0 -50
  891. package/src/shared/migration.ts +0 -5
  892. package/src/shared/mode-routing.test.ts +0 -88
  893. package/src/shared/mode-routing.ts +0 -30
  894. package/src/shared/model-availability.ts +0 -294
  895. package/src/shared/model-capabilities/bundled-snapshot.ts +0 -15
  896. package/src/shared/model-capabilities/get-model-capabilities.ts +0 -140
  897. package/src/shared/model-capabilities/index.ts +0 -9
  898. package/src/shared/model-capabilities/runtime-model-readers.ts +0 -190
  899. package/src/shared/model-capabilities/types.ts +0 -80
  900. package/src/shared/model-capabilities-cache.ts +0 -213
  901. package/src/shared/model-capability-aliases.ts +0 -108
  902. package/src/shared/model-capability-guardrails.ts +0 -149
  903. package/src/shared/model-capability-heuristics.ts +0 -32
  904. package/src/shared/model-error-classifier.ts +0 -214
  905. package/src/shared/model-format-normalizer.ts +0 -20
  906. package/src/shared/model-normalization.ts +0 -8
  907. package/src/shared/model-requirements.ts +0 -26
  908. package/src/shared/model-resolution-pipeline.ts +0 -216
  909. package/src/shared/model-resolution-types.ts +0 -41
  910. package/src/shared/model-resolver.ts +0 -106
  911. package/src/shared/model-sanitizer.ts +0 -12
  912. package/src/shared/model-settings-compatibility.ts +0 -200
  913. package/src/shared/model-suggestion-retry.ts +0 -182
  914. package/src/shared/normalize-sdk-response.ts +0 -36
  915. package/src/shared/opencode-command-dirs.ts +0 -36
  916. package/src/shared/opencode-config-dir-types.ts +0 -15
  917. package/src/shared/opencode-config-dir.ts +0 -135
  918. package/src/shared/opencode-http-api.ts +0 -140
  919. package/src/shared/opencode-message-dir.ts +0 -29
  920. package/src/shared/opencode-server-auth.ts +0 -190
  921. package/src/shared/opencode-storage-detection.ts +0 -34
  922. package/src/shared/opencode-storage-paths.ts +0 -7
  923. package/src/shared/opencode-version.ts +0 -80
  924. package/src/shared/parse-tools-config.ts +0 -25
  925. package/src/shared/pattern-matcher.ts +0 -46
  926. package/src/shared/permission-compat.ts +0 -86
  927. package/src/shared/plugin-command-discovery.ts +0 -28
  928. package/src/shared/plugin-entry-migrator.ts +0 -21
  929. package/src/shared/plugin-identity.ts +0 -8
  930. package/src/shared/port-utils.ts +0 -48
  931. package/src/shared/project-discovery-dirs.ts +0 -101
  932. package/src/shared/prompt-timeout-context.ts +0 -49
  933. package/src/shared/prompt-tools.ts +0 -35
  934. package/src/shared/provider-model-id-transform.ts +0 -58
  935. package/src/shared/question-denied-session-permission.ts +0 -9
  936. package/src/shared/record-type-guard.ts +0 -3
  937. package/src/shared/resolve-agent-definition-paths.ts +0 -22
  938. package/src/shared/retry-status-utils.ts +0 -19
  939. package/src/shared/runtime-plugin-config.ts +0 -98
  940. package/src/shared/safe-create-hook.ts +0 -24
  941. package/src/shared/session-category-registry.ts +0 -27
  942. package/src/shared/session-cursor.ts +0 -108
  943. package/src/shared/session-directory-resolver.ts +0 -41
  944. package/src/shared/session-injected-paths.ts +0 -59
  945. package/src/shared/session-model-state.ts +0 -15
  946. package/src/shared/session-prompt-params-helpers.ts +0 -31
  947. package/src/shared/session-prompt-params-state.ts +0 -37
  948. package/src/shared/session-tools-store.ts +0 -18
  949. package/src/shared/session-utils.ts +0 -25
  950. package/src/shared/shell-env.ts +0 -175
  951. package/src/shared/skill-path-resolver.ts +0 -26
  952. package/src/shared/snake-case.ts +0 -44
  953. package/src/shared/spawn-with-windows-hide.ts +0 -84
  954. package/src/shared/startup-diagnostics.ts +0 -76
  955. package/src/shared/system-directive.ts +0 -67
  956. package/src/shared/task-system-enabled.ts +0 -9
  957. package/src/shared/tmux/constants.ts +0 -12
  958. package/src/shared/tmux/index.ts +0 -3
  959. package/src/shared/tmux/tmux-utils/environment.ts +0 -13
  960. package/src/shared/tmux/tmux-utils/layout.ts +0 -96
  961. package/src/shared/tmux/tmux-utils/pane-close.ts +0 -48
  962. package/src/shared/tmux/tmux-utils/pane-dimensions.ts +0 -28
  963. package/src/shared/tmux/tmux-utils/pane-replace.ts +0 -73
  964. package/src/shared/tmux/tmux-utils/pane-spawn.ts +0 -94
  965. package/src/shared/tmux/tmux-utils/server-health.ts +0 -62
  966. package/src/shared/tmux/tmux-utils/session-spawn.ts +0 -145
  967. package/src/shared/tmux/tmux-utils/window-spawn.ts +0 -93
  968. package/src/shared/tmux/tmux-utils.ts +0 -15
  969. package/src/shared/tmux/types.ts +0 -4
  970. package/src/shared/tool-name.ts +0 -27
  971. package/src/shared/truncate-description.ts +0 -11
  972. package/src/shared/vision-capable-models-cache.ts +0 -17
  973. package/src/shared/write-file-atomically.ts +0 -31
  974. package/src/shared/zip-entry-listing/powershell-zip-entry-listing.ts +0 -99
  975. package/src/shared/zip-entry-listing/python-zip-entry-listing.ts +0 -55
  976. package/src/shared/zip-entry-listing/read-zip-symlink-target.ts +0 -23
  977. package/src/shared/zip-entry-listing/tar-zip-entry-listing.ts +0 -93
  978. package/src/shared/zip-entry-listing/zipinfo-zip-entry-listing.ts +0 -72
  979. package/src/shared/zip-entry-listing.ts +0 -13
  980. package/src/shared/zip-extractor.ts +0 -118
  981. package/src/skills/index.ts +0 -56
  982. package/src/testing/module-mock-lifecycle.ts +0 -143
  983. package/src/tools/AGENTS.md +0 -108
  984. package/src/tools/ast-grep/cli-binary-path-resolution.ts +0 -60
  985. package/src/tools/ast-grep/cli.ts +0 -177
  986. package/src/tools/ast-grep/constants.ts +0 -5
  987. package/src/tools/ast-grep/downloader.ts +0 -119
  988. package/src/tools/ast-grep/environment-check.ts +0 -59
  989. package/src/tools/ast-grep/index.ts +0 -5
  990. package/src/tools/ast-grep/language-support.ts +0 -60
  991. package/src/tools/ast-grep/process-output-timeout.ts +0 -28
  992. package/src/tools/ast-grep/result-formatter.ts +0 -102
  993. package/src/tools/ast-grep/sg-cli-path.ts +0 -102
  994. package/src/tools/ast-grep/sg-compact-json-output.ts +0 -54
  995. package/src/tools/ast-grep/tools.ts +0 -117
  996. package/src/tools/ast-grep/types.ts +0 -60
  997. package/src/tools/background-task/AGENTS.md +0 -53
  998. package/src/tools/background-task/clients.ts +0 -32
  999. package/src/tools/background-task/constants.ts +0 -9
  1000. package/src/tools/background-task/create-background-cancel.ts +0 -115
  1001. package/src/tools/background-task/create-background-output.ts +0 -159
  1002. package/src/tools/background-task/create-background-task.ts +0 -126
  1003. package/src/tools/background-task/delay.ts +0 -3
  1004. package/src/tools/background-task/full-session-format.ts +0 -148
  1005. package/src/tools/background-task/index.ts +0 -8
  1006. package/src/tools/background-task/message-dir.ts +0 -1
  1007. package/src/tools/background-task/session-messages.ts +0 -22
  1008. package/src/tools/background-task/task-result-format.ts +0 -113
  1009. package/src/tools/background-task/task-status-format.ts +0 -72
  1010. package/src/tools/background-task/time-format.ts +0 -30
  1011. package/src/tools/background-task/tools.ts +0 -11
  1012. package/src/tools/background-task/truncate-text.ts +0 -4
  1013. package/src/tools/background-task/types.ts +0 -72
  1014. package/src/tools/call-omo-agent/AGENTS.md +0 -51
  1015. package/src/tools/call-omo-agent/agent-resolver.ts +0 -64
  1016. package/src/tools/call-omo-agent/background-agent-executor.ts +0 -91
  1017. package/src/tools/call-omo-agent/background-executor.ts +0 -98
  1018. package/src/tools/call-omo-agent/completion-poller.ts +0 -65
  1019. package/src/tools/call-omo-agent/constants.ts +0 -23
  1020. package/src/tools/call-omo-agent/index.ts +0 -3
  1021. package/src/tools/call-omo-agent/message-dir.ts +0 -1
  1022. package/src/tools/call-omo-agent/message-processor.ts +0 -86
  1023. package/src/tools/call-omo-agent/message-storage-directory.ts +0 -1
  1024. package/src/tools/call-omo-agent/session-creator.ts +0 -70
  1025. package/src/tools/call-omo-agent/subagent-session-creator.ts +0 -74
  1026. package/src/tools/call-omo-agent/sync-executor.ts +0 -148
  1027. package/src/tools/call-omo-agent/tool-context-with-metadata.ts +0 -10
  1028. package/src/tools/call-omo-agent/tools.ts +0 -199
  1029. package/src/tools/call-omo-agent/types.ts +0 -34
  1030. package/src/tools/delegate-task/AGENTS.md +0 -58
  1031. package/src/tools/delegate-task/anthropic-categories.ts +0 -62
  1032. package/src/tools/delegate-task/available-models.ts +0 -64
  1033. package/src/tools/delegate-task/background-continuation.ts +0 -68
  1034. package/src/tools/delegate-task/background-task.ts +0 -165
  1035. package/src/tools/delegate-task/builtin-categories.ts +0 -35
  1036. package/src/tools/delegate-task/builtin-category-definition.ts +0 -8
  1037. package/src/tools/delegate-task/cancel-unstable-agent-task.ts +0 -19
  1038. package/src/tools/delegate-task/categories.test.ts +0 -87
  1039. package/src/tools/delegate-task/categories.ts +0 -77
  1040. package/src/tools/delegate-task/category-resolver.ts +0 -309
  1041. package/src/tools/delegate-task/constants.ts +0 -351
  1042. package/src/tools/delegate-task/delegated-model-config.ts +0 -20
  1043. package/src/tools/delegate-task/error-formatting.ts +0 -51
  1044. package/src/tools/delegate-task/executor-types.ts +0 -39
  1045. package/src/tools/delegate-task/executor.ts +0 -16
  1046. package/src/tools/delegate-task/fallback-entry-resolution.ts +0 -27
  1047. package/src/tools/delegate-task/fallback-entry-settings.ts +0 -20
  1048. package/src/tools/delegate-task/git-categories.ts +0 -30
  1049. package/src/tools/delegate-task/google-categories.ts +0 -130
  1050. package/src/tools/delegate-task/index.ts +0 -4
  1051. package/src/tools/delegate-task/kimi-categories.ts +0 -40
  1052. package/src/tools/delegate-task/model-selection.ts +0 -201
  1053. package/src/tools/delegate-task/model-string-parser.test.ts +0 -90
  1054. package/src/tools/delegate-task/model-string-parser.ts +0 -63
  1055. package/src/tools/delegate-task/openai-categories.ts +0 -132
  1056. package/src/tools/delegate-task/parent-context-resolver.ts +0 -47
  1057. package/src/tools/delegate-task/prompt-builder.ts +0 -107
  1058. package/src/tools/delegate-task/resolve-call-id.ts +0 -5
  1059. package/src/tools/delegate-task/skill-resolver.ts +0 -22
  1060. package/src/tools/delegate-task/sub-agent.ts +0 -80
  1061. package/src/tools/delegate-task/subagent-discovery.test.ts +0 -123
  1062. package/src/tools/delegate-task/subagent-discovery.ts +0 -152
  1063. package/src/tools/delegate-task/subagent-resolver.ts +0 -242
  1064. package/src/tools/delegate-task/sync-continuation-deps.ts +0 -9
  1065. package/src/tools/delegate-task/sync-continuation.ts +0 -149
  1066. package/src/tools/delegate-task/sync-prompt-sender.ts +0 -137
  1067. package/src/tools/delegate-task/sync-result-fetcher.ts +0 -60
  1068. package/src/tools/delegate-task/sync-session-creator.ts +0 -29
  1069. package/src/tools/delegate-task/sync-session-poller.ts +0 -188
  1070. package/src/tools/delegate-task/sync-task-deps.ts +0 -13
  1071. package/src/tools/delegate-task/sync-task-fallback.ts +0 -68
  1072. package/src/tools/delegate-task/sync-task.ts +0 -243
  1073. package/src/tools/delegate-task/time-formatter.ts +0 -13
  1074. package/src/tools/delegate-task/timing.ts +0 -46
  1075. package/src/tools/delegate-task/token-limiter.ts +0 -123
  1076. package/src/tools/delegate-task/tools.ts +0 -259
  1077. package/src/tools/delegate-task/types.ts +0 -89
  1078. package/src/tools/delegate-task/unstable-agent-task.ts +0 -243
  1079. package/src/tools/glob/cli.ts +0 -206
  1080. package/src/tools/glob/constants.ts +0 -12
  1081. package/src/tools/glob/index.ts +0 -1
  1082. package/src/tools/glob/result-formatter.ts +0 -26
  1083. package/src/tools/glob/tools.ts +0 -49
  1084. package/src/tools/glob/types.ts +0 -23
  1085. package/src/tools/grep/cli.ts +0 -279
  1086. package/src/tools/grep/constants.ts +0 -141
  1087. package/src/tools/grep/downloader.ts +0 -128
  1088. package/src/tools/grep/index.ts +0 -1
  1089. package/src/tools/grep/result-formatter.ts +0 -60
  1090. package/src/tools/grep/tools.ts +0 -75
  1091. package/src/tools/grep/types.ts +0 -42
  1092. package/src/tools/hashline-edit/AGENTS.md +0 -92
  1093. package/src/tools/hashline-edit/autocorrect-replacement-lines.ts +0 -179
  1094. package/src/tools/hashline-edit/constants.ts +0 -10
  1095. package/src/tools/hashline-edit/diff-utils.ts +0 -53
  1096. package/src/tools/hashline-edit/edit-deduplication.ts +0 -43
  1097. package/src/tools/hashline-edit/edit-operation-primitives.ts +0 -126
  1098. package/src/tools/hashline-edit/edit-operations.ts +0 -103
  1099. package/src/tools/hashline-edit/edit-ordering.ts +0 -56
  1100. package/src/tools/hashline-edit/edit-text-normalization.ts +0 -111
  1101. package/src/tools/hashline-edit/file-text-canonicalization.ts +0 -44
  1102. package/src/tools/hashline-edit/formatter-trigger.ts +0 -132
  1103. package/src/tools/hashline-edit/hash-computation.ts +0 -154
  1104. package/src/tools/hashline-edit/hashline-chunk-formatter.ts +0 -52
  1105. package/src/tools/hashline-edit/hashline-edit-diff.ts +0 -31
  1106. package/src/tools/hashline-edit/hashline-edit-executor.ts +0 -197
  1107. package/src/tools/hashline-edit/index.ts +0 -20
  1108. package/src/tools/hashline-edit/normalize-edits.ts +0 -95
  1109. package/src/tools/hashline-edit/tool-description.ts +0 -95
  1110. package/src/tools/hashline-edit/tools.ts +0 -42
  1111. package/src/tools/hashline-edit/types.ts +0 -20
  1112. package/src/tools/hashline-edit/validation.ts +0 -181
  1113. package/src/tools/index.ts +0 -64
  1114. package/src/tools/interactive-bash/constants.ts +0 -18
  1115. package/src/tools/interactive-bash/index.ts +0 -4
  1116. package/src/tools/interactive-bash/tmux-path-resolver.ts +0 -71
  1117. package/src/tools/interactive-bash/tools.ts +0 -136
  1118. package/src/tools/look-at/assistant-message-extractor.ts +0 -67
  1119. package/src/tools/look-at/constants.ts +0 -3
  1120. package/src/tools/look-at/image-converter.ts +0 -164
  1121. package/src/tools/look-at/index.ts +0 -3
  1122. package/src/tools/look-at/look-at-arguments.ts +0 -34
  1123. package/src/tools/look-at/mime-type-inference.ts +0 -94
  1124. package/src/tools/look-at/multimodal-agent-metadata.ts +0 -166
  1125. package/src/tools/look-at/multimodal-fallback-chain.ts +0 -66
  1126. package/src/tools/look-at/session-poller.ts +0 -42
  1127. package/src/tools/look-at/tools.ts +0 -245
  1128. package/src/tools/look-at/types.ts +0 -5
  1129. package/src/tools/lsp/AGENTS.md +0 -70
  1130. package/src/tools/lsp/client.ts +0 -3
  1131. package/src/tools/lsp/config.ts +0 -3
  1132. package/src/tools/lsp/constants.ts +0 -7
  1133. package/src/tools/lsp/diagnostics-tool.ts +0 -75
  1134. package/src/tools/lsp/directory-diagnostics.ts +0 -163
  1135. package/src/tools/lsp/find-references-tool.ts +0 -43
  1136. package/src/tools/lsp/goto-definition-tool.ts +0 -42
  1137. package/src/tools/lsp/index.ts +0 -9
  1138. package/src/tools/lsp/infer-extension.ts +0 -65
  1139. package/src/tools/lsp/language-config.ts +0 -5
  1140. package/src/tools/lsp/language-mappings.ts +0 -171
  1141. package/src/tools/lsp/lsp-client-connection.ts +0 -66
  1142. package/src/tools/lsp/lsp-client-transport.ts +0 -210
  1143. package/src/tools/lsp/lsp-client-wrapper.ts +0 -116
  1144. package/src/tools/lsp/lsp-client.ts +0 -129
  1145. package/src/tools/lsp/lsp-formatters.ts +0 -193
  1146. package/src/tools/lsp/lsp-manager-process-cleanup.ts +0 -83
  1147. package/src/tools/lsp/lsp-manager-temp-directory-cleanup.ts +0 -29
  1148. package/src/tools/lsp/lsp-process.ts +0 -158
  1149. package/src/tools/lsp/lsp-server.ts +0 -217
  1150. package/src/tools/lsp/rename-tools.ts +0 -53
  1151. package/src/tools/lsp/server-config-loader.ts +0 -116
  1152. package/src/tools/lsp/server-definitions.ts +0 -91
  1153. package/src/tools/lsp/server-installation.ts +0 -58
  1154. package/src/tools/lsp/server-path-bases.ts +0 -16
  1155. package/src/tools/lsp/server-resolution.ts +0 -109
  1156. package/src/tools/lsp/symbols-tool.ts +0 -76
  1157. package/src/tools/lsp/tools.ts +0 -5
  1158. package/src/tools/lsp/types.ts +0 -124
  1159. package/src/tools/lsp/workspace-edit.ts +0 -121
  1160. package/src/tools/session-manager/constants.ts +0 -93
  1161. package/src/tools/session-manager/file-storage.ts +0 -203
  1162. package/src/tools/session-manager/index.ts +0 -3
  1163. package/src/tools/session-manager/sdk-storage.ts +0 -135
  1164. package/src/tools/session-manager/sdk-unavailable.ts +0 -43
  1165. package/src/tools/session-manager/session-formatter.ts +0 -199
  1166. package/src/tools/session-manager/storage.ts +0 -161
  1167. package/src/tools/session-manager/tools.ts +0 -197
  1168. package/src/tools/session-manager/types.ts +0 -99
  1169. package/src/tools/shared/semaphore.ts +0 -32
  1170. package/src/tools/skill/constants.ts +0 -14
  1171. package/src/tools/skill/description-formatter.ts +0 -61
  1172. package/src/tools/skill/index.ts +0 -3
  1173. package/src/tools/skill/mcp-capability-formatter.ts +0 -97
  1174. package/src/tools/skill/native-skills.ts +0 -62
  1175. package/src/tools/skill/scope-priority.ts +0 -17
  1176. package/src/tools/skill/skill-body.ts +0 -26
  1177. package/src/tools/skill/skill-matcher.ts +0 -40
  1178. package/src/tools/skill/tools.ts +0 -196
  1179. package/src/tools/skill/types.ts +0 -48
  1180. package/src/tools/skill-mcp/constants.ts +0 -9
  1181. package/src/tools/skill-mcp/index.ts +0 -3
  1182. package/src/tools/skill-mcp/tools.test.ts +0 -44
  1183. package/src/tools/skill-mcp/tools.ts +0 -242
  1184. package/src/tools/skill-mcp/types.ts +0 -8
  1185. package/src/tools/slashcommand/command-discovery.ts +0 -161
  1186. package/src/tools/slashcommand/command-output-formatter.ts +0 -75
  1187. package/src/tools/slashcommand/index.ts +0 -2
  1188. package/src/tools/slashcommand/types.ts +0 -21
  1189. package/src/tools/task/index.ts +0 -7
  1190. package/src/tools/task/task-create.ts +0 -113
  1191. package/src/tools/task/task-get.ts +0 -47
  1192. package/src/tools/task/task-list.ts +0 -79
  1193. package/src/tools/task/task-update.ts +0 -152
  1194. package/src/tools/task/todo-sync.ts +0 -205
  1195. package/src/tools/task/types.ts +0 -77
@@ -1,18 +0,0 @@
1
- import type { CategoriesConfig, CategoryConfig } from "../config/schema"
2
- import { DEFAULT_CATEGORIES } from "../tools/delegate-task/constants"
3
-
4
- /**
5
- * Merge default and user categories, filtering out disabled ones.
6
- * Single source of truth for category merging across the codebase.
7
- */
8
- export function mergeCategories(
9
- userCategories?: CategoriesConfig,
10
- ): Record<string, CategoryConfig> {
11
- const merged = userCategories
12
- ? { ...DEFAULT_CATEGORIES, ...userCategories }
13
- : { ...DEFAULT_CATEGORIES }
14
-
15
- return Object.fromEntries(
16
- Object.entries(merged).filter(([, config]) => !config.disable),
17
- )
18
- }
@@ -1,66 +0,0 @@
1
- import { existsSync, readFileSync, renameSync, rmSync } from "node:fs"
2
- import { join, dirname, basename } from "node:path"
3
-
4
- import { log } from "./logger"
5
- import { CONFIG_BASENAME, LEGACY_CONFIG_BASENAME } from "./plugin-identity"
6
- import { writeFileAtomically } from "./write-file-atomically"
7
-
8
- function buildCanonicalPath(legacyPath: string): string {
9
- const dir = dirname(legacyPath)
10
- const ext = basename(legacyPath).includes(".jsonc") ? ".jsonc" : ".json"
11
- return join(dir, `${CONFIG_BASENAME}${ext}`)
12
- }
13
-
14
- function archiveLegacyConfigFile(legacyPath: string): boolean {
15
- const backupPath = `${legacyPath}.bak`
16
-
17
- try {
18
- renameSync(legacyPath, backupPath)
19
- log("[migrateLegacyConfigFile] Legacy config was migrated and renamed to backup. Update the canonical file only.", {
20
- legacyPath,
21
- backupPath,
22
- })
23
- return true
24
- } catch (renameError) {
25
- try {
26
- rmSync(legacyPath)
27
- log("[migrateLegacyConfigFile] Legacy config was migrated and removed after backup rename failed. Update the canonical file only.", {
28
- legacyPath,
29
- backupPath,
30
- renameError,
31
- })
32
- return true
33
- } catch (removeError) {
34
- log("[migrateLegacyConfigFile] WARNING: canonical config was written but the legacy file still exists and will be ignored. Remove or rename it manually.", {
35
- legacyPath,
36
- backupPath,
37
- renameError,
38
- removeError,
39
- })
40
- return false
41
- }
42
- }
43
- }
44
-
45
- export function migrateLegacyConfigFile(legacyPath: string): boolean {
46
- if (!existsSync(legacyPath)) return false
47
- if (!basename(legacyPath).startsWith(LEGACY_CONFIG_BASENAME)) return false
48
-
49
- const canonicalPath = buildCanonicalPath(legacyPath)
50
- if (existsSync(canonicalPath)) return false
51
-
52
- try {
53
- const content = readFileSync(legacyPath, "utf-8")
54
- writeFileAtomically(canonicalPath, content)
55
- const archivedLegacyConfig = archiveLegacyConfigFile(legacyPath)
56
- log("[migrateLegacyConfigFile] Migrated legacy config to canonical path", {
57
- from: legacyPath,
58
- to: canonicalPath,
59
- archivedLegacyConfig,
60
- })
61
- return true
62
- } catch (error) {
63
- log("[migrateLegacyConfigFile] Failed to migrate legacy config file", { legacyPath, error })
64
- return false
65
- }
66
- }
@@ -1,75 +0,0 @@
1
- import { closeSync, existsSync, fsyncSync, openSync, readFileSync, renameSync, writeFileSync } from "node:fs"
2
-
3
- import { applyEdits, modify } from "jsonc-parser"
4
-
5
- import { parseJsoncSafe } from "./jsonc-parser"
6
- import { log } from "./logger"
7
- import { LEGACY_PLUGIN_NAME, PLUGIN_NAME } from "./plugin-identity"
8
- import { isCanonicalEntry, isLegacyEntry, toCanonicalEntry } from "./plugin-entry-migrator"
9
-
10
- interface OpenCodeConfig {
11
- plugin?: string[]
12
- }
13
-
14
- function normalizePluginEntries(entries: string[]): string[] {
15
- const hasCanonical = entries.some(isCanonicalEntry)
16
-
17
- if (hasCanonical) {
18
- return entries.filter((entry) => !isLegacyEntry(entry))
19
- }
20
-
21
- return entries.map((entry) => (isLegacyEntry(entry) ? toCanonicalEntry(entry) : entry))
22
- }
23
-
24
- function updateJsoncPluginArray(content: string, pluginEntries: string[]): string | null {
25
- const edits = modify(content, ["plugin"], pluginEntries, {
26
- formattingOptions: {
27
- insertSpaces: true,
28
- tabSize: 2,
29
- eol: "\n",
30
- },
31
- getInsertionIndex: () => 0,
32
- })
33
-
34
- if (edits.length === 0) return null
35
- return applyEdits(content, edits)
36
- }
37
-
38
- export function migrateLegacyPluginEntry(configPath: string): boolean {
39
- if (!existsSync(configPath)) return false
40
-
41
- try {
42
- const content = readFileSync(configPath, "utf-8")
43
- if (!content.includes(LEGACY_PLUGIN_NAME)) return false
44
-
45
- const parseResult = parseJsoncSafe<OpenCodeConfig>(content)
46
- const pluginEntries = parseResult.data?.plugin
47
- if (!pluginEntries || !pluginEntries.some(isLegacyEntry)) return false
48
-
49
- const updatedPluginEntries = normalizePluginEntries(pluginEntries)
50
- const updated = configPath.endsWith(".jsonc")
51
- ? updateJsoncPluginArray(content, updatedPluginEntries)
52
- : JSON.stringify({ ...(parseResult.data as OpenCodeConfig), plugin: updatedPluginEntries }, null, 2) + "\n"
53
- if (!updated || updated === content) return false
54
-
55
- const tempPath = `${configPath}.tmp`
56
- writeFileSync(tempPath, updated, "utf-8")
57
- const tempFileDescriptor = openSync(tempPath, "r")
58
- try {
59
- fsyncSync(tempFileDescriptor)
60
- } finally {
61
- closeSync(tempFileDescriptor)
62
- }
63
-
64
- renameSync(tempPath, configPath)
65
- log("[migrateLegacyPluginEntry] Auto-migrated opencode.json plugin entry", {
66
- configPath,
67
- from: LEGACY_PLUGIN_NAME,
68
- to: PLUGIN_NAME,
69
- })
70
- return true
71
- } catch (error) {
72
- log("[migrateLegacyPluginEntry] Failed to migrate opencode.json", { configPath, error })
73
- return false
74
- }
75
- }
@@ -1,60 +0,0 @@
1
- /**
2
- * @deprecated LEGACY MIGRATION ONLY
3
- *
4
- * This map exists solely for migrating old configs that used hardcoded model strings.
5
- * It maps legacy model strings to semantic category names, allowing users to migrate
6
- * from explicit model configs to category-based configs.
7
- *
8
- * DO NOT add new entries here. New agents should use:
9
- * - Category-based config (preferred): { category: "unspecified-high" }
10
- * - Or inherit from OpenCode's config.model
11
- *
12
- * This map will be removed in a future major version once migration period ends.
13
- */
14
- export const MODEL_TO_CATEGORY_MAP: Record<string, string> = {
15
- "google/gemini-3.1-pro": "visual-engineering",
16
- "google/gemini-3-flash": "writing",
17
- "openai/gpt-5.4": "ultrabrain",
18
- "anthropic/claude-haiku-4-5": "quick",
19
- "anthropic/claude-opus-4-6": "unspecified-high",
20
- "anthropic/claude-sonnet-4-6": "unspecified-low",
21
- }
22
-
23
- export function migrateAgentConfigToCategory(config: Record<string, unknown>): {
24
- migrated: Record<string, unknown>
25
- changed: boolean
26
- } {
27
- const { model, ...rest } = config
28
- if (typeof model !== "string") {
29
- return { migrated: config, changed: false }
30
- }
31
-
32
- const category = MODEL_TO_CATEGORY_MAP[model]
33
- if (!category) {
34
- return { migrated: config, changed: false }
35
- }
36
-
37
- return {
38
- migrated: { category, ...rest },
39
- changed: true,
40
- }
41
- }
42
-
43
- export function shouldDeleteAgentConfig(
44
- config: Record<string, unknown>,
45
- category: string
46
- ): boolean {
47
- const { DEFAULT_CATEGORIES } = require("../../tools/delegate-task/constants")
48
- const defaults = DEFAULT_CATEGORIES[category]
49
- if (!defaults) return false
50
-
51
- const keys = Object.keys(config).filter((k) => k !== "category")
52
- if (keys.length === 0) return true
53
-
54
- for (const key of keys) {
55
- if (config[key] !== (defaults as Record<string, unknown>)[key]) {
56
- return false
57
- }
58
- }
59
- return true
60
- }
@@ -1,108 +0,0 @@
1
- export const AGENT_NAME_MAP: Record<string, string> = {
2
- // Bob variants (subsumes General, Zoe, Build)
3
- omo: "bob",
4
- bob: "bob",
5
- "bob (ultraworker)": "bob",
6
- "bob - ultraworker": "bob",
7
- general: "bob",
8
- zoe: "bob",
9
- build: "bob",
10
-
11
- // Coder variants
12
- coder: "coder",
13
- "coder (deep agent)": "coder",
14
- "coder - deep agent": "coder",
15
-
16
- // Strategist variants (subsumes pre-plan/logician/athena)
17
- "omo-plan": "strategist",
18
- "planner-bob": "strategist",
19
- strategist: "strategist",
20
- "strategist - plan builder": "strategist",
21
- "strategist (plan builder)": "strategist",
22
- "pre-plan": "strategist",
23
- "plan-consultant": "strategist",
24
- "pre-plan - plan consultant": "strategist",
25
- "pre-plan (plan consultant)": "strategist",
26
- logician: "strategist",
27
- athena: "strategist",
28
- "athena-junior": "strategist",
29
-
30
- // Critic remains explicit and canonical
31
- critic: "critic",
32
- "critic - plan critic": "critic",
33
- "critic (plan critic)": "critic",
34
- "quality-guardian": "critic",
35
- "quality guardian - verifier": "critic",
36
- "code-reviewer": "critic",
37
- "systematic-debugger": "critic",
38
-
39
- // Guard variants
40
- "orchestrator-bob": "guard",
41
- guard: "guard",
42
- "guard (plan executor)": "guard",
43
- "guard - plan executor": "guard",
44
-
45
- // Researcher variants (subsumes Librarian, Explore)
46
- librarian: "researcher",
47
- explore: "researcher",
48
- researcher: "researcher",
49
- "researcher - codebase explorer": "researcher",
50
-
51
- // Platform Manager variants (subsumes Ledger, Bootstrapper, Initializer, Mindmodel)
52
- "ledger-creator": "platform-manager",
53
- "bootstrapper": "platform-manager",
54
- "project-initializer": "platform-manager",
55
- "mindmodel": "platform-manager",
56
- "platform-manager": "platform-manager",
57
- manager: "platform-manager",
58
- "platform manager - utility": "platform-manager",
59
-
60
- // SubAgent
61
- subagent: "coder",
62
- sub: "coder",
63
-
64
- // Designer
65
- designer: "designer",
66
-
67
- // Writer/copywriter aliases are handled by Brainstormer.
68
- writer: "brainstormer",
69
- copywriter: "brainstormer",
70
- "content-writer": "brainstormer",
71
- "content writer": "brainstormer",
72
- "website-writer": "brainstormer",
73
-
74
- // Multimodal / Vision
75
- ui: "multimodal",
76
- vision: "multimodal",
77
- multimodal: "multimodal",
78
- }
79
-
80
- export const BUILTIN_AGENT_NAMES = new Set([
81
- "bob",
82
- "coder",
83
- "strategist",
84
- "critic",
85
- "designer",
86
- "researcher",
87
- "multimodal",
88
- "platform-manager",
89
- "guard",
90
- "brainstormer",
91
- ])
92
-
93
- export function migrateAgentNames(
94
- agents: Record<string, unknown>
95
- ): { migrated: Record<string, unknown>; changed: boolean } {
96
- const migrated: Record<string, unknown> = {}
97
- let changed = false
98
-
99
- for (const [key, value] of Object.entries(agents)) {
100
- const newKey = AGENT_NAME_MAP[key.toLowerCase()] ?? AGENT_NAME_MAP[key] ?? key
101
- if (newKey !== key) {
102
- changed = true
103
- }
104
- migrated[newKey] = value
105
- }
106
-
107
- return { migrated, changed }
108
- }
@@ -1,210 +0,0 @@
1
- import * as fs from "node:fs"
2
- import { log } from "../logger"
3
- import { writeFileAtomically } from "../write-file-atomically"
4
- import { AGENT_NAME_MAP, migrateAgentNames } from "./agent-names"
5
- import { migrateHookNames } from "./hook-names"
6
- import { migrateModelVersions } from "./model-versions"
7
- import { readAppliedMigrations, writeAppliedMigrations } from "./migrations-sidecar"
8
-
9
- export function migrateConfigFile(
10
- configPath: string,
11
- rawConfig: Record<string, unknown>
12
- ): boolean {
13
- const copy = JSON.parse(JSON.stringify(rawConfig)) as Record<string, unknown>
14
- let needsWrite = false
15
-
16
- // Load previously applied migrations from BOTH the legacy in-config
17
- // `_migrations` field AND the external sidecar file. The sidecar is the
18
- // new source of truth because users were editing the config file to
19
- // revert auto-migrated values and accidentally dropping the `_migrations`
20
- // field in the process, which produced an infinite migration loop on
21
- // every startup (#3263). Reading from both sources keeps old configs
22
- // that still carry `_migrations` working without a forced reset.
23
- const sidecarMigrations = readAppliedMigrations(configPath)
24
- const inConfigMigrations = Array.isArray(copy._migrations)
25
- ? new Set(copy._migrations as string[])
26
- : new Set<string>()
27
- const existingMigrations = new Set<string>([
28
- ...sidecarMigrations,
29
- ...inConfigMigrations,
30
- ])
31
- const hadLegacyInConfigMigrations = inConfigMigrations.size > 0
32
- const allNewMigrations: string[] = []
33
-
34
- if (copy.agents && typeof copy.agents === "object") {
35
- const { migrated, changed } = migrateAgentNames(copy.agents as Record<string, unknown>)
36
- if (changed) {
37
- copy.agents = migrated
38
- needsWrite = true
39
- }
40
- }
41
-
42
- // Migrate model versions in agents (skip already-applied migrations)
43
- if (copy.agents && typeof copy.agents === "object") {
44
- const { migrated, changed, newMigrations } = migrateModelVersions(
45
- copy.agents as Record<string, unknown>,
46
- existingMigrations
47
- )
48
- if (changed) {
49
- copy.agents = migrated
50
- needsWrite = true
51
- log("Migrated model versions in agents config")
52
- }
53
- allNewMigrations.push(...newMigrations)
54
- }
55
-
56
- // Migrate model versions in categories (skip already-applied migrations)
57
- if (copy.categories && typeof copy.categories === "object") {
58
- const { migrated, changed, newMigrations } = migrateModelVersions(
59
- copy.categories as Record<string, unknown>,
60
- existingMigrations
61
- )
62
- if (changed) {
63
- copy.categories = migrated
64
- needsWrite = true
65
- log("Migrated model versions in categories config")
66
- }
67
- allNewMigrations.push(...newMigrations)
68
- }
69
-
70
- // Record newly applied migrations. We persist the full set (existing +
71
- // new) to the external sidecar file and strip the legacy `_migrations`
72
- // field from the config body on its way out, so users stop having to
73
- // think about a field that never should have been in their config in
74
- // the first place. The in-memory `rawConfig` never re-exposes
75
- // `_migrations` to downstream schema validation.
76
- const newMigrationsToRecord = allNewMigrations.filter(mKey => !existingMigrations.has(mKey))
77
- const fullMigrationSet = new Set<string>([
78
- ...existingMigrations,
79
- ...newMigrationsToRecord,
80
- ])
81
- const shouldWriteSidecar = newMigrationsToRecord.length > 0 || hadLegacyInConfigMigrations
82
- if (newMigrationsToRecord.length > 0) {
83
- needsWrite = true
84
- }
85
- if (hadLegacyInConfigMigrations) {
86
- // Migrating state out of the config body is itself a config write.
87
- needsWrite = true
88
- }
89
- if (shouldWriteSidecar) {
90
- // Keep `_migrations` in the first config write so a later sidecar failure
91
- // does not strand the config with migrated state missing from disk.
92
- ;(copy as Record<string, unknown>)._migrations = Array.from(fullMigrationSet)
93
- needsWrite = true
94
- }
95
-
96
- if (copy.omo_agent) {
97
- copy.bob_agent = copy.omo_agent
98
- delete copy.omo_agent
99
- needsWrite = true
100
- }
101
-
102
- if (copy.experimental && typeof copy.experimental === "object") {
103
- const experimental = copy.experimental as Record<string, unknown>
104
- if ("hashline_edit" in experimental) {
105
- if (copy.hashline_edit === undefined) {
106
- copy.hashline_edit = experimental.hashline_edit
107
- }
108
- delete experimental.hashline_edit
109
- if (Object.keys(experimental).length === 0) {
110
- delete copy.experimental
111
- }
112
- needsWrite = true
113
- }
114
- }
115
-
116
- if (copy.disabled_agents && Array.isArray(copy.disabled_agents)) {
117
- const migrated: string[] = []
118
- let changed = false
119
- for (const agent of copy.disabled_agents as string[]) {
120
- const newAgent = AGENT_NAME_MAP[agent.toLowerCase()] ?? AGENT_NAME_MAP[agent] ?? agent
121
- if (newAgent !== agent) {
122
- changed = true
123
- }
124
- migrated.push(newAgent)
125
- }
126
- if (changed) {
127
- copy.disabled_agents = migrated
128
- needsWrite = true
129
- }
130
- }
131
-
132
- if (copy.disabled_hooks && Array.isArray(copy.disabled_hooks)) {
133
- const { migrated, changed, removed } = migrateHookNames(copy.disabled_hooks as string[])
134
- if (changed) {
135
- copy.disabled_hooks = migrated
136
- needsWrite = true
137
- }
138
- if (removed.length > 0) {
139
- log(
140
- `Removed obsolete hooks from disabled_hooks: ${removed.join(", ")} (these hooks no longer exist in v3.0.0)`
141
- )
142
- }
143
- }
144
-
145
- if (needsWrite) {
146
- let finalConfig = JSON.parse(JSON.stringify(copy)) as Record<string, unknown>
147
- const newContent = JSON.stringify(finalConfig, null, 2) + "\n"
148
-
149
- // Compare with existing file content to skip backup when unchanged.
150
- // The config may still need an in-memory migration even if the file
151
- // content is identical (e.g. removing a deleted hook from disabled_hooks
152
- // results in content that was already written by a prior migration).
153
- let existingContent: string | undefined
154
- try {
155
- existingContent = fs.readFileSync(configPath, "utf-8")
156
- } catch {
157
- // File may not exist yet
158
- }
159
- const contentChanged = existingContent !== newContent
160
-
161
- const timestamp = new Date().toISOString().replace(/[:.]/g, "-")
162
- const backupPath = `${configPath}.bak.${timestamp}`
163
- let backupSucceeded = false
164
- if (contentChanged) {
165
- try {
166
- fs.copyFileSync(configPath, backupPath)
167
- backupSucceeded = true
168
- } catch {
169
- backupSucceeded = false
170
- }
171
- }
172
-
173
- let writeSucceeded = false
174
- try {
175
- writeFileAtomically(configPath, newContent)
176
- writeSucceeded = true
177
- } catch (err) {
178
- log(`Failed to write migrated config to ${configPath}:`, err)
179
- }
180
-
181
- if (writeSucceeded && shouldWriteSidecar) {
182
- const sidecarWriteSucceeded = writeAppliedMigrations(configPath, fullMigrationSet)
183
- if (sidecarWriteSucceeded && "_migrations" in finalConfig) {
184
- const configWithoutLegacyMigrations = JSON.parse(JSON.stringify(finalConfig)) as Record<string, unknown>
185
- delete configWithoutLegacyMigrations._migrations
186
- try {
187
- writeFileAtomically(configPath, JSON.stringify(configWithoutLegacyMigrations, null, 2) + "\n")
188
- finalConfig = configWithoutLegacyMigrations
189
- } catch (err) {
190
- log(`Failed to remove legacy _migrations fallback from ${configPath}:`, err)
191
- }
192
- }
193
- }
194
-
195
- for (const key of Object.keys(rawConfig)) {
196
- delete rawConfig[key]
197
- }
198
- Object.assign(rawConfig, finalConfig)
199
-
200
- if (writeSucceeded) {
201
- const backupMessage = backupSucceeded ? ` (backup: ${backupPath})` : ""
202
- log(`Migrated config file: ${configPath}${backupMessage}`)
203
- } else {
204
- const backupMessage = backupSucceeded ? ` (backup: ${backupPath})` : ""
205
- log(`Applied migrated config in-memory for: ${configPath}${backupMessage}`)
206
- }
207
- }
208
-
209
- return needsWrite
210
- }
@@ -1,40 +0,0 @@
1
- // Migration map: old hook names → new hook names (for backward compatibility)
2
- // null means the hook was removed and should be filtered out from disabled_hooks
3
- export const HOOK_NAME_MAP: Record<string, string | null> = {
4
- // Legacy names (backward compatibility)
5
- "anthropic-auto-compact": "anthropic-context-window-limit-recovery",
6
- "bob-orchestrator": "guard",
7
-
8
- "bob-gpt-coder-reminder": null,
9
-
10
- // Removed hooks (v3.0.0) - will be filtered out and user warned
11
- "empty-message-sanitizer": null,
12
- "delegate-task-english-directive": null,
13
- "gpt-permission-continuation": null,
14
- }
15
-
16
- export function migrateHookNames(
17
- hooks: string[]
18
- ): { migrated: string[]; changed: boolean; removed: string[] } {
19
- const migrated: string[] = []
20
- const removed: string[] = []
21
- let changed = false
22
-
23
- for (const hook of hooks) {
24
- const mapping = HOOK_NAME_MAP[hook]
25
-
26
- if (mapping === null) {
27
- removed.push(hook)
28
- changed = true
29
- continue
30
- }
31
-
32
- const newHook = mapping ?? hook
33
- if (newHook !== hook) {
34
- changed = true
35
- }
36
- migrated.push(newHook)
37
- }
38
-
39
- return { migrated, changed, removed }
40
- }
@@ -1,92 +0,0 @@
1
- import * as fs from "node:fs"
2
- import * as path from "node:path"
3
- import { log } from "../logger"
4
- import { writeFileAtomically } from "../write-file-atomically"
5
-
6
- /**
7
- * Sidecar state file that tracks applied config migrations outside the user's
8
- * config file.
9
- *
10
- * Why this exists (#3263): users who revert an auto-migrated value (e.g.
11
- * `gpt-5.4` → `gpt-5.3-codex`) and then delete the `_migrations` field from
12
- * their config would fall into an infinite migration loop — every startup
13
- * re-applied the migration because there was no memory of the previous
14
- * application. The sidecar remembers applied migrations even when the user
15
- * scrubs the config, and only "resets" when the user explicitly deletes both
16
- * the config and the sidecar.
17
- *
18
- * The sidecar lives next to the config file as
19
- * `<configFileName>.migrations.json`. One sidecar per config file. The file
20
- * format is a flat JSON object:
21
- *
22
- * {
23
- * "appliedMigrations": [
24
- * "model-version:openai/gpt-5.3-codex->openai/gpt-5.4",
25
- * "model-version:anthropic/claude-opus-4-5->anthropic/claude-opus-4-6"
26
- * ]
27
- * }
28
- */
29
-
30
- export interface MigrationsSidecar {
31
- appliedMigrations: string[]
32
- }
33
-
34
- export function getSidecarPath(configPath: string): string {
35
- return `${configPath}.migrations.json`
36
- }
37
-
38
- /**
39
- * Read the set of applied migration keys from the sidecar next to
40
- * `configPath`. Returns an empty set on any read or parse failure so the
41
- * caller can still trust the return value and safely fall back to the
42
- * config's `_migrations` field.
43
- */
44
- export function readAppliedMigrations(configPath: string): Set<string> {
45
- const sidecarPath = getSidecarPath(configPath)
46
- try {
47
- if (!fs.existsSync(sidecarPath)) {
48
- return new Set()
49
- }
50
- const content = fs.readFileSync(sidecarPath, "utf-8")
51
- const parsed = JSON.parse(content) as unknown
52
- if (
53
- parsed &&
54
- typeof parsed === "object" &&
55
- !Array.isArray(parsed) &&
56
- Array.isArray((parsed as MigrationsSidecar).appliedMigrations)
57
- ) {
58
- return new Set((parsed as MigrationsSidecar).appliedMigrations.filter((m): m is string => typeof m === "string"))
59
- }
60
- return new Set()
61
- } catch (err) {
62
- log(`[migration] Failed to read migrations sidecar at ${sidecarPath}`, err)
63
- return new Set()
64
- }
65
- }
66
-
67
- /**
68
- * Persist the given set of applied migration keys to the sidecar next to
69
- * `configPath`. The sidecar is written atomically. Returns true on success,
70
- * false if the write failed (the caller can still proceed — the next
71
- * startup will re-run the migration, which is idempotent by design).
72
- */
73
- export function writeAppliedMigrations(configPath: string, migrations: Set<string>): boolean {
74
- const sidecarPath = getSidecarPath(configPath)
75
- const body: MigrationsSidecar = {
76
- appliedMigrations: Array.from(migrations).sort(),
77
- }
78
- try {
79
- // Ensure the parent directory exists in case the config file was created
80
- // out-of-band. We intentionally do NOT create the sidecar when the migration
81
- // set is empty — there is nothing to remember.
82
- const parentDir = path.dirname(sidecarPath)
83
- if (!fs.existsSync(parentDir)) {
84
- fs.mkdirSync(parentDir, { recursive: true })
85
- }
86
- writeFileAtomically(sidecarPath, JSON.stringify(body, null, 2) + "\n")
87
- return true
88
- } catch (err) {
89
- log(`[migration] Failed to write migrations sidecar at ${sidecarPath}`, err)
90
- return false
91
- }
92
- }