@hiai-gg/hiai-opencode 0.1.7 → 0.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1188) hide show
  1. package/AGENTS.md +35 -0
  2. package/ARCHITECTURE.md +39 -0
  3. package/README.md +28 -8
  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/hooks/keyword-detector/ultrawork/default.d.ts +1 -1
  13. package/dist/hooks/keyword-detector/ultrawork/gemini.d.ts +1 -1
  14. package/dist/hooks/keyword-detector/ultrawork/gpt.d.ts +1 -1
  15. package/dist/hooks/keyword-detector/ultrawork/intent-gate.d.ts +0 -0
  16. package/dist/hooks/keyword-detector/ultrawork/planner.d.ts +1 -1
  17. package/dist/index.js +1442 -4098
  18. package/dist/shared/index.d.ts +1 -0
  19. package/dist/shared/learn-system.d.ts +18 -0
  20. package/hiai-opencode.json +4 -5
  21. package/package.json +3 -3
  22. package/dist/agents/bob/default.d.ts +0 -10
  23. package/dist/agents/bob/gemini.d.ts +0 -21
  24. package/dist/agents/bob/gpt-pro.d.ts +0 -27
  25. package/dist/agents/bob/index.d.ts +0 -11
  26. package/dist/agents/coder/gpt-codex.d.ts +0 -20
  27. package/dist/agents/coder/gpt-pro.d.ts +0 -25
  28. package/dist/agents/guard/gemini-prompt-sections.d.ts +0 -12
  29. package/dist/agents/guard/gemini.d.ts +0 -2
  30. package/dist/agents/guard/gpt-prompt-sections.d.ts +0 -12
  31. package/dist/agents/guard/gpt.d.ts +0 -2
  32. package/dist/agents/strategist/gemini.d.ts +0 -13
  33. package/dist/agents/strategist/gpt.d.ts +0 -12
  34. package/dist/agents/sub/gemini.d.ts +0 -10
  35. package/dist/agents/sub/gpt-codex.d.ts +0 -8
  36. package/dist/agents/sub/gpt-pro.d.ts +0 -11
  37. package/dist/agents/sub/gpt.d.ts +0 -9
  38. package/dist/skills/index.d.ts +0 -7
  39. package/dist/testing/module-mock-lifecycle.d.ts +0 -21
  40. package/src/AGENTS.md +0 -41
  41. package/src/agents/AGENTS.md +0 -74
  42. package/src/agents/agent-builder.ts +0 -50
  43. package/src/agents/agent-skills.ts +0 -70
  44. package/src/agents/bob/AGENTS.md +0 -29
  45. package/src/agents/bob/default.ts +0 -134
  46. package/src/agents/bob/gemini.ts +0 -238
  47. package/src/agents/bob/gpt-pro.ts +0 -432
  48. package/src/agents/bob/index.ts +0 -19
  49. package/src/agents/bob.ts +0 -531
  50. package/src/agents/brainstormer.ts +0 -72
  51. package/src/agents/builtin-agents/agent-overrides.ts +0 -75
  52. package/src/agents/builtin-agents/available-skills.ts +0 -35
  53. package/src/agents/builtin-agents/bob-agent.ts +0 -96
  54. package/src/agents/builtin-agents/coder-agent.ts +0 -98
  55. package/src/agents/builtin-agents/environment-context.ts +0 -16
  56. package/src/agents/builtin-agents/general-agents.ts +0 -122
  57. package/src/agents/builtin-agents/guard-agent.ts +0 -66
  58. package/src/agents/builtin-agents/model-resolution.ts +0 -31
  59. package/src/agents/builtin-agents/resolve-file-uri.ts +0 -42
  60. package/src/agents/builtin-agents.ts +0 -250
  61. package/src/agents/coder/AGENTS.md +0 -34
  62. package/src/agents/coder/agent.ts +0 -162
  63. package/src/agents/coder/gpt-codex.ts +0 -406
  64. package/src/agents/coder/gpt-pro.ts +0 -321
  65. package/src/agents/coder/gpt.ts +0 -255
  66. package/src/agents/coder/index.ts +0 -8
  67. package/src/agents/critic/agent.ts +0 -106
  68. package/src/agents/custom-agent-summaries.ts +0 -61
  69. package/src/agents/designer.ts +0 -70
  70. package/src/agents/dynamic-agent-category-skills-guide.ts +0 -144
  71. package/src/agents/dynamic-agent-core-sections.ts +0 -273
  72. package/src/agents/dynamic-agent-policy-sections.ts +0 -182
  73. package/src/agents/dynamic-agent-prompt-builder.ts +0 -32
  74. package/src/agents/dynamic-agent-prompt-types.ts +0 -24
  75. package/src/agents/dynamic-agent-tool-categorization.ts +0 -45
  76. package/src/agents/env-context.ts +0 -16
  77. package/src/agents/gpt-apply-patch-guard.ts +0 -7
  78. package/src/agents/guard/agent.ts +0 -146
  79. package/src/agents/guard/default-prompt-sections.ts +0 -305
  80. package/src/agents/guard/default.ts +0 -23
  81. package/src/agents/guard/gemini-prompt-sections.ts +0 -293
  82. package/src/agents/guard/gemini.ts +0 -23
  83. package/src/agents/guard/gpt-prompt-sections.ts +0 -296
  84. package/src/agents/guard/gpt.ts +0 -23
  85. package/src/agents/guard/index.ts +0 -2
  86. package/src/agents/guard/prompt-section-builder.ts +0 -104
  87. package/src/agents/guard/shared-prompt.ts +0 -172
  88. package/src/agents/index.ts +0 -5
  89. package/src/agents/platform-adapter.ts +0 -236
  90. package/src/agents/platform-manager.ts +0 -73
  91. package/src/agents/prompt-library/identity.ts +0 -14
  92. package/src/agents/prompt-library/index.ts +0 -7
  93. package/src/agents/prompt-library/intent-gate.ts +0 -149
  94. package/src/agents/prompt-library/orchestration.ts +0 -60
  95. package/src/agents/prompt-library/platform.ts +0 -70
  96. package/src/agents/prompt-library/specialized.ts +0 -39
  97. package/src/agents/prompt-library/strategy.ts +0 -80
  98. package/src/agents/prompt-library/todo-discipline.ts +0 -23
  99. package/src/agents/quality-guardian.ts +0 -76
  100. package/src/agents/researcher.ts +0 -74
  101. package/src/agents/strategist/AGENTS.md +0 -37
  102. package/src/agents/strategist/behavioral-summary.ts +0 -79
  103. package/src/agents/strategist/gemini.ts +0 -334
  104. package/src/agents/strategist/gpt.ts +0 -461
  105. package/src/agents/strategist/high-accuracy-mode.ts +0 -78
  106. package/src/agents/strategist/identity-constraints.ts +0 -336
  107. package/src/agents/strategist/index.ts +0 -6
  108. package/src/agents/strategist/interview-mode.ts +0 -335
  109. package/src/agents/strategist/plan-generation.ts +0 -213
  110. package/src/agents/strategist/plan-template.ts +0 -325
  111. package/src/agents/strategist/system-prompt.ts +0 -68
  112. package/src/agents/sub/agent.ts +0 -141
  113. package/src/agents/sub/default.ts +0 -52
  114. package/src/agents/sub/gemini.ts +0 -194
  115. package/src/agents/sub/gpt-codex.ts +0 -156
  116. package/src/agents/sub/gpt-pro.ts +0 -161
  117. package/src/agents/sub/gpt.ts +0 -157
  118. package/src/agents/sub/index.ts +0 -13
  119. package/src/agents/types.ts +0 -147
  120. package/src/agents/ui.ts +0 -59
  121. package/src/config/data/model-capabilities.json +0 -40690
  122. package/src/config/defaults.ts +0 -230
  123. package/src/config/hiai-opencode.schema.json +0 -12
  124. package/src/config/index.ts +0 -65
  125. package/src/config/loader.test.ts +0 -80
  126. package/src/config/loader.ts +0 -188
  127. package/src/config/model-slots-and-export.test.ts +0 -73
  128. package/src/config/platform-schema.ts +0 -242
  129. package/src/config/schema/agent-definitions.ts +0 -5
  130. package/src/config/schema/agent-names.ts +0 -66
  131. package/src/config/schema/agent-overrides.ts +0 -97
  132. package/src/config/schema/babysitting.ts +0 -7
  133. package/src/config/schema/background-task.ts +0 -29
  134. package/src/config/schema/bob-agent.ts +0 -11
  135. package/src/config/schema/bob.ts +0 -17
  136. package/src/config/schema/browser-automation.ts +0 -24
  137. package/src/config/schema/categories.ts +0 -45
  138. package/src/config/schema/claude-code.ts +0 -13
  139. package/src/config/schema/commands.ts +0 -16
  140. package/src/config/schema/comment-checker.ts +0 -8
  141. package/src/config/schema/dynamic-context-pruning.ts +0 -53
  142. package/src/config/schema/experimental.ts +0 -27
  143. package/src/config/schema/fallback-models.ts +0 -31
  144. package/src/config/schema/fast-apply.ts +0 -14
  145. package/src/config/schema/git-env-prefix.ts +0 -28
  146. package/src/config/schema/git-master.ts +0 -14
  147. package/src/config/schema/hooks.ts +0 -59
  148. package/src/config/schema/index.ts +0 -52
  149. package/src/config/schema/internal/permission.ts +0 -20
  150. package/src/config/schema/model-capabilities.ts +0 -10
  151. package/src/config/schema/notification.ts +0 -8
  152. package/src/config/schema/oh-my-opencode-config.ts +0 -88
  153. package/src/config/schema/openclaw.ts +0 -50
  154. package/src/config/schema/ralph-loop.ts +0 -11
  155. package/src/config/schema/runtime-fallback.ts +0 -18
  156. package/src/config/schema/skill-discovery.ts +0 -25
  157. package/src/config/schema/skills.ts +0 -39
  158. package/src/config/schema/start-work.ts +0 -7
  159. package/src/config/schema/tmux.ts +0 -28
  160. package/src/config/types.ts +0 -221
  161. package/src/create-hooks.ts +0 -93
  162. package/src/create-managers.ts +0 -116
  163. package/src/create-runtime-tmux-config.ts +0 -18
  164. package/src/create-tools.ts +0 -56
  165. package/src/features/background-agent/AGENTS.md +0 -56
  166. package/src/features/background-agent/abort-with-timeout.ts +0 -35
  167. package/src/features/background-agent/background-task-notification-template.ts +0 -74
  168. package/src/features/background-agent/compaction-aware-message-resolver.ts +0 -164
  169. package/src/features/background-agent/concurrency.ts +0 -137
  170. package/src/features/background-agent/constants.ts +0 -58
  171. package/src/features/background-agent/duration-formatter.ts +0 -14
  172. package/src/features/background-agent/error-classifier.ts +0 -83
  173. package/src/features/background-agent/fallback-retry-handler.ts +0 -134
  174. package/src/features/background-agent/index.ts +0 -2
  175. package/src/features/background-agent/loop-detector.ts +0 -102
  176. package/src/features/background-agent/manager.ts +0 -2220
  177. package/src/features/background-agent/opencode-client.ts +0 -3
  178. package/src/features/background-agent/process-cleanup.ts +0 -98
  179. package/src/features/background-agent/remove-task-toast-tracking.ts +0 -8
  180. package/src/features/background-agent/session-existence.ts +0 -57
  181. package/src/features/background-agent/session-idle-event-handler.ts +0 -93
  182. package/src/features/background-agent/session-status-classifier.ts +0 -20
  183. package/src/features/background-agent/spawner/parent-directory-resolver.ts +0 -24
  184. package/src/features/background-agent/spawner.ts +0 -327
  185. package/src/features/background-agent/state.ts +0 -199
  186. package/src/features/background-agent/subagent-spawn-limits.ts +0 -97
  187. package/src/features/background-agent/task-history.ts +0 -79
  188. package/src/features/background-agent/task-poller.ts +0 -225
  189. package/src/features/background-agent/types.ts +0 -100
  190. package/src/features/boulder-state/constants.ts +0 -13
  191. package/src/features/boulder-state/index.ts +0 -4
  192. package/src/features/boulder-state/storage.ts +0 -336
  193. package/src/features/boulder-state/top-level-task.ts +0 -78
  194. package/src/features/boulder-state/types.ts +0 -61
  195. package/src/features/builtin-commands/commands.ts +0 -157
  196. package/src/features/builtin-commands/index.ts +0 -2
  197. package/src/features/builtin-commands/templates/doctor.ts +0 -43
  198. package/src/features/builtin-commands/templates/handoff.ts +0 -177
  199. package/src/features/builtin-commands/templates/init-deep.ts +0 -305
  200. package/src/features/builtin-commands/templates/mcp-status.ts +0 -36
  201. package/src/features/builtin-commands/templates/ralph-loop.ts +0 -66
  202. package/src/features/builtin-commands/templates/refactor.ts +0 -619
  203. package/src/features/builtin-commands/templates/remove-ai-slops.ts +0 -96
  204. package/src/features/builtin-commands/templates/start-work.ts +0 -128
  205. package/src/features/builtin-commands/templates/stop-continuation.ts +0 -13
  206. package/src/features/builtin-commands/types.ts +0 -9
  207. package/src/features/builtin-skills/index.ts +0 -2
  208. package/src/features/builtin-skills/materialize.ts +0 -338
  209. package/src/features/builtin-skills/skills/ai-slop-remover.ts +0 -145
  210. package/src/features/builtin-skills/skills/dev-browser.ts +0 -221
  211. package/src/features/builtin-skills/skills/frontend-ui-ux.ts +0 -79
  212. package/src/features/builtin-skills/skills/git-master-sections/commit-workflow.ts +0 -509
  213. package/src/features/builtin-skills/skills/git-master-sections/history-search-workflow.ts +0 -229
  214. package/src/features/builtin-skills/skills/git-master-sections/overview.ts +0 -64
  215. package/src/features/builtin-skills/skills/git-master-sections/quick-reference.ts +0 -86
  216. package/src/features/builtin-skills/skills/git-master-sections/rebase-workflow.ts +0 -181
  217. package/src/features/builtin-skills/skills/git-master-skill-metadata.ts +0 -4
  218. package/src/features/builtin-skills/skills/git-master.ts +0 -28
  219. package/src/features/builtin-skills/skills/hiai-opencode-setup.ts +0 -69
  220. package/src/features/builtin-skills/skills/index.ts +0 -9
  221. package/src/features/builtin-skills/skills/playwright-cli.ts +0 -268
  222. package/src/features/builtin-skills/skills/playwright.ts +0 -488
  223. package/src/features/builtin-skills/skills/review-work.ts +0 -536
  224. package/src/features/builtin-skills/skills/website-copywriting.ts +0 -41
  225. package/src/features/builtin-skills/skills.test.ts +0 -8
  226. package/src/features/builtin-skills/skills.ts +0 -50
  227. package/src/features/builtin-skills/types.ts +0 -16
  228. package/src/features/claude-code-agent-loader/agent-definitions-loader.ts +0 -87
  229. package/src/features/claude-code-agent-loader/claude-model-mapper.ts +0 -53
  230. package/src/features/claude-code-agent-loader/index.ts +0 -5
  231. package/src/features/claude-code-agent-loader/json-agent-loader.ts +0 -53
  232. package/src/features/claude-code-agent-loader/loader.ts +0 -86
  233. package/src/features/claude-code-agent-loader/opencode-config-agents-reader.ts +0 -125
  234. package/src/features/claude-code-agent-loader/types.ts +0 -31
  235. package/src/features/claude-code-command-loader/index.ts +0 -2
  236. package/src/features/claude-code-command-loader/loader.ts +0 -169
  237. package/src/features/claude-code-command-loader/types.ts +0 -46
  238. package/src/features/claude-code-mcp-loader/configure-allowed-env-vars.ts +0 -48
  239. package/src/features/claude-code-mcp-loader/env-expander.ts +0 -51
  240. package/src/features/claude-code-mcp-loader/index.ts +0 -12
  241. package/src/features/claude-code-mcp-loader/loader.ts +0 -156
  242. package/src/features/claude-code-mcp-loader/scope-filter.ts +0 -17
  243. package/src/features/claude-code-mcp-loader/transformer.ts +0 -57
  244. package/src/features/claude-code-mcp-loader/types.ts +0 -51
  245. package/src/features/claude-code-plugin-loader/agent-loader.ts +0 -59
  246. package/src/features/claude-code-plugin-loader/command-loader.ts +0 -53
  247. package/src/features/claude-code-plugin-loader/discovery.ts +0 -251
  248. package/src/features/claude-code-plugin-loader/hook-loader.ts +0 -26
  249. package/src/features/claude-code-plugin-loader/index.ts +0 -10
  250. package/src/features/claude-code-plugin-loader/loader.ts +0 -134
  251. package/src/features/claude-code-plugin-loader/mcp-server-loader.ts +0 -59
  252. package/src/features/claude-code-plugin-loader/plugin-path-resolver.ts +0 -23
  253. package/src/features/claude-code-plugin-loader/scope-filter.ts +0 -29
  254. package/src/features/claude-code-plugin-loader/skill-loader.ts +0 -62
  255. package/src/features/claude-code-plugin-loader/types.ts +0 -255
  256. package/src/features/claude-code-session-state/index.ts +0 -1
  257. package/src/features/claude-code-session-state/state.ts +0 -154
  258. package/src/features/claude-tasks/session-storage.ts +0 -52
  259. package/src/features/claude-tasks/storage.ts +0 -169
  260. package/src/features/claude-tasks/types.ts +0 -20
  261. package/src/features/context-injector/collector.ts +0 -91
  262. package/src/features/context-injector/index.ts +0 -14
  263. package/src/features/context-injector/injector.ts +0 -167
  264. package/src/features/context-injector/types.ts +0 -91
  265. package/src/features/hook-message-injector/constants.ts +0 -1
  266. package/src/features/hook-message-injector/index.ts +0 -11
  267. package/src/features/hook-message-injector/injector.ts +0 -437
  268. package/src/features/hook-message-injector/types.ts +0 -49
  269. package/src/features/mcp-oauth/AGENTS.md +0 -54
  270. package/src/features/mcp-oauth/callback-server.ts +0 -106
  271. package/src/features/mcp-oauth/dcr.ts +0 -98
  272. package/src/features/mcp-oauth/discovery.ts +0 -134
  273. package/src/features/mcp-oauth/oauth-authorization-flow.ts +0 -150
  274. package/src/features/mcp-oauth/provider.ts +0 -215
  275. package/src/features/mcp-oauth/refresh-mutex.ts +0 -58
  276. package/src/features/mcp-oauth/resource-indicator.ts +0 -16
  277. package/src/features/mcp-oauth/schema.ts +0 -8
  278. package/src/features/mcp-oauth/step-up.ts +0 -79
  279. package/src/features/mcp-oauth/storage.ts +0 -155
  280. package/src/features/opencode-skill-loader/AGENTS.md +0 -59
  281. package/src/features/opencode-skill-loader/allowed-tools-parser.ts +0 -9
  282. package/src/features/opencode-skill-loader/async-loader.ts +0 -213
  283. package/src/features/opencode-skill-loader/blocking.ts +0 -62
  284. package/src/features/opencode-skill-loader/config-source-discovery.ts +0 -114
  285. package/src/features/opencode-skill-loader/discover-worker.ts +0 -56
  286. package/src/features/opencode-skill-loader/git-master-template-injection.ts +0 -150
  287. package/src/features/opencode-skill-loader/index.ts +0 -17
  288. package/src/features/opencode-skill-loader/loaded-skill-from-path.ts +0 -73
  289. package/src/features/opencode-skill-loader/loaded-skill-template-extractor.ts +0 -16
  290. package/src/features/opencode-skill-loader/loader.ts +0 -183
  291. package/src/features/opencode-skill-loader/merger/builtin-skill-converter.ts +0 -26
  292. package/src/features/opencode-skill-loader/merger/config-skill-entry-loader.ts +0 -117
  293. package/src/features/opencode-skill-loader/merger/scope-priority.ts +0 -10
  294. package/src/features/opencode-skill-loader/merger/skill-definition-merger.ts +0 -31
  295. package/src/features/opencode-skill-loader/merger/skills-config-normalizer.ts +0 -19
  296. package/src/features/opencode-skill-loader/merger.ts +0 -96
  297. package/src/features/opencode-skill-loader/skill-content.ts +0 -11
  298. package/src/features/opencode-skill-loader/skill-deduplication.ts +0 -13
  299. package/src/features/opencode-skill-loader/skill-definition-record.ts +0 -11
  300. package/src/features/opencode-skill-loader/skill-directory-loader.ts +0 -112
  301. package/src/features/opencode-skill-loader/skill-discovery.ts +0 -76
  302. package/src/features/opencode-skill-loader/skill-mcp-config.ts +0 -45
  303. package/src/features/opencode-skill-loader/skill-resolution-options.ts +0 -9
  304. package/src/features/opencode-skill-loader/skill-template-resolver.ts +0 -97
  305. package/src/features/opencode-skill-loader/types.ts +0 -38
  306. package/src/features/run-continuation-state/constants.ts +0 -1
  307. package/src/features/run-continuation-state/index.ts +0 -3
  308. package/src/features/run-continuation-state/storage.ts +0 -80
  309. package/src/features/run-continuation-state/types.ts +0 -15
  310. package/src/features/skill-mcp-manager/AGENTS.md +0 -111
  311. package/src/features/skill-mcp-manager/cleanup.ts +0 -153
  312. package/src/features/skill-mcp-manager/connection-type.ts +0 -26
  313. package/src/features/skill-mcp-manager/connection.ts +0 -146
  314. package/src/features/skill-mcp-manager/env-cleaner.ts +0 -59
  315. package/src/features/skill-mcp-manager/error-redaction.ts +0 -47
  316. package/src/features/skill-mcp-manager/http-client.ts +0 -126
  317. package/src/features/skill-mcp-manager/index.ts +0 -2
  318. package/src/features/skill-mcp-manager/manager.ts +0 -178
  319. package/src/features/skill-mcp-manager/oauth-handler.ts +0 -160
  320. package/src/features/skill-mcp-manager/stdio-client.ts +0 -112
  321. package/src/features/skill-mcp-manager/types.ts +0 -96
  322. package/src/features/task-toast-manager/index.ts +0 -2
  323. package/src/features/task-toast-manager/manager.ts +0 -251
  324. package/src/features/task-toast-manager/types.ts +0 -29
  325. package/src/features/tmux-subagent/action-executor-core.ts +0 -82
  326. package/src/features/tmux-subagent/action-executor.ts +0 -137
  327. package/src/features/tmux-subagent/cleanup.ts +0 -42
  328. package/src/features/tmux-subagent/decision-engine.ts +0 -22
  329. package/src/features/tmux-subagent/event-handlers.ts +0 -6
  330. package/src/features/tmux-subagent/grid-planning.ts +0 -137
  331. package/src/features/tmux-subagent/index.ts +0 -16
  332. package/src/features/tmux-subagent/manager.ts +0 -969
  333. package/src/features/tmux-subagent/oldest-agent-pane.ts +0 -37
  334. package/src/features/tmux-subagent/pane-split-availability.ts +0 -77
  335. package/src/features/tmux-subagent/pane-state-parser.ts +0 -135
  336. package/src/features/tmux-subagent/pane-state-querier.ts +0 -76
  337. package/src/features/tmux-subagent/polling-constants.ts +0 -6
  338. package/src/features/tmux-subagent/polling-manager.ts +0 -167
  339. package/src/features/tmux-subagent/polling.ts +0 -183
  340. package/src/features/tmux-subagent/session-created-event.ts +0 -44
  341. package/src/features/tmux-subagent/session-created-handler.ts +0 -175
  342. package/src/features/tmux-subagent/session-deleted-handler.ts +0 -50
  343. package/src/features/tmux-subagent/session-message-count.ts +0 -3
  344. package/src/features/tmux-subagent/session-ready-waiter.ts +0 -44
  345. package/src/features/tmux-subagent/session-status-parser.ts +0 -17
  346. package/src/features/tmux-subagent/spawn-action-decider.ts +0 -147
  347. package/src/features/tmux-subagent/spawn-target-finder.ts +0 -146
  348. package/src/features/tmux-subagent/tmux-grid-constants.ts +0 -57
  349. package/src/features/tmux-subagent/tracked-session-state.ts +0 -29
  350. package/src/features/tmux-subagent/types.ts +0 -54
  351. package/src/features/tool-metadata-store/index.ts +0 -7
  352. package/src/features/tool-metadata-store/store.ts +0 -84
  353. package/src/hooks/agent-usage-reminder/constants.ts +0 -52
  354. package/src/hooks/agent-usage-reminder/hook.ts +0 -134
  355. package/src/hooks/agent-usage-reminder/index.ts +0 -1
  356. package/src/hooks/agent-usage-reminder/storage.ts +0 -42
  357. package/src/hooks/agent-usage-reminder/types.ts +0 -6
  358. package/src/hooks/anthropic-context-window-limit-recovery/AGENTS.md +0 -49
  359. package/src/hooks/anthropic-context-window-limit-recovery/aggressive-truncation-strategy.ts +0 -87
  360. package/src/hooks/anthropic-context-window-limit-recovery/client.ts +0 -21
  361. package/src/hooks/anthropic-context-window-limit-recovery/deduplication-recovery.ts +0 -77
  362. package/src/hooks/anthropic-context-window-limit-recovery/empty-content-recovery-sdk.ts +0 -199
  363. package/src/hooks/anthropic-context-window-limit-recovery/empty-content-recovery.ts +0 -149
  364. package/src/hooks/anthropic-context-window-limit-recovery/executor.ts +0 -83
  365. package/src/hooks/anthropic-context-window-limit-recovery/index.ts +0 -8
  366. package/src/hooks/anthropic-context-window-limit-recovery/message-builder.ts +0 -190
  367. package/src/hooks/anthropic-context-window-limit-recovery/message-storage-directory.ts +0 -40
  368. package/src/hooks/anthropic-context-window-limit-recovery/parser.ts +0 -209
  369. package/src/hooks/anthropic-context-window-limit-recovery/pruning-deduplication.ts +0 -189
  370. package/src/hooks/anthropic-context-window-limit-recovery/pruning-tool-output-truncation.ts +0 -142
  371. package/src/hooks/anthropic-context-window-limit-recovery/pruning-types.ts +0 -44
  372. package/src/hooks/anthropic-context-window-limit-recovery/recovery-hook.test-support.ts +0 -119
  373. package/src/hooks/anthropic-context-window-limit-recovery/recovery-hook.ts +0 -193
  374. package/src/hooks/anthropic-context-window-limit-recovery/recovery-strategy.ts +0 -2
  375. package/src/hooks/anthropic-context-window-limit-recovery/session-timeout-map.ts +0 -20
  376. package/src/hooks/anthropic-context-window-limit-recovery/state.ts +0 -78
  377. package/src/hooks/anthropic-context-window-limit-recovery/storage-paths.ts +0 -6
  378. package/src/hooks/anthropic-context-window-limit-recovery/storage.ts +0 -18
  379. package/src/hooks/anthropic-context-window-limit-recovery/summarize-retry-strategy.ts +0 -218
  380. package/src/hooks/anthropic-context-window-limit-recovery/target-token-truncation.ts +0 -196
  381. package/src/hooks/anthropic-context-window-limit-recovery/tool-part-types.ts +0 -38
  382. package/src/hooks/anthropic-context-window-limit-recovery/tool-result-storage-sdk.ts +0 -123
  383. package/src/hooks/anthropic-context-window-limit-recovery/tool-result-storage.ts +0 -119
  384. package/src/hooks/anthropic-context-window-limit-recovery/types.ts +0 -44
  385. package/src/hooks/anthropic-effort/hook.ts +0 -93
  386. package/src/hooks/anthropic-effort/index.ts +0 -1
  387. package/src/hooks/auto-slash-command/constants.ts +0 -12
  388. package/src/hooks/auto-slash-command/detector.ts +0 -88
  389. package/src/hooks/auto-slash-command/executor.ts +0 -165
  390. package/src/hooks/auto-slash-command/hook.ts +0 -238
  391. package/src/hooks/auto-slash-command/index.ts +0 -7
  392. package/src/hooks/auto-slash-command/processed-command-store.ts +0 -74
  393. package/src/hooks/auto-slash-command/types.ts +0 -42
  394. package/src/hooks/background-notification/hook.ts +0 -54
  395. package/src/hooks/background-notification/index.ts +0 -2
  396. package/src/hooks/background-notification/types.ts +0 -5
  397. package/src/hooks/bash-file-read-guard.ts +0 -44
  398. package/src/hooks/category-skill-reminder/formatter.ts +0 -37
  399. package/src/hooks/category-skill-reminder/hook.ts +0 -142
  400. package/src/hooks/category-skill-reminder/index.ts +0 -1
  401. package/src/hooks/claude-code-hooks/AGENTS.md +0 -41
  402. package/src/hooks/claude-code-hooks/claude-code-hooks-hook.ts +0 -28
  403. package/src/hooks/claude-code-hooks/config-loader.ts +0 -151
  404. package/src/hooks/claude-code-hooks/config.ts +0 -147
  405. package/src/hooks/claude-code-hooks/dispatch-hook.ts +0 -27
  406. package/src/hooks/claude-code-hooks/execute-http-hook.ts +0 -116
  407. package/src/hooks/claude-code-hooks/handlers/chat-message-handler.ts +0 -140
  408. package/src/hooks/claude-code-hooks/handlers/pre-compact-handler.ts +0 -41
  409. package/src/hooks/claude-code-hooks/handlers/session-event-handler.ts +0 -137
  410. package/src/hooks/claude-code-hooks/handlers/tool-execute-after-handler.ts +0 -160
  411. package/src/hooks/claude-code-hooks/handlers/tool-execute-before-handler.ts +0 -93
  412. package/src/hooks/claude-code-hooks/index.ts +0 -1
  413. package/src/hooks/claude-code-hooks/plugin-config.ts +0 -12
  414. package/src/hooks/claude-code-hooks/post-tool-use.ts +0 -195
  415. package/src/hooks/claude-code-hooks/pre-compact.ts +0 -105
  416. package/src/hooks/claude-code-hooks/pre-tool-use.ts +0 -168
  417. package/src/hooks/claude-code-hooks/session-hook-state.ts +0 -17
  418. package/src/hooks/claude-code-hooks/stop.ts +0 -118
  419. package/src/hooks/claude-code-hooks/todo.ts +0 -76
  420. package/src/hooks/claude-code-hooks/tool-input-cache.ts +0 -82
  421. package/src/hooks/claude-code-hooks/transcript.ts +0 -248
  422. package/src/hooks/claude-code-hooks/types.ts +0 -214
  423. package/src/hooks/claude-code-hooks/user-prompt-submit.ts +0 -121
  424. package/src/hooks/comment-checker/cli-runner.ts +0 -127
  425. package/src/hooks/comment-checker/cli.ts +0 -269
  426. package/src/hooks/comment-checker/downloader.ts +0 -170
  427. package/src/hooks/comment-checker/hook.ts +0 -192
  428. package/src/hooks/comment-checker/index.ts +0 -1
  429. package/src/hooks/comment-checker/pending-calls.ts +0 -45
  430. package/src/hooks/comment-checker/types.ts +0 -33
  431. package/src/hooks/compaction-context-injector/compaction-context-prompt.ts +0 -56
  432. package/src/hooks/compaction-context-injector/constants.ts +0 -5
  433. package/src/hooks/compaction-context-injector/hook.ts +0 -164
  434. package/src/hooks/compaction-context-injector/index.ts +0 -1
  435. package/src/hooks/compaction-context-injector/recovery-prompt-config.ts +0 -77
  436. package/src/hooks/compaction-context-injector/recovery.ts +0 -163
  437. package/src/hooks/compaction-context-injector/session-id.ts +0 -8
  438. package/src/hooks/compaction-context-injector/session-prompt-config-resolver.ts +0 -120
  439. package/src/hooks/compaction-context-injector/tail-monitor.ts +0 -52
  440. package/src/hooks/compaction-context-injector/types.ts +0 -25
  441. package/src/hooks/compaction-context-injector/validated-model.ts +0 -47
  442. package/src/hooks/compaction-todo-preserver/hook.ts +0 -127
  443. package/src/hooks/compaction-todo-preserver/index.ts +0 -2
  444. package/src/hooks/context-window-monitor.ts +0 -113
  445. package/src/hooks/delegate-task-retry/guidance.ts +0 -45
  446. package/src/hooks/delegate-task-retry/hook.ts +0 -22
  447. package/src/hooks/delegate-task-retry/index.ts +0 -4
  448. package/src/hooks/delegate-task-retry/patterns.ts +0 -77
  449. package/src/hooks/directory-agents-injector/constants.ts +0 -7
  450. package/src/hooks/directory-agents-injector/finder.ts +0 -38
  451. package/src/hooks/directory-agents-injector/hook.ts +0 -80
  452. package/src/hooks/directory-agents-injector/index.ts +0 -1
  453. package/src/hooks/directory-agents-injector/injector.ts +0 -59
  454. package/src/hooks/directory-agents-injector/storage.ts +0 -8
  455. package/src/hooks/directory-readme-injector/constants.ts +0 -7
  456. package/src/hooks/directory-readme-injector/finder.ts +0 -33
  457. package/src/hooks/directory-readme-injector/hook.ts +0 -80
  458. package/src/hooks/directory-readme-injector/index.ts +0 -1
  459. package/src/hooks/directory-readme-injector/injector.ts +0 -59
  460. package/src/hooks/directory-readme-injector/storage.ts +0 -8
  461. package/src/hooks/edit-error-recovery/hook.ts +0 -58
  462. package/src/hooks/edit-error-recovery/index.ts +0 -5
  463. package/src/hooks/empty-task-response-detector.ts +0 -27
  464. package/src/hooks/fast-apply/hook.ts +0 -11
  465. package/src/hooks/fast-apply/index.ts +0 -1
  466. package/src/hooks/fast-apply/ollama-client.ts +0 -53
  467. package/src/hooks/fast-apply/tool-execute-before-handler.ts +0 -86
  468. package/src/hooks/guard/AGENTS.md +0 -64
  469. package/src/hooks/guard/background-launch-session-tracking.ts +0 -97
  470. package/src/hooks/guard/bob-path.ts +0 -8
  471. package/src/hooks/guard/boulder-continuation-injector.ts +0 -109
  472. package/src/hooks/guard/boulder-session-lineage.ts +0 -44
  473. package/src/hooks/guard/event-handler.ts +0 -104
  474. package/src/hooks/guard/final-wave-approval-gate.ts +0 -47
  475. package/src/hooks/guard/final-wave-plan-state.ts +0 -60
  476. package/src/hooks/guard/guard-hook.ts +0 -27
  477. package/src/hooks/guard/hook-name.ts +0 -1
  478. package/src/hooks/guard/idle-event.ts +0 -341
  479. package/src/hooks/guard/index.ts +0 -3
  480. package/src/hooks/guard/is-abort-error.ts +0 -20
  481. package/src/hooks/guard/recent-model-resolver.ts +0 -89
  482. package/src/hooks/guard/resolve-active-boulder-session.ts +0 -29
  483. package/src/hooks/guard/session-last-agent.ts +0 -153
  484. package/src/hooks/guard/subagent-session-id.ts +0 -54
  485. package/src/hooks/guard/system-reminder-templates.ts +0 -249
  486. package/src/hooks/guard/task-context.ts +0 -45
  487. package/src/hooks/guard/tool-execute-after.ts +0 -209
  488. package/src/hooks/guard/tool-execute-before.ts +0 -102
  489. package/src/hooks/guard/tsconfig.json +0 -9
  490. package/src/hooks/guard/types.ts +0 -45
  491. package/src/hooks/guard/verification-reminders.ts +0 -197
  492. package/src/hooks/guard/write-edit-tool-policy.ts +0 -5
  493. package/src/hooks/hashline-edit-diff-enhancer/hook.ts +0 -106
  494. package/src/hooks/hashline-read-enhancer/hook.ts +0 -193
  495. package/src/hooks/hashline-read-enhancer/index.ts +0 -1
  496. package/src/hooks/index.ts +0 -56
  497. package/src/hooks/interactive-bash-session/constants.ts +0 -13
  498. package/src/hooks/interactive-bash-session/hook.ts +0 -125
  499. package/src/hooks/interactive-bash-session/index.ts +0 -3
  500. package/src/hooks/interactive-bash-session/interactive-bash-session-tracker.ts +0 -119
  501. package/src/hooks/interactive-bash-session/parser.ts +0 -118
  502. package/src/hooks/interactive-bash-session/state-manager.ts +0 -35
  503. package/src/hooks/interactive-bash-session/storage.ts +0 -59
  504. package/src/hooks/interactive-bash-session/tmux-command-parser.ts +0 -125
  505. package/src/hooks/interactive-bash-session/types.ts +0 -11
  506. package/src/hooks/json-error-recovery/hook.ts +0 -58
  507. package/src/hooks/json-error-recovery/index.ts +0 -6
  508. package/src/hooks/keyword-detector/AGENTS.md +0 -57
  509. package/src/hooks/keyword-detector/analyze/default.ts +0 -28
  510. package/src/hooks/keyword-detector/analyze/index.ts +0 -1
  511. package/src/hooks/keyword-detector/constants.ts +0 -45
  512. package/src/hooks/keyword-detector/detector.ts +0 -53
  513. package/src/hooks/keyword-detector/hook.ts +0 -143
  514. package/src/hooks/keyword-detector/index.ts +0 -5
  515. package/src/hooks/keyword-detector/search/default.ts +0 -20
  516. package/src/hooks/keyword-detector/search/index.ts +0 -1
  517. package/src/hooks/keyword-detector/types.ts +0 -4
  518. package/src/hooks/keyword-detector/ultrawork/default.ts +0 -302
  519. package/src/hooks/keyword-detector/ultrawork/gemini.ts +0 -290
  520. package/src/hooks/keyword-detector/ultrawork/gpt.ts +0 -171
  521. package/src/hooks/keyword-detector/ultrawork/index.ts +0 -56
  522. package/src/hooks/keyword-detector/ultrawork/planner.ts +0 -140
  523. package/src/hooks/keyword-detector/ultrawork/source-detector.ts +0 -65
  524. package/src/hooks/legacy-plugin-toast/auto-migrate-runner.ts +0 -2
  525. package/src/hooks/legacy-plugin-toast/auto-migrate.ts +0 -64
  526. package/src/hooks/legacy-plugin-toast/hook.ts +0 -68
  527. package/src/hooks/legacy-plugin-toast/index.ts +0 -1
  528. package/src/hooks/legacy-plugin-toast/plugin-entry-migrator.ts +0 -1
  529. package/src/hooks/model-fallback/chat-message-fallback-handler.ts +0 -74
  530. package/src/hooks/model-fallback/hook.ts +0 -201
  531. package/src/hooks/model-fallback/next-fallback.ts +0 -84
  532. package/src/hooks/non-interactive-env/constants.ts +0 -70
  533. package/src/hooks/non-interactive-env/detector.ts +0 -19
  534. package/src/hooks/non-interactive-env/index.ts +0 -5
  535. package/src/hooks/non-interactive-env/non-interactive-env-hook.ts +0 -73
  536. package/src/hooks/non-interactive-env/types.ts +0 -3
  537. package/src/hooks/preemptive-compaction-degradation-monitor.ts +0 -212
  538. package/src/hooks/preemptive-compaction-no-text-tail.ts +0 -70
  539. package/src/hooks/preemptive-compaction.ts +0 -218
  540. package/src/hooks/question-label-truncator/hook.ts +0 -62
  541. package/src/hooks/question-label-truncator/index.ts +0 -1
  542. package/src/hooks/ralph-loop/AGENTS.md +0 -62
  543. package/src/hooks/ralph-loop/command-arguments.ts +0 -30
  544. package/src/hooks/ralph-loop/completion-handler.ts +0 -65
  545. package/src/hooks/ralph-loop/completion-promise-detector-test-input.ts +0 -23
  546. package/src/hooks/ralph-loop/completion-promise-detector.ts +0 -165
  547. package/src/hooks/ralph-loop/constants.ts +0 -7
  548. package/src/hooks/ralph-loop/continuation-prompt-builder.ts +0 -77
  549. package/src/hooks/ralph-loop/continuation-prompt-injector.ts +0 -91
  550. package/src/hooks/ralph-loop/index.ts +0 -6
  551. package/src/hooks/ralph-loop/iteration-continuation.ts +0 -64
  552. package/src/hooks/ralph-loop/logician-verification-detector.ts +0 -88
  553. package/src/hooks/ralph-loop/loop-session-recovery.ts +0 -33
  554. package/src/hooks/ralph-loop/loop-state-controller.ts +0 -178
  555. package/src/hooks/ralph-loop/message-storage-directory.ts +0 -1
  556. package/src/hooks/ralph-loop/pending-verification-handler.ts +0 -152
  557. package/src/hooks/ralph-loop/ralph-loop-event-handler.ts +0 -231
  558. package/src/hooks/ralph-loop/ralph-loop-hook.ts +0 -90
  559. package/src/hooks/ralph-loop/session-event-handler.ts +0 -56
  560. package/src/hooks/ralph-loop/session-reset-strategy.ts +0 -69
  561. package/src/hooks/ralph-loop/storage.ts +0 -164
  562. package/src/hooks/ralph-loop/types.ts +0 -25
  563. package/src/hooks/ralph-loop/verification-failure-handler.ts +0 -103
  564. package/src/hooks/ralph-loop/with-timeout.ts +0 -20
  565. package/src/hooks/read-image-resizer/hook.ts +0 -209
  566. package/src/hooks/read-image-resizer/image-dimensions.ts +0 -191
  567. package/src/hooks/read-image-resizer/image-resizer.ts +0 -191
  568. package/src/hooks/read-image-resizer/index.ts +0 -1
  569. package/src/hooks/read-image-resizer/png-fallback-resizer.ts +0 -359
  570. package/src/hooks/read-image-resizer/types.ts +0 -16
  571. package/src/hooks/rules-injector/AGENTS.md +0 -53
  572. package/src/hooks/rules-injector/cache.ts +0 -27
  573. package/src/hooks/rules-injector/constants.ts +0 -31
  574. package/src/hooks/rules-injector/finder.ts +0 -3
  575. package/src/hooks/rules-injector/hook.ts +0 -94
  576. package/src/hooks/rules-injector/index.ts +0 -2
  577. package/src/hooks/rules-injector/injector.ts +0 -189
  578. package/src/hooks/rules-injector/matcher.ts +0 -63
  579. package/src/hooks/rules-injector/output-path.ts +0 -22
  580. package/src/hooks/rules-injector/parser.ts +0 -211
  581. package/src/hooks/rules-injector/project-root-finder.ts +0 -36
  582. package/src/hooks/rules-injector/rule-distance.ts +0 -53
  583. package/src/hooks/rules-injector/rule-file-finder.ts +0 -139
  584. package/src/hooks/rules-injector/rule-file-scanner.ts +0 -55
  585. package/src/hooks/rules-injector/storage.ts +0 -59
  586. package/src/hooks/rules-injector/types.ts +0 -57
  587. package/src/hooks/runtime-fallback/AGENTS.md +0 -102
  588. package/src/hooks/runtime-fallback/agent-resolver.ts +0 -50
  589. package/src/hooks/runtime-fallback/auto-retry-signal.ts +0 -32
  590. package/src/hooks/runtime-fallback/auto-retry.ts +0 -228
  591. package/src/hooks/runtime-fallback/chat-message-handler.ts +0 -62
  592. package/src/hooks/runtime-fallback/constants.ts +0 -47
  593. package/src/hooks/runtime-fallback/error-classifier.ts +0 -183
  594. package/src/hooks/runtime-fallback/event-handler.ts +0 -213
  595. package/src/hooks/runtime-fallback/fallback-bootstrap-model.ts +0 -63
  596. package/src/hooks/runtime-fallback/fallback-models.ts +0 -86
  597. package/src/hooks/runtime-fallback/fallback-retry-dispatcher.ts +0 -55
  598. package/src/hooks/runtime-fallback/fallback-state.ts +0 -74
  599. package/src/hooks/runtime-fallback/hook.ts +0 -87
  600. package/src/hooks/runtime-fallback/index.ts +0 -2
  601. package/src/hooks/runtime-fallback/last-user-retry-parts.ts +0 -20
  602. package/src/hooks/runtime-fallback/message-update-handler.ts +0 -168
  603. package/src/hooks/runtime-fallback/retry-model-payload.ts +0 -30
  604. package/src/hooks/runtime-fallback/session-messages.ts +0 -38
  605. package/src/hooks/runtime-fallback/session-status-handler.ts +0 -126
  606. package/src/hooks/runtime-fallback/types.ts +0 -77
  607. package/src/hooks/runtime-fallback/visible-assistant-response.ts +0 -80
  608. package/src/hooks/session-notification-content.ts +0 -145
  609. package/src/hooks/session-notification-formatting.ts +0 -25
  610. package/src/hooks/session-notification-scheduler.ts +0 -188
  611. package/src/hooks/session-notification-sender.ts +0 -117
  612. package/src/hooks/session-notification-utils.ts +0 -80
  613. package/src/hooks/session-notification.ts +0 -219
  614. package/src/hooks/session-recovery/AGENTS.md +0 -59
  615. package/src/hooks/session-recovery/constants.ts +0 -5
  616. package/src/hooks/session-recovery/detect-error-type.ts +0 -102
  617. package/src/hooks/session-recovery/hook.ts +0 -166
  618. package/src/hooks/session-recovery/index.ts +0 -7
  619. package/src/hooks/session-recovery/recover-empty-content-message-sdk.ts +0 -201
  620. package/src/hooks/session-recovery/recover-thinking-block-order.ts +0 -137
  621. package/src/hooks/session-recovery/recover-thinking-disabled-violation.ts +0 -75
  622. package/src/hooks/session-recovery/recover-tool-result-missing.ts +0 -108
  623. package/src/hooks/session-recovery/recover-unavailable-tool.ts +0 -108
  624. package/src/hooks/session-recovery/resume.ts +0 -49
  625. package/src/hooks/session-recovery/storage/empty-messages.ts +0 -47
  626. package/src/hooks/session-recovery/storage/empty-text.ts +0 -118
  627. package/src/hooks/session-recovery/storage/message-dir.ts +0 -1
  628. package/src/hooks/session-recovery/storage/messages-reader.ts +0 -83
  629. package/src/hooks/session-recovery/storage/orphan-thinking-search.ts +0 -43
  630. package/src/hooks/session-recovery/storage/part-content.ts +0 -28
  631. package/src/hooks/session-recovery/storage/part-id.ts +0 -5
  632. package/src/hooks/session-recovery/storage/parts-reader.ts +0 -56
  633. package/src/hooks/session-recovery/storage/text-part-injector.ts +0 -63
  634. package/src/hooks/session-recovery/storage/thinking-block-search.ts +0 -42
  635. package/src/hooks/session-recovery/storage/thinking-prepend.ts +0 -223
  636. package/src/hooks/session-recovery/storage/thinking-strip.ts +0 -67
  637. package/src/hooks/session-recovery/storage.ts +0 -34
  638. package/src/hooks/session-recovery/types.ts +0 -101
  639. package/src/hooks/session-todo-status.ts +0 -20
  640. package/src/hooks/shared/compaction-model-resolver.ts +0 -34
  641. package/src/hooks/shared/shared/compaction-model-resolver.ts +0 -34
  642. package/src/hooks/start-work/context-info-builder.ts +0 -319
  643. package/src/hooks/start-work/index.ts +0 -4
  644. package/src/hooks/start-work/parse-user-request.ts +0 -32
  645. package/src/hooks/start-work/start-work-hook.ts +0 -135
  646. package/src/hooks/start-work/worktree-block.ts +0 -11
  647. package/src/hooks/start-work/worktree-detector.ts +0 -77
  648. package/src/hooks/stop-continuation-guard/hook.ts +0 -122
  649. package/src/hooks/stop-continuation-guard/index.ts +0 -2
  650. package/src/hooks/strategist-md-only/agent-matcher.ts +0 -5
  651. package/src/hooks/strategist-md-only/agent-resolution.ts +0 -70
  652. package/src/hooks/strategist-md-only/constants.ts +0 -78
  653. package/src/hooks/strategist-md-only/hook.ts +0 -82
  654. package/src/hooks/strategist-md-only/index.ts +0 -2
  655. package/src/hooks/strategist-md-only/path-policy.ts +0 -41
  656. package/src/hooks/sub-notepad/constants.ts +0 -29
  657. package/src/hooks/sub-notepad/hook.ts +0 -44
  658. package/src/hooks/sub-notepad/index.ts +0 -3
  659. package/src/hooks/task-reminder/hook.ts +0 -59
  660. package/src/hooks/task-reminder/index.ts +0 -1
  661. package/src/hooks/task-resume-info/hook.ts +0 -39
  662. package/src/hooks/task-resume-info/index.ts +0 -1
  663. package/src/hooks/tasks-todowrite-disabler/constants.ts +0 -30
  664. package/src/hooks/tasks-todowrite-disabler/hook.ts +0 -34
  665. package/src/hooks/tasks-todowrite-disabler/index.ts +0 -2
  666. package/src/hooks/think-mode/detector.ts +0 -59
  667. package/src/hooks/think-mode/hook.ts +0 -76
  668. package/src/hooks/think-mode/index.ts +0 -5
  669. package/src/hooks/think-mode/switcher.ts +0 -100
  670. package/src/hooks/think-mode/types.ts +0 -16
  671. package/src/hooks/thinking-block-validator/hook.ts +0 -181
  672. package/src/hooks/thinking-block-validator/index.ts +0 -1
  673. package/src/hooks/todo-continuation-enforcer/AGENTS.md +0 -65
  674. package/src/hooks/todo-continuation-enforcer/abort-detection.ts +0 -17
  675. package/src/hooks/todo-continuation-enforcer/compaction-guard.ts +0 -39
  676. package/src/hooks/todo-continuation-enforcer/constants.ts +0 -25
  677. package/src/hooks/todo-continuation-enforcer/continuation-injection.ts +0 -222
  678. package/src/hooks/todo-continuation-enforcer/countdown.ts +0 -86
  679. package/src/hooks/todo-continuation-enforcer/handler.ts +0 -99
  680. package/src/hooks/todo-continuation-enforcer/idle-event.ts +0 -225
  681. package/src/hooks/todo-continuation-enforcer/index.ts +0 -59
  682. package/src/hooks/todo-continuation-enforcer/message-directory.ts +0 -1
  683. package/src/hooks/todo-continuation-enforcer/non-idle-events.ts +0 -107
  684. package/src/hooks/todo-continuation-enforcer/pending-question-detection.ts +0 -40
  685. package/src/hooks/todo-continuation-enforcer/resolve-message-info.ts +0 -48
  686. package/src/hooks/todo-continuation-enforcer/session-state.ts +0 -283
  687. package/src/hooks/todo-continuation-enforcer/stagnation-detection.ts +0 -36
  688. package/src/hooks/todo-continuation-enforcer/todo.ts +0 -11
  689. package/src/hooks/todo-continuation-enforcer/token-limit-detection.ts +0 -38
  690. package/src/hooks/todo-continuation-enforcer/types.ts +0 -74
  691. package/src/hooks/todo-description-override/description.ts +0 -28
  692. package/src/hooks/todo-description-override/hook.ts +0 -14
  693. package/src/hooks/todo-description-override/index.ts +0 -1
  694. package/src/hooks/tool-output-truncator.ts +0 -66
  695. package/src/hooks/tool-pair-validator/hook.ts +0 -184
  696. package/src/hooks/tool-pair-validator/index.ts +0 -1
  697. package/src/hooks/unstable-agent-babysitter/index.ts +0 -9
  698. package/src/hooks/unstable-agent-babysitter/task-message-analyzer.ts +0 -110
  699. package/src/hooks/unstable-agent-babysitter/unstable-agent-babysitter-hook.ts +0 -238
  700. package/src/hooks/webfetch-redirect-guard/constants.ts +0 -11
  701. package/src/hooks/webfetch-redirect-guard/hook.ts +0 -123
  702. package/src/hooks/webfetch-redirect-guard/index.ts +0 -1
  703. package/src/hooks/webfetch-redirect-guard/redirect-resolution.ts +0 -89
  704. package/src/hooks/write-existing-file-guard/hook.ts +0 -108
  705. package/src/hooks/write-existing-file-guard/index.ts +0 -1
  706. package/src/hooks/write-existing-file-guard/session-read-permissions.ts +0 -36
  707. package/src/hooks/write-existing-file-guard/tool-execute-before-handler.ts +0 -176
  708. package/src/index.ts +0 -254
  709. package/src/internals/plugins/pty/LICENSE +0 -21
  710. package/src/internals/plugins/pty/constants.ts +0 -7
  711. package/src/internals/plugins/pty/plugin.ts +0 -28
  712. package/src/internals/plugins/pty/pty/buffer.ts +0 -75
  713. package/src/internals/plugins/pty/pty/formatters.ts +0 -22
  714. package/src/internals/plugins/pty/pty/manager.ts +0 -175
  715. package/src/internals/plugins/pty/pty/notification-manager.ts +0 -75
  716. package/src/internals/plugins/pty/pty/output-manager.ts +0 -29
  717. package/src/internals/plugins/pty/pty/permissions.ts +0 -115
  718. package/src/internals/plugins/pty/pty/session-lifecycle.ts +0 -161
  719. package/src/internals/plugins/pty/pty/tools/kill.ts +0 -41
  720. package/src/internals/plugins/pty/pty/tools/kill.txt +0 -25
  721. package/src/internals/plugins/pty/pty/tools/list.ts +0 -25
  722. package/src/internals/plugins/pty/pty/tools/list.txt +0 -22
  723. package/src/internals/plugins/pty/pty/tools/read.ts +0 -234
  724. package/src/internals/plugins/pty/pty/tools/read.txt +0 -39
  725. package/src/internals/plugins/pty/pty/tools/spawn.ts +0 -71
  726. package/src/internals/plugins/pty/pty/tools/spawn.txt +0 -47
  727. package/src/internals/plugins/pty/pty/tools/write.ts +0 -96
  728. package/src/internals/plugins/pty/pty/tools/write.txt +0 -28
  729. package/src/internals/plugins/pty/pty/types.ts +0 -67
  730. package/src/internals/plugins/pty/pty/utils.ts +0 -21
  731. package/src/internals/plugins/pty/pty/wildcard.ts +0 -62
  732. package/src/internals/plugins/pty/shared/constants.ts +0 -7
  733. package/src/internals/plugins/pty/types.ts +0 -7
  734. package/src/internals/plugins/subtask2/LICENSE +0 -128
  735. package/src/internals/plugins/subtask2/commands/index.ts +0 -7
  736. package/src/internals/plugins/subtask2/commands/loader.ts +0 -39
  737. package/src/internals/plugins/subtask2/commands/manifest.ts +0 -60
  738. package/src/internals/plugins/subtask2/commands/resolver.ts +0 -28
  739. package/src/internals/plugins/subtask2/core/plugin.ts +0 -52
  740. package/src/internals/plugins/subtask2/core/state.ts +0 -764
  741. package/src/internals/plugins/subtask2/features/auto.ts +0 -57
  742. package/src/internals/plugins/subtask2/features/index.ts +0 -9
  743. package/src/internals/plugins/subtask2/features/inline-subtasks.ts +0 -205
  744. package/src/internals/plugins/subtask2/features/parallel.ts +0 -148
  745. package/src/internals/plugins/subtask2/features/results.ts +0 -48
  746. package/src/internals/plugins/subtask2/features/returns.ts +0 -273
  747. package/src/internals/plugins/subtask2/features/turns.ts +0 -190
  748. package/src/internals/plugins/subtask2/hooks/command-hooks.ts +0 -283
  749. package/src/internals/plugins/subtask2/hooks/message-hooks.ts +0 -603
  750. package/src/internals/plugins/subtask2/hooks/session-idle-hook.ts +0 -358
  751. package/src/internals/plugins/subtask2/hooks/tool-hooks.ts +0 -309
  752. package/src/internals/plugins/subtask2/loop.ts +0 -122
  753. package/src/internals/plugins/subtask2/parsing/auto.ts +0 -33
  754. package/src/internals/plugins/subtask2/parsing/commands.ts +0 -154
  755. package/src/internals/plugins/subtask2/parsing/frontmatter.ts +0 -20
  756. package/src/internals/plugins/subtask2/parsing/index.ts +0 -10
  757. package/src/internals/plugins/subtask2/parsing/overrides.ts +0 -68
  758. package/src/internals/plugins/subtask2/parsing/parallel.ts +0 -91
  759. package/src/internals/plugins/subtask2/parsing/turns.ts +0 -78
  760. package/src/internals/plugins/subtask2/types.ts +0 -41
  761. package/src/internals/plugins/subtask2/utils/config.ts +0 -100
  762. package/src/internals/plugins/subtask2/utils/index.ts +0 -7
  763. package/src/internals/plugins/subtask2/utils/logger.ts +0 -67
  764. package/src/internals/plugins/subtask2/utils/prompts.ts +0 -117
  765. package/src/lsp/index.ts +0 -16
  766. package/src/mcp/context7.ts +0 -9
  767. package/src/mcp/index.ts +0 -53
  768. package/src/mcp/registry.ts +0 -164
  769. package/src/mcp/types.ts +0 -19
  770. package/src/permissions/index.ts +0 -25
  771. package/src/plugin/AGENTS.md +0 -54
  772. package/src/plugin/available-categories.ts +0 -24
  773. package/src/plugin/chat-headers.ts +0 -141
  774. package/src/plugin/chat-message.ts +0 -307
  775. package/src/plugin/chat-params.ts +0 -182
  776. package/src/plugin/command-execute-before.ts +0 -80
  777. package/src/plugin/event.ts +0 -639
  778. package/src/plugin/hooks/create-continuation-hooks.ts +0 -128
  779. package/src/plugin/hooks/create-core-hooks.ts +0 -47
  780. package/src/plugin/hooks/create-session-hooks.ts +0 -269
  781. package/src/plugin/hooks/create-skill-hooks.ts +0 -50
  782. package/src/plugin/hooks/create-tool-guard-hooks.ts +0 -159
  783. package/src/plugin/hooks/create-transform-hooks.ts +0 -85
  784. package/src/plugin/messages-transform.ts +0 -28
  785. package/src/plugin/normalize-tool-arg-schemas.ts +0 -75
  786. package/src/plugin/recent-synthetic-idles.ts +0 -20
  787. package/src/plugin/session-agent-resolver.ts +0 -37
  788. package/src/plugin/session-status-normalizer.ts +0 -22
  789. package/src/plugin/skill-context.ts +0 -150
  790. package/src/plugin/skill-discovery-config.ts +0 -32
  791. package/src/plugin/startup-diagnostics.ts +0 -27
  792. package/src/plugin/system-transform.ts +0 -6
  793. package/src/plugin/tool-execute-after.ts +0 -178
  794. package/src/plugin/tool-execute-before.ts +0 -222
  795. package/src/plugin/tool-registry.ts +0 -286
  796. package/src/plugin/types.ts +0 -26
  797. package/src/plugin/ultrawork-db-model-override.ts +0 -142
  798. package/src/plugin/ultrawork-model-override.ts +0 -196
  799. package/src/plugin/ultrawork-variant-availability.ts +0 -51
  800. package/src/plugin/unstable-agent-babysitter.ts +0 -41
  801. package/src/plugin-config.ts +0 -314
  802. package/src/plugin-dispose.ts +0 -51
  803. package/src/plugin-handlers/AGENTS.md +0 -92
  804. package/src/plugin-handlers/agent-config-handler.ts +0 -510
  805. package/src/plugin-handlers/agent-key-remapper.ts +0 -39
  806. package/src/plugin-handlers/agent-override-protection.ts +0 -38
  807. package/src/plugin-handlers/agent-priority-order.ts +0 -63
  808. package/src/plugin-handlers/category-config-resolver.ts +0 -9
  809. package/src/plugin-handlers/command-config-handler.ts +0 -115
  810. package/src/plugin-handlers/config-handler.ts +0 -61
  811. package/src/plugin-handlers/index.ts +0 -10
  812. package/src/plugin-handlers/mcp-config-handler.test.ts +0 -63
  813. package/src/plugin-handlers/mcp-config-handler.ts +0 -220
  814. package/src/plugin-handlers/plan-model-inheritance.ts +0 -27
  815. package/src/plugin-handlers/plugin-components-loader.ts +0 -70
  816. package/src/plugin-handlers/provider-config-handler.ts +0 -73
  817. package/src/plugin-handlers/strategist-agent-config-builder.ts +0 -128
  818. package/src/plugin-handlers/tool-config-handler.ts +0 -193
  819. package/src/plugin-interface.ts +0 -83
  820. package/src/plugin-state.ts +0 -18
  821. package/src/shared/AGENTS.md +0 -54
  822. package/src/shared/agent-display-names.test.ts +0 -9
  823. package/src/shared/agent-display-names.ts +0 -187
  824. package/src/shared/agent-tool-restrictions.ts +0 -80
  825. package/src/shared/agent-variant.ts +0 -101
  826. package/src/shared/agents-config-dir.ts +0 -23
  827. package/src/shared/archive-entry-validator.ts +0 -83
  828. package/src/shared/background-output-consumption.ts +0 -69
  829. package/src/shared/binary-downloader.ts +0 -127
  830. package/src/shared/claude-config-dir.ts +0 -16
  831. package/src/shared/closure-protocol.ts +0 -53
  832. package/src/shared/command-executor/embedded-commands.ts +0 -26
  833. package/src/shared/command-executor/execute-command.ts +0 -28
  834. package/src/shared/command-executor/execute-hook-command.ts +0 -129
  835. package/src/shared/command-executor/home-directory.ts +0 -5
  836. package/src/shared/command-executor/resolve-commands-in-text.ts +0 -49
  837. package/src/shared/command-executor/shell-path.ts +0 -27
  838. package/src/shared/command-executor.ts +0 -5
  839. package/src/shared/compaction-agent-config-checkpoint.ts +0 -42
  840. package/src/shared/compaction-marker.ts +0 -61
  841. package/src/shared/config-errors.ts +0 -18
  842. package/src/shared/connected-providers-cache.ts +0 -215
  843. package/src/shared/contains-path.ts +0 -50
  844. package/src/shared/context-limit-resolver.ts +0 -42
  845. package/src/shared/data-path.ts +0 -64
  846. package/src/shared/deep-merge.ts +0 -53
  847. package/src/shared/disabled-tools.ts +0 -19
  848. package/src/shared/dynamic-truncator.ts +0 -222
  849. package/src/shared/external-plugin-detector.ts +0 -139
  850. package/src/shared/fallback-chain-from-models.ts +0 -124
  851. package/src/shared/fallback-model-availability.ts +0 -102
  852. package/src/shared/file-reference-resolver.ts +0 -99
  853. package/src/shared/file-utils.ts +0 -34
  854. package/src/shared/first-message-variant.ts +0 -28
  855. package/src/shared/frontmatter.ts +0 -31
  856. package/src/shared/git-worktree/collect-git-diff-stats.ts +0 -56
  857. package/src/shared/git-worktree/format-file-changes.ts +0 -46
  858. package/src/shared/git-worktree/index.ts +0 -7
  859. package/src/shared/git-worktree/parse-diff-numstat.ts +0 -27
  860. package/src/shared/git-worktree/parse-status-porcelain-line.ts +0 -27
  861. package/src/shared/git-worktree/parse-status-porcelain.ts +0 -15
  862. package/src/shared/git-worktree/types.ts +0 -8
  863. package/src/shared/hook-disabled.ts +0 -22
  864. package/src/shared/index.ts +0 -80
  865. package/src/shared/internal-initiator-marker.ts +0 -18
  866. package/src/shared/is-abort-error.ts +0 -20
  867. package/src/shared/json-file-cache-store.ts +0 -98
  868. package/src/shared/jsonc-parser.ts +0 -98
  869. package/src/shared/known-variants.ts +0 -16
  870. package/src/shared/legacy-plugin-warning.ts +0 -68
  871. package/src/shared/load-opencode-plugins.ts +0 -60
  872. package/src/shared/log-legacy-plugin-startup-warning.ts +0 -44
  873. package/src/shared/logger.ts +0 -56
  874. package/src/shared/mcp-static-export.ts +0 -119
  875. package/src/shared/merge-categories.ts +0 -18
  876. package/src/shared/migrate-legacy-config-file.ts +0 -66
  877. package/src/shared/migrate-legacy-plugin-entry.ts +0 -75
  878. package/src/shared/migration/agent-category.ts +0 -60
  879. package/src/shared/migration/agent-names.ts +0 -108
  880. package/src/shared/migration/config-migration.ts +0 -210
  881. package/src/shared/migration/hook-names.ts +0 -40
  882. package/src/shared/migration/migrations-sidecar.ts +0 -92
  883. package/src/shared/migration/model-versions.ts +0 -50
  884. package/src/shared/migration.ts +0 -5
  885. package/src/shared/mode-routing.test.ts +0 -88
  886. package/src/shared/mode-routing.ts +0 -30
  887. package/src/shared/model-availability.ts +0 -294
  888. package/src/shared/model-capabilities/bundled-snapshot.ts +0 -15
  889. package/src/shared/model-capabilities/get-model-capabilities.ts +0 -140
  890. package/src/shared/model-capabilities/index.ts +0 -9
  891. package/src/shared/model-capabilities/runtime-model-readers.ts +0 -190
  892. package/src/shared/model-capabilities/types.ts +0 -80
  893. package/src/shared/model-capabilities-cache.ts +0 -213
  894. package/src/shared/model-capability-aliases.ts +0 -108
  895. package/src/shared/model-capability-guardrails.ts +0 -149
  896. package/src/shared/model-capability-heuristics.ts +0 -32
  897. package/src/shared/model-error-classifier.ts +0 -214
  898. package/src/shared/model-format-normalizer.ts +0 -20
  899. package/src/shared/model-normalization.ts +0 -8
  900. package/src/shared/model-requirements.ts +0 -26
  901. package/src/shared/model-resolution-pipeline.ts +0 -216
  902. package/src/shared/model-resolution-types.ts +0 -41
  903. package/src/shared/model-resolver.ts +0 -106
  904. package/src/shared/model-sanitizer.ts +0 -12
  905. package/src/shared/model-settings-compatibility.ts +0 -200
  906. package/src/shared/model-suggestion-retry.ts +0 -182
  907. package/src/shared/normalize-sdk-response.ts +0 -36
  908. package/src/shared/opencode-command-dirs.ts +0 -36
  909. package/src/shared/opencode-config-dir-types.ts +0 -15
  910. package/src/shared/opencode-config-dir.ts +0 -135
  911. package/src/shared/opencode-http-api.ts +0 -140
  912. package/src/shared/opencode-message-dir.ts +0 -29
  913. package/src/shared/opencode-server-auth.ts +0 -190
  914. package/src/shared/opencode-storage-detection.ts +0 -34
  915. package/src/shared/opencode-storage-paths.ts +0 -7
  916. package/src/shared/opencode-version.ts +0 -80
  917. package/src/shared/parse-tools-config.ts +0 -25
  918. package/src/shared/pattern-matcher.ts +0 -46
  919. package/src/shared/permission-compat.ts +0 -86
  920. package/src/shared/plugin-command-discovery.ts +0 -28
  921. package/src/shared/plugin-entry-migrator.ts +0 -21
  922. package/src/shared/plugin-identity.ts +0 -8
  923. package/src/shared/port-utils.ts +0 -48
  924. package/src/shared/project-discovery-dirs.ts +0 -101
  925. package/src/shared/prompt-timeout-context.ts +0 -49
  926. package/src/shared/prompt-tools.ts +0 -35
  927. package/src/shared/provider-model-id-transform.ts +0 -58
  928. package/src/shared/question-denied-session-permission.ts +0 -9
  929. package/src/shared/record-type-guard.ts +0 -3
  930. package/src/shared/resolve-agent-definition-paths.ts +0 -22
  931. package/src/shared/retry-status-utils.ts +0 -19
  932. package/src/shared/runtime-plugin-config.ts +0 -98
  933. package/src/shared/safe-create-hook.ts +0 -24
  934. package/src/shared/session-category-registry.ts +0 -27
  935. package/src/shared/session-cursor.ts +0 -108
  936. package/src/shared/session-directory-resolver.ts +0 -41
  937. package/src/shared/session-injected-paths.ts +0 -59
  938. package/src/shared/session-model-state.ts +0 -15
  939. package/src/shared/session-prompt-params-helpers.ts +0 -31
  940. package/src/shared/session-prompt-params-state.ts +0 -37
  941. package/src/shared/session-tools-store.ts +0 -18
  942. package/src/shared/session-utils.ts +0 -25
  943. package/src/shared/shell-env.ts +0 -175
  944. package/src/shared/skill-path-resolver.ts +0 -26
  945. package/src/shared/snake-case.ts +0 -44
  946. package/src/shared/spawn-with-windows-hide.ts +0 -84
  947. package/src/shared/startup-diagnostics.ts +0 -76
  948. package/src/shared/system-directive.ts +0 -67
  949. package/src/shared/task-system-enabled.ts +0 -9
  950. package/src/shared/tmux/constants.ts +0 -12
  951. package/src/shared/tmux/index.ts +0 -3
  952. package/src/shared/tmux/tmux-utils/environment.ts +0 -13
  953. package/src/shared/tmux/tmux-utils/layout.ts +0 -96
  954. package/src/shared/tmux/tmux-utils/pane-close.ts +0 -48
  955. package/src/shared/tmux/tmux-utils/pane-dimensions.ts +0 -28
  956. package/src/shared/tmux/tmux-utils/pane-replace.ts +0 -73
  957. package/src/shared/tmux/tmux-utils/pane-spawn.ts +0 -94
  958. package/src/shared/tmux/tmux-utils/server-health.ts +0 -62
  959. package/src/shared/tmux/tmux-utils/session-spawn.ts +0 -145
  960. package/src/shared/tmux/tmux-utils/window-spawn.ts +0 -93
  961. package/src/shared/tmux/tmux-utils.ts +0 -15
  962. package/src/shared/tmux/types.ts +0 -4
  963. package/src/shared/tool-name.ts +0 -27
  964. package/src/shared/truncate-description.ts +0 -11
  965. package/src/shared/vision-capable-models-cache.ts +0 -17
  966. package/src/shared/write-file-atomically.ts +0 -31
  967. package/src/shared/zip-entry-listing/powershell-zip-entry-listing.ts +0 -99
  968. package/src/shared/zip-entry-listing/python-zip-entry-listing.ts +0 -55
  969. package/src/shared/zip-entry-listing/read-zip-symlink-target.ts +0 -23
  970. package/src/shared/zip-entry-listing/tar-zip-entry-listing.ts +0 -93
  971. package/src/shared/zip-entry-listing/zipinfo-zip-entry-listing.ts +0 -72
  972. package/src/shared/zip-entry-listing.ts +0 -13
  973. package/src/shared/zip-extractor.ts +0 -118
  974. package/src/skills/index.ts +0 -56
  975. package/src/testing/module-mock-lifecycle.ts +0 -143
  976. package/src/tools/AGENTS.md +0 -108
  977. package/src/tools/ast-grep/cli-binary-path-resolution.ts +0 -60
  978. package/src/tools/ast-grep/cli.ts +0 -177
  979. package/src/tools/ast-grep/constants.ts +0 -5
  980. package/src/tools/ast-grep/downloader.ts +0 -119
  981. package/src/tools/ast-grep/environment-check.ts +0 -59
  982. package/src/tools/ast-grep/index.ts +0 -5
  983. package/src/tools/ast-grep/language-support.ts +0 -60
  984. package/src/tools/ast-grep/process-output-timeout.ts +0 -28
  985. package/src/tools/ast-grep/result-formatter.ts +0 -102
  986. package/src/tools/ast-grep/sg-cli-path.ts +0 -102
  987. package/src/tools/ast-grep/sg-compact-json-output.ts +0 -54
  988. package/src/tools/ast-grep/tools.ts +0 -117
  989. package/src/tools/ast-grep/types.ts +0 -60
  990. package/src/tools/background-task/AGENTS.md +0 -53
  991. package/src/tools/background-task/clients.ts +0 -32
  992. package/src/tools/background-task/constants.ts +0 -9
  993. package/src/tools/background-task/create-background-cancel.ts +0 -115
  994. package/src/tools/background-task/create-background-output.ts +0 -159
  995. package/src/tools/background-task/create-background-task.ts +0 -126
  996. package/src/tools/background-task/delay.ts +0 -3
  997. package/src/tools/background-task/full-session-format.ts +0 -148
  998. package/src/tools/background-task/index.ts +0 -8
  999. package/src/tools/background-task/message-dir.ts +0 -1
  1000. package/src/tools/background-task/session-messages.ts +0 -22
  1001. package/src/tools/background-task/task-result-format.ts +0 -113
  1002. package/src/tools/background-task/task-status-format.ts +0 -72
  1003. package/src/tools/background-task/time-format.ts +0 -30
  1004. package/src/tools/background-task/tools.ts +0 -11
  1005. package/src/tools/background-task/truncate-text.ts +0 -4
  1006. package/src/tools/background-task/types.ts +0 -72
  1007. package/src/tools/call-omo-agent/AGENTS.md +0 -51
  1008. package/src/tools/call-omo-agent/agent-resolver.ts +0 -64
  1009. package/src/tools/call-omo-agent/background-agent-executor.ts +0 -91
  1010. package/src/tools/call-omo-agent/background-executor.ts +0 -98
  1011. package/src/tools/call-omo-agent/completion-poller.ts +0 -65
  1012. package/src/tools/call-omo-agent/constants.ts +0 -23
  1013. package/src/tools/call-omo-agent/index.ts +0 -3
  1014. package/src/tools/call-omo-agent/message-dir.ts +0 -1
  1015. package/src/tools/call-omo-agent/message-processor.ts +0 -86
  1016. package/src/tools/call-omo-agent/message-storage-directory.ts +0 -1
  1017. package/src/tools/call-omo-agent/session-creator.ts +0 -70
  1018. package/src/tools/call-omo-agent/subagent-session-creator.ts +0 -74
  1019. package/src/tools/call-omo-agent/sync-executor.ts +0 -148
  1020. package/src/tools/call-omo-agent/tool-context-with-metadata.ts +0 -10
  1021. package/src/tools/call-omo-agent/tools.ts +0 -199
  1022. package/src/tools/call-omo-agent/types.ts +0 -34
  1023. package/src/tools/delegate-task/AGENTS.md +0 -58
  1024. package/src/tools/delegate-task/anthropic-categories.ts +0 -62
  1025. package/src/tools/delegate-task/available-models.ts +0 -64
  1026. package/src/tools/delegate-task/background-continuation.ts +0 -68
  1027. package/src/tools/delegate-task/background-task.ts +0 -165
  1028. package/src/tools/delegate-task/builtin-categories.ts +0 -35
  1029. package/src/tools/delegate-task/builtin-category-definition.ts +0 -8
  1030. package/src/tools/delegate-task/cancel-unstable-agent-task.ts +0 -19
  1031. package/src/tools/delegate-task/categories.test.ts +0 -87
  1032. package/src/tools/delegate-task/categories.ts +0 -77
  1033. package/src/tools/delegate-task/category-resolver.ts +0 -309
  1034. package/src/tools/delegate-task/constants.ts +0 -351
  1035. package/src/tools/delegate-task/delegated-model-config.ts +0 -20
  1036. package/src/tools/delegate-task/error-formatting.ts +0 -51
  1037. package/src/tools/delegate-task/executor-types.ts +0 -39
  1038. package/src/tools/delegate-task/executor.ts +0 -16
  1039. package/src/tools/delegate-task/fallback-entry-resolution.ts +0 -27
  1040. package/src/tools/delegate-task/fallback-entry-settings.ts +0 -20
  1041. package/src/tools/delegate-task/git-categories.ts +0 -30
  1042. package/src/tools/delegate-task/google-categories.ts +0 -130
  1043. package/src/tools/delegate-task/index.ts +0 -4
  1044. package/src/tools/delegate-task/kimi-categories.ts +0 -40
  1045. package/src/tools/delegate-task/model-selection.ts +0 -201
  1046. package/src/tools/delegate-task/model-string-parser.test.ts +0 -90
  1047. package/src/tools/delegate-task/model-string-parser.ts +0 -63
  1048. package/src/tools/delegate-task/openai-categories.ts +0 -132
  1049. package/src/tools/delegate-task/parent-context-resolver.ts +0 -47
  1050. package/src/tools/delegate-task/prompt-builder.ts +0 -107
  1051. package/src/tools/delegate-task/resolve-call-id.ts +0 -5
  1052. package/src/tools/delegate-task/skill-resolver.ts +0 -22
  1053. package/src/tools/delegate-task/sub-agent.ts +0 -80
  1054. package/src/tools/delegate-task/subagent-discovery.test.ts +0 -123
  1055. package/src/tools/delegate-task/subagent-discovery.ts +0 -152
  1056. package/src/tools/delegate-task/subagent-resolver.ts +0 -242
  1057. package/src/tools/delegate-task/sync-continuation-deps.ts +0 -9
  1058. package/src/tools/delegate-task/sync-continuation.ts +0 -149
  1059. package/src/tools/delegate-task/sync-prompt-sender.ts +0 -137
  1060. package/src/tools/delegate-task/sync-result-fetcher.ts +0 -60
  1061. package/src/tools/delegate-task/sync-session-creator.ts +0 -29
  1062. package/src/tools/delegate-task/sync-session-poller.ts +0 -188
  1063. package/src/tools/delegate-task/sync-task-deps.ts +0 -13
  1064. package/src/tools/delegate-task/sync-task-fallback.ts +0 -68
  1065. package/src/tools/delegate-task/sync-task.ts +0 -243
  1066. package/src/tools/delegate-task/time-formatter.ts +0 -13
  1067. package/src/tools/delegate-task/timing.ts +0 -46
  1068. package/src/tools/delegate-task/token-limiter.ts +0 -123
  1069. package/src/tools/delegate-task/tools.ts +0 -259
  1070. package/src/tools/delegate-task/types.ts +0 -89
  1071. package/src/tools/delegate-task/unstable-agent-task.ts +0 -243
  1072. package/src/tools/glob/cli.ts +0 -206
  1073. package/src/tools/glob/constants.ts +0 -12
  1074. package/src/tools/glob/index.ts +0 -1
  1075. package/src/tools/glob/result-formatter.ts +0 -26
  1076. package/src/tools/glob/tools.ts +0 -49
  1077. package/src/tools/glob/types.ts +0 -23
  1078. package/src/tools/grep/cli.ts +0 -279
  1079. package/src/tools/grep/constants.ts +0 -141
  1080. package/src/tools/grep/downloader.ts +0 -128
  1081. package/src/tools/grep/index.ts +0 -1
  1082. package/src/tools/grep/result-formatter.ts +0 -60
  1083. package/src/tools/grep/tools.ts +0 -75
  1084. package/src/tools/grep/types.ts +0 -42
  1085. package/src/tools/hashline-edit/AGENTS.md +0 -92
  1086. package/src/tools/hashline-edit/autocorrect-replacement-lines.ts +0 -179
  1087. package/src/tools/hashline-edit/constants.ts +0 -10
  1088. package/src/tools/hashline-edit/diff-utils.ts +0 -53
  1089. package/src/tools/hashline-edit/edit-deduplication.ts +0 -43
  1090. package/src/tools/hashline-edit/edit-operation-primitives.ts +0 -126
  1091. package/src/tools/hashline-edit/edit-operations.ts +0 -103
  1092. package/src/tools/hashline-edit/edit-ordering.ts +0 -56
  1093. package/src/tools/hashline-edit/edit-text-normalization.ts +0 -111
  1094. package/src/tools/hashline-edit/file-text-canonicalization.ts +0 -44
  1095. package/src/tools/hashline-edit/formatter-trigger.ts +0 -132
  1096. package/src/tools/hashline-edit/hash-computation.ts +0 -154
  1097. package/src/tools/hashline-edit/hashline-chunk-formatter.ts +0 -52
  1098. package/src/tools/hashline-edit/hashline-edit-diff.ts +0 -31
  1099. package/src/tools/hashline-edit/hashline-edit-executor.ts +0 -197
  1100. package/src/tools/hashline-edit/index.ts +0 -20
  1101. package/src/tools/hashline-edit/normalize-edits.ts +0 -95
  1102. package/src/tools/hashline-edit/tool-description.ts +0 -95
  1103. package/src/tools/hashline-edit/tools.ts +0 -42
  1104. package/src/tools/hashline-edit/types.ts +0 -20
  1105. package/src/tools/hashline-edit/validation.ts +0 -181
  1106. package/src/tools/index.ts +0 -64
  1107. package/src/tools/interactive-bash/constants.ts +0 -18
  1108. package/src/tools/interactive-bash/index.ts +0 -4
  1109. package/src/tools/interactive-bash/tmux-path-resolver.ts +0 -71
  1110. package/src/tools/interactive-bash/tools.ts +0 -136
  1111. package/src/tools/look-at/assistant-message-extractor.ts +0 -67
  1112. package/src/tools/look-at/constants.ts +0 -3
  1113. package/src/tools/look-at/image-converter.ts +0 -164
  1114. package/src/tools/look-at/index.ts +0 -3
  1115. package/src/tools/look-at/look-at-arguments.ts +0 -34
  1116. package/src/tools/look-at/mime-type-inference.ts +0 -94
  1117. package/src/tools/look-at/multimodal-agent-metadata.ts +0 -166
  1118. package/src/tools/look-at/multimodal-fallback-chain.ts +0 -66
  1119. package/src/tools/look-at/session-poller.ts +0 -42
  1120. package/src/tools/look-at/tools.ts +0 -245
  1121. package/src/tools/look-at/types.ts +0 -5
  1122. package/src/tools/lsp/AGENTS.md +0 -70
  1123. package/src/tools/lsp/client.ts +0 -3
  1124. package/src/tools/lsp/config.ts +0 -3
  1125. package/src/tools/lsp/constants.ts +0 -7
  1126. package/src/tools/lsp/diagnostics-tool.ts +0 -75
  1127. package/src/tools/lsp/directory-diagnostics.ts +0 -163
  1128. package/src/tools/lsp/find-references-tool.ts +0 -43
  1129. package/src/tools/lsp/goto-definition-tool.ts +0 -42
  1130. package/src/tools/lsp/index.ts +0 -9
  1131. package/src/tools/lsp/infer-extension.ts +0 -65
  1132. package/src/tools/lsp/language-config.ts +0 -5
  1133. package/src/tools/lsp/language-mappings.ts +0 -171
  1134. package/src/tools/lsp/lsp-client-connection.ts +0 -66
  1135. package/src/tools/lsp/lsp-client-transport.ts +0 -210
  1136. package/src/tools/lsp/lsp-client-wrapper.ts +0 -116
  1137. package/src/tools/lsp/lsp-client.ts +0 -129
  1138. package/src/tools/lsp/lsp-formatters.ts +0 -193
  1139. package/src/tools/lsp/lsp-manager-process-cleanup.ts +0 -83
  1140. package/src/tools/lsp/lsp-manager-temp-directory-cleanup.ts +0 -29
  1141. package/src/tools/lsp/lsp-process.ts +0 -158
  1142. package/src/tools/lsp/lsp-server.ts +0 -217
  1143. package/src/tools/lsp/rename-tools.ts +0 -53
  1144. package/src/tools/lsp/server-config-loader.ts +0 -116
  1145. package/src/tools/lsp/server-definitions.ts +0 -91
  1146. package/src/tools/lsp/server-installation.ts +0 -58
  1147. package/src/tools/lsp/server-path-bases.ts +0 -16
  1148. package/src/tools/lsp/server-resolution.ts +0 -109
  1149. package/src/tools/lsp/symbols-tool.ts +0 -76
  1150. package/src/tools/lsp/tools.ts +0 -5
  1151. package/src/tools/lsp/types.ts +0 -124
  1152. package/src/tools/lsp/workspace-edit.ts +0 -121
  1153. package/src/tools/session-manager/constants.ts +0 -93
  1154. package/src/tools/session-manager/file-storage.ts +0 -203
  1155. package/src/tools/session-manager/index.ts +0 -3
  1156. package/src/tools/session-manager/sdk-storage.ts +0 -135
  1157. package/src/tools/session-manager/sdk-unavailable.ts +0 -43
  1158. package/src/tools/session-manager/session-formatter.ts +0 -199
  1159. package/src/tools/session-manager/storage.ts +0 -161
  1160. package/src/tools/session-manager/tools.ts +0 -197
  1161. package/src/tools/session-manager/types.ts +0 -99
  1162. package/src/tools/shared/semaphore.ts +0 -32
  1163. package/src/tools/skill/constants.ts +0 -14
  1164. package/src/tools/skill/description-formatter.ts +0 -61
  1165. package/src/tools/skill/index.ts +0 -3
  1166. package/src/tools/skill/mcp-capability-formatter.ts +0 -97
  1167. package/src/tools/skill/native-skills.ts +0 -62
  1168. package/src/tools/skill/scope-priority.ts +0 -17
  1169. package/src/tools/skill/skill-body.ts +0 -26
  1170. package/src/tools/skill/skill-matcher.ts +0 -40
  1171. package/src/tools/skill/tools.ts +0 -196
  1172. package/src/tools/skill/types.ts +0 -48
  1173. package/src/tools/skill-mcp/constants.ts +0 -9
  1174. package/src/tools/skill-mcp/index.ts +0 -3
  1175. package/src/tools/skill-mcp/tools.test.ts +0 -44
  1176. package/src/tools/skill-mcp/tools.ts +0 -242
  1177. package/src/tools/skill-mcp/types.ts +0 -8
  1178. package/src/tools/slashcommand/command-discovery.ts +0 -161
  1179. package/src/tools/slashcommand/command-output-formatter.ts +0 -75
  1180. package/src/tools/slashcommand/index.ts +0 -2
  1181. package/src/tools/slashcommand/types.ts +0 -21
  1182. package/src/tools/task/index.ts +0 -7
  1183. package/src/tools/task/task-create.ts +0 -113
  1184. package/src/tools/task/task-get.ts +0 -47
  1185. package/src/tools/task/task-list.ts +0 -79
  1186. package/src/tools/task/task-update.ts +0 -152
  1187. package/src/tools/task/todo-sync.ts +0 -205
  1188. package/src/tools/task/types.ts +0 -77
