@sayknow-cli/coding-agent 0.4.2 → 0.4.3

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 (1204) hide show
  1. package/CHANGELOG.md +51 -0
  2. package/dist/types/append-only-mode.d.ts +31 -0
  3. package/dist/types/async/index.d.ts +2 -0
  4. package/dist/types/async/job-manager.d.ts +367 -0
  5. package/dist/types/async/support.d.ts +2 -0
  6. package/dist/types/autoresearch/dashboard.d.ts +4 -0
  7. package/dist/types/autoresearch/git.d.ts +36 -0
  8. package/dist/types/autoresearch/helpers.d.ts +24 -0
  9. package/dist/types/autoresearch/index.d.ts +2 -0
  10. package/dist/types/autoresearch/state.d.ts +17 -0
  11. package/dist/types/autoresearch/storage.d.ts +142 -0
  12. package/dist/types/autoresearch/tools/init-experiment.d.ts +31 -0
  13. package/dist/types/autoresearch/tools/log-experiment.d.ts +23 -0
  14. package/dist/types/autoresearch/tools/run-experiment.d.ts +8 -0
  15. package/dist/types/autoresearch/tools/update-notes.d.ts +12 -0
  16. package/dist/types/autoresearch/types.d.ts +154 -0
  17. package/dist/types/build-metadata.d.ts +7 -0
  18. package/dist/types/capability/context-file.d.ts +17 -0
  19. package/dist/types/capability/extension-module.d.ts +15 -0
  20. package/dist/types/capability/extension.d.ts +28 -0
  21. package/dist/types/capability/fs.d.ts +20 -0
  22. package/dist/types/capability/hook.d.ts +19 -0
  23. package/dist/types/capability/index.d.ts +80 -0
  24. package/dist/types/capability/instruction.d.ts +17 -0
  25. package/dist/types/capability/mcp.d.ts +49 -0
  26. package/dist/types/capability/prompt.d.ts +15 -0
  27. package/dist/types/capability/rule.d.ts +69 -0
  28. package/dist/types/capability/settings.d.ts +15 -0
  29. package/dist/types/capability/skill.d.ts +36 -0
  30. package/dist/types/capability/slash-command.d.ts +17 -0
  31. package/dist/types/capability/ssh.d.ts +23 -0
  32. package/dist/types/capability/system-prompt.d.ts +15 -0
  33. package/dist/types/capability/tool.d.ts +19 -0
  34. package/dist/types/capability/types.d.ts +154 -0
  35. package/dist/types/cli/agents-cli.d.ts +12 -0
  36. package/dist/types/cli/args.d.ts +56 -0
  37. package/dist/types/cli/auth-broker-cli.d.ts +25 -0
  38. package/dist/types/cli/auth-gateway-cli.d.ts +18 -0
  39. package/dist/types/cli/classify-install-target.d.ts +8 -0
  40. package/dist/types/cli/commands/init-xdg.d.ts +1 -0
  41. package/dist/types/cli/completion-cli.d.ts +41 -0
  42. package/dist/types/cli/config-cli.d.ts +33 -0
  43. package/dist/types/cli/daemon-cli.d.ts +38 -0
  44. package/dist/types/cli/fast-help.d.ts +1 -0
  45. package/dist/types/cli/file-processor.d.ts +11 -0
  46. package/dist/types/cli/fixture-report.d.ts +20 -0
  47. package/dist/types/cli/fixture-report.test.d.ts +1 -0
  48. package/dist/types/cli/grep-cli.d.ts +17 -0
  49. package/dist/types/cli/initial-message.d.ts +17 -0
  50. package/dist/types/cli/launch-disposition.d.ts +23 -0
  51. package/dist/types/cli/list-models.d.ts +36 -0
  52. package/dist/types/cli/local-provider-smoke.d.ts +59 -0
  53. package/dist/types/cli/malloc-env-guard.d.ts +65 -0
  54. package/dist/types/cli/malloc-env-guard.test.d.ts +1 -0
  55. package/dist/types/cli/mcp-cli.d.ts +25 -0
  56. package/dist/types/cli/migrate-cli.d.ts +20 -0
  57. package/dist/types/cli/nofile-limit.d.ts +11 -0
  58. package/dist/types/cli/notify-cli.d.ts +64 -0
  59. package/dist/types/cli/plugin-cli.d.ts +34 -0
  60. package/dist/types/cli/read-cli.d.ts +4 -0
  61. package/dist/types/cli/session-picker.d.ts +5 -0
  62. package/dist/types/cli/setup-cli.d.ts +73 -0
  63. package/dist/types/cli/shell-cli.d.ts +8 -0
  64. package/dist/types/cli/skills-cli.d.ts +9 -0
  65. package/dist/types/cli/ssh-cli.d.ts +21 -0
  66. package/dist/types/cli/stats-cli.d.ts +17 -0
  67. package/dist/types/cli/telegram-cli.d.ts +13 -0
  68. package/dist/types/cli/update-cli.d.ts +108 -0
  69. package/dist/types/cli/web-search-cli.d.ts +32 -0
  70. package/dist/types/cli/worktree-cli.d.ts +9 -0
  71. package/dist/types/cli.d.ts +143 -0
  72. package/dist/types/commands/acp.d.ts +12 -0
  73. package/dist/types/commands/agents.d.ts +34 -0
  74. package/dist/types/commands/auth-broker.d.ts +54 -0
  75. package/dist/types/commands/auth-gateway.d.ts +32 -0
  76. package/dist/types/commands/codex-native-hook.d.ts +6 -0
  77. package/dist/types/commands/commit.d.ts +27 -0
  78. package/dist/types/commands/completion.d.ts +29 -0
  79. package/dist/types/commands/config.d.ts +33 -0
  80. package/dist/types/commands/contribution-prep.d.ts +18 -0
  81. package/dist/types/commands/coordinator.d.ts +19 -0
  82. package/dist/types/commands/daemon.d.ts +84 -0
  83. package/dist/types/commands/deep-interview.d.ts +54 -0
  84. package/dist/types/commands/gc.d.ts +30 -0
  85. package/dist/types/commands/grep.d.ts +42 -0
  86. package/dist/types/commands/harness.d.ts +43 -0
  87. package/dist/types/commands/launch.d.ts +134 -0
  88. package/dist/types/commands/local-provider.d.ts +34 -0
  89. package/dist/types/commands/mcp-serve.d.ts +57 -0
  90. package/dist/types/commands/mcp.d.ts +70 -0
  91. package/dist/types/commands/migrate.d.ts +33 -0
  92. package/dist/types/commands/notify.d.ts +72 -0
  93. package/dist/types/commands/plugin.d.ts +58 -0
  94. package/dist/types/commands/ralplan.d.ts +7 -0
  95. package/dist/types/commands/read.d.ts +15 -0
  96. package/dist/types/commands/rlm.d.ts +10 -0
  97. package/dist/types/commands/sdk.d.ts +33 -0
  98. package/dist/types/commands/session.d.ts +30 -0
  99. package/dist/types/commands/setup.d.ts +105 -0
  100. package/dist/types/commands/shell.d.ts +21 -0
  101. package/dist/types/commands/skills.d.ts +26 -0
  102. package/dist/types/commands/ssh.d.ts +48 -0
  103. package/dist/types/commands/state.d.ts +7 -0
  104. package/dist/types/commands/stats.d.ts +25 -0
  105. package/dist/types/commands/team.d.ts +24 -0
  106. package/dist/types/commands/telegram.d.ts +22 -0
  107. package/dist/types/commands/ultragoal.d.ts +8 -0
  108. package/dist/types/commands/update.d.ts +20 -0
  109. package/dist/types/commands/web-search.d.ts +87 -0
  110. package/dist/types/commands/worktree.d.ts +9 -0
  111. package/dist/types/commit/agentic/agent.d.ts +31 -0
  112. package/dist/types/commit/agentic/fallback.d.ts +5 -0
  113. package/dist/types/commit/agentic/index.d.ts +2 -0
  114. package/dist/types/commit/agentic/state.d.ts +58 -0
  115. package/dist/types/commit/agentic/tools/analyze-file.d.ts +19 -0
  116. package/dist/types/commit/agentic/tools/git-file-diff.d.ts +10 -0
  117. package/dist/types/commit/agentic/tools/git-hunk.d.ts +9 -0
  118. package/dist/types/commit/agentic/tools/git-overview.d.ts +9 -0
  119. package/dist/types/commit/agentic/tools/index.d.ts +16 -0
  120. package/dist/types/commit/agentic/tools/propose-changelog.d.ts +28 -0
  121. package/dist/types/commit/agentic/tools/propose-commit.d.ts +36 -0
  122. package/dist/types/commit/agentic/tools/recent-commits.d.ts +7 -0
  123. package/dist/types/commit/agentic/tools/schemas.d.ts +27 -0
  124. package/dist/types/commit/agentic/tools/split-commit.d.ts +53 -0
  125. package/dist/types/commit/agentic/topo-sort.d.ts +4 -0
  126. package/dist/types/commit/agentic/trivial.d.ts +7 -0
  127. package/dist/types/commit/agentic/validation.d.ts +20 -0
  128. package/dist/types/commit/analysis/conventional.d.ts +22 -0
  129. package/dist/types/commit/analysis/index.d.ts +4 -0
  130. package/dist/types/commit/analysis/scope.d.ts +6 -0
  131. package/dist/types/commit/analysis/summary.d.ts +19 -0
  132. package/dist/types/commit/analysis/validation.d.ts +8 -0
  133. package/dist/types/commit/changelog/detect.d.ts +2 -0
  134. package/dist/types/commit/changelog/generate.d.ts +30 -0
  135. package/dist/types/commit/changelog/index.d.ts +30 -0
  136. package/dist/types/commit/changelog/parse.d.ts +2 -0
  137. package/dist/types/commit/cli.d.ts +3 -0
  138. package/dist/types/commit/git/diff.d.ts +5 -0
  139. package/dist/types/commit/index.d.ts +4 -0
  140. package/dist/types/commit/map-reduce/index.d.ts +28 -0
  141. package/dist/types/commit/map-reduce/map-phase.d.ts +17 -0
  142. package/dist/types/commit/map-reduce/reduce-phase.d.ts +13 -0
  143. package/dist/types/commit/map-reduce/utils.d.ts +2 -0
  144. package/dist/types/commit/message.d.ts +2 -0
  145. package/dist/types/commit/model-selection.d.ts +15 -0
  146. package/dist/types/commit/pipeline.d.ts +5 -0
  147. package/dist/types/commit/shared-llm.d.ts +54 -0
  148. package/dist/types/commit/types.d.ts +78 -0
  149. package/dist/types/commit/utils/exclusions.d.ts +4 -0
  150. package/dist/types/commit/utils.d.ts +20 -0
  151. package/dist/types/config/atomic-yaml-patch.d.ts +103 -0
  152. package/dist/types/config/config-file.d.ts +58 -0
  153. package/dist/types/config/file-lock-gc.d.ts +5 -0
  154. package/dist/types/config/file-lock.d.ts +46 -0
  155. package/dist/types/config/keybindings.d.ts +405 -0
  156. package/dist/types/config/model-auth.d.ts +3 -0
  157. package/dist/types/config/model-bindings-applier.d.ts +13 -0
  158. package/dist/types/config/model-discovery-manager.d.ts +49 -0
  159. package/dist/types/config/model-equivalence.d.ts +44 -0
  160. package/dist/types/config/model-profile-activation.d.ts +85 -0
  161. package/dist/types/config/model-profiles.d.ts +45 -0
  162. package/dist/types/config/model-registry.d.ts +473 -0
  163. package/dist/types/config/model-resolver.d.ts +260 -0
  164. package/dist/types/config/model-selector-value.d.ts +17 -0
  165. package/dist/types/config/models-config-schema.d.ts +715 -0
  166. package/dist/types/config/prompt-templates.d.ts +32 -0
  167. package/dist/types/config/resolve-config-value.d.ts +17 -0
  168. package/dist/types/config/settings-schema.d.ts +4514 -0
  169. package/dist/types/config/settings.d.ts +189 -0
  170. package/dist/types/config/skill-settings-defaults.d.ts +14 -0
  171. package/dist/types/config/telegram-autostart.d.ts +14 -0
  172. package/dist/types/config/telegram-env-bridge.d.ts +18 -0
  173. package/dist/types/config.d.ts +66 -0
  174. package/dist/types/coordinator/contract.d.ts +4 -0
  175. package/dist/types/coordinator-mcp/model-preset.d.ts +46 -0
  176. package/dist/types/coordinator-mcp/policy.d.ts +32 -0
  177. package/dist/types/coordinator-mcp/question-gate-codec.d.ts +129 -0
  178. package/dist/types/coordinator-mcp/question-state.d.ts +356 -0
  179. package/dist/types/coordinator-mcp/safety.d.ts +26 -0
  180. package/dist/types/coordinator-mcp/server.d.ts +100 -0
  181. package/dist/types/coordinator-mcp/session-reaper.d.ts +53 -0
  182. package/dist/types/cursor.d.ts +24 -0
  183. package/dist/types/daemon/builtin.d.ts +21 -0
  184. package/dist/types/daemon/control-types.d.ts +67 -0
  185. package/dist/types/daemon/operator-contract.d.ts +47 -0
  186. package/dist/types/daemon/runtime.d.ts +25 -0
  187. package/dist/types/dap/client.d.ts +39 -0
  188. package/dist/types/dap/config.d.ts +6 -0
  189. package/dist/types/dap/index.d.ts +4 -0
  190. package/dist/types/dap/session.d.ts +108 -0
  191. package/dist/types/dap/types.d.ts +524 -0
  192. package/dist/types/debug/crash-diagnostics.d.ts +45 -0
  193. package/dist/types/debug/index.d.ts +15 -0
  194. package/dist/types/debug/log-formatting.d.ts +4 -0
  195. package/dist/types/debug/log-viewer.d.ts +68 -0
  196. package/dist/types/debug/profiler.d.ts +24 -0
  197. package/dist/types/debug/raw-sse-buffer.d.ts +44 -0
  198. package/dist/types/debug/raw-sse.d.ts +16 -0
  199. package/dist/types/debug/report-bundle.d.ts +55 -0
  200. package/dist/types/debug/runtime-gauges.d.ts +6 -0
  201. package/dist/types/debug/system-info.d.ts +26 -0
  202. package/dist/types/deep-interview/plaintext-gate-guard.d.ts +11 -0
  203. package/dist/types/deep-interview/render-middleware.d.ts +6 -0
  204. package/dist/types/defaults/skc/extensions/grok-build/index.d.ts +1 -0
  205. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/index.d.ts +1 -0
  206. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/models/catalog.d.ts +29 -0
  207. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/payload/sanitize.d.ts +27 -0
  208. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/provider/billing.d.ts +8 -0
  209. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/provider/register.d.ts +5 -0
  210. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/provider/stream.d.ts +10 -0
  211. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/provider/usage.d.ts +2 -0
  212. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/shared/base-url.d.ts +2 -0
  213. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/shared/errors.d.ts +38 -0
  214. package/dist/types/defaults/skc-defaults.d.ts +64 -0
  215. package/dist/types/defaults/skc-grok-cli.d.ts +5 -0
  216. package/dist/types/discovery/agents-md.d.ts +1 -0
  217. package/dist/types/discovery/agents.d.ts +12 -0
  218. package/dist/types/discovery/builtin.d.ts +1 -0
  219. package/dist/types/discovery/claude-plugins.d.ts +1 -0
  220. package/dist/types/discovery/claude.d.ts +1 -0
  221. package/dist/types/discovery/cline.d.ts +1 -0
  222. package/dist/types/discovery/codex.d.ts +1 -0
  223. package/dist/types/discovery/cursor.d.ts +19 -0
  224. package/dist/types/discovery/gemini.d.ts +1 -0
  225. package/dist/types/discovery/github.d.ts +1 -0
  226. package/dist/types/discovery/helpers.d.ts +265 -0
  227. package/dist/types/discovery/index.d.ts +48 -0
  228. package/dist/types/discovery/mcp-json.d.ts +12 -0
  229. package/dist/types/discovery/opencode.d.ts +1 -0
  230. package/dist/types/discovery/plugin-dir-roots.d.ts +15 -0
  231. package/dist/types/discovery/ssh.d.ts +1 -0
  232. package/dist/types/discovery/substitute-plugin-root.d.ts +1 -0
  233. package/dist/types/discovery/vscode.d.ts +1 -0
  234. package/dist/types/discovery/windsurf.d.ts +15 -0
  235. package/dist/types/edit/apply-patch/index.d.ts +35 -0
  236. package/dist/types/edit/apply-patch/parser.d.ts +34 -0
  237. package/dist/types/edit/diff.d.ts +75 -0
  238. package/dist/types/edit/file-read-cache.d.ts +25 -0
  239. package/dist/types/edit/index.d.ts +61 -0
  240. package/dist/types/edit/modes/apply-patch.d.ts +24 -0
  241. package/dist/types/edit/modes/patch.d.ts +99 -0
  242. package/dist/types/edit/modes/replace.d.ts +149 -0
  243. package/dist/types/edit/normalize.d.ts +43 -0
  244. package/dist/types/edit/notebook.d.ts +26 -0
  245. package/dist/types/edit/read-file.d.ts +8 -0
  246. package/dist/types/edit/renderer.d.ts +110 -0
  247. package/dist/types/edit/streaming.d.ts +66 -0
  248. package/dist/types/eval/backend.d.ts +40 -0
  249. package/dist/types/eval/index.d.ts +4 -0
  250. package/dist/types/eval/js/context-manager.d.ts +27 -0
  251. package/dist/types/eval/js/executor.d.ts +29 -0
  252. package/dist/types/eval/js/index.d.ts +10 -0
  253. package/dist/types/eval/js/shared/helpers.d.ts +38 -0
  254. package/dist/types/eval/js/shared/indirect-eval.d.ts +14 -0
  255. package/dist/types/eval/js/shared/prelude.d.ts +1 -0
  256. package/dist/types/eval/js/shared/rewrite-imports.d.ts +6 -0
  257. package/dist/types/eval/js/shared/runtime.d.ts +47 -0
  258. package/dist/types/eval/js/shared/types.d.ts +24 -0
  259. package/dist/types/eval/js/tool-bridge.d.ts +18 -0
  260. package/dist/types/eval/js/worker-core.d.ts +5 -0
  261. package/dist/types/eval/js/worker-entry.d.ts +1 -0
  262. package/dist/types/eval/js/worker-protocol.d.ts +77 -0
  263. package/dist/types/eval/py/display.d.ts +25 -0
  264. package/dist/types/eval/py/env.d.ts +9 -0
  265. package/dist/types/eval/py/executor.d.ts +88 -0
  266. package/dist/types/eval/py/index.d.ts +10 -0
  267. package/dist/types/eval/py/kernel.d.ts +65 -0
  268. package/dist/types/eval/py/prelude.d.ts +1 -0
  269. package/dist/types/eval/py/runtime.d.ts +29 -0
  270. package/dist/types/eval/py/tool-bridge.d.ts +20 -0
  271. package/dist/types/eval/types.d.ts +52 -0
  272. package/dist/types/exa/factory.d.ts +13 -0
  273. package/dist/types/exa/index.d.ts +20 -0
  274. package/dist/types/exa/mcp-client.d.ts +45 -0
  275. package/dist/types/exa/render.d.ts +19 -0
  276. package/dist/types/exa/researcher.d.ts +9 -0
  277. package/dist/types/exa/search.d.ts +9 -0
  278. package/dist/types/exa/types.d.ts +155 -0
  279. package/dist/types/exa/websets.d.ts +9 -0
  280. package/dist/types/exec/bash-executor.d.ts +64 -0
  281. package/dist/types/exec/exec.d.ts +25 -0
  282. package/dist/types/exec/idle-timeout-watchdog.d.ts +18 -0
  283. package/dist/types/exec/non-interactive-env.d.ts +1 -0
  284. package/dist/types/export/custom-share.d.ts +20 -0
  285. package/dist/types/export/html/index.d.ts +10 -0
  286. package/dist/types/export/html/template.generated.d.ts +1 -0
  287. package/dist/types/export/html/template.macro.d.ts +5 -0
  288. package/dist/types/export/ttsr.d.ts +55 -0
  289. package/dist/types/extensibility/custom-commands/bundled/ci-green/index.d.ts +9 -0
  290. package/dist/types/extensibility/custom-commands/index.d.ts +2 -0
  291. package/dist/types/extensibility/custom-commands/loader.d.ts +29 -0
  292. package/dist/types/extensibility/custom-commands/types.d.ts +106 -0
  293. package/dist/types/extensibility/custom-tools/index.d.ts +6 -0
  294. package/dist/types/extensibility/custom-tools/loader.d.ts +69 -0
  295. package/dist/types/extensibility/custom-tools/types.d.ts +229 -0
  296. package/dist/types/extensibility/custom-tools/wrapper.d.ts +24 -0
  297. package/dist/types/extensibility/extensions/compact-handler.d.ts +28 -0
  298. package/dist/types/extensibility/extensions/get-commands-handler.d.ts +29 -0
  299. package/dist/types/extensibility/extensions/index.d.ts +9 -0
  300. package/dist/types/extensibility/extensions/loader.d.ts +53 -0
  301. package/dist/types/extensibility/extensions/prefix-command-bridge.d.ts +35 -0
  302. package/dist/types/extensibility/extensions/runner.d.ts +135 -0
  303. package/dist/types/extensibility/extensions/types.d.ts +1076 -0
  304. package/dist/types/extensibility/extensions/wrapper.d.ts +55 -0
  305. package/dist/types/extensibility/hooks/index.d.ts +5 -0
  306. package/dist/types/extensibility/hooks/loader.d.ts +89 -0
  307. package/dist/types/extensibility/hooks/runner.d.ts +126 -0
  308. package/dist/types/extensibility/hooks/tool-wrapper.d.ts +25 -0
  309. package/dist/types/extensibility/hooks/types.d.ts +431 -0
  310. package/dist/types/extensibility/plugins/doctor.d.ts +3 -0
  311. package/dist/types/extensibility/plugins/git-url.d.ts +34 -0
  312. package/dist/types/extensibility/plugins/index.d.ts +8 -0
  313. package/dist/types/extensibility/plugins/installer.d.ts +5 -0
  314. package/dist/types/extensibility/plugins/legacy-pi-compat.d.ts +2 -0
  315. package/dist/types/extensibility/plugins/loader.d.ts +31 -0
  316. package/dist/types/extensibility/plugins/manager.d.ts +65 -0
  317. package/dist/types/extensibility/plugins/marketplace/cache.d.ts +41 -0
  318. package/dist/types/extensibility/plugins/marketplace/fetcher.d.ts +48 -0
  319. package/dist/types/extensibility/plugins/marketplace/index.d.ts +6 -0
  320. package/dist/types/extensibility/plugins/marketplace/manager.d.ts +57 -0
  321. package/dist/types/extensibility/plugins/marketplace/registry.d.ts +34 -0
  322. package/dist/types/extensibility/plugins/marketplace/source-resolver.d.ts +28 -0
  323. package/dist/types/extensibility/plugins/marketplace/types.d.ts +130 -0
  324. package/dist/types/extensibility/plugins/parser.d.ts +52 -0
  325. package/dist/types/extensibility/plugins/security-scanner.d.ts +31 -0
  326. package/dist/types/extensibility/plugins/types.d.ts +149 -0
  327. package/dist/types/extensibility/runtime-skill-discovery.d.ts +20 -0
  328. package/dist/types/extensibility/shared-events.d.ts +283 -0
  329. package/dist/types/extensibility/skc-plugins/activation.d.ts +14 -0
  330. package/dist/types/extensibility/skc-plugins/compiler.d.ts +19 -0
  331. package/dist/types/extensibility/skc-plugins/constrained-hooks.d.ts +29 -0
  332. package/dist/types/extensibility/skc-plugins/index.d.ts +18 -0
  333. package/dist/types/extensibility/skc-plugins/injection.d.ts +40 -0
  334. package/dist/types/extensibility/skc-plugins/installer.d.ts +13 -0
  335. package/dist/types/extensibility/skc-plugins/loader.d.ts +3 -0
  336. package/dist/types/extensibility/skc-plugins/mcp-policy.d.ts +26 -0
  337. package/dist/types/extensibility/skc-plugins/observability.d.ts +27 -0
  338. package/dist/types/extensibility/skc-plugins/paths.d.ts +8 -0
  339. package/dist/types/extensibility/skc-plugins/prompt-appendix.d.ts +16 -0
  340. package/dist/types/extensibility/skc-plugins/registry.d.ts +32 -0
  341. package/dist/types/extensibility/skc-plugins/runtime-adapters.d.ts +64 -0
  342. package/dist/types/extensibility/skc-plugins/schema.d.ts +3 -0
  343. package/dist/types/extensibility/skc-plugins/session-validation.d.ts +42 -0
  344. package/dist/types/extensibility/skc-plugins/state.d.ts +9 -0
  345. package/dist/types/extensibility/skc-plugins/tools.d.ts +8 -0
  346. package/dist/types/extensibility/skc-plugins/types.d.ts +220 -0
  347. package/dist/types/extensibility/skc-plugins/validation.d.ts +11 -0
  348. package/dist/types/extensibility/skills.d.ts +82 -0
  349. package/dist/types/extensibility/slash-commands.d.ts +48 -0
  350. package/dist/types/extensibility/tool-proxy.d.ts +4 -0
  351. package/dist/types/extensibility/typebox.d.ts +155 -0
  352. package/dist/types/extensibility/utils.d.ts +12 -0
  353. package/dist/types/goals/continuation-timeout-guard.d.ts +22 -0
  354. package/dist/types/goals/index.d.ts +3 -0
  355. package/dist/types/goals/runtime.d.ts +64 -0
  356. package/dist/types/goals/state.d.ts +40 -0
  357. package/dist/types/goals/tools/goal-tool.d.ts +62 -0
  358. package/dist/types/harness-control-plane/classifier.d.ts +13 -0
  359. package/dist/types/harness-control-plane/control-endpoint.d.ts +31 -0
  360. package/dist/types/harness-control-plane/finalize.d.ts +60 -0
  361. package/dist/types/harness-control-plane/gc-adapter.d.ts +3 -0
  362. package/dist/types/harness-control-plane/lifecycle-reconciliation.d.ts +17 -0
  363. package/dist/types/harness-control-plane/operate.d.ts +35 -0
  364. package/dist/types/harness-control-plane/owner.d.ts +69 -0
  365. package/dist/types/harness-control-plane/phase-rollup.d.ts +20 -0
  366. package/dist/types/harness-control-plane/preserve.d.ts +19 -0
  367. package/dist/types/harness-control-plane/receipt-ingest.d.ts +24 -0
  368. package/dist/types/harness-control-plane/receipt-spool.d.ts +23 -0
  369. package/dist/types/harness-control-plane/receipts.d.ts +148 -0
  370. package/dist/types/harness-control-plane/rpc-adapter.d.ts +69 -0
  371. package/dist/types/harness-control-plane/sdk-transport.d.ts +43 -0
  372. package/dist/types/harness-control-plane/seams.d.ts +21 -0
  373. package/dist/types/harness-control-plane/session-lease.d.ts +65 -0
  374. package/dist/types/harness-control-plane/session-transport.d.ts +48 -0
  375. package/dist/types/harness-control-plane/state-machine.d.ts +24 -0
  376. package/dist/types/harness-control-plane/storage.d.ts +81 -0
  377. package/dist/types/harness-control-plane/types.d.ts +186 -0
  378. package/dist/types/hashline/anchors.d.ts +20 -0
  379. package/dist/types/hashline/apply.d.ts +14 -0
  380. package/dist/types/hashline/constants.d.ts +19 -0
  381. package/dist/types/hashline/diff-preview.d.ts +2 -0
  382. package/dist/types/hashline/diff.d.ts +17 -0
  383. package/dist/types/hashline/execute.d.ts +4 -0
  384. package/dist/types/hashline/hash.d.ts +123 -0
  385. package/dist/types/hashline/index.d.ts +13 -0
  386. package/dist/types/hashline/input.d.ts +11 -0
  387. package/dist/types/hashline/parser.d.ts +7 -0
  388. package/dist/types/hashline/prefixes.d.ts +7 -0
  389. package/dist/types/hashline/recovery.d.ts +27 -0
  390. package/dist/types/hashline/stream.d.ts +2 -0
  391. package/dist/types/hashline/types.d.ts +77 -0
  392. package/dist/types/hindsight/backend.d.ts +13 -0
  393. package/dist/types/hindsight/bank.d.ts +54 -0
  394. package/dist/types/hindsight/client.d.ts +224 -0
  395. package/dist/types/hindsight/config.d.ts +51 -0
  396. package/dist/types/hindsight/content.d.ts +70 -0
  397. package/dist/types/hindsight/index.d.ts +8 -0
  398. package/dist/types/hindsight/mental-models.d.ts +125 -0
  399. package/dist/types/hindsight/state.d.ts +106 -0
  400. package/dist/types/hindsight/transcript.d.ts +28 -0
  401. package/dist/types/hooks/codex-native-hooks-config.d.ts +29 -0
  402. package/dist/types/hooks/native-skill-hook.d.ts +28 -0
  403. package/dist/types/hooks/skill-keywords.d.ts +18 -0
  404. package/dist/types/hooks/skill-state.d.ts +93 -0
  405. package/dist/types/i18n/index.d.ts +38 -0
  406. package/dist/types/i18n/messages/de.d.ts +2 -0
  407. package/dist/types/i18n/messages/de.messages.d.ts +1 -0
  408. package/dist/types/i18n/messages/de.settings.d.ts +1 -0
  409. package/dist/types/i18n/messages/en.d.ts +82 -0
  410. package/dist/types/i18n/messages/es.d.ts +2 -0
  411. package/dist/types/i18n/messages/es.messages.d.ts +1 -0
  412. package/dist/types/i18n/messages/es.settings.d.ts +1 -0
  413. package/dist/types/i18n/messages/fr.d.ts +2 -0
  414. package/dist/types/i18n/messages/fr.messages.d.ts +1 -0
  415. package/dist/types/i18n/messages/fr.settings.d.ts +1 -0
  416. package/dist/types/i18n/messages/ja.d.ts +2 -0
  417. package/dist/types/i18n/messages/ja.messages.d.ts +1 -0
  418. package/dist/types/i18n/messages/ja.settings.d.ts +1 -0
  419. package/dist/types/i18n/messages/ko.d.ts +2 -0
  420. package/dist/types/i18n/messages/ko.messages.d.ts +1 -0
  421. package/dist/types/i18n/messages/ko.settings.d.ts +1 -0
  422. package/dist/types/i18n/messages/zh.d.ts +2 -0
  423. package/dist/types/i18n/messages/zh.messages.d.ts +1 -0
  424. package/dist/types/i18n/messages/zh.settings.d.ts +1 -0
  425. package/dist/types/index.d.ts +33 -0
  426. package/dist/types/internal-urls/agent-protocol.d.ts +12 -0
  427. package/dist/types/internal-urls/artifact-protocol.d.ts +6 -0
  428. package/dist/types/internal-urls/docs-index.generated.d.ts +2 -0
  429. package/dist/types/internal-urls/index.d.ts +20 -0
  430. package/dist/types/internal-urls/issue-pr-protocol.d.ts +17 -0
  431. package/dist/types/internal-urls/json-query.d.ts +30 -0
  432. package/dist/types/internal-urls/local-protocol.d.ts +61 -0
  433. package/dist/types/internal-urls/mcp-protocol.d.ts +12 -0
  434. package/dist/types/internal-urls/memory-protocol.d.ts +23 -0
  435. package/dist/types/internal-urls/parse.d.ts +19 -0
  436. package/dist/types/internal-urls/registry-helpers.d.ts +11 -0
  437. package/dist/types/internal-urls/router.d.ts +14 -0
  438. package/dist/types/internal-urls/rule-protocol.d.ts +6 -0
  439. package/dist/types/internal-urls/skc-protocol.d.ts +12 -0
  440. package/dist/types/internal-urls/skill-protocol.d.ts +13 -0
  441. package/dist/types/internal-urls/types.d.ts +109 -0
  442. package/dist/types/lsp/client.d.ts +66 -0
  443. package/dist/types/lsp/clients/biome-client.d.ts +16 -0
  444. package/dist/types/lsp/clients/index.d.ts +19 -0
  445. package/dist/types/lsp/clients/lsp-linter-client.d.ts +16 -0
  446. package/dist/types/lsp/clients/swiftlint-client.d.ts +20 -0
  447. package/dist/types/lsp/config.d.ts +65 -0
  448. package/dist/types/lsp/edits.d.ts +23 -0
  449. package/dist/types/lsp/index.d.ts +130 -0
  450. package/dist/types/lsp/lspmux.d.ts +60 -0
  451. package/dist/types/lsp/path-trust.d.ts +1 -0
  452. package/dist/types/lsp/render.d.ts +32 -0
  453. package/dist/types/lsp/startup-events.d.ts +12 -0
  454. package/dist/types/lsp/types.d.ts +306 -0
  455. package/dist/types/lsp/utils.d.ts +108 -0
  456. package/dist/types/main.d.ts +135 -0
  457. package/dist/types/memories/index.d.ts +28 -0
  458. package/dist/types/memories/storage.d.ts +111 -0
  459. package/dist/types/memory-backend/index.d.ts +4 -0
  460. package/dist/types/memory-backend/local-backend.d.ts +9 -0
  461. package/dist/types/memory-backend/off-backend.d.ts +7 -0
  462. package/dist/types/memory-backend/resolve.d.ts +15 -0
  463. package/dist/types/memory-backend/types.d.ts +61 -0
  464. package/dist/types/migrate/action-planner.d.ts +11 -0
  465. package/dist/types/migrate/adapters/claude-code.d.ts +2 -0
  466. package/dist/types/migrate/adapters/codex.d.ts +5 -0
  467. package/dist/types/migrate/adapters/index.d.ts +45 -0
  468. package/dist/types/migrate/adapters/opencode.d.ts +2 -0
  469. package/dist/types/migrate/executor.d.ts +2 -0
  470. package/dist/types/migrate/mcp-mapper.d.ts +20 -0
  471. package/dist/types/migrate/report.d.ts +18 -0
  472. package/dist/types/migrate/skill-normalizer.d.ts +27 -0
  473. package/dist/types/migrate/types.d.ts +126 -0
  474. package/dist/types/modes/acp/acp-agent.d.ts +249 -0
  475. package/dist/types/modes/acp/acp-client-bridge.d.ts +10 -0
  476. package/dist/types/modes/acp/acp-event-mapper.d.ts +36 -0
  477. package/dist/types/modes/acp/acp-mode.d.ts +8 -0
  478. package/dist/types/modes/acp/index.d.ts +2 -0
  479. package/dist/types/modes/acp/permission-mode.d.ts +4 -0
  480. package/dist/types/modes/acp/startup-options.d.ts +6 -0
  481. package/dist/types/modes/acp/terminal-auth.d.ts +6 -0
  482. package/dist/types/modes/action-registry.d.ts +29 -0
  483. package/dist/types/modes/bridge/auth.d.ts +12 -0
  484. package/dist/types/modes/bridge/bridge-client-bridge.d.ts +9 -0
  485. package/dist/types/modes/bridge/bridge-mode.d.ts +47 -0
  486. package/dist/types/modes/bridge/bridge-ui-context.d.ts +88 -0
  487. package/dist/types/modes/bridge/event-stream.d.ts +8 -0
  488. package/dist/types/modes/components/agent-dashboard.d.ts +24 -0
  489. package/dist/types/modes/components/ansi-display-validator.d.ts +2 -0
  490. package/dist/types/modes/components/assistant-message.d.ts +20 -0
  491. package/dist/types/modes/components/bash-execution.d.ts +29 -0
  492. package/dist/types/modes/components/bordered-loader.d.ts +11 -0
  493. package/dist/types/modes/components/branch-summary-message.d.ts +13 -0
  494. package/dist/types/modes/components/btw-panel.d.ts +16 -0
  495. package/dist/types/modes/components/chrome.d.ts +14 -0
  496. package/dist/types/modes/components/command-palette.d.ts +27 -0
  497. package/dist/types/modes/components/compaction-summary-message.d.ts +13 -0
  498. package/dist/types/modes/components/countdown-timer.d.ts +14 -0
  499. package/dist/types/modes/components/custom-editor.d.ts +74 -0
  500. package/dist/types/modes/components/custom-message.d.ts +15 -0
  501. package/dist/types/modes/components/custom-model-preset-wizard.d.ts +12 -0
  502. package/dist/types/modes/components/custom-provider-wizard.d.ts +11 -0
  503. package/dist/types/modes/components/diff.d.ts +11 -0
  504. package/dist/types/modes/components/dynamic-border.d.ts +14 -0
  505. package/dist/types/modes/components/eval-execution.d.ts +23 -0
  506. package/dist/types/modes/components/execution-shared.d.ts +46 -0
  507. package/dist/types/modes/components/extensions/extension-dashboard.d.ts +26 -0
  508. package/dist/types/modes/components/extensions/extension-list.d.ts +39 -0
  509. package/dist/types/modes/components/extensions/index.d.ts +8 -0
  510. package/dist/types/modes/components/extensions/inspector-panel.d.ts +8 -0
  511. package/dist/types/modes/components/extensions/state-manager.d.ts +50 -0
  512. package/dist/types/modes/components/extensions/types.d.ts +151 -0
  513. package/dist/types/modes/components/footer.d.ts +30 -0
  514. package/dist/types/modes/components/history-search.d.ts +7 -0
  515. package/dist/types/modes/components/hook-editor.d.ts +18 -0
  516. package/dist/types/modes/components/hook-input.d.ts +15 -0
  517. package/dist/types/modes/components/hook-message.d.ts +15 -0
  518. package/dist/types/modes/components/hook-selector.d.ts +59 -0
  519. package/dist/types/modes/components/index.d.ts +36 -0
  520. package/dist/types/modes/components/irc-sidebar.d.ts +32 -0
  521. package/dist/types/modes/components/jobs-overlay-model.d.ts +31 -0
  522. package/dist/types/modes/components/jobs-overlay.d.ts +30 -0
  523. package/dist/types/modes/components/keybinding-hints.d.ts +40 -0
  524. package/dist/types/modes/components/login-dialog.d.ts +32 -0
  525. package/dist/types/modes/components/message-frame.d.ts +42 -0
  526. package/dist/types/modes/components/model-selector.d.ts +61 -0
  527. package/dist/types/modes/components/notifications-settings-editor.d.ts +139 -0
  528. package/dist/types/modes/components/oauth-selector.d.ts +17 -0
  529. package/dist/types/modes/components/pet-capability.d.ts +37 -0
  530. package/dist/types/modes/components/pet-selector.d.ts +11 -0
  531. package/dist/types/modes/components/plan-preview-overlay.d.ts +43 -0
  532. package/dist/types/modes/components/plugin-selector.d.ts +26 -0
  533. package/dist/types/modes/components/plugin-settings.d.ts +66 -0
  534. package/dist/types/modes/components/provider-onboarding-selector.d.ts +7 -0
  535. package/dist/types/modes/components/queue-mode-selector.d.ts +9 -0
  536. package/dist/types/modes/components/queue-pane.d.ts +12 -0
  537. package/dist/types/modes/components/queued-message-selector.d.ts +12 -0
  538. package/dist/types/modes/components/read-tool-group.d.ts +36 -0
  539. package/dist/types/modes/components/runtime-mcp-add-wizard.d.ts +26 -0
  540. package/dist/types/modes/components/sayknow-pet-widget.d.ts +60 -0
  541. package/dist/types/modes/components/session-observer-overlay.d.ts +12 -0
  542. package/dist/types/modes/components/session-selector.d.ts +43 -0
  543. package/dist/types/modes/components/sessions-dashboard.d.ts +32 -0
  544. package/dist/types/modes/components/settings-defs.d.ts +50 -0
  545. package/dist/types/modes/components/settings-selector.d.ts +77 -0
  546. package/dist/types/modes/components/show-images-selector.d.ts +9 -0
  547. package/dist/types/modes/components/skill-hud/render.d.ts +2 -0
  548. package/dist/types/modes/components/skill-message.d.ts +10 -0
  549. package/dist/types/modes/components/status-line/context-thresholds.d.ts +4 -0
  550. package/dist/types/modes/components/status-line/git-utils.d.ts +28 -0
  551. package/dist/types/modes/components/status-line/index.d.ts +4 -0
  552. package/dist/types/modes/components/status-line/presets.d.ts +3 -0
  553. package/dist/types/modes/components/status-line/segments.d.ts +5 -0
  554. package/dist/types/modes/components/status-line/separators.d.ts +3 -0
  555. package/dist/types/modes/components/status-line/token-rate.d.ts +10 -0
  556. package/dist/types/modes/components/status-line/types.d.ts +83 -0
  557. package/dist/types/modes/components/status-line.d.ts +1 -0
  558. package/dist/types/modes/components/tasks-pane.d.ts +15 -0
  559. package/dist/types/modes/components/theme-selector.d.ts +10 -0
  560. package/dist/types/modes/components/thinking-selector.d.ts +15 -0
  561. package/dist/types/modes/components/todo-reminder.d.ts +13 -0
  562. package/dist/types/modes/components/tool-execution.d.ts +70 -0
  563. package/dist/types/modes/components/tool-status-header.d.ts +111 -0
  564. package/dist/types/modes/components/tool-transcript-format.d.ts +77 -0
  565. package/dist/types/modes/components/transcript-viewer-overlay.d.ts +45 -0
  566. package/dist/types/modes/components/tree-selector.d.ts +31 -0
  567. package/dist/types/modes/components/ttsr-notification.d.ts +13 -0
  568. package/dist/types/modes/components/two-column-body.d.ts +9 -0
  569. package/dist/types/modes/components/user-message-selector.d.ts +28 -0
  570. package/dist/types/modes/components/user-message.d.ts +8 -0
  571. package/dist/types/modes/components/visual-truncate.d.ts +19 -0
  572. package/dist/types/modes/components/welcome.d.ts +46 -0
  573. package/dist/types/modes/controllers/btw-controller.d.ts +10 -0
  574. package/dist/types/modes/controllers/command-controller-shared.d.ts +47 -0
  575. package/dist/types/modes/controllers/command-controller.d.ts +40 -0
  576. package/dist/types/modes/controllers/event-controller.d.ts +21 -0
  577. package/dist/types/modes/controllers/extension-ui-controller.d.ts +81 -0
  578. package/dist/types/modes/controllers/goal-mode-controller.d.ts +69 -0
  579. package/dist/types/modes/controllers/input-controller.d.ts +55 -0
  580. package/dist/types/modes/controllers/mode-gate.d.ts +8 -0
  581. package/dist/types/modes/controllers/plan-mode-controller.d.ts +65 -0
  582. package/dist/types/modes/controllers/runtime-mcp-command-controller.d.ts +10 -0
  583. package/dist/types/modes/controllers/selector-controller.d.ts +129 -0
  584. package/dist/types/modes/controllers/ssh-command-controller.d.ts +10 -0
  585. package/dist/types/modes/controllers/stt-controller.d.ts +26 -0
  586. package/dist/types/modes/controllers/todo-command-controller.d.ts +7 -0
  587. package/dist/types/modes/emoji-autocomplete.d.ts +16 -0
  588. package/dist/types/modes/index.d.ts +6 -0
  589. package/dist/types/modes/interactive-mode.d.ts +303 -0
  590. package/dist/types/modes/irc-observation-ledger.d.ts +22 -0
  591. package/dist/types/modes/jobs-observer.d.ts +59 -0
  592. package/dist/types/modes/oauth-manual-input.d.ts +8 -0
  593. package/dist/types/modes/print-mode.d.ts +44 -0
  594. package/dist/types/modes/prompt-action-autocomplete.d.ts +54 -0
  595. package/dist/types/modes/rpc/host-tools.d.ts +1 -0
  596. package/dist/types/modes/rpc/host-uris.d.ts +1 -0
  597. package/dist/types/modes/rpc/rpc-client.d.ts +299 -0
  598. package/dist/types/modes/rpc/rpc-mode.d.ts +86 -0
  599. package/dist/types/modes/rpc/rpc-socket-security.d.ts +10 -0
  600. package/dist/types/modes/rpc/rpc-types.d.ts +810 -0
  601. package/dist/types/modes/runtime-init.d.ts +21 -0
  602. package/dist/types/modes/session-observer-registry.d.ts +26 -0
  603. package/dist/types/modes/shared/agent-wire/approval-gate.d.ts +54 -0
  604. package/dist/types/modes/shared/agent-wire/command-contract.d.ts +18 -0
  605. package/dist/types/modes/shared/agent-wire/command-dispatch.d.ts +37 -0
  606. package/dist/types/modes/shared/agent-wire/command-validation.d.ts +2 -0
  607. package/dist/types/modes/shared/agent-wire/deep-interview-gate.d.ts +93 -0
  608. package/dist/types/modes/shared/agent-wire/event-contract.d.ts +103 -0
  609. package/dist/types/modes/shared/agent-wire/event-envelope.d.ts +55 -0
  610. package/dist/types/modes/shared/agent-wire/event-observation.d.ts +37 -0
  611. package/dist/types/modes/shared/agent-wire/handshake.d.ts +56 -0
  612. package/dist/types/modes/shared/agent-wire/host-tool-bridge.d.ts +16 -0
  613. package/dist/types/modes/shared/agent-wire/host-uri-bridge.d.ts +17 -0
  614. package/dist/types/modes/shared/agent-wire/protocol.d.ts +25 -0
  615. package/dist/types/modes/shared/agent-wire/responses.d.ts +4 -0
  616. package/dist/types/modes/shared/agent-wire/scopes.d.ts +18 -0
  617. package/dist/types/modes/shared/agent-wire/session-registry.d.ts +25 -0
  618. package/dist/types/modes/shared/agent-wire/ui-request-broker.d.ts +42 -0
  619. package/dist/types/modes/shared/agent-wire/ui-result.d.ts +27 -0
  620. package/dist/types/modes/shared/agent-wire/unattended-action-policy.d.ts +29 -0
  621. package/dist/types/modes/shared/agent-wire/unattended-audit.d.ts +68 -0
  622. package/dist/types/modes/shared/agent-wire/unattended-run-controller.d.ts +166 -0
  623. package/dist/types/modes/shared/agent-wire/unattended-session.d.ts +127 -0
  624. package/dist/types/modes/shared/agent-wire/workflow-gate-broker.d.ts +315 -0
  625. package/dist/types/modes/shared/agent-wire/workflow-gate-schema.d.ts +39 -0
  626. package/dist/types/modes/shared/agent-wire/workflow-gate-types.d.ts +152 -0
  627. package/dist/types/modes/shared.d.ts +15 -0
  628. package/dist/types/modes/slash-command-visibility.d.ts +1 -0
  629. package/dist/types/modes/tasks-aggregator.d.ts +39 -0
  630. package/dist/types/modes/theme/defaults/index.d.ts +652 -0
  631. package/dist/types/modes/theme/mermaid-cache.d.ts +9 -0
  632. package/dist/types/modes/theme/shimmer.d.ts +38 -0
  633. package/dist/types/modes/theme/theme.d.ts +275 -0
  634. package/dist/types/modes/tmux-scroll.d.ts +18 -0
  635. package/dist/types/modes/transcript-item-registry.d.ts +60 -0
  636. package/dist/types/modes/types.d.ts +340 -0
  637. package/dist/types/modes/utils/abort-message.d.ts +4 -0
  638. package/dist/types/modes/utils/context-usage.d.ts +36 -0
  639. package/dist/types/modes/utils/hotkeys-markdown.d.ts +5 -0
  640. package/dist/types/modes/utils/injected-user-submission.d.ts +52 -0
  641. package/dist/types/modes/utils/irc-message.d.ts +38 -0
  642. package/dist/types/modes/utils/keybinding-matchers.d.ts +10 -0
  643. package/dist/types/modes/utils/terminal-bell.d.ts +3 -0
  644. package/dist/types/modes/utils/tools-markdown.d.ts +5 -0
  645. package/dist/types/modes/utils/ui-helpers.d.ts +75 -0
  646. package/dist/types/notifications/attachment-registry.d.ts +17 -0
  647. package/dist/types/notifications/chat-adapters.d.ts +9 -0
  648. package/dist/types/notifications/config-commands.d.ts +64 -0
  649. package/dist/types/notifications/config.d.ts +132 -0
  650. package/dist/types/notifications/daemon-paths.d.ts +17 -0
  651. package/dist/types/notifications/engine.d.ts +59 -0
  652. package/dist/types/notifications/helpers.d.ts +55 -0
  653. package/dist/types/notifications/html-format.d.ts +75 -0
  654. package/dist/types/notifications/index.d.ts +219 -0
  655. package/dist/types/notifications/lifecycle-commands.d.ts +69 -0
  656. package/dist/types/notifications/lifecycle-control-runtime.d.ts +107 -0
  657. package/dist/types/notifications/lifecycle-orchestrator.d.ts +144 -0
  658. package/dist/types/notifications/managed-daemon.d.ts +48 -0
  659. package/dist/types/notifications/notification-service.d.ts +144 -0
  660. package/dist/types/notifications/operator-runtime.d.ts +52 -0
  661. package/dist/types/notifications/rate-limit-pool.d.ts +113 -0
  662. package/dist/types/notifications/recent-activity.d.ts +39 -0
  663. package/dist/types/notifications/reply-sent-store.d.ts +53 -0
  664. package/dist/types/notifications/rich-draft.d.ts +68 -0
  665. package/dist/types/notifications/rich-render.d.ts +90 -0
  666. package/dist/types/notifications/telegram-cli.d.ts +19 -0
  667. package/dist/types/notifications/telegram-daemon-cli.d.ts +28 -0
  668. package/dist/types/notifications/telegram-daemon-control.d.ts +70 -0
  669. package/dist/types/notifications/telegram-daemon.d.ts +558 -0
  670. package/dist/types/notifications/telegram-reference.d.ts +136 -0
  671. package/dist/types/notifications/threaded-inbound.d.ts +77 -0
  672. package/dist/types/notifications/threaded-render.d.ts +88 -0
  673. package/dist/types/notifications/topic-registry.d.ts +89 -0
  674. package/dist/types/plan-mode/approved-plan.d.ts +50 -0
  675. package/dist/types/plan-mode/state.d.ts +6 -0
  676. package/dist/types/registry/agent-registry.d.ts +64 -0
  677. package/dist/types/reminders/star-reminder.d.ts +115 -0
  678. package/dist/types/research-plan/index.d.ts +1 -0
  679. package/dist/types/research-plan/ledger.d.ts +33 -0
  680. package/dist/types/rlm/artifacts.d.ts +9 -0
  681. package/dist/types/rlm/complete-research-tool.d.ts +35 -0
  682. package/dist/types/rlm/data-context.d.ts +6 -0
  683. package/dist/types/rlm/index.d.ts +47 -0
  684. package/dist/types/rlm/notebook.d.ts +12 -0
  685. package/dist/types/rlm/preset.d.ts +23 -0
  686. package/dist/types/rlm/python-tool.d.ts +16 -0
  687. package/dist/types/rlm/report.d.ts +14 -0
  688. package/dist/types/rlm/types.d.ts +37 -0
  689. package/dist/types/runtime/process-lifecycle.d.ts +108 -0
  690. package/dist/types/runtime-api-key.d.ts +7 -0
  691. package/dist/types/runtime-credential-selector.d.ts +7 -0
  692. package/dist/types/runtime-mcp/client.d.ts +76 -0
  693. package/dist/types/runtime-mcp/config-writer.d.ts +89 -0
  694. package/dist/types/runtime-mcp/config.d.ts +81 -0
  695. package/dist/types/runtime-mcp/discoverable-tool-metadata.d.ts +10 -0
  696. package/dist/types/runtime-mcp/index.d.ts +18 -0
  697. package/dist/types/runtime-mcp/json-rpc.d.ts +22 -0
  698. package/dist/types/runtime-mcp/loader.d.ts +45 -0
  699. package/dist/types/runtime-mcp/manager.d.ts +204 -0
  700. package/dist/types/runtime-mcp/oauth-discovery.d.ts +51 -0
  701. package/dist/types/runtime-mcp/oauth-flow.d.ts +59 -0
  702. package/dist/types/runtime-mcp/render.d.ts +25 -0
  703. package/dist/types/runtime-mcp/smithery-auth.d.ts +16 -0
  704. package/dist/types/runtime-mcp/smithery-connect.d.ts +38 -0
  705. package/dist/types/runtime-mcp/smithery-registry.d.ts +51 -0
  706. package/dist/types/runtime-mcp/tool-bridge.d.ts +86 -0
  707. package/dist/types/runtime-mcp/tool-cache.d.ts +8 -0
  708. package/dist/types/runtime-mcp/transports/http.d.ts +36 -0
  709. package/dist/types/runtime-mcp/transports/index.d.ts +5 -0
  710. package/dist/types/runtime-mcp/transports/stdio.d.ts +29 -0
  711. package/dist/types/runtime-mcp/types.d.ts +353 -0
  712. package/dist/types/sdk/acp/adapter.d.ts +67 -0
  713. package/dist/types/sdk/acp/index.d.ts +2 -0
  714. package/dist/types/sdk/broker/broker.d.ts +120 -0
  715. package/dist/types/sdk/broker/discovery.d.ts +40 -0
  716. package/dist/types/sdk/broker/ensure.d.ts +65 -0
  717. package/dist/types/sdk/broker/identity.d.ts +3 -0
  718. package/dist/types/sdk/broker/index.d.ts +8 -0
  719. package/dist/types/sdk/broker/internal.d.ts +3 -0
  720. package/dist/types/sdk/broker/lifecycle-codec.d.ts +4 -0
  721. package/dist/types/sdk/broker/lifecycle-ledger.d.ts +109 -0
  722. package/dist/types/sdk/broker/lifecycle.d.ts +89 -0
  723. package/dist/types/sdk/broker/process-incarnation.d.ts +16 -0
  724. package/dist/types/sdk/broker/runtime.d.ts +33 -0
  725. package/dist/types/sdk/broker/session-index.d.ts +68 -0
  726. package/dist/types/sdk/broker/state-version.d.ts +11 -0
  727. package/dist/types/sdk/broker/transport.d.ts +9 -0
  728. package/dist/types/sdk/bus/attachment-registry.d.ts +17 -0
  729. package/dist/types/sdk/bus/chat-adapters.d.ts +9 -0
  730. package/dist/types/sdk/bus/chat-command-policy.d.ts +49 -0
  731. package/dist/types/sdk/bus/chat-daemon-cli.d.ts +23 -0
  732. package/dist/types/sdk/bus/chat-daemon-control.d.ts +149 -0
  733. package/dist/types/sdk/bus/chat-daemon-runtime.d.ts +77 -0
  734. package/dist/types/sdk/bus/chat-effect-journal.d.ts +85 -0
  735. package/dist/types/sdk/bus/config-commands.d.ts +77 -0
  736. package/dist/types/sdk/bus/config.d.ts +307 -0
  737. package/dist/types/sdk/bus/conversation-store.d.ts +72 -0
  738. package/dist/types/sdk/bus/daemon-paths.d.ts +18 -0
  739. package/dist/types/sdk/bus/discord-conversation.d.ts +58 -0
  740. package/dist/types/sdk/bus/discord-daemon.d.ts +50 -0
  741. package/dist/types/sdk/bus/discord-live-provider.d.ts +70 -0
  742. package/dist/types/sdk/bus/discord-provider.d.ts +85 -0
  743. package/dist/types/sdk/bus/engine.d.ts +59 -0
  744. package/dist/types/sdk/bus/helpers.d.ts +55 -0
  745. package/dist/types/sdk/bus/html-format.d.ts +76 -0
  746. package/dist/types/sdk/bus/index.d.ts +508 -0
  747. package/dist/types/sdk/bus/lifecycle-commands.d.ts +69 -0
  748. package/dist/types/sdk/bus/lifecycle-control-runtime.d.ts +113 -0
  749. package/dist/types/sdk/bus/lifecycle-orchestrator.d.ts +141 -0
  750. package/dist/types/sdk/bus/managed-daemon.d.ts +48 -0
  751. package/dist/types/sdk/bus/native-runtime-compatibility.d.ts +13 -0
  752. package/dist/types/sdk/bus/notification-orchestration.d.ts +170 -0
  753. package/dist/types/sdk/bus/notification-service.d.ts +233 -0
  754. package/dist/types/sdk/bus/operator-runtime.d.ts +52 -0
  755. package/dist/types/sdk/bus/rate-limit-pool.d.ts +124 -0
  756. package/dist/types/sdk/bus/recent-activity.d.ts +48 -0
  757. package/dist/types/sdk/bus/reply-sent-store.d.ts +53 -0
  758. package/dist/types/sdk/bus/rich-document.d.ts +7 -0
  759. package/dist/types/sdk/bus/rich-draft.d.ts +68 -0
  760. package/dist/types/sdk/bus/rich-render.d.ts +67 -0
  761. package/dist/types/sdk/bus/session-control.d.ts +86 -0
  762. package/dist/types/sdk/bus/slack-conversation.d.ts +56 -0
  763. package/dist/types/sdk/bus/slack-daemon.d.ts +60 -0
  764. package/dist/types/sdk/bus/slack-live-provider.d.ts +59 -0
  765. package/dist/types/sdk/bus/slack-provider.d.ts +55 -0
  766. package/dist/types/sdk/bus/telegram-cli.d.ts +19 -0
  767. package/dist/types/sdk/bus/telegram-daemon-cli.d.ts +42 -0
  768. package/dist/types/sdk/bus/telegram-daemon-contract.d.ts +25 -0
  769. package/dist/types/sdk/bus/telegram-daemon-control.d.ts +89 -0
  770. package/dist/types/sdk/bus/telegram-daemon.d.ts +856 -0
  771. package/dist/types/sdk/bus/telegram-reference.d.ts +136 -0
  772. package/dist/types/sdk/bus/telegram-setup.d.ts +128 -0
  773. package/dist/types/sdk/bus/threaded-inbound.d.ts +77 -0
  774. package/dist/types/sdk/bus/threaded-render.d.ts +101 -0
  775. package/dist/types/sdk/bus/topic-registry.d.ts +122 -0
  776. package/dist/types/sdk/cli/index.d.ts +1 -0
  777. package/dist/types/sdk/cli/session-cli.d.ts +19 -0
  778. package/dist/types/sdk/client/client.d.ts +1 -0
  779. package/dist/types/sdk/client/discovery.d.ts +27 -0
  780. package/dist/types/sdk/client/index.d.ts +2 -0
  781. package/dist/types/sdk/host/control/dispatch.d.ts +34 -0
  782. package/dist/types/sdk/host/control/index.d.ts +2 -0
  783. package/dist/types/sdk/host/control/operations.d.ts +65 -0
  784. package/dist/types/sdk/host/events.d.ts +35 -0
  785. package/dist/types/sdk/host/host.d.ts +37 -0
  786. package/dist/types/sdk/host/index.d.ts +4 -0
  787. package/dist/types/sdk/host/query/cursor.d.ts +62 -0
  788. package/dist/types/sdk/host/query/handlers.d.ts +70 -0
  789. package/dist/types/sdk/host/query/index.d.ts +3 -0
  790. package/dist/types/sdk/host/query/revision-store.d.ts +60 -0
  791. package/dist/types/sdk/host/reverse-leases.d.ts +45 -0
  792. package/dist/types/sdk/host/types.d.ts +32 -0
  793. package/dist/types/sdk/index.d.ts +7 -0
  794. package/dist/types/sdk/lifecycle-session.d.ts +14 -0
  795. package/dist/types/sdk/mcp/index.d.ts +1 -0
  796. package/dist/types/sdk/mcp/server.d.ts +37 -0
  797. package/dist/types/sdk/models.d.ts +44 -0
  798. package/dist/types/sdk/protocol/adapter-validation.d.ts +14 -0
  799. package/dist/types/sdk/protocol/operation-registry.d.ts +24 -0
  800. package/dist/types/sdk/session-directory.d.ts +56 -0
  801. package/dist/types/sdk/session.d.ts +279 -0
  802. package/dist/types/sdk/startup-capability.d.ts +50 -0
  803. package/dist/types/secrets/index.d.ts +11 -0
  804. package/dist/types/secrets/obfuscator.d.ts +23 -0
  805. package/dist/types/secrets/regex.d.ts +2 -0
  806. package/dist/types/session/agent-session.d.ts +1395 -0
  807. package/dist/types/session/agent-storage.d.ts +108 -0
  808. package/dist/types/session/artifacts.d.ts +86 -0
  809. package/dist/types/session/auth-broker-config.d.ts +13 -0
  810. package/dist/types/session/auth-storage.d.ts +6 -0
  811. package/dist/types/session/blob-store.d.ts +160 -0
  812. package/dist/types/session/cache-economics.d.ts +79 -0
  813. package/dist/types/session/client-bridge.d.ts +88 -0
  814. package/dist/types/session/context-estimation.d.ts +31 -0
  815. package/dist/types/session/contribution-prep.d.ts +47 -0
  816. package/dist/types/session/default-model-selection.d.ts +25 -0
  817. package/dist/types/session/fallback-chain-controller.d.ts +60 -0
  818. package/dist/types/session/file-mention-pruning.d.ts +8 -0
  819. package/dist/types/session/history-storage.d.ts +16 -0
  820. package/dist/types/session/internal/managed-session-scope.d.ts +109 -0
  821. package/dist/types/session/internal/managed-session-storage.d.ts +95 -0
  822. package/dist/types/session/messages.d.ts +185 -0
  823. package/dist/types/session/provider-safety-stop.d.ts +5 -0
  824. package/dist/types/session/session-dump-format.d.ts +22 -0
  825. package/dist/types/session/session-manager-internal.d.ts +14 -0
  826. package/dist/types/session/session-manager.d.ts +988 -0
  827. package/dist/types/session/session-storage.d.ts +297 -0
  828. package/dist/types/session/streaming-output.d.ts +213 -0
  829. package/dist/types/session/tool-choice-queue.d.ts +84 -0
  830. package/dist/types/session/volatile-context-pruning.d.ts +15 -0
  831. package/dist/types/session/yield-queue.d.ts +32 -0
  832. package/dist/types/setup/credential-auto-import.d.ts +93 -0
  833. package/dist/types/setup/credential-import.d.ts +82 -0
  834. package/dist/types/setup/hermes-setup.d.ts +78 -0
  835. package/dist/types/setup/host-plugin-setup.d.ts +39 -0
  836. package/dist/types/setup/model-onboarding-guidance.d.ts +9 -0
  837. package/dist/types/setup/provider-onboarding.d.ts +52 -0
  838. package/dist/types/skc-runtime/cli-write-receipt.d.ts +24 -0
  839. package/dist/types/skc-runtime/deep-interview-ambiguity.d.ts +39 -0
  840. package/dist/types/skc-runtime/deep-interview-recorder.d.ts +123 -0
  841. package/dist/types/skc-runtime/deep-interview-runtime.d.ts +36 -0
  842. package/dist/types/skc-runtime/deep-interview-state.d.ts +199 -0
  843. package/dist/types/skc-runtime/gc-render.d.ts +6 -0
  844. package/dist/types/skc-runtime/gc-runtime.d.ts +143 -0
  845. package/dist/types/skc-runtime/goal-mode-request.d.ts +63 -0
  846. package/dist/types/skc-runtime/launch-tmux.d.ts +78 -0
  847. package/dist/types/skc-runtime/launch-worktree.d.ts +48 -0
  848. package/dist/types/skc-runtime/ledger-event-renderer.d.ts +68 -0
  849. package/dist/types/skc-runtime/linux-proc.d.ts +29 -0
  850. package/dist/types/skc-runtime/managed-owner-admission.d.ts +42 -0
  851. package/dist/types/skc-runtime/managed-owner-supervisor.d.ts +41 -0
  852. package/dist/types/skc-runtime/psmux-detect.d.ts +81 -0
  853. package/dist/types/skc-runtime/ralplan-runtime.d.ts +26 -0
  854. package/dist/types/skc-runtime/restricted-role-agent-bash.d.ts +3 -0
  855. package/dist/types/skc-runtime/session-layout.d.ts +59 -0
  856. package/dist/types/skc-runtime/session-resolution.d.ts +47 -0
  857. package/dist/types/skc-runtime/session-state-sidecar.d.ts +73 -0
  858. package/dist/types/skc-runtime/state-argv.d.ts +38 -0
  859. package/dist/types/skc-runtime/state-graph.d.ts +4 -0
  860. package/dist/types/skc-runtime/state-migrations.d.ts +33 -0
  861. package/dist/types/skc-runtime/state-renderer.d.ts +70 -0
  862. package/dist/types/skc-runtime/state-runtime.d.ts +38 -0
  863. package/dist/types/skc-runtime/state-schema.d.ts +319 -0
  864. package/dist/types/skc-runtime/state-validation.d.ts +6 -0
  865. package/dist/types/skc-runtime/state-writer.d.ts +245 -0
  866. package/dist/types/skc-runtime/team-gc.d.ts +7 -0
  867. package/dist/types/skc-runtime/team-launch.d.ts +59 -0
  868. package/dist/types/skc-runtime/team-notify.d.ts +45 -0
  869. package/dist/types/skc-runtime/team-runtime.d.ts +361 -0
  870. package/dist/types/skc-runtime/team-store.d.ts +160 -0
  871. package/dist/types/skc-runtime/team-workers.d.ts +78 -0
  872. package/dist/types/skc-runtime/tmux-common.d.ts +111 -0
  873. package/dist/types/skc-runtime/tmux-gc.d.ts +7 -0
  874. package/dist/types/skc-runtime/tmux-owner-isolation-cli.d.ts +18 -0
  875. package/dist/types/skc-runtime/tmux-owner-isolation.d.ts +326 -0
  876. package/dist/types/skc-runtime/tmux-sessions.d.ts +97 -0
  877. package/dist/types/skc-runtime/ultragoal-change-set.d.ts +13 -0
  878. package/dist/types/skc-runtime/ultragoal-evidence.d.ts +38 -0
  879. package/dist/types/skc-runtime/ultragoal-guard.d.ts +100 -0
  880. package/dist/types/skc-runtime/ultragoal-owner-loss-recovery.d.ts +94 -0
  881. package/dist/types/skc-runtime/ultragoal-pipeline.d.ts +23 -0
  882. package/dist/types/skc-runtime/ultragoal-receipt-freshness.d.ts +53 -0
  883. package/dist/types/skc-runtime/ultragoal-runtime.d.ts +433 -0
  884. package/dist/types/skc-runtime/windows-powershell-command.d.ts +9 -0
  885. package/dist/types/skc-runtime/workflow-cli-common.d.ts +8 -0
  886. package/dist/types/skc-runtime/workflow-command-ref.d.ts +43 -0
  887. package/dist/types/skc-runtime/workflow-manifest.d.ts +57 -0
  888. package/dist/types/skill-state/active-state.d.ts +126 -0
  889. package/dist/types/skill-state/canonical-skills.d.ts +3 -0
  890. package/dist/types/skill-state/deep-interview-mutation-guard.d.ts +38 -0
  891. package/dist/types/skill-state/initial-phase.d.ts +12 -0
  892. package/dist/types/skill-state/workflow-hud.d.ts +83 -0
  893. package/dist/types/skill-state/workflow-mutation-guard.d.ts +54 -0
  894. package/dist/types/skill-state/workflow-state-contract.d.ts +55 -0
  895. package/dist/types/skill-state/workflow-state-version.d.ts +3 -0
  896. package/dist/types/slash-commands/acp-builtins.d.ts +18 -0
  897. package/dist/types/slash-commands/builtin-registry.d.ts +27 -0
  898. package/dist/types/slash-commands/helpers/context-report.d.ts +7 -0
  899. package/dist/types/slash-commands/helpers/fast-status-report.d.ts +82 -0
  900. package/dist/types/slash-commands/helpers/format.d.ts +10 -0
  901. package/dist/types/slash-commands/helpers/mcp.d.ts +3 -0
  902. package/dist/types/slash-commands/helpers/parse.d.ts +33 -0
  903. package/dist/types/slash-commands/helpers/ssh.d.ts +3 -0
  904. package/dist/types/slash-commands/helpers/todo.d.ts +3 -0
  905. package/dist/types/slash-commands/helpers/usage-report.d.ts +7 -0
  906. package/dist/types/slash-commands/types.d.ts +120 -0
  907. package/dist/types/ssh/config-writer.d.ts +49 -0
  908. package/dist/types/ssh/connection-manager.d.ts +33 -0
  909. package/dist/types/ssh/ssh-executor.d.ts +37 -0
  910. package/dist/types/ssh/sshfs-mount.d.ts +6 -0
  911. package/dist/types/ssh/utils.d.ts +2 -0
  912. package/dist/types/stt/downloader.d.ts +9 -0
  913. package/dist/types/stt/index.d.ts +3 -0
  914. package/dist/types/stt/recorder.d.ts +13 -0
  915. package/dist/types/stt/setup.d.ts +18 -0
  916. package/dist/types/stt/stt-controller.d.ts +16 -0
  917. package/dist/types/stt/transcriber.d.ts +16 -0
  918. package/dist/types/system-prompt.d.ts +109 -0
  919. package/dist/types/task/agents.d.ts +28 -0
  920. package/dist/types/task/commands.d.ts +35 -0
  921. package/dist/types/task/discovery.d.ts +19 -0
  922. package/dist/types/task/executor.d.ts +138 -0
  923. package/dist/types/task/fork-context-advisory.d.ts +13 -0
  924. package/dist/types/task/fork-context-budget.d.ts +7 -0
  925. package/dist/types/task/id.d.ts +7 -0
  926. package/dist/types/task/index.d.ts +43 -0
  927. package/dist/types/task/name-generator.d.ts +16 -0
  928. package/dist/types/task/output-manager.d.ts +36 -0
  929. package/dist/types/task/parallel.d.ts +34 -0
  930. package/dist/types/task/receipt.d.ts +89 -0
  931. package/dist/types/task/render.d.ts +28 -0
  932. package/dist/types/task/roi-reconciliation.d.ts +27 -0
  933. package/dist/types/task/simple-mode.d.ts +8 -0
  934. package/dist/types/task/skc-command.d.ts +7 -0
  935. package/dist/types/task/spawn-gate.d.ts +29 -0
  936. package/dist/types/task/subprocess-tool-registry.d.ts +72 -0
  937. package/dist/types/task/token-log.d.ts +30 -0
  938. package/dist/types/task/token-log.test.d.ts +1 -0
  939. package/dist/types/task/types.d.ts +516 -0
  940. package/dist/types/task/worktree.d.ts +94 -0
  941. package/dist/types/thinking-metadata.d.ts +16 -0
  942. package/dist/types/thinking.d.ts +29 -0
  943. package/dist/types/tool-discovery/tool-index.d.ts +65 -0
  944. package/dist/types/tools/archive-reader.d.ts +40 -0
  945. package/dist/types/tools/ask-answer-registry.d.ts +18 -0
  946. package/dist/types/tools/ask.d.ts +123 -0
  947. package/dist/types/tools/ast-edit.d.ts +77 -0
  948. package/dist/types/tools/ast-grep.d.ts +69 -0
  949. package/dist/types/tools/auto-generated-guard.d.ts +17 -0
  950. package/dist/types/tools/bash-allowed-prefixes.d.ts +10 -0
  951. package/dist/types/tools/bash-command-fixup.d.ts +11 -0
  952. package/dist/types/tools/bash-interactive.d.ts +16 -0
  953. package/dist/types/tools/bash-interceptor.d.ts +24 -0
  954. package/dist/types/tools/bash-pty-selection.d.ts +7 -0
  955. package/dist/types/tools/bash-skill-urls.d.ts +31 -0
  956. package/dist/types/tools/bash.d.ts +160 -0
  957. package/dist/types/tools/bisect.d.ts +81 -0
  958. package/dist/types/tools/browser/actions.d.ts +54 -0
  959. package/dist/types/tools/browser/attach.d.ts +50 -0
  960. package/dist/types/tools/browser/benchmark/detector-report.d.ts +63 -0
  961. package/dist/types/tools/browser/benchmark/run-suite.d.ts +18 -0
  962. package/dist/types/tools/browser/dead-tab-recovery.d.ts +24 -0
  963. package/dist/types/tools/browser/launch.d.ts +84 -0
  964. package/dist/types/tools/browser/profile-discovery.d.ts +31 -0
  965. package/dist/types/tools/browser/profile-posture.d.ts +37 -0
  966. package/dist/types/tools/browser/profile-reuse.d.ts +39 -0
  967. package/dist/types/tools/browser/profile-warmup.d.ts +39 -0
  968. package/dist/types/tools/browser/readable.d.ts +17 -0
  969. package/dist/types/tools/browser/registry.d.ts +76 -0
  970. package/dist/types/tools/browser/render.d.ts +53 -0
  971. package/dist/types/tools/browser/screenshot-format.d.ts +8 -0
  972. package/dist/types/tools/browser/tab-protocol.d.ts +159 -0
  973. package/dist/types/tools/browser/tab-supervisor.d.ts +130 -0
  974. package/dist/types/tools/browser/tab-worker-entry.d.ts +1 -0
  975. package/dist/types/tools/browser/tab-worker-path-resolver.d.ts +2 -0
  976. package/dist/types/tools/browser/tab-worker-smoke.d.ts +16 -0
  977. package/dist/types/tools/browser/tab-worker.d.ts +19 -0
  978. package/dist/types/tools/browser.d.ts +211 -0
  979. package/dist/types/tools/calculator.d.ts +76 -0
  980. package/dist/types/tools/checkpoint.d.ts +63 -0
  981. package/dist/types/tools/composer-bash-policy.d.ts +14 -0
  982. package/dist/types/tools/computer/render.d.ts +17 -0
  983. package/dist/types/tools/computer-gc.d.ts +23 -0
  984. package/dist/types/tools/computer.d.ts +465 -0
  985. package/dist/types/tools/conflict-detect.d.ts +205 -0
  986. package/dist/types/tools/context.d.ts +19 -0
  987. package/dist/types/tools/cron.d.ts +93 -0
  988. package/dist/types/tools/debug.d.ts +209 -0
  989. package/dist/types/tools/eval.d.ts +108 -0
  990. package/dist/types/tools/fetch.d.ts +85 -0
  991. package/dist/types/tools/file-recorder.d.ts +13 -0
  992. package/dist/types/tools/find.d.ts +95 -0
  993. package/dist/types/tools/fs-cache-invalidation.d.ts +15 -0
  994. package/dist/types/tools/gh-format.d.ts +6 -0
  995. package/dist/types/tools/gh-renderer.d.ts +25 -0
  996. package/dist/types/tools/gh.d.ts +356 -0
  997. package/dist/types/tools/github-cache.d.ts +103 -0
  998. package/dist/types/tools/grouped-file-output.d.ts +36 -0
  999. package/dist/types/tools/hindsight-recall.d.ts +21 -0
  1000. package/dist/types/tools/hindsight-reflect.d.ts +23 -0
  1001. package/dist/types/tools/hindsight-retain.d.ts +27 -0
  1002. package/dist/types/tools/image-gen.d.ts +79 -0
  1003. package/dist/types/tools/index.d.ts +390 -0
  1004. package/dist/types/tools/irc.d.ts +79 -0
  1005. package/dist/types/tools/job.d.ts +78 -0
  1006. package/dist/types/tools/json-tree.d.ts +23 -0
  1007. package/dist/types/tools/jtd-to-json-schema.d.ts +29 -0
  1008. package/dist/types/tools/jtd-to-typescript.d.ts +26 -0
  1009. package/dist/types/tools/jtd-utils.d.ts +42 -0
  1010. package/dist/types/tools/list-limit.d.ts +12 -0
  1011. package/dist/types/tools/match-line-format.d.ts +11 -0
  1012. package/dist/types/tools/monitor.d.ts +54 -0
  1013. package/dist/types/tools/output-meta.d.ts +205 -0
  1014. package/dist/types/tools/path-utils.d.ts +142 -0
  1015. package/dist/types/tools/plan-mode-guard.d.ts +18 -0
  1016. package/dist/types/tools/read.d.ts +90 -0
  1017. package/dist/types/tools/recipe/index.d.ts +45 -0
  1018. package/dist/types/tools/recipe/render.d.ts +36 -0
  1019. package/dist/types/tools/recipe/runner.d.ts +60 -0
  1020. package/dist/types/tools/recipe/runners/cargo.d.ts +16 -0
  1021. package/dist/types/tools/recipe/runners/index.d.ts +2 -0
  1022. package/dist/types/tools/recipe/runners/just.d.ts +2 -0
  1023. package/dist/types/tools/recipe/runners/make.d.ts +2 -0
  1024. package/dist/types/tools/recipe/runners/pkg.d.ts +2 -0
  1025. package/dist/types/tools/recipe/runners/task.d.ts +2 -0
  1026. package/dist/types/tools/render-mermaid.d.ts +37 -0
  1027. package/dist/types/tools/render-utils.d.ts +158 -0
  1028. package/dist/types/tools/renderers.d.ts +26 -0
  1029. package/dist/types/tools/resolve.d.ts +80 -0
  1030. package/dist/types/tools/resource-gc.d.ts +68 -0
  1031. package/dist/types/tools/review.d.ts +63 -0
  1032. package/dist/types/tools/search-tool-bm25.d.ts +64 -0
  1033. package/dist/types/tools/search.d.ts +93 -0
  1034. package/dist/types/tools/skill-discovery.d.ts +40 -0
  1035. package/dist/types/tools/skill.d.ts +48 -0
  1036. package/dist/types/tools/sqlite-reader.d.ts +94 -0
  1037. package/dist/types/tools/ssh.d.ts +67 -0
  1038. package/dist/types/tools/subagent-render.d.ts +32 -0
  1039. package/dist/types/tools/subagent.d.ts +123 -0
  1040. package/dist/types/tools/telegram-send.d.ts +39 -0
  1041. package/dist/types/tools/todo-write.d.ts +120 -0
  1042. package/dist/types/tools/tool-errors.d.ts +33 -0
  1043. package/dist/types/tools/tool-result.d.ts +30 -0
  1044. package/dist/types/tools/tool-timeouts.d.ts +56 -0
  1045. package/dist/types/tools/ultragoal-ask-guard.d.ts +12 -0
  1046. package/dist/types/tools/vim.d.ts +58 -0
  1047. package/dist/types/tools/write.d.ts +59 -0
  1048. package/dist/types/tools/yield.d.ts +25 -0
  1049. package/dist/types/tui/code-cell.d.ts +32 -0
  1050. package/dist/types/tui/file-list.d.ts +22 -0
  1051. package/dist/types/tui/hyperlink.d.ts +42 -0
  1052. package/dist/types/tui/index.d.ts +11 -0
  1053. package/dist/types/tui/output-block.d.ts +28 -0
  1054. package/dist/types/tui/status-line.d.ts +18 -0
  1055. package/dist/types/tui/tree-list.d.ts +19 -0
  1056. package/dist/types/tui/types.d.ts +13 -0
  1057. package/dist/types/tui/utils.d.ts +36 -0
  1058. package/dist/types/utils/changelog.d.ts +37 -0
  1059. package/dist/types/utils/clipboard.d.ts +22 -0
  1060. package/dist/types/utils/cmux-workspace.d.ts +52 -0
  1061. package/dist/types/utils/command-args.d.ts +9 -0
  1062. package/dist/types/utils/commit-message-generator.d.ts +7 -0
  1063. package/dist/types/utils/edit-mode.d.ts +13 -0
  1064. package/dist/types/utils/event-bus.d.ts +6 -0
  1065. package/dist/types/utils/external-editor.d.ts +19 -0
  1066. package/dist/types/utils/file-display-mode.d.ts +27 -0
  1067. package/dist/types/utils/file-mentions.d.ts +25 -0
  1068. package/dist/types/utils/git.d.ts +393 -0
  1069. package/dist/types/utils/image-loading.d.ts +49 -0
  1070. package/dist/types/utils/image-resize.d.ts +41 -0
  1071. package/dist/types/utils/lang-from-path.d.ts +8 -0
  1072. package/dist/types/utils/linkedom.d.ts +4 -0
  1073. package/dist/types/utils/markit.d.ts +7 -0
  1074. package/dist/types/utils/open.d.ts +2 -0
  1075. package/dist/types/utils/pasted-image-loading.d.ts +39 -0
  1076. package/dist/types/utils/pasted-image-path.d.ts +34 -0
  1077. package/dist/types/utils/session-color.d.ts +10 -0
  1078. package/dist/types/utils/shell-snapshot.d.ts +5 -0
  1079. package/dist/types/utils/sixel.d.ts +21 -0
  1080. package/dist/types/utils/title-generator.d.ts +31 -0
  1081. package/dist/types/utils/tool-choice.d.ts +20 -0
  1082. package/dist/types/utils/tools-manager.d.ts +9 -0
  1083. package/dist/types/vim/buffer.d.ts +41 -0
  1084. package/dist/types/vim/commands.d.ts +6 -0
  1085. package/dist/types/vim/engine.d.ts +47 -0
  1086. package/dist/types/vim/parser.d.ts +3 -0
  1087. package/dist/types/vim/render.d.ts +25 -0
  1088. package/dist/types/vim/types.d.ts +182 -0
  1089. package/dist/types/web/insane/bridge.d.ts +103 -0
  1090. package/dist/types/web/insane/url-guard.d.ts +25 -0
  1091. package/dist/types/web/kagi.d.ts +23 -0
  1092. package/dist/types/web/parallel.d.ts +58 -0
  1093. package/dist/types/web/scrapers/artifacthub.d.ts +6 -0
  1094. package/dist/types/web/scrapers/arxiv.d.ts +5 -0
  1095. package/dist/types/web/scrapers/aur.d.ts +5 -0
  1096. package/dist/types/web/scrapers/biorxiv.d.ts +5 -0
  1097. package/dist/types/web/scrapers/bluesky.d.ts +5 -0
  1098. package/dist/types/web/scrapers/brew.d.ts +5 -0
  1099. package/dist/types/web/scrapers/cheatsh.d.ts +8 -0
  1100. package/dist/types/web/scrapers/chocolatey.d.ts +5 -0
  1101. package/dist/types/web/scrapers/choosealicense.d.ts +2 -0
  1102. package/dist/types/web/scrapers/cisa-kev.d.ts +5 -0
  1103. package/dist/types/web/scrapers/clojars.d.ts +5 -0
  1104. package/dist/types/web/scrapers/coingecko.d.ts +5 -0
  1105. package/dist/types/web/scrapers/crates-io.d.ts +5 -0
  1106. package/dist/types/web/scrapers/crossref.d.ts +2 -0
  1107. package/dist/types/web/scrapers/devto.d.ts +5 -0
  1108. package/dist/types/web/scrapers/discogs.d.ts +8 -0
  1109. package/dist/types/web/scrapers/discourse.d.ts +5 -0
  1110. package/dist/types/web/scrapers/dockerhub.d.ts +5 -0
  1111. package/dist/types/web/scrapers/docs-rs.d.ts +2 -0
  1112. package/dist/types/web/scrapers/fdroid.d.ts +5 -0
  1113. package/dist/types/web/scrapers/firefox-addons.d.ts +2 -0
  1114. package/dist/types/web/scrapers/flathub.d.ts +2 -0
  1115. package/dist/types/web/scrapers/github-gist.d.ts +5 -0
  1116. package/dist/types/web/scrapers/github.d.ts +12 -0
  1117. package/dist/types/web/scrapers/gitlab.d.ts +5 -0
  1118. package/dist/types/web/scrapers/go-pkg.d.ts +5 -0
  1119. package/dist/types/web/scrapers/hackage.d.ts +5 -0
  1120. package/dist/types/web/scrapers/hackernews.d.ts +2 -0
  1121. package/dist/types/web/scrapers/hex.d.ts +5 -0
  1122. package/dist/types/web/scrapers/html-to-markdown.d.ts +5 -0
  1123. package/dist/types/web/scrapers/huggingface.d.ts +2 -0
  1124. package/dist/types/web/scrapers/iacr.d.ts +5 -0
  1125. package/dist/types/web/scrapers/index.d.ts +84 -0
  1126. package/dist/types/web/scrapers/jetbrains-marketplace.d.ts +2 -0
  1127. package/dist/types/web/scrapers/lemmy.d.ts +2 -0
  1128. package/dist/types/web/scrapers/lobsters.d.ts +5 -0
  1129. package/dist/types/web/scrapers/mastodon.d.ts +5 -0
  1130. package/dist/types/web/scrapers/maven.d.ts +6 -0
  1131. package/dist/types/web/scrapers/mdn.d.ts +2 -0
  1132. package/dist/types/web/scrapers/metacpan.d.ts +5 -0
  1133. package/dist/types/web/scrapers/musicbrainz.d.ts +5 -0
  1134. package/dist/types/web/scrapers/npm.d.ts +5 -0
  1135. package/dist/types/web/scrapers/nuget.d.ts +5 -0
  1136. package/dist/types/web/scrapers/nvd.d.ts +5 -0
  1137. package/dist/types/web/scrapers/ollama.d.ts +2 -0
  1138. package/dist/types/web/scrapers/open-vsx.d.ts +5 -0
  1139. package/dist/types/web/scrapers/opencorporates.d.ts +5 -0
  1140. package/dist/types/web/scrapers/openlibrary.d.ts +5 -0
  1141. package/dist/types/web/scrapers/orcid.d.ts +5 -0
  1142. package/dist/types/web/scrapers/osv.d.ts +5 -0
  1143. package/dist/types/web/scrapers/packagist.d.ts +5 -0
  1144. package/dist/types/web/scrapers/pub-dev.d.ts +5 -0
  1145. package/dist/types/web/scrapers/pubmed.d.ts +5 -0
  1146. package/dist/types/web/scrapers/pypi.d.ts +5 -0
  1147. package/dist/types/web/scrapers/rawg.d.ts +2 -0
  1148. package/dist/types/web/scrapers/readthedocs.d.ts +2 -0
  1149. package/dist/types/web/scrapers/reddit.d.ts +5 -0
  1150. package/dist/types/web/scrapers/repology.d.ts +5 -0
  1151. package/dist/types/web/scrapers/rfc.d.ts +5 -0
  1152. package/dist/types/web/scrapers/rubygems.d.ts +5 -0
  1153. package/dist/types/web/scrapers/searchcode.d.ts +2 -0
  1154. package/dist/types/web/scrapers/sec-edgar.d.ts +5 -0
  1155. package/dist/types/web/scrapers/semantic-scholar.d.ts +2 -0
  1156. package/dist/types/web/scrapers/snapcraft.d.ts +2 -0
  1157. package/dist/types/web/scrapers/sourcegraph.d.ts +2 -0
  1158. package/dist/types/web/scrapers/spdx.d.ts +5 -0
  1159. package/dist/types/web/scrapers/spotify.d.ts +8 -0
  1160. package/dist/types/web/scrapers/stackoverflow.d.ts +6 -0
  1161. package/dist/types/web/scrapers/terraform.d.ts +5 -0
  1162. package/dist/types/web/scrapers/tldr.d.ts +7 -0
  1163. package/dist/types/web/scrapers/twitter.d.ts +5 -0
  1164. package/dist/types/web/scrapers/types.d.ts +79 -0
  1165. package/dist/types/web/scrapers/utils.d.ts +32 -0
  1166. package/dist/types/web/scrapers/vimeo.d.ts +5 -0
  1167. package/dist/types/web/scrapers/vscode-marketplace.d.ts +5 -0
  1168. package/dist/types/web/scrapers/w3c.d.ts +2 -0
  1169. package/dist/types/web/scrapers/wikidata.d.ts +5 -0
  1170. package/dist/types/web/scrapers/wikipedia.d.ts +5 -0
  1171. package/dist/types/web/scrapers/youtube.d.ts +13 -0
  1172. package/dist/types/web/search/index.d.ts +120 -0
  1173. package/dist/types/web/search/provider.d.ts +55 -0
  1174. package/dist/types/web/search/providers/anthropic.d.ts +32 -0
  1175. package/dist/types/web/search/providers/base.d.ts +90 -0
  1176. package/dist/types/web/search/providers/brave.d.ts +27 -0
  1177. package/dist/types/web/search/providers/codex.d.ts +35 -0
  1178. package/dist/types/web/search/providers/duckduckgo.d.ts +57 -0
  1179. package/dist/types/web/search/providers/exa.d.ts +52 -0
  1180. package/dist/types/web/search/providers/gemini.d.ts +57 -0
  1181. package/dist/types/web/search/providers/insane.d.ts +53 -0
  1182. package/dist/types/web/search/providers/jina.d.ts +26 -0
  1183. package/dist/types/web/search/providers/kagi.d.ts +24 -0
  1184. package/dist/types/web/search/providers/kimi.d.ts +27 -0
  1185. package/dist/types/web/search/providers/openai-compatible.d.ts +9 -0
  1186. package/dist/types/web/search/providers/parallel.d.ts +15 -0
  1187. package/dist/types/web/search/providers/perplexity.d.ts +38 -0
  1188. package/dist/types/web/search/providers/searxng.d.ts +44 -0
  1189. package/dist/types/web/search/providers/synthetic.d.ts +21 -0
  1190. package/dist/types/web/search/providers/tavily.d.ts +29 -0
  1191. package/dist/types/web/search/providers/text-citations.d.ts +23 -0
  1192. package/dist/types/web/search/providers/utils.d.ts +88 -0
  1193. package/dist/types/web/search/providers/xai.d.ts +64 -0
  1194. package/dist/types/web/search/providers/zai.d.ts +28 -0
  1195. package/dist/types/web/search/render.d.ts +36 -0
  1196. package/dist/types/web/search/types.d.ts +372 -0
  1197. package/dist/types/web/search/utils.d.ts +4 -0
  1198. package/dist/types/workflow/workflow-intent-diff.d.ts +25 -0
  1199. package/dist/types/workflow/workflow-intent-report-consumer.d.ts +50 -0
  1200. package/dist/types/workflow/workflow-intent-report-schema.d.ts +2 -0
  1201. package/dist/types/workflow/workflow-intent-report.d.ts +48 -0
  1202. package/dist/types/workspace-tree.d.ts +42 -0
  1203. package/package.json +119 -118
  1204. package/src/sdk/bus/index.ts +3 -1
