@sayknow-cli/coding-agent 0.3.6 → 0.3.7

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 (1135) hide show
  1. package/README.md +76 -0
  2. package/dist/types/async/index.d.ts +2 -0
  3. package/dist/types/async/job-manager.d.ts +328 -0
  4. package/dist/types/async/support.d.ts +2 -0
  5. package/dist/types/autoresearch/dashboard.d.ts +4 -0
  6. package/dist/types/autoresearch/git.d.ts +36 -0
  7. package/dist/types/autoresearch/helpers.d.ts +24 -0
  8. package/dist/types/autoresearch/index.d.ts +2 -0
  9. package/dist/types/autoresearch/state.d.ts +17 -0
  10. package/dist/types/autoresearch/storage.d.ts +142 -0
  11. package/dist/types/autoresearch/tools/init-experiment.d.ts +31 -0
  12. package/dist/types/autoresearch/tools/log-experiment.d.ts +23 -0
  13. package/dist/types/autoresearch/tools/run-experiment.d.ts +8 -0
  14. package/dist/types/autoresearch/tools/update-notes.d.ts +12 -0
  15. package/dist/types/autoresearch/types.d.ts +154 -0
  16. package/dist/types/capability/context-file.d.ts +17 -0
  17. package/dist/types/capability/extension-module.d.ts +15 -0
  18. package/dist/types/capability/extension.d.ts +28 -0
  19. package/dist/types/capability/fs.d.ts +20 -0
  20. package/dist/types/capability/hook.d.ts +19 -0
  21. package/dist/types/capability/index.d.ts +80 -0
  22. package/dist/types/capability/instruction.d.ts +17 -0
  23. package/dist/types/capability/mcp.d.ts +47 -0
  24. package/dist/types/capability/prompt.d.ts +15 -0
  25. package/dist/types/capability/rule.d.ts +61 -0
  26. package/dist/types/capability/settings.d.ts +15 -0
  27. package/dist/types/capability/skill.d.ts +36 -0
  28. package/dist/types/capability/slash-command.d.ts +17 -0
  29. package/dist/types/capability/ssh.d.ts +23 -0
  30. package/dist/types/capability/system-prompt.d.ts +15 -0
  31. package/dist/types/capability/tool.d.ts +19 -0
  32. package/dist/types/capability/types.d.ts +154 -0
  33. package/dist/types/cli/agents-cli.d.ts +12 -0
  34. package/dist/types/cli/args.d.ts +56 -0
  35. package/dist/types/cli/auth-broker-cli.d.ts +25 -0
  36. package/dist/types/cli/auth-gateway-cli.d.ts +18 -0
  37. package/dist/types/cli/classify-install-target.d.ts +18 -0
  38. package/dist/types/cli/commands/init-xdg.d.ts +1 -0
  39. package/dist/types/cli/config-cli.d.ts +22 -0
  40. package/dist/types/cli/daemon-cli.d.ts +25 -0
  41. package/dist/types/cli/fast-help.d.ts +1 -0
  42. package/dist/types/cli/file-processor.d.ts +11 -0
  43. package/dist/types/cli/grep-cli.d.ts +17 -0
  44. package/dist/types/cli/initial-message.d.ts +17 -0
  45. package/dist/types/cli/list-models.d.ts +36 -0
  46. package/dist/types/cli/local-provider-smoke.d.ts +59 -0
  47. package/dist/types/cli/mcp-cli.d.ts +25 -0
  48. package/dist/types/cli/migrate-cli.d.ts +20 -0
  49. package/dist/types/cli/notify-cli.d.ts +25 -0
  50. package/dist/types/cli/plugin-cli.d.ts +34 -0
  51. package/dist/types/cli/read-cli.d.ts +4 -0
  52. package/dist/types/cli/session-picker.d.ts +3 -0
  53. package/dist/types/cli/setup-cli.d.ts +73 -0
  54. package/dist/types/cli/shell-cli.d.ts +8 -0
  55. package/dist/types/cli/skills-cli.d.ts +9 -0
  56. package/dist/types/cli/ssh-cli.d.ts +21 -0
  57. package/dist/types/cli/stats-cli.d.ts +17 -0
  58. package/dist/types/cli/telegram-cli.d.ts +13 -0
  59. package/dist/types/cli/update-cli.d.ts +67 -0
  60. package/dist/types/cli/web-search-cli.d.ts +32 -0
  61. package/dist/types/cli/worktree-cli.d.ts +26 -0
  62. package/dist/types/cli.d.ts +9 -0
  63. package/dist/types/commands/acp.d.ts +12 -0
  64. package/dist/types/commands/agents.d.ts +34 -0
  65. package/dist/types/commands/auth-broker.d.ts +54 -0
  66. package/dist/types/commands/auth-gateway.d.ts +32 -0
  67. package/dist/types/commands/codex-native-hook.d.ts +6 -0
  68. package/dist/types/commands/commit.d.ts +27 -0
  69. package/dist/types/commands/config.d.ts +30 -0
  70. package/dist/types/commands/contribution-prep.d.ts +18 -0
  71. package/dist/types/commands/coordinator.d.ts +19 -0
  72. package/dist/types/commands/daemon.d.ts +41 -0
  73. package/dist/types/commands/deep-interview.d.ts +51 -0
  74. package/dist/types/commands/gc.d.ts +26 -0
  75. package/dist/types/commands/grep.d.ts +42 -0
  76. package/dist/types/commands/harness.d.ts +43 -0
  77. package/dist/types/commands/launch.d.ts +127 -0
  78. package/dist/types/commands/local-provider.d.ts +34 -0
  79. package/dist/types/commands/mcp-serve.d.ts +24 -0
  80. package/dist/types/commands/mcp.d.ts +70 -0
  81. package/dist/types/commands/migrate.d.ts +33 -0
  82. package/dist/types/commands/notify.d.ts +41 -0
  83. package/dist/types/commands/plugin.d.ts +58 -0
  84. package/dist/types/commands/ralplan.d.ts +7 -0
  85. package/dist/types/commands/read.d.ts +15 -0
  86. package/dist/types/commands/rlm.d.ts +10 -0
  87. package/dist/types/commands/session.d.ts +30 -0
  88. package/dist/types/commands/setup.d.ts +105 -0
  89. package/dist/types/commands/shell.d.ts +21 -0
  90. package/dist/types/commands/skills.d.ts +26 -0
  91. package/dist/types/commands/ssh.d.ts +48 -0
  92. package/dist/types/commands/state.d.ts +7 -0
  93. package/dist/types/commands/stats.d.ts +25 -0
  94. package/dist/types/commands/team.d.ts +24 -0
  95. package/dist/types/commands/telegram.d.ts +22 -0
  96. package/dist/types/commands/ultragoal.d.ts +8 -0
  97. package/dist/types/commands/update.d.ts +20 -0
  98. package/dist/types/commands/web-search.d.ts +87 -0
  99. package/dist/types/commands/worktree.d.ts +34 -0
  100. package/dist/types/commit/agentic/agent.d.ts +31 -0
  101. package/dist/types/commit/agentic/fallback.d.ts +5 -0
  102. package/dist/types/commit/agentic/index.d.ts +2 -0
  103. package/dist/types/commit/agentic/state.d.ts +58 -0
  104. package/dist/types/commit/agentic/tools/analyze-file.d.ts +19 -0
  105. package/dist/types/commit/agentic/tools/git-file-diff.d.ts +10 -0
  106. package/dist/types/commit/agentic/tools/git-hunk.d.ts +9 -0
  107. package/dist/types/commit/agentic/tools/git-overview.d.ts +9 -0
  108. package/dist/types/commit/agentic/tools/index.d.ts +16 -0
  109. package/dist/types/commit/agentic/tools/propose-changelog.d.ts +28 -0
  110. package/dist/types/commit/agentic/tools/propose-commit.d.ts +36 -0
  111. package/dist/types/commit/agentic/tools/recent-commits.d.ts +7 -0
  112. package/dist/types/commit/agentic/tools/schemas.d.ts +27 -0
  113. package/dist/types/commit/agentic/tools/split-commit.d.ts +53 -0
  114. package/dist/types/commit/agentic/topo-sort.d.ts +4 -0
  115. package/dist/types/commit/agentic/trivial.d.ts +7 -0
  116. package/dist/types/commit/agentic/validation.d.ts +20 -0
  117. package/dist/types/commit/analysis/conventional.d.ts +22 -0
  118. package/dist/types/commit/analysis/index.d.ts +4 -0
  119. package/dist/types/commit/analysis/scope.d.ts +6 -0
  120. package/dist/types/commit/analysis/summary.d.ts +19 -0
  121. package/dist/types/commit/analysis/validation.d.ts +8 -0
  122. package/dist/types/commit/changelog/detect.d.ts +2 -0
  123. package/dist/types/commit/changelog/generate.d.ts +30 -0
  124. package/dist/types/commit/changelog/index.d.ts +30 -0
  125. package/dist/types/commit/changelog/parse.d.ts +2 -0
  126. package/dist/types/commit/cli.d.ts +3 -0
  127. package/dist/types/commit/git/diff.d.ts +5 -0
  128. package/dist/types/commit/index.d.ts +4 -0
  129. package/dist/types/commit/map-reduce/index.d.ts +28 -0
  130. package/dist/types/commit/map-reduce/map-phase.d.ts +17 -0
  131. package/dist/types/commit/map-reduce/reduce-phase.d.ts +13 -0
  132. package/dist/types/commit/map-reduce/utils.d.ts +2 -0
  133. package/dist/types/commit/message.d.ts +2 -0
  134. package/dist/types/commit/model-selection.d.ts +15 -0
  135. package/dist/types/commit/pipeline.d.ts +5 -0
  136. package/dist/types/commit/shared-llm.d.ts +54 -0
  137. package/dist/types/commit/types.d.ts +78 -0
  138. package/dist/types/commit/utils/exclusions.d.ts +4 -0
  139. package/dist/types/commit/utils.d.ts +20 -0
  140. package/dist/types/config/config-file.d.ts +58 -0
  141. package/dist/types/config/file-lock-gc.d.ts +5 -0
  142. package/dist/types/config/file-lock.d.ts +35 -0
  143. package/dist/types/config/keybindings.d.ts +359 -0
  144. package/dist/types/config/model-equivalence.d.ts +24 -0
  145. package/dist/types/config/model-profile-activation.d.ts +58 -0
  146. package/dist/types/config/model-profiles.d.ts +38 -0
  147. package/dist/types/config/model-registry.d.ts +465 -0
  148. package/dist/types/config/model-resolver.d.ts +217 -0
  149. package/dist/types/config/models-config-schema.d.ts +700 -0
  150. package/dist/types/config/prompt-templates.d.ts +32 -0
  151. package/dist/types/config/resolve-config-value.d.ts +17 -0
  152. package/dist/types/config/settings-schema.d.ts +4065 -0
  153. package/dist/types/config/settings.d.ts +141 -0
  154. package/dist/types/config/skill-settings-defaults.d.ts +14 -0
  155. package/dist/types/config/telegram-autostart.d.ts +14 -0
  156. package/dist/types/config/telegram-env-bridge.d.ts +18 -0
  157. package/dist/types/config.d.ts +66 -0
  158. package/dist/types/coordinator/contract.d.ts +4 -0
  159. package/dist/types/coordinator-mcp/policy.d.ts +24 -0
  160. package/dist/types/coordinator-mcp/safety.d.ts +26 -0
  161. package/dist/types/coordinator-mcp/server.d.ts +66 -0
  162. package/dist/types/cursor.d.ts +24 -0
  163. package/dist/types/daemon/builtin.d.ts +20 -0
  164. package/dist/types/daemon/control-types.d.ts +57 -0
  165. package/dist/types/daemon/runtime.d.ts +25 -0
  166. package/dist/types/dap/client.d.ts +39 -0
  167. package/dist/types/dap/config.d.ts +6 -0
  168. package/dist/types/dap/index.d.ts +4 -0
  169. package/dist/types/dap/session.d.ts +108 -0
  170. package/dist/types/dap/types.d.ts +524 -0
  171. package/dist/types/debug/crash-diagnostics.d.ts +45 -0
  172. package/dist/types/debug/index.d.ts +15 -0
  173. package/dist/types/debug/log-formatting.d.ts +4 -0
  174. package/dist/types/debug/log-viewer.d.ts +68 -0
  175. package/dist/types/debug/profiler.d.ts +24 -0
  176. package/dist/types/debug/raw-sse-buffer.d.ts +44 -0
  177. package/dist/types/debug/raw-sse.d.ts +16 -0
  178. package/dist/types/debug/report-bundle.d.ts +55 -0
  179. package/dist/types/debug/runtime-gauges.d.ts +6 -0
  180. package/dist/types/debug/system-info.d.ts +26 -0
  181. package/dist/types/deep-interview/plaintext-gate-guard.d.ts +11 -0
  182. package/dist/types/deep-interview/render-middleware.d.ts +6 -0
  183. package/dist/types/defaults/skc/extensions/grok-build/index.d.ts +1 -0
  184. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/index.d.ts +1 -0
  185. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/models/catalog.d.ts +25 -0
  186. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/payload/sanitize.d.ts +27 -0
  187. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/provider/billing.d.ts +8 -0
  188. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/provider/register.d.ts +5 -0
  189. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/provider/stream.d.ts +10 -0
  190. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/provider/usage.d.ts +2 -0
  191. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/shared/base-url.d.ts +2 -0
  192. package/dist/types/defaults/skc/extensions/grok-cli-vendor/src/shared/errors.d.ts +38 -0
  193. package/dist/types/defaults/skc-defaults.d.ts +64 -0
  194. package/dist/types/defaults/skc-grok-cli.d.ts +5 -0
  195. package/dist/types/discovery/agents-md.d.ts +1 -0
  196. package/dist/types/discovery/agents.d.ts +12 -0
  197. package/dist/types/discovery/builtin.d.ts +1 -0
  198. package/dist/types/discovery/claude-plugins.d.ts +1 -0
  199. package/dist/types/discovery/claude.d.ts +1 -0
  200. package/dist/types/discovery/cline.d.ts +1 -0
  201. package/dist/types/discovery/codex.d.ts +1 -0
  202. package/dist/types/discovery/cursor.d.ts +19 -0
  203. package/dist/types/discovery/gemini.d.ts +1 -0
  204. package/dist/types/discovery/github.d.ts +1 -0
  205. package/dist/types/discovery/helpers.d.ts +271 -0
  206. package/dist/types/discovery/index.d.ts +47 -0
  207. package/dist/types/discovery/mcp-json.d.ts +1 -0
  208. package/dist/types/discovery/opencode.d.ts +1 -0
  209. package/dist/types/discovery/plugin-dir-roots.d.ts +15 -0
  210. package/dist/types/discovery/ssh.d.ts +1 -0
  211. package/dist/types/discovery/substitute-plugin-root.d.ts +5 -0
  212. package/dist/types/discovery/vscode.d.ts +1 -0
  213. package/dist/types/discovery/windsurf.d.ts +15 -0
  214. package/dist/types/edit/apply-patch/index.d.ts +35 -0
  215. package/dist/types/edit/apply-patch/parser.d.ts +34 -0
  216. package/dist/types/edit/diff.d.ts +75 -0
  217. package/dist/types/edit/file-read-cache.d.ts +25 -0
  218. package/dist/types/edit/index.d.ts +58 -0
  219. package/dist/types/edit/modes/apply-patch.d.ts +24 -0
  220. package/dist/types/edit/modes/patch.d.ts +99 -0
  221. package/dist/types/edit/modes/replace.d.ts +149 -0
  222. package/dist/types/edit/normalize.d.ts +43 -0
  223. package/dist/types/edit/notebook.d.ts +26 -0
  224. package/dist/types/edit/read-file.d.ts +8 -0
  225. package/dist/types/edit/renderer.d.ts +110 -0
  226. package/dist/types/edit/streaming.d.ts +66 -0
  227. package/dist/types/eval/backend.d.ts +40 -0
  228. package/dist/types/eval/index.d.ts +4 -0
  229. package/dist/types/eval/js/context-manager.d.ts +27 -0
  230. package/dist/types/eval/js/executor.d.ts +29 -0
  231. package/dist/types/eval/js/index.d.ts +10 -0
  232. package/dist/types/eval/js/shared/helpers.d.ts +38 -0
  233. package/dist/types/eval/js/shared/indirect-eval.d.ts +14 -0
  234. package/dist/types/eval/js/shared/prelude.d.ts +1 -0
  235. package/dist/types/eval/js/shared/rewrite-imports.d.ts +6 -0
  236. package/dist/types/eval/js/shared/runtime.d.ts +47 -0
  237. package/dist/types/eval/js/shared/types.d.ts +24 -0
  238. package/dist/types/eval/js/tool-bridge.d.ts +18 -0
  239. package/dist/types/eval/js/worker-core.d.ts +5 -0
  240. package/dist/types/eval/js/worker-entry.d.ts +1 -0
  241. package/dist/types/eval/js/worker-protocol.d.ts +77 -0
  242. package/dist/types/eval/py/display.d.ts +25 -0
  243. package/dist/types/eval/py/executor.d.ts +88 -0
  244. package/dist/types/eval/py/index.d.ts +10 -0
  245. package/dist/types/eval/py/kernel.d.ts +65 -0
  246. package/dist/types/eval/py/prelude.d.ts +1 -0
  247. package/dist/types/eval/py/runtime.d.ts +29 -0
  248. package/dist/types/eval/py/tool-bridge.d.ts +20 -0
  249. package/dist/types/eval/types.d.ts +52 -0
  250. package/dist/types/exa/factory.d.ts +13 -0
  251. package/dist/types/exa/index.d.ts +20 -0
  252. package/dist/types/exa/mcp-client.d.ts +45 -0
  253. package/dist/types/exa/render.d.ts +19 -0
  254. package/dist/types/exa/researcher.d.ts +9 -0
  255. package/dist/types/exa/search.d.ts +9 -0
  256. package/dist/types/exa/types.d.ts +155 -0
  257. package/dist/types/exa/websets.d.ts +9 -0
  258. package/dist/types/exec/bash-executor.d.ts +64 -0
  259. package/dist/types/exec/exec.d.ts +25 -0
  260. package/dist/types/exec/idle-timeout-watchdog.d.ts +18 -0
  261. package/dist/types/exec/non-interactive-env.d.ts +1 -0
  262. package/dist/types/export/custom-share.d.ts +20 -0
  263. package/dist/types/export/html/index.d.ts +10 -0
  264. package/dist/types/export/html/template.generated.d.ts +1 -0
  265. package/dist/types/export/html/template.macro.d.ts +5 -0
  266. package/dist/types/export/ttsr.d.ts +44 -0
  267. package/dist/types/extensibility/custom-commands/bundled/ci-green/index.d.ts +9 -0
  268. package/dist/types/extensibility/custom-commands/index.d.ts +2 -0
  269. package/dist/types/extensibility/custom-commands/loader.d.ts +29 -0
  270. package/dist/types/extensibility/custom-commands/types.d.ts +106 -0
  271. package/dist/types/extensibility/custom-tools/index.d.ts +6 -0
  272. package/dist/types/extensibility/custom-tools/loader.d.ts +69 -0
  273. package/dist/types/extensibility/custom-tools/types.d.ts +229 -0
  274. package/dist/types/extensibility/custom-tools/wrapper.d.ts +24 -0
  275. package/dist/types/extensibility/extensions/compact-handler.d.ts +26 -0
  276. package/dist/types/extensibility/extensions/get-commands-handler.d.ts +29 -0
  277. package/dist/types/extensibility/extensions/index.d.ts +9 -0
  278. package/dist/types/extensibility/extensions/loader.d.ts +43 -0
  279. package/dist/types/extensibility/extensions/prefix-command-bridge.d.ts +35 -0
  280. package/dist/types/extensibility/extensions/runner.d.ts +134 -0
  281. package/dist/types/extensibility/extensions/types.d.ts +910 -0
  282. package/dist/types/extensibility/extensions/wrapper.d.ts +55 -0
  283. package/dist/types/extensibility/hooks/index.d.ts +5 -0
  284. package/dist/types/extensibility/hooks/loader.d.ts +89 -0
  285. package/dist/types/extensibility/hooks/runner.d.ts +126 -0
  286. package/dist/types/extensibility/hooks/tool-wrapper.d.ts +25 -0
  287. package/dist/types/extensibility/hooks/types.d.ts +431 -0
  288. package/dist/types/extensibility/plugins/doctor.d.ts +3 -0
  289. package/dist/types/extensibility/plugins/git-url.d.ts +34 -0
  290. package/dist/types/extensibility/plugins/index.d.ts +8 -0
  291. package/dist/types/extensibility/plugins/installer.d.ts +5 -0
  292. package/dist/types/extensibility/plugins/legacy-pi-compat.d.ts +2 -0
  293. package/dist/types/extensibility/plugins/loader.d.ts +31 -0
  294. package/dist/types/extensibility/plugins/manager.d.ts +65 -0
  295. package/dist/types/extensibility/plugins/marketplace/cache.d.ts +41 -0
  296. package/dist/types/extensibility/plugins/marketplace/fetcher.d.ts +48 -0
  297. package/dist/types/extensibility/plugins/marketplace/index.d.ts +6 -0
  298. package/dist/types/extensibility/plugins/marketplace/manager.d.ts +57 -0
  299. package/dist/types/extensibility/plugins/marketplace/registry.d.ts +34 -0
  300. package/dist/types/extensibility/plugins/marketplace/source-resolver.d.ts +28 -0
  301. package/dist/types/extensibility/plugins/marketplace/types.d.ts +130 -0
  302. package/dist/types/extensibility/plugins/parser.d.ts +52 -0
  303. package/dist/types/extensibility/plugins/security-scanner.d.ts +31 -0
  304. package/dist/types/extensibility/plugins/types.d.ts +149 -0
  305. package/dist/types/extensibility/shared-events.d.ts +281 -0
  306. package/dist/types/extensibility/skc-plugins/activation.d.ts +14 -0
  307. package/dist/types/extensibility/skc-plugins/compiler.d.ts +19 -0
  308. package/dist/types/extensibility/skc-plugins/constrained-hooks.d.ts +29 -0
  309. package/dist/types/extensibility/skc-plugins/index.d.ts +18 -0
  310. package/dist/types/extensibility/skc-plugins/injection.d.ts +40 -0
  311. package/dist/types/extensibility/skc-plugins/installer.d.ts +13 -0
  312. package/dist/types/extensibility/skc-plugins/loader.d.ts +3 -0
  313. package/dist/types/extensibility/skc-plugins/mcp-policy.d.ts +26 -0
  314. package/dist/types/extensibility/skc-plugins/observability.d.ts +27 -0
  315. package/dist/types/extensibility/skc-plugins/paths.d.ts +8 -0
  316. package/dist/types/extensibility/skc-plugins/prompt-appendix.d.ts +16 -0
  317. package/dist/types/extensibility/skc-plugins/registry.d.ts +32 -0
  318. package/dist/types/extensibility/skc-plugins/runtime-adapters.d.ts +64 -0
  319. package/dist/types/extensibility/skc-plugins/schema.d.ts +3 -0
  320. package/dist/types/extensibility/skc-plugins/session-validation.d.ts +42 -0
  321. package/dist/types/extensibility/skc-plugins/state.d.ts +9 -0
  322. package/dist/types/extensibility/skc-plugins/tools.d.ts +8 -0
  323. package/dist/types/extensibility/skc-plugins/types.d.ts +220 -0
  324. package/dist/types/extensibility/skc-plugins/validation.d.ts +11 -0
  325. package/dist/types/extensibility/skills.d.ts +82 -0
  326. package/dist/types/extensibility/slash-commands.d.ts +48 -0
  327. package/dist/types/extensibility/tool-proxy.d.ts +4 -0
  328. package/dist/types/extensibility/typebox.d.ts +155 -0
  329. package/dist/types/extensibility/utils.d.ts +12 -0
  330. package/dist/types/goals/index.d.ts +3 -0
  331. package/dist/types/goals/runtime.d.ts +62 -0
  332. package/dist/types/goals/state.d.ts +32 -0
  333. package/dist/types/goals/tools/goal-tool.d.ts +62 -0
  334. package/dist/types/harness-control-plane/classifier.d.ts +13 -0
  335. package/dist/types/harness-control-plane/control-endpoint.d.ts +31 -0
  336. package/dist/types/harness-control-plane/finalize.d.ts +60 -0
  337. package/dist/types/harness-control-plane/gc-adapter.d.ts +3 -0
  338. package/dist/types/harness-control-plane/operate.d.ts +35 -0
  339. package/dist/types/harness-control-plane/owner.d.ts +53 -0
  340. package/dist/types/harness-control-plane/phase-rollup.d.ts +23 -0
  341. package/dist/types/harness-control-plane/preserve.d.ts +19 -0
  342. package/dist/types/harness-control-plane/receipt-ingest.d.ts +19 -0
  343. package/dist/types/harness-control-plane/receipt-spool.d.ts +19 -0
  344. package/dist/types/harness-control-plane/receipts.d.ts +149 -0
  345. package/dist/types/harness-control-plane/rpc-adapter.d.ts +69 -0
  346. package/dist/types/harness-control-plane/seams.d.ts +21 -0
  347. package/dist/types/harness-control-plane/session-lease.d.ts +65 -0
  348. package/dist/types/harness-control-plane/state-machine.d.ts +24 -0
  349. package/dist/types/harness-control-plane/storage.d.ts +81 -0
  350. package/dist/types/harness-control-plane/types.d.ts +187 -0
  351. package/dist/types/hashline/anchors.d.ts +20 -0
  352. package/dist/types/hashline/apply.d.ts +14 -0
  353. package/dist/types/hashline/constants.d.ts +19 -0
  354. package/dist/types/hashline/diff-preview.d.ts +2 -0
  355. package/dist/types/hashline/diff.d.ts +17 -0
  356. package/dist/types/hashline/execute.d.ts +4 -0
  357. package/dist/types/hashline/hash.d.ts +123 -0
  358. package/dist/types/hashline/index.d.ts +13 -0
  359. package/dist/types/hashline/input.d.ts +11 -0
  360. package/dist/types/hashline/parser.d.ts +7 -0
  361. package/dist/types/hashline/prefixes.d.ts +7 -0
  362. package/dist/types/hashline/recovery.d.ts +27 -0
  363. package/dist/types/hashline/stream.d.ts +2 -0
  364. package/dist/types/hashline/types.d.ts +77 -0
  365. package/dist/types/hindsight/backend.d.ts +13 -0
  366. package/dist/types/hindsight/bank.d.ts +54 -0
  367. package/dist/types/hindsight/client.d.ts +224 -0
  368. package/dist/types/hindsight/config.d.ts +51 -0
  369. package/dist/types/hindsight/content.d.ts +70 -0
  370. package/dist/types/hindsight/index.d.ts +8 -0
  371. package/dist/types/hindsight/mental-models.d.ts +125 -0
  372. package/dist/types/hindsight/state.d.ts +99 -0
  373. package/dist/types/hindsight/transcript.d.ts +28 -0
  374. package/dist/types/hooks/codex-native-hooks-config.d.ts +29 -0
  375. package/dist/types/hooks/native-skill-hook.d.ts +16 -0
  376. package/dist/types/hooks/skill-keywords.d.ts +18 -0
  377. package/dist/types/hooks/skill-state.d.ts +93 -0
  378. package/dist/types/i18n/index.d.ts +38 -0
  379. package/dist/types/i18n/messages/de.d.ts +2 -0
  380. package/dist/types/i18n/messages/de.messages.d.ts +1 -0
  381. package/dist/types/i18n/messages/de.settings.d.ts +1 -0
  382. package/dist/types/i18n/messages/en.d.ts +81 -0
  383. package/dist/types/i18n/messages/es.d.ts +2 -0
  384. package/dist/types/i18n/messages/es.messages.d.ts +1 -0
  385. package/dist/types/i18n/messages/es.settings.d.ts +1 -0
  386. package/dist/types/i18n/messages/fr.d.ts +2 -0
  387. package/dist/types/i18n/messages/fr.messages.d.ts +1 -0
  388. package/dist/types/i18n/messages/fr.settings.d.ts +1 -0
  389. package/dist/types/i18n/messages/ja.d.ts +2 -0
  390. package/dist/types/i18n/messages/ja.messages.d.ts +1 -0
  391. package/dist/types/i18n/messages/ja.settings.d.ts +1 -0
  392. package/dist/types/i18n/messages/ko.d.ts +2 -0
  393. package/dist/types/i18n/messages/ko.messages.d.ts +1 -0
  394. package/dist/types/i18n/messages/ko.settings.d.ts +1 -0
  395. package/dist/types/i18n/messages/zh.d.ts +2 -0
  396. package/dist/types/i18n/messages/zh.messages.d.ts +1 -0
  397. package/dist/types/i18n/messages/zh.settings.d.ts +1 -0
  398. package/dist/types/index.d.ts +33 -0
  399. package/dist/types/internal-urls/agent-protocol.d.ts +12 -0
  400. package/dist/types/internal-urls/artifact-protocol.d.ts +6 -0
  401. package/dist/types/internal-urls/docs-index.generated.d.ts +2 -0
  402. package/dist/types/internal-urls/index.d.ts +20 -0
  403. package/dist/types/internal-urls/issue-pr-protocol.d.ts +17 -0
  404. package/dist/types/internal-urls/json-query.d.ts +30 -0
  405. package/dist/types/internal-urls/local-protocol.d.ts +39 -0
  406. package/dist/types/internal-urls/mcp-protocol.d.ts +12 -0
  407. package/dist/types/internal-urls/memory-protocol.d.ts +23 -0
  408. package/dist/types/internal-urls/parse.d.ts +19 -0
  409. package/dist/types/internal-urls/registry-helpers.d.ts +11 -0
  410. package/dist/types/internal-urls/router.d.ts +14 -0
  411. package/dist/types/internal-urls/rule-protocol.d.ts +6 -0
  412. package/dist/types/internal-urls/skc-protocol.d.ts +12 -0
  413. package/dist/types/internal-urls/skill-protocol.d.ts +13 -0
  414. package/dist/types/internal-urls/types.d.ts +109 -0
  415. package/dist/types/lsp/client.d.ts +66 -0
  416. package/dist/types/lsp/clients/biome-client.d.ts +16 -0
  417. package/dist/types/lsp/clients/index.d.ts +19 -0
  418. package/dist/types/lsp/clients/lsp-linter-client.d.ts +16 -0
  419. package/dist/types/lsp/clients/swiftlint-client.d.ts +20 -0
  420. package/dist/types/lsp/config.d.ts +65 -0
  421. package/dist/types/lsp/edits.d.ts +23 -0
  422. package/dist/types/lsp/index.d.ts +130 -0
  423. package/dist/types/lsp/lspmux.d.ts +58 -0
  424. package/dist/types/lsp/render.d.ts +32 -0
  425. package/dist/types/lsp/startup-events.d.ts +12 -0
  426. package/dist/types/lsp/types.d.ts +306 -0
  427. package/dist/types/lsp/utils.d.ts +108 -0
  428. package/dist/types/main.d.ts +72 -0
  429. package/dist/types/memories/index.d.ts +28 -0
  430. package/dist/types/memories/storage.d.ts +110 -0
  431. package/dist/types/memory-backend/index.d.ts +4 -0
  432. package/dist/types/memory-backend/local-backend.d.ts +9 -0
  433. package/dist/types/memory-backend/off-backend.d.ts +7 -0
  434. package/dist/types/memory-backend/resolve.d.ts +15 -0
  435. package/dist/types/memory-backend/types.d.ts +61 -0
  436. package/dist/types/migrate/action-planner.d.ts +11 -0
  437. package/dist/types/migrate/adapters/claude-code.d.ts +2 -0
  438. package/dist/types/migrate/adapters/codex.d.ts +5 -0
  439. package/dist/types/migrate/adapters/index.d.ts +45 -0
  440. package/dist/types/migrate/adapters/opencode.d.ts +2 -0
  441. package/dist/types/migrate/executor.d.ts +2 -0
  442. package/dist/types/migrate/mcp-mapper.d.ts +20 -0
  443. package/dist/types/migrate/report.d.ts +18 -0
  444. package/dist/types/migrate/skill-normalizer.d.ts +27 -0
  445. package/dist/types/migrate/types.d.ts +126 -0
  446. package/dist/types/modes/acp/acp-agent.d.ts +61 -0
  447. package/dist/types/modes/acp/acp-client-bridge.d.ts +9 -0
  448. package/dist/types/modes/acp/acp-event-mapper.d.ts +34 -0
  449. package/dist/types/modes/acp/acp-mode.d.ts +5 -0
  450. package/dist/types/modes/acp/index.d.ts +2 -0
  451. package/dist/types/modes/acp/terminal-auth.d.ts +6 -0
  452. package/dist/types/modes/bridge/auth.d.ts +12 -0
  453. package/dist/types/modes/bridge/bridge-client-bridge.d.ts +9 -0
  454. package/dist/types/modes/bridge/bridge-mode.d.ts +47 -0
  455. package/dist/types/modes/bridge/bridge-ui-context.d.ts +88 -0
  456. package/dist/types/modes/bridge/event-stream.d.ts +8 -0
  457. package/dist/types/modes/components/agent-dashboard.d.ts +21 -0
  458. package/dist/types/modes/components/assistant-message.d.ts +16 -0
  459. package/dist/types/modes/components/bash-execution.d.ts +29 -0
  460. package/dist/types/modes/components/bordered-loader.d.ts +11 -0
  461. package/dist/types/modes/components/branch-summary-message.d.ts +13 -0
  462. package/dist/types/modes/components/btw-panel.d.ts +16 -0
  463. package/dist/types/modes/components/compaction-summary-message.d.ts +13 -0
  464. package/dist/types/modes/components/countdown-timer.d.ts +14 -0
  465. package/dist/types/modes/components/custom-editor.d.ts +67 -0
  466. package/dist/types/modes/components/custom-message.d.ts +15 -0
  467. package/dist/types/modes/components/custom-model-preset-wizard.d.ts +12 -0
  468. package/dist/types/modes/components/custom-provider-wizard.d.ts +10 -0
  469. package/dist/types/modes/components/diff.d.ts +11 -0
  470. package/dist/types/modes/components/dynamic-border.d.ts +14 -0
  471. package/dist/types/modes/components/eval-execution.d.ts +23 -0
  472. package/dist/types/modes/components/execution-shared.d.ts +46 -0
  473. package/dist/types/modes/components/extensions/extension-dashboard.d.ts +26 -0
  474. package/dist/types/modes/components/extensions/extension-list.d.ts +39 -0
  475. package/dist/types/modes/components/extensions/index.d.ts +8 -0
  476. package/dist/types/modes/components/extensions/inspector-panel.d.ts +8 -0
  477. package/dist/types/modes/components/extensions/state-manager.d.ts +50 -0
  478. package/dist/types/modes/components/extensions/types.d.ts +151 -0
  479. package/dist/types/modes/components/footer.d.ts +30 -0
  480. package/dist/types/modes/components/history-search.d.ts +7 -0
  481. package/dist/types/modes/components/hook-editor.d.ts +18 -0
  482. package/dist/types/modes/components/hook-input.d.ts +15 -0
  483. package/dist/types/modes/components/hook-message.d.ts +15 -0
  484. package/dist/types/modes/components/hook-selector.d.ts +53 -0
  485. package/dist/types/modes/components/index.d.ts +35 -0
  486. package/dist/types/modes/components/jobs-overlay-model.d.ts +31 -0
  487. package/dist/types/modes/components/jobs-overlay.d.ts +30 -0
  488. package/dist/types/modes/components/keybinding-hints.d.ts +40 -0
  489. package/dist/types/modes/components/login-dialog.d.ts +32 -0
  490. package/dist/types/modes/components/message-frame.d.ts +42 -0
  491. package/dist/types/modes/components/model-selector.d.ts +56 -0
  492. package/dist/types/modes/components/oauth-selector.d.ts +17 -0
  493. package/dist/types/modes/components/plugin-selector.d.ts +26 -0
  494. package/dist/types/modes/components/plugin-settings.d.ts +66 -0
  495. package/dist/types/modes/components/provider-onboarding-selector.d.ts +7 -0
  496. package/dist/types/modes/components/queue-mode-selector.d.ts +9 -0
  497. package/dist/types/modes/components/read-tool-group.d.ts +30 -0
  498. package/dist/types/modes/components/runtime-mcp-add-wizard.d.ts +26 -0
  499. package/dist/types/modes/components/session-observer-overlay.d.ts +11 -0
  500. package/dist/types/modes/components/session-selector.d.ts +30 -0
  501. package/dist/types/modes/components/settings-defs.d.ts +50 -0
  502. package/dist/types/modes/components/settings-selector.d.ts +60 -0
  503. package/dist/types/modes/components/show-images-selector.d.ts +9 -0
  504. package/dist/types/modes/components/skill-hud/render.d.ts +2 -0
  505. package/dist/types/modes/components/skill-message.d.ts +10 -0
  506. package/dist/types/modes/components/status-line/context-thresholds.d.ts +4 -0
  507. package/dist/types/modes/components/status-line/git-utils.d.ts +28 -0
  508. package/dist/types/modes/components/status-line/index.d.ts +4 -0
  509. package/dist/types/modes/components/status-line/presets.d.ts +3 -0
  510. package/dist/types/modes/components/status-line/segments.d.ts +5 -0
  511. package/dist/types/modes/components/status-line/separators.d.ts +3 -0
  512. package/dist/types/modes/components/status-line/token-rate.d.ts +10 -0
  513. package/dist/types/modes/components/status-line/types.d.ts +77 -0
  514. package/dist/types/modes/components/status-line.d.ts +94 -0
  515. package/dist/types/modes/components/theme-selector.d.ts +10 -0
  516. package/dist/types/modes/components/thinking-selector.d.ts +10 -0
  517. package/dist/types/modes/components/todo-reminder.d.ts +13 -0
  518. package/dist/types/modes/components/tool-execution.d.ts +54 -0
  519. package/dist/types/modes/components/tree-selector.d.ts +31 -0
  520. package/dist/types/modes/components/ttsr-notification.d.ts +13 -0
  521. package/dist/types/modes/components/two-column-body.d.ts +9 -0
  522. package/dist/types/modes/components/user-message-selector.d.ts +28 -0
  523. package/dist/types/modes/components/user-message.d.ts +7 -0
  524. package/dist/types/modes/components/visual-truncate.d.ts +19 -0
  525. package/dist/types/modes/components/welcome.d.ts +45 -0
  526. package/dist/types/modes/controllers/btw-controller.d.ts +10 -0
  527. package/dist/types/modes/controllers/command-controller-shared.d.ts +47 -0
  528. package/dist/types/modes/controllers/command-controller.d.ts +39 -0
  529. package/dist/types/modes/controllers/event-controller.d.ts +12 -0
  530. package/dist/types/modes/controllers/extension-ui-controller.d.ts +80 -0
  531. package/dist/types/modes/controllers/input-controller.d.ts +44 -0
  532. package/dist/types/modes/controllers/runtime-mcp-command-controller.d.ts +10 -0
  533. package/dist/types/modes/controllers/selector-controller.d.ts +66 -0
  534. package/dist/types/modes/controllers/ssh-command-controller.d.ts +10 -0
  535. package/dist/types/modes/controllers/todo-command-controller.d.ts +7 -0
  536. package/dist/types/modes/emoji-autocomplete.d.ts +16 -0
  537. package/dist/types/modes/index.d.ts +10 -0
  538. package/dist/types/modes/interactive-mode.d.ts +271 -0
  539. package/dist/types/modes/jobs-observer.d.ts +57 -0
  540. package/dist/types/modes/oauth-manual-input.d.ts +8 -0
  541. package/dist/types/modes/print-mode.d.ts +33 -0
  542. package/dist/types/modes/prompt-action-autocomplete.d.ts +50 -0
  543. package/dist/types/modes/rpc/host-tools.d.ts +1 -0
  544. package/dist/types/modes/rpc/host-uris.d.ts +1 -0
  545. package/dist/types/modes/rpc/rpc-client.d.ts +288 -0
  546. package/dist/types/modes/rpc/rpc-mode.d.ts +87 -0
  547. package/dist/types/modes/rpc/rpc-socket-security.d.ts +7 -0
  548. package/dist/types/modes/rpc/rpc-types.d.ts +780 -0
  549. package/dist/types/modes/runtime-init.d.ts +21 -0
  550. package/dist/types/modes/session-observer-registry.d.ts +26 -0
  551. package/dist/types/modes/shared/agent-wire/approval-gate.d.ts +57 -0
  552. package/dist/types/modes/shared/agent-wire/command-contract.d.ts +18 -0
  553. package/dist/types/modes/shared/agent-wire/command-dispatch.d.ts +37 -0
  554. package/dist/types/modes/shared/agent-wire/command-validation.d.ts +2 -0
  555. package/dist/types/modes/shared/agent-wire/deep-interview-gate.d.ts +94 -0
  556. package/dist/types/modes/shared/agent-wire/event-contract.d.ts +84 -0
  557. package/dist/types/modes/shared/agent-wire/event-envelope.d.ts +38 -0
  558. package/dist/types/modes/shared/agent-wire/event-observation.d.ts +37 -0
  559. package/dist/types/modes/shared/agent-wire/handshake.d.ts +56 -0
  560. package/dist/types/modes/shared/agent-wire/host-tool-bridge.d.ts +16 -0
  561. package/dist/types/modes/shared/agent-wire/host-uri-bridge.d.ts +17 -0
  562. package/dist/types/modes/shared/agent-wire/protocol.d.ts +25 -0
  563. package/dist/types/modes/shared/agent-wire/responses.d.ts +4 -0
  564. package/dist/types/modes/shared/agent-wire/scopes.d.ts +18 -0
  565. package/dist/types/modes/shared/agent-wire/session-registry.d.ts +25 -0
  566. package/dist/types/modes/shared/agent-wire/ui-request-broker.d.ts +42 -0
  567. package/dist/types/modes/shared/agent-wire/ui-result.d.ts +27 -0
  568. package/dist/types/modes/shared/agent-wire/unattended-action-policy.d.ts +29 -0
  569. package/dist/types/modes/shared/agent-wire/unattended-audit.d.ts +68 -0
  570. package/dist/types/modes/shared/agent-wire/unattended-run-controller.d.ts +161 -0
  571. package/dist/types/modes/shared/agent-wire/unattended-session.d.ts +82 -0
  572. package/dist/types/modes/shared/agent-wire/workflow-gate-broker.d.ts +114 -0
  573. package/dist/types/modes/shared/agent-wire/workflow-gate-schema.d.ts +39 -0
  574. package/dist/types/modes/shared.d.ts +15 -0
  575. package/dist/types/modes/slash-command-visibility.d.ts +1 -0
  576. package/dist/types/modes/theme/defaults/index.d.ts +652 -0
  577. package/dist/types/modes/theme/mermaid-cache.d.ts +9 -0
  578. package/dist/types/modes/theme/shimmer.d.ts +38 -0
  579. package/dist/types/modes/theme/theme.d.ts +275 -0
  580. package/dist/types/modes/tmux-scroll.d.ts +18 -0
  581. package/dist/types/modes/types.d.ts +288 -0
  582. package/dist/types/modes/utils/abort-message.d.ts +4 -0
  583. package/dist/types/modes/utils/context-usage.d.ts +51 -0
  584. package/dist/types/modes/utils/hotkeys-markdown.d.ts +5 -0
  585. package/dist/types/modes/utils/keybinding-matchers.d.ts +10 -0
  586. package/dist/types/modes/utils/terminal-bell.d.ts +3 -0
  587. package/dist/types/modes/utils/tools-markdown.d.ts +5 -0
  588. package/dist/types/modes/utils/ui-helpers.d.ts +53 -0
  589. package/dist/types/notifications/attachment-registry.d.ts +17 -0
  590. package/dist/types/notifications/chat-adapters.d.ts +9 -0
  591. package/dist/types/notifications/config-commands.d.ts +26 -0
  592. package/dist/types/notifications/config.d.ts +69 -0
  593. package/dist/types/notifications/daemon-paths.d.ts +9 -0
  594. package/dist/types/notifications/engine.d.ts +59 -0
  595. package/dist/types/notifications/helpers.d.ts +55 -0
  596. package/dist/types/notifications/html-format.d.ts +75 -0
  597. package/dist/types/notifications/index.d.ts +176 -0
  598. package/dist/types/notifications/lifecycle-commands.d.ts +60 -0
  599. package/dist/types/notifications/lifecycle-control-runtime.d.ts +98 -0
  600. package/dist/types/notifications/lifecycle-orchestrator.d.ts +144 -0
  601. package/dist/types/notifications/managed-daemon.d.ts +48 -0
  602. package/dist/types/notifications/operator-runtime.d.ts +52 -0
  603. package/dist/types/notifications/rate-limit-pool.d.ts +95 -0
  604. package/dist/types/notifications/recent-activity.d.ts +39 -0
  605. package/dist/types/notifications/telegram-cli.d.ts +19 -0
  606. package/dist/types/notifications/telegram-daemon-cli.d.ts +28 -0
  607. package/dist/types/notifications/telegram-daemon-control.d.ts +64 -0
  608. package/dist/types/notifications/telegram-daemon.d.ts +387 -0
  609. package/dist/types/notifications/telegram-reference.d.ts +117 -0
  610. package/dist/types/notifications/threaded-inbound.d.ts +77 -0
  611. package/dist/types/notifications/threaded-render.d.ts +72 -0
  612. package/dist/types/notifications/topic-registry.d.ts +70 -0
  613. package/dist/types/plan-mode/approved-plan.d.ts +49 -0
  614. package/dist/types/plan-mode/state.d.ts +6 -0
  615. package/dist/types/registry/agent-registry.d.ts +62 -0
  616. package/dist/types/reminders/star-reminder.d.ts +115 -0
  617. package/dist/types/research-plan/index.d.ts +1 -0
  618. package/dist/types/research-plan/ledger.d.ts +33 -0
  619. package/dist/types/rlm/artifacts.d.ts +9 -0
  620. package/dist/types/rlm/complete-research-tool.d.ts +35 -0
  621. package/dist/types/rlm/data-context.d.ts +6 -0
  622. package/dist/types/rlm/index.d.ts +47 -0
  623. package/dist/types/rlm/notebook.d.ts +12 -0
  624. package/dist/types/rlm/preset.d.ts +23 -0
  625. package/dist/types/rlm/python-tool.d.ts +16 -0
  626. package/dist/types/rlm/report.d.ts +14 -0
  627. package/dist/types/rlm/types.d.ts +37 -0
  628. package/dist/types/runtime/process-lifecycle.d.ts +108 -0
  629. package/dist/types/runtime-mcp/client.d.ts +74 -0
  630. package/dist/types/runtime-mcp/config-writer.d.ts +88 -0
  631. package/dist/types/runtime-mcp/config.d.ts +77 -0
  632. package/dist/types/runtime-mcp/discoverable-tool-metadata.d.ts +7 -0
  633. package/dist/types/runtime-mcp/index.d.ts +18 -0
  634. package/dist/types/runtime-mcp/json-rpc.d.ts +22 -0
  635. package/dist/types/runtime-mcp/loader.d.ts +45 -0
  636. package/dist/types/runtime-mcp/manager.d.ts +195 -0
  637. package/dist/types/runtime-mcp/oauth-discovery.d.ts +40 -0
  638. package/dist/types/runtime-mcp/oauth-flow.d.ts +59 -0
  639. package/dist/types/runtime-mcp/render.d.ts +25 -0
  640. package/dist/types/runtime-mcp/smithery-auth.d.ts +16 -0
  641. package/dist/types/runtime-mcp/smithery-connect.d.ts +38 -0
  642. package/dist/types/runtime-mcp/smithery-registry.d.ts +51 -0
  643. package/dist/types/runtime-mcp/tool-bridge.d.ts +86 -0
  644. package/dist/types/runtime-mcp/tool-cache.d.ts +8 -0
  645. package/dist/types/runtime-mcp/transports/http.d.ts +36 -0
  646. package/dist/types/runtime-mcp/transports/index.d.ts +5 -0
  647. package/dist/types/runtime-mcp/transports/stdio.d.ts +29 -0
  648. package/dist/types/runtime-mcp/types.d.ts +348 -0
  649. package/dist/types/sdk.d.ts +245 -0
  650. package/dist/types/secrets/index.d.ts +9 -0
  651. package/dist/types/secrets/obfuscator.d.ts +23 -0
  652. package/dist/types/secrets/regex.d.ts +2 -0
  653. package/dist/types/session/agent-session.d.ts +1127 -0
  654. package/dist/types/session/agent-storage.d.ts +100 -0
  655. package/dist/types/session/artifacts.d.ts +64 -0
  656. package/dist/types/session/auth-broker-config.d.ts +13 -0
  657. package/dist/types/session/auth-storage.d.ts +6 -0
  658. package/dist/types/session/blob-store.d.ts +160 -0
  659. package/dist/types/session/client-bridge.d.ts +88 -0
  660. package/dist/types/session/contribution-prep.d.ts +47 -0
  661. package/dist/types/session/history-storage.d.ts +16 -0
  662. package/dist/types/session/messages.d.ts +165 -0
  663. package/dist/types/session/session-dump-format.d.ts +22 -0
  664. package/dist/types/session/session-manager.d.ts +644 -0
  665. package/dist/types/session/session-storage.d.ts +88 -0
  666. package/dist/types/session/streaming-output.d.ts +209 -0
  667. package/dist/types/session/tool-choice-queue.d.ts +84 -0
  668. package/dist/types/session/yield-queue.d.ts +24 -0
  669. package/dist/types/setup/credential-auto-import.d.ts +63 -0
  670. package/dist/types/setup/credential-import.d.ts +82 -0
  671. package/dist/types/setup/hermes-setup.d.ts +78 -0
  672. package/dist/types/setup/host-plugin-setup.d.ts +39 -0
  673. package/dist/types/setup/model-onboarding-guidance.d.ts +9 -0
  674. package/dist/types/setup/provider-onboarding.d.ts +52 -0
  675. package/dist/types/skc-runtime/cli-write-receipt.d.ts +24 -0
  676. package/dist/types/skc-runtime/deep-interview-recorder.d.ts +105 -0
  677. package/dist/types/skc-runtime/deep-interview-runtime.d.ts +36 -0
  678. package/dist/types/skc-runtime/deep-interview-state.d.ts +112 -0
  679. package/dist/types/skc-runtime/gc-render.d.ts +6 -0
  680. package/dist/types/skc-runtime/gc-runtime.d.ts +134 -0
  681. package/dist/types/skc-runtime/goal-mode-request.d.ts +53 -0
  682. package/dist/types/skc-runtime/launch-tmux.d.ts +78 -0
  683. package/dist/types/skc-runtime/launch-worktree.d.ts +46 -0
  684. package/dist/types/skc-runtime/ledger-event-renderer.d.ts +68 -0
  685. package/dist/types/skc-runtime/psmux-detect.d.ts +78 -0
  686. package/dist/types/skc-runtime/ralplan-runtime.d.ts +26 -0
  687. package/dist/types/skc-runtime/restricted-role-agent-bash.d.ts +3 -0
  688. package/dist/types/skc-runtime/session-layout.d.ts +59 -0
  689. package/dist/types/skc-runtime/session-resolution.d.ts +47 -0
  690. package/dist/types/skc-runtime/session-state-sidecar.d.ts +32 -0
  691. package/dist/types/skc-runtime/state-graph.d.ts +4 -0
  692. package/dist/types/skc-runtime/state-migrations.d.ts +33 -0
  693. package/dist/types/skc-runtime/state-renderer.d.ts +70 -0
  694. package/dist/types/skc-runtime/state-runtime.d.ts +38 -0
  695. package/dist/types/skc-runtime/state-schema.d.ts +319 -0
  696. package/dist/types/skc-runtime/state-validation.d.ts +6 -0
  697. package/dist/types/skc-runtime/state-writer.d.ts +241 -0
  698. package/dist/types/skc-runtime/team-gc.d.ts +7 -0
  699. package/dist/types/skc-runtime/team-runtime.d.ts +355 -0
  700. package/dist/types/skc-runtime/tmux-common.d.ts +104 -0
  701. package/dist/types/skc-runtime/tmux-gc.d.ts +7 -0
  702. package/dist/types/skc-runtime/tmux-sessions.d.ts +62 -0
  703. package/dist/types/skc-runtime/ultragoal-guard.d.ts +93 -0
  704. package/dist/types/skc-runtime/ultragoal-runtime.d.ts +303 -0
  705. package/dist/types/skc-runtime/workflow-command-ref.d.ts +43 -0
  706. package/dist/types/skc-runtime/workflow-manifest.d.ts +54 -0
  707. package/dist/types/skill-state/active-state.d.ts +109 -0
  708. package/dist/types/skill-state/canonical-skills.d.ts +3 -0
  709. package/dist/types/skill-state/deep-interview-mutation-guard.d.ts +38 -0
  710. package/dist/types/skill-state/initial-phase.d.ts +12 -0
  711. package/dist/types/skill-state/workflow-hud.d.ts +83 -0
  712. package/dist/types/skill-state/workflow-state-contract.d.ts +57 -0
  713. package/dist/types/skill-state/workflow-state-version.d.ts +3 -0
  714. package/dist/types/slash-commands/acp-builtins.d.ts +18 -0
  715. package/dist/types/slash-commands/builtin-registry.d.ts +24 -0
  716. package/dist/types/slash-commands/helpers/context-report.d.ts +7 -0
  717. package/dist/types/slash-commands/helpers/fast-status-report.d.ts +82 -0
  718. package/dist/types/slash-commands/helpers/format.d.ts +10 -0
  719. package/dist/types/slash-commands/helpers/mcp.d.ts +3 -0
  720. package/dist/types/slash-commands/helpers/parse.d.ts +33 -0
  721. package/dist/types/slash-commands/helpers/ssh.d.ts +3 -0
  722. package/dist/types/slash-commands/helpers/todo.d.ts +3 -0
  723. package/dist/types/slash-commands/helpers/usage-report.d.ts +7 -0
  724. package/dist/types/slash-commands/types.d.ts +120 -0
  725. package/dist/types/ssh/config-writer.d.ts +49 -0
  726. package/dist/types/ssh/connection-manager.d.ts +33 -0
  727. package/dist/types/ssh/ssh-executor.d.ts +37 -0
  728. package/dist/types/ssh/sshfs-mount.d.ts +6 -0
  729. package/dist/types/ssh/utils.d.ts +2 -0
  730. package/dist/types/stt/downloader.d.ts +9 -0
  731. package/dist/types/stt/index.d.ts +3 -0
  732. package/dist/types/stt/recorder.d.ts +13 -0
  733. package/dist/types/stt/setup.d.ts +18 -0
  734. package/dist/types/stt/stt-controller.d.ts +16 -0
  735. package/dist/types/stt/transcriber.d.ts +16 -0
  736. package/dist/types/system-prompt.d.ts +102 -0
  737. package/dist/types/task/agents.d.ts +28 -0
  738. package/dist/types/task/commands.d.ts +35 -0
  739. package/dist/types/task/discovery.d.ts +19 -0
  740. package/dist/types/task/executor.d.ts +121 -0
  741. package/dist/types/task/fork-context-advisory.d.ts +13 -0
  742. package/dist/types/task/id.d.ts +7 -0
  743. package/dist/types/task/index.d.ts +43 -0
  744. package/dist/types/task/name-generator.d.ts +16 -0
  745. package/dist/types/task/output-manager.d.ts +36 -0
  746. package/dist/types/task/parallel.d.ts +34 -0
  747. package/dist/types/task/receipt.d.ts +87 -0
  748. package/dist/types/task/render.d.ts +28 -0
  749. package/dist/types/task/roi-reconciliation.d.ts +27 -0
  750. package/dist/types/task/simple-mode.d.ts +8 -0
  751. package/dist/types/task/skc-command.d.ts +7 -0
  752. package/dist/types/task/spawn-gate.d.ts +29 -0
  753. package/dist/types/task/subprocess-tool-registry.d.ts +72 -0
  754. package/dist/types/task/types.d.ts +508 -0
  755. package/dist/types/task/worktree.d.ts +94 -0
  756. package/dist/types/thinking-metadata.d.ts +16 -0
  757. package/dist/types/thinking.d.ts +22 -0
  758. package/dist/types/tool-discovery/tool-index.d.ts +112 -0
  759. package/dist/types/tools/archive-reader.d.ts +40 -0
  760. package/dist/types/tools/ask-answer-registry.d.ts +13 -0
  761. package/dist/types/tools/ask.d.ts +123 -0
  762. package/dist/types/tools/ast-edit.d.ts +77 -0
  763. package/dist/types/tools/ast-grep.d.ts +69 -0
  764. package/dist/types/tools/auto-generated-guard.d.ts +17 -0
  765. package/dist/types/tools/bash-allowed-prefixes.d.ts +10 -0
  766. package/dist/types/tools/bash-command-fixup.d.ts +11 -0
  767. package/dist/types/tools/bash-interactive.d.ts +16 -0
  768. package/dist/types/tools/bash-interceptor.d.ts +24 -0
  769. package/dist/types/tools/bash-pty-selection.d.ts +7 -0
  770. package/dist/types/tools/bash-skill-urls.d.ts +31 -0
  771. package/dist/types/tools/bash.d.ts +157 -0
  772. package/dist/types/tools/browser/actions.d.ts +54 -0
  773. package/dist/types/tools/browser/attach.d.ts +50 -0
  774. package/dist/types/tools/browser/launch.d.ts +62 -0
  775. package/dist/types/tools/browser/readable.d.ts +17 -0
  776. package/dist/types/tools/browser/registry.d.ts +57 -0
  777. package/dist/types/tools/browser/render.d.ts +53 -0
  778. package/dist/types/tools/browser/tab-protocol.d.ts +144 -0
  779. package/dist/types/tools/browser/tab-supervisor.d.ts +103 -0
  780. package/dist/types/tools/browser/tab-worker-entry.d.ts +1 -0
  781. package/dist/types/tools/browser/tab-worker.d.ts +19 -0
  782. package/dist/types/tools/browser.d.ts +211 -0
  783. package/dist/types/tools/calculator.d.ts +76 -0
  784. package/dist/types/tools/checkpoint.d.ts +63 -0
  785. package/dist/types/tools/composer-bash-policy.d.ts +14 -0
  786. package/dist/types/tools/computer/render.d.ts +17 -0
  787. package/dist/types/tools/computer-gc.d.ts +23 -0
  788. package/dist/types/tools/computer.d.ts +465 -0
  789. package/dist/types/tools/conflict-detect.d.ts +205 -0
  790. package/dist/types/tools/context.d.ts +19 -0
  791. package/dist/types/tools/cron.d.ts +91 -0
  792. package/dist/types/tools/debug.d.ts +209 -0
  793. package/dist/types/tools/eval.d.ts +108 -0
  794. package/dist/types/tools/fetch.d.ts +84 -0
  795. package/dist/types/tools/file-recorder.d.ts +13 -0
  796. package/dist/types/tools/find.d.ts +95 -0
  797. package/dist/types/tools/fs-cache-invalidation.d.ts +15 -0
  798. package/dist/types/tools/gh-format.d.ts +6 -0
  799. package/dist/types/tools/gh-renderer.d.ts +25 -0
  800. package/dist/types/tools/gh.d.ts +356 -0
  801. package/dist/types/tools/github-cache.d.ts +103 -0
  802. package/dist/types/tools/grouped-file-output.d.ts +36 -0
  803. package/dist/types/tools/hindsight-recall.d.ts +21 -0
  804. package/dist/types/tools/hindsight-reflect.d.ts +23 -0
  805. package/dist/types/tools/hindsight-retain.d.ts +27 -0
  806. package/dist/types/tools/image-gen.d.ts +79 -0
  807. package/dist/types/tools/index.d.ts +317 -0
  808. package/dist/types/tools/irc.d.ts +79 -0
  809. package/dist/types/tools/job.d.ts +78 -0
  810. package/dist/types/tools/json-tree.d.ts +23 -0
  811. package/dist/types/tools/jtd-to-json-schema.d.ts +29 -0
  812. package/dist/types/tools/jtd-to-typescript.d.ts +26 -0
  813. package/dist/types/tools/jtd-utils.d.ts +42 -0
  814. package/dist/types/tools/list-limit.d.ts +12 -0
  815. package/dist/types/tools/match-line-format.d.ts +11 -0
  816. package/dist/types/tools/monitor.d.ts +54 -0
  817. package/dist/types/tools/output-meta.d.ts +204 -0
  818. package/dist/types/tools/path-utils.d.ts +147 -0
  819. package/dist/types/tools/plan-mode-guard.d.ts +18 -0
  820. package/dist/types/tools/read.d.ts +85 -0
  821. package/dist/types/tools/recipe/index.d.ts +45 -0
  822. package/dist/types/tools/recipe/render.d.ts +36 -0
  823. package/dist/types/tools/recipe/runner.d.ts +60 -0
  824. package/dist/types/tools/recipe/runners/cargo.d.ts +16 -0
  825. package/dist/types/tools/recipe/runners/index.d.ts +2 -0
  826. package/dist/types/tools/recipe/runners/just.d.ts +2 -0
  827. package/dist/types/tools/recipe/runners/make.d.ts +2 -0
  828. package/dist/types/tools/recipe/runners/pkg.d.ts +2 -0
  829. package/dist/types/tools/recipe/runners/task.d.ts +2 -0
  830. package/dist/types/tools/render-mermaid.d.ts +37 -0
  831. package/dist/types/tools/render-utils.d.ts +158 -0
  832. package/dist/types/tools/renderers.d.ts +26 -0
  833. package/dist/types/tools/resolve.d.ts +80 -0
  834. package/dist/types/tools/resource-gc.d.ts +54 -0
  835. package/dist/types/tools/review.d.ts +63 -0
  836. package/dist/types/tools/search-tool-bm25.d.ts +65 -0
  837. package/dist/types/tools/search.d.ts +93 -0
  838. package/dist/types/tools/skill.d.ts +47 -0
  839. package/dist/types/tools/sqlite-reader.d.ts +94 -0
  840. package/dist/types/tools/ssh.d.ts +67 -0
  841. package/dist/types/tools/subagent-render.d.ts +31 -0
  842. package/dist/types/tools/subagent.d.ts +117 -0
  843. package/dist/types/tools/telegram-send.d.ts +32 -0
  844. package/dist/types/tools/todo-write.d.ts +120 -0
  845. package/dist/types/tools/tool-errors.d.ts +33 -0
  846. package/dist/types/tools/tool-result.d.ts +30 -0
  847. package/dist/types/tools/tool-timeouts.d.ts +56 -0
  848. package/dist/types/tools/ultragoal-ask-guard.d.ts +5 -0
  849. package/dist/types/tools/vim.d.ts +58 -0
  850. package/dist/types/tools/write.d.ts +59 -0
  851. package/dist/types/tools/yield.d.ts +25 -0
  852. package/dist/types/tui/code-cell.d.ts +32 -0
  853. package/dist/types/tui/file-list.d.ts +22 -0
  854. package/dist/types/tui/hyperlink.d.ts +42 -0
  855. package/dist/types/tui/index.d.ts +11 -0
  856. package/dist/types/tui/output-block.d.ts +28 -0
  857. package/dist/types/tui/status-line.d.ts +18 -0
  858. package/dist/types/tui/tree-list.d.ts +19 -0
  859. package/dist/types/tui/types.d.ts +13 -0
  860. package/dist/types/tui/utils.d.ts +36 -0
  861. package/dist/types/utils/changelog.d.ts +37 -0
  862. package/dist/types/utils/clipboard.d.ts +22 -0
  863. package/dist/types/utils/cmux-workspace.d.ts +52 -0
  864. package/dist/types/utils/command-args.d.ts +9 -0
  865. package/dist/types/utils/commit-message-generator.d.ts +7 -0
  866. package/dist/types/utils/edit-mode.d.ts +13 -0
  867. package/dist/types/utils/event-bus.d.ts +6 -0
  868. package/dist/types/utils/external-editor.d.ts +17 -0
  869. package/dist/types/utils/file-display-mode.d.ts +27 -0
  870. package/dist/types/utils/file-mentions.d.ts +11 -0
  871. package/dist/types/utils/git.d.ts +361 -0
  872. package/dist/types/utils/image-loading.d.ts +26 -0
  873. package/dist/types/utils/image-resize.d.ts +39 -0
  874. package/dist/types/utils/lang-from-path.d.ts +8 -0
  875. package/dist/types/utils/markit.d.ts +7 -0
  876. package/dist/types/utils/open.d.ts +2 -0
  877. package/dist/types/utils/session-color.d.ts +10 -0
  878. package/dist/types/utils/shell-snapshot.d.ts +5 -0
  879. package/dist/types/utils/sixel.d.ts +21 -0
  880. package/dist/types/utils/title-generator.d.ts +31 -0
  881. package/dist/types/utils/tool-choice.d.ts +20 -0
  882. package/dist/types/utils/tools-manager.d.ts +9 -0
  883. package/dist/types/vim/buffer.d.ts +41 -0
  884. package/dist/types/vim/commands.d.ts +6 -0
  885. package/dist/types/vim/engine.d.ts +47 -0
  886. package/dist/types/vim/parser.d.ts +3 -0
  887. package/dist/types/vim/render.d.ts +25 -0
  888. package/dist/types/vim/types.d.ts +182 -0
  889. package/dist/types/web/insane/bridge.d.ts +103 -0
  890. package/dist/types/web/insane/url-guard.d.ts +25 -0
  891. package/dist/types/web/kagi.d.ts +23 -0
  892. package/dist/types/web/parallel.d.ts +58 -0
  893. package/dist/types/web/scrapers/artifacthub.d.ts +6 -0
  894. package/dist/types/web/scrapers/arxiv.d.ts +5 -0
  895. package/dist/types/web/scrapers/aur.d.ts +5 -0
  896. package/dist/types/web/scrapers/biorxiv.d.ts +5 -0
  897. package/dist/types/web/scrapers/bluesky.d.ts +5 -0
  898. package/dist/types/web/scrapers/brew.d.ts +5 -0
  899. package/dist/types/web/scrapers/cheatsh.d.ts +8 -0
  900. package/dist/types/web/scrapers/chocolatey.d.ts +5 -0
  901. package/dist/types/web/scrapers/choosealicense.d.ts +2 -0
  902. package/dist/types/web/scrapers/cisa-kev.d.ts +5 -0
  903. package/dist/types/web/scrapers/clojars.d.ts +5 -0
  904. package/dist/types/web/scrapers/coingecko.d.ts +5 -0
  905. package/dist/types/web/scrapers/crates-io.d.ts +5 -0
  906. package/dist/types/web/scrapers/crossref.d.ts +2 -0
  907. package/dist/types/web/scrapers/devto.d.ts +5 -0
  908. package/dist/types/web/scrapers/discogs.d.ts +8 -0
  909. package/dist/types/web/scrapers/discourse.d.ts +5 -0
  910. package/dist/types/web/scrapers/dockerhub.d.ts +5 -0
  911. package/dist/types/web/scrapers/docs-rs.d.ts +2 -0
  912. package/dist/types/web/scrapers/fdroid.d.ts +5 -0
  913. package/dist/types/web/scrapers/firefox-addons.d.ts +2 -0
  914. package/dist/types/web/scrapers/flathub.d.ts +2 -0
  915. package/dist/types/web/scrapers/github-gist.d.ts +5 -0
  916. package/dist/types/web/scrapers/github.d.ts +12 -0
  917. package/dist/types/web/scrapers/gitlab.d.ts +5 -0
  918. package/dist/types/web/scrapers/go-pkg.d.ts +5 -0
  919. package/dist/types/web/scrapers/hackage.d.ts +5 -0
  920. package/dist/types/web/scrapers/hackernews.d.ts +2 -0
  921. package/dist/types/web/scrapers/hex.d.ts +5 -0
  922. package/dist/types/web/scrapers/huggingface.d.ts +2 -0
  923. package/dist/types/web/scrapers/iacr.d.ts +5 -0
  924. package/dist/types/web/scrapers/index.d.ts +84 -0
  925. package/dist/types/web/scrapers/jetbrains-marketplace.d.ts +2 -0
  926. package/dist/types/web/scrapers/lemmy.d.ts +2 -0
  927. package/dist/types/web/scrapers/lobsters.d.ts +5 -0
  928. package/dist/types/web/scrapers/mastodon.d.ts +5 -0
  929. package/dist/types/web/scrapers/maven.d.ts +6 -0
  930. package/dist/types/web/scrapers/mdn.d.ts +2 -0
  931. package/dist/types/web/scrapers/metacpan.d.ts +5 -0
  932. package/dist/types/web/scrapers/musicbrainz.d.ts +5 -0
  933. package/dist/types/web/scrapers/npm.d.ts +5 -0
  934. package/dist/types/web/scrapers/nuget.d.ts +5 -0
  935. package/dist/types/web/scrapers/nvd.d.ts +5 -0
  936. package/dist/types/web/scrapers/ollama.d.ts +2 -0
  937. package/dist/types/web/scrapers/open-vsx.d.ts +5 -0
  938. package/dist/types/web/scrapers/opencorporates.d.ts +5 -0
  939. package/dist/types/web/scrapers/openlibrary.d.ts +5 -0
  940. package/dist/types/web/scrapers/orcid.d.ts +5 -0
  941. package/dist/types/web/scrapers/osv.d.ts +5 -0
  942. package/dist/types/web/scrapers/packagist.d.ts +5 -0
  943. package/dist/types/web/scrapers/pub-dev.d.ts +5 -0
  944. package/dist/types/web/scrapers/pubmed.d.ts +5 -0
  945. package/dist/types/web/scrapers/pypi.d.ts +5 -0
  946. package/dist/types/web/scrapers/rawg.d.ts +2 -0
  947. package/dist/types/web/scrapers/readthedocs.d.ts +2 -0
  948. package/dist/types/web/scrapers/reddit.d.ts +5 -0
  949. package/dist/types/web/scrapers/repology.d.ts +5 -0
  950. package/dist/types/web/scrapers/rfc.d.ts +5 -0
  951. package/dist/types/web/scrapers/rubygems.d.ts +5 -0
  952. package/dist/types/web/scrapers/searchcode.d.ts +2 -0
  953. package/dist/types/web/scrapers/sec-edgar.d.ts +5 -0
  954. package/dist/types/web/scrapers/semantic-scholar.d.ts +2 -0
  955. package/dist/types/web/scrapers/snapcraft.d.ts +2 -0
  956. package/dist/types/web/scrapers/sourcegraph.d.ts +2 -0
  957. package/dist/types/web/scrapers/spdx.d.ts +5 -0
  958. package/dist/types/web/scrapers/spotify.d.ts +8 -0
  959. package/dist/types/web/scrapers/stackoverflow.d.ts +6 -0
  960. package/dist/types/web/scrapers/terraform.d.ts +5 -0
  961. package/dist/types/web/scrapers/tldr.d.ts +7 -0
  962. package/dist/types/web/scrapers/twitter.d.ts +5 -0
  963. package/dist/types/web/scrapers/types.d.ts +83 -0
  964. package/dist/types/web/scrapers/utils.d.ts +32 -0
  965. package/dist/types/web/scrapers/vimeo.d.ts +5 -0
  966. package/dist/types/web/scrapers/vscode-marketplace.d.ts +5 -0
  967. package/dist/types/web/scrapers/w3c.d.ts +2 -0
  968. package/dist/types/web/scrapers/wikidata.d.ts +5 -0
  969. package/dist/types/web/scrapers/wikipedia.d.ts +5 -0
  970. package/dist/types/web/scrapers/youtube.d.ts +5 -0
  971. package/dist/types/web/search/index.d.ts +118 -0
  972. package/dist/types/web/search/provider.d.ts +55 -0
  973. package/dist/types/web/search/providers/anthropic.d.ts +32 -0
  974. package/dist/types/web/search/providers/base.d.ts +90 -0
  975. package/dist/types/web/search/providers/brave.d.ts +27 -0
  976. package/dist/types/web/search/providers/codex.d.ts +35 -0
  977. package/dist/types/web/search/providers/duckduckgo.d.ts +57 -0
  978. package/dist/types/web/search/providers/exa.d.ts +52 -0
  979. package/dist/types/web/search/providers/gemini.d.ts +57 -0
  980. package/dist/types/web/search/providers/insane.d.ts +53 -0
  981. package/dist/types/web/search/providers/jina.d.ts +26 -0
  982. package/dist/types/web/search/providers/kagi.d.ts +24 -0
  983. package/dist/types/web/search/providers/kimi.d.ts +27 -0
  984. package/dist/types/web/search/providers/openai-compatible.d.ts +9 -0
  985. package/dist/types/web/search/providers/parallel.d.ts +15 -0
  986. package/dist/types/web/search/providers/perplexity.d.ts +38 -0
  987. package/dist/types/web/search/providers/searxng.d.ts +44 -0
  988. package/dist/types/web/search/providers/synthetic.d.ts +21 -0
  989. package/dist/types/web/search/providers/tavily.d.ts +29 -0
  990. package/dist/types/web/search/providers/text-citations.d.ts +23 -0
  991. package/dist/types/web/search/providers/utils.d.ts +88 -0
  992. package/dist/types/web/search/providers/xai.d.ts +64 -0
  993. package/dist/types/web/search/providers/zai.d.ts +28 -0
  994. package/dist/types/web/search/render.d.ts +36 -0
  995. package/dist/types/web/search/types.d.ts +372 -0
  996. package/dist/types/web/search/utils.d.ts +4 -0
  997. package/dist/types/workflow/workflow-intent-diff.d.ts +19 -0
  998. package/dist/types/workspace-tree.d.ts +42 -0
  999. package/package.json +117 -116
  1000. package/scripts/build-binary.ts +3 -0
  1001. package/src/capability/mcp.ts +2 -0
  1002. package/src/cli/telegram-cli.ts +156 -0
  1003. package/src/cli/update-cli.ts +24 -0
  1004. package/src/cli/web-search-cli.ts +5 -7
  1005. package/src/cli.ts +2 -1
  1006. package/src/commands/launch.ts +1 -1
  1007. package/src/commands/ralplan.ts +1 -0
  1008. package/src/commands/telegram.ts +47 -0
  1009. package/src/config/keybindings.ts +15 -6
  1010. package/src/config/mcp-schema.json +4 -0
  1011. package/src/config/settings-schema.ts +211 -6
  1012. package/src/config/telegram-autostart.ts +107 -0
  1013. package/src/config/telegram-env-bridge.ts +92 -0
  1014. package/src/defaults/skc/skills/ralplan/SKILL.md +29 -20
  1015. package/src/defaults/skc/skills/ultragoal/SKILL.md +37 -112
  1016. package/src/defaults/skc-defaults.ts +16 -0
  1017. package/src/discovery/builtin.ts +12 -0
  1018. package/src/discovery/cursor.ts +5 -84
  1019. package/src/discovery/gemini.ts +3 -89
  1020. package/src/discovery/index.ts +4 -1
  1021. package/src/discovery/mcp-json.ts +11 -0
  1022. package/src/discovery/opencode.ts +5 -122
  1023. package/src/discovery/windsurf.ts +4 -82
  1024. package/src/edit/read-file.ts +9 -1
  1025. package/src/extensibility/extensions/runner.ts +2 -1
  1026. package/src/extensibility/extensions/types.ts +11 -0
  1027. package/src/extensibility/skills.ts +30 -2
  1028. package/src/hooks/skill-state.ts +33 -73
  1029. package/src/i18n/messages/de.ts +1 -0
  1030. package/src/i18n/messages/en.ts +1 -0
  1031. package/src/i18n/messages/es.ts +1 -0
  1032. package/src/i18n/messages/fr.ts +1 -0
  1033. package/src/i18n/messages/ja.settings.ts +28 -0
  1034. package/src/i18n/messages/ja.ts +1 -0
  1035. package/src/i18n/messages/ko.settings.ts +28 -0
  1036. package/src/i18n/messages/ko.ts +1 -0
  1037. package/src/i18n/messages/zh.settings.ts +28 -0
  1038. package/src/i18n/messages/zh.ts +1 -0
  1039. package/src/internal-urls/docs-index.generated.ts +8 -4
  1040. package/src/main.ts +5 -2
  1041. package/src/migrate/executor.ts +23 -6
  1042. package/src/modes/acp/acp-agent.ts +7 -6
  1043. package/src/modes/components/agent-dashboard.ts +1 -34
  1044. package/src/modes/components/custom-editor.ts +26 -0
  1045. package/src/modes/components/extensions/extension-dashboard.ts +2 -48
  1046. package/src/modes/components/hook-selector.ts +21 -3
  1047. package/src/modes/components/model-selector.ts +64 -4
  1048. package/src/modes/components/session-selector.ts +19 -9
  1049. package/src/modes/components/settings-selector.ts +60 -5
  1050. package/src/modes/components/skill-message.ts +18 -10
  1051. package/src/modes/components/status-line/presets.ts +11 -0
  1052. package/src/modes/components/status-line/segments.ts +10 -2
  1053. package/src/modes/components/status-line.ts +215 -86
  1054. package/src/modes/components/tree-selector.ts +28 -8
  1055. package/src/modes/components/two-column-body.ts +36 -0
  1056. package/src/modes/components/welcome.ts +165 -30
  1057. package/src/modes/controllers/command-controller.ts +26 -2
  1058. package/src/modes/controllers/event-controller.ts +4 -0
  1059. package/src/modes/controllers/extension-ui-controller.ts +18 -2
  1060. package/src/modes/controllers/input-controller.ts +199 -47
  1061. package/src/modes/controllers/selector-controller.ts +25 -28
  1062. package/src/modes/interactive-mode.ts +36 -30
  1063. package/src/modes/prompt-action-autocomplete.ts +40 -8
  1064. package/src/modes/rpc/rpc-types.ts +1 -0
  1065. package/src/modes/shared/agent-wire/deep-interview-gate.ts +72 -15
  1066. package/src/modes/shared/agent-wire/workflow-gate-schema.ts +20 -0
  1067. package/src/modes/slash-command-visibility.ts +9 -0
  1068. package/src/modes/theme/theme.ts +5 -1
  1069. package/src/modes/types.ts +8 -1
  1070. package/src/modes/utils/hotkeys-markdown.ts +5 -2
  1071. package/src/modes/utils/ui-helpers.ts +76 -3
  1072. package/src/notifications/html-format.ts +75 -1
  1073. package/src/notifications/index.ts +32 -2
  1074. package/src/notifications/lifecycle-control-runtime.ts +12 -3
  1075. package/src/notifications/recent-activity.ts +32 -8
  1076. package/src/notifications/telegram-daemon-cli.ts +13 -4
  1077. package/src/notifications/telegram-daemon-control.ts +9 -0
  1078. package/src/notifications/telegram-daemon.ts +84 -46
  1079. package/src/notifications/telegram-reference.ts +36 -14
  1080. package/src/notifications/threaded-render.ts +14 -6
  1081. package/src/prompts/agents/architect.md +7 -4
  1082. package/src/prompts/agents/critic.md +15 -6
  1083. package/src/prompts/agents/planner.md +8 -3
  1084. package/src/prompts/system/system-prompt.md +20 -2
  1085. package/src/prompts/tools/bash.md +1 -1
  1086. package/src/runtime-mcp/config-writer.ts +28 -0
  1087. package/src/runtime-mcp/config.ts +7 -0
  1088. package/src/runtime-mcp/loader.ts +3 -0
  1089. package/src/runtime-mcp/manager.ts +3 -0
  1090. package/src/runtime-mcp/types.ts +6 -0
  1091. package/src/sdk.ts +10 -11
  1092. package/src/session/agent-session.ts +29 -8
  1093. package/src/session/session-manager.ts +58 -18
  1094. package/src/skc-runtime/ralplan-runtime.ts +22 -6
  1095. package/src/skc-runtime/restricted-role-agent-bash.ts +1 -0
  1096. package/src/skc-runtime/session-state-sidecar.ts +167 -24
  1097. package/src/skc-runtime/state-runtime.ts +8 -5
  1098. package/src/skc-runtime/state-writer.ts +5 -5
  1099. package/src/skc-runtime/ultragoal-guard.ts +150 -24
  1100. package/src/skc-runtime/ultragoal-runtime.ts +16 -124
  1101. package/src/skc-runtime/workflow-manifest.generated.json +0 -8
  1102. package/src/skc-runtime/workflow-manifest.ts +0 -1
  1103. package/src/slash-commands/builtin-registry.ts +30 -10
  1104. package/src/slash-commands/types.ts +2 -0
  1105. package/src/system-prompt.ts +8 -0
  1106. package/src/task/executor.ts +5 -0
  1107. package/src/tools/ast-grep.ts +10 -7
  1108. package/src/tools/bash.ts +39 -14
  1109. package/src/tools/index.ts +8 -1
  1110. package/src/tools/skill.ts +1 -1
  1111. package/src/utils/cmux-workspace.ts +233 -0
  1112. package/src/utils/title-generator.ts +2 -0
  1113. package/src/web/kagi.ts +1 -1
  1114. package/src/web/parallel.ts +2 -2
  1115. package/src/web/search/index.ts +137 -52
  1116. package/src/web/search/provider.ts +80 -0
  1117. package/src/web/search/providers/anthropic.ts +1 -1
  1118. package/src/web/search/providers/brave.ts +1 -1
  1119. package/src/web/search/providers/codex.ts +1 -1
  1120. package/src/web/search/providers/duckduckgo.ts +1 -1
  1121. package/src/web/search/providers/exa.ts +1 -1
  1122. package/src/web/search/providers/gemini.ts +7 -3
  1123. package/src/web/search/providers/jina.ts +1 -1
  1124. package/src/web/search/providers/kimi.ts +6 -1
  1125. package/src/web/search/providers/openai-compatible.ts +1 -1
  1126. package/src/web/search/providers/parallel.ts +1 -1
  1127. package/src/web/search/providers/perplexity.ts +2 -2
  1128. package/src/web/search/providers/searxng.ts +1 -1
  1129. package/src/web/search/providers/synthetic.ts +1 -1
  1130. package/src/web/search/providers/tavily.ts +1 -1
  1131. package/src/web/search/providers/utils.ts +67 -17
  1132. package/src/web/search/providers/xai.ts +1 -1
  1133. package/src/web/search/providers/zai.ts +1 -1
  1134. package/src/web/search/render.ts +3 -0
  1135. package/src/workflow/workflow-intent-diff.ts +199 -0
