oh-my-opencode 3.4.0 → 3.5.1

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 (562) hide show
  1. package/README.ja.md +2 -0
  2. package/README.ko.md +2 -0
  3. package/README.md +2 -0
  4. package/README.zh-cn.md +2 -0
  5. package/dist/agents/agent-builder.d.ts +7 -0
  6. package/dist/agents/atlas/agent.d.ts +34 -0
  7. package/dist/agents/atlas/default.d.ts +1 -1
  8. package/dist/agents/atlas/gpt.d.ts +1 -1
  9. package/dist/agents/atlas/index.d.ts +4 -37
  10. package/dist/agents/builtin-agents/agent-overrides.d.ts +12 -0
  11. package/dist/agents/builtin-agents/atlas-agent.d.ts +16 -0
  12. package/dist/agents/builtin-agents/available-skills.d.ts +4 -0
  13. package/dist/agents/builtin-agents/environment-context.d.ts +2 -0
  14. package/dist/agents/builtin-agents/general-agents.d.ts +23 -0
  15. package/dist/agents/builtin-agents/hephaestus-agent.d.ts +17 -0
  16. package/dist/agents/builtin-agents/model-resolution.d.ts +24 -0
  17. package/dist/agents/builtin-agents/sisyphus-agent.d.ts +19 -0
  18. package/dist/agents/builtin-agents.d.ts +6 -0
  19. package/dist/agents/custom-agent-summaries.d.ts +8 -0
  20. package/dist/agents/env-context.d.ts +7 -0
  21. package/dist/agents/index.d.ts +1 -1
  22. package/dist/agents/prometheus/index.d.ts +1 -33
  23. package/dist/agents/prometheus/interview-mode.d.ts +1 -1
  24. package/dist/agents/prometheus/system-prompt.d.ts +16 -0
  25. package/dist/agents/sisyphus-junior/agent.d.ts +29 -0
  26. package/dist/agents/sisyphus-junior/index.d.ts +2 -29
  27. package/dist/cli/cli-installer.d.ts +2 -0
  28. package/dist/cli/cli-program.d.ts +1 -0
  29. package/dist/cli/config-manager/add-plugin-to-opencode-config.d.ts +2 -0
  30. package/dist/cli/config-manager/add-provider-config.d.ts +2 -0
  31. package/dist/cli/config-manager/antigravity-provider-configuration.d.ts +122 -0
  32. package/dist/cli/config-manager/auth-plugins.d.ts +3 -0
  33. package/dist/cli/config-manager/bun-install.d.ts +7 -0
  34. package/dist/cli/config-manager/config-context.d.ts +13 -0
  35. package/dist/cli/config-manager/deep-merge-record.d.ts +1 -0
  36. package/dist/cli/config-manager/detect-current-config.d.ts +2 -0
  37. package/dist/cli/config-manager/ensure-config-directory-exists.d.ts +1 -0
  38. package/dist/cli/config-manager/format-error-with-suggestion.d.ts +1 -0
  39. package/dist/cli/config-manager/generate-omo-config.d.ts +2 -0
  40. package/dist/cli/config-manager/jsonc-provider-editor.d.ts +1 -0
  41. package/dist/cli/config-manager/npm-dist-tags.d.ts +7 -0
  42. package/dist/cli/config-manager/opencode-binary.d.ts +2 -0
  43. package/dist/cli/config-manager/opencode-config-format.d.ts +5 -0
  44. package/dist/cli/config-manager/parse-opencode-config-file.d.ts +10 -0
  45. package/dist/cli/config-manager/plugin-name-with-version.d.ts +1 -0
  46. package/dist/cli/config-manager/write-omo-config.d.ts +2 -0
  47. package/dist/cli/config-manager.d.ts +14 -162
  48. package/dist/cli/doctor/checks/index.d.ts +6 -0
  49. package/dist/cli/doctor/checks/model-resolution-cache.d.ts +2 -0
  50. package/dist/cli/doctor/checks/model-resolution-config.d.ts +2 -0
  51. package/dist/cli/doctor/checks/model-resolution-details.d.ts +6 -0
  52. package/dist/cli/doctor/checks/model-resolution-effective-model.d.ts +3 -0
  53. package/dist/cli/doctor/checks/model-resolution-types.d.ts +37 -0
  54. package/dist/cli/doctor/checks/model-resolution-variant.d.ts +5 -0
  55. package/dist/cli/doctor/checks/model-resolution.d.ts +1 -33
  56. package/dist/cli/fallback-chain-resolution.d.ts +10 -0
  57. package/dist/cli/get-local-version/get-local-version.d.ts +2 -0
  58. package/dist/cli/get-local-version/index.d.ts +1 -2
  59. package/dist/cli/index.js +3175 -2037
  60. package/dist/cli/install-validators.d.ts +32 -0
  61. package/dist/cli/model-fallback-types.d.ts +26 -0
  62. package/dist/cli/model-fallback.d.ts +2 -15
  63. package/dist/cli/provider-availability.d.ts +4 -0
  64. package/dist/cli/provider-model-id-transform.d.ts +1 -0
  65. package/dist/cli/run/event-formatting.d.ts +3 -0
  66. package/dist/cli/run/event-handlers.d.ts +9 -0
  67. package/dist/cli/run/event-state.d.ts +13 -0
  68. package/dist/cli/run/event-stream-processor.d.ts +3 -0
  69. package/dist/cli/run/events.d.ts +4 -16
  70. package/dist/cli/run/index.d.ts +2 -0
  71. package/dist/cli/run/poll-for-completion.d.ts +7 -0
  72. package/dist/cli/tui-install-prompts.d.ts +2 -0
  73. package/dist/cli/tui-installer.d.ts +2 -0
  74. package/dist/config/schema/agent-names.d.ts +50 -0
  75. package/dist/config/schema/agent-overrides.d.ts +1130 -0
  76. package/dist/config/schema/babysitting.d.ts +5 -0
  77. package/dist/config/schema/background-task.d.ts +8 -0
  78. package/dist/config/schema/browser-automation.d.ts +15 -0
  79. package/dist/config/schema/categories.d.ts +72 -0
  80. package/dist/config/schema/claude-code.d.ts +11 -0
  81. package/dist/config/schema/commands.d.ts +11 -0
  82. package/dist/config/schema/comment-checker.d.ts +5 -0
  83. package/dist/config/schema/dynamic-context-pruning.d.ts +28 -0
  84. package/dist/config/schema/experimental.d.ts +37 -0
  85. package/dist/config/schema/git-master.d.ts +6 -0
  86. package/dist/config/schema/hooks.d.ts +47 -0
  87. package/dist/config/schema/internal/permission.d.ts +44 -0
  88. package/dist/config/schema/notification.d.ts +5 -0
  89. package/dist/config/schema/oh-my-opencode-config.d.ts +1294 -0
  90. package/dist/config/schema/ralph-loop.d.ts +7 -0
  91. package/dist/config/schema/sisyphus-agent.d.ts +8 -0
  92. package/dist/config/schema/sisyphus.d.ts +15 -0
  93. package/dist/config/schema/skills.d.ts +58 -0
  94. package/dist/config/schema/tmux.d.ts +23 -0
  95. package/dist/config/schema/websearch.d.ts +13 -0
  96. package/dist/config/schema.d.ts +21 -2827
  97. package/dist/create-hooks.d.ts +57 -0
  98. package/dist/create-managers.d.ts +19 -0
  99. package/dist/create-tools.d.ts +20 -0
  100. package/dist/features/background-agent/background-event-handler.d.ts +25 -0
  101. package/dist/features/background-agent/background-manager-shutdown.d.ts +25 -0
  102. package/dist/features/background-agent/background-task-completer.d.ts +3 -0
  103. package/dist/features/background-agent/background-task-notification-template.d.ts +10 -0
  104. package/dist/features/background-agent/duration-formatter.d.ts +1 -0
  105. package/dist/features/background-agent/error-classifier.d.ts +2 -0
  106. package/dist/features/background-agent/format-duration.d.ts +1 -0
  107. package/dist/features/background-agent/manager.d.ts +2 -2
  108. package/dist/features/background-agent/message-dir.d.ts +1 -0
  109. package/dist/features/background-agent/message-storage-locator.d.ts +1 -0
  110. package/dist/features/background-agent/notification-builder.d.ts +8 -0
  111. package/dist/features/background-agent/notification-tracker.d.ts +6 -0
  112. package/dist/features/background-agent/notify-parent-session.d.ts +10 -0
  113. package/dist/features/background-agent/opencode-client.d.ts +2 -0
  114. package/dist/features/background-agent/parent-session-context-resolver.d.ts +14 -0
  115. package/dist/features/background-agent/parent-session-notifier.d.ts +3 -0
  116. package/dist/features/background-agent/poll-running-tasks.d.ts +13 -0
  117. package/dist/features/background-agent/process-signal.d.ts +2 -0
  118. package/dist/features/background-agent/result-handler-context.d.ts +8 -0
  119. package/dist/features/background-agent/result-handler.d.ts +7 -15
  120. package/dist/features/background-agent/session-output-validator.d.ts +2 -0
  121. package/dist/features/background-agent/session-todo-checker.d.ts +2 -0
  122. package/dist/features/background-agent/session-validator.d.ts +7 -0
  123. package/dist/features/background-agent/spawner/spawner-context.d.ts +11 -0
  124. package/dist/features/background-agent/spawner/task-factory.d.ts +2 -0
  125. package/dist/features/background-agent/spawner/task-resumer.d.ts +3 -0
  126. package/dist/features/background-agent/spawner/task-starter.d.ts +3 -0
  127. package/dist/features/background-agent/stale-task-pruner.d.ts +9 -0
  128. package/dist/features/background-agent/state.d.ts +1 -1
  129. package/dist/features/background-agent/task-canceller.d.ts +27 -0
  130. package/dist/features/background-agent/task-completer.d.ts +13 -0
  131. package/dist/features/background-agent/task-launch.d.ts +15 -0
  132. package/dist/features/background-agent/task-poller.d.ts +16 -0
  133. package/dist/features/background-agent/task-queries.d.ts +7 -0
  134. package/dist/features/background-agent/task-queue-processor.d.ts +14 -0
  135. package/dist/features/background-agent/task-resumer.d.ts +14 -0
  136. package/dist/features/background-agent/task-starter.d.ts +27 -0
  137. package/dist/features/background-agent/task-tracker.d.ts +18 -0
  138. package/dist/features/background-agent/types.d.ts +1 -1
  139. package/dist/features/builtin-skills/skills/git-master-skill-metadata.d.ts +2 -0
  140. package/dist/features/claude-code-plugin-loader/agent-loader.d.ts +3 -0
  141. package/dist/features/claude-code-plugin-loader/command-loader.d.ts +3 -0
  142. package/dist/features/claude-code-plugin-loader/discovery.d.ts +2 -0
  143. package/dist/features/claude-code-plugin-loader/hook-loader.d.ts +2 -0
  144. package/dist/features/claude-code-plugin-loader/index.d.ts +7 -0
  145. package/dist/features/claude-code-plugin-loader/loader.d.ts +7 -7
  146. package/dist/features/claude-code-plugin-loader/mcp-server-loader.d.ts +3 -0
  147. package/dist/features/claude-code-plugin-loader/plugin-path-resolver.d.ts +2 -0
  148. package/dist/features/claude-code-plugin-loader/skill-loader.d.ts +3 -0
  149. package/dist/features/claude-tasks/types.d.ts +2 -2
  150. package/dist/features/mcp-oauth/index.d.ts +2 -0
  151. package/dist/features/mcp-oauth/oauth-authorization-flow.d.ts +26 -0
  152. package/dist/features/mcp-oauth/provider.d.ts +4 -16
  153. package/dist/features/opencode-skill-loader/allowed-tools-parser.d.ts +1 -0
  154. package/dist/features/opencode-skill-loader/git-master-template-injection.d.ts +2 -0
  155. package/dist/features/opencode-skill-loader/index.d.ts +10 -0
  156. package/dist/features/opencode-skill-loader/loaded-skill-from-path.d.ts +9 -0
  157. package/dist/features/opencode-skill-loader/loaded-skill-template-extractor.d.ts +2 -0
  158. package/dist/features/opencode-skill-loader/merger/builtin-skill-converter.d.ts +3 -0
  159. package/dist/features/opencode-skill-loader/merger/config-skill-entry-loader.d.ts +3 -0
  160. package/dist/features/opencode-skill-loader/merger/scope-priority.d.ts +2 -0
  161. package/dist/features/opencode-skill-loader/merger/skill-definition-merger.d.ts +3 -0
  162. package/dist/features/opencode-skill-loader/merger/skills-config-normalizer.d.ts +11 -0
  163. package/dist/features/opencode-skill-loader/skill-content.d.ts +5 -22
  164. package/dist/features/opencode-skill-loader/skill-deduplication.d.ts +2 -0
  165. package/dist/features/opencode-skill-loader/skill-definition-record.d.ts +3 -0
  166. package/dist/features/opencode-skill-loader/skill-directory-loader.d.ts +8 -0
  167. package/dist/features/opencode-skill-loader/skill-discovery.d.ts +4 -0
  168. package/dist/features/opencode-skill-loader/skill-mcp-config.d.ts +3 -0
  169. package/dist/features/opencode-skill-loader/skill-resolution-options.d.ts +6 -0
  170. package/dist/features/opencode-skill-loader/skill-template-resolver.d.ts +11 -0
  171. package/dist/features/skill-mcp-manager/cleanup.d.ts +8 -0
  172. package/dist/features/skill-mcp-manager/connection-type.d.ts +7 -0
  173. package/dist/features/skill-mcp-manager/connection.d.ts +15 -0
  174. package/dist/features/skill-mcp-manager/http-client.d.ts +3 -0
  175. package/dist/features/skill-mcp-manager/manager.d.ts +3 -32
  176. package/dist/features/skill-mcp-manager/oauth-handler.d.ts +9 -0
  177. package/dist/features/skill-mcp-manager/stdio-client.d.ts +3 -0
  178. package/dist/features/skill-mcp-manager/types.d.ts +44 -0
  179. package/dist/features/task-toast-manager/manager.d.ts +1 -0
  180. package/dist/features/tmux-subagent/cleanup.d.ts +9 -0
  181. package/dist/features/tmux-subagent/decision-engine.d.ts +7 -38
  182. package/dist/features/tmux-subagent/event-handlers.d.ts +6 -0
  183. package/dist/features/tmux-subagent/grid-planning.d.ts +19 -0
  184. package/dist/features/tmux-subagent/index.d.ts +10 -0
  185. package/dist/features/tmux-subagent/oldest-agent-pane.d.ts +7 -0
  186. package/dist/features/tmux-subagent/pane-split-availability.d.ts +8 -0
  187. package/dist/features/tmux-subagent/polling-constants.d.ts +3 -0
  188. package/dist/features/tmux-subagent/polling.d.ts +19 -0
  189. package/dist/features/tmux-subagent/session-created-event.d.ts +14 -0
  190. package/dist/features/tmux-subagent/session-created-handler.d.ts +22 -0
  191. package/dist/features/tmux-subagent/session-deleted-handler.d.ts +15 -0
  192. package/dist/features/tmux-subagent/session-message-count.d.ts +1 -0
  193. package/dist/features/tmux-subagent/session-ready-waiter.d.ts +7 -0
  194. package/dist/features/tmux-subagent/session-status-parser.d.ts +5 -0
  195. package/dist/features/tmux-subagent/spawn-action-decider.d.ts +4 -0
  196. package/dist/features/tmux-subagent/spawn-target-finder.d.ts +6 -0
  197. package/dist/features/tmux-subagent/tmux-grid-constants.d.ts +7 -0
  198. package/dist/features/tool-metadata-store/index.d.ts +2 -39
  199. package/dist/features/tool-metadata-store/store.d.ts +39 -0
  200. package/dist/hooks/agent-usage-reminder/hook.d.ts +22 -0
  201. package/dist/hooks/agent-usage-reminder/index.d.ts +1 -22
  202. package/dist/hooks/anthropic-context-window-limit-recovery/aggressive-truncation-strategy.d.ts +14 -0
  203. package/dist/hooks/anthropic-context-window-limit-recovery/client.d.ts +60 -0
  204. package/dist/hooks/anthropic-context-window-limit-recovery/empty-content-recovery.d.ts +8 -0
  205. package/dist/hooks/anthropic-context-window-limit-recovery/executor.d.ts +1 -1
  206. package/dist/hooks/anthropic-context-window-limit-recovery/index.d.ts +3 -0
  207. package/dist/hooks/anthropic-context-window-limit-recovery/message-builder.d.ts +4 -0
  208. package/dist/hooks/anthropic-context-window-limit-recovery/message-storage-directory.d.ts +2 -0
  209. package/dist/hooks/anthropic-context-window-limit-recovery/recovery-strategy.d.ts +2 -0
  210. package/dist/hooks/anthropic-context-window-limit-recovery/state.d.ts +6 -0
  211. package/dist/hooks/anthropic-context-window-limit-recovery/storage-paths.d.ts +3 -0
  212. package/dist/hooks/anthropic-context-window-limit-recovery/storage.d.ts +3 -28
  213. package/dist/hooks/anthropic-context-window-limit-recovery/summarize-retry-strategy.d.ts +11 -0
  214. package/dist/hooks/anthropic-context-window-limit-recovery/target-token-truncation.d.ts +2 -0
  215. package/dist/hooks/anthropic-context-window-limit-recovery/tool-part-types.d.ts +39 -0
  216. package/dist/hooks/anthropic-context-window-limit-recovery/tool-result-storage.d.ts +10 -0
  217. package/dist/hooks/anthropic-effort/hook.d.ts +26 -0
  218. package/dist/hooks/anthropic-effort/index.d.ts +1 -26
  219. package/dist/hooks/atlas/atlas-hook.d.ts +19 -0
  220. package/dist/hooks/atlas/boulder-continuation-injector.d.ts +13 -0
  221. package/dist/hooks/atlas/event-handler.d.ts +13 -0
  222. package/dist/hooks/atlas/hook-name.d.ts +1 -0
  223. package/dist/hooks/atlas/index.d.ts +3 -36
  224. package/dist/hooks/atlas/is-abort-error.d.ts +1 -0
  225. package/dist/hooks/atlas/recent-model-resolver.d.ts +3 -0
  226. package/dist/hooks/atlas/session-last-agent.d.ts +1 -0
  227. package/dist/hooks/atlas/sisyphus-path.d.ts +6 -0
  228. package/dist/hooks/atlas/subagent-session-id.d.ts +1 -0
  229. package/dist/hooks/atlas/system-reminder-templates.d.ts +5 -0
  230. package/dist/hooks/atlas/tool-execute-after.d.ts +6 -0
  231. package/dist/hooks/atlas/tool-execute-before.d.ts +10 -0
  232. package/dist/hooks/atlas/types.d.ts +27 -0
  233. package/dist/hooks/atlas/verification-reminders.d.ts +5 -0
  234. package/dist/hooks/atlas/write-edit-tool-policy.d.ts +1 -0
  235. package/dist/hooks/auto-slash-command/hook.d.ts +9 -0
  236. package/dist/hooks/auto-slash-command/index.d.ts +2 -9
  237. package/dist/hooks/auto-update-checker/checker/cached-version.d.ts +1 -0
  238. package/dist/hooks/auto-update-checker/checker/check-for-update.d.ts +2 -0
  239. package/dist/hooks/auto-update-checker/checker/config-paths.d.ts +1 -0
  240. package/dist/hooks/auto-update-checker/checker/jsonc-strip.d.ts +1 -0
  241. package/dist/hooks/auto-update-checker/checker/latest-version.d.ts +1 -0
  242. package/dist/hooks/auto-update-checker/checker/local-dev-path.d.ts +2 -0
  243. package/dist/hooks/auto-update-checker/checker/local-dev-version.d.ts +1 -0
  244. package/dist/hooks/auto-update-checker/checker/package-json-locator.d.ts +1 -0
  245. package/dist/hooks/auto-update-checker/checker/pinned-version-updater.d.ts +1 -0
  246. package/dist/hooks/auto-update-checker/checker/plugin-entry.d.ts +7 -0
  247. package/dist/hooks/auto-update-checker/checker.d.ts +8 -20
  248. package/dist/hooks/auto-update-checker/hook/background-update-check.d.ts +2 -0
  249. package/dist/hooks/auto-update-checker/hook/config-errors-toast.d.ts +2 -0
  250. package/dist/hooks/auto-update-checker/hook/connected-providers-status.d.ts +2 -0
  251. package/dist/hooks/auto-update-checker/hook/model-cache-warning.d.ts +2 -0
  252. package/dist/hooks/auto-update-checker/hook/spinner-toast.d.ts +2 -0
  253. package/dist/hooks/auto-update-checker/hook/startup-toasts.d.ts +3 -0
  254. package/dist/hooks/auto-update-checker/hook/update-toasts.d.ts +3 -0
  255. package/dist/hooks/auto-update-checker/hook.d.ts +10 -0
  256. package/dist/hooks/auto-update-checker/index.d.ts +3 -15
  257. package/dist/hooks/auto-update-checker/version-channel.d.ts +4 -0
  258. package/dist/hooks/background-notification/hook.d.ts +18 -0
  259. package/dist/hooks/background-notification/index.d.ts +1 -17
  260. package/dist/hooks/category-skill-reminder/formatter.d.ts +2 -0
  261. package/dist/hooks/category-skill-reminder/hook.d.ts +23 -0
  262. package/dist/hooks/category-skill-reminder/index.d.ts +1 -23
  263. package/dist/hooks/claude-code-hooks/claude-code-hooks-hook.d.ts +48 -0
  264. package/dist/hooks/claude-code-hooks/handlers/chat-message-handler.d.ts +19 -0
  265. package/dist/hooks/claude-code-hooks/handlers/pre-compact-handler.d.ts +7 -0
  266. package/dist/hooks/claude-code-hooks/handlers/session-event-handler.d.ts +8 -0
  267. package/dist/hooks/claude-code-hooks/handlers/tool-execute-after-handler.d.ts +11 -0
  268. package/dist/hooks/claude-code-hooks/handlers/tool-execute-before-handler.d.ts +9 -0
  269. package/dist/hooks/claude-code-hooks/index.d.ts +1 -48
  270. package/dist/hooks/claude-code-hooks/session-hook-state.d.ts +9 -0
  271. package/dist/hooks/comment-checker/cli-runner.d.ts +19 -0
  272. package/dist/hooks/comment-checker/hook.d.ts +19 -0
  273. package/dist/hooks/comment-checker/index.d.ts +1 -19
  274. package/dist/hooks/comment-checker/pending-calls.d.ts +4 -0
  275. package/dist/hooks/compaction-context-injector/hook.d.ts +1 -0
  276. package/dist/hooks/compaction-context-injector/index.d.ts +1 -1
  277. package/dist/hooks/compaction-todo-preserver/hook.d.ts +11 -0
  278. package/dist/hooks/compaction-todo-preserver/index.d.ts +2 -11
  279. package/dist/hooks/delegate-task-retry/guidance.d.ts +2 -0
  280. package/dist/hooks/delegate-task-retry/hook.d.ts +12 -0
  281. package/dist/hooks/delegate-task-retry/index.d.ts +4 -24
  282. package/dist/hooks/delegate-task-retry/patterns.d.ts +11 -0
  283. package/dist/hooks/directory-agents-injector/finder.d.ts +5 -0
  284. package/dist/hooks/directory-agents-injector/hook.d.ts +26 -0
  285. package/dist/hooks/directory-agents-injector/index.d.ts +1 -26
  286. package/dist/hooks/directory-agents-injector/injector.d.ts +16 -0
  287. package/dist/hooks/directory-readme-injector/finder.d.ts +5 -0
  288. package/dist/hooks/directory-readme-injector/hook.d.ts +26 -0
  289. package/dist/hooks/directory-readme-injector/index.d.ts +1 -26
  290. package/dist/hooks/directory-readme-injector/injector.d.ts +16 -0
  291. package/dist/hooks/edit-error-recovery/hook.d.ts +31 -0
  292. package/dist/hooks/edit-error-recovery/index.d.ts +1 -31
  293. package/dist/hooks/index.d.ts +4 -0
  294. package/dist/hooks/interactive-bash-session/index.d.ts +2 -3
  295. package/dist/hooks/interactive-bash-session/interactive-bash-session-hook.d.ts +23 -0
  296. package/dist/hooks/interactive-bash-session/interactive-bash-session-tracker.d.ts +21 -0
  297. package/dist/hooks/interactive-bash-session/tmux-command-parser.d.ts +4 -0
  298. package/dist/hooks/keyword-detector/hook.d.ts +20 -0
  299. package/dist/hooks/keyword-detector/index.d.ts +1 -20
  300. package/dist/hooks/keyword-detector/ultrawork/default.d.ts +1 -1
  301. package/dist/hooks/keyword-detector/ultrawork/gpt5.2.d.ts +1 -1
  302. package/dist/hooks/keyword-detector/ultrawork/index.d.ts +2 -2
  303. package/dist/hooks/non-interactive-env/index.d.ts +1 -11
  304. package/dist/hooks/non-interactive-env/non-interactive-env-hook.d.ts +14 -0
  305. package/dist/hooks/prometheus-md-only/agent-resolution.d.ts +13 -0
  306. package/dist/hooks/prometheus-md-only/hook.d.ts +11 -0
  307. package/dist/hooks/prometheus-md-only/index.d.ts +1 -11
  308. package/dist/hooks/prometheus-md-only/path-policy.d.ts +10 -0
  309. package/dist/hooks/question-label-truncator/hook.d.ts +7 -0
  310. package/dist/hooks/question-label-truncator/index.d.ts +1 -7
  311. package/dist/hooks/ralph-loop/completion-promise-detector.d.ts +8 -0
  312. package/dist/hooks/ralph-loop/continuation-prompt-builder.d.ts +2 -0
  313. package/dist/hooks/ralph-loop/continuation-prompt-injector.d.ts +7 -0
  314. package/dist/hooks/ralph-loop/index.d.ts +2 -18
  315. package/dist/hooks/ralph-loop/loop-session-recovery.d.ts +7 -0
  316. package/dist/hooks/ralph-loop/loop-state-controller.d.ts +16 -0
  317. package/dist/hooks/ralph-loop/message-storage-directory.d.ts +1 -0
  318. package/dist/hooks/ralph-loop/ralph-loop-event-handler.d.ts +27 -0
  319. package/dist/hooks/ralph-loop/ralph-loop-hook.d.ts +18 -0
  320. package/dist/hooks/ralph-loop/with-timeout.d.ts +1 -0
  321. package/dist/hooks/rules-injector/cache.d.ts +8 -0
  322. package/dist/hooks/rules-injector/finder.d.ts +3 -33
  323. package/dist/hooks/rules-injector/hook.d.ts +26 -0
  324. package/dist/hooks/rules-injector/index.d.ts +2 -26
  325. package/dist/hooks/rules-injector/injector.d.ts +20 -0
  326. package/dist/hooks/rules-injector/project-root-finder.d.ts +8 -0
  327. package/dist/hooks/rules-injector/rule-distance.d.ts +10 -0
  328. package/dist/hooks/rules-injector/rule-file-finder.d.ts +15 -0
  329. package/dist/hooks/rules-injector/rule-file-scanner.d.ts +14 -0
  330. package/dist/hooks/session-notification-formatting.d.ts +3 -0
  331. package/dist/hooks/session-notification-scheduler.d.ts +24 -0
  332. package/dist/hooks/session-notification-sender.d.ts +6 -0
  333. package/dist/hooks/session-recovery/detect-error-type.d.ts +3 -0
  334. package/dist/hooks/session-recovery/hook.d.ts +20 -0
  335. package/dist/hooks/session-recovery/index.d.ts +5 -22
  336. package/dist/hooks/session-recovery/recover-empty-content-message.d.ts +5 -0
  337. package/dist/hooks/session-recovery/recover-thinking-block-order.d.ts +5 -0
  338. package/dist/hooks/session-recovery/recover-thinking-disabled-violation.d.ts +5 -0
  339. package/dist/hooks/session-recovery/recover-tool-result-missing.d.ts +5 -0
  340. package/dist/hooks/session-recovery/resume.d.ts +7 -0
  341. package/dist/hooks/session-recovery/storage/empty-messages.d.ts +3 -0
  342. package/dist/hooks/session-recovery/storage/empty-text.d.ts +2 -0
  343. package/dist/hooks/session-recovery/storage/message-dir.d.ts +1 -0
  344. package/dist/hooks/session-recovery/storage/messages-reader.d.ts +2 -0
  345. package/dist/hooks/session-recovery/storage/orphan-thinking-search.d.ts +2 -0
  346. package/dist/hooks/session-recovery/storage/part-content.d.ts +3 -0
  347. package/dist/hooks/session-recovery/storage/part-id.d.ts +1 -0
  348. package/dist/hooks/session-recovery/storage/parts-reader.d.ts +2 -0
  349. package/dist/hooks/session-recovery/storage/text-part-injector.d.ts +1 -0
  350. package/dist/hooks/session-recovery/storage/thinking-block-search.d.ts +2 -0
  351. package/dist/hooks/session-recovery/storage/thinking-prepend.d.ts +1 -0
  352. package/dist/hooks/session-recovery/storage/thinking-strip.d.ts +1 -0
  353. package/dist/hooks/session-recovery/storage.d.ts +13 -19
  354. package/dist/hooks/session-todo-status.d.ts +2 -0
  355. package/dist/hooks/sisyphus-junior-notepad/hook.d.ts +11 -0
  356. package/dist/hooks/sisyphus-junior-notepad/index.d.ts +1 -11
  357. package/dist/hooks/start-work/index.d.ts +1 -16
  358. package/dist/hooks/start-work/start-work-hook.d.ts +16 -0
  359. package/dist/hooks/stop-continuation-guard/hook.d.ts +16 -0
  360. package/dist/hooks/stop-continuation-guard/index.d.ts +2 -16
  361. package/dist/hooks/subagent-question-blocker/hook.d.ts +2 -0
  362. package/dist/hooks/subagent-question-blocker/index.d.ts +1 -2
  363. package/dist/hooks/task-reminder/hook.d.ts +19 -0
  364. package/dist/hooks/task-reminder/index.d.ts +1 -19
  365. package/dist/hooks/task-resume-info/hook.d.ts +11 -0
  366. package/dist/hooks/task-resume-info/index.d.ts +1 -11
  367. package/dist/hooks/tasks-todowrite-disabler/hook.d.ts +14 -0
  368. package/dist/hooks/tasks-todowrite-disabler/index.d.ts +2 -14
  369. package/dist/hooks/think-mode/hook.d.ts +11 -0
  370. package/dist/hooks/think-mode/index.d.ts +1 -11
  371. package/dist/hooks/thinking-block-validator/hook.d.ts +30 -0
  372. package/dist/hooks/thinking-block-validator/index.d.ts +1 -30
  373. package/dist/hooks/todo-continuation-enforcer/abort-detection.d.ts +4 -0
  374. package/dist/hooks/todo-continuation-enforcer/constants.d.ts +7 -0
  375. package/dist/hooks/todo-continuation-enforcer/continuation-injection.d.ts +12 -0
  376. package/dist/hooks/todo-continuation-enforcer/countdown.d.ts +14 -0
  377. package/dist/hooks/todo-continuation-enforcer/handler.d.ts +15 -0
  378. package/dist/hooks/todo-continuation-enforcer/idle-event.d.ts +11 -0
  379. package/dist/hooks/todo-continuation-enforcer/index.d.ts +4 -0
  380. package/dist/hooks/todo-continuation-enforcer/message-directory.d.ts +1 -0
  381. package/dist/hooks/todo-continuation-enforcer/non-idle-events.d.ts +6 -0
  382. package/dist/hooks/todo-continuation-enforcer/session-state.d.ts +9 -0
  383. package/dist/hooks/todo-continuation-enforcer/todo.d.ts +2 -0
  384. package/dist/hooks/todo-continuation-enforcer/types.d.ts +55 -0
  385. package/dist/hooks/unstable-agent-babysitter/index.d.ts +2 -69
  386. package/dist/hooks/unstable-agent-babysitter/task-message-analyzer.d.ts +23 -0
  387. package/dist/hooks/unstable-agent-babysitter/unstable-agent-babysitter-hook.d.ts +69 -0
  388. package/dist/hooks/write-existing-file-guard/hook.d.ts +2 -0
  389. package/dist/hooks/write-existing-file-guard/index.d.ts +1 -2
  390. package/dist/index.js +48935 -47233
  391. package/dist/plugin/available-categories.d.ts +3 -0
  392. package/dist/plugin/chat-message.d.ts +30 -0
  393. package/dist/plugin/chat-params.d.ts +28 -0
  394. package/dist/plugin/event.d.ts +25 -0
  395. package/dist/plugin/hooks/create-continuation-hooks.d.ts +27 -0
  396. package/dist/plugin/hooks/create-core-hooks.d.ts +41 -0
  397. package/dist/plugin/hooks/create-session-hooks.d.ts +32 -0
  398. package/dist/plugin/hooks/create-skill-hooks.d.ts +16 -0
  399. package/dist/plugin/hooks/create-tool-guard-hooks.d.ts +19 -0
  400. package/dist/plugin/hooks/create-transform-hooks.d.ts +16 -0
  401. package/dist/plugin/messages-transform.d.ts +13 -0
  402. package/dist/plugin/recent-synthetic-idles.d.ts +6 -0
  403. package/dist/plugin/session-status-normalizer.d.ts +8 -0
  404. package/dist/plugin/skill-context.d.ts +14 -0
  405. package/dist/plugin/tool-execute-after.d.ts +12 -0
  406. package/dist/plugin/tool-execute-before.d.ts +12 -0
  407. package/dist/plugin/tool-registry.d.ts +16 -0
  408. package/dist/plugin/types.d.ts +12 -0
  409. package/dist/plugin/unstable-agent-babysitter.d.ts +15 -0
  410. package/dist/plugin-handlers/agent-config-handler.d.ts +11 -0
  411. package/dist/plugin-handlers/agent-priority-order.d.ts +1 -0
  412. package/dist/plugin-handlers/category-config-resolver.d.ts +2 -0
  413. package/dist/plugin-handlers/command-config-handler.d.ts +7 -0
  414. package/dist/plugin-handlers/config-handler.d.ts +1 -2
  415. package/dist/plugin-handlers/index.d.ts +9 -0
  416. package/dist/plugin-handlers/mcp-config-handler.d.ts +7 -0
  417. package/dist/plugin-handlers/plugin-components-loader.d.ts +22 -0
  418. package/dist/plugin-handlers/prometheus-agent-config-builder.d.ts +23 -0
  419. package/dist/plugin-handlers/provider-config-handler.d.ts +5 -0
  420. package/dist/plugin-handlers/tool-config-handler.d.ts +6 -0
  421. package/dist/plugin-interface.d.ts +21 -0
  422. package/dist/shared/available-models-fetcher.d.ts +4 -0
  423. package/dist/shared/command-executor/embedded-commands.d.ts +7 -0
  424. package/dist/shared/command-executor/execute-command.d.ts +1 -0
  425. package/dist/shared/command-executor/execute-hook-command.d.ts +10 -0
  426. package/dist/shared/command-executor/home-directory.d.ts +1 -0
  427. package/dist/shared/command-executor/resolve-commands-in-text.d.ts +1 -0
  428. package/dist/shared/command-executor/shell-path.d.ts +2 -0
  429. package/dist/shared/command-executor.d.ts +4 -21
  430. package/dist/shared/connected-providers-cache.d.ts +4 -8
  431. package/dist/shared/fallback-model-availability.d.ts +5 -0
  432. package/dist/shared/index.d.ts +3 -1
  433. package/dist/shared/model-cache-availability.d.ts +2 -0
  434. package/dist/shared/model-name-matcher.d.ts +2 -0
  435. package/dist/shared/model-resolution-types.d.ts +23 -0
  436. package/dist/shared/models-json-cache-reader.d.ts +1 -0
  437. package/dist/shared/open-code-client-accessors.d.ts +3 -0
  438. package/dist/shared/open-code-client-shapes.d.ts +13 -0
  439. package/dist/shared/opencode-config-dir-types.d.ts +13 -0
  440. package/dist/shared/opencode-config-dir.d.ts +2 -13
  441. package/dist/shared/provider-models-cache-model-reader.d.ts +1 -0
  442. package/dist/shared/record-type-guard.d.ts +1 -0
  443. package/dist/shared/skill-path-resolver.d.ts +9 -0
  444. package/dist/shared/tmux/tmux-utils/environment.d.ts +3 -0
  445. package/dist/shared/tmux/tmux-utils/layout.d.ts +3 -0
  446. package/dist/shared/tmux/tmux-utils/pane-close.d.ts +1 -0
  447. package/dist/shared/tmux/tmux-utils/pane-dimensions.d.ts +5 -0
  448. package/dist/shared/tmux/tmux-utils/pane-replace.d.ts +3 -0
  449. package/dist/shared/tmux/tmux-utils/pane-spawn.d.ts +4 -0
  450. package/dist/shared/tmux/tmux-utils/server-health.d.ts +2 -0
  451. package/dist/shared/tmux/tmux-utils.d.ts +9 -17
  452. package/dist/tools/ast-grep/cli-binary-path-resolution.d.ts +5 -0
  453. package/dist/tools/ast-grep/cli.d.ts +1 -4
  454. package/dist/tools/ast-grep/constants.d.ts +5 -29
  455. package/dist/tools/ast-grep/environment-check.d.ts +20 -0
  456. package/dist/tools/ast-grep/language-support.d.ts +6 -0
  457. package/dist/tools/ast-grep/process-output-timeout.d.ts +12 -0
  458. package/dist/tools/ast-grep/sg-cli-path.d.ts +3 -0
  459. package/dist/tools/ast-grep/sg-compact-json-output.d.ts +2 -0
  460. package/dist/tools/background-task/clients.d.ts +45 -0
  461. package/dist/tools/background-task/create-background-cancel.d.ts +4 -0
  462. package/dist/tools/background-task/create-background-output.d.ts +3 -0
  463. package/dist/tools/background-task/create-background-task.d.ts +3 -0
  464. package/dist/tools/background-task/delay.d.ts +1 -0
  465. package/dist/tools/background-task/full-session-format.d.ts +9 -0
  466. package/dist/tools/background-task/message-dir.d.ts +1 -0
  467. package/dist/tools/background-task/session-messages.d.ts +3 -0
  468. package/dist/tools/background-task/task-result-format.d.ts +3 -0
  469. package/dist/tools/background-task/task-status-format.d.ts +2 -0
  470. package/dist/tools/background-task/time-format.d.ts +2 -0
  471. package/dist/tools/background-task/tools.d.ts +4 -7
  472. package/dist/tools/background-task/truncate-text.d.ts +1 -0
  473. package/dist/tools/call-omo-agent/agent-type-normalizer.d.ts +2 -0
  474. package/dist/tools/call-omo-agent/background-agent-executor.d.ts +4 -0
  475. package/dist/tools/call-omo-agent/message-storage-directory.d.ts +1 -0
  476. package/dist/tools/call-omo-agent/session-completion-poller.d.ts +13 -0
  477. package/dist/tools/call-omo-agent/session-message-output-extractor.d.ts +17 -0
  478. package/dist/tools/call-omo-agent/subagent-session-creator.d.ts +10 -0
  479. package/dist/tools/call-omo-agent/subagent-session-prompter.d.ts +11 -0
  480. package/dist/tools/call-omo-agent/sync-agent-executor.d.ts +4 -0
  481. package/dist/tools/call-omo-agent/tool-context-with-metadata.d.ts +10 -0
  482. package/dist/tools/delegate-task/available-models.d.ts +2 -0
  483. package/dist/tools/delegate-task/background-continuation.d.ts +3 -0
  484. package/dist/tools/delegate-task/background-task.d.ts +7 -0
  485. package/dist/tools/delegate-task/category-resolver.d.ts +17 -0
  486. package/dist/tools/delegate-task/constants.d.ts +2 -1
  487. package/dist/tools/delegate-task/error-formatting.d.ts +15 -0
  488. package/dist/tools/delegate-task/executor-types.d.ts +51 -0
  489. package/dist/tools/delegate-task/executor.d.ts +11 -80
  490. package/dist/tools/delegate-task/model-selection.d.ts +11 -0
  491. package/dist/tools/delegate-task/model-string-parser.d.ts +7 -0
  492. package/dist/tools/delegate-task/parent-context-resolver.d.ts +3 -0
  493. package/dist/tools/delegate-task/sisyphus-junior-agent.d.ts +1 -0
  494. package/dist/tools/delegate-task/skill-content-resolver.d.ts +9 -0
  495. package/dist/tools/delegate-task/subagent-resolver.d.ts +11 -0
  496. package/dist/tools/delegate-task/sync-continuation-deps.d.ts +7 -0
  497. package/dist/tools/delegate-task/sync-continuation.d.ts +4 -0
  498. package/dist/tools/delegate-task/sync-prompt-sender.d.ts +16 -0
  499. package/dist/tools/delegate-task/sync-result-fetcher.d.ts +8 -0
  500. package/dist/tools/delegate-task/sync-session-creator.d.ts +14 -0
  501. package/dist/tools/delegate-task/sync-session-poller.d.ts +12 -0
  502. package/dist/tools/delegate-task/sync-task-deps.d.ts +11 -0
  503. package/dist/tools/delegate-task/sync-task.d.ts +9 -0
  504. package/dist/tools/delegate-task/time-formatter.d.ts +4 -0
  505. package/dist/tools/delegate-task/unstable-agent-task.d.ts +7 -0
  506. package/dist/tools/interactive-bash/index.d.ts +1 -1
  507. package/dist/tools/look-at/assistant-message-extractor.d.ts +1 -0
  508. package/dist/tools/look-at/look-at-arguments.d.ts +6 -0
  509. package/dist/tools/look-at/mime-type-inference.d.ts +3 -0
  510. package/dist/tools/look-at/multimodal-agent-metadata.d.ts +11 -0
  511. package/dist/tools/look-at/session-poller.d.ts +8 -0
  512. package/dist/tools/look-at/tools.d.ts +1 -7
  513. package/dist/tools/lsp/client.d.ts +3 -57
  514. package/dist/tools/lsp/config.d.ts +3 -17
  515. package/dist/tools/lsp/constants.d.ts +2 -6
  516. package/dist/tools/lsp/diagnostics-tool.d.ts +2 -0
  517. package/dist/tools/lsp/find-references-tool.d.ts +2 -0
  518. package/dist/tools/lsp/goto-definition-tool.d.ts +2 -0
  519. package/dist/tools/lsp/index.d.ts +3 -1
  520. package/dist/tools/lsp/language-config.d.ts +1 -0
  521. package/dist/tools/lsp/language-mappings.d.ts +3 -0
  522. package/dist/tools/lsp/lsp-client-connection.d.ts +4 -0
  523. package/dist/tools/lsp/lsp-client-transport.d.ts +20 -0
  524. package/dist/tools/lsp/lsp-client-wrapper.d.ts +8 -0
  525. package/dist/tools/lsp/lsp-client.d.ts +17 -0
  526. package/dist/tools/lsp/{utils.d.ts → lsp-formatters.d.ts} +2 -15
  527. package/dist/tools/lsp/lsp-manager-process-cleanup.d.ts +12 -0
  528. package/dist/tools/lsp/lsp-manager-temp-directory-cleanup.d.ts +8 -0
  529. package/dist/tools/lsp/lsp-process.d.ts +29 -0
  530. package/dist/tools/lsp/lsp-server.d.ts +23 -0
  531. package/dist/tools/lsp/rename-tools.d.ts +3 -0
  532. package/dist/tools/lsp/server-config-loader.d.ts +25 -0
  533. package/dist/tools/lsp/server-definitions.d.ts +3 -0
  534. package/dist/tools/lsp/server-installation.d.ts +1 -0
  535. package/dist/tools/lsp/server-resolution.d.ts +15 -0
  536. package/dist/tools/lsp/symbols-tool.d.ts +2 -0
  537. package/dist/tools/lsp/tools.d.ts +5 -7
  538. package/dist/tools/lsp/workspace-edit.d.ts +8 -0
  539. package/dist/tools/slashcommand/command-discovery.d.ts +2 -0
  540. package/dist/tools/slashcommand/command-output-formatter.d.ts +3 -0
  541. package/dist/tools/slashcommand/skill-command-converter.d.ts +3 -0
  542. package/dist/tools/slashcommand/slashcommand-description.d.ts +3 -0
  543. package/dist/tools/slashcommand/slashcommand-tool.d.ts +4 -0
  544. package/dist/tools/slashcommand/tools.d.ts +2 -5
  545. package/dist/tools/task/task-action-create.d.ts +4 -0
  546. package/dist/tools/task/task-action-delete.d.ts +2 -0
  547. package/dist/tools/task/task-action-get.d.ts +2 -0
  548. package/dist/tools/task/task-action-list.d.ts +2 -0
  549. package/dist/tools/task/task-action-update.d.ts +2 -0
  550. package/dist/tools/task/task-id-validator.d.ts +1 -0
  551. package/dist/tools/task/types.d.ts +5 -5
  552. package/package.json +8 -8
  553. package/dist/agents/utils.d.ts +0 -16
  554. package/dist/hooks/todo-continuation-enforcer.d.ts +0 -19
  555. package/dist/tools/delegate-task/helpers.d.ts +0 -30
  556. /package/dist/agents/atlas/{utils.d.ts → prompt-section-builder.d.ts} +0 -0
  557. /package/dist/hooks/keyword-detector/ultrawork/{utils.d.ts → source-detector.d.ts} +0 -0
  558. /package/dist/tools/ast-grep/{utils.d.ts → result-formatter.d.ts} +0 -0
  559. /package/dist/tools/glob/{utils.d.ts → result-formatter.d.ts} +0 -0
  560. /package/dist/tools/grep/{utils.d.ts → result-formatter.d.ts} +0 -0
  561. /package/dist/tools/interactive-bash/{utils.d.ts → tmux-path-resolver.d.ts} +0 -0
  562. /package/dist/tools/session-manager/{utils.d.ts → session-formatter.d.ts} +0 -0
