@sayknow-cli/coding-agent 0.3.13 → 0.3.16

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 (1072) hide show
  1. package/dist/types/append-only-mode.d.ts +31 -0
  2. package/dist/types/async/index.d.ts +2 -0
  3. package/dist/types/async/job-manager.d.ts +328 -0
  4. package/dist/types/async/support.d.ts +2 -0
  5. package/dist/types/autoresearch/dashboard.d.ts +4 -0
  6. package/dist/types/autoresearch/git.d.ts +36 -0
  7. package/dist/types/autoresearch/helpers.d.ts +24 -0
  8. package/dist/types/autoresearch/index.d.ts +2 -0
  9. package/dist/types/autoresearch/state.d.ts +17 -0
  10. package/dist/types/autoresearch/storage.d.ts +142 -0
  11. package/dist/types/autoresearch/tools/init-experiment.d.ts +31 -0
  12. package/dist/types/autoresearch/tools/log-experiment.d.ts +23 -0
  13. package/dist/types/autoresearch/tools/run-experiment.d.ts +8 -0
  14. package/dist/types/autoresearch/tools/update-notes.d.ts +12 -0
  15. package/dist/types/autoresearch/types.d.ts +154 -0
  16. package/dist/types/build-metadata.d.ts +7 -0
  17. package/dist/types/capability/context-file.d.ts +17 -0
  18. package/dist/types/capability/extension-module.d.ts +15 -0
  19. package/dist/types/capability/extension.d.ts +28 -0
  20. package/dist/types/capability/fs.d.ts +20 -0
  21. package/dist/types/capability/hook.d.ts +19 -0
  22. package/dist/types/capability/index.d.ts +80 -0
  23. package/dist/types/capability/instruction.d.ts +17 -0
  24. package/dist/types/capability/mcp.d.ts +49 -0
  25. package/dist/types/capability/prompt.d.ts +15 -0
  26. package/dist/types/capability/rule.d.ts +69 -0
  27. package/dist/types/capability/settings.d.ts +15 -0
  28. package/dist/types/capability/skill.d.ts +36 -0
  29. package/dist/types/capability/slash-command.d.ts +17 -0
  30. package/dist/types/capability/ssh.d.ts +23 -0
  31. package/dist/types/capability/system-prompt.d.ts +15 -0
  32. package/dist/types/capability/tool.d.ts +19 -0
  33. package/dist/types/capability/types.d.ts +154 -0
  34. package/dist/types/cli/agents-cli.d.ts +12 -0
  35. package/dist/types/cli/args.d.ts +57 -0
  36. package/dist/types/cli/auth-broker-cli.d.ts +25 -0
  37. package/dist/types/cli/auth-gateway-cli.d.ts +18 -0
  38. package/dist/types/cli/classify-install-target.d.ts +8 -0
  39. package/dist/types/cli/commands/init-xdg.d.ts +1 -0
  40. package/dist/types/cli/completion-cli.d.ts +41 -0
  41. package/dist/types/cli/config-cli.d.ts +23 -0
  42. package/dist/types/cli/daemon-cli.d.ts +27 -0
  43. package/dist/types/cli/fast-help.d.ts +1 -0
  44. package/dist/types/cli/file-processor.d.ts +11 -0
  45. package/dist/types/cli/fixture-report.d.ts +20 -0
  46. package/dist/types/cli/fixture-report.test.d.ts +1 -0
  47. package/dist/types/cli/grep-cli.d.ts +17 -0
  48. package/dist/types/cli/initial-message.d.ts +17 -0
  49. package/dist/types/cli/list-models.d.ts +36 -0
  50. package/dist/types/cli/local-provider-smoke.d.ts +59 -0
  51. package/dist/types/cli/malloc-env-guard.d.ts +65 -0
  52. package/dist/types/cli/malloc-env-guard.test.d.ts +1 -0
  53. package/dist/types/cli/mcp-cli.d.ts +25 -0
  54. package/dist/types/cli/migrate-cli.d.ts +20 -0
  55. package/dist/types/cli/nofile-limit.d.ts +11 -0
  56. package/dist/types/cli/notify-cli.d.ts +39 -0
  57. package/dist/types/cli/plugin-cli.d.ts +34 -0
  58. package/dist/types/cli/read-cli.d.ts +4 -0
  59. package/dist/types/cli/session-picker.d.ts +4 -0
  60. package/dist/types/cli/setup-cli.d.ts +73 -0
  61. package/dist/types/cli/shell-cli.d.ts +8 -0
  62. package/dist/types/cli/skills-cli.d.ts +9 -0
  63. package/dist/types/cli/ssh-cli.d.ts +21 -0
  64. package/dist/types/cli/stats-cli.d.ts +17 -0
  65. package/dist/types/cli/telegram-cli.d.ts +13 -0
  66. package/dist/types/cli/update-cli.d.ts +108 -0
  67. package/dist/types/cli/web-search-cli.d.ts +32 -0
  68. package/dist/types/cli/worktree-cli.d.ts +26 -0
  69. package/dist/types/cli.d.ts +140 -0
  70. package/dist/types/commands/acp.d.ts +12 -0
  71. package/dist/types/commands/agents.d.ts +34 -0
  72. package/dist/types/commands/auth-broker.d.ts +54 -0
  73. package/dist/types/commands/auth-gateway.d.ts +32 -0
  74. package/dist/types/commands/codex-native-hook.d.ts +6 -0
  75. package/dist/types/commands/commit.d.ts +27 -0
  76. package/dist/types/commands/completion.d.ts +29 -0
  77. package/dist/types/commands/config.d.ts +33 -0
  78. package/dist/types/commands/contribution-prep.d.ts +18 -0
  79. package/dist/types/commands/coordinator.d.ts +19 -0
  80. package/dist/types/commands/daemon.d.ts +45 -0
  81. package/dist/types/commands/deep-interview.d.ts +54 -0
  82. package/dist/types/commands/gc.d.ts +26 -0
  83. package/dist/types/commands/grep.d.ts +42 -0
  84. package/dist/types/commands/harness.d.ts +43 -0
  85. package/dist/types/commands/launch.d.ts +131 -0
  86. package/dist/types/commands/local-provider.d.ts +34 -0
  87. package/dist/types/commands/mcp-serve.d.ts +24 -0
  88. package/dist/types/commands/mcp.d.ts +70 -0
  89. package/dist/types/commands/migrate.d.ts +33 -0
  90. package/dist/types/commands/notify.d.ts +47 -0
  91. package/dist/types/commands/plugin.d.ts +58 -0
  92. package/dist/types/commands/ralplan.d.ts +7 -0
  93. package/dist/types/commands/read.d.ts +15 -0
  94. package/dist/types/commands/rlm.d.ts +10 -0
  95. package/dist/types/commands/session.d.ts +30 -0
  96. package/dist/types/commands/setup.d.ts +105 -0
  97. package/dist/types/commands/shell.d.ts +21 -0
  98. package/dist/types/commands/skills.d.ts +26 -0
  99. package/dist/types/commands/ssh.d.ts +48 -0
  100. package/dist/types/commands/state.d.ts +7 -0
  101. package/dist/types/commands/stats.d.ts +25 -0
  102. package/dist/types/commands/team.d.ts +24 -0
  103. package/dist/types/commands/telegram.d.ts +22 -0
  104. package/dist/types/commands/ultragoal.d.ts +8 -0
  105. package/dist/types/commands/update.d.ts +20 -0
  106. package/dist/types/commands/web-search.d.ts +87 -0
  107. package/dist/types/commands/worktree.d.ts +34 -0
  108. package/dist/types/commit/agentic/agent.d.ts +31 -0
  109. package/dist/types/commit/agentic/fallback.d.ts +5 -0
  110. package/dist/types/commit/agentic/index.d.ts +2 -0
  111. package/dist/types/commit/agentic/state.d.ts +58 -0
  112. package/dist/types/commit/agentic/tools/analyze-file.d.ts +19 -0
  113. package/dist/types/commit/agentic/tools/git-file-diff.d.ts +10 -0
  114. package/dist/types/commit/agentic/tools/git-hunk.d.ts +9 -0
  115. package/dist/types/commit/agentic/tools/git-overview.d.ts +9 -0
  116. package/dist/types/commit/agentic/tools/index.d.ts +16 -0
  117. package/dist/types/commit/agentic/tools/propose-changelog.d.ts +28 -0
  118. package/dist/types/commit/agentic/tools/propose-commit.d.ts +36 -0
  119. package/dist/types/commit/agentic/tools/recent-commits.d.ts +7 -0
  120. package/dist/types/commit/agentic/tools/schemas.d.ts +27 -0
  121. package/dist/types/commit/agentic/tools/split-commit.d.ts +53 -0
  122. package/dist/types/commit/agentic/topo-sort.d.ts +4 -0
  123. package/dist/types/commit/agentic/trivial.d.ts +7 -0
  124. package/dist/types/commit/agentic/validation.d.ts +20 -0
  125. package/dist/types/commit/analysis/conventional.d.ts +22 -0
  126. package/dist/types/commit/analysis/index.d.ts +4 -0
  127. package/dist/types/commit/analysis/scope.d.ts +6 -0
  128. package/dist/types/commit/analysis/summary.d.ts +19 -0
  129. package/dist/types/commit/analysis/validation.d.ts +8 -0
  130. package/dist/types/commit/changelog/detect.d.ts +2 -0
  131. package/dist/types/commit/changelog/generate.d.ts +30 -0
  132. package/dist/types/commit/changelog/index.d.ts +30 -0
  133. package/dist/types/commit/changelog/parse.d.ts +2 -0
  134. package/dist/types/commit/cli.d.ts +3 -0
  135. package/dist/types/commit/git/diff.d.ts +5 -0
  136. package/dist/types/commit/index.d.ts +4 -0
  137. package/dist/types/commit/map-reduce/index.d.ts +28 -0
  138. package/dist/types/commit/map-reduce/map-phase.d.ts +17 -0
  139. package/dist/types/commit/map-reduce/reduce-phase.d.ts +13 -0
  140. package/dist/types/commit/map-reduce/utils.d.ts +2 -0
  141. package/dist/types/commit/message.d.ts +2 -0
  142. package/dist/types/commit/model-selection.d.ts +15 -0
  143. package/dist/types/commit/pipeline.d.ts +5 -0
  144. package/dist/types/commit/shared-llm.d.ts +54 -0
  145. package/dist/types/commit/types.d.ts +78 -0
  146. package/dist/types/commit/utils/exclusions.d.ts +4 -0
  147. package/dist/types/commit/utils.d.ts +20 -0
  148. package/dist/types/config/config-file.d.ts +58 -0
  149. package/dist/types/config/file-lock-gc.d.ts +5 -0
  150. package/dist/types/config/file-lock.d.ts +36 -0
  151. package/dist/types/config/keybindings.d.ts +364 -0
  152. package/dist/types/config/model-equivalence.d.ts +24 -0
  153. package/dist/types/config/model-profile-activation.d.ts +65 -0
  154. package/dist/types/config/model-profiles.d.ts +39 -0
  155. package/dist/types/config/model-registry.d.ts +473 -0
  156. package/dist/types/config/model-resolver.d.ts +217 -0
  157. package/dist/types/config/models-config-schema.d.ts +700 -0
  158. package/dist/types/config/prompt-templates.d.ts +32 -0
  159. package/dist/types/config/resolve-config-value.d.ts +17 -0
  160. package/dist/types/config/settings-schema.d.ts +4223 -0
  161. package/dist/types/config/settings.d.ts +158 -0
  162. package/dist/types/config/skill-settings-defaults.d.ts +14 -0
  163. package/dist/types/config/telegram-autostart.d.ts +14 -0
  164. package/dist/types/config/telegram-env-bridge.d.ts +18 -0
  165. package/dist/types/config.d.ts +66 -0
  166. package/dist/types/coordinator/contract.d.ts +4 -0
  167. package/dist/types/coordinator-mcp/model-preset.d.ts +45 -0
  168. package/dist/types/coordinator-mcp/policy.d.ts +27 -0
  169. package/dist/types/coordinator-mcp/safety.d.ts +26 -0
  170. package/dist/types/coordinator-mcp/server.d.ts +139 -0
  171. package/dist/types/coordinator-mcp/session-reaper.d.ts +53 -0
  172. package/dist/types/cursor.d.ts +24 -0
  173. package/dist/types/daemon/builtin.d.ts +20 -0
  174. package/dist/types/daemon/control-types.d.ts +67 -0
  175. package/dist/types/daemon/operator-contract.d.ts +47 -0
  176. package/dist/types/daemon/runtime.d.ts +25 -0
  177. package/dist/types/dap/client.d.ts +39 -0
  178. package/dist/types/dap/config.d.ts +6 -0
  179. package/dist/types/dap/index.d.ts +4 -0
  180. package/dist/types/dap/session.d.ts +108 -0
  181. package/dist/types/dap/types.d.ts +524 -0
  182. package/dist/types/debug/crash-diagnostics.d.ts +45 -0
  183. package/dist/types/debug/index.d.ts +15 -0
  184. package/dist/types/debug/log-formatting.d.ts +4 -0
  185. package/dist/types/debug/log-viewer.d.ts +68 -0
  186. package/dist/types/debug/profiler.d.ts +24 -0
  187. package/dist/types/debug/raw-sse-buffer.d.ts +44 -0
  188. package/dist/types/debug/raw-sse.d.ts +16 -0
  189. package/dist/types/debug/report-bundle.d.ts +55 -0
  190. package/dist/types/debug/runtime-gauges.d.ts +6 -0
  191. package/dist/types/debug/system-info.d.ts +26 -0
  192. package/dist/types/deep-interview/plaintext-gate-guard.d.ts +11 -0
  193. package/dist/types/deep-interview/render-middleware.d.ts +6 -0
  194. package/dist/types/defaults/skc/extensions/grok-build/index.d.ts +1 -0
  195. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/index.d.ts +1 -0
  196. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/models/catalog.d.ts +29 -0
  197. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/payload/sanitize.d.ts +27 -0
  198. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/provider/billing.d.ts +8 -0
  199. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/provider/register.d.ts +5 -0
  200. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/provider/stream.d.ts +10 -0
  201. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/provider/usage.d.ts +2 -0
  202. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/shared/base-url.d.ts +2 -0
  203. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/shared/errors.d.ts +38 -0
  204. package/dist/types/defaults/skc-defaults.d.ts +64 -0
  205. package/dist/types/defaults/skc-grok-cli.d.ts +5 -0
  206. package/dist/types/discovery/agents-md.d.ts +1 -0
  207. package/dist/types/discovery/agents.d.ts +12 -0
  208. package/dist/types/discovery/builtin.d.ts +1 -0
  209. package/dist/types/discovery/claude-plugins.d.ts +1 -0
  210. package/dist/types/discovery/claude.d.ts +1 -0
  211. package/dist/types/discovery/cline.d.ts +1 -0
  212. package/dist/types/discovery/codex.d.ts +1 -0
  213. package/dist/types/discovery/cursor.d.ts +19 -0
  214. package/dist/types/discovery/gemini.d.ts +1 -0
  215. package/dist/types/discovery/github.d.ts +1 -0
  216. package/dist/types/discovery/helpers.d.ts +271 -0
  217. package/dist/types/discovery/index.d.ts +48 -0
  218. package/dist/types/discovery/mcp-json.d.ts +1 -0
  219. package/dist/types/discovery/opencode.d.ts +1 -0
  220. package/dist/types/discovery/plugin-dir-roots.d.ts +15 -0
  221. package/dist/types/discovery/ssh.d.ts +1 -0
  222. package/dist/types/discovery/substitute-plugin-root.d.ts +1 -0
  223. package/dist/types/discovery/vscode.d.ts +1 -0
  224. package/dist/types/discovery/windsurf.d.ts +15 -0
  225. package/dist/types/edit/apply-patch/index.d.ts +35 -0
  226. package/dist/types/edit/apply-patch/parser.d.ts +34 -0
  227. package/dist/types/edit/diff.d.ts +75 -0
  228. package/dist/types/edit/file-read-cache.d.ts +25 -0
  229. package/dist/types/edit/index.d.ts +58 -0
  230. package/dist/types/edit/modes/apply-patch.d.ts +24 -0
  231. package/dist/types/edit/modes/patch.d.ts +99 -0
  232. package/dist/types/edit/modes/replace.d.ts +149 -0
  233. package/dist/types/edit/normalize.d.ts +43 -0
  234. package/dist/types/edit/notebook.d.ts +26 -0
  235. package/dist/types/edit/read-file.d.ts +8 -0
  236. package/dist/types/edit/renderer.d.ts +110 -0
  237. package/dist/types/edit/streaming.d.ts +66 -0
  238. package/dist/types/eval/backend.d.ts +40 -0
  239. package/dist/types/eval/index.d.ts +4 -0
  240. package/dist/types/eval/js/context-manager.d.ts +27 -0
  241. package/dist/types/eval/js/executor.d.ts +29 -0
  242. package/dist/types/eval/js/index.d.ts +10 -0
  243. package/dist/types/eval/js/shared/helpers.d.ts +38 -0
  244. package/dist/types/eval/js/shared/indirect-eval.d.ts +14 -0
  245. package/dist/types/eval/js/shared/prelude.d.ts +1 -0
  246. package/dist/types/eval/js/shared/rewrite-imports.d.ts +6 -0
  247. package/dist/types/eval/js/shared/runtime.d.ts +47 -0
  248. package/dist/types/eval/js/shared/types.d.ts +24 -0
  249. package/dist/types/eval/js/tool-bridge.d.ts +18 -0
  250. package/dist/types/eval/js/worker-core.d.ts +5 -0
  251. package/dist/types/eval/js/worker-entry.d.ts +1 -0
  252. package/dist/types/eval/js/worker-protocol.d.ts +77 -0
  253. package/dist/types/eval/py/display.d.ts +25 -0
  254. package/dist/types/eval/py/executor.d.ts +88 -0
  255. package/dist/types/eval/py/index.d.ts +10 -0
  256. package/dist/types/eval/py/kernel.d.ts +65 -0
  257. package/dist/types/eval/py/prelude.d.ts +1 -0
  258. package/dist/types/eval/py/runtime.d.ts +29 -0
  259. package/dist/types/eval/py/tool-bridge.d.ts +20 -0
  260. package/dist/types/eval/types.d.ts +52 -0
  261. package/dist/types/exa/factory.d.ts +13 -0
  262. package/dist/types/exa/index.d.ts +20 -0
  263. package/dist/types/exa/mcp-client.d.ts +45 -0
  264. package/dist/types/exa/render.d.ts +19 -0
  265. package/dist/types/exa/researcher.d.ts +9 -0
  266. package/dist/types/exa/search.d.ts +9 -0
  267. package/dist/types/exa/types.d.ts +155 -0
  268. package/dist/types/exa/websets.d.ts +9 -0
  269. package/dist/types/exec/bash-executor.d.ts +64 -0
  270. package/dist/types/exec/exec.d.ts +25 -0
  271. package/dist/types/exec/idle-timeout-watchdog.d.ts +18 -0
  272. package/dist/types/exec/non-interactive-env.d.ts +1 -0
  273. package/dist/types/export/custom-share.d.ts +20 -0
  274. package/dist/types/export/html/index.d.ts +10 -0
  275. package/dist/types/export/html/template.generated.d.ts +1 -0
  276. package/dist/types/export/html/template.macro.d.ts +5 -0
  277. package/dist/types/export/ttsr.d.ts +55 -0
  278. package/dist/types/extensibility/custom-commands/bundled/ci-green/index.d.ts +9 -0
  279. package/dist/types/extensibility/custom-commands/index.d.ts +2 -0
  280. package/dist/types/extensibility/custom-commands/loader.d.ts +29 -0
  281. package/dist/types/extensibility/custom-commands/types.d.ts +106 -0
  282. package/dist/types/extensibility/custom-tools/index.d.ts +6 -0
  283. package/dist/types/extensibility/custom-tools/loader.d.ts +69 -0
  284. package/dist/types/extensibility/custom-tools/types.d.ts +229 -0
  285. package/dist/types/extensibility/custom-tools/wrapper.d.ts +24 -0
  286. package/dist/types/extensibility/extensions/compact-handler.d.ts +26 -0
  287. package/dist/types/extensibility/extensions/get-commands-handler.d.ts +29 -0
  288. package/dist/types/extensibility/extensions/index.d.ts +9 -0
  289. package/dist/types/extensibility/extensions/loader.d.ts +43 -0
  290. package/dist/types/extensibility/extensions/prefix-command-bridge.d.ts +35 -0
  291. package/dist/types/extensibility/extensions/runner.d.ts +135 -0
  292. package/dist/types/extensibility/extensions/types.d.ts +920 -0
  293. package/dist/types/extensibility/extensions/wrapper.d.ts +55 -0
  294. package/dist/types/extensibility/hooks/index.d.ts +5 -0
  295. package/dist/types/extensibility/hooks/loader.d.ts +89 -0
  296. package/dist/types/extensibility/hooks/runner.d.ts +126 -0
  297. package/dist/types/extensibility/hooks/tool-wrapper.d.ts +25 -0
  298. package/dist/types/extensibility/hooks/types.d.ts +431 -0
  299. package/dist/types/extensibility/plugins/doctor.d.ts +3 -0
  300. package/dist/types/extensibility/plugins/git-url.d.ts +34 -0
  301. package/dist/types/extensibility/plugins/index.d.ts +8 -0
  302. package/dist/types/extensibility/plugins/installer.d.ts +5 -0
  303. package/dist/types/extensibility/plugins/legacy-pi-compat.d.ts +2 -0
  304. package/dist/types/extensibility/plugins/loader.d.ts +31 -0
  305. package/dist/types/extensibility/plugins/manager.d.ts +65 -0
  306. package/dist/types/extensibility/plugins/marketplace/cache.d.ts +41 -0
  307. package/dist/types/extensibility/plugins/marketplace/fetcher.d.ts +48 -0
  308. package/dist/types/extensibility/plugins/marketplace/index.d.ts +6 -0
  309. package/dist/types/extensibility/plugins/marketplace/manager.d.ts +57 -0
  310. package/dist/types/extensibility/plugins/marketplace/registry.d.ts +34 -0
  311. package/dist/types/extensibility/plugins/marketplace/source-resolver.d.ts +28 -0
  312. package/dist/types/extensibility/plugins/marketplace/types.d.ts +130 -0
  313. package/dist/types/extensibility/plugins/parser.d.ts +52 -0
  314. package/dist/types/extensibility/plugins/security-scanner.d.ts +31 -0
  315. package/dist/types/extensibility/plugins/types.d.ts +149 -0
  316. package/dist/types/extensibility/runtime-skill-discovery.d.ts +20 -0
  317. package/dist/types/extensibility/shared-events.d.ts +281 -0
  318. package/dist/types/extensibility/skc-plugins/activation.d.ts +14 -0
  319. package/dist/types/extensibility/skc-plugins/compiler.d.ts +19 -0
  320. package/dist/types/extensibility/skc-plugins/constrained-hooks.d.ts +29 -0
  321. package/dist/types/extensibility/skc-plugins/index.d.ts +18 -0
  322. package/dist/types/extensibility/skc-plugins/injection.d.ts +40 -0
  323. package/dist/types/extensibility/skc-plugins/installer.d.ts +13 -0
  324. package/dist/types/extensibility/skc-plugins/loader.d.ts +3 -0
  325. package/dist/types/extensibility/skc-plugins/mcp-policy.d.ts +26 -0
  326. package/dist/types/extensibility/skc-plugins/observability.d.ts +27 -0
  327. package/dist/types/extensibility/skc-plugins/paths.d.ts +8 -0
  328. package/dist/types/extensibility/skc-plugins/prompt-appendix.d.ts +16 -0
  329. package/dist/types/extensibility/skc-plugins/registry.d.ts +32 -0
  330. package/dist/types/extensibility/skc-plugins/runtime-adapters.d.ts +64 -0
  331. package/dist/types/extensibility/skc-plugins/schema.d.ts +3 -0
  332. package/dist/types/extensibility/skc-plugins/session-validation.d.ts +42 -0
  333. package/dist/types/extensibility/skc-plugins/state.d.ts +9 -0
  334. package/dist/types/extensibility/skc-plugins/tools.d.ts +8 -0
  335. package/dist/types/extensibility/skc-plugins/types.d.ts +220 -0
  336. package/dist/types/extensibility/skc-plugins/validation.d.ts +11 -0
  337. package/dist/types/extensibility/skills.d.ts +82 -0
  338. package/dist/types/extensibility/slash-commands.d.ts +48 -0
  339. package/dist/types/extensibility/tool-proxy.d.ts +4 -0
  340. package/dist/types/extensibility/typebox.d.ts +155 -0
  341. package/dist/types/extensibility/utils.d.ts +12 -0
  342. package/dist/types/goals/index.d.ts +3 -0
  343. package/dist/types/goals/runtime.d.ts +63 -0
  344. package/dist/types/goals/state.d.ts +32 -0
  345. package/dist/types/goals/tools/goal-tool.d.ts +62 -0
  346. package/dist/types/harness-control-plane/classifier.d.ts +13 -0
  347. package/dist/types/harness-control-plane/control-endpoint.d.ts +31 -0
  348. package/dist/types/harness-control-plane/finalize.d.ts +60 -0
  349. package/dist/types/harness-control-plane/gc-adapter.d.ts +3 -0
  350. package/dist/types/harness-control-plane/operate.d.ts +35 -0
  351. package/dist/types/harness-control-plane/owner.d.ts +53 -0
  352. package/dist/types/harness-control-plane/phase-rollup.d.ts +23 -0
  353. package/dist/types/harness-control-plane/preserve.d.ts +19 -0
  354. package/dist/types/harness-control-plane/receipt-ingest.d.ts +19 -0
  355. package/dist/types/harness-control-plane/receipt-spool.d.ts +19 -0
  356. package/dist/types/harness-control-plane/receipts.d.ts +149 -0
  357. package/dist/types/harness-control-plane/rpc-adapter.d.ts +69 -0
  358. package/dist/types/harness-control-plane/seams.d.ts +21 -0
  359. package/dist/types/harness-control-plane/session-lease.d.ts +65 -0
  360. package/dist/types/harness-control-plane/state-machine.d.ts +24 -0
  361. package/dist/types/harness-control-plane/storage.d.ts +81 -0
  362. package/dist/types/harness-control-plane/types.d.ts +187 -0
  363. package/dist/types/hashline/anchors.d.ts +20 -0
  364. package/dist/types/hashline/apply.d.ts +14 -0
  365. package/dist/types/hashline/constants.d.ts +19 -0
  366. package/dist/types/hashline/diff-preview.d.ts +2 -0
  367. package/dist/types/hashline/diff.d.ts +17 -0
  368. package/dist/types/hashline/execute.d.ts +4 -0
  369. package/dist/types/hashline/hash.d.ts +123 -0
  370. package/dist/types/hashline/index.d.ts +13 -0
  371. package/dist/types/hashline/input.d.ts +11 -0
  372. package/dist/types/hashline/parser.d.ts +7 -0
  373. package/dist/types/hashline/prefixes.d.ts +7 -0
  374. package/dist/types/hashline/recovery.d.ts +27 -0
  375. package/dist/types/hashline/stream.d.ts +2 -0
  376. package/dist/types/hashline/types.d.ts +77 -0
  377. package/dist/types/hindsight/backend.d.ts +13 -0
  378. package/dist/types/hindsight/bank.d.ts +54 -0
  379. package/dist/types/hindsight/client.d.ts +224 -0
  380. package/dist/types/hindsight/config.d.ts +51 -0
  381. package/dist/types/hindsight/content.d.ts +70 -0
  382. package/dist/types/hindsight/index.d.ts +8 -0
  383. package/dist/types/hindsight/mental-models.d.ts +125 -0
  384. package/dist/types/hindsight/state.d.ts +99 -0
  385. package/dist/types/hindsight/transcript.d.ts +28 -0
  386. package/dist/types/hooks/codex-native-hooks-config.d.ts +29 -0
  387. package/dist/types/hooks/native-skill-hook.d.ts +28 -0
  388. package/dist/types/hooks/skill-keywords.d.ts +18 -0
  389. package/dist/types/hooks/skill-state.d.ts +93 -0
  390. package/dist/types/i18n/index.d.ts +38 -0
  391. package/dist/types/i18n/messages/de.d.ts +2 -0
  392. package/dist/types/i18n/messages/de.messages.d.ts +1 -0
  393. package/dist/types/i18n/messages/de.settings.d.ts +1 -0
  394. package/dist/types/i18n/messages/en.d.ts +81 -0
  395. package/dist/types/i18n/messages/es.d.ts +2 -0
  396. package/dist/types/i18n/messages/es.messages.d.ts +1 -0
  397. package/dist/types/i18n/messages/es.settings.d.ts +1 -0
  398. package/dist/types/i18n/messages/fr.d.ts +2 -0
  399. package/dist/types/i18n/messages/fr.messages.d.ts +1 -0
  400. package/dist/types/i18n/messages/fr.settings.d.ts +1 -0
  401. package/dist/types/i18n/messages/ja.d.ts +2 -0
  402. package/dist/types/i18n/messages/ja.messages.d.ts +1 -0
  403. package/dist/types/i18n/messages/ja.settings.d.ts +1 -0
  404. package/dist/types/i18n/messages/ko.d.ts +2 -0
  405. package/dist/types/i18n/messages/ko.messages.d.ts +1 -0
  406. package/dist/types/i18n/messages/ko.settings.d.ts +1 -0
  407. package/dist/types/i18n/messages/zh.d.ts +2 -0
  408. package/dist/types/i18n/messages/zh.messages.d.ts +1 -0
  409. package/dist/types/i18n/messages/zh.settings.d.ts +1 -0
  410. package/dist/types/index.d.ts +33 -0
  411. package/dist/types/internal-urls/agent-protocol.d.ts +12 -0
  412. package/dist/types/internal-urls/artifact-protocol.d.ts +6 -0
  413. package/dist/types/internal-urls/docs-index.generated.d.ts +2 -0
  414. package/dist/types/internal-urls/index.d.ts +20 -0
  415. package/dist/types/internal-urls/issue-pr-protocol.d.ts +17 -0
  416. package/dist/types/internal-urls/json-query.d.ts +30 -0
  417. package/dist/types/internal-urls/local-protocol.d.ts +43 -0
  418. package/dist/types/internal-urls/mcp-protocol.d.ts +12 -0
  419. package/dist/types/internal-urls/memory-protocol.d.ts +23 -0
  420. package/dist/types/internal-urls/parse.d.ts +19 -0
  421. package/dist/types/internal-urls/registry-helpers.d.ts +11 -0
  422. package/dist/types/internal-urls/router.d.ts +14 -0
  423. package/dist/types/internal-urls/rule-protocol.d.ts +6 -0
  424. package/dist/types/internal-urls/skc-protocol.d.ts +12 -0
  425. package/dist/types/internal-urls/skill-protocol.d.ts +13 -0
  426. package/dist/types/internal-urls/types.d.ts +109 -0
  427. package/dist/types/lsp/client.d.ts +66 -0
  428. package/dist/types/lsp/clients/biome-client.d.ts +16 -0
  429. package/dist/types/lsp/clients/index.d.ts +19 -0
  430. package/dist/types/lsp/clients/lsp-linter-client.d.ts +16 -0
  431. package/dist/types/lsp/clients/swiftlint-client.d.ts +20 -0
  432. package/dist/types/lsp/config.d.ts +65 -0
  433. package/dist/types/lsp/edits.d.ts +23 -0
  434. package/dist/types/lsp/index.d.ts +130 -0
  435. package/dist/types/lsp/lspmux.d.ts +58 -0
  436. package/dist/types/lsp/render.d.ts +32 -0
  437. package/dist/types/lsp/startup-events.d.ts +12 -0
  438. package/dist/types/lsp/types.d.ts +306 -0
  439. package/dist/types/lsp/utils.d.ts +108 -0
  440. package/dist/types/main.d.ts +139 -0
  441. package/dist/types/memories/index.d.ts +28 -0
  442. package/dist/types/memories/storage.d.ts +110 -0
  443. package/dist/types/memory-backend/index.d.ts +4 -0
  444. package/dist/types/memory-backend/local-backend.d.ts +9 -0
  445. package/dist/types/memory-backend/off-backend.d.ts +7 -0
  446. package/dist/types/memory-backend/resolve.d.ts +15 -0
  447. package/dist/types/memory-backend/types.d.ts +61 -0
  448. package/dist/types/migrate/action-planner.d.ts +11 -0
  449. package/dist/types/migrate/adapters/claude-code.d.ts +2 -0
  450. package/dist/types/migrate/adapters/codex.d.ts +5 -0
  451. package/dist/types/migrate/adapters/index.d.ts +45 -0
  452. package/dist/types/migrate/adapters/opencode.d.ts +2 -0
  453. package/dist/types/migrate/executor.d.ts +2 -0
  454. package/dist/types/migrate/mcp-mapper.d.ts +20 -0
  455. package/dist/types/migrate/report.d.ts +18 -0
  456. package/dist/types/migrate/skill-normalizer.d.ts +27 -0
  457. package/dist/types/migrate/types.d.ts +126 -0
  458. package/dist/types/modes/acp/acp-agent.d.ts +78 -0
  459. package/dist/types/modes/acp/acp-client-bridge.d.ts +9 -0
  460. package/dist/types/modes/acp/acp-event-mapper.d.ts +36 -0
  461. package/dist/types/modes/acp/acp-mode.d.ts +17 -0
  462. package/dist/types/modes/acp/index.d.ts +2 -0
  463. package/dist/types/modes/acp/terminal-auth.d.ts +6 -0
  464. package/dist/types/modes/bridge/auth.d.ts +12 -0
  465. package/dist/types/modes/bridge/bridge-client-bridge.d.ts +9 -0
  466. package/dist/types/modes/bridge/bridge-mode.d.ts +47 -0
  467. package/dist/types/modes/bridge/bridge-ui-context.d.ts +88 -0
  468. package/dist/types/modes/bridge/event-stream.d.ts +8 -0
  469. package/dist/types/modes/components/agent-dashboard.d.ts +21 -0
  470. package/dist/types/modes/components/assistant-message.d.ts +20 -0
  471. package/dist/types/modes/components/bash-execution.d.ts +29 -0
  472. package/dist/types/modes/components/bordered-loader.d.ts +11 -0
  473. package/dist/types/modes/components/branch-summary-message.d.ts +13 -0
  474. package/dist/types/modes/components/btw-panel.d.ts +16 -0
  475. package/dist/types/modes/components/compaction-summary-message.d.ts +13 -0
  476. package/dist/types/modes/components/countdown-timer.d.ts +14 -0
  477. package/dist/types/modes/components/custom-editor.d.ts +69 -0
  478. package/dist/types/modes/components/custom-message.d.ts +15 -0
  479. package/dist/types/modes/components/custom-model-preset-wizard.d.ts +12 -0
  480. package/dist/types/modes/components/custom-provider-wizard.d.ts +10 -0
  481. package/dist/types/modes/components/diff.d.ts +11 -0
  482. package/dist/types/modes/components/dynamic-border.d.ts +14 -0
  483. package/dist/types/modes/components/eval-execution.d.ts +23 -0
  484. package/dist/types/modes/components/execution-shared.d.ts +46 -0
  485. package/dist/types/modes/components/extensions/extension-dashboard.d.ts +26 -0
  486. package/dist/types/modes/components/extensions/extension-list.d.ts +39 -0
  487. package/dist/types/modes/components/extensions/index.d.ts +8 -0
  488. package/dist/types/modes/components/extensions/inspector-panel.d.ts +8 -0
  489. package/dist/types/modes/components/extensions/state-manager.d.ts +50 -0
  490. package/dist/types/modes/components/extensions/types.d.ts +151 -0
  491. package/dist/types/modes/components/footer.d.ts +30 -0
  492. package/dist/types/modes/components/history-search.d.ts +7 -0
  493. package/dist/types/modes/components/hook-editor.d.ts +18 -0
  494. package/dist/types/modes/components/hook-input.d.ts +15 -0
  495. package/dist/types/modes/components/hook-message.d.ts +15 -0
  496. package/dist/types/modes/components/hook-selector.d.ts +59 -0
  497. package/dist/types/modes/components/index.d.ts +35 -0
  498. package/dist/types/modes/components/irc-sidebar.d.ts +32 -0
  499. package/dist/types/modes/components/jobs-overlay-model.d.ts +31 -0
  500. package/dist/types/modes/components/jobs-overlay.d.ts +30 -0
  501. package/dist/types/modes/components/keybinding-hints.d.ts +40 -0
  502. package/dist/types/modes/components/login-dialog.d.ts +32 -0
  503. package/dist/types/modes/components/message-frame.d.ts +42 -0
  504. package/dist/types/modes/components/model-selector.d.ts +60 -0
  505. package/dist/types/modes/components/oauth-selector.d.ts +17 -0
  506. package/dist/types/modes/components/pet-selector.d.ts +11 -0
  507. package/dist/types/modes/components/plugin-selector.d.ts +26 -0
  508. package/dist/types/modes/components/plugin-settings.d.ts +66 -0
  509. package/dist/types/modes/components/provider-onboarding-selector.d.ts +7 -0
  510. package/dist/types/modes/components/queue-mode-selector.d.ts +9 -0
  511. package/dist/types/modes/components/queued-message-selector.d.ts +12 -0
  512. package/dist/types/modes/components/read-tool-group.d.ts +30 -0
  513. package/dist/types/modes/components/runtime-mcp-add-wizard.d.ts +26 -0
  514. package/dist/types/modes/components/sayknow-pet-widget.d.ts +59 -0
  515. package/dist/types/modes/components/session-observer-overlay.d.ts +11 -0
  516. package/dist/types/modes/components/session-selector.d.ts +43 -0
  517. package/dist/types/modes/components/settings-defs.d.ts +50 -0
  518. package/dist/types/modes/components/settings-selector.d.ts +64 -0
  519. package/dist/types/modes/components/show-images-selector.d.ts +9 -0
  520. package/dist/types/modes/components/skill-hud/render.d.ts +2 -0
  521. package/dist/types/modes/components/skill-message.d.ts +10 -0
  522. package/dist/types/modes/components/status-line/context-thresholds.d.ts +4 -0
  523. package/dist/types/modes/components/status-line/git-utils.d.ts +28 -0
  524. package/dist/types/modes/components/status-line/index.d.ts +4 -0
  525. package/dist/types/modes/components/status-line/presets.d.ts +3 -0
  526. package/dist/types/modes/components/status-line/segments.d.ts +5 -0
  527. package/dist/types/modes/components/status-line/separators.d.ts +3 -0
  528. package/dist/types/modes/components/status-line/token-rate.d.ts +10 -0
  529. package/dist/types/modes/components/status-line/types.d.ts +83 -0
  530. package/dist/types/modes/components/status-line.d.ts +94 -0
  531. package/dist/types/modes/components/theme-selector.d.ts +10 -0
  532. package/dist/types/modes/components/thinking-selector.d.ts +15 -0
  533. package/dist/types/modes/components/todo-reminder.d.ts +13 -0
  534. package/dist/types/modes/components/tool-execution.d.ts +55 -0
  535. package/dist/types/modes/components/tree-selector.d.ts +31 -0
  536. package/dist/types/modes/components/ttsr-notification.d.ts +13 -0
  537. package/dist/types/modes/components/two-column-body.d.ts +9 -0
  538. package/dist/types/modes/components/user-message-selector.d.ts +28 -0
  539. package/dist/types/modes/components/user-message.d.ts +8 -0
  540. package/dist/types/modes/components/visual-truncate.d.ts +19 -0
  541. package/dist/types/modes/components/welcome.d.ts +46 -0
  542. package/dist/types/modes/controllers/btw-controller.d.ts +10 -0
  543. package/dist/types/modes/controllers/command-controller-shared.d.ts +47 -0
  544. package/dist/types/modes/controllers/command-controller.d.ts +40 -0
  545. package/dist/types/modes/controllers/event-controller.d.ts +21 -0
  546. package/dist/types/modes/controllers/extension-ui-controller.d.ts +80 -0
  547. package/dist/types/modes/controllers/input-controller.d.ts +42 -0
  548. package/dist/types/modes/controllers/runtime-mcp-command-controller.d.ts +10 -0
  549. package/dist/types/modes/controllers/selector-controller.d.ts +68 -0
  550. package/dist/types/modes/controllers/ssh-command-controller.d.ts +10 -0
  551. package/dist/types/modes/controllers/todo-command-controller.d.ts +7 -0
  552. package/dist/types/modes/emoji-autocomplete.d.ts +16 -0
  553. package/dist/types/modes/index.d.ts +10 -0
  554. package/dist/types/modes/interactive-mode.d.ts +297 -0
  555. package/dist/types/modes/irc-observation-ledger.d.ts +22 -0
  556. package/dist/types/modes/jobs-observer.d.ts +57 -0
  557. package/dist/types/modes/oauth-manual-input.d.ts +8 -0
  558. package/dist/types/modes/print-mode.d.ts +44 -0
  559. package/dist/types/modes/prompt-action-autocomplete.d.ts +50 -0
  560. package/dist/types/modes/rpc/host-tools.d.ts +1 -0
  561. package/dist/types/modes/rpc/host-uris.d.ts +1 -0
  562. package/dist/types/modes/rpc/rpc-client.d.ts +299 -0
  563. package/dist/types/modes/rpc/rpc-mode.d.ts +86 -0
  564. package/dist/types/modes/rpc/rpc-socket-security.d.ts +10 -0
  565. package/dist/types/modes/rpc/rpc-types.d.ts +810 -0
  566. package/dist/types/modes/runtime-init.d.ts +21 -0
  567. package/dist/types/modes/session-observer-registry.d.ts +26 -0
  568. package/dist/types/modes/shared/agent-wire/approval-gate.d.ts +57 -0
  569. package/dist/types/modes/shared/agent-wire/command-contract.d.ts +18 -0
  570. package/dist/types/modes/shared/agent-wire/command-dispatch.d.ts +37 -0
  571. package/dist/types/modes/shared/agent-wire/command-validation.d.ts +2 -0
  572. package/dist/types/modes/shared/agent-wire/deep-interview-gate.d.ts +102 -0
  573. package/dist/types/modes/shared/agent-wire/event-contract.d.ts +103 -0
  574. package/dist/types/modes/shared/agent-wire/event-envelope.d.ts +60 -0
  575. package/dist/types/modes/shared/agent-wire/event-observation.d.ts +37 -0
  576. package/dist/types/modes/shared/agent-wire/handshake.d.ts +56 -0
  577. package/dist/types/modes/shared/agent-wire/host-tool-bridge.d.ts +16 -0
  578. package/dist/types/modes/shared/agent-wire/host-uri-bridge.d.ts +17 -0
  579. package/dist/types/modes/shared/agent-wire/protocol.d.ts +25 -0
  580. package/dist/types/modes/shared/agent-wire/responses.d.ts +4 -0
  581. package/dist/types/modes/shared/agent-wire/scopes.d.ts +18 -0
  582. package/dist/types/modes/shared/agent-wire/session-registry.d.ts +25 -0
  583. package/dist/types/modes/shared/agent-wire/ui-request-broker.d.ts +42 -0
  584. package/dist/types/modes/shared/agent-wire/ui-result.d.ts +27 -0
  585. package/dist/types/modes/shared/agent-wire/unattended-action-policy.d.ts +29 -0
  586. package/dist/types/modes/shared/agent-wire/unattended-audit.d.ts +68 -0
  587. package/dist/types/modes/shared/agent-wire/unattended-run-controller.d.ts +166 -0
  588. package/dist/types/modes/shared/agent-wire/unattended-session.d.ts +127 -0
  589. package/dist/types/modes/shared/agent-wire/workflow-gate-broker.d.ts +154 -0
  590. package/dist/types/modes/shared/agent-wire/workflow-gate-schema.d.ts +39 -0
  591. package/dist/types/modes/shared.d.ts +15 -0
  592. package/dist/types/modes/slash-command-visibility.d.ts +1 -0
  593. package/dist/types/modes/theme/defaults/index.d.ts +652 -0
  594. package/dist/types/modes/theme/mermaid-cache.d.ts +9 -0
  595. package/dist/types/modes/theme/shimmer.d.ts +38 -0
  596. package/dist/types/modes/theme/theme.d.ts +275 -0
  597. package/dist/types/modes/tmux-scroll.d.ts +18 -0
  598. package/dist/types/modes/types.d.ts +318 -0
  599. package/dist/types/modes/utils/abort-message.d.ts +4 -0
  600. package/dist/types/modes/utils/context-usage.d.ts +36 -0
  601. package/dist/types/modes/utils/hotkeys-markdown.d.ts +5 -0
  602. package/dist/types/modes/utils/injected-user-submission.d.ts +52 -0
  603. package/dist/types/modes/utils/irc-message.d.ts +38 -0
  604. package/dist/types/modes/utils/keybinding-matchers.d.ts +10 -0
  605. package/dist/types/modes/utils/terminal-bell.d.ts +3 -0
  606. package/dist/types/modes/utils/tools-markdown.d.ts +5 -0
  607. package/dist/types/modes/utils/ui-helpers.d.ts +75 -0
  608. package/dist/types/notifications/attachment-registry.d.ts +17 -0
  609. package/dist/types/notifications/chat-adapters.d.ts +9 -0
  610. package/dist/types/notifications/config-commands.d.ts +64 -0
  611. package/dist/types/notifications/config.d.ts +132 -0
  612. package/dist/types/notifications/daemon-paths.d.ts +17 -0
  613. package/dist/types/notifications/engine.d.ts +59 -0
  614. package/dist/types/notifications/helpers.d.ts +55 -0
  615. package/dist/types/notifications/html-format.d.ts +75 -0
  616. package/dist/types/notifications/index.d.ts +219 -0
  617. package/dist/types/notifications/lifecycle-commands.d.ts +69 -0
  618. package/dist/types/notifications/lifecycle-control-runtime.d.ts +107 -0
  619. package/dist/types/notifications/lifecycle-orchestrator.d.ts +144 -0
  620. package/dist/types/notifications/managed-daemon.d.ts +48 -0
  621. package/dist/types/notifications/notification-service.d.ts +144 -0
  622. package/dist/types/notifications/operator-runtime.d.ts +52 -0
  623. package/dist/types/notifications/rate-limit-pool.d.ts +113 -0
  624. package/dist/types/notifications/recent-activity.d.ts +39 -0
  625. package/dist/types/notifications/reply-sent-store.d.ts +53 -0
  626. package/dist/types/notifications/rich-draft.d.ts +68 -0
  627. package/dist/types/notifications/rich-render.d.ts +90 -0
  628. package/dist/types/notifications/telegram-cli.d.ts +19 -0
  629. package/dist/types/notifications/telegram-daemon-cli.d.ts +28 -0
  630. package/dist/types/notifications/telegram-daemon-control.d.ts +70 -0
  631. package/dist/types/notifications/telegram-daemon.d.ts +558 -0
  632. package/dist/types/notifications/telegram-reference.d.ts +136 -0
  633. package/dist/types/notifications/threaded-inbound.d.ts +77 -0
  634. package/dist/types/notifications/threaded-render.d.ts +88 -0
  635. package/dist/types/notifications/topic-registry.d.ts +89 -0
  636. package/dist/types/plan-mode/approved-plan.d.ts +49 -0
  637. package/dist/types/plan-mode/state.d.ts +6 -0
  638. package/dist/types/registry/agent-registry.d.ts +64 -0
  639. package/dist/types/reminders/star-reminder.d.ts +115 -0
  640. package/dist/types/research-plan/index.d.ts +1 -0
  641. package/dist/types/research-plan/ledger.d.ts +33 -0
  642. package/dist/types/rlm/artifacts.d.ts +9 -0
  643. package/dist/types/rlm/complete-research-tool.d.ts +35 -0
  644. package/dist/types/rlm/data-context.d.ts +6 -0
  645. package/dist/types/rlm/index.d.ts +47 -0
  646. package/dist/types/rlm/notebook.d.ts +12 -0
  647. package/dist/types/rlm/preset.d.ts +23 -0
  648. package/dist/types/rlm/python-tool.d.ts +16 -0
  649. package/dist/types/rlm/report.d.ts +14 -0
  650. package/dist/types/rlm/types.d.ts +37 -0
  651. package/dist/types/runtime/process-lifecycle.d.ts +108 -0
  652. package/dist/types/runtime-api-key.d.ts +7 -0
  653. package/dist/types/runtime-credential-selector.d.ts +7 -0
  654. package/dist/types/runtime-mcp/client.d.ts +74 -0
  655. package/dist/types/runtime-mcp/config-writer.d.ts +89 -0
  656. package/dist/types/runtime-mcp/config.d.ts +77 -0
  657. package/dist/types/runtime-mcp/discoverable-tool-metadata.d.ts +7 -0
  658. package/dist/types/runtime-mcp/index.d.ts +18 -0
  659. package/dist/types/runtime-mcp/json-rpc.d.ts +22 -0
  660. package/dist/types/runtime-mcp/loader.d.ts +45 -0
  661. package/dist/types/runtime-mcp/manager.d.ts +195 -0
  662. package/dist/types/runtime-mcp/oauth-discovery.d.ts +40 -0
  663. package/dist/types/runtime-mcp/oauth-flow.d.ts +59 -0
  664. package/dist/types/runtime-mcp/render.d.ts +25 -0
  665. package/dist/types/runtime-mcp/smithery-auth.d.ts +16 -0
  666. package/dist/types/runtime-mcp/smithery-connect.d.ts +38 -0
  667. package/dist/types/runtime-mcp/smithery-registry.d.ts +51 -0
  668. package/dist/types/runtime-mcp/tool-bridge.d.ts +86 -0
  669. package/dist/types/runtime-mcp/tool-cache.d.ts +8 -0
  670. package/dist/types/runtime-mcp/transports/http.d.ts +36 -0
  671. package/dist/types/runtime-mcp/transports/index.d.ts +5 -0
  672. package/dist/types/runtime-mcp/transports/stdio.d.ts +29 -0
  673. package/dist/types/runtime-mcp/types.d.ts +349 -0
  674. package/dist/types/sdk.d.ts +256 -0
  675. package/dist/types/secrets/index.d.ts +9 -0
  676. package/dist/types/secrets/obfuscator.d.ts +23 -0
  677. package/dist/types/secrets/regex.d.ts +2 -0
  678. package/dist/types/session/agent-session.d.ts +1238 -0
  679. package/dist/types/session/agent-storage.d.ts +101 -0
  680. package/dist/types/session/artifacts.d.ts +64 -0
  681. package/dist/types/session/auth-broker-config.d.ts +13 -0
  682. package/dist/types/session/auth-storage.d.ts +6 -0
  683. package/dist/types/session/blob-store.d.ts +160 -0
  684. package/dist/types/session/cache-economics.d.ts +79 -0
  685. package/dist/types/session/client-bridge.d.ts +88 -0
  686. package/dist/types/session/context-estimation.d.ts +31 -0
  687. package/dist/types/session/contribution-prep.d.ts +47 -0
  688. package/dist/types/session/file-mention-pruning.d.ts +8 -0
  689. package/dist/types/session/history-storage.d.ts +16 -0
  690. package/dist/types/session/messages.d.ts +169 -0
  691. package/dist/types/session/provider-safety-stop.d.ts +5 -0
  692. package/dist/types/session/session-dump-format.d.ts +22 -0
  693. package/dist/types/session/session-manager.d.ts +781 -0
  694. package/dist/types/session/session-storage.d.ts +230 -0
  695. package/dist/types/session/streaming-output.d.ts +209 -0
  696. package/dist/types/session/tool-choice-queue.d.ts +84 -0
  697. package/dist/types/session/yield-queue.d.ts +24 -0
  698. package/dist/types/setup/credential-auto-import.d.ts +63 -0
  699. package/dist/types/setup/credential-import.d.ts +82 -0
  700. package/dist/types/setup/hermes-setup.d.ts +78 -0
  701. package/dist/types/setup/host-plugin-setup.d.ts +39 -0
  702. package/dist/types/setup/model-onboarding-guidance.d.ts +9 -0
  703. package/dist/types/setup/provider-onboarding.d.ts +52 -0
  704. package/dist/types/skc-runtime/cli-write-receipt.d.ts +24 -0
  705. package/dist/types/skc-runtime/deep-interview-ambiguity.d.ts +39 -0
  706. package/dist/types/skc-runtime/deep-interview-recorder.d.ts +114 -0
  707. package/dist/types/skc-runtime/deep-interview-runtime.d.ts +36 -0
  708. package/dist/types/skc-runtime/deep-interview-state.d.ts +127 -0
  709. package/dist/types/skc-runtime/gc-render.d.ts +6 -0
  710. package/dist/types/skc-runtime/gc-runtime.d.ts +134 -0
  711. package/dist/types/skc-runtime/goal-mode-request.d.ts +53 -0
  712. package/dist/types/skc-runtime/launch-tmux.d.ts +78 -0
  713. package/dist/types/skc-runtime/launch-worktree.d.ts +46 -0
  714. package/dist/types/skc-runtime/ledger-event-renderer.d.ts +68 -0
  715. package/dist/types/skc-runtime/psmux-detect.d.ts +78 -0
  716. package/dist/types/skc-runtime/ralplan-runtime.d.ts +26 -0
  717. package/dist/types/skc-runtime/restricted-role-agent-bash.d.ts +3 -0
  718. package/dist/types/skc-runtime/session-layout.d.ts +59 -0
  719. package/dist/types/skc-runtime/session-resolution.d.ts +47 -0
  720. package/dist/types/skc-runtime/session-state-sidecar.d.ts +70 -0
  721. package/dist/types/skc-runtime/state-graph.d.ts +4 -0
  722. package/dist/types/skc-runtime/state-migrations.d.ts +33 -0
  723. package/dist/types/skc-runtime/state-renderer.d.ts +70 -0
  724. package/dist/types/skc-runtime/state-runtime.d.ts +38 -0
  725. package/dist/types/skc-runtime/state-schema.d.ts +319 -0
  726. package/dist/types/skc-runtime/state-validation.d.ts +6 -0
  727. package/dist/types/skc-runtime/state-writer.d.ts +244 -0
  728. package/dist/types/skc-runtime/team-gc.d.ts +7 -0
  729. package/dist/types/skc-runtime/team-runtime.d.ts +355 -0
  730. package/dist/types/skc-runtime/tmux-common.d.ts +111 -0
  731. package/dist/types/skc-runtime/tmux-gc.d.ts +7 -0
  732. package/dist/types/skc-runtime/tmux-owner-isolation-cli.d.ts +5 -0
  733. package/dist/types/skc-runtime/tmux-owner-isolation.d.ts +309 -0
  734. package/dist/types/skc-runtime/tmux-sessions.d.ts +94 -0
  735. package/dist/types/skc-runtime/ultragoal-guard.d.ts +93 -0
  736. package/dist/types/skc-runtime/ultragoal-receipt-freshness.d.ts +42 -0
  737. package/dist/types/skc-runtime/ultragoal-runtime.d.ts +410 -0
  738. package/dist/types/skc-runtime/workflow-command-ref.d.ts +43 -0
  739. package/dist/types/skc-runtime/workflow-manifest.d.ts +54 -0
  740. package/dist/types/skill-state/active-state.d.ts +126 -0
  741. package/dist/types/skill-state/canonical-skills.d.ts +3 -0
  742. package/dist/types/skill-state/deep-interview-mutation-guard.d.ts +38 -0
  743. package/dist/types/skill-state/initial-phase.d.ts +12 -0
  744. package/dist/types/skill-state/workflow-hud.d.ts +83 -0
  745. package/dist/types/skill-state/workflow-state-contract.d.ts +57 -0
  746. package/dist/types/skill-state/workflow-state-version.d.ts +3 -0
  747. package/dist/types/slash-commands/acp-builtins.d.ts +18 -0
  748. package/dist/types/slash-commands/builtin-registry.d.ts +24 -0
  749. package/dist/types/slash-commands/helpers/context-report.d.ts +7 -0
  750. package/dist/types/slash-commands/helpers/fast-status-report.d.ts +82 -0
  751. package/dist/types/slash-commands/helpers/format.d.ts +10 -0
  752. package/dist/types/slash-commands/helpers/mcp.d.ts +3 -0
  753. package/dist/types/slash-commands/helpers/parse.d.ts +33 -0
  754. package/dist/types/slash-commands/helpers/ssh.d.ts +3 -0
  755. package/dist/types/slash-commands/helpers/todo.d.ts +3 -0
  756. package/dist/types/slash-commands/helpers/usage-report.d.ts +7 -0
  757. package/dist/types/slash-commands/types.d.ts +120 -0
  758. package/dist/types/ssh/config-writer.d.ts +49 -0
  759. package/dist/types/ssh/connection-manager.d.ts +33 -0
  760. package/dist/types/ssh/ssh-executor.d.ts +37 -0
  761. package/dist/types/ssh/sshfs-mount.d.ts +6 -0
  762. package/dist/types/ssh/utils.d.ts +2 -0
  763. package/dist/types/stt/downloader.d.ts +9 -0
  764. package/dist/types/stt/index.d.ts +3 -0
  765. package/dist/types/stt/recorder.d.ts +13 -0
  766. package/dist/types/stt/setup.d.ts +18 -0
  767. package/dist/types/stt/stt-controller.d.ts +16 -0
  768. package/dist/types/stt/transcriber.d.ts +16 -0
  769. package/dist/types/system-prompt.d.ts +118 -0
  770. package/dist/types/task/agents.d.ts +28 -0
  771. package/dist/types/task/commands.d.ts +35 -0
  772. package/dist/types/task/discovery.d.ts +19 -0
  773. package/dist/types/task/executor.d.ts +127 -0
  774. package/dist/types/task/fork-context-advisory.d.ts +13 -0
  775. package/dist/types/task/fork-context-budget.d.ts +7 -0
  776. package/dist/types/task/id.d.ts +7 -0
  777. package/dist/types/task/index.d.ts +43 -0
  778. package/dist/types/task/name-generator.d.ts +16 -0
  779. package/dist/types/task/output-manager.d.ts +36 -0
  780. package/dist/types/task/parallel.d.ts +34 -0
  781. package/dist/types/task/receipt.d.ts +89 -0
  782. package/dist/types/task/render.d.ts +28 -0
  783. package/dist/types/task/roi-reconciliation.d.ts +27 -0
  784. package/dist/types/task/simple-mode.d.ts +8 -0
  785. package/dist/types/task/skc-command.d.ts +7 -0
  786. package/dist/types/task/spawn-gate.d.ts +29 -0
  787. package/dist/types/task/subprocess-tool-registry.d.ts +72 -0
  788. package/dist/types/task/token-log.d.ts +30 -0
  789. package/dist/types/task/token-log.test.d.ts +1 -0
  790. package/dist/types/task/types.d.ts +516 -0
  791. package/dist/types/task/worktree.d.ts +94 -0
  792. package/dist/types/thinking-metadata.d.ts +16 -0
  793. package/dist/types/thinking.d.ts +22 -0
  794. package/dist/types/tool-discovery/tool-index.d.ts +112 -0
  795. package/dist/types/tools/archive-reader.d.ts +40 -0
  796. package/dist/types/tools/ask-answer-registry.d.ts +18 -0
  797. package/dist/types/tools/ask.d.ts +123 -0
  798. package/dist/types/tools/ast-edit.d.ts +77 -0
  799. package/dist/types/tools/ast-grep.d.ts +69 -0
  800. package/dist/types/tools/auto-generated-guard.d.ts +17 -0
  801. package/dist/types/tools/bash-allowed-prefixes.d.ts +10 -0
  802. package/dist/types/tools/bash-command-fixup.d.ts +11 -0
  803. package/dist/types/tools/bash-interactive.d.ts +16 -0
  804. package/dist/types/tools/bash-interceptor.d.ts +24 -0
  805. package/dist/types/tools/bash-pty-selection.d.ts +7 -0
  806. package/dist/types/tools/bash-skill-urls.d.ts +31 -0
  807. package/dist/types/tools/bash.d.ts +157 -0
  808. package/dist/types/tools/bisect.d.ts +81 -0
  809. package/dist/types/tools/browser/actions.d.ts +54 -0
  810. package/dist/types/tools/browser/attach.d.ts +50 -0
  811. package/dist/types/tools/browser/launch.d.ts +62 -0
  812. package/dist/types/tools/browser/readable.d.ts +17 -0
  813. package/dist/types/tools/browser/registry.d.ts +57 -0
  814. package/dist/types/tools/browser/render.d.ts +53 -0
  815. package/dist/types/tools/browser/tab-protocol.d.ts +144 -0
  816. package/dist/types/tools/browser/tab-supervisor.d.ts +109 -0
  817. package/dist/types/tools/browser/tab-worker-entry.d.ts +1 -0
  818. package/dist/types/tools/browser/tab-worker.d.ts +19 -0
  819. package/dist/types/tools/browser.d.ts +211 -0
  820. package/dist/types/tools/calculator.d.ts +76 -0
  821. package/dist/types/tools/checkpoint.d.ts +63 -0
  822. package/dist/types/tools/composer-bash-policy.d.ts +14 -0
  823. package/dist/types/tools/computer/render.d.ts +17 -0
  824. package/dist/types/tools/computer-gc.d.ts +23 -0
  825. package/dist/types/tools/computer.d.ts +465 -0
  826. package/dist/types/tools/conflict-detect.d.ts +205 -0
  827. package/dist/types/tools/context.d.ts +19 -0
  828. package/dist/types/tools/cron.d.ts +91 -0
  829. package/dist/types/tools/debug.d.ts +209 -0
  830. package/dist/types/tools/eval.d.ts +108 -0
  831. package/dist/types/tools/fetch.d.ts +84 -0
  832. package/dist/types/tools/file-recorder.d.ts +13 -0
  833. package/dist/types/tools/find.d.ts +95 -0
  834. package/dist/types/tools/fs-cache-invalidation.d.ts +15 -0
  835. package/dist/types/tools/gh-format.d.ts +6 -0
  836. package/dist/types/tools/gh-renderer.d.ts +25 -0
  837. package/dist/types/tools/gh.d.ts +356 -0
  838. package/dist/types/tools/github-cache.d.ts +103 -0
  839. package/dist/types/tools/grouped-file-output.d.ts +36 -0
  840. package/dist/types/tools/hindsight-recall.d.ts +21 -0
  841. package/dist/types/tools/hindsight-reflect.d.ts +23 -0
  842. package/dist/types/tools/hindsight-retain.d.ts +27 -0
  843. package/dist/types/tools/image-gen.d.ts +79 -0
  844. package/dist/types/tools/index.d.ts +371 -0
  845. package/dist/types/tools/irc.d.ts +79 -0
  846. package/dist/types/tools/job.d.ts +78 -0
  847. package/dist/types/tools/json-tree.d.ts +23 -0
  848. package/dist/types/tools/jtd-to-json-schema.d.ts +29 -0
  849. package/dist/types/tools/jtd-to-typescript.d.ts +26 -0
  850. package/dist/types/tools/jtd-utils.d.ts +42 -0
  851. package/dist/types/tools/list-limit.d.ts +12 -0
  852. package/dist/types/tools/match-line-format.d.ts +11 -0
  853. package/dist/types/tools/monitor.d.ts +54 -0
  854. package/dist/types/tools/output-meta.d.ts +204 -0
  855. package/dist/types/tools/path-utils.d.ts +147 -0
  856. package/dist/types/tools/plan-mode-guard.d.ts +18 -0
  857. package/dist/types/tools/read.d.ts +85 -0
  858. package/dist/types/tools/recipe/index.d.ts +45 -0
  859. package/dist/types/tools/recipe/render.d.ts +36 -0
  860. package/dist/types/tools/recipe/runner.d.ts +60 -0
  861. package/dist/types/tools/recipe/runners/cargo.d.ts +16 -0
  862. package/dist/types/tools/recipe/runners/index.d.ts +2 -0
  863. package/dist/types/tools/recipe/runners/just.d.ts +2 -0
  864. package/dist/types/tools/recipe/runners/make.d.ts +2 -0
  865. package/dist/types/tools/recipe/runners/pkg.d.ts +2 -0
  866. package/dist/types/tools/recipe/runners/task.d.ts +2 -0
  867. package/dist/types/tools/render-mermaid.d.ts +37 -0
  868. package/dist/types/tools/render-utils.d.ts +158 -0
  869. package/dist/types/tools/renderers.d.ts +26 -0
  870. package/dist/types/tools/resolve.d.ts +80 -0
  871. package/dist/types/tools/resource-gc.d.ts +54 -0
  872. package/dist/types/tools/review.d.ts +63 -0
  873. package/dist/types/tools/search-tool-bm25.d.ts +65 -0
  874. package/dist/types/tools/search.d.ts +93 -0
  875. package/dist/types/tools/skill-discovery.d.ts +40 -0
  876. package/dist/types/tools/skill.d.ts +48 -0
  877. package/dist/types/tools/sqlite-reader.d.ts +94 -0
  878. package/dist/types/tools/ssh.d.ts +67 -0
  879. package/dist/types/tools/subagent-render.d.ts +31 -0
  880. package/dist/types/tools/subagent.d.ts +117 -0
  881. package/dist/types/tools/telegram-send.d.ts +39 -0
  882. package/dist/types/tools/todo-write.d.ts +120 -0
  883. package/dist/types/tools/tool-errors.d.ts +33 -0
  884. package/dist/types/tools/tool-result.d.ts +30 -0
  885. package/dist/types/tools/tool-timeouts.d.ts +56 -0
  886. package/dist/types/tools/ultragoal-ask-guard.d.ts +12 -0
  887. package/dist/types/tools/vim.d.ts +58 -0
  888. package/dist/types/tools/write.d.ts +59 -0
  889. package/dist/types/tools/yield.d.ts +25 -0
  890. package/dist/types/tui/code-cell.d.ts +32 -0
  891. package/dist/types/tui/file-list.d.ts +22 -0
  892. package/dist/types/tui/hyperlink.d.ts +42 -0
  893. package/dist/types/tui/index.d.ts +11 -0
  894. package/dist/types/tui/output-block.d.ts +28 -0
  895. package/dist/types/tui/status-line.d.ts +18 -0
  896. package/dist/types/tui/tree-list.d.ts +19 -0
  897. package/dist/types/tui/types.d.ts +13 -0
  898. package/dist/types/tui/utils.d.ts +36 -0
  899. package/dist/types/utils/changelog.d.ts +37 -0
  900. package/dist/types/utils/clipboard.d.ts +22 -0
  901. package/dist/types/utils/cmux-workspace.d.ts +52 -0
  902. package/dist/types/utils/command-args.d.ts +9 -0
  903. package/dist/types/utils/commit-message-generator.d.ts +7 -0
  904. package/dist/types/utils/edit-mode.d.ts +13 -0
  905. package/dist/types/utils/event-bus.d.ts +6 -0
  906. package/dist/types/utils/external-editor.d.ts +19 -0
  907. package/dist/types/utils/file-display-mode.d.ts +27 -0
  908. package/dist/types/utils/file-mentions.d.ts +25 -0
  909. package/dist/types/utils/git.d.ts +393 -0
  910. package/dist/types/utils/image-loading.d.ts +26 -0
  911. package/dist/types/utils/image-resize.d.ts +39 -0
  912. package/dist/types/utils/lang-from-path.d.ts +8 -0
  913. package/dist/types/utils/linkedom.d.ts +4 -0
  914. package/dist/types/utils/markit.d.ts +7 -0
  915. package/dist/types/utils/open.d.ts +2 -0
  916. package/dist/types/utils/pasted-image-path.d.ts +32 -0
  917. package/dist/types/utils/session-color.d.ts +10 -0
  918. package/dist/types/utils/shell-snapshot.d.ts +5 -0
  919. package/dist/types/utils/sixel.d.ts +21 -0
  920. package/dist/types/utils/title-generator.d.ts +31 -0
  921. package/dist/types/utils/tool-choice.d.ts +20 -0
  922. package/dist/types/utils/tools-manager.d.ts +9 -0
  923. package/dist/types/vim/buffer.d.ts +41 -0
  924. package/dist/types/vim/commands.d.ts +6 -0
  925. package/dist/types/vim/engine.d.ts +47 -0
  926. package/dist/types/vim/parser.d.ts +3 -0
  927. package/dist/types/vim/render.d.ts +25 -0
  928. package/dist/types/vim/types.d.ts +182 -0
  929. package/dist/types/web/insane/bridge.d.ts +103 -0
  930. package/dist/types/web/insane/url-guard.d.ts +25 -0
  931. package/dist/types/web/kagi.d.ts +23 -0
  932. package/dist/types/web/parallel.d.ts +58 -0
  933. package/dist/types/web/scrapers/artifacthub.d.ts +6 -0
  934. package/dist/types/web/scrapers/arxiv.d.ts +5 -0
  935. package/dist/types/web/scrapers/aur.d.ts +5 -0
  936. package/dist/types/web/scrapers/biorxiv.d.ts +5 -0
  937. package/dist/types/web/scrapers/bluesky.d.ts +5 -0
  938. package/dist/types/web/scrapers/brew.d.ts +5 -0
  939. package/dist/types/web/scrapers/cheatsh.d.ts +8 -0
  940. package/dist/types/web/scrapers/chocolatey.d.ts +5 -0
  941. package/dist/types/web/scrapers/choosealicense.d.ts +2 -0
  942. package/dist/types/web/scrapers/cisa-kev.d.ts +5 -0
  943. package/dist/types/web/scrapers/clojars.d.ts +5 -0
  944. package/dist/types/web/scrapers/coingecko.d.ts +5 -0
  945. package/dist/types/web/scrapers/crates-io.d.ts +5 -0
  946. package/dist/types/web/scrapers/crossref.d.ts +2 -0
  947. package/dist/types/web/scrapers/devto.d.ts +5 -0
  948. package/dist/types/web/scrapers/discogs.d.ts +8 -0
  949. package/dist/types/web/scrapers/discourse.d.ts +5 -0
  950. package/dist/types/web/scrapers/dockerhub.d.ts +5 -0
  951. package/dist/types/web/scrapers/docs-rs.d.ts +2 -0
  952. package/dist/types/web/scrapers/fdroid.d.ts +5 -0
  953. package/dist/types/web/scrapers/firefox-addons.d.ts +2 -0
  954. package/dist/types/web/scrapers/flathub.d.ts +2 -0
  955. package/dist/types/web/scrapers/github-gist.d.ts +5 -0
  956. package/dist/types/web/scrapers/github.d.ts +12 -0
  957. package/dist/types/web/scrapers/gitlab.d.ts +5 -0
  958. package/dist/types/web/scrapers/go-pkg.d.ts +5 -0
  959. package/dist/types/web/scrapers/hackage.d.ts +5 -0
  960. package/dist/types/web/scrapers/hackernews.d.ts +2 -0
  961. package/dist/types/web/scrapers/hex.d.ts +5 -0
  962. package/dist/types/web/scrapers/huggingface.d.ts +2 -0
  963. package/dist/types/web/scrapers/iacr.d.ts +5 -0
  964. package/dist/types/web/scrapers/index.d.ts +84 -0
  965. package/dist/types/web/scrapers/jetbrains-marketplace.d.ts +2 -0
  966. package/dist/types/web/scrapers/lemmy.d.ts +2 -0
  967. package/dist/types/web/scrapers/lobsters.d.ts +5 -0
  968. package/dist/types/web/scrapers/mastodon.d.ts +5 -0
  969. package/dist/types/web/scrapers/maven.d.ts +6 -0
  970. package/dist/types/web/scrapers/mdn.d.ts +2 -0
  971. package/dist/types/web/scrapers/metacpan.d.ts +5 -0
  972. package/dist/types/web/scrapers/musicbrainz.d.ts +5 -0
  973. package/dist/types/web/scrapers/npm.d.ts +5 -0
  974. package/dist/types/web/scrapers/nuget.d.ts +5 -0
  975. package/dist/types/web/scrapers/nvd.d.ts +5 -0
  976. package/dist/types/web/scrapers/ollama.d.ts +2 -0
  977. package/dist/types/web/scrapers/open-vsx.d.ts +5 -0
  978. package/dist/types/web/scrapers/opencorporates.d.ts +5 -0
  979. package/dist/types/web/scrapers/openlibrary.d.ts +5 -0
  980. package/dist/types/web/scrapers/orcid.d.ts +5 -0
  981. package/dist/types/web/scrapers/osv.d.ts +5 -0
  982. package/dist/types/web/scrapers/packagist.d.ts +5 -0
  983. package/dist/types/web/scrapers/pub-dev.d.ts +5 -0
  984. package/dist/types/web/scrapers/pubmed.d.ts +5 -0
  985. package/dist/types/web/scrapers/pypi.d.ts +5 -0
  986. package/dist/types/web/scrapers/rawg.d.ts +2 -0
  987. package/dist/types/web/scrapers/readthedocs.d.ts +2 -0
  988. package/dist/types/web/scrapers/reddit.d.ts +5 -0
  989. package/dist/types/web/scrapers/repology.d.ts +5 -0
  990. package/dist/types/web/scrapers/rfc.d.ts +5 -0
  991. package/dist/types/web/scrapers/rubygems.d.ts +5 -0
  992. package/dist/types/web/scrapers/searchcode.d.ts +2 -0
  993. package/dist/types/web/scrapers/sec-edgar.d.ts +5 -0
  994. package/dist/types/web/scrapers/semantic-scholar.d.ts +2 -0
  995. package/dist/types/web/scrapers/snapcraft.d.ts +2 -0
  996. package/dist/types/web/scrapers/sourcegraph.d.ts +2 -0
  997. package/dist/types/web/scrapers/spdx.d.ts +5 -0
  998. package/dist/types/web/scrapers/spotify.d.ts +8 -0
  999. package/dist/types/web/scrapers/stackoverflow.d.ts +6 -0
  1000. package/dist/types/web/scrapers/terraform.d.ts +5 -0
  1001. package/dist/types/web/scrapers/tldr.d.ts +7 -0
  1002. package/dist/types/web/scrapers/twitter.d.ts +5 -0
  1003. package/dist/types/web/scrapers/types.d.ts +83 -0
  1004. package/dist/types/web/scrapers/utils.d.ts +32 -0
  1005. package/dist/types/web/scrapers/vimeo.d.ts +5 -0
  1006. package/dist/types/web/scrapers/vscode-marketplace.d.ts +5 -0
  1007. package/dist/types/web/scrapers/w3c.d.ts +2 -0
  1008. package/dist/types/web/scrapers/wikidata.d.ts +5 -0
  1009. package/dist/types/web/scrapers/wikipedia.d.ts +5 -0
  1010. package/dist/types/web/scrapers/youtube.d.ts +13 -0
  1011. package/dist/types/web/search/index.d.ts +118 -0
  1012. package/dist/types/web/search/provider.d.ts +55 -0
  1013. package/dist/types/web/search/providers/anthropic.d.ts +32 -0
  1014. package/dist/types/web/search/providers/base.d.ts +90 -0
  1015. package/dist/types/web/search/providers/brave.d.ts +27 -0
  1016. package/dist/types/web/search/providers/codex.d.ts +35 -0
  1017. package/dist/types/web/search/providers/duckduckgo.d.ts +57 -0
  1018. package/dist/types/web/search/providers/exa.d.ts +52 -0
  1019. package/dist/types/web/search/providers/gemini.d.ts +57 -0
  1020. package/dist/types/web/search/providers/insane.d.ts +53 -0
  1021. package/dist/types/web/search/providers/jina.d.ts +26 -0
  1022. package/dist/types/web/search/providers/kagi.d.ts +24 -0
  1023. package/dist/types/web/search/providers/kimi.d.ts +27 -0
  1024. package/dist/types/web/search/providers/openai-compatible.d.ts +9 -0
  1025. package/dist/types/web/search/providers/parallel.d.ts +15 -0
  1026. package/dist/types/web/search/providers/perplexity.d.ts +38 -0
  1027. package/dist/types/web/search/providers/searxng.d.ts +44 -0
  1028. package/dist/types/web/search/providers/synthetic.d.ts +21 -0
  1029. package/dist/types/web/search/providers/tavily.d.ts +29 -0
  1030. package/dist/types/web/search/providers/text-citations.d.ts +23 -0
  1031. package/dist/types/web/search/providers/utils.d.ts +88 -0
  1032. package/dist/types/web/search/providers/xai.d.ts +64 -0
  1033. package/dist/types/web/search/providers/zai.d.ts +28 -0
  1034. package/dist/types/web/search/render.d.ts +36 -0
  1035. package/dist/types/web/search/types.d.ts +372 -0
  1036. package/dist/types/web/search/utils.d.ts +4 -0
  1037. package/dist/types/workflow/workflow-intent-diff.d.ts +25 -0
  1038. package/dist/types/workflow/workflow-intent-report-consumer.d.ts +50 -0
  1039. package/dist/types/workflow/workflow-intent-report-schema.d.ts +2 -0
  1040. package/dist/types/workflow/workflow-intent-report.d.ts +48 -0
  1041. package/dist/types/workspace-tree.d.ts +42 -0
  1042. package/package.json +116 -115
  1043. package/scripts/generate-docs-index.ts +0 -2
  1044. package/src/cli.ts +1 -0
  1045. package/src/config/settings.ts +96 -45
  1046. package/src/coordinator/contract.ts +1 -0
  1047. package/src/coordinator-mcp/policy.ts +30 -0
  1048. package/src/coordinator-mcp/server.ts +294 -66
  1049. package/src/coordinator-mcp/session-reaper.ts +129 -0
  1050. package/src/extensibility/extensions/runner.ts +1 -1
  1051. package/src/extensibility/extensions/types.ts +3 -1
  1052. package/src/internal-urls/docs-index.generated.ts +6 -5
  1053. package/src/main.ts +3 -5
  1054. package/src/modes/acp/acp-agent.ts +2 -2
  1055. package/src/modes/components/footer.ts +3 -3
  1056. package/src/modes/components/status-line/segments.ts +14 -7
  1057. package/src/modes/components/status-line/types.ts +1 -1
  1058. package/src/modes/components/status-line.ts +4 -171
  1059. package/src/modes/controllers/extension-ui-controller.ts +1 -1
  1060. package/src/modes/interactive-mode.ts +16 -0
  1061. package/src/modes/print-mode.ts +228 -92
  1062. package/src/modes/rpc/rpc-client.ts +58 -1
  1063. package/src/modes/rpc/rpc-mode.ts +286 -85
  1064. package/src/modes/rpc/rpc-types.ts +15 -1
  1065. package/src/modes/shared/agent-wire/command-dispatch.ts +33 -1
  1066. package/src/modes/shared/agent-wire/command-validation.ts +10 -0
  1067. package/src/modes/shared/agent-wire/scopes.ts +1 -0
  1068. package/src/modes/utils/context-usage.ts +56 -92
  1069. package/src/session/agent-session.ts +287 -85
  1070. package/src/session/context-estimation.ts +91 -0
  1071. package/src/slash-commands/builtin-registry.ts +12 -2
  1072. package/src/slash-commands/helpers/context-report.ts +26 -4