@@ -1,603 +0,0 @@
1
- import {
2
- getClient,
3
- getReturnState,
4
- deleteReturnState,
5
- setReturnState,
6
- getPluginConfig,
7
- getAllPendingReturns,
8
- deletePendingReturn,
9
- hasReturnStack,
10
- peekReturnStack,
11
- shiftReturnStack,
12
- getCurrentReturnChain,
13
- popCurrentReturnChain,
14
- setHasActiveSubtask,
15
- getHasActiveSubtask,
16
- OPENCODE_GENERIC,
17
- getSubtaskParentSession,
18
- consumePendingPromptReturn,
19
- setPendingStackedPromptResponse,
20
- hasProcessedS2Message,
21
- addProcessedS2Message,
22
- getConfigs,
23
- } from "../core/state";
24
- import { log } from "../utils/logger";
25
- import { DEFAULT_PROMPT } from "../utils/config";
26
- import { S2_INLINE_INSTRUCTION } from "../utils/prompts";
27
- import { parseInlineSubtask } from "../parsing";
28
- import { executeInlineSubtask } from "../features/inline-subtasks";
29
- import { executeReturn } from "../features/returns";
30
- import {
31
- getAllPendingEvaluations,
32
- createEvaluationPrompt,
33
- createYieldPrompt,
34
- } from "../loop";
35
-
36
- /**
37
- * Update the synthetic part in the database to make it visible in TUI.
38
- *
39
- * The v1 SDK from OpenCode exposes an internal hey-api HTTP client at client.client
40
- * which we use to PATCH the part. This is the only reliable way to update parts
41
- * from a plugin since client.part.update() doesn't exist in v1.
42
- *
43
- * Note: OpenCode's plugin system passes a v1 client. When/if they upgrade to v2,
44
- * we can use client.part.update() directly.
45
- */
46
- async function makePartVisible(
47
- part: any,
48
- msg: any,
49
- newText: string
50
- ): Promise<void> {
51
- const client = getClient();
52
- if (!client) {
53
- log(`makePartVisible: no client available`);
54
- return;
55
- }
56
-
57
- // Extract IDs from the part and message
58
- const partID = part.id;
59
- const messageID = part.messageID || msg?.info?.id;
60
- const sessionID = part.sessionID || msg?.info?.sessionID;
61
-
62
- if (!partID || !messageID || !sessionID) {
63
- log(
64
- `makePartVisible: missing IDs - partID=${partID}, messageID=${messageID}, sessionID=${sessionID}`
65
- );
66
- return;
67
- }
68
-
69
- log(
70
- `makePartVisible: updating part ${partID} in DB to be visible with text: "${newText.substring(0, 50)}..."`
71
- );
72
-
73
- // Use the internal HTTP client from v1 SDK
74
- try {
75
- const httpClient = (client as any).client || (client as any)._client;
76
- if (httpClient?.patch) {
77
- await httpClient.patch({
78
- url: `/session/${sessionID}/message/${messageID}/part/${partID}`,
79
- body: {
80
- id: partID,
81
- messageID,
82
- sessionID,
83
- type: "text",
84
- text: newText,
85
- synthetic: false, // Make visible in TUI
86
- },
87
- });
88
- log(`makePartVisible: success`);
89
- } else {
90
- log(
91
- `makePartVisible: no internal HTTP client found - keys: ${Object.keys(client).join(", ")}`
92
- );
93
- }
94
- } catch (e) {
95
- log(`makePartVisible: failed - ${e}`);
96
- }
97
- }
98
-
99
- /**
100
- * Helper to replace a message part with a prompt and clear any stale assistant response
101
- */
102
- function replaceAndClear(
103
- part: any,
104
- msg: any,
105
- msgIndex: number,
106
- newText: string,
107
- outputMessages: any[]
108
- ) {
109
- log(
110
- `Replacing generic message at index ${msgIndex} with prompt: "${newText.substring(0, 50)}..."`
111
- );
112
-
113
- // Modify in place - don't create new objects (references matter)
114
- part.text = newText;
115
- delete part.synthetic;
116
-
117
- // Update the DB to make the message visible in TUI
118
- makePartVisible(part, msg, newText).catch(e =>
119
- log(`makePartVisible failed: ${e}`)
120
- );
121
-
122
- // CRITICAL: Remove any assistant response that came after the replaced message
123
- // The LLM may have already responded to "Summarize..." before this hook fired
124
- const nextIndex = msgIndex + 1;
125
- if (nextIndex < outputMessages.length) {
126
- const nextMsg = outputMessages[nextIndex];
127
- const role = nextMsg.info?.role ?? nextMsg.role;
128
- if (role === "assistant") {
129
- outputMessages.splice(nextIndex, 1);
130
- log(`Removed stale LLM response at index ${nextIndex}`);
131
- }
132
- }
133
- }
134
-
135
- /**
136
- * Hook: experimental.chat.messages.transform
137
- * Handles /subtask {...} inline subtasks and return prompt injection
138
- */
139
- export async function chatMessagesTransform(input: any, output: any) {
140
- try {
141
- // Log every invocation with message count and session info
142
- const sessionIDs = [
143
- ...new Set(
144
- output.messages.map((m: any) => m.info?.sessionID).filter(Boolean)
145
- ),
146
- ];
147
-
148
- // Log message summary for debugging
149
- const msgSummary = output.messages
150
- .map((m: any, i: number) => {
151
- const role = m.info?.role || m.role || "?";
152
- const parts = (m.parts || [])
153
- .map((p: any) => {
154
- if (p.type === "text") {
155
- const text = p.text?.substring(0, 40) || "";
156
- return `text:"${text}${p.text?.length > 40 ? "..." : ""}"${p.synthetic ? "(syn)" : ""}`;
157
- }
158
- if (p.type === "tool") return `tool:${p.state?.status || "?"}`;
159
- if (p.type === "subtask")
160
- return `subtask:"${p.prompt?.substring(0, 30) || ""}..."`;
161
- return p.type;
162
- })
163
- .join(", ");
164
- return `[${i}]${role}: ${parts}`;
165
- })
166
- .join(" | ");
167
-
168
- log(
169
- `message-hooks: ENTRY msgCount=${output.messages.length}, sessions=${sessionIDs.join(",") || "none"}`
170
- );
171
- log(`message-hooks: MESSAGES: ${msgSummary}`);
172
-
173
- // Check for /subtask in user messages
174
- // With the placeholder command file, OpenCode routes /subtask to command hook
175
- // This is a fallback for when no placeholder exists
176
- for (const msg of output.messages) {
177
- if (msg.info?.role !== "user") continue;
178
-
179
- // Track processed messages by ID to avoid infinite loop
180
- const msgId = msg.info?.id;
181
- if (msgId && hasProcessedS2Message(msgId)) continue;
182
-
183
- for (const part of msg.parts) {
184
- if (part.type !== "text") continue;
185
- const text = part.text.trim();
186
- const textLower = text.toLowerCase();
187
-
188
- // Match /subtask (with space) - the recommended syntax
189
- if (textLower.startsWith("/subtask ")) {
190
- // If /subtask command exists, defer to command hook for instant execution
191
- const configs = getConfigs();
192
- if (configs["subtask"]) {
193
- log(
194
- `/subtask detected but deferring to command hook (subtask command exists)`
195
- );
196
- continue;
197
- }
198
-
199
- // Fallback: handle via message transform when no placeholder command exists
200
- log(
201
- `/subtask detected in message (no placeholder): "${text.substring(0, 60)}..."`
202
- );
203
-
204
- // Mark as processed BEFORE spawning
205
- if (msgId) addProcessedS2Message(msgId);
206
-
207
- // Parse: remove "/subtask " prefix
208
- const toParse = text.substring("/subtask ".length);
209
- // Wrap in {} if it doesn't start with { (plain prompt case)
210
- const parseInput = toParse.startsWith("{")
211
- ? toParse
212
- : `{} ${toParse}`;
213
- const parsed = parseInlineSubtask(parseInput);
214
-
215
- if (parsed) {
216
- log(
217
- `/subtask inline subtask: prompt="${parsed.prompt.substring(
218
- 0,
219
- 50
220
- )}...", overrides=${JSON.stringify(parsed.overrides)}`
221
- );
222
- // Replace with instruction to say minimal response
223
- part.text = S2_INLINE_INSTRUCTION;
224
- // Spawn the subtask - get sessionID from message info
225
- const sessionID =
226
- (msg.info as any)?.sessionID || (input as any).sessionID;
227
- log(`/subtask sessionID: ${sessionID}`);
228
- if (sessionID) {
229
- executeInlineSubtask(parsed, sessionID).catch(console.error);
230
- } else {
231
- log(`/subtask ERROR: no sessionID found`);
232
- }
233
- return;
234
- } else {
235
- log(`/subtask parse failed for: "${parseInput}"`);
236
- }
237
- }
238
- }
239
- }
240
-
241
- // Filter out summary leak messages from the assistant
242
- // These are responses that summarize task tool output, which we don't want
243
- const filteredMessages: any[] = [];
244
-
245
- const isSummaryLeak = (msg: any): boolean => {
246
- const parts = msg.parts || [];
247
- return parts.some((p: any) => {
248
- if (p.type !== "step-start") return false;
249
- if (typeof p.text !== "string") return false;
250
- return (
251
- p.text.includes("Summary of Task Tool Output") ||
252
- p.text.includes("My task was to summarize") ||
253
- p.text.includes("The tool executed your command") ||
254
- p.text.includes("The command was executed successfully") ||
255
- p.text.includes("To complete your request")
256
- );
257
- });
258
- };
259
-
260
- for (let i = 0; i < output.messages.length; i++) {
261
- const msg = output.messages[i];
262
- const role = msg.info?.role ?? msg.role;
263
-
264
- if (role === "assistant" && isSummaryLeak(msg)) {
265
- log(`message-hooks: removing summary leak at index ${i}`);
266
- continue;
267
- }
268
-
269
- filteredMessages.push(msg);
270
- }
271
-
272
- if (filteredMessages.length !== output.messages.length) {
273
- log(
274
- `message-hooks: filtered ${output.messages.length - filteredMessages.length} summary leak messages`
275
- );
276
- // CRITICAL: Must mutate the array IN PLACE, not reassign!
277
- // Reassigning output.messages doesn't affect the original sessionMessages in OpenCode
278
- output.messages.length = 0;
279
- output.messages.push(...filteredMessages);
280
- }
281
-
282
- log(`message-hooks: post-filter, msgCount=${output.messages.length}`);
283
-
284
- // NOTE: We don't try to delete messages from DB - client.session.removeMessage doesn't exist
285
- // The filtering above is sufficient - it affects the current LLM call
286
-
287
- log(`message-hooks: about to search for OPENCODE_GENERIC`);
288
-
289
- // Find the LAST message with OPENCODE_GENERIC
290
- let lastGenericPart: any = null;
291
- let lastGenericMsg: any = null;
292
- let lastGenericMsgIndex: number = -1;
293
-
294
- log(
295
- `message-hooks: searching ${output.messages.length} messages for OPENCODE_GENERIC`
296
- );
297
-
298
- for (let i = 0; i < output.messages.length; i++) {
299
- const msg = output.messages[i];
300
- for (const part of msg.parts || []) {
301
- if (part.type === "text") {
302
- const isGeneric = part.text === OPENCODE_GENERIC;
303
- if (part.synthetic) {
304
- log(
305
- `message-hooks: found synthetic text at [${i}]: "${part.text?.substring(0, 50)}..." matches=${isGeneric}`
306
- );
307
- }
308
- if (isGeneric) {
309
- lastGenericPart = part;
310
- lastGenericMsg = msg;
311
- lastGenericMsgIndex = i;
312
- }
313
- }
314
- }
315
- }
316
-
317
- log(
318
- `message-hooks: generic search complete, found=${!!lastGenericPart}, index=${lastGenericMsgIndex}`
319
- );
320
-
321
- // If no generic part found, check for pending prompt returns from inline subtasks
322
- // Inline subtasks don't get OPENCODE_GENERIC, so we inject the pending prompt directly
323
- if (!lastGenericPart) {
324
- log(
325
- `message-hooks: no generic part found, checking for pending prompt return`
326
- );
327
-
328
- for (const sid of sessionIDs) {
329
- const pendingPrompt = consumePendingPromptReturn(sid as string);
330
- if (pendingPrompt) {
331
- log(`message-hooks: found pendingPromptReturn for ${sid}, injecting`);
332
-
333
- // Clone structure from an existing user message to ensure correct format
334
- const existingUserMsg = output.messages.find(
335
- (m: any) => (m.info?.role ?? m.role) === "user"
336
- );
337
-
338
- if (existingUserMsg) {
339
- const newMsg = JSON.parse(JSON.stringify(existingUserMsg));
340
- newMsg.parts = [{ type: "text", text: pendingPrompt }];
341
- // Remove IDs so OpenCode doesn't get confused
342
- if (newMsg.id) delete newMsg.id;
343
- if (newMsg.info?.id) delete newMsg.info.id;
344
- if (newMsg.info?.createdAt) delete newMsg.info.createdAt;
345
- output.messages.push(newMsg);
346
- log(
347
- `message-hooks: injected pending prompt: "${pendingPrompt.substring(0, 40)}..."`
348
- );
349
- } else {
350
- // Fallback: create minimal message
351
- output.messages.push({
352
- info: { role: "user" },
353
- parts: [{ type: "text", text: pendingPrompt }],
354
- });
355
- log(
356
- `message-hooks: injected pending prompt (fallback): "${pendingPrompt.substring(0, 40)}..."`
357
- );
358
- }
359
- return; // Let the LLM respond to our injected message
360
- }
361
-
362
- if (hasReturnStack(sid as string)) {
363
- log(
364
- `message-hooks: session ${sid} HAS returnStack but no generic part!`
365
- );
366
- }
367
- }
368
- return; // Nothing to do without generic part
369
- }
370
-
371
- // The generic message is in a subtask session, but returns are stored under the PARENT session
372
- // We need to resolve the parent session to look up returns
373
- const subtaskSessionID = lastGenericMsg?.info?.sessionID;
374
- const resolvedParent = subtaskSessionID
375
- ? getSubtaskParentSession(subtaskSessionID)
376
- : undefined;
377
- const parentSessionID = resolvedParent || subtaskSessionID;
378
-
379
- log(
380
- `message-hooks: subtaskSession=${subtaskSessionID}, resolvedParent=${resolvedParent || "NOT FOUND"}, using=${parentSessionID}`
381
- );
382
-
383
- // Check for deferred prompt return from session.idle
384
- // This handles prompt returns that were deferred to be substituted here
385
- log(
386
- `message-hooks: checking pendingPromptReturn for session ${parentSessionID}`
387
- );
388
- if (parentSessionID) {
389
- const pendingPrompt = consumePendingPromptReturn(parentSessionID);
390
- if (pendingPrompt) {
391
- replaceAndClear(
392
- lastGenericPart,
393
- lastGenericMsg,
394
- lastGenericMsgIndex,
395
- pendingPrompt,
396
- output.messages
397
- );
398
-
399
- // Mark that we're waiting for LLM response to this prompt
400
- setPendingStackedPromptResponse(parentSessionID);
401
-
402
- return;
403
- }
404
- }
405
-
406
- // Check for pending loop evaluation first (orchestrator-decides pattern)
407
- log(`message-hooks: checking loop evaluations`);
408
- for (const [sessionID, retryState] of getAllPendingEvaluations()) {
409
- // Check if this is an unconditional loop (no until condition)
410
- if (!retryState.config.until) {
411
- // Unconditional loop: inject yield prompt, no evaluation needed
412
- const yieldPrompt = createYieldPrompt(
413
- retryState.iteration,
414
- retryState.config.max
415
- );
416
- // Unconditional loop: modify in place
417
- lastGenericPart.text = yieldPrompt;
418
- log(
419
- `loop: injected yield prompt (unconditional loop ${retryState.iteration}/${retryState.config.max})`
420
- );
421
- } else {
422
- // Conditional loop: inject evaluation prompt
423
- const evalPrompt = createEvaluationPrompt(
424
- retryState.config.until,
425
- retryState.iteration,
426
- retryState.config.max
427
- );
428
- // Modify in place
429
- lastGenericPart.text = evalPrompt;
430
- log(
431
- `loop: injected evaluation prompt for "${retryState.config.until}"`
432
- );
433
- }
434
- // Don't delete yet - we need it when parsing the response
435
- return;
436
- }
437
-
438
- // Check for pending return
439
- const pendingReturnsEntries = [...getAllPendingReturns()];
440
- log(
441
- `message-hooks: checking pendingReturns, count=${pendingReturnsEntries.length}`
442
- );
443
- for (const [sessionID, returnPrompt] of pendingReturnsEntries) {
444
- deletePendingReturn(sessionID);
445
- setHasActiveSubtask(false);
446
-
447
- // Also shift from returnState to keep them in sync
448
- // This prevents session.idle from trying to re-execute the same return
449
- const returnStateData = getReturnState(sessionID);
450
- if (returnStateData?.length && returnStateData[0] === returnPrompt) {
451
- returnStateData.shift();
452
- }
453
-
454
- if (returnPrompt.startsWith("/")) {
455
- // Command return: remove the summarize message entirely from history
456
- // and fire the command immediately at this moment
457
- if (lastGenericMsgIndex >= 0) {
458
- output.messages.splice(lastGenericMsgIndex, 1);
459
-
460
- // Also delete from DB to prevent OpenCode from re-fetching and responding to it
461
- const msgId = lastGenericMsg?.id;
462
- const partId = lastGenericPart?.id;
463
- if (msgId && partId) {
464
- const client = getClient();
465
- // Delete the part (this effectively removes the message content)
466
- client.session
467
- .deletePart({ path: { id: partId } })
468
- .catch((e: Error) => {
469
- log(`Failed to delete summarize part from DB: ${e.message}`);
470
- });
471
- }
472
-
473
- log(
474
- `Removed summarize message at index ${lastGenericMsgIndex} for command return`
475
- );
476
- }
477
- executeReturn(returnPrompt, sessionID).catch(console.error);
478
- } else {
479
- // Plain prompt return: MODIFY the existing part directly (for LLM)
480
- replaceAndClear(
481
- lastGenericPart,
482
- lastGenericMsg,
483
- lastGenericMsgIndex,
484
- returnPrompt,
485
- output.messages
486
- );
487
- }
488
- return;
489
- }
490
-
491
- // No pending return found, check returnState for remaining returns
492
- // This handles returns after the first one (which used pendingReturns)
493
- // Use parentSessionID (resolved earlier) since returns are stored under parent session
494
- if (parentSessionID) {
495
- const remaining = getReturnState(parentSessionID);
496
- if (remaining?.length) {
497
- const nextReturn = remaining[0];
498
- setHasActiveSubtask(false);
499
-
500
- if (nextReturn.startsWith("/")) {
501
- // Command return: remove the summarize message, let session.idle execute
502
- if (lastGenericMsgIndex >= 0) {
503
- output.messages.splice(lastGenericMsgIndex, 1);
504
- log(
505
- `Removed summarize message - returnState command will be processed by session.idle`
506
- );
507
- }
508
- } else {
509
- // Prompt return: REPLACE the message so LLM responds to it
510
- // NOTE: We must replace the entire message, not just modify the part text,
511
- // because OpenCode may deep-copy messages before sending to LLM
512
- // First, check if there are stacked returns from inline subtasks
513
- // and transfer them to returnState so the chain continues
514
- const stackedReturns = getCurrentReturnChain(parentSessionID);
515
- if (stackedReturns?.length) {
516
- remaining.push(...stackedReturns);
517
- popCurrentReturnChain(parentSessionID);
518
- log(
519
- `Transferred ${stackedReturns.length} stacked returns to returnState for continued processing`
520
- );
521
- }
522
-
523
- // Shift from returnState since we're handling it here
524
- remaining.shift();
525
-
526
- replaceAndClear(
527
- lastGenericPart,
528
- lastGenericMsg,
529
- lastGenericMsgIndex,
530
- nextReturn,
531
- output.messages
532
- );
533
-
534
- // Mark that we're waiting for LLM response to this prompt
535
- // This prevents session.idle from processing the next return too early
536
- setPendingStackedPromptResponse(parentSessionID);
537
- }
538
- return;
539
- }
540
- }
541
-
542
- // No returns found, use generic replacement if configured
543
- // BUT skip if there are stacked returns (from inline subtasks with returns)
544
- // Those will be processed by session.idle hook
545
- const pluginConfig = getPluginConfig();
546
-
547
- // Check if the parent session has stacked returns
548
- // Use parentSessionID (resolved earlier) since stacked returns are stored under parent session
549
- let stackedSessionID: string | null = null;
550
- if (parentSessionID && hasReturnStack(parentSessionID)) {
551
- stackedSessionID = parentSessionID;
552
- }
553
-
554
- if (stackedSessionID) {
555
- // Peek at the first stacked return to decide how to handle
556
- const nextReturnArray = peekReturnStack(stackedSessionID);
557
- const nextReturn = nextReturnArray?.[0];
558
-
559
- if (nextReturn?.startsWith("/")) {
560
- // Command return: remove the summarize message, let session.idle execute
561
- if (lastGenericMsgIndex >= 0) {
562
- output.messages.splice(lastGenericMsgIndex, 1);
563
- log(
564
- `Removed summarize message - stacked command return will be processed by session.idle`
565
- );
566
- }
567
- } else if (nextReturn) {
568
- // Prompt return: REPLACE the message so LLM responds to it
569
- const returnPrompt = shiftReturnStack(stackedSessionID);
570
- if (returnPrompt) {
571
- replaceAndClear(
572
- lastGenericPart,
573
- lastGenericMsg,
574
- lastGenericMsgIndex,
575
- returnPrompt,
576
- output.messages
577
- );
578
-
579
- // Mark that we're waiting for LLM response to this prompt
580
- // This prevents session.idle from processing returnState too early
581
- setPendingStackedPromptResponse(stackedSessionID);
582
- }
583
- }
584
- setHasActiveSubtask(false);
585
- return;
586
- }
587
-
588
- if (getHasActiveSubtask() && pluginConfig.replace_generic) {
589
- const text = pluginConfig.generic_return ?? DEFAULT_PROMPT;
590
- replaceAndClear(
591
- lastGenericPart,
592
- lastGenericMsg,
593
- lastGenericMsgIndex,
594
- text,
595
- output.messages
596
- );
597
- setHasActiveSubtask(false);
598
- return;
599
- }
600
- } catch (err) {
601
- log(`message-hooks: EXCEPTION: ${err}`);
602
- }
603
- }