@@ -0,0 +1,18 @@
1
+ import type { PluginInput } from "@opencode-ai/plugin";
2
+ import type { RalphLoopOptions, RalphLoopState } from "./types";
3
+ export interface RalphLoopHook {
4
+ event: (input: {
5
+ event: {
6
+ type: string;
7
+ properties?: unknown;
8
+ };
9
+ }) => Promise<void>;
10
+ startLoop: (sessionID: string, prompt: string, options?: {
11
+ maxIterations?: number;
12
+ completionPromise?: string;
13
+ ultrawork?: boolean;
14
+ }) => boolean;
15
+ cancelLoop: (sessionID: string) => boolean;
16
+ getState: () => RalphLoopState | null;
17
+ }
18
+ export declare function createRalphLoopHook(ctx: PluginInput, options?: RalphLoopOptions): RalphLoopHook;
@@ -0,0 +1 @@
1
+ export declare function withTimeout<TData>(promise: Promise<TData>, timeoutMs: number): Promise<TData>;
@@ -0,0 +1,8 @@
1
+ export type SessionInjectedRulesCache = {
2
+ contentHashes: Set<string>;
3
+ realPaths: Set<string>;
4
+ };
5
+ export declare function createSessionCacheStore(): {
6
+ getSessionCache: (sessionID: string) => SessionInjectedRulesCache;
7
+ clearSessionCache: (sessionID: string) => void;
8
+ };
@@ -1,33 +1,3 @@
1
- import type { RuleFileCandidate } from "./types";
2
- /**
3
- * Find project root by walking up from startPath.
4
- * Checks for PROJECT_MARKERS (.git, pyproject.toml, package.json, etc.)
5
- *
6
- * @param startPath - Starting path to search from (file or directory)
7
- * @returns Project root path or null if not found
8
- */
9
- export declare function findProjectRoot(startPath: string): string | null;
10
- /**
11
- * Calculate directory distance between a rule file and current file.
12
- * Distance is based on common ancestor within project root.
13
- *
14
- * @param rulePath - Path to the rule file
15
- * @param currentFile - Path to the current file being edited
16
- * @param projectRoot - Project root for relative path calculation
17
- * @returns Distance (0 = same directory, higher = further)
18
- */
19
- export declare function calculateDistance(rulePath: string, currentFile: string, projectRoot: string | null): number;
20
- /**
21
- * Find all rule files for a given context.
22
- * Searches from currentFile upward to projectRoot for rule directories,
23
- * then user-level directory (~/.claude/rules).
24
- *
25
- * IMPORTANT: This searches EVERY directory from file to project root.
26
- * Not just the project root itself.
27
- *
28
- * @param projectRoot - Project root path (or null if outside any project)
29
- * @param homeDir - User home directory
30
- * @param currentFile - Current file being edited (for distance calculation)
31
- * @returns Array of rule file candidates sorted by distance
32
- */
33
- export declare function findRuleFiles(projectRoot: string | null, homeDir: string, currentFile: string): RuleFileCandidate[];
1
+ export { findProjectRoot } from "./project-root-finder";
2
+ export { calculateDistance } from "./rule-distance";
3
+ export { findRuleFiles } from "./rule-file-finder";
@@ -0,0 +1,26 @@
1
+ import type { PluginInput } from "@opencode-ai/plugin";
2
+ interface ToolExecuteInput {
3
+ tool: string;
4
+ sessionID: string;
5
+ callID: string;
6
+ }
7
+ interface ToolExecuteOutput {
8
+ title: string;
9
+ output: string;
10
+ metadata: unknown;
11
+ }
12
+ interface ToolExecuteBeforeOutput {
13
+ args: unknown;
14
+ }
15
+ interface EventInput {
16
+ event: {
17
+ type: string;
18
+ properties?: unknown;
19
+ };
20
+ }
21
+ export declare function createRulesInjectorHook(ctx: PluginInput): {
22
+ "tool.execute.before": (input: ToolExecuteInput, output: ToolExecuteBeforeOutput) => Promise<void>;
23
+ "tool.execute.after": (input: ToolExecuteInput, output: ToolExecuteOutput) => Promise<void>;
24
+ event: ({ event }: EventInput) => Promise<void>;
25
+ };
26
+ export {};
@@ -1,26 +1,2 @@
1
- import type { PluginInput } from "@opencode-ai/plugin";
2
- interface ToolExecuteInput {
3
- tool: string;
4
- sessionID: string;
5
- callID: string;
6
- }
7
- interface ToolExecuteOutput {
8
- title: string;
9
- output: string;
10
- metadata: unknown;
11
- }
12
- interface ToolExecuteBeforeOutput {
13
- args: unknown;
14
- }
15
- interface EventInput {
16
- event: {
17
- type: string;
18
- properties?: unknown;
19
- };
20
- }
21
- export declare function createRulesInjectorHook(ctx: PluginInput): {
22
- "tool.execute.before": (input: ToolExecuteInput, output: ToolExecuteBeforeOutput) => Promise<void>;
23
- "tool.execute.after": (input: ToolExecuteInput, output: ToolExecuteOutput) => Promise<void>;
24
- event: ({ event }: EventInput) => Promise<void>;
25
- };
26
- export {};
1
+ export { createRulesInjectorHook } from "./hook";
2
+ export { calculateDistance, findProjectRoot, findRuleFiles } from "./finder";
@@ -0,0 +1,20 @@
1
+ import type { SessionInjectedRulesCache } from "./cache";
2
+ type ToolExecuteOutput = {
3
+ title: string;
4
+ output: string;
5
+ metadata: unknown;
6
+ };
7
+ type DynamicTruncator = {
8
+ truncate: (sessionID: string, content: string) => Promise<{
9
+ result: string;
10
+ truncated: boolean;
11
+ }>;
12
+ };
13
+ export declare function createRuleInjectionProcessor(deps: {
14
+ workspaceDirectory: string;
15
+ truncator: DynamicTruncator;
16
+ getSessionCache: (sessionID: string) => SessionInjectedRulesCache;
17
+ }): {
18
+ processFilePathForInjection: (filePath: string, sessionID: string, output: ToolExecuteOutput) => Promise<void>;
19
+ };
20
+ export {};
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Find project root by walking up from startPath.
3
+ * Checks for PROJECT_MARKERS (.git, pyproject.toml, package.json, etc.)
4
+ *
5
+ * @param startPath - Starting path to search from (file or directory)
6
+ * @returns Project root path or null if not found
7
+ */
8
+ export declare function findProjectRoot(startPath: string): string | null;
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Calculate directory distance between a rule file and current file.
3
+ * Distance is based on common ancestor within project root.
4
+ *
5
+ * @param rulePath - Path to the rule file
6
+ * @param currentFile - Path to the current file being edited
7
+ * @param projectRoot - Project root for relative path calculation
8
+ * @returns Distance (0 = same directory, higher = further)
9
+ */
10
+ export declare function calculateDistance(rulePath: string, currentFile: string, projectRoot: string | null): number;
@@ -0,0 +1,15 @@
1
+ import type { RuleFileCandidate } from "./types";
2
+ /**
3
+ * Find all rule files for a given context.
4
+ * Searches from currentFile upward to projectRoot for rule directories,
5
+ * then user-level directory (~/.claude/rules).
6
+ *
7
+ * IMPORTANT: This searches EVERY directory from file to project root.
8
+ * Not just the project root itself.
9
+ *
10
+ * @param projectRoot - Project root path (or null if outside any project)
11
+ * @param homeDir - User home directory
12
+ * @param currentFile - Current file being edited (for distance calculation)
13
+ * @returns Array of rule file candidates sorted by distance
14
+ */
15
+ export declare function findRuleFiles(projectRoot: string | null, homeDir: string, currentFile: string): RuleFileCandidate[];
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Recursively find all rule files (*.md, *.mdc) in a directory
3
+ *
4
+ * @param dir - Directory to search
5
+ * @param results - Array to accumulate results
6
+ */
7
+ export declare function findRuleFilesRecursive(dir: string, results: string[]): void;
8
+ /**
9
+ * Resolve symlinks safely with fallback to original path
10
+ *
11
+ * @param filePath - Path to resolve
12
+ * @returns Real path or original path if resolution fails
13
+ */
14
+ export declare function safeRealpathSync(filePath: string): string;
@@ -0,0 +1,3 @@
1
+ export declare function escapeAppleScriptText(input: string): string;
2
+ export declare function escapePowerShellSingleQuotedText(input: string): string;
3
+ export declare function buildWindowsToastScript(title: string, message: string): string;
@@ -0,0 +1,24 @@
1
+ import type { PluginInput } from "@opencode-ai/plugin";
2
+ import type { Platform } from "./session-notification-sender";
3
+ type SessionNotificationConfig = {
4
+ title: string;
5
+ message: string;
6
+ playSound: boolean;
7
+ soundPath: string;
8
+ idleConfirmationDelay: number;
9
+ skipIfIncompleteTodos: boolean;
10
+ maxTrackedSessions: number;
11
+ };
12
+ export declare function createIdleNotificationScheduler(options: {
13
+ ctx: PluginInput;
14
+ platform: Platform;
15
+ config: SessionNotificationConfig;
16
+ hasIncompleteTodos: (ctx: PluginInput, sessionID: string) => Promise<boolean>;
17
+ send: (ctx: PluginInput, platform: Platform, title: string, message: string) => Promise<void>;
18
+ playSound: (ctx: PluginInput, platform: Platform, soundPath: string) => Promise<void>;
19
+ }): {
20
+ markSessionActivity: (sessionID: string) => void;
21
+ scheduleIdleNotification: (sessionID: string) => void;
22
+ deleteSession: (sessionID: string) => void;
23
+ };
24
+ export {};
@@ -0,0 +1,6 @@
1
+ import type { PluginInput } from "@opencode-ai/plugin";
2
+ export type Platform = "darwin" | "linux" | "win32" | "unsupported";
3
+ export declare function detectPlatform(): Platform;
4
+ export declare function getDefaultSoundPath(platform: Platform): string;
5
+ export declare function sendSessionNotification(ctx: PluginInput, platform: Platform, title: string, message: string): Promise<void>;
6
+ export declare function playSessionNotificationSound(ctx: PluginInput, platform: Platform, soundPath: string): Promise<void>;
@@ -0,0 +1,3 @@
1
+ export type RecoveryErrorType = "tool_result_missing" | "thinking_block_order" | "thinking_disabled_violation" | "assistant_prefill_unsupported" | null;
2
+ export declare function extractMessageIndex(error: unknown): number | null;
3
+ export declare function detectErrorType(error: unknown): RecoveryErrorType;
@@ -0,0 +1,20 @@
1
+ import type { PluginInput } from "@opencode-ai/plugin";
2
+ import type { ExperimentalConfig } from "../../config";
3
+ interface MessageInfo {
4
+ id?: string;
5
+ role?: string;
6
+ sessionID?: string;
7
+ parentID?: string;
8
+ error?: unknown;
9
+ }
10
+ export interface SessionRecoveryOptions {
11
+ experimental?: ExperimentalConfig;
12
+ }
13
+ export interface SessionRecoveryHook {
14
+ handleSessionRecovery: (info: MessageInfo) => Promise<boolean>;
15
+ isRecoverableError: (error: unknown) => boolean;
16
+ setOnAbortCallback: (callback: (sessionID: string) => void) => void;
17
+ setOnRecoveryCompleteCallback: (callback: (sessionID: string) => void) => void;
18
+ }
19
+ export declare function createSessionRecoveryHook(ctx: PluginInput, options?: SessionRecoveryOptions): SessionRecoveryHook;
20
+ export {};
@@ -1,22 +1,5 @@
1
- import type { PluginInput } from "@opencode-ai/plugin";
2
- import type { ExperimentalConfig } from "../../config";
3
- export interface SessionRecoveryOptions {
4
- experimental?: ExperimentalConfig;
5
- }
6
- type RecoveryErrorType = "tool_result_missing" | "thinking_block_order" | "thinking_disabled_violation" | "assistant_prefill_unsupported" | null;
7
- interface MessageInfo {
8
- id?: string;
9
- role?: string;
10
- sessionID?: string;
11
- parentID?: string;
12
- error?: unknown;
13
- }
14
- export declare function detectErrorType(error: unknown): RecoveryErrorType;
15
- export interface SessionRecoveryHook {
16
- handleSessionRecovery: (info: MessageInfo) => Promise<boolean>;
17
- isRecoverableError: (error: unknown) => boolean;
18
- setOnAbortCallback: (callback: (sessionID: string) => void) => void;
19
- setOnRecoveryCompleteCallback: (callback: (sessionID: string) => void) => void;
20
- }
21
- export declare function createSessionRecoveryHook(ctx: PluginInput, options?: SessionRecoveryOptions): SessionRecoveryHook;
22
- export {};
1
+ export { createSessionRecoveryHook } from "./hook";
2
+ export type { SessionRecoveryHook, SessionRecoveryOptions } from "./hook";
3
+ export { detectErrorType } from "./detect-error-type";
4
+ export type { RecoveryErrorType } from "./detect-error-type";
5
+ export type { MessageData, ResumeConfig } from "./types";
@@ -0,0 +1,5 @@
1
+ import type { createOpencodeClient } from "@opencode-ai/sdk";
2
+ import type { MessageData } from "./types";
3
+ type Client = ReturnType<typeof createOpencodeClient>;
4
+ export declare function recoverEmptyContentMessage(_client: Client, sessionID: string, failedAssistantMsg: MessageData, _directory: string, error: unknown): Promise<boolean>;
5
+ export {};
@@ -0,0 +1,5 @@
1
+ import type { createOpencodeClient } from "@opencode-ai/sdk";
2
+ import type { MessageData } from "./types";
3
+ type Client = ReturnType<typeof createOpencodeClient>;
4
+ export declare function recoverThinkingBlockOrder(_client: Client, sessionID: string, _failedAssistantMsg: MessageData, _directory: string, error: unknown): Promise<boolean>;
5
+ export {};
@@ -0,0 +1,5 @@
1
+ import type { createOpencodeClient } from "@opencode-ai/sdk";
2
+ import type { MessageData } from "./types";
3
+ type Client = ReturnType<typeof createOpencodeClient>;
4
+ export declare function recoverThinkingDisabledViolation(_client: Client, sessionID: string, _failedAssistantMsg: MessageData): Promise<boolean>;
5
+ export {};
@@ -0,0 +1,5 @@
1
+ import type { createOpencodeClient } from "@opencode-ai/sdk";
2
+ import type { MessageData } from "./types";
3
+ type Client = ReturnType<typeof createOpencodeClient>;
4
+ export declare function recoverToolResultMissing(client: Client, sessionID: string, failedAssistantMsg: MessageData): Promise<boolean>;
5
+ export {};
@@ -0,0 +1,7 @@
1
+ import type { createOpencodeClient } from "@opencode-ai/sdk";
2
+ import type { MessageData, ResumeConfig } from "./types";
3
+ type Client = ReturnType<typeof createOpencodeClient>;
4
+ export declare function findLastUserMessage(messages: MessageData[]): MessageData | undefined;
5
+ export declare function extractResumeConfig(userMessage: MessageData | undefined, sessionID: string): ResumeConfig;
6
+ export declare function resumeSession(client: Client, config: ResumeConfig): Promise<boolean>;
7
+ export {};
@@ -0,0 +1,3 @@
1
+ export declare function findEmptyMessages(sessionID: string): string[];
2
+ export declare function findEmptyMessageByIndex(sessionID: string, targetIndex: number): string | null;
3
+ export declare function findFirstEmptyMessage(sessionID: string): string | null;
@@ -0,0 +1,2 @@
1
+ export declare function replaceEmptyTextParts(messageID: string, replacementText: string): boolean;
2
+ export declare function findMessagesWithEmptyTextParts(sessionID: string): string[];
@@ -0,0 +1 @@
1
+ export declare function getMessageDir(sessionID: string): string;
@@ -0,0 +1,2 @@
1
+ import type { StoredMessageMeta } from "../types";
2
+ export declare function readMessages(sessionID: string): StoredMessageMeta[];
@@ -0,0 +1,2 @@
1
+ export declare function findMessagesWithOrphanThinking(sessionID: string): string[];
2
+ export declare function findMessageByIndexNeedingThinking(sessionID: string, targetIndex: number): string | null;
@@ -0,0 +1,3 @@
1
+ import type { StoredPart } from "../types";
2
+ export declare function hasContent(part: StoredPart): boolean;
3
+ export declare function messageHasContent(messageID: string): boolean;
@@ -0,0 +1 @@
1
+ export declare function generatePartId(): string;
@@ -0,0 +1,2 @@
1
+ import type { StoredPart } from "../types";
2
+ export declare function readParts(messageID: string): StoredPart[];
@@ -0,0 +1 @@
1
+ export declare function injectTextPart(sessionID: string, messageID: string, text: string): boolean;
@@ -0,0 +1,2 @@
1
+ export declare function findMessagesWithThinkingBlocks(sessionID: string): string[];
2
+ export declare function findMessagesWithThinkingOnly(sessionID: string): string[];
@@ -0,0 +1 @@
1
+ export declare function prependThinkingPart(sessionID: string, messageID: string): boolean;
@@ -0,0 +1 @@
1
+ export declare function stripThinkingParts(messageID: string): boolean;
@@ -1,19 +1,13 @@
1
- import type { StoredMessageMeta, StoredPart } from "./types";
2
- export declare function generatePartId(): string;
3
- export declare function getMessageDir(sessionID: string): string;
4
- export declare function readMessages(sessionID: string): StoredMessageMeta[];
5
- export declare function readParts(messageID: string): StoredPart[];
6
- export declare function hasContent(part: StoredPart): boolean;
7
- export declare function messageHasContent(messageID: string): boolean;
8
- export declare function injectTextPart(sessionID: string, messageID: string, text: string): boolean;
9
- export declare function findEmptyMessages(sessionID: string): string[];
10
- export declare function findEmptyMessageByIndex(sessionID: string, targetIndex: number): string | null;
11
- export declare function findFirstEmptyMessage(sessionID: string): string | null;
12
- export declare function findMessagesWithThinkingBlocks(sessionID: string): string[];
13
- export declare function findMessagesWithThinkingOnly(sessionID: string): string[];
14
- export declare function findMessagesWithOrphanThinking(sessionID: string): string[];
15
- export declare function prependThinkingPart(sessionID: string, messageID: string): boolean;
16
- export declare function stripThinkingParts(messageID: string): boolean;
17
- export declare function replaceEmptyTextParts(messageID: string, replacementText: string): boolean;
18
- export declare function findMessagesWithEmptyTextParts(sessionID: string): string[];
19
- export declare function findMessageByIndexNeedingThinking(sessionID: string, targetIndex: number): string | null;
1
+ export { generatePartId } from "./storage/part-id";
2
+ export { getMessageDir } from "./storage/message-dir";
3
+ export { readMessages } from "./storage/messages-reader";
4
+ export { readParts } from "./storage/parts-reader";
5
+ export { hasContent, messageHasContent } from "./storage/part-content";
6
+ export { injectTextPart } from "./storage/text-part-injector";
7
+ export { findEmptyMessages, findEmptyMessageByIndex, findFirstEmptyMessage, } from "./storage/empty-messages";
8
+ export { findMessagesWithEmptyTextParts } from "./storage/empty-text";
9
+ export { findMessagesWithThinkingBlocks, findMessagesWithThinkingOnly, } from "./storage/thinking-block-search";
10
+ export { findMessagesWithOrphanThinking, findMessageByIndexNeedingThinking, } from "./storage/orphan-thinking-search";
11
+ export { prependThinkingPart } from "./storage/thinking-prepend";
12
+ export { stripThinkingParts } from "./storage/thinking-strip";
13
+ export { replaceEmptyTextParts } from "./storage/empty-text";
@@ -0,0 +1,2 @@
1
+ import type { PluginInput } from "@opencode-ai/plugin";
2
+ export declare function hasIncompleteTodos(ctx: PluginInput, sessionID: string): Promise<boolean>;
@@ -0,0 +1,11 @@
1
+ import type { PluginInput } from "@opencode-ai/plugin";
2
+ export declare function createSisyphusJuniorNotepadHook(_ctx: PluginInput): {
3
+ "tool.execute.before": (input: {
4
+ tool: string;
5
+ sessionID: string;
6
+ callID: string;
7
+ }, output: {
8
+ args: Record<string, unknown>;
9
+ message?: string;
10
+ }) => Promise<void>;
11
+ };
@@ -1,12 +1,2 @@
1
- import type { PluginInput } from "@opencode-ai/plugin";
2
1
  export * from "./constants";