@@ -2,7 +2,9 @@ import { randomUUID } from "node:crypto";
2
2
  import * as nodeFs from "node:fs";
3
3
  import * as fs from "node:fs/promises";
4
4
  import * as path from "node:path";
5
+ import { isKnownSinkPeerClosedError } from "@sayknow-cli/utils";
5
6
  import { VERSION } from "@sayknow-cli/utils/dirs";
7
+
6
8
  import {
7
9
  COORDINATOR_MCP_PROTOCOL_VERSION,
8
10
  COORDINATOR_MCP_SERVER_NAME,
@@ -29,7 +31,7 @@ import {
29
31
  replaceOwnerGenerationSync,
30
32
  type TmuxServerProof,
31
33
  } from "../skc-runtime/tmux-owner-isolation";
32
-
34
+ import { forceCloseSkcTmuxSession } from "../skc-runtime/tmux-sessions";
33
35
  import {
34
36
  type CoordinatorModelProfileLoader,
35
37
  loadCoordinatorModelProfiles,
@@ -44,6 +46,7 @@ import {
44
46
  coordinatorNamespacePath,
45
47
  requireCoordinatorMutation,
46
48
  } from "./policy";
49
+ import { createSessionReaper, type ReapableSession, type SessionReaper } from "./session-reaper";
47
50
 
48
51
  export type { CoordinatorToolName };
49
52
  export { COORDINATOR_MCP_PROTOCOL_VERSION, COORDINATOR_MCP_SERVER_NAME, COORDINATOR_MCP_TOOL_NAMES };
@@ -64,6 +67,16 @@ interface JsonRpcResponse {
64
67
  error?: { code: number; message: string; data?: unknown };
65
68
  }
66
69
 
70
+ function sinkErrorCode(error: unknown): string | undefined {
71
+ if (error === null || (typeof error !== "object" && typeof error !== "function")) return undefined;
72
+ try {
73
+ const code = Reflect.get(error, "code");
74
+ return typeof code === "string" ? code : undefined;
75
+ } catch {
76
+ return undefined;
77
+ }
78
+ }
79
+
67
80
  interface SessionStartInput {
68
81
  cwd: string;
69
82
  prompt?: string;
@@ -121,6 +134,12 @@ interface CoordinatorServices {
121
134
  listSessions?: () => unknown[] | Promise<unknown[]>;
122
135
  startSession?: (input: SessionStartInput) => unknown | Promise<unknown>;
123
136
  commandRunner?: CommandRunner;
137
+ forceCloseSession?: (
138
+ sessionName: string,
139
+ env: NodeJS.ProcessEnv,
140
+ expectedSessionId?: string,
141
+ expectedStateFile?: string,
142
+ ) => Promise<unknown>;
124
143
  ownerIsolationProbe?: OwnerIsolationProbe;
125
144
  resolveModelProfiles?: CoordinatorModelProfileLoader;
126
145
  }
@@ -240,6 +259,7 @@ interface CoordinatorSessionState {
240
259
  type CoordinatorEventKind =
241
260
  | "session.registered"
242
261
  | "session.started"
262
+ | "session.reaped"
243
263
  | "session.state_changed"
244
264
  | "turn.queued"
245
265
  | "turn.delivering"
@@ -380,6 +400,26 @@ function toolSchema(name: CoordinatorToolName): {
380
400
  },
381
401
  };
382
402
  }
403
+ if (name === "skc_coordinator_stop_session") {
404
+ return {
405
+ name,
406
+ description:
407
+ "Reap a coordinator delegate-created (ephemeral) session: terminate its owner via the owner-proof forceCloseSkcTmuxSession, then purge its state files only on verified termination. Never touches non-ephemeral (user-registered) sessions unless force is set AND the force-stop capability is enabled.",
408
+ inputSchema: {
409
+ type: "object",
410
+ properties: {
411
+ session_id: sessionId,
412
+ force: {
413
+ type: "boolean",
414
+ description: "Reap a non-ephemeral session; requires the SKC_COORDINATOR_MCP_FORCE_STOP capability.",
415
+ },
416
+ reason: { type: "string", description: "Optional audit reason recorded on the session.reaped event." },
417
+ allow_mutation: allowMutation,
418
+ },
419
+ required: ["session_id", "allow_mutation"],
420
+ },
421
+ };
422
+ }
383
423
  if (name === "skc_coordinator_send_prompt") {
384
424
  return {
385
425
  name,
@@ -868,6 +908,7 @@ const COORDINATOR_SESSION_STATES = new Set<CoordinatorSessionStateValue>([
868
908
  const COORDINATOR_EVENT_KINDS = new Set<CoordinatorEventKind>([
869
909
  "session.registered",
870
910
  "session.started",
911
+ "session.reaped",
871
912
  "session.state_changed",
872
913
  "turn.queued",
873
914
  "turn.delivering",
@@ -3284,6 +3325,103 @@ export function createCoordinatorMcpServer(options: CoordinatorMcpServerOptions
3284
3325
  function sessionFile(sessionId: unknown): string {
3285
3326
  return path.join(namespaceDir, "sessions", `${safeExternalId("session", sessionId)}.json`);
3286
3327
  }
3328
+ const forceCloseSession =
3329
+ services.forceCloseSession ??
3330
+ ((name: string, targetEnv: NodeJS.ProcessEnv, expectedSessionId?: string, expectedStateFile?: string) =>
3331
+ forceCloseSkcTmuxSession(name, targetEnv, expectedSessionId, expectedStateFile));
3332
+
3333
+ // Reap a coordinator delegate-created (ephemeral) session. Addresses the #2034 review:
3334
+ // - terminates via the owner-proof forceCloseSkcTmuxSession (pid + native session_id +
3335
+ // generation + server_key + start_time verified atomically) — never a raw process.kill,
3336
+ // so a recycled PID can never signal a foreign process.
3337
+ // - re-validates ephemeral + no-active-turn AT kill time under a per-session lock, closing
3338
+ // the select→kill TOCTOU and races with concurrent send_prompt / delegate / stop.
3339
+ // - purges state files ONLY on verified termination; on failure the record is kept for retry
3340
+ // and no session.reaped event is emitted (honest audit, no worse leak).
3341
+ async function reapSession(
3342
+ rawId: unknown,
3343
+ opts: { force?: boolean; reason?: string } = {},
3344
+ ): Promise<{ ok: boolean; reason?: string; killed: boolean; active_turn_id?: string; detail?: string }> {
3345
+ const id = safeExternalId("session", rawId);
3346
+ return await withSessionMutation(`${namespaceDir}::${id}`, async () => {
3347
+ const record = asRecord(await readJsonFile(sessionFile(id)));
3348
+ if (!record) return { ok: false, reason: "unknown_session", killed: false };
3349
+ if (record.ephemeral !== true && opts.force !== true) {
3350
+ return { ok: false, reason: "not_ephemeral", killed: false };
3351
+ }
3352
+ const activeTurn = await readActiveTurn(namespaceDir, id);
3353
+ if (activeTurn) {
3354
+ return { ok: false, reason: "active_turn", killed: false, active_turn_id: activeTurn.turn_id };
3355
+ }
3356
+ const tmuxSession = optionalString(record.tmux_session) ?? optionalString(record.tmuxSession);
3357
+ let killed = false;
3358
+ if (tmuxSession) {
3359
+ // Production delegate records persist the owner state-file path as `runtimeStateFile`
3360
+ // (see startTmuxSession). Read that so the owner-proof close is actually bound to the
3361
+ // recorded state-file identity; `sessionStateFile` is only a compatibility fallback for
3362
+ // any externally-registered record that used the older key.
3363
+ const expectedStateFile =
3364
+ optionalString(record.runtimeStateFile) ?? optionalString(record.sessionStateFile) ?? undefined;
3365
+ try {
3366
+ await forceCloseSession(tmuxSession, env, undefined, expectedStateFile);
3367
+ killed = true;
3368
+ } catch (err) {
3369
+ return {
3370
+ ok: false,
3371
+ reason: "terminate_failed",
3372
+ detail: err instanceof Error ? err.message : String(err),
3373
+ killed: false,
3374
+ };
3375
+ }
3376
+ }
3377
+ // Purge the session record FIRST so a partial rm failure can never re-list → re-reap →
3378
+ // emit a duplicate session.reaped. `killed` is honest: false when nothing was signalled.
3379
+ await fs.rm(sessionFile(id), { force: true });
3380
+ await appendCoordinatorEvent(namespaceDir, {
3381
+ kind: "session.reaped",
3382
+ sessionId: id,
3383
+ summary: `Session ${id} reaped${opts.reason ? ` (${opts.reason})` : ""}`,
3384
+ metadata: { reason: opts.reason ?? null, force: opts.force === true, killed },
3385
+ });
3386
+ await fs.rm(sessionStateFile(namespaceDir, id), { force: true });
3387
+ await fs.rm(activeTurnFile(namespaceDir, id), { force: true });
3388
+ return { ok: true, killed };
3389
+ });
3390
+ }
3391
+
3392
+ const sessionReaper: SessionReaper = createSessionReaper(
3393
+ {
3394
+ listSessions: async (): Promise<ReapableSession[]> => {
3395
+ const out: ReapableSession[] = [];
3396
+ for (const raw of await listSessions()) {
3397
+ try {
3398
+ const rec = asRecord(raw);
3399
+ if (rec?.ephemeral !== true) continue;
3400
+ const sid = optionalString(rec.session_id);
3401
+ if (!sid) continue;
3402
+ const activeTurn = await readActiveTurn(namespaceDir, sid);
3403
+ const state = await readSessionState(namespaceDir, sid);
3404
+ const stamp = optionalString(state?.updated_at) ?? optionalString(rec.created_at);
3405
+ const lastActivityMs = stamp ? Date.parse(stamp) : 0;
3406
+ out.push({
3407
+ sessionId: sid,
3408
+ ephemeral: true,
3409
+ hasActiveTurn: activeTurn !== null,
3410
+ lastActivityMs: Number.isFinite(lastActivityMs) ? lastActivityMs : 0,
3411
+ });
3412
+ } catch {
3413
+ // A single corrupt session/state file must not abort the whole sweep — skip it.
3414
+ }
3415
+ }
3416
+ return out;
3417
+ },
3418
+ reapSession: async (sid: string): Promise<void> => {
3419
+ await reapSession(sid, { reason: "idle_reaper" });
3420
+ },
3421
+ now: () => Date.now(),
3422
+ },
3423
+ { idleTtlMs: config.sessionIdleTtlMs, sweepIntervalMs: config.sessionSweepIntervalMs },
3424
+ );
3287
3425
  async function compensateFailedOwnerStart(
3288
3426
  session: Record<string, unknown>,
3289
3427
  ownerTransaction: {
@@ -4024,6 +4162,9 @@ export function createCoordinatorMcpServer(options: CoordinatorMcpServerOptions
4024
4162
  commit?: () => void;
4025
4163
  rollback?: () => Promise<"cleaned" | "failed" | "unverifiable">;
4026
4164
  } | null;
4165
+ // Delegate-created sessions are ephemeral: the idle reaper may reclaim them once
4166
+ // idle past the TTL with no active turn. User-registered sessions are never flagged.
4167
+ session.ephemeral = true;
4027
4168
  try {
4028
4169
  if (mpresetResolution.mpreset) session.mpreset = mpresetResolution.mpreset;
4029
4170
  await writeJsonFile(sessionFile(session.session_id), session);
@@ -4134,6 +4275,28 @@ export function createCoordinatorMcpServer(options: CoordinatorMcpServerOptions
4134
4275
  }
4135
4276
  return base;
4136
4277
  }
4278
+ if (name === "skc_coordinator_stop_session") {
4279
+ requireCoordinatorMutation(config, "sessions", args);
4280
+ const sessionId = safeExternalId("session", args.session_id);
4281
+ const forceRequested = args.force === true;
4282
+ // force is a capability distinct from allow_mutation: reaping a non-ephemeral
4283
+ // (user-registered) session requires SKC_COORDINATOR_MCP_FORCE_STOP to be enabled.
4284
+ if (forceRequested && !config.forceStopEnabled) {
4285
+ return { ok: false, reason: "force_not_authorized", session_id: sessionId, killed: false };
4286
+ }
4287
+ const result = await reapSession(sessionId, {
4288
+ force: forceRequested,
4289
+ reason: optionalString(args.reason) ?? "stop_session",
4290
+ });
4291
+ return {
4292
+ ok: result.ok,
4293
+ session_id: sessionId,
4294
+ killed: result.killed,
4295
+ ...(result.reason ? { reason: result.reason } : {}),
4296
+ ...(result.active_turn_id ? { active_turn_id: result.active_turn_id } : {}),
4297
+ ...(result.detail ? { detail: result.detail } : {}),
4298
+ };
4299
+ }
4137
4300
  if (name === "skc_coordinator_start_session") {
4138
4301
  requireCoordinatorMutation(config, "sessions", args);
4139
4302
  const cwd = await assertCoordinatorWorkdir(config, args.cwd);
@@ -4592,7 +4755,7 @@ export function createCoordinatorMcpServer(options: CoordinatorMcpServerOptions
4592
4755
  };
4593
4756
  }
4594
4757
 
4595
- return { config, callTool, handleJsonRpc, handle: handleJsonRpc };
4758
+ return { config, callTool, handleJsonRpc, handle: handleJsonRpc, reapSession, sessionReaper };
4596
4759
  }
4597
4760
 
4598
4761
  function legacyToolResult(payload: unknown): {
@@ -4678,11 +4841,10 @@ export interface PumpCoordinatorOptions {
4678
4841
  * answerable even while data handlers saturate.
4679
4842
  * - Data handlers are capped at `maxDataConcurrency`; excess is queued up to
4680
4843
  * `maxQueueDepth`, then rejected as `server_busy` (bounded memory / fanout).
4681
- * - `writeLine` failures move the writer to a terminal closed state instead of
4682
- * poisoning the serialized write chain or escaping as an unhandled rejection;
4683
- * no writes happen after close.
4684
- * - On EOF the pump drains in-flight handlers (bounded by `drainTimeoutMs`) and
4685
- * flushes queued writes before returning, so shutdown never races live work.
4844
+ * - A coded local `EPIPE` terminalizes writer and dispatch together; other
4845
+ * writer faults reject the pump without poisoning the serialized write chain.
4846
+ * - On EOF or a closed peer the pump drains already-running handlers (bounded
4847
+ * by `drainTimeoutMs`) and never promotes queued work.
4686
4848
  * - Byte chunks are decoded with a streaming decoder so multibyte characters
4687
4849
  * split across chunks are not corrupted.
4688
4850
  */
@@ -4694,45 +4856,81 @@ export async function pumpCoordinatorMcpStream(
4694
4856
  ): Promise<void> {
4695
4857
  const maxDataConcurrency = Math.max(1, options.maxDataConcurrency ?? 32);
4696
4858
  const maxQueueDepth = Math.max(0, options.maxQueueDepth ?? 256);
4697
- const drainTimeoutMs = Math.max(0, options.drainTimeoutMs ?? 30_000);
4859
+ const drainTimeoutMs = Math.max(1, options.drainTimeoutMs ?? 30_000);
4698
4860
 
4699
- let writeClosed = false;
4861
+ let writerState: "open" | "terminalizing" | "closed" = "open";
4700
4862
  let draining = false;
4701
4863
  let writeChain: Promise<void> = Promise.resolve();
4702
4864
  const inFlight = new Set<Promise<void>>();
4703
4865
  let activeData = 0;
4704
4866
  const dataQueue: JsonRpcRequest[] = [];
4867
+ const peerClosed = Promise.withResolvers<void>();
4868
+ const writerFailure = Promise.withResolvers<never>();
4869
+ void writerFailure.promise.catch(() => {});
4870
+ const inputIterator = input[Symbol.asyncIterator]();
4871
+ let inputDetached = false;
4872
+ let fatalWriterFailure: { value: unknown } | undefined;
4873
+
4874
+ const detachInput = (): void => {
4875
+ if (inputDetached) return;
4876
+ inputDetached = true;
4877
+ const detached = inputIterator.return?.();
4878
+ if (detached) void detached.catch(() => {});
4879
+ };
4880
+ const terminalizePeer = (): void => {
4881
+ if (writerState !== "open") return;
4882
+ writerState = "terminalizing";
4883
+ draining = true;
4884
+ dataQueue.length = 0;
4885
+ detachInput();
4886
+ peerClosed.resolve();
4887
+ };
4888
+ const failWriter = (failure: unknown): void => {
4889
+ if (writerState === "closed") return;
4890
+ writerState = "closed";
4891
+ draining = true;
4892
+ dataQueue.length = 0;
4893
+ detachInput();
4894
+ fatalWriterFailure = { value: failure };
4895
+
4896
+ writerFailure.reject(failure);
4897
+ };
4898
+ const isExpectedPeerClosure = (failure: unknown): boolean =>
4899
+ isKnownSinkPeerClosedError(failure) && sinkErrorCode(failure) === "EPIPE";
4705
4900
 
4706
- const emit = (response: JsonRpcResponse): void => {
4901
+ const emit = (response: JsonRpcResponse): Promise<void> => {
4707
4902
  writeChain = writeChain.then(async () => {
4708
- if (writeClosed) return;
4903
+ if (writerState !== "open") return;
4709
4904
  try {
4710
4905
  await writeLine(`${JSON.stringify(response)}\n`);
4711
- } catch {
4712
- writeClosed = true; // terminal writer error: stop, but never poison the chain
4906
+ } catch (failure) {
4907
+ if (isExpectedPeerClosure(failure)) terminalizePeer();
4908
+ else failWriter(failure);
4713
4909
  }
4714
4910
  });
4911
+ return writeChain;
4715
4912
  };
4716
4913
 
4717
4914
  const launch = (request: JsonRpcRequest, control: boolean): void => {
4718
4915
  const task = (async () => {
4916
+ let response: JsonRpcResponse;
4719
4917
  try {
4720
- emit(await handleJsonRpc(request));
4721
- } catch (err) {
4722
- emit({
4918
+ response = await handleJsonRpc(request);
4919
+ } catch (failure) {
4920
+ response = {
4723
4921
  jsonrpc: "2.0",
4724
4922
  id: request.id ?? null,
4725
- error: { code: -32603, message: publicCoordinatorError(err) },
4726
- });
4727
- } finally {
4728
- if (!control) {
4729
- activeData -= 1;
4730
- if (!draining) {
4731
- const next = dataQueue.shift();
4732
- if (next) {
4733
- activeData += 1;
4734
- launch(next, false);
4735
- }
4923
+ error: { code: -32603, message: publicCoordinatorError(failure) },
4924
+ };
4925
+ }
4926
+ await emit(response);
4927
+ if (!control) {
4928
+ activeData -= 1;
4929
+ if (!draining && writerState === "open") {
4930
+ const next = dataQueue.shift();
4931
+ if (next) {
4932
+ activeData += 1;
4933
+ launch(next, false);
4736
4934
  }
4737
4935
  }
4738
4936
  }
@@ -4742,6 +4940,7 @@ export async function pumpCoordinatorMcpStream(
4742
4940
  };
4743
4941
 
4744
4942
  const dispatch = (request: JsonRpcRequest): void => {
4943
+ if (writerState !== "open") return;
4745
4944
  // Notifications (no id) get no response; the coordinator has no side-effecting ones.
4746
4945
  if (request.id === undefined || request.id === null) return;
4747
4946
  if (request.method === "ping") {
@@ -4757,61 +4956,90 @@ export async function pumpCoordinatorMcpStream(
4757
4956
  dataQueue.push(request);
4758
4957
  return;
4759
4958
  }
4760
- emit({
4959
+ void emit({
4761
4960
  jsonrpc: "2.0",
4762
4961
  id: request.id,
4763
4962
  error: { code: -32000, message: "server_busy: coordinator request queue is full" },
4764
4963
  });
4765
4964
  };
4766
4965
 
4966
+ const drainInFlightAndWrites = async (): Promise<void> => {
4967
+ let timer: NodeJS.Timeout | undefined;
4968
+ const timeout = new Promise<"timed_out">(resolve => {
4969
+ timer = setTimeout(() => resolve("timed_out"), drainTimeoutMs);
4970
+ (timer as { unref?: () => void }).unref?.();
4971
+ });
4972
+ const drain = async (): Promise<"drained"> => {
4973
+ while (true) {
4974
+ if (inFlight.size > 0) await Promise.allSettled([...inFlight]);
4975
+ const writes = writeChain;
4976
+ await writes;
4977
+ if (inFlight.size === 0 && writes === writeChain) return "drained";
4978
+ }
4979
+ };
4980
+ try {
4981
+ if ((await Promise.race([drain(), timeout])) === "timed_out") {
4982
+ writerState = "closed";
4983
+ draining = true;
4984
+ dataQueue.length = 0;
4985
+ detachInput();
4986
+ }
4987
+ } finally {
4988
+ if (timer) clearTimeout(timer);
4989
+ }
4990
+ };
4991
+
4767
4992
  const decoder = new TextDecoder();
4768
4993
  let buffer = "";
4769
- for await (const chunk of input) {
4770
- buffer += typeof chunk === "string" ? chunk : decoder.decode(chunk, { stream: true });
4771
- let newline = buffer.indexOf("\n");
4772
- while (newline >= 0) {
4773
- const line = buffer.slice(0, newline).trim();
4774
- buffer = buffer.slice(newline + 1);
4775
- if (line.length > 0) {
4776
- let request: JsonRpcRequest | null = null;
4777
- try {
4778
- request = JSON.parse(line) as JsonRpcRequest;
4779
- } catch {
4780
- request = null; // ignore malformed frames rather than crashing the loop
4994
+ let inputFailure: unknown;
4995
+ try {
4996
+ while (writerState === "open") {
4997
+ const next = await Promise.race([inputIterator.next(), peerClosed.promise, writerFailure.promise]);
4998
+ if (!next || next.done) break;
4999
+ buffer += typeof next.value === "string" ? next.value : decoder.decode(next.value, { stream: true });
5000
+ let newline = buffer.indexOf("\n");
5001
+ while (newline >= 0 && writerState === "open") {
5002
+ const line = buffer.slice(0, newline).trim();
5003
+ buffer = buffer.slice(newline + 1);
5004
+ if (line.length > 0) {
5005
+ let request: JsonRpcRequest | null = null;
5006
+ try {
5007
+ request = JSON.parse(line) as JsonRpcRequest;
5008
+ } catch {
5009
+ request = null; // ignore malformed frames rather than crashing the loop
5010
+ }
5011
+ if (request) dispatch(request);
4781
5012
  }
4782
- if (request) dispatch(request);
5013
+ newline = buffer.indexOf("\n");
4783
5014
  }
4784
- newline = buffer.indexOf("\n");
4785
5015
  }
5016
+ } catch (failure) {
5017
+ inputFailure = failure;
4786
5018
  }
4787
5019
 
4788
- // EOF: stop promoting queued work, then drain in-flight handlers under a bound.
5020
+ // Input EOF or a closed peer stops promotion. One deadline bounds both the
5021
+ // active handlers and the serialized writes they have already queued.
4789
5022
  draining = true;
4790
- if (inFlight.size > 0) {
4791
- const drain = Promise.allSettled(Array.from(inFlight)).then(() => undefined);
4792
- if (drainTimeoutMs > 0) {
4793
- let timer: ReturnType<typeof setTimeout> | undefined;
4794
- const timeout = new Promise<void>(resolve => {
4795
- timer = setTimeout(resolve, drainTimeoutMs);
4796
- (timer as { unref?: () => void }).unref?.();
4797
- });
4798
- await Promise.race([drain, timeout]);
4799
- if (timer) clearTimeout(timer);
4800
- } else {
4801
- await drain;
4802
- }
4803
- }
4804
- await writeChain;
5023
+ dataQueue.length = 0;
5024
+ await drainInFlightAndWrites();
5025
+ if (fatalWriterFailure) throw fatalWriterFailure.value;
5026
+ if (inputFailure !== undefined) throw inputFailure;
5027
+ writerState = "closed";
4805
5028
  }
4806
5029
 
4807
5030
  export async function runCoordinatorMcpStdio(options: CoordinatorMcpServerOptions = {}): Promise<void> {
4808
5031
  const server = createCoordinatorMcpServer(options);
4809
- await pumpCoordinatorMcpStream(
4810
- request => server.handleJsonRpc(request),
4811
- process.stdin,
4812
- line =>
4813
- new Promise<void>((resolve, reject) => {
4814
- process.stdout.write(line, err => (err ? reject(err) : resolve()));
4815
- }),
4816
- );
5032
+ server.sessionReaper.start(); // background idle-reap of ephemeral delegate sessions
5033
+ try {
5034
+ await pumpCoordinatorMcpStream(
5035
+ request => server.handleJsonRpc(request),
5036
+ process.stdin,
5037
+ line =>
5038
+ new Promise<void>((resolve, reject) => {
5039
+ process.stdout.write(line, err => (err ? reject(err) : resolve()));
5040
+ }),
5041
+ );
5042
+ } finally {
5043
+ server.sessionReaper.stop();
5044
+ }
4817
5045
  }
@@ -0,0 +1,129 @@
1
+ import { logger } from "@sayknow-cli/utils";
2
+
3
+ /**
4
+ * Idle reaper for coordinator-managed SKC worker sessions.
5
+ *
6
+ * Every `skc_delegate_*` call that omits `session_id` starts a fresh tmux worker
7
+ * session. Nothing in the coordinator ever tore those down, so completed/crashed
8
+ * sessions accumulated (RAM + worktrees) until something killed them by hand.
9
+ *
10
+ * This is the automatic backstop (defense-in-depth): a periodic sweep force-closes
11
+ * sessions that are (a) ephemeral — coordinator delegate-created, never a user's
12
+ * registered resident session, (b) not mid-turn, and (c) idle past a TTL.
13
+ *
14
+ * The controller is pure + fully injectable (clock / list / reap side-effects) so
15
+ * it is unit-testable without tmux, the filesystem, or wall-clock waits. The
16
+ * scheduling mirrors the proven resource-gc controller: a recursive setTimeout
17
+ * with a generation guard so a stop()+start() can never leak a duplicate timer.
18
+ */
19
+
20
+ export const DEFAULT_SESSION_IDLE_TTL_MS = 30 * 60_000; // 30 min idle → reap
21
+ export const DEFAULT_SESSION_SWEEP_INTERVAL_MS = 5 * 60_000; // sweep every 5 min
22
+ export const MIN_SESSION_IDLE_TTL_MS = 60_000; // never reap a <1min-idle session
23
+ export const MIN_SESSION_SWEEP_INTERVAL_MS = 30_000;
24
+
25
+ /** Minimal projection of a coordinator session the reaper needs to decide. */
26
+ export interface ReapableSession {
27
+ sessionId: string;
28
+ /** True only for coordinator delegate-created sessions. User-registered resident sessions are false and never reaped. */
29
+ ephemeral: boolean;
30
+ /** Epoch ms of last observed activity (turn update / session-state write / session creation). */
31
+ lastActivityMs: number;
32
+ /** True while a turn is active — never reap mid-turn. */
33
+ hasActiveTurn: boolean;
34
+ }
35
+
36
+ export interface SessionReaperPolicy {
37
+ idleTtlMs: number;
38
+ sweepIntervalMs: number;
39
+ }
40
+
41
+ /**
42
+ * Pure selection: which sessions are safe to reap at `now`.
43
+ * A session is reapable iff ephemeral AND not mid-turn AND idle ≥ (clamped) TTL.
44
+ */
45
+ export function selectReapableSessions(
46
+ sessions: readonly ReapableSession[],
47
+ now: number,
48
+ idleTtlMs: number,
49
+ ): ReapableSession[] {
50
+ const ttl = Math.max(MIN_SESSION_IDLE_TTL_MS, idleTtlMs);
51
+ return sessions.filter(s => s.ephemeral && !s.hasActiveTurn && now - s.lastActivityMs >= ttl);
52
+ }
53
+
54
+ /** Injectable side-effects so the controller runs in tests without tmux/fs/real time. */
55
+ export interface SessionReaperDeps {
56
+ listSessions: () => Promise<ReapableSession[]>;
57
+ reapSession: (sessionId: string) => Promise<void>;
58
+ now: () => number;
59
+ }
60
+
61
+ export interface SessionReaper {
62
+ /** Run one sweep; returns the number of sessions successfully reaped. */
63
+ sweepOnce: () => Promise<number>;
64
+ start: () => void;
65
+ stop: () => void;
66
+ readonly running: boolean;
67
+ }
68
+
69
+ export function createSessionReaper(deps: SessionReaperDeps, policy: SessionReaperPolicy): SessionReaper {
70
+ const idleTtlMs = Math.max(MIN_SESSION_IDLE_TTL_MS, policy.idleTtlMs);
71
+ const sweepIntervalMs = Math.max(MIN_SESSION_SWEEP_INTERVAL_MS, policy.sweepIntervalMs);
72
+ let timer: ReturnType<typeof setTimeout> | null = null;
73
+ let generation = 0;
74
+ let inProgress = false;
75
+
76
+ async function sweepOnce(): Promise<number> {
77
+ if (inProgress) return 0; // never overlap sweeps
78
+ inProgress = true;
79
+ try {
80
+ const sessions = await deps.listSessions();
81
+ const targets = selectReapableSessions(sessions, deps.now(), idleTtlMs);
82
+ let reaped = 0;
83
+ for (const session of targets) {
84
+ try {
85
+ await deps.reapSession(session.sessionId);
86
+ reaped += 1;
87
+ } catch (err) {
88
+ // One wedged session must not abort the rest of the sweep.
89
+ logger.warn(
90
+ `session-reaper: failed to reap ${session.sessionId}: ${err instanceof Error ? err.message : String(err)}`,
91
+ );
92
+ }
93
+ }
94
+ return reaped;
95
+ } finally {
96
+ inProgress = false;
97
+ }
98
+ }
99
+
100
+ function schedule(gen: number): void {
101
+ timer = setTimeout(() => {
102
+ if (gen !== generation) return; // stale timer from a prior start()
103
+ void sweepOnce().finally(() => {
104
+ if (gen === generation) schedule(gen);
105
+ });
106
+ }, sweepIntervalMs);
107
+ // The reaper must never keep the coordinator process alive by itself.
108
+ (timer as { unref?: () => void }).unref?.();
109
+ }
110
+
111
+ return {
112
+ sweepOnce,
113
+ start(): void {
114
+ if (timer) return; // already running
115
+ generation += 1;
116
+ schedule(generation);
117
+ },
118
+ stop(): void {
119
+ generation += 1; // invalidate any in-flight scheduled tick
120
+ if (timer) {
121
+ clearTimeout(timer);
122
+ timer = null;
123
+ }
124
+ },
125
+ get running(): boolean {
126
+ return timer !== null;
127
+ },
128
+ };
129
+ }
@@ -484,7 +484,7 @@ export class ExtensionRunner {
484
484
  abort: () => this.#abortFn(),
485
485
  hasPendingMessages: () => this.#hasPendingMessagesFn(),
486
486
  shutdown: () => this.#shutdownHandler(),
487
- getSystemPrompt: () => this.#getSystemPromptFn(),
487
+ getSystemPrompt: () => [...this.#getSystemPromptFn()],
488
488
  hasQueuedMessages: () => this.#hasPendingMessagesFn(), // deprecated alias
489
489
  workflowGate: this.#getWorkflowGateFn(),
490
490
  };
@@ -273,11 +273,13 @@ export interface ExtensionUIContext {
273
273
  // ============================================================================
274
274
 
275
275
  export interface ContextUsage {
276
- /** Estimated context tokens, or null if unknown (e.g. right after compaction, before next LLM response). */
276
+ /** Context tokens, or null if unknown (e.g. right after compaction, before next LLM response). */
277
277
  tokens: number | null;
278
278
  contextWindow: number;
279
279
  /** Context usage as percentage of context window, or null if tokens is unknown. */
280
280
  percent: number | null;
281
+ /** Provenance: "provider_anchor" = anchored on provider-reported usage (+ heuristic trailing delta); "heuristic" = no provider anchor available, full estimate; "unknown" = post-compaction, no post-compaction provider response yet. */
282
+ source: "provider_anchor" | "heuristic" | "unknown";
281
283
  }
282
284
 
283
285
  export interface CompactOptions {