@@ -26,7 +26,7 @@ import * as path from "node:path";
26
26
  import { promisify } from "node:util";
27
27
  import type { ImageContent, TextContent } from "@sayknow-cli/ai";
28
28
  import { NotificationServer } from "@sayknow-cli/natives";
29
- import { logger } from "@sayknow-cli/utils";
29
+ import { logger, postmortem } from "@sayknow-cli/utils";
30
30
  import { Settings } from "../config/settings";
31
31
  import type { ExtensionCommandContext, ExtensionContext, ExtensionFactory } from "../extensibility/extensions";
32
32
  import { registerAskAnswerSource } from "../tools/ask-answer-registry";
@@ -297,6 +297,15 @@ function buildIdentity(
297
297
  return { repo, branch, machine: os.hostname(), title: sessionName };
298
298
  }
299
299
 
300
+ /** Compact cwd label for remote session identity; never emits the full host path by default. */
301
+ function compactCwd(cwd: string): string | undefined {
302
+ const home = os.homedir();
303
+ const resolved = path.resolve(cwd);
304
+ if (resolved === home) return "~";
305
+ const base = path.basename(resolved);
306
+ return base || path.parse(resolved).root || undefined;
307
+ }
308
+
300
309
  const execFileAsync = promisify(execFile);
301
310
 