3
- export declare function createSisyphusJuniorNotepadHook(ctx: PluginInput): {
4
- "tool.execute.before": (input: {
5
- tool: string;
6
- sessionID: string;
7
- callID: string;
8
- }, output: {
9
- args: Record<string, unknown>;
10
- message?: string;
11
- }) => Promise<void>;
12
- };
2
+ export { createSisyphusJuniorNotepadHook } from "./hook";
@@ -1,16 +1 @@
1
- import type { PluginInput } from "@opencode-ai/plugin";
2
- export declare const HOOK_NAME = "start-work";
3
- interface StartWorkHookInput {
4
- sessionID: string;
5
- messageID?: string;
6
- }
7
- interface StartWorkHookOutput {
8
- parts: Array<{
9
- type: string;
10
- text?: string;
11
- }>;
12
- }
13
- export declare function createStartWorkHook(ctx: PluginInput): {
14
- "chat.message": (input: StartWorkHookInput, output: StartWorkHookOutput) => Promise<void>;
15
- };
16
- export {};
1
+ export { HOOK_NAME, createStartWorkHook } from "./start-work-hook";
@@ -0,0 +1,16 @@
1
+ import type { PluginInput } from "@opencode-ai/plugin";
2
+ export declare const HOOK_NAME: "start-work";
3
+ interface StartWorkHookInput {
4
+ sessionID: string;
5
+ messageID?: string;
6
+ }
7
+ interface StartWorkHookOutput {
8
+ parts: Array<{
9
+ type: string;
10
+ text?: string;
11
+ }>;
12
+ }
13
+ export declare function createStartWorkHook(ctx: PluginInput): {
14
+ "chat.message": (input: StartWorkHookInput, output: StartWorkHookOutput) => Promise<void>;
15
+ };
16
+ export {};
@@ -0,0 +1,16 @@
1
+ import type { PluginInput } from "@opencode-ai/plugin";
2
+ export interface StopContinuationGuard {
3
+ event: (input: {
4
+ event: {
5
+ type: string;
6
+ properties?: unknown;
7
+ };
8
+ }) => Promise<void>;
9
+ "chat.message": (input: {
10
+ sessionID?: string;
11
+ }) => Promise<void>;
12
+ stop: (sessionID: string) => void;
13
+ isStopped: (sessionID: string) => boolean;
14
+ clear: (sessionID: string) => void;
15
+ }
16
+ export declare function createStopContinuationGuardHook(_ctx: PluginInput): StopContinuationGuard;
@@ -1,16 +1,2 @@
1
- import type { PluginInput } from "@opencode-ai/plugin";
2
- export interface StopContinuationGuard {
3
- event: (input: {
4
- event: {
5
- type: string;
6
- properties?: unknown;
7
- };
8
- }) => Promise<void>;
9
- "chat.message": (input: {
10
- sessionID?: string;
11
- }) => Promise<void>;
12
- stop: (sessionID: string) => void;
13
- isStopped: (sessionID: string) => boolean;
14
- clear: (sessionID: string) => void;
15
- }
16
- export declare function createStopContinuationGuardHook(_ctx: PluginInput): StopContinuationGuard;
1
+ export { createStopContinuationGuardHook } from "./hook";
2
+ export type { StopContinuationGuard } from "./hook";
@@ -0,0 +1,2 @@
1
+ import type { Hooks } from "@opencode-ai/plugin";
2
+ export declare function createSubagentQuestionBlockerHook(): Hooks;
@@ -1,2 +1 @@
1
- import type { Hooks } from "@opencode-ai/plugin";
2
- export declare function createSubagentQuestionBlockerHook(): Hooks;
1
+ export { createSubagentQuestionBlockerHook } from "./hook";
@@ -0,0 +1,19 @@
1
+ import type { PluginInput } from "@opencode-ai/plugin";
2
+ interface ToolExecuteInput {
3
+ tool: string;
4
+ sessionID: string;
5
+ callID: string;
6
+ }
7
+ interface ToolExecuteOutput {
8
+ output: string;
9
+ }
10
+ export declare function createTaskReminderHook(_ctx: PluginInput): {
11
+ "tool.execute.after": (input: ToolExecuteInput, output: ToolExecuteOutput) => Promise<void>;
12
+ event: ({ event }: {
13
+ event: {
14
+ type: string;
15
+ properties?: unknown;
16
+ };
17
+ }) => Promise<void>;
18
+ };
19
+ export {};
@@ -1,19 +1 @@
1
- import type { PluginInput } from "@opencode-ai/plugin";
2
- interface ToolExecuteInput {
3
- tool: string;
4
- sessionID: string;
5
- callID: string;
6
- }
7
- interface ToolExecuteOutput {
8
- output: string;
9
- }
10
- export declare function createTaskReminderHook(_ctx: PluginInput): {
11
- "tool.execute.after": (input: ToolExecuteInput, output: ToolExecuteOutput) => Promise<void>;
12
- event: ({ event }: {
13
- event: {
14
- type: string;
15
- properties?: unknown;
16
- };
17
- }) => Promise<void>;
18
- };
19
- export {};
1
+ export { createTaskReminderHook } from "./hook";
@@ -0,0 +1,11 @@
1
+ export declare function createTaskResumeInfoHook(): {
2
+ "tool.execute.after": (input: {
3
+ tool: string;
4
+ sessionID: string;
5
+ callID: string;
6
+ }, output: {
7
+ title: string;
8
+ output: string;
9
+ metadata: unknown;
10
+ }) => Promise<void>;
11
+ };
@@ -1,11 +1 @@
1
- export declare function createTaskResumeInfoHook(): {
2
- "tool.execute.after": (input: {
3
- tool: string;
4
- sessionID: string;
5
- callID: string;
6
- }, output: {
7
- title: string;
8
- output: string;
9
- metadata: unknown;
10
- }) => Promise<void>;
11
- };
1
+ export { createTaskResumeInfoHook } from "./hook";
@@ -0,0 +1,14 @@
1
+ export interface TasksTodowriteDisablerConfig {
2
+ experimental?: {
3
+ task_system?: boolean;
4
+ };
5
+ }
6
+ export declare function createTasksTodowriteDisablerHook(config: TasksTodowriteDisablerConfig): {
7
+ "tool.execute.before": (input: {
8
+ tool: string;
9
+ sessionID: string;
10
+ callID: string;
11
+ }, _output: {
12
+ args: Record<string, unknown>;
13
+ }) => Promise<void>;
14
+ };