@@ -0,0 +1,1395 @@
1
+ /**
2
+ * AgentSession - Core abstraction for agent lifecycle and session management.
3
+ *
4
+ * This class is shared by interactive, print, ACP, and SDK-hosted session callers.
5
+ * It encapsulates:
6
+ * - Agent state access
7
+ * - Event subscription with automatic session persistence
8
+ * - Model and thinking level management
9
+ * - Compaction (manual and auto)
10
+ * - Bash execution
11
+ * - Session switching and branching
12
+ *
13
+ * Modes use this class and add their own I/O layer on top.
14
+ */
15
+ import { type Agent, type AgentContext, type AgentEvent, type AgentLoopConfig, type AgentMessage, type AgentState, type AgentTool, type MidRunMaintenanceOutcome, type StablePrefixSnapshot, ThinkingLevel } from "@sayknow-cli/agent-core";
16
+ import { type CompactionResult, type EmergencyCompactionSample } from "@sayknow-cli/agent-core/compaction";
17
+ import type { AssistantMessage, Effort, ImageContent, Message, MessageAttribution, Model, ProviderSessionState, ServiceTier, SimpleStreamOptions, TextContent, ToolCall, ToolChoice, Usage, UsageReport } from "@sayknow-cli/ai";
18
+ export interface ForkContextSeedMetadata {
19
+ sourceSessionId: string;
20
+ parentMessageCount: number;
21
+ includedMessages: number;
22
+ skippedMessages: number;
23
+ approximateTokens: number;
24
+ maxMessages: number;
25
+ maxTokens: number;
26
+ skippedReasons: Record<string, number>;
27
+ }
28
+ export interface PurgeQueuedCustomMessagesResult {
29
+ agentSteering: number;
30
+ agentFollowUp: number;
31
+ pendingNextTurn: number;
32
+ displaySteering: number;
33
+ displayFollowUp: number;
34
+ totalExecutable: number;
35
+ }
36
+ export type AbortOutcome = {
37
+ kind: "settled";
38
+ } | {
39
+ kind: "timeout";
40
+ } | {
41
+ kind: "error";
42
+ cause: unknown;
43
+ };
44
+ export type CancelAndSubmitOutcome = {
45
+ kind: "submitted";
46
+ } | {
47
+ kind: "refused";
48
+ reason: "duplicate" | "compaction";
49
+ } | {
50
+ kind: "rolled_back";
51
+ outcome: Extract<AbortOutcome, {
52
+ kind: "timeout" | "error";
53
+ }>;
54
+ };
55
+ export interface ForkContextSeed {
56
+ messages: Message[];
57
+ agentMessages: AgentMessage[];
58
+ metadata: ForkContextSeedMetadata;
59
+ cacheIdentity?: string;
60
+ appendOnlyPrefixSnapshot?: StablePrefixSnapshot;
61
+ }
62
+ export interface ForkContextSeedOptions {
63
+ maxMessages: number;
64
+ maxTokens: number;
65
+ preserveLatestUser?: boolean;
66
+ cacheIdentity?: string;
67
+ signal?: AbortSignal;
68
+ }
69
+ import { type AsyncJob, type AsyncJobDeliveryState, AsyncJobManager } from "../async";
70
+ import type { Rule } from "../capability/rule";
71
+ import { type ModelRegistry } from "../config/model-registry";
72
+ import { type ResolvedModelRoleValue, type ScopedModelSelection } from "../config/model-resolver";
73
+ import { type PromptTemplate } from "../config/prompt-templates";
74
+ import type { Settings, SkillsSettings } from "../config/settings";
75
+ import { RawSseDebugBuffer } from "../debug/raw-sse-buffer";
76
+ import { type PythonResult } from "../eval/py/executor";
77
+ import { type BashResult } from "../exec/bash-executor";
78
+ import type { TtsrManager } from "../export/ttsr";
79
+ import type { LoadedCustomCommand } from "../extensibility/custom-commands";
80
+ import type { CustomTool } from "../extensibility/custom-tools/types";
81
+ import type { ExtensionRunner } from "../extensibility/extensions";
82
+ import type { CompactOptions, ContextUsage } from "../extensibility/extensions/types";
83
+ import { type Skill, type SkillWarning } from "../extensibility/skills";
84
+ import { type FileSlashCommand } from "../extensibility/slash-commands";
85
+ import { GoalRuntime } from "../goals/runtime";
86
+ import type { Goal, GoalModeState } from "../goals/state";
87
+ import type { HindsightSessionState } from "../hindsight/state";
88
+ import { type WorkflowGateEmitter } from "../modes/shared/agent-wire/workflow-gate-broker";
89
+ import type { PlanModeState } from "../plan-mode/state";
90
+ import { type AgentRegistry } from "../registry/agent-registry";
91
+ import { MCPManager } from "../runtime-mcp/manager";
92
+ import type { NotificationSessionController } from "../sdk/bus/session-control";
93
+ import { type SecretObfuscator } from "../secrets/obfuscator";
94
+ import { type DiscoverableTool, type DiscoverableToolSearchIndex } from "../tool-discovery/tool-index";
95
+ import type { AskAnswerSource, ToolSession } from "../tools";
96
+ import type { CheckpointState } from "../tools/checkpoint";
97
+ import { type TodoItem, type TodoPhase } from "../tools/todo-write";
98
+ import { type WorkspaceTree } from "../workspace-tree";
99
+ import { type DefaultModelSelectionResult } from "./default-model-selection";
100
+ export { DefaultModelSelectionRecoveryError } from "./default-model-selection";
101
+ import type { ClientBridge, ClientBridgePermissionOption, ClientBridgePermissionOutcome, ClientBridgePermissionToolCall } from "./client-bridge";
102
+ import { type ContributionPrepOptions, type ContributionPrepResult } from "./contribution-prep";
103
+ import { type CustomMessage } from "./messages";
104
+ import type { BranchSummaryEntry, CompactionEntry, NewSessionOptions, RecoveryHydrationContext, RecoveryHydrationPromotionFence, SessionContext, SessionManager, SessionManagerCloseOutcome } from "./session-manager";
105
+ import { ToolChoiceQueue } from "./tool-choice-queue";
106
+ import { YieldQueue } from "./yield-queue";
107
+ /** Session-specific events that extend the core AgentEvent */
108
+ export type AutoCompactionContinuationSkipReason = "auto_continue_disabled_non_resumable_tail";
109
+ export type AgentSessionEvent = AgentEvent | {
110
+ type: "auto_compaction_start";
111
+ reason: "threshold" | "overflow" | "idle";
112
+ action: "context-full" | "handoff";
113
+ } | {
114
+ type: "auto_compaction_end";
115
+ action: "context-full" | "handoff";
116
+ result: CompactionResult | undefined;
117
+ aborted: boolean;
118
+ willRetry: boolean;
119
+ errorMessage?: string;
120
+ /** True when compaction was skipped for a benign reason (no model, no candidates, nothing to compact). */
121
+ skipped?: boolean;
122
+ continuationSkipReason?: AutoCompactionContinuationSkipReason;
123
+ } | {
124
+ type: "auto_retry_start";
125
+ attempt: number;
126
+ maxAttempts: number;
127
+ delayMs: number;
128
+ errorMessage: string;
129
+ unbounded?: boolean;
130
+ } | {
131
+ type: "auto_retry_end";
132
+ success: boolean;
133
+ attempt: number;
134
+ finalError?: string;
135
+ } | {
136
+ type: "model_fallback_switched";
137
+ eventId: string;
138
+ from: string;
139
+ to: string;
140
+ reason: string;
141
+ role: string;
142
+ scope: string;
143
+ activeIndex: number;
144
+ chainLength: number;
145
+ attemptsUsed: number;
146
+ } | {
147
+ type: "ttsr_triggered";
148
+ rules: Rule[];
149
+ } | {
150
+ type: "todo_reminder";
151
+ todos: TodoItem[];
152
+ attempt: number;
153
+ maxAttempts: number;
154
+ } | {
155
+ type: "todo_auto_clear";
156
+ } | {
157
+ type: "irc_message";
158
+ message: CustomMessage;
159
+ } | {
160
+ type: "subagent_steer_message";
161
+ message: CustomMessage;
162
+ } | {
163
+ type: "notice";
164
+ level: "info" | "warning" | "error";
165
+ message: string;
166
+ source?: string;
167
+ } | {
168
+ type: "thinking_level_changed";
169
+ thinkingLevel: ThinkingLevel | undefined;
170
+ } | {
171
+ type: "goal_updated";
172
+ goal: Goal | null;
173
+ state?: GoalModeState;
174
+ };
175
+ /** Listener function for agent session events */
176
+ export type AgentSessionEventListener = (event: AgentSessionEvent) => void;
177
+ export type AsyncJobSnapshotItem = Pick<AsyncJob, "id" | "type" | "status" | "label" | "startTime" | "endTime" | "metadata">;
178
+ export interface AsyncJobSnapshot {
179
+ running: AsyncJobSnapshotItem[];
180
+ recent: AsyncJobSnapshotItem[];
181
+ delivery: AsyncJobDeliveryState;
182
+ }
183
+ export interface RetainedMemorySample {
184
+ tuiChatChildren?: number;
185
+ tuiCachedRenderBytes?: number;
186
+ }
187
+ export interface AgentSessionConfig {
188
+ agent: Agent;
189
+ sessionManager: SessionManager;
190
+ settings: Settings;
191
+ /** Shared Gate-A-eligible notification session controller, when this host supports it. */
192
+ notificationSessionController?: NotificationSessionController;
193
+ /** Models to cycle through with Alt+N (from --models flag) */
194
+ scopedModels?: ScopedModelSelection[];
195
+ /** Initial session thinking selector. */
196
+ thinkingLevel?: ThinkingLevel;
197
+ /** Prompt templates for expansion */
198
+ promptTemplates?: PromptTemplate[];
199
+ /** File-based slash commands for expansion */
200
+ slashCommands?: FileSlashCommand[];
201
+ /** Extension runner (created in main.ts with wrapped tools) */
202
+ extensionRunner?: ExtensionRunner;
203
+ /** Override first-party worker integration dispatch for embedded hosts and deterministic lifecycle tests. */
204
+ workerIntegrationRequest?: (signal: AbortSignal) => Promise<void>;
205
+ /** Bound terminal worker-integration settlement for embedded hosts and deterministic lifecycle tests. */
206
+ workerIntegrationTimeoutMs?: number;
207
+ /** Loaded skills (already discovered by SDK) */
208
+ skills?: Skill[];
209
+ /** Skill loading warnings (already captured by SDK) */
210
+ skillWarnings?: SkillWarning[];
211
+ /** Custom commands (TypeScript slash commands) */
212
+ customCommands?: LoadedCustomCommand[];
213
+ skillsSettings?: SkillsSettings;
214
+ /** Model registry for API key resolution and model discovery */
215
+ modelRegistry: ModelRegistry;
216
+ /** Task recursion depth for nested sessions. Top-level sessions use 0. */
217
+ taskDepth?: number;
218
+ /** Tool registry for LSP and settings */
219
+ toolRegistry?: Map<string, AgentTool>;
220
+ /** Tool-session factory context used to lazily attach workflow-gate-only tools. */
221
+ workflowGateToolSession?: ToolSession;
222
+ /** Current session pre-LLM message transform pipeline */
223
+ transformContext?: (messages: AgentMessage[], signal?: AbortSignal) => AgentMessage[] | Promise<AgentMessage[]>;
224
+ /** Provider payload hook used by the active session request path */
225
+ onPayload?: SimpleStreamOptions["onPayload"];
226
+ /** Provider response hook used by the active session request path */
227
+ onResponse?: SimpleStreamOptions["onResponse"];
228
+ /** Raw SSE hook used by the active session request path */
229
+ onSseEvent?: SimpleStreamOptions["onSseEvent"];
230
+ /** Per-session raw SSE diagnostic buffer */
231
+ rawSseDebugBuffer?: RawSseDebugBuffer;
232
+ /** Current session message-to-LLM conversion pipeline */
233
+ convertToLlm?: (messages: AgentMessage[]) => Message[] | Promise<Message[]>;
234
+ /** System prompt builder that can consider tool availability. Returns ordered provider-facing blocks. */
235
+ rebuildSystemPrompt?: (toolNames: string[], tools: Map<string, AgentTool>, candidateModel?: Model) => Promise<{
236
+ systemPrompt: string[];
237
+ }>;
238
+ /** Initial workspace tree snapshot used for the first volatile per-turn context message. */
239
+ workspaceTree?: WorkspaceTree;
240
+ /** Rebuild the SSH tool from current capability discovery results. */
241
+ reloadSshTool?: () => Promise<AgentTool | null>;
242
+ requestedToolNames?: ReadonlySet<string>;
243
+ /** Optional per-session allowlist for tools exposed through search_tool_bm25. */
244
+ discoverableToolAllowedNames?: readonly string[];
245
+ /** Optional accessor for live MCP server instructions, injected as untrusted user-role request data. */
246
+ getMcpServerInstructions?: () => Map<string, string> | undefined;
247
+ /** Enable hidden-by-default MCP tool discovery for this session. */
248
+ mcpDiscoveryEnabled?: boolean;
249
+ /** Effective discovery mode normalized by the session factory. */
250
+ discoveryMode?: "off" | "mcp-only" | "all";
251
+ /** MCP tool names to activate for the current session when discovery mode is enabled. */
252
+ initialSelectedMCPToolNames?: string[];
253
+ /** Built-in discoverable tool names restored for the current all-discovery session. */
254
+ initialSelectedDiscoveredBuiltinToolNames?: string[];
255
+ /** Discoverable built-ins active for configured or explicit reasons independently of persisted discovery selection. */
256
+ initialBaselineDiscoveredBuiltinToolNames?: string[];
257
+ /** Whether an MCP selection was explicitly supplied to the constructor, including an empty selection. */
258
+ initialMCPToolSelectionIsExplicit?: boolean;
259
+ /** Whether a discoverable built-in selection was explicitly supplied to the constructor, including an empty selection. */
260
+ initialDiscoveredBuiltinToolSelectionIsExplicit?: boolean;
261
+ /** Whether constructor-provided MCP selections should be persisted immediately. */
262
+ persistInitialMCPToolSelection?: boolean;
263
+ /** Whether constructor-provided discovered-built-in selections should be persisted immediately. */
264
+ persistInitialDiscoveredBuiltinToolSelection?: boolean;
265
+ /** Explicit MCP authority to write for a new session; distinct from active fallback tools. */
266
+ initialPersistedMCPToolNames?: string[];
267
+ /** Explicit discovered built-in authority to write for a new session; distinct from active fallback tools. */
268
+ initialPersistedDiscoveredBuiltinToolNames?: string[];
269
+ /** Immutable predecessor authority while a recovery host is read-only. */
270
+ recoveryHydrationContext?: RecoveryHydrationContext;
271
+ /** MCP server names whose tools should seed discovery-mode sessions whenever those servers are connected. */
272
+ defaultSelectedMCPServerNames?: string[];
273
+ /** MCP tool names that should seed brand-new sessions created from this AgentSession. */
274
+ defaultSelectedMCPToolNames?: string[];
275
+ /** MCP capabilities that are always active and never part of persisted user selection. */
276
+ mandatoryMCPToolNames?: string[];
277
+ /** TTSR manager for time-traveling stream rules */
278
+ ttsrManager?: TtsrManager;
279
+ /** Secret obfuscator for deobfuscating streaming edit content */
280
+ obfuscator?: SecretObfuscator;
281
+ /** Logical owner for retained Python kernels created by this session. */
282
+ evalKernelOwnerId?: string;
283
+ /**
284
+ * AsyncJobManager that this session installed as the process-global instance.
285
+ * Only set for top-level sessions; subagents inherit the parent's manager and
286
+ * **MUST NOT** dispose it on their own teardown.
287
+ */
288
+ ownedAsyncJobManager?: AsyncJobManager;
289
+ /** Cheap TUI retained-memory counters; absent for headless sessions. */
290
+ retainedMemorySampler?: () => RetainedMemorySample;
291
+ /**
292
+ * MCPManager whose lifecycle this session owns (top-level sessions that
293
+ * connected plugin-bundle MCP servers). Only the owned manager is
294
+ * disconnected on dispose; subagents and callers that merely observe the
295
+ * process-global manager **MUST NOT** dispose it on their own teardown.
296
+ */
297
+ ownedMcpManager?: MCPManager;
298
+ /** Optional fork-context seed used to initialize a child session before its first prompt. */
299
+ forkContextSeed?: ForkContextSeed;
300
+ /** Optional provider state override. Fork-context children should omit this by default. */
301
+ providerSessionState?: Map<string, ProviderSessionState>;
302
+ /** Agent identity (registry id like "0-Main" or "3-Alice") used for IRC routing. */
303
+ agentId?: string;
304
+ /** Shared agent registry (for forwarding IRC observations to the main session UI). */
305
+ agentRegistry?: AgentRegistry;
306
+ /**
307
+ * Override the provider-facing session ID for all API requests from this session.
308
+ * When absent, `sessionManager.getSessionId()` is used. Needed when benchmark or
309
+ * SDK callers issue probes / prewarming with an explicit `--provider-session-id`
310
+ * so that credential sticky selection is consistent with the session's streaming calls.
311
+ */
312
+ providerSessionId?: string;
313
+ /** Optional provider-facing cache identity, distinct from logical session identity. */
314
+ providerCacheSessionId?: string;
315
+ }
316
+ type MidRunMaintenanceLifecycle = Parameters<NonNullable<AgentLoopConfig["maintainContext"]>>[1];
317
+ /** Options for AgentSession.prompt() */
318
+ export interface PromptOptions {
319
+ /** Whether to expand file-based prompt templates (default: true) */
320
+ expandPromptTemplates?: boolean;
321
+ /** Image attachments */
322
+ images?: ImageContent[];
323
+ /** When streaming, how to queue the message: "steer" (interrupt) or "followUp" (wait). */
324
+ streamingBehavior?: "steer" | "followUp";
325
+ /** When set to "sequential", this follow-up is delivered one prompt at a time even if followUpMode is "all". */
326
+ followUpQueuePolicy?: "respect-mode" | "sequential";
327
+ /** Optional tool choice override for the next LLM call. */
328
+ toolChoice?: ToolChoice;
329
+ /** Send as developer/system message instead of user. Providers that support it use the developer role; others fall back to user. */
330
+ synthetic?: boolean;
331
+ /** Explicit billing/initiator attribution for the prompt. Defaults to user prompts as `user` and synthetic prompts as `agent`. */
332
+ attribution?: MessageAttribution;
333
+ /** Skip pre-send compaction checks for this prompt (internal use for maintenance flows). */
334
+ skipCompactionCheck?: boolean;
335
+ /**
336
+ * Invoked after all prompt preflight checks pass and immediately before agent execution begins.
337
+ * Cancellation before this callback rejects the prompt.
338
+ */
339
+ onPreflightAccepted?: () => void;
340
+ }
341
+ /** Result from a handoff operation. */
342
+ export interface HandoffResult {
343
+ document: string;
344
+ savedPath?: string;
345
+ }
346
+ export interface SessionHandoffOptions {
347
+ autoTriggered?: boolean;
348
+ signal?: AbortSignal;
349
+ }
350
+ /** Result from cycleModel() */
351
+ export interface ModelCycleResult {
352
+ model: Model;
353
+ thinkingLevel: ThinkingLevel | undefined;
354
+ /** Whether cycling through scoped models (--models flag) or all available */
355
+ isScoped: boolean;
356
+ }
357
+ export type ModelChangeCause = "user-selection" | "profile-activation" | "fallback-switch" | "restore" | "rollback" | "startup-override" | "temporary-operation";
358
+ export type TemporaryModelReason = "plan-mode" | "context-promotion" | "temporary-cycle" | "profile-preview" | "extension-temporary" | "other";
359
+ /** Opaque handle for a non-destructive temporary provider-session scope. */
360
+ export interface TemporaryProviderSessionScope {
361
+ readonly reason: TemporaryModelReason;
362
+ }
363
+ /** Result from cycleRoleModels() */
364
+ export interface RoleModelCycleResult {
365
+ model: Model;
366
+ thinkingLevel: ThinkingLevel | undefined;
367
+ role: string;
368
+ }
369
+ /** Session statistics for /session command */
370
+ export interface SessionStats {
371
+ sessionFile: string | undefined;
372
+ sessionId: string;
373
+ userMessages: number;
374
+ assistantMessages: number;
375
+ toolCalls: number;
376
+ toolResults: number;
377
+ totalMessages: number;
378
+ tokens: {
379
+ input: number;
380
+ output: number;
381
+ cacheRead: number;
382
+ cacheWrite: number;
383
+ total: number;
384
+ };
385
+ premiumRequests: number;
386
+ cost: number;
387
+ costBreakdown?: Usage["cost"];
388
+ }
389
+ export type EphemeralTurnPurpose = "btw" | "background";
390
+ interface EphemeralTurnBaseArgs {
391
+ promptText: string;
392
+ onTextDelta?: (delta: string) => void;
393
+ signal?: AbortSignal;
394
+ }
395
+ export type EphemeralTurnArgs = (EphemeralTurnBaseArgs & {
396
+ purpose: "btw";
397
+ }) | (EphemeralTurnBaseArgs & {
398
+ purpose?: "background";
399
+ /** Internal caller-supplied, non-persistent context such as the IRC roster. */
400
+ prependMessages?: AgentMessage[];
401
+ /** Revalidates optional caller context after asynchronous boundaries. */
402
+ prependMessagesValid?: () => boolean;
403
+ /**
404
+ * An existing IRC roster claim owned by the caller. `undefined` makes this
405
+ * turn claim and commit its own roster candidate; `null` opts out.
406
+ */
407
+ ircRosterClaim?: IrcRosterClaim | null;
408
+ });
409
+ interface EphemeralTurnResult {
410
+ replyText: string;
411
+ assistantMessage: AssistantMessage;
412
+ }
413
+ type IrcRosterClaim = {
414
+ token: symbol;
415
+ signature: string;
416
+ epoch: number;
417
+ message: CustomMessage;
418
+ };
419
+ export type QueuedMessageEditMode = "steer" | "followUp";
420
+ export interface QueuedMessageEditEntry {
421
+ id: string;
422
+ text: string;
423
+ mode: QueuedMessageEditMode;
424
+ label: string;
425
+ }
426
+ /** A custom message contributed at the before-agent-start point. */
427
+ export type BeforeAgentStartInternalMessage = Pick<CustomMessage, "customType" | "content" | "display" | "details" | "attribution">;
428
+ /**
429
+ * Internal (first-party, non-user-hook) contributor invoked at the active
430
+ * before-agent-start point alongside the extension runner. Returns an optional
431
+ * custom message to append to the prompt context. Errors are nonfatal.
432
+ */
433
+ export type BeforeAgentStartContributor = (event: {
434
+ prompt: string;
435
+ images?: ImageContent[];
436
+ sessionId: string | undefined;
437
+ }) => Promise<BeforeAgentStartInternalMessage | undefined>;
438
+ export declare class WorkerIntegrationRequestScheduler {
439
+ #private;
440
+ readonly request: (signal: AbortSignal) => Promise<void>;
441
+ readonly timeoutMs: number;
442
+ constructor(request: (signal: AbortSignal) => Promise<void>, timeoutMs?: number);
443
+ enqueue(): void;
444
+ flush(): Promise<void>;
445
+ }
446
+ export type StreamingEditParsedToolCall = {
447
+ toolCall: ToolCall;
448
+ path: string;
449
+ resolvedPath: string;
450
+ diff?: string;
451
+ op?: string;
452
+ rename?: string;
453
+ };
454
+ export type StreamingEditParsedCacheEntry = {
455
+ version: string;
456
+ parsed: StreamingEditParsedToolCall | undefined;
457
+ };
458
+ export declare function getStreamingEditToolCallForEvent(event: AgentEvent, cache: Map<string, StreamingEditParsedCacheEntry>, resolvePath: (filePath: string) => string | undefined): StreamingEditParsedToolCall | undefined;
459
+ /** Test-only counters for AgentSession event fan-out hot-path assertions. */
460
+ export declare const __agentSessionPerfCounters: {
461
+ listenerSnapshotRebuilds: number;
462
+ messageUpdateExtensionQueues: number;
463
+ reset(): void;
464
+ };
465
+ export declare function buildContextInjectionSignature(kind: string, parts: readonly string[]): string;
466
+ export declare class StreamingEditFileCache {
467
+ #private;
468
+ get(path: string): string | undefined;
469
+ set(path: string, content: string): void;
470
+ delete(path: string): void;
471
+ clear(): void;
472
+ has(path: string): boolean;
473
+ get totalBytes(): number;
474
+ }
475
+ export declare class AgentSession {
476
+ #private;
477
+ readonly agent: Agent;
478
+ readonly sessionManager: SessionManager;
479
+ readonly settings: Settings;
480
+ readonly notificationSessionController: NotificationSessionController | undefined;
481
+ readonly taskDepth: number;
482
+ readonly yieldQueue: YieldQueue;
483
+ readonly configWarnings: string[];
484
+ readonly streamingEditDebugCounters: {
485
+ guardRuns: number;
486
+ processedChars: number;
487
+ checkedRemovedLines: number;
488
+ fullChecks: number;
489
+ nonEditDeterminations: number;
490
+ };
491
+ readonly rawSseDebugBuffer: RawSseDebugBuffer;
492
+ constructor(config: AgentSessionConfig);
493
+ /**
494
+ * Resolves when constructor-time workflow-gate tool restoration (ask
495
+ * registration plus durable active-workflow attachment) has settled. The
496
+ * SDK factory awaits this so a resumed canonical workflow session is
497
+ * returned with `ask` already resident.
498
+ */
499
+ get workflowGateToolRestoration(): Promise<void>;
500
+ /** Model registry for API key resolution and model discovery */
501
+ get modelRegistry(): ModelRegistry;
502
+ /** Advance the tool-choice queue and return the next directive for the upcoming LLM call. */
503
+ nextToolChoice(): ToolChoice | undefined;
504
+ /**
505
+ * Force the next model call to target a specific active tool, then terminate
506
+ * the agent loop. Pushes a two-step sequence [forced, "none"] so the model
507
+ * calls exactly the forced tool once and then cannot call another.
508
+ */
509
+ setForcedToolChoice(toolName: string): void;
510
+ /** The tool-choice queue: forces forthcoming tool invocations and carries handlers. */
511
+ get toolChoiceQueue(): ToolChoiceQueue;
512
+ /** Current skill prompt executing in this session, if any. */
513
+ getActiveSkillState(): {
514
+ skill: string;
515
+ session_id?: string;
516
+ } | undefined;
517
+ /** Best-effort accessor for the active skill's `current_phase` field from
518
+ * its persisted mode-state file. Used by the `skill` tool to enforce the
519
+ * terminal-phase chain guard. Returns undefined when no active skill is
520
+ * recorded or the mode-state file is missing/unreadable; callers should
521
+ * treat undefined as a non-terminal phase (refuses to chain). */
522
+ getActiveSkillPhase(): string | undefined;
523
+ /** Peek the in-flight directive's invocation handler for use by the resolve tool. */
524
+ peekQueueInvoker(): ((input: unknown) => Promise<unknown> | unknown) | undefined;
525
+ peekStandingResolveHandler(): ((input: unknown) => Promise<unknown> | unknown) | undefined;
526
+ setStandingResolveHandler(handler: ((input: unknown) => Promise<unknown> | unknown) | null): void;
527
+ setSdkPlanModeHandler(handler: ((on: boolean) => Promise<PlanModeState | undefined>) | null): void;
528
+ /** Provider-scoped mutable state store for transport/session caches. */
529
+ get providerSessionState(): Map<string, ProviderSessionState>;
530
+ /** Suspend provider state without closing it while a temporary model is active. */
531
+ beginTemporaryProviderSessionScope(reason: TemporaryModelReason): TemporaryProviderSessionScope;
532
+ /** Restore a temporary scope, unwinding any auto-owned scopes above it. */
533
+ restoreTemporaryProviderSessionScope(token: TemporaryProviderSessionScope): boolean;
534
+ /** Promote a temporary scope. The suspended provider state is permanently closed. */
535
+ commitTemporaryProviderSessionScope(token: TemporaryProviderSessionScope): boolean;
536
+ buildForkContextSeed(options: ForkContextSeedOptions): Promise<ForkContextSeed>;
537
+ getHindsightSessionState(): HindsightSessionState | undefined;
538
+ setHindsightSessionState(state: HindsightSessionState | undefined): HindsightSessionState | undefined;
539
+ /** TTSR manager for time-traveling stream rules */
540
+ get ttsrManager(): TtsrManager | undefined;
541
+ /** Whether a TTSR abort is pending (stream was aborted to inject rules) */
542
+ get isTtsrAbortPending(): boolean;
543
+ /** Whether the plan-mode → compaction transition's expected internal abort is
544
+ * pending. Consumed by `#handleAgentEvent` to stamp `SILENT_ABORT_MARKER`
545
+ * on the next aborted assistant message_end; cleared unconditionally by
546
+ * `InteractiveMode.#approvePlan`'s `finally` block. */
547
+ get isPlanCompactAbortPending(): boolean;
548
+ /** Arm the silent-abort marker for the next aborted assistant message_end.
549
+ * Caller MUST clear via `clearPlanCompactAbortPending()` in a `finally`
550
+ * to guarantee no leak. */
551
+ markPlanCompactAbortPending(): void;
552
+ /** Unconditionally clear the silent-abort flag. Idempotent: safe when the
553
+ * flag was never set OR was already consumed by `#handleAgentEvent`. */
554
+ clearPlanCompactAbortPending(): void;
555
+ /** Register a compact display string for a custom message that the caller is
556
+ * about to dispatch via `promptCustomMessage` / `sendCustomMessage`.
557
+ * Returns a stable tag the caller MUST embed in
558
+ * `CustomMessage.details.__pendingDisplayTag` so the agent-side
559
+ * `message_start` handler can remove the matching display entry when the
560
+ * queued message is consumed.
561
+ *
562
+ * Does NOT push to the agent's steering/followUp queue — that happens
563
+ * separately inside `sendCustomMessage`. */
564
+ enqueueCustomMessageDisplay(text: string, mode: "steer" | "followUp"): string;
565
+ getAgentId(): string | undefined;
566
+ getAsyncJobSnapshot(options?: {
567
+ recentLimit?: number;
568
+ }): AsyncJobSnapshot | null;
569
+ /**
570
+ * Emit a UI-only notice to the session. Surfaces in interactive mode as a
571
+ * `showWarning` / `showError` / `showStatus` line; non-interactive modes
572
+ * receive the event through the normal subscribe stream.
573
+ *
574
+ * Notices are NOT added to agent state and never reach the LLM — use this
575
+ * for out-of-band conditions the user should see but the model shouldn't
576
+ * react to (e.g. background queue flush failures).
577
+ */
578
+ emitNotice(level: "info" | "warning" | "error", message: string, source?: string): void;
579
+ /** Await all transformations queued by externally emitted tool results. */
580
+ awaitPendingContextTransformations(): Promise<void>;
581
+ /**
582
+ * Subscribe to agent events.
583
+ * Session persistence is handled internally (saves messages on message_end).
584
+ * Multiple listeners can be added. Returns unsubscribe function for this listener.
585
+ */
586
+ subscribe(listener: AgentSessionEventListener): () => void;
587
+ /**
588
+ * Remove all listeners, flush pending writes, and disconnect from agent.
589
+ * Call this when completely done with the session.
590
+ */
591
+ dispose(): Promise<void>;
592
+ /**
593
+ * Strict writer close for ACP session delete. On the first attempt it flushes
594
+ * pending writes, then returns the certainty-aware close outcome so the caller
595
+ * can block destructive mutation on a non-`closed` result. When the manager
596
+ * retains a retryable writer (a prior `close_failed_retryable`), the flush is
597
+ * NOT repeated: the underlying writer rejects flushes while in the retryable
598
+ * state, and `SessionManager.closeStrict()` owns the flush/close sequencing so
599
+ * a second call can return `closed` once the OS close lands.
600
+ */
601
+ closeWriterStrict(): Promise<SessionManagerCloseOutcome>;
602
+ /**
603
+ * Bounded, best-effort teardown of the subprocess-spawning resources this session
604
+ * owns: the browser tool's headless/spawned Chrome and the Python eval kernel + JS VM
605
+ * contexts. Unlike {@link dispose}, this touches only child processes and is time-boxed,
606
+ * so a top-level `SIGINT`/`SIGTERM`/`SIGHUP` handler can run it without hanging — without
607
+ * it, an external kill bypasses `dispose()` and orphans Chrome/Python to PID 1 (#698).
608
+ *
609
+ * Idempotent: every step is a no-op once the graceful {@link dispose} path has released
610
+ * the resources. Never throws; per-step failures are logged and the whole run is capped
611
+ * at `timeoutMs` so a wedged subprocess can't stall process exit.
612
+ */
613
+ disposeChildSubprocesses(timeoutMs?: number): Promise<void>;
614
+ /** Full agent state */
615
+ get state(): AgentState;
616
+ /** Current model (may be undefined if not yet selected) */
617
+ get model(): Model | undefined;
618
+ /** Current thinking level */
619
+ get thinkingLevel(): ThinkingLevel | undefined;
620
+ get serviceTier(): ServiceTier | undefined;
621
+ /** Whether agent is currently streaming a response */
622
+ get isStreaming(): boolean;
623
+ /** Wait until streaming and session settlement work are fully settled. */
624
+ waitForIdle(): Promise<void>;
625
+ drainAsyncJobDeliveriesForAcp(options?: {
626
+ timeoutMs?: number;
627
+ }): Promise<boolean>;
628
+ /**
629
+ * Owner-scoped async-delivery snapshot used by the strict ACP delete
630
+ * quiescence barrier to PROVE quiescence after a best-effort drain. Unlike
631
+ * {@link drainAsyncJobDeliveriesForAcp}'s boolean return (which conflates
632
+ * "nothing to drain" with "timed out"), this reads the live state directly so
633
+ * any remaining queued/delivering work is observable and can block mutation.
634
+ */
635
+ getAsyncDeliveryStateForAcp(): {
636
+ queued: number;
637
+ delivering: boolean;
638
+ };
639
+ /** Most recent assistant message in agent state. */
640
+ getLastAssistantMessage(): AssistantMessage | undefined;
641
+ /** Current effective system prompt blocks (includes any per-turn extension modifications) */
642
+ get systemPrompt(): string[];
643
+ /** Current retry attempt (0 if not retrying) */
644
+ get retryAttempt(): number;
645
+ /**
646
+ * Get the names of currently active tools.
647
+ * Returns the names of tools currently set on the agent.
648
+ */
649
+ getActiveToolNames(): string[];
650
+ /** Whether the edit tool is registered in this session. */
651
+ get hasEditTool(): boolean;
652
+ /**
653
+ * Get a tool by name from the registry.
654
+ */
655
+ getToolByName(name: string): AgentTool | undefined;
656
+ /**
657
+ * Register a UI/control-plane request handler for a currently foregrounded
658
+ * managed bash execution. This is intentionally narrower than generic
659
+ * process/job control: unsupported tool types simply do not register a
660
+ * handler, so Ctrl+B-style folding fails closed instead of aborting or
661
+ * shell-suspending arbitrary work.
662
+ */
663
+ registerForegroundBashBackgroundRequestHandler(handler: () => void): () => void;
664
+ /**
665
+ * Returns whether a managed foreground bash call is currently backgroundable.
666
+ * UI key handlers use this to avoid consuming normal editor shortcuts when
667
+ * no fold target exists.
668
+ */
669
+ hasForegroundBashBackgroundRequestHandler(): boolean;
670
+ /** Set the SDK permission policy used by guarded ACP tool execution. */
671
+ setSdkPermissionMode(mode: "prompt" | "allow" | "deny"): void;
672
+ /** Current SDK permission policy for guarded ACP tool execution. */
673
+ get sdkPermissionMode(): "prompt" | "allow" | "deny";
674
+ /** Register or clear the SDK reverse permission provider for this session. */
675
+ setSdkPermissionProvider(provider: ((toolCall: ClientBridgePermissionToolCall, options: ClientBridgePermissionOption[], signal?: AbortSignal) => Promise<ClientBridgePermissionOutcome>) | undefined): void;
676
+ /**
677
+ * Ask the active managed foreground bash call to return as a background job.
678
+ * Returns false when no supported foreground tool is currently backgroundable.
679
+ */
680
+ requestForegroundBashBackground(): boolean;
681
+ /**
682
+ * Get all configured tool names (built-in via --tools or default, plus custom tools).
683
+ */
684
+ getAllToolNames(): string[];
685
+ getSelectedMCPToolNames(): string[];
686
+ isToolDiscoveryEnabled(): boolean;
687
+ getDiscoverableTools(filter?: {
688
+ source?: DiscoverableTool["source"];
689
+ }): DiscoverableTool[];
690
+ getDiscoverableToolSearchIndex(): DiscoverableToolSearchIndex;
691
+ getSelectedDiscoveredToolNames(): string[];
692
+ activateDiscoveredTools(toolNames: string[]): Promise<string[]>;
693
+ /**
694
+ * Reload the SSH tool from disk-backed capability discovery and make the
695
+ * refreshed definition visible to the next model call without restarting.
696
+ */
697
+ refreshSshTool(options?: {
698
+ activateIfAvailable?: boolean;
699
+ }): Promise<void>;
700
+ /**
701
+ * Set active tools by name.
702
+ * Only tools in the registry can be enabled. Unknown tool names are ignored.
703
+ * Also rebuilds the system prompt to reflect the new tool set.
704
+ * Changes take effect before the next model call.
705
+ */
706
+ setActiveToolsByName(toolNames: string[]): Promise<void>;
707
+ /** Rebuild the base system prompt using the current active tool set. */
708
+ refreshBaseSystemPrompt(): Promise<void>;
709
+ /**
710
+ * Replace MCP tools in the registry and recompute the visible MCP tool set immediately.
711
+ * This allows /mcp add/remove/reauth to take effect without restarting the session.
712
+ */
713
+ refreshMCPTools(mcpTools: CustomTool[]): Promise<void>;
714
+ /**
715
+ * Refresh plugin sub-skill tools after workflow/sub-skill activation or phase changes.
716
+ */
717
+ refreshSkcSubskillTools(): Promise<void>;
718
+ /** Whether auto-compaction is currently running */
719
+ get isCompacting(): boolean;
720
+ /**
721
+ * Whether idle-flush tasks, auto-continuations, or other short-lived
722
+ * post-prompt work are pending. True in the brief window after
723
+ * `session.prompt()` returns but before a scheduled background delivery
724
+ * (e.g. an async-job result) has finished its own streaming turn.
725
+ * Loop-mode and similar auto-submit paths should treat this as a block
726
+ * to avoid racing against the delivery turn.
727
+ */
728
+ get hasPostPromptWork(): boolean;
729
+ /** All messages including custom types like BashExecutionMessage */
730
+ get messages(): AgentMessage[];
731
+ get transcriptPromptGeneration(): number;
732
+ /** The immutable recovery authority, present only before external ownership promotion. */
733
+ get recoveryHydrationContext(): RecoveryHydrationContext | undefined;
734
+ /** Enables normal session mutations after the owner has published its durable fence and writer lease. */
735
+ promoteRecoveryHydrationAfterOwnershipReadyFence(fence: RecoveryHydrationPromotionFence): Promise<void>;
736
+ /** Main startup calls this exactly once, after a strict open returned `kind: "opened"`. */
737
+ continuePersistedHistory(): Promise<void>;
738
+ buildDisplaySessionContext(): SessionContext;
739
+ /** Convert session messages using the same pre-LLM pipeline as the active session. */
740
+ convertMessagesToLlm(messages: AgentMessage[], signal?: AbortSignal): Promise<Message[]>;
741
+ /** Apply session-level stream hooks to a direct side request. */
742
+ prepareSimpleStreamOptions(options: SimpleStreamOptions, provider?: string): SimpleStreamOptions;
743
+ /** Current steering mode */
744
+ get steeringMode(): "all" | "one-at-a-time";
745
+ /** Current follow-up mode */
746
+ get followUpMode(): "all" | "one-at-a-time";
747
+ /** Current interrupt mode */
748
+ get interruptMode(): "immediate" | "wait";
749
+ /** Current session file path, or undefined if sessions are disabled */
750
+ get sessionFile(): string | undefined;
751
+ /** Current session ID */
752
+ get sessionId(): string;
753
+ /** Current session display name, if set */
754
+ get sessionName(): string | undefined;
755
+ /** Scoped models for cycling (from --models flag) */
756
+ get scopedModels(): ReadonlyArray<ScopedModelSelection>;
757
+ /** Prompt templates */
758
+ getPlanModeState(): PlanModeState | undefined;
759
+ /** Live SDK configuration values exposed through the session query surface. */
760
+ getSdkConfigItems(): Record<string, string>;
761
+ setPlanModeState(state: PlanModeState | undefined): void;
762
+ invokeSkill(name: string, args?: string): Promise<{
763
+ name: string;
764
+ path: string;
765
+ args?: string;
766
+ lineCount?: number;
767
+ }>;
768
+ setSdkPlanMode(on: boolean): Promise<PlanModeState | undefined>;
769
+ operateGoal(op: "create" | "get" | "resume" | "pause" | "complete" | "drop", objective?: string): Promise<unknown>;
770
+ getTranscript(): Array<{
771
+ id: string;
772
+ role: string;
773
+ textSummary: string;
774
+ ts: string;
775
+ body: string;
776
+ }>;
777
+ getTranscriptBody(entryId: string): string | undefined;
778
+ getGoalModeState(): GoalModeState | undefined;
779
+ setGoalModeState(state: GoalModeState | undefined): void;
780
+ getWorkflowGateEmitter(): WorkflowGateEmitter | undefined;
781
+ getAskAnswerSource(): AskAnswerSource | undefined;
782
+ setWorkflowGateEmitter(emitter: WorkflowGateEmitter | undefined): void;
783
+ get goalRuntime(): GoalRuntime;
784
+ markPlanReferenceSent(): void;
785
+ setPlanReferencePath(path: string): void;
786
+ get clientBridge(): ClientBridge | undefined;
787
+ setClientBridge(bridge: ClientBridge | undefined): void;
788
+ getCheckpointState(): CheckpointState | undefined;
789
+ setCheckpointState(state: CheckpointState | undefined): void;
790
+ /**
791
+ * Inject the plan mode context message into the conversation history.
792
+ */
793
+ sendPlanModeContext(options?: {
794
+ deliverAs?: "steer" | "followUp" | "nextTurn";
795
+ }): Promise<void>;
796
+ sendGoalModeContext(options?: {
797
+ deliverAs?: "steer" | "followUp" | "nextTurn";
798
+ }): Promise<void>;
799
+ resolveRoleModel(role: string): Model | undefined;
800
+ /**
801
+ * Resolve a role to its model AND thinking level.
802
+ * Unlike resolveRoleModel(), this preserves the thinking level suffix
803
+ * from role configuration (e.g., "anthropic/Anthropic model-sonnet-4-5:xhigh").
804
+ */
805
+ resolveRoleModelWithThinking(role: string): ResolvedModelRoleValue;
806
+ get promptTemplates(): ReadonlyArray<PromptTemplate>;
807
+ /** Replace file-based slash commands used for prompt expansion. */
808
+ setSlashCommands(slashCommands: FileSlashCommand[]): void;
809
+ /** Custom commands (TypeScript slash commands and MCP prompts) */
810
+ get customCommands(): ReadonlyArray<LoadedCustomCommand>;
811
+ /** Update the MCP prompt commands list. Called when server prompts are (re)loaded. */
812
+ setMCPPromptCommands(commands: LoadedCustomCommand[]): void;
813
+ /**
814
+ * Send a prompt to the agent.
815
+ * - Handles extension commands (registered via pi.registerCommand) immediately, even during streaming
816
+ * - Expands file-based prompt templates by default
817
+ * - During streaming, queues via steer() or followUp() based on streamingBehavior option
818
+ * - Validates model and API key before sending (when not streaming)
819
+ * @throws Error if streaming and no streamingBehavior specified
820
+ * @throws Error if no model selected or no API key available (when not streaming)
821
+ */
822
+ prompt(text: string, options?: PromptOptions): Promise<void>;
823
+ promptCustomMessage<T = unknown>(message: Pick<CustomMessage<T>, "customType" | "content" | "display" | "details" | "attribution">, options?: Pick<PromptOptions, "streamingBehavior" | "toolChoice" | "followUpQueuePolicy">): Promise<void>;
824
+ /**
825
+ * Queue a steering message to interrupt the agent mid-run.
826
+ */
827
+ steer(text: string, images?: ImageContent[]): Promise<void>;
828
+ /**
829
+ * Queue a follow-up message to process after the agent would otherwise stop.
830
+ */
831
+ followUp(text: string, images?: ImageContent[], options?: Pick<PromptOptions, "followUpQueuePolicy">): Promise<void>;
832
+ queueDeferredMessage(message: CustomMessage): void;
833
+ queueDeferredMessageForTests(message: CustomMessage, triggerTurn?: boolean): void;
834
+ /** Read-only test seam for the hidden next-turn context queue. */
835
+ getPendingNextTurnMessagesForTests(): readonly CustomMessage[];
836
+ /** Test-only abort outcome override; undefined retains the production abort race. */
837
+ setCancelAndSubmitAbortOutcomeProviderForTests(provider: (() => Promise<AbortOutcome>) | undefined): void;
838
+ /**
839
+ * Send a custom message to the session. Creates a CustomMessageEntry.
840
+ *
841
+ * Handles three cases:
842
+ * - Streaming: queue as steer/follow-up or store for next turn
843
+ * - Not streaming + triggerTurn: appends to state/session, starts new turn unless the client cannot own it
844
+ * - Not streaming + no trigger: appends to state/session, no turn
845
+ */
846
+ sendCustomMessage<T = unknown>(message: Pick<CustomMessage<T>, "customType" | "content" | "display" | "details" | "attribution">, options?: {
847
+ triggerTurn?: boolean;
848
+ deliverAs?: "steer" | "followUp" | "nextTurn";
849
+ followUpQueuePolicy?: "respect-mode" | "sequential";
850
+ }): Promise<void>;
851
+ /** Remove undelivered queued custom messages matching `predicate` from executable queues and tagged display mirrors. */
852
+ purgeQueuedCustomMessages(predicate: (message: CustomMessage) => boolean): PurgeQueuedCustomMessagesResult;
853
+ /**
854
+ * Send a user message to the agent.
855
+ * When deliverAs is set, queue the message instead of starting a new turn.
856
+ *
857
+ * @param content User message content (string or content array)
858
+ * @param options.deliverAs Delivery mode: "steer" or "followUp"
859
+ */
860
+ sendUserMessage(content: string | (TextContent | ImageContent)[], options?: {
861
+ deliverAs?: "steer" | "followUp";
862
+ onPreflightAccepted?: () => void;
863
+ }): Promise<void>;
864
+ /**
865
+ * Clear queued messages and return them.
866
+ * Useful for restoring to editor when user aborts.
867
+ */
868
+ clearQueue(): {
869
+ steering: string[];
870
+ followUp: string[];
871
+ };
872
+ /** Number of pending messages (includes steering, follow-up, and next-turn messages) */
873
+ get queuedMessageCount(): number;
874
+ /** Typed pending-message counts per queue (steering, follow-up, next-turn). */
875
+ get pendingMessageCounts(): {
876
+ steering: number;
877
+ followUp: number;
878
+ nextTurn: number;
879
+ };
880
+ /** Whether the agent has queued steering messages that a `user_interrupt`
881
+ * abort would resume into (steer-on-interrupt). Drives the Esc-on-steer UX:
882
+ * the first Esc consumes the steer and auto-continues, a second Esc aborts. */
883
+ get hasQueuedSteering(): boolean;
884
+ /** Get pending messages (read-only). Returns the public text-only view;
885
+ * internal `{text, tag?}` records are mapped to `.text` so callers
886
+ * (`updatePendingMessagesDisplay`, `restoreQueuedMessagesToEditor`) see
887
+ * the unchanged historical shape. */
888
+ getQueuedMessages(): {
889
+ steering: readonly string[];
890
+ followUp: readonly string[];
891
+ };
892
+ getQueuedMessageEntries(): QueuedMessageEditEntry[];
893
+ removeQueuedMessageForEditing(id: string): string | undefined;
894
+ moveQueuedMessageForEditing(id: string, direction: "up" | "down"): boolean;
895
+ /**
896
+ * Pop the newest queued message across steering and follow-up queues.
897
+ * Used by dequeue keybinding to restore messages to editor one at a time.
898
+ * Returns the popped entry's `.text`; the tag (if any) dies with the
899
+ * record — no orphan state can outlive the queue entry.
900
+ */
901
+ popLastQueuedMessage(): string | undefined;
902
+ get skillsSettings(): SkillsSettings | undefined;
903
+ /** Skills loaded by SDK (always includes bundled SKC workflow defaults unless explicitly overridden by SDK callers) */
904
+ get skills(): readonly Skill[];
905
+ /** Skill loading warnings captured by SDK */
906
+ get skillWarnings(): readonly SkillWarning[];
907
+ getTodoPhases(): TodoPhase[];
908
+ setTodoPhases(phases: TodoPhase[]): void;
909
+ applyCompactionPostAppendForTests(compactionEntryId: string, firstKeptEntryId: string, fromExtension?: boolean): Promise<CompactionEntry | undefined>;
910
+ /** Read-only test seam for active mid-run EventStream drain barriers. */
911
+ get activeMidRunBarrierCountForTests(): number;
912
+ /** Read-only test seam for active mid-run maintenance invocations. */
913
+ get activeMidRunMaintenanceCountForTests(): number;
914
+ /** Test seam: drive the cooperative mid-run maintenance checkpoint directly. */
915
+ runMidRunMaintenanceForTests(context: AgentContext, lifecycle?: MidRunMaintenanceLifecycle): Promise<MidRunMaintenanceOutcome>;
916
+ /** Test seam: estimate mid-run context tokens for a given context view. */
917
+ estimateMidRunContextTokensForTests(messages: readonly AgentMessage[]): number;
918
+ /** Abort current operation and preserve the established void/rethrow contract. */
919
+ abort(options?: {
920
+ goalReason?: "interrupted" | "internal";
921
+ timeoutMs?: number;
922
+ cause?: "user_interrupt" | "new_session" | "session_switch" | "compaction" | "handoff" | "tool_abort" | "internal";
923
+ silent?: boolean;
924
+ }): Promise<void>;
925
+ /** Atomically interrupt the active run and make text the next prompt. */
926
+ cancelAndSubmit(text: string, options?: {
927
+ queuedEntryId?: string;
928
+ }): Promise<CancelAndSubmitOutcome>;
929
+ /**
930
+ * Start a new session, optionally with initial messages and parent tracking.
931
+ * Clears all messages and starts a new session.
932
+ * Listeners are preserved and will continue receiving events.
933
+ * @param options - Optional initial messages and parent session path
934
+ * @returns true if completed, false if cancelled by hook
935
+ */
936
+ newSession(options?: NewSessionOptions): Promise<boolean>;
937
+ /**
938
+ * Clear active conversational/model context while preserving the current
939
+ * session identity and durable history trail.
940
+ */
941
+ clearContext(): Promise<boolean>;
942
+ /**
943
+ * Set a display name for the current session.
944
+ */
945
+ setSessionName(name: string, source?: "auto" | "user"): Promise<boolean>;
946
+ /**
947
+ * Fork the current session, creating a new session file with the exact same state.
948
+ * Copies all entries and artifacts to the new session.
949
+ * Unlike newSession(), this preserves all messages in the agent state.
950
+ * @returns true if completed, false if cancelled by hook or not persisting
951
+ */
952
+ fork(): Promise<boolean>;
953
+ /**
954
+ * Set model directly.
955
+ * Validates API key, saves to session and settings.
956
+ * @throws Error if no API key available for the model
957
+ */
958
+ setModel(model: Model, role?: string, options?: {
959
+ selector?: string;
960
+ thinkingLevel?: ThinkingLevel;
961
+ cause?: ModelChangeCause;
962
+ }): Promise<void>;
963
+ setActiveModelProfile(name: string | undefined): void;
964
+ getActiveModelProfile(): string | undefined;
965
+ /** Return the persisted configured fallback selectors for a model role. */
966
+ getConfiguredModelChain(role: string): readonly string[] | undefined;
967
+ /** Persist the configured fallback selectors for a model role. */
968
+ setConfiguredModelChain(role: string, entries: readonly string[], origin: string, identity?: string, explicitHead?: boolean): void;
969
+ /**
970
+ * Replace only the in-memory default fallback controller. Used when startup
971
+ * falls through an unavailable persisted chain to the global default, which
972
+ * must not mutate the persisted configured intent.
973
+ */
974
+ setDefaultFallbackRuntimeModel(selector: string): void;
975
+ /**
976
+ * Seed default fallback state after guarded auth-aware model resolution skips chain entries.
977
+ * The configured chain's role, origin, and identity are retained by the controller.
978
+ */
979
+ seedDefaultFallbackResolution(activeIndex: number, skips: Array<{
980
+ selector: string;
981
+ reason: string;
982
+ }>): void;
983
+ /**
984
+ * The model selector ("provider/id") that resume restores as the session
985
+ * default — the latest session-log `model_change` with role="default".
986
+ * Model-profile activation snapshots this before mutating the session so a
987
+ * failed-activation rollback can restore the pre-activation resume default
988
+ * instead of promoting a transient runtime model to the resume default.
989
+ */
990
+ getSessionDefaultModelSelector(): string | undefined;
991
+ /**
992
+ * Re-assert the session resume default ("provider/id") in the session log
993
+ * WITHOUT touching the live runtime model. Appends a `model_change` with
994
+ * role="default"; never writes to global settings (apply-for-this-session
995
+ * semantics). Used by model-profile activation rollback to neutralize the
996
+ * profile main model the failed activation already recorded as the default.
997
+ */
998
+ recordResumeDefaultModel(selector: string): void;
999
+ /**
1000
+ * Set model temporarily (for this session only).
1001
+ * Validates API key, saves to session log but NOT to settings.
1002
+ *
1003
+ * The change is recorded in the session log as `role: "temporary"` by
1004
+ * default, which means it is NOT restored as the session default on resume —
1005
+ * transient retry/fallback/context-promotion/plan switches must not clobber
1006
+ * the user's explicit pick (issue #849). Model-profile activation passes
1007
+ * `persistAsSessionDefault: true` so the profile's main model becomes the
1008
+ * session default and survives resume, while still not being written to
1009
+ * global settings (new sessions keep the global default).
1010
+ * @throws Error if no API key available for the model
1011
+ */
1012
+ setModelTemporary(model: Model, thinkingLevel?: ThinkingLevel, options?: {
1013
+ persistAsSessionDefault?: boolean;
1014
+ cause?: ModelChangeCause;
1015
+ reason?: TemporaryModelReason;
1016
+ providerSessionScope?: TemporaryProviderSessionScope;
1017
+ signal?: AbortSignal;
1018
+ }): Promise<TemporaryProviderSessionScope | void>;
1019
+ /** Set a durable per-session model from a control surface without exposing credential errors. */
1020
+ setModelTemporaryForControl(model: Model, expectedSessionId?: string): Promise<boolean>;
1021
+ setDefaultModelSelection(model: Model, thinkingLevel: ThinkingLevel | undefined): Promise<DefaultModelSelectionResult>;
1022
+ /**
1023
+ * Cycle to next/previous model.
1024
+ * Uses scoped models (from --models flag) if available, otherwise all available models.
1025
+ * @param direction - "forward" (default) or "backward"
1026
+ * @returns The new model info, or undefined if only one model available
1027
+ */
1028
+ cycleModel(direction?: "forward" | "backward"): Promise<ModelCycleResult | undefined>;
1029
+ /** Number of configured role-model candidates that can be cycled. */
1030
+ getRoleModelCycleCandidateCount(roleOrder?: readonly string[]): number;
1031
+ /**
1032
+ * Cycle through configured role models in a fixed order.
1033
+ * Skips missing roles.
1034
+ * @param roleOrder - Order of roles to cycle through (e.g., ["default"])
1035
+ * @param options - Optional settings: `temporary` to not persist to settings
1036
+ */
1037
+ cycleRoleModels(roleOrder: readonly string[], options?: {
1038
+ temporary?: boolean;
1039
+ }): Promise<RoleModelCycleResult | undefined>;
1040
+ /**
1041
+ * Get all available models with valid API keys.
1042
+ */
1043
+ getAvailableModels(): Model[];
1044
+ /**
1045
+ * Set thinking level.
1046
+ * Saves the effective metadata-clamped level to the session, and to settings when requested.
1047
+ */
1048
+ setThinkingLevel(level: ThinkingLevel | undefined, persist?: boolean): void;
1049
+ /**
1050
+ * Set thinking level from a control surface. Global changes are durable or rolled back.
1051
+ */
1052
+ setThinkingLevelForControl(level: ThinkingLevel, persist: boolean): Promise<void>;
1053
+ getThinkingScopeForControl(): "session" | "global config";
1054
+ getThinkingVisibility(): "visible" | "hidden";
1055
+ setThinkingVisibility(visibility: "visible" | "hidden", persist?: boolean): void;
1056
+ /**
1057
+ * Set thinking visibility from a control surface. Global changes are durable or rolled back.
1058
+ */
1059
+ setThinkingVisibilityForControl(visibility: "visible" | "hidden", persist: boolean): Promise<void>;
1060
+ /**
1061
+ * Cycle to next thinking level.
1062
+ * @returns New level, or undefined if model doesn't support thinking
1063
+ */
1064
+ cycleThinkingLevel(): ThinkingLevel | undefined;
1065
+ /**
1066
+ * True when *any* fast-mode-granting service tier is configured, regardless
1067
+ * of whether the active model's provider actually realizes it. Used by the
1068
+ * toggle (`/fast on|off`) so re-toggling a scoped tier (`openai-only`,
1069
+ * `Anthropic model-only`) doesn't silently broaden it to unscoped `priority`.
1070
+ *
1071
+ * For "is fast mode actually applied to the next request?" use
1072
+ * {@link isFastModeActive} instead — that one respects the model's provider.
1073
+ */
1074
+ isFastModeEnabled(): boolean;
1075
+ /**
1076
+ * True when the configured `serviceTier` resolves to `"priority"` for the
1077
+ * given model `provider`. Returns false for scoped tiers that don't match
1078
+ * (e.g. `"openai-only"` on an anthropic provider) and when `provider` is
1079
+ * undefined. This is the canonical provider-aware fast-mode predicate.
1080
+ */
1081
+ isFastForProvider(provider?: string): boolean;
1082
+ /**
1083
+ * Provider-aware fast-mode predicate for task-tool subagent roles, evaluated
1084
+ * against the effective subagent tier (`task.serviceTier`) rather than the
1085
+ * main session tier. Use this for `task.agentModelOverrides` role rows so the
1086
+ * ⚡ glyph reflects the tier the subagent actually runs under.
1087
+ */
1088
+ isFastForSubagentProvider(provider?: string): boolean;
1089
+ /**
1090
+ * True when the configured `serviceTier` resolves to `"priority"` for the
1091
+ * *currently selected model's provider* AND fast mode was not auto-disabled
1092
+ * for that provider this session. This is the current-model EFFECTIVE
1093
+ * predicate (what the next request actually does); use {@link isFastForProvider}
1094
+ * for pure configured intent (e.g. subagent/`modelRoles` display rows).
1095
+ */
1096
+ isFastModeActive(): boolean;
1097
+ setServiceTier(serviceTier: ServiceTier | undefined): void;
1098
+ setFastMode(enabled: boolean): void;
1099
+ toggleFastMode(): boolean;
1100
+ /**
1101
+ * Get available thinking levels for current model.
1102
+ */
1103
+ getAvailableThinkingLevels(): ReadonlyArray<Effort>;
1104
+ /**
1105
+ * Set steering mode.
1106
+ * Saves to settings.
1107
+ */
1108
+ setSteeringMode(mode: "all" | "one-at-a-time"): void;
1109
+ /**
1110
+ * Set follow-up mode.
1111
+ * Saves to settings.
1112
+ */
1113
+ setFollowUpMode(mode: "all" | "one-at-a-time"): void;
1114
+ /**
1115
+ * Set interrupt mode.
1116
+ * Saves to settings.
1117
+ */
1118
+ setInterruptMode(mode: "immediate" | "wait"): void;
1119
+ /**
1120
+ * Manually compact the session context.
1121
+ * Aborts current agent operation first.
1122
+ * @param customInstructions Optional instructions for the compaction summary
1123
+ * @param options Optional callbacks for completion/error handling
1124
+ */
1125
+ compact(customInstructions?: string, options?: CompactOptions): Promise<CompactionResult>;
1126
+ /**
1127
+ * Cancel in-progress context maintenance (manual compaction, auto-compaction, or auto-handoff).
1128
+ */
1129
+ abortCompaction(): void;
1130
+ /** Trigger idle compaction through the auto-compaction flow (with UI events). */
1131
+ runIdleCompaction(): Promise<void>;
1132
+ /**
1133
+ * Cancel in-progress branch summarization.
1134
+ */
1135
+ abortBranchSummary(): void;
1136
+ /**
1137
+ * Cancel in-progress handoff generation.
1138
+ */
1139
+ abortHandoff(): void;
1140
+ /**
1141
+ * Check if handoff generation is in progress.
1142
+ */
1143
+ get isGeneratingHandoff(): boolean;
1144
+ /**
1145
+ * Generate a handoff document with a oneshot LLM call, then start a new session with it.
1146
+ *
1147
+ * @param customInstructions Optional focus for the handoff document
1148
+ * @param options Handoff execution options
1149
+ * @returns The handoff document text, or undefined if cancelled/failed
1150
+ */
1151
+ handoff(customInstructions?: string, options?: SessionHandoffOptions): Promise<HandoffResult | undefined>;
1152
+ prepareContributionPrep(options?: ContributionPrepOptions): Promise<ContributionPrepResult>;
1153
+ /** Test seam: override the emergency-compaction resource sampler so tests never read real RSS. */
1154
+ setResourceSampler(sampler: () => EmergencyCompactionSample): void;
1155
+ setRetainedMemorySampler(sampler: (() => RetainedMemorySample) | undefined): void;
1156
+ /**
1157
+ * Toggle auto-compaction setting.
1158
+ */
1159
+ setAutoCompactionEnabled(enabled: boolean): void;
1160
+ /** Whether auto-compaction is enabled */
1161
+ get autoCompactionEnabled(): boolean;
1162
+ /**
1163
+ * Cancel in-progress retry.
1164
+ */
1165
+ abortRetry(): void;
1166
+ /**
1167
+ * Skip the current retry backoff and re-attempt immediately. Distinct from
1168
+ * abortRetry(), which cancels the retry and returns to idle. No-op when no
1169
+ * retry backoff is active.
1170
+ */
1171
+ retryNow(): void;
1172
+ /** Whether auto-retry is currently in progress */
1173
+ get isRetrying(): boolean;
1174
+ /** Whether auto-retry is enabled */
1175
+ get autoRetryEnabled(): boolean;
1176
+ /**
1177
+ * Toggle auto-retry setting.
1178
+ */
1179
+ setAutoRetryEnabled(enabled: boolean): void;
1180
+ /**
1181
+ * Manually retry the last failed assistant turn, or resume an interrupted tail
1182
+ * left by a non-graceful process exit after the user/custom/tool-result message
1183
+ * was persisted but before the agent emitted a terminal assistant response.
1184
+ * Removes failed/aborted/unresolved tool-use assistant tails before
1185
+ * re-attempting with a fresh retry budget.
1186
+ * @returns true if retry/resume was initiated, false if no retryable tail exists or agent is busy
1187
+ */
1188
+ retry(): Promise<boolean>;
1189
+ /**
1190
+ * Execute a bash command.
1191
+ * Adds result to agent context and session.
1192
+ * @param command The bash command to execute
1193
+ * @param onChunk Optional streaming callback for output
1194
+ * @param options.excludeFromContext If true, command output won't be sent to LLM (!! prefix)
1195
+ */
1196
+ executeBash(command: string, onChunk?: (chunk: string) => void, options?: {
1197
+ excludeFromContext?: boolean;
1198
+ }): Promise<BashResult>;
1199
+ /**
1200
+ * Record a bash execution result in session history.
1201
+ * Used by executeBash and by extensions that handle bash execution themselves.
1202
+ */
1203
+ recordBashResult(command: string, result: BashResult, options?: {
1204
+ excludeFromContext?: boolean;
1205
+ }): void;
1206
+ /**
1207
+ * Cancel running bash command.
1208
+ */
1209
+ abortBash(): void;
1210
+ /** Whether a bash command is currently running */
1211
+ get isBashRunning(): boolean;
1212
+ /** Whether there are pending bash messages waiting to be flushed */
1213
+ get hasPendingBashMessages(): boolean;
1214
+ /**
1215
+ * Execute Python code in the shared kernel.
1216
+ * Uses the same kernel session as eval's Python backend, allowing collaborative editing.
1217
+ * @param code The Python code to execute
1218
+ * @param onChunk Optional streaming callback for output
1219
+ * @param options.excludeFromContext If true, execution won't be sent to LLM ($$ prefix)
1220
+ */
1221
+ executePython(code: string, onChunk?: (chunk: string) => void, options?: {
1222
+ excludeFromContext?: boolean;
1223
+ }): Promise<PythonResult>;
1224
+ assertEvalExecutionAllowed(): void;
1225
+ /**
1226
+ * Track Python work started outside AgentSession.executePython so dispose can await and abort it too.
1227
+ */
1228
+ trackEvalExecution<T>(execution: Promise<T>, abortController: AbortController): Promise<T>;
1229
+ /**
1230
+ * Record a Python execution result in session history.
1231
+ */
1232
+ recordPythonResult(code: string, result: PythonResult, options?: {
1233
+ excludeFromContext?: boolean;
1234
+ }): void;
1235
+ /**
1236
+ * Cancel running Python execution.
1237
+ */
1238
+ abortEval(): void;
1239
+ /** Whether a Python execution is currently running */
1240
+ get isEvalRunning(): boolean;
1241
+ /** Whether there are pending Python messages waiting to be flushed */
1242
+ get hasPendingPythonMessages(): boolean;
1243
+ /**
1244
+ * Generate an ephemeral reply to a background message (e.g. an IRC ping from
1245
+ * another agent) using this session's current model + system prompt + history.
1246
+ *
1247
+ * The reply is computed via a side-channel `streamSimple` call (analogous to
1248
+ * `/btw`) so it never blocks on the recipient's in-flight tool calls. After
1249
+ * the reply is generated, both the incoming question and the auto-reply are
1250
+ * queued for injection into the recipient's persisted history so the model
1251
+ * sees the exchange on its next turn. Injection happens immediately when the
1252
+ * session is idle, otherwise it is deferred until streaming ends.
1253
+ */
1254
+ respondAsBackground(args: {
1255
+ from: string;
1256
+ message: string;
1257
+ awaitReply?: boolean;
1258
+ signal?: AbortSignal;
1259
+ }): Promise<{
1260
+ replyText: string | null;
1261
+ }>;
1262
+ /**
1263
+ * Emit an IRC relay observation event on this session for UI rendering only.
1264
+ * Does not persist the record to history. Public so other sessions can forward.
1265
+ */
1266
+ emitIrcRelayObservation(record: CustomMessage): void;
1267
+ emitSubagentSteerObservation(args: {
1268
+ from: string;
1269
+ to: string;
1270
+ body: string;
1271
+ timestamp?: number;
1272
+ }): void;
1273
+ emitSubagentSteerRelayObservation(record: CustomMessage): void;
1274
+ /**
1275
+ * Run a single ephemeral side-channel turn against this session's current
1276
+ * model + system prompt + history. No tools are used and session history is
1277
+ * not modified. Background turns retain the IRC/session behavior used by
1278
+ * autoreplies; `/btw` turns use an isolated committed-context policy.
1279
+ */
1280
+ runEphemeralTurn(args: EphemeralTurnArgs): Promise<EphemeralTurnResult>;
1281
+ /**
1282
+ * Reload the current session from disk.
1283
+ *
1284
+ * Intended for extension commands and headless modes to re-read the current session
1285
+ * file and re-emit session_switch hooks.
1286
+ */
1287
+ reload(): Promise<void>;
1288
+ /**
1289
+ * Switch to a different session file.
1290
+ * Aborts current operation, loads messages, restores model/thinking.
1291
+ * Listeners are preserved and will continue receiving events.
1292
+ * @returns true if switch completed, false if cancelled by hook
1293
+ */
1294
+ switchSession(sessionPath: string): Promise<boolean>;
1295
+ /**
1296
+ * Create a branch from a specific entry.
1297
+ * Emits before_branch/branch session events to hooks.
1298
+ *
1299
+ * @param entryId ID of the entry to branch from
1300
+ * @returns Object with:
1301
+ * - selectedText: The text of the selected user message (for editor pre-fill)
1302
+ * - cancelled: True if a hook cancelled the branch
1303
+ */
1304
+ branch(entryId: string): Promise<{
1305
+ selectedText: string;
1306
+ cancelled: boolean;
1307
+ }>;
1308
+ /**
1309
+ * Navigate to a different node in the session tree.
1310
+ * Unlike branch() which creates a new session file, this stays in the same file.
1311
+ *
1312
+ * @param targetId The entry ID to navigate to
1313
+ * @param options.summarize Whether user wants to summarize abandoned branch
1314
+ * @param options.customInstructions Custom instructions for summarizer
1315
+ * @returns Result with editorText (if user message) and cancelled status
1316
+ */
1317
+ navigateTree(targetId: string, options?: {
1318
+ summarize?: boolean;
1319
+ customInstructions?: string;
1320
+ }): Promise<{
1321
+ editorText?: string;
1322
+ cancelled: boolean;
1323
+ aborted?: boolean;
1324
+ summaryEntry?: BranchSummaryEntry;
1325
+ /** Raw session context built during navigation — pass to renderInitialMessages to skip a second O(N) walk. */
1326
+ sessionContext?: SessionContext;
1327
+ }>;
1328
+ /**
1329
+ * Get all user messages from session for branch selector.
1330
+ */
1331
+ getUserMessagesForBranching(): Array<{
1332
+ entryId: string;
1333
+ text: string;
1334
+ }>;
1335
+ /**
1336
+ * Get session statistics.
1337
+ */
1338
+ getSessionStats(): SessionStats;
1339
+ /**
1340
+ * Get current context usage statistics.
1341
+ * Uses the last assistant message's usage data when available,
1342
+ * otherwise estimates tokens for all messages.
1343
+ */
1344
+ getContextUsage(): ContextUsage | undefined;
1345
+ getContextUsageObservabilityForTests(): {
1346
+ estimateCount: number;
1347
+ };
1348
+ fetchUsageReports(signal?: AbortSignal): Promise<UsageReport[] | null>;
1349
+ fetchUsageReportsForControl(): Promise<UsageReport[] | null>;
1350
+ /**
1351
+ * Export session to HTML.
1352
+ * @param outputPath Optional output path (defaults to session directory)
1353
+ * @returns Path to exported file
1354
+ */
1355
+ exportToHtml(outputPath?: string): Promise<string>;
1356
+ /**
1357
+ * Get text content of last assistant message.
1358
+ * Useful for /copy command.
1359
+ * @returns Text content, or undefined if no assistant message exists
1360
+ */
1361
+ getLastAssistantText(): string | undefined;
1362
+ hasCopyCandidateAssistantMessage(): boolean;
1363
+ /**
1364
+ * Get text content of the most recent visible handoff message.
1365
+ * Fresh handoff sessions store the handoff context as a custom message, not
1366
+ * an assistant message, so callers that copy the "last" message can use this
1367
+ * as a fallback before the new session has an assistant response.
1368
+ */
1369
+ getLastVisibleHandoffText(): string | undefined;
1370
+ /**
1371
+ * Format the entire session as plain text for clipboard export.
1372
+ * Includes user messages, assistant text, thinking blocks, tool calls, and tool results.
1373
+ */
1374
+ formatSessionAsText(): string;
1375
+ /**
1376
+ * Format the conversation as compact context for subagents.
1377
+ * Includes only user messages and assistant text responses.
1378
+ * Excludes: system prompt, tool definitions, tool calls/results, thinking blocks.
1379
+ */
1380
+ formatCompactContext(): string;
1381
+ /**
1382
+ * Check if extensions have handlers for a specific event type.
1383
+ */
1384
+ hasExtensionHandlers(eventType: string): boolean;
1385
+ /**
1386
+ * Register a first-party internal before-agent-start contributor. Returns an
1387
+ * unregister function. This is NOT user-facing hook discovery; it is an
1388
+ * in-core seam invoked alongside the extension runner.
1389
+ */
1390
+ registerBeforeAgentStartContributor(contributor: BeforeAgentStartContributor): () => void;
1391
+ /**
1392
+ * Get the extension runner (for setting UI context and error handlers).
1393
+ */
1394
+ get extensionRunner(): ExtensionRunner | undefined;
1395
+ }