302
311
  /** Best-effort working-tree diff stat for the context update (no throw). */
@@ -339,6 +348,8 @@ interface SessionRuntime {
339
348
  /** Assistant text already flushed before an ask this turn (turn-scoped dedupe
340
349
  * so turn_end does not re-emit the pre-ask lead-in). Reset each turn. */
341
350
  preAskFlushedText?: string;
351
+ /** Cancels the postmortem cleanup that emits `session_closed` on process teardown. */
352
+ cancelPostmortemCleanup: () => void;
342
353
  }
343
354
 
344
355
  interface ResolvedSettings {
@@ -491,6 +502,7 @@ export const createNotificationsExtension: ExtensionFactory = api => {
491
502
  if (!rt) return false;
492
503
  runtimes.delete(id);
493
504
  try {
505
+ rt.cancelPostmortemCleanup();
494
506
  rt.disposeAnswerSource();
495
507
  rt.disposeFileSink();
496
508
  } catch {}
@@ -671,6 +683,7 @@ export const createNotificationsExtension: ExtensionFactory = api => {
671
683
  pendingInteractive,
672
684
  disposeAnswerSource,
673
685
  disposeFileSink,
686
+ cancelPostmortemCleanup: () => {},
674
687
  redact,
675
688
  verbosity,
676
689
  sessionTag: tag,
@@ -678,6 +691,15 @@ export const createNotificationsExtension: ExtensionFactory = api => {
678
691
  pendingInbound: new Set<number>(),
679
692
  };
680
693
  runtimes.set(id, runtime);
694
+ // A native terminal close (SIGHUP), SIGTERM, Ctrl+C exit, or fatal error
695
+ // skips AgentSession.dispose(), so the `session_shutdown` extension event
696
+ // never fires and the daemon-side topic would be orphaned. postmortem
697
+ // awaits registered cleanups on those paths, so send the graceful
698
+ // `session_closed` frame from there too. stopSession() cancels this
699
+ // registration on every other teardown path, so it never double-fires.
700
+ runtime.cancelPostmortemCleanup = postmortem.register(`notifications-session-closed:${id}`, async () => {
701
+ await stopSession(id);
702
+ });
681
703
  logger.info(`notifications: serving session ${id} at ${endpoint.url} (unattended=${unattended})`);
682
704
 
683
705
  if (settingsAvailable && settings && isGloballyConfigured(cfg)) {
@@ -839,9 +861,15 @@ export const createNotificationsExtension: ExtensionFactory = api => {
839
861
  // Re-bind the interactive ask answer source: the ask tool resolves the
840
862
  // source by the current session id, which just changed.
841
863
  try {
864
+ rt.cancelPostmortemCleanup();
842
865
  rt.disposeAnswerSource();
843
866
  rt.disposeFileSink();
844
867
  } catch {}
868
+ // Follow the id change so a later process teardown closes the re-keyed
869
+ // session (the old closure captured the retired id).
870
+ rt.cancelPostmortemCleanup = postmortem.register(`notifications-session-closed:${newId}`, async () => {
871
+ await stopSession(newId);
872
+ });
845
873
  rt.disposeAnswerSource = registerInteractiveAnswerSource(
846
874
  newId,
847
875
  rt.server,
@@ -973,7 +1001,8 @@ export const createNotificationsExtension: ExtensionFactory = api => {
973
1001
  const tokenUsage = usage && usage.tokens != null ? `${usage.tokens}/${usage.contextWindow}` : undefined;
974
1002
  const modelId = model?.id;
975
1003
  void readGitDiffStat(ctx.cwd).then(diff => {
976
- if (!diff && !tokenUsage && !modelId) return;
1004
+ const cwd = compactCwd(ctx.cwd);
1005
+ if (!diff && !tokenUsage && !modelId && !cwd) return;
977
1006
  try {
978
1007
  rt.server.pushFrame(
979
1008
  JSON.stringify({
@@ -982,6 +1011,7 @@ export const createNotificationsExtension: ExtensionFactory = api => {
982
1011
  tokenUsage,
983
1012
  model: modelId,
984
1013
  diff,
1014
+ cwd,
985
1015
  }),
986
1016
  );
987
1017
  } catch (e) {
@@ -238,6 +238,7 @@ export function daemonResumeSession(env: NodeJS.ProcessEnv = process.env, opts:
238
238
  // restart, so an unknown or ambiguous prefix fails closed instead of
239
239
  // blindly spawning `skc --resume <prefix>` against a non-authoritative id.
240
240
  let resumeId = target.sessionIdOrPrefix;
241
+ let resumeCwd = target.path;
241
242
  if (opts.sessionsRoot) {
242
243
  const saved = listRecentSessions({ sessionsRoot: opts.sessionsRoot, limit: 1000 });
243
244
  const prefixed = saved.filter(
@@ -249,11 +250,19 @@ export function daemonResumeSession(env: NodeJS.ProcessEnv = process.env, opts:
249
250
  if (resolved.length > 1) {
250
251
  return { ambiguous: resolved.map(s => ({ sessionId: s.sessionId, path: s.path })) };
251
252
  }
252
- resumeId = resolved[0]!.sessionId;
253
+ const selected = resolved[0]!;
254
+ resumeId = selected.sessionId;
255
+ resumeCwd = selected.path;
256
+ }
257
+ const resolvedResumeCwd = resumeCwd ? path.resolve(resumeCwd) : undefined;
258
+ const resumeCwdStat = resolvedResumeCwd ? fs.statSync(resolvedResumeCwd, { throwIfNoEntry: false }) : undefined;
259
+ if (!resumeCwdStat?.isDirectory()) {
260
+ throw new Error(`skc_lifecycle_resume_cwd_unavailable: ${resolvedResumeCwd ?? "(missing)"}`);
253
261
  }
254
262
  const tmux = resolveSkcTmuxCommand(env);
255
263
  const name = tmuxSessionNameFor(resumeId);
256
- const command = `exec env SKC_TMUX_LAUNCHED=1 SKC_NOTIFICATIONS=1 skc --resume ${shellQuote(resumeId)}`;
264
+ const cwdPrefix = resolvedResumeCwd ? `cd ${shellQuote(resolvedResumeCwd)} && ` : "";
265
+ const command = `${cwdPrefix}exec env SKC_TMUX_LAUNCHED=1 SKC_NOTIFICATIONS=1 skc --resume ${shellQuote(resumeId)}`;
257
266
  const r = Bun.spawnSync([tmux, "new-session", "-d", "-s", name, "sh", "-c", command], {
258
267
  stdout: "pipe",
259
268
  stderr: "pipe",
@@ -261,7 +270,7 @@ export function daemonResumeSession(env: NodeJS.ProcessEnv = process.env, opts:
261
270
  });
262
271
  if (r.exitCode !== 0) throw new Error(r.stderr.toString().trim() || "skc_lifecycle_resume_failed");
263
272
  const tgt = buildSkcTmuxExactOptionTarget(name);
264
- for (const cmd of buildSkcTmuxProfileCommands(tgt, env, { sessionId: resumeId })) {
273
+ for (const cmd of buildSkcTmuxProfileCommands(tgt, env, { sessionId: resumeId, project: resolvedResumeCwd })) {
265
274
  Bun.spawnSync([tmux, ...cmd.args], { stdout: "pipe", stderr: "pipe", env });
266
275
  }
267
276
  return {
@@ -25,6 +25,8 @@ export interface RecentSessionEntry {
25
25
  mtimeMs: number;
26
26
  /** True when a terminal breadcrumb points at this session file. */
27
27
  currentTerminal?: boolean;
28
+ /** True when this history is an internal helper/sub-agent session. */
29
+ internal?: boolean;
28
30
  }
29
31
 
30
32
  export interface RecentActivityDeps {
@@ -34,17 +36,18 @@ export interface RecentActivityDeps {
34
36
  breadcrumbPaths?: string[];
35
37
  /** Max entries to return (default 20). */
36
38
  limit?: number;
39
+ /** Include internal helper/sub-agent sessions (default true). */
40
+ includeInternal?: boolean;
37
41
  /** Injection seam for tests. */
38
- readFirstLine?: (file: string) => string | undefined;
42
+ readInitialLines?: (file: string, maxLines: number) => string[];
39
43
  }
40
44
 
41
- function defaultReadFirstLine(file: string): string | undefined {
45
+ function defaultReadInitialLines(file: string, maxLines: number): string[] {
42
46
  try {
43
- const buf = fs.readFileSync(file, "utf8");
44
- const nl = buf.indexOf("\n");
45
- return nl === -1 ? buf : buf.slice(0, nl);
47
+ const lines = fs.readFileSync(file, "utf8").split("\n");
48
+ return lines.slice(0, maxLines);
46
49
  } catch {
47
- return undefined;
50
+ return [];
48
51
  }
49
52
  }
50
53
 
@@ -65,6 +68,22 @@ function headerMeta(line: string | undefined): { id?: string; path?: string; bra
65
68
  }
66
69
  }
67
70
 
71
+ /** Detect task-tool helper sessions from the durable early session_init metadata entry. */
72
+ function isInternalSession(lines: readonly string[]): boolean {
73
+ for (const line of lines.slice(1)) {
74
+ if (!line.trim()) continue;
75
+ try {
76
+ const obj = JSON.parse(line) as unknown;
77
+ if (typeof obj === "object" && obj !== null && (obj as { type?: unknown }).type === "session_init") {
78
+ return true;
79
+ }
80
+ } catch {
81
+ // Ignore malformed JSONL entries; classification is best-effort.
82
+ }
83
+ }
84
+ return false;
85
+ }
86
+
68
87
  /**
69
88
  * The authoritative session id for a history file: the header `id` when present,
70
89
  * else the filename stem with a leading `<timestamp>_` prefix stripped (matching
@@ -85,7 +104,8 @@ function sessionIdForFile(stem: string, headerId: string | undefined): string {
85
104
  */
86
105
  export function listRecentSessions(deps: RecentActivityDeps): RecentSessionEntry[] {
87
106
  const limit = deps.limit ?? 20;
88
- const readFirstLine = deps.readFirstLine ?? defaultReadFirstLine;
107
+ const includeInternal = deps.includeInternal ?? true;
108
+ const readInitialLines = deps.readInitialLines ?? defaultReadInitialLines;
89
109
  const breadcrumbs = new Set((deps.breadcrumbPaths ?? []).map(p => path.resolve(p)));
90
110
 
91
111
  let projectDirs: string[];
@@ -114,7 +134,10 @@ export function listRecentSessions(deps: RecentActivityDeps): RecentSessionEntry
114
134
  } catch {
115
135
  continue;
116
136
  }
117
- const meta = headerMeta(readFirstLine(file));
137
+ const initialLines = readInitialLines(file, 8);
138
+ const meta = headerMeta(initialLines[0]);
139
+ const internal = isInternalSession(initialLines);
140
+ if (internal && !includeInternal) continue;
118
141
  entries.push({
119
142
  sessionId: sessionIdForFile(name.slice(0, -".jsonl".length), meta.id),
120
143
  path: meta.path,
@@ -123,6 +146,7 @@ export function listRecentSessions(deps: RecentActivityDeps): RecentSessionEntry
123
146
  sessionStateFile: file,
124
147
  mtimeMs,
125
148
  currentTerminal: breadcrumbs.has(path.resolve(file)) || undefined,
149
+ internal: internal || undefined,
126
150
  });
127
151
  }
128
152
  }
@@ -3,12 +3,19 @@ import * as path from "node:path";
3
3
  import { YAML } from "bun";
4
4
  import type { Settings } from "../config/settings";
5
5
  import { getNotificationConfig, isGloballyConfigured } from "./config";
6
- import { daemonPaths, TelegramNotificationDaemon } from "./telegram-daemon";
7
- import { clearTelegramControlRequest, readTelegramControlRequest } from "./telegram-daemon-control";
6
+ import { daemonPaths } from "./daemon-paths";
7
+ import type { TelegramDaemonOptions } from "./telegram-daemon";
8
+
9
+ type TelegramDaemonRunner = {
10
+ run(): Promise<void>;
11
+ requestStop(reason?: "reload" | "signal" | "stop"): void;
12
+ };
13
+
14
+ type TelegramDaemonConstructor = new (opts: TelegramDaemonOptions) => TelegramDaemonRunner;
8
15
 
9
16
  export interface RunDaemonInternalDeps {
10
17
  SettingsImpl?: { init: (options?: { agentDir?: string }) => Promise<Pick<Settings, "get" | "getAgentDir">> };
11
- DaemonImpl?: typeof TelegramNotificationDaemon;
18
+ DaemonImpl?: TelegramDaemonConstructor;
12
19
  processPid?: number;
13
20
  pidAlive?: (pid: number) => boolean;
14
21
  }
@@ -140,7 +147,9 @@ export async function runDaemonInternal(argv: string[], deps: RunDaemonInternalD
140
147
  const settings = await resolveDaemonSettings(resolvedAgentDir, deps);
141
148
  const cfg = getNotificationConfig(settings as Settings);
142
149
  if (!isGloballyConfigured(cfg) || !cfg.botToken || !cfg.chatId) return;
143
- const Daemon = deps.DaemonImpl ?? TelegramNotificationDaemon;
150
+ const { clearTelegramControlRequest, readTelegramControlRequest } = await import("./telegram-daemon-control");
151
+ const Daemon: TelegramDaemonConstructor =
152
+ deps.DaemonImpl ?? (await import("./telegram-daemon")).TelegramNotificationDaemon;
144
153
  const daemon = new Daemon({
145
154
  settings: settings as Settings,
146
155
  ownerId,
@@ -97,6 +97,14 @@ export interface TelegramDaemonControlDeps {
97
97
  sendSignal?: (pid: number, signal: NodeJS.Signals) => void;
98
98
  spawn?: TelegramDaemonDeps["spawn"];
99
99
  execPath?: string;
100
+ /**
101
+ * Stable process id encoded into freshly-spawned daemon owner ids.
102
+ *
103
+ * The daemon-internal entrypoint rejects numeric owner ids whose process is
104
+ * already gone. `skc daemon reload` is a short-lived CLI process, so using its
105
+ * own pid can race the child startup and make the replacement exit immediately.
106
+ */
107
+ ownerPid?: number;
100
108
  randomId?: () => string;
101
109
  sleep?: (ms: number) => Promise<void>;
102
110
  waitStepMs?: number;
@@ -188,6 +196,7 @@ export class TelegramDaemonController implements BuiltInDaemonController {
188
196
  fs: this.deps.fs,
189
197
  now: this.deps.now,
190
198
  pidAlive: this.deps.pidAlive,
199
+ pid: this.deps.ownerPid ?? process.ppid,
191
200
  spawn: this.deps.spawn,
192
201
  execPath: this.deps.execPath,
193
202
  randomId: this.deps.randomId,
@@ -10,7 +10,14 @@ import type { DaemonRuntimeInfo } from "../daemon/control-types";
10
10
  import { resolveSkcRuntimeSpawnInfo } from "../daemon/runtime";
11
11
  import { getNotificationConfig, isGloballyConfigured, tokenFingerprint } from "./config";
12
12
  import { parseInThreadConfigCommand } from "./config-commands";
13
- import { buildCompactChoiceGrid, TELEGRAM_PARSE_MODE } from "./html-format";
13
+ import { daemonPaths } from "./daemon-paths";
14
+ import {
15
+ buildCompactChoiceGrid,
16
+ code,
17
+ splitTelegramHtml,
18
+ TELEGRAM_MESSAGE_LIMIT,
19
+ TELEGRAM_PARSE_MODE,
20
+ } from "./html-format";
14
21
  import type {
15
22
  SessionCloseTarget,
16
23
  SessionCreateTarget,
@@ -62,16 +69,6 @@ export interface DaemonState {
62
69
  version: 1;
63
70
  stoppedAt?: number;
64
71
  }
65
-
66
- export interface DaemonPaths {
67
- dir: string;
68
- lock: string;
69
- state: string;
70
- roots: string;
71
- steal: string;
72
- aliases: string;
73
- }
74
-
75
72
  export interface TelegramDaemonFs {
76
73
  mkdir(path: string, opts?: fs.MakeDirectoryOptions): Promise<void>;
77
74
  readFile(path: string, encoding: BufferEncoding): Promise<string>;
@@ -131,6 +128,24 @@ const QUEUED_REACTION = "👀";
131
128
  const PENDING_TOPIC_FRAME_LIMIT = 20;
132
129
  const CONSUMED_REACTION = "✅";
133
130
 
131
+ function splitTelegramPlainText(text: string, max = TELEGRAM_MESSAGE_LIMIT): string[] {
132
+ if (text.length <= max) return [text];
133
+ const chunks: string[] = [];
134
+ let out = "";
135
+ for (const ch of text) {
136
+ if (out.length + ch.length > max) {
137
+ chunks.push(out);
138
+ out = "";
139
+ }
140
+ out += ch;
141
+ }
142
+ if (out) chunks.push(out);
143
+ return chunks;
144
+ }
145
+ function endpointGenerationKey(url: string, token: string): string {
146
+ return `${url}\0${token}`;
147
+ }
148
+
134
149
  /**
135
150
  * Whether `err` is a transient network failure worth retrying. Telegram API
136
151
  * calls over HTTP/2 occasionally surface mid-stream `ECONNRESET` (and similar)
@@ -184,17 +199,7 @@ async function fetchWithRetry(
184
199
  throw lastErr;
185
200
  }
186
201
 
187
- export function daemonPaths(agentDir: string): DaemonPaths {
188
- const dir = path.join(agentDir, "notifications");
189
- return {
190
- dir,
191
- lock: path.join(dir, "telegram-daemon.lock"),
192
- state: path.join(dir, "telegram-daemon.state.json"),
193
- roots: path.join(dir, "telegram-daemon.roots.json"),
194
- steal: path.join(dir, "telegram-daemon.steal"),
195
- aliases: path.join(dir, "telegram-callback-aliases.json"),
196
- };
197
- }
202
+ export { type DaemonPaths, daemonPaths } from "./daemon-paths";
198
203
 
199
204
  /**
200
205
  * Attach session-lifecycle control (create/close/resume) to the running daemon.
@@ -770,6 +775,7 @@ export interface TelegramDaemonOptions {
770
775
  interface SessionSocket {
771
776
  sessionId: string;
772
777
  token: string;
778
+ endpointKey: string;
773
779
  ws: WebSocket;
774
780
  pending: Map<string, { sessionId: string; actionId: string }>;
775
781
  /** True once the server advertised the `client_ping_pong` capability. */
@@ -806,6 +812,8 @@ export class TelegramNotificationDaemon {
806
812
  private readonly topicOwnerByIdentity = new Map<string, string>();
807
813
  /** Non-identity frames held until identity creates the correct thread. */
808
814
  private readonly pendingThreadedFrames = new Map<string, PendingThreadedFrame[]>();
815
+ /** Endpoint generation tombstones for sessions that already sent session_closed. */
816
+ private readonly closedEndpointKeys = new Map<string, string>();
809
817
  /** True once the daemon has nudged the user to enable Threaded Mode. */
810
818
  private threadedFallbackNoticeSent = false;
811
819
  /** Sessions whose identity header was already sent flat (Threaded Mode off). */
@@ -1072,14 +1080,29 @@ export class TelegramNotificationDaemon {
1072
1080
  threadId: number | undefined,
1073
1081
  ): Promise<boolean> {
1074
1082
  if (!isLifecycleCommandText(text)) return false;
1075
- const reply = (body: string) =>
1076
- this.botApi
1077
- .call("sendMessage", {
1078
- chat_id: this.opts.chatId,
1079
- ...(threadId !== undefined ? { message_thread_id: threadId } : {}),
1080
- text: body,
1081
- })
1082
- .catch(() => undefined);
1083
+ const reply = async (body: string): Promise<void> => {
1084
+ for (const text of splitTelegramPlainText(body)) {
1085
+ await this.botApi
1086
+ .call("sendMessage", {
1087
+ chat_id: this.opts.chatId,
1088
+ ...(threadId !== undefined ? { message_thread_id: threadId } : {}),
1089
+ text,
1090
+ })
1091
+ .catch(() => undefined);
1092
+ }
1093
+ };
1094
+ const replyHtml = async (body: string): Promise<void> => {
1095
+ for (const text of splitTelegramHtml(body)) {
1096
+ await this.botApi
1097
+ .call("sendMessage", {
1098
+ chat_id: this.opts.chatId,
1099
+ ...(threadId !== undefined ? { message_thread_id: threadId } : {}),
1100
+ text,
1101
+ parse_mode: TELEGRAM_PARSE_MODE,
1102
+ })
1103
+ .catch(() => undefined);
1104
+ }
1105
+ };
1083
1106
 
1084
1107
  if (!this.lifecycleControlActive) {
1085
1108
  await reply("Session lifecycle control is not available right now.");
@@ -1098,11 +1121,12 @@ export class TelegramNotificationDaemon {
1098
1121
  const recent = listRecentSessions({
1099
1122
  sessionsRoot: path.join(this.opts.settings.getAgentDir(), "sessions"),
1100
1123
  limit: 10,
1124
+ includeInternal: false,
1101
1125
  });
1102
- const lines = recent.length
1103
- ? recent.map(e => `\u2022 ${e.sessionId}${e.path ? ` (${e.path})` : ""}`).join("\n")
1126
+ const body = recent.length
1127
+ ? recent.map(e => `• ${code(e.sessionId)}${e.path ? ` (${code(e.path)})` : ""}`).join("\n")
1104
1128
  : "No recent sessions.";
1105
- await reply(lines);
1129
+ await replyHtml(body);
1106
1130
  return true;
1107
1131
  }
1108
1132
 
@@ -1205,7 +1229,9 @@ export class TelegramNotificationDaemon {
1205
1229
  matches: msg => msg.type === "session_closed",
1206
1230
  handle: async session => {
1207
1231
  this.busy.delete(session.sessionId);
1232
+ this.closedEndpointKeys.set(session.sessionId, session.endpointKey);
1208
1233
  await this.deleteTopic(session.sessionId);
1234
+ this.dropSession(session, "session_closed");
1209
1235
  },
1210
1236
  });
1211
1237
  }
@@ -1242,6 +1268,9 @@ export class TelegramNotificationDaemon {
1242
1268
  // would chase a dead, token-bearing record forever.
1243
1269
  const pidAlive = this.opts.pidAlive ?? defaultPidAlive;
1244
1270
  if (endpoint.stale || (endpoint.pid !== undefined && !pidAlive(endpoint.pid))) continue;
1271
+ const endpointKey = endpointGenerationKey(endpoint.url, endpoint.token);
1272
+ if (this.closedEndpointKeys.get(sessionId) === endpointKey) continue;
1273
+ this.closedEndpointKeys.delete(sessionId);
1245
1274
  this.connectSession(sessionId, endpoint.url, endpoint.token);
1246
1275
  } catch {}
1247
1276
  }
@@ -1251,9 +1280,12 @@ export class TelegramNotificationDaemon {
1251
1280
  connectSession(sessionId: string, url: string, token: string): void {
1252
1281
  const WS = this.opts.WebSocketImpl ?? WebSocket;
1253
1282
  const ws = new WS(`${url}/?token=${encodeURIComponent(token)}`);
1283
+ const endpointKey = endpointGenerationKey(url, token);
1284
+ this.closedEndpointKeys.delete(sessionId);
1254
1285
  const session: SessionSocket = {
1255
1286
  sessionId,
1256
1287
  token,
1288
+ endpointKey,
1257
1289
  ws,
1258
1290
  pending: new Map(),
1259
1291
  capable: false,
@@ -1631,12 +1663,14 @@ export class TelegramNotificationDaemon {
1631
1663
  parse_mode: TELEGRAM_PARSE_MODE,
1632
1664
  });
1633
1665
  } else if (send.text) {
1634
- await this.botApi.call("sendMessage", {
1635
- chat_id: this.opts.chatId,
1636
- ...threadField,
1637
- text: send.text,
1638
- parse_mode: TELEGRAM_PARSE_MODE,
1639
- });
1666
+ for (const text of splitTelegramHtml(send.text)) {
1667
+ await this.botApi.call("sendMessage", {
1668
+ chat_id: this.opts.chatId,
1669
+ ...threadField,
1670
+ text,
1671
+ parse_mode: TELEGRAM_PARSE_MODE,
1672
+ });
1673
+ }
1640
1674
  }
1641
1675
  } catch {
1642
1676
  // Best-effort: a failed send must never stop the daemon.
@@ -1839,13 +1873,17 @@ export class TelegramNotificationDaemon {
1839
1873
  const inline_keyboard = buildCompactChoiceGrid(options, (i: number) =>
1840
1874
  this.aliasTable.put({ sessionId: session.sessionId, actionId: msg.id, answer: i }),
1841
1875
  );
1842
- const result = (await this.botApi.call("sendMessage", {
1843
- chat_id: this.opts.chatId,
1844
- ...threadField,
1845
- text: rendered.text,
1846
- parse_mode: TELEGRAM_PARSE_MODE,
1847
- ...(inline_keyboard.length ? { reply_markup: { inline_keyboard } } : {}),
1848
- })) as { result?: { message_id?: number } };
1876
+ const chunks = splitTelegramHtml(rendered.text);
1877
+ let result: { result?: { message_id?: number } } = {};
1878
+ for (let i = 0; i < chunks.length; i++) {
1879
+ result = (await this.botApi.call("sendMessage", {
1880
+ chat_id: this.opts.chatId,
1881
+ ...threadField,
1882
+ text: chunks[i]!,
1883
+ parse_mode: TELEGRAM_PARSE_MODE,
1884
+ ...(i === chunks.length - 1 && inline_keyboard.length ? { reply_markup: { inline_keyboard } } : {}),
1885
+ })) as { result?: { message_id?: number } };
1886
+ }
1849
1887
  const messageId = result.result?.message_id;
1850
1888
  if (messageId !== undefined)
1851
1889
  this.messageRoutes.set(String(messageId), { sessionId: session.sessionId, actionId: msg.id });
@@ -20,8 +20,8 @@ import {
20
20
  buildCompactChoiceGrid,
21
21
  escapeHtml,
22
22
  numberedOptionList,
23
+ splitTelegramHtml,
23
24
  TELEGRAM_PARSE_MODE,
24
- truncateTelegramHtml,
25
25
  } from "./html-format";
26
26
  import { renderThreadedFrame } from "./threaded-render";
27
27
 
@@ -37,6 +37,8 @@ export interface RenderedMessage {
37
37
  inline_keyboard?: InlineButton[][];
38
38
  }
39
39
 
40
+ type TelegramSend = (method: string, body: unknown) => Promise<Response>;
41
+
40
42
  /** Encode `actionId` + option `index` into Telegram callback_data (<=64 bytes). */
41
43
  export function encodeCallbackData(actionId: string, index: number): string {
42
44
  return `r:${index}:${actionId}`.slice(0, 64);
@@ -131,14 +133,32 @@ export function buildActionMessage(action: {
131
133
  }): RenderedMessage {
132
134
  if (action.kind === "idle") {
133
135
  const text = action.summary ? `🟢 Agent idle\n${escapeHtml(action.summary)}` : "🟢 Agent idle";
134
- return { text: truncateTelegramHtml(text) };
136
+ return { text };
135
137
  }
136
138
  const text = `❓ ${bold(action.question ?? "Question")}`;
137
139
  const options = action.options ?? [];
138
- if (options.length === 0) return { text: truncateTelegramHtml(`${text}\n\n(reply with text)`) };
140
+ if (options.length === 0) return { text: `${text}\n\n(reply with text)` };
139
141
  const body = `${text}\n\n${numberedOptionList(options)}`;
140
142
  const inline_keyboard = buildCompactChoiceGrid(options, i => encodeCallbackData(action.id, i));
141
- return { text: truncateTelegramHtml(body), inline_keyboard };
143
+ return { text: body, inline_keyboard };
144
+ }
145
+
146
+ /** Send Telegram HTML text chunks sequentially so long messages preserve order. */
147
+ export async function sendTelegramHtmlChunks(
148
+ send: TelegramSend,
149
+ chatId: string,
150
+ text: string,
151
+ inlineKeyboard?: InlineButton[][],
152
+ ): Promise<void> {
153
+ const chunks = splitTelegramHtml(text);
154
+ for (let i = 0; i < chunks.length; i++) {
155
+ await send("sendMessage", {
156
+ chat_id: chatId,
157
+ text: chunks[i]!,
158
+ parse_mode: TELEGRAM_PARSE_MODE,
159
+ ...(i === chunks.length - 1 && inlineKeyboard ? { reply_markup: { inline_keyboard: inlineKeyboard } } : {}),
160
+ });
161
+ }
142
162
  }
143
163
 
144
164
  /** A protocol `reply` frame the client should send to the server. */
@@ -285,15 +305,15 @@ export async function runTelegramReferenceClient(opts: TelegramReferenceOptions)
285
305
  const ws = new WebSocket(`${url}/?token=${encodeURIComponent(token)}`);
286
306
  let latestPendingAskId: string | undefined;
287
307
 
288
- const send = (method: string, body: unknown): Promise<Response> =>
308
+ const send: TelegramSend = (method, body) =>
289
309
  fetchImpl(`${api}/${method}`, {
290
310
  method: "POST",
291
311
  headers: { "content-type": "application/json" },
292
312
  body: JSON.stringify(body),
293
313
  });
294
314
 
295
- ws.addEventListener("message", (ev: MessageEvent) => {
296
- const msg = JSON.parse(String(ev.data)) as {
315
+ const handleServerMessage = async (data: string): Promise<void> => {
316
+ const msg = JSON.parse(data) as {
297
317
  type: string;
298
318
  kind?: "ask" | "idle";
299
319
  id?: string;
@@ -311,12 +331,7 @@ export async function runTelegramReferenceClient(opts: TelegramReferenceOptions)
311
331
  options: msg.options,
312
332
  summary: msg.summary,
313
333
  });
314
- void send("sendMessage", {
315
- chat_id: opts.chatId,
316
- text: rendered.text,
317
- parse_mode: TELEGRAM_PARSE_MODE,
318
- ...(rendered.inline_keyboard ? { reply_markup: { inline_keyboard: rendered.inline_keyboard } } : {}),
319
- });
334
+ await sendTelegramHtmlChunks(send, opts.chatId, rendered.text, rendered.inline_keyboard);
320
335
  } else if (msg.type === "action_resolved" && msg.id === latestPendingAskId) {
321
336
  latestPendingAskId = undefined;
322
337
  } else {
@@ -325,9 +340,16 @@ export async function runTelegramReferenceClient(opts: TelegramReferenceOptions)
325
340
  // session's forum topic; this reference shows the minimal handling.
326
341
  const threaded = renderThreadedFrame(msg as never);
327
342
  if (threaded?.text) {
328
- void send("sendMessage", { chat_id: opts.chatId, text: threaded.text, parse_mode: TELEGRAM_PARSE_MODE });
343
+ await sendTelegramHtmlChunks(send, opts.chatId, threaded.text);
329
344
  }
330
345
  }
346
+ };
347
+
348
+ let messageQueue = Promise.resolve();
349
+ ws.addEventListener("message", ev => {
350
+ const data = String(ev.data);
351
+ messageQueue = messageQueue.catch(() => undefined).then(() => handleServerMessage(data));
352
+ void messageQueue.catch(() => undefined);
331
353
  });
332
354
 
333
355
  // Telegram long-poll loop.
@@ -49,6 +49,7 @@ interface ThreadedFrame {
49
49
  tokenUsage?: unknown;
50
50
  model?: unknown;
51
51
  diff?: unknown;
52
+ cwd?: unknown;
52
53
  // turn_stream
53
54
  phase?: unknown;
54
55
  text?: unknown;
@@ -89,18 +90,25 @@ export function formatIdentityHeader(frame: {
89
90
  /** Format a streamed context update into a compact block (omitting empty fields). */
90
91
  export function formatContextUpdate(frame: ThreadedFrame): string | undefined {
91
92
  const lines: string[] = [];
93
+ const session = str(frame.sessionId);
94
+ const cwd = str(frame.cwd);
92
95
  const last = str(frame.lastMessage);
93
- if (last) lines.push(escapeHtml(truncate(last, 600)));
94
96
  const task = str(frame.task);
95
- if (task) lines.push(`${italic("task:")} ${escapeHtml(task)}`);
96
97
  const goal = str(frame.goal);
97
- if (goal) lines.push(`${italic("goal:")} ${escapeHtml(goal)}`);
98
98
  const usage = str(frame.tokenUsage);
99
99
  const model = str(frame.model);
100
- if (usage || model) lines.push(`ctx: ${code([usage, model].filter(Boolean).join(" · "))}`);
101
100
  const diff = str(frame.diff);
101
+ if (!cwd && !last && !task && !goal && !usage && !model && !diff) return undefined;
102
+ const meta = [session ? `session: ${code(session)}` : undefined, cwd ? `cwd: ${code(cwd)}` : undefined].filter(
103
+ Boolean,
104
+ );
105
+ if (meta.length > 0) lines.push(meta.join(" · "));
106
+ if (last) lines.push(escapeHtml(truncate(last, 600)));
107
+ if (task) lines.push(`${italic("task:")} ${escapeHtml(task)}`);
108
+ if (goal) lines.push(`${italic("goal:")} ${escapeHtml(goal)}`);
109
+ if (usage || model) lines.push(`ctx: ${code([usage, model].filter(Boolean).join(" · "))}`);
102
110
  if (diff) lines.push(`diff:\n${pre(truncate(diff, 1200))}`);
103
- return lines.length ? lines.join("\n") : undefined;
111
+ return lines.join("\n");
104
112
  }
105
113
 
106
114
  /**
@@ -125,7 +133,7 @@ export function renderThreadedFrame(frame: ThreadedFrame): ThreadedSend | undefi
125
133
  case "turn_stream": {
126
134
  const raw = str(frame.text);
127
135
  if (!raw) return undefined;
128
- const text = finalizeTelegramHtml(markdownToTelegramHtml(raw));
136
+ const text = markdownToTelegramHtml(raw);
129
137
  const finalized = frame.phase === "finalized";
130
138
  return {
131
139
  method: "sendMessage",