@gajae-code/coding-agent 0.10.1 → 0.11.0

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 (474) hide show
  1. package/CHANGELOG.md +70 -2
  2. package/dist/types/append-only-mode.d.ts +1 -1
  3. package/dist/types/cli/args.d.ts +4 -5
  4. package/dist/types/cli/daemon-cli.d.ts +12 -1
  5. package/dist/types/cli/notify-cli.d.ts +21 -1
  6. package/dist/types/cli.d.ts +3 -0
  7. package/dist/types/commands/daemon.d.ts +39 -0
  8. package/dist/types/commands/launch.d.ts +3 -0
  9. package/dist/types/commands/notify.d.ts +28 -1
  10. package/dist/types/commands/sdk.d.ts +33 -0
  11. package/dist/types/config/atomic-yaml-patch.d.ts +85 -0
  12. package/dist/types/config/model-profile-activation.d.ts +35 -15
  13. package/dist/types/config/model-profiles.d.ts +11 -5
  14. package/dist/types/config/model-registry.d.ts +3 -3
  15. package/dist/types/config/model-resolver.d.ts +39 -6
  16. package/dist/types/config/model-selector-value.d.ts +17 -0
  17. package/dist/types/config/models-config-schema.d.ts +10 -6
  18. package/dist/types/config/settings-schema.d.ts +133 -6
  19. package/dist/types/config/settings.d.ts +63 -35
  20. package/dist/types/coordinator-mcp/model-preset.d.ts +7 -6
  21. package/dist/types/coordinator-mcp/server.d.ts +6 -49
  22. package/dist/types/daemon/builtin.d.ts +6 -5
  23. package/dist/types/daemon/control-types.d.ts +1 -1
  24. package/dist/types/discovery/mcp-json.d.ts +12 -1
  25. package/dist/types/extensibility/custom-tools/types.d.ts +1 -1
  26. package/dist/types/extensibility/extensions/compact-handler.d.ts +4 -2
  27. package/dist/types/extensibility/extensions/get-commands-handler.d.ts +2 -2
  28. package/dist/types/extensibility/extensions/loader.d.ts +10 -1
  29. package/dist/types/extensibility/extensions/runner.d.ts +3 -3
  30. package/dist/types/extensibility/extensions/types.d.ts +141 -16
  31. package/dist/types/extensibility/hooks/types.d.ts +1 -1
  32. package/dist/types/gjc-runtime/launch-tmux.d.ts +3 -2
  33. package/dist/types/gjc-runtime/psmux-detect.d.ts +3 -0
  34. package/dist/types/gjc-runtime/session-state-sidecar.d.ts +3 -0
  35. package/dist/types/gjc-runtime/team-runtime.d.ts +3 -4
  36. package/dist/types/gjc-runtime/tmux-owner-isolation-cli.d.ts +13 -0
  37. package/dist/types/gjc-runtime/tmux-sessions.d.ts +4 -1
  38. package/dist/types/gjc-runtime/windows-powershell-command.d.ts +9 -0
  39. package/dist/types/harness-control-plane/operate.d.ts +5 -5
  40. package/dist/types/harness-control-plane/owner.d.ts +18 -4
  41. package/dist/types/harness-control-plane/receipts.d.ts +0 -1
  42. package/dist/types/harness-control-plane/sdk-transport.d.ts +43 -0
  43. package/dist/types/harness-control-plane/session-transport.d.ts +48 -0
  44. package/dist/types/harness-control-plane/types.d.ts +3 -4
  45. package/dist/types/lsp/index.d.ts +1 -1
  46. package/dist/types/main.d.ts +32 -38
  47. package/dist/types/modes/acp/acp-agent.d.ts +224 -53
  48. package/dist/types/modes/acp/acp-client-bridge.d.ts +1 -0
  49. package/dist/types/modes/acp/acp-mode.d.ts +6 -15
  50. package/dist/types/modes/acp/permission-mode.d.ts +4 -0
  51. package/dist/types/modes/acp/startup-options.d.ts +6 -0
  52. package/dist/types/modes/components/agent-dashboard.d.ts +3 -0
  53. package/dist/types/modes/components/gajae-pet-widget.d.ts +1 -0
  54. package/dist/types/modes/components/model-selector.d.ts +1 -0
  55. package/dist/types/modes/components/notifications-settings-editor.d.ts +135 -0
  56. package/dist/types/modes/components/pet-capability.d.ts +37 -0
  57. package/dist/types/modes/components/pet-selector.d.ts +1 -1
  58. package/dist/types/modes/components/settings-selector.d.ts +15 -4
  59. package/dist/types/modes/components/welcome.d.ts +1 -1
  60. package/dist/types/modes/controllers/selector-controller.d.ts +35 -1
  61. package/dist/types/modes/index.d.ts +0 -4
  62. package/dist/types/modes/interactive-mode.d.ts +5 -1
  63. package/dist/types/modes/runtime-init.d.ts +2 -2
  64. package/dist/types/modes/shared/agent-wire/approval-gate.d.ts +6 -9
  65. package/dist/types/modes/shared/agent-wire/deep-interview-gate.d.ts +4 -6
  66. package/dist/types/modes/shared/agent-wire/event-contract.d.ts +6 -6
  67. package/dist/types/modes/shared/agent-wire/event-envelope.d.ts +4 -9
  68. package/dist/types/modes/shared/agent-wire/event-observation.d.ts +1 -1
  69. package/dist/types/modes/shared/agent-wire/workflow-gate-broker.d.ts +169 -30
  70. package/dist/types/modes/shared/agent-wire/workflow-gate-schema.d.ts +7 -7
  71. package/dist/types/modes/shared/agent-wire/workflow-gate-types.d.ts +105 -0
  72. package/dist/types/modes/types.d.ts +16 -1
  73. package/dist/types/runtime-mcp/client.d.ts +2 -0
  74. package/dist/types/runtime-mcp/config.d.ts +5 -1
  75. package/dist/types/runtime-mcp/manager.d.ts +8 -1
  76. package/dist/types/runtime-mcp/types.d.ts +4 -0
  77. package/dist/types/sdk/acp/adapter.d.ts +67 -0
  78. package/dist/types/sdk/acp/index.d.ts +2 -0
  79. package/dist/types/sdk/broker/broker.d.ts +53 -0
  80. package/dist/types/sdk/broker/discovery.d.ts +30 -0
  81. package/dist/types/sdk/broker/ensure.d.ts +33 -0
  82. package/dist/types/sdk/broker/identity.d.ts +3 -0
  83. package/dist/types/sdk/broker/index.d.ts +8 -0
  84. package/dist/types/sdk/broker/lifecycle-ledger.d.ts +95 -0
  85. package/dist/types/sdk/broker/lifecycle.d.ts +85 -0
  86. package/dist/types/sdk/broker/process-incarnation.d.ts +14 -0
  87. package/dist/types/sdk/broker/runtime.d.ts +33 -0
  88. package/dist/types/sdk/broker/session-index.d.ts +57 -0
  89. package/dist/types/sdk/broker/state-version.d.ts +8 -0
  90. package/dist/types/sdk/broker/transport.d.ts +9 -0
  91. package/dist/types/sdk/bus/chat-command-policy.d.ts +49 -0
  92. package/dist/types/sdk/bus/chat-daemon-cli.d.ts +21 -0
  93. package/dist/types/sdk/bus/chat-daemon-control.d.ts +111 -0
  94. package/dist/types/sdk/bus/chat-daemon-runtime.d.ts +77 -0
  95. package/dist/types/sdk/bus/chat-effect-journal.d.ts +84 -0
  96. package/dist/types/{notifications → sdk/bus}/config-commands.d.ts +7 -2
  97. package/dist/types/sdk/bus/config.d.ts +274 -0
  98. package/dist/types/sdk/bus/conversation-store.d.ts +72 -0
  99. package/dist/types/sdk/bus/discord-conversation.d.ts +58 -0
  100. package/dist/types/sdk/bus/discord-daemon.d.ts +45 -0
  101. package/dist/types/sdk/bus/discord-live-provider.d.ts +70 -0
  102. package/dist/types/sdk/bus/discord-provider.d.ts +85 -0
  103. package/dist/types/{notifications → sdk/bus}/html-format.d.ts +2 -2
  104. package/dist/types/{notifications → sdk/bus}/index.d.ts +113 -13
  105. package/dist/types/{notifications → sdk/bus}/lifecycle-control-runtime.d.ts +4 -2
  106. package/dist/types/{notifications → sdk/bus}/lifecycle-orchestrator.d.ts +18 -21
  107. package/dist/types/{notifications → sdk/bus}/managed-daemon.d.ts +1 -1
  108. package/dist/types/sdk/bus/native-runtime-compatibility.d.ts +13 -0
  109. package/dist/types/sdk/bus/notification-orchestration.d.ts +170 -0
  110. package/dist/types/{notifications → sdk/bus}/notification-service.d.ts +7 -1
  111. package/dist/types/sdk/bus/session-control.d.ts +83 -0
  112. package/dist/types/sdk/bus/slack-conversation.d.ts +56 -0
  113. package/dist/types/sdk/bus/slack-daemon.d.ts +60 -0
  114. package/dist/types/sdk/bus/slack-live-provider.d.ts +59 -0
  115. package/dist/types/sdk/bus/slack-provider.d.ts +55 -0
  116. package/dist/types/{notifications → sdk/bus}/telegram-cli.d.ts +4 -4
  117. package/dist/types/{notifications → sdk/bus}/telegram-daemon-cli.d.ts +14 -5
  118. package/dist/types/sdk/bus/telegram-daemon-contract.d.ts +12 -0
  119. package/dist/types/{notifications → sdk/bus}/telegram-daemon-control.d.ts +2 -2
  120. package/dist/types/{notifications → sdk/bus}/telegram-daemon.d.ts +55 -17
  121. package/dist/types/{notifications → sdk/bus}/telegram-reference.d.ts +2 -2
  122. package/dist/types/sdk/bus/telegram-setup.d.ts +128 -0
  123. package/dist/types/{notifications → sdk/bus}/topic-registry.d.ts +11 -0
  124. package/dist/types/sdk/cli/index.d.ts +1 -0
  125. package/dist/types/sdk/cli/session-cli.d.ts +19 -0
  126. package/dist/types/sdk/client/client.d.ts +1 -0
  127. package/dist/types/sdk/client/discovery.d.ts +27 -0
  128. package/dist/types/sdk/client/index.d.ts +2 -0
  129. package/dist/types/sdk/host/control/dispatch.d.ts +34 -0
  130. package/dist/types/sdk/host/control/index.d.ts +2 -0
  131. package/dist/types/sdk/host/control/operations.d.ts +65 -0
  132. package/dist/types/sdk/host/events.d.ts +35 -0
  133. package/dist/types/sdk/host/host.d.ts +35 -0
  134. package/dist/types/sdk/host/index.d.ts +4 -0
  135. package/dist/types/sdk/host/query/cursor.d.ts +62 -0
  136. package/dist/types/sdk/host/query/handlers.d.ts +70 -0
  137. package/dist/types/sdk/host/query/index.d.ts +3 -0
  138. package/dist/types/sdk/host/query/revision-store.d.ts +60 -0
  139. package/dist/types/sdk/host/reverse-leases.d.ts +45 -0
  140. package/dist/types/sdk/host/types.d.ts +32 -0
  141. package/dist/types/sdk/index.d.ts +6 -0
  142. package/dist/types/sdk/lifecycle-session.d.ts +14 -0
  143. package/dist/types/sdk/mcp/index.d.ts +1 -0
  144. package/dist/types/sdk/mcp/server.d.ts +37 -0
  145. package/dist/types/sdk/models.d.ts +44 -0
  146. package/dist/types/sdk/protocol/adapter-validation.d.ts +14 -0
  147. package/dist/types/sdk/protocol/operation-registry.d.ts +24 -0
  148. package/dist/types/{sdk.d.ts → sdk/session.d.ts} +44 -38
  149. package/dist/types/sdk/startup-capability.d.ts +50 -0
  150. package/dist/types/session/agent-session.d.ts +114 -21
  151. package/dist/types/session/default-model-selection.d.ts +25 -0
  152. package/dist/types/session/fallback-chain-controller.d.ts +52 -0
  153. package/dist/types/session/session-manager.d.ts +58 -1
  154. package/dist/types/setup/credential-auto-import.d.ts +36 -6
  155. package/dist/types/tools/ask-answer-registry.d.ts +1 -1
  156. package/dist/types/tools/browser/benchmark/detector-report.d.ts +63 -0
  157. package/dist/types/tools/browser/benchmark/run-suite.d.ts +18 -0
  158. package/dist/types/tools/browser/launch.d.ts +22 -0
  159. package/dist/types/tools/browser/profile-discovery.d.ts +31 -0
  160. package/dist/types/tools/browser/profile-posture.d.ts +37 -0
  161. package/dist/types/tools/browser/profile-reuse.d.ts +39 -0
  162. package/dist/types/tools/browser/profile-warmup.d.ts +39 -0
  163. package/dist/types/tools/browser/registry.d.ts +19 -0
  164. package/dist/types/tools/browser/tab-protocol.d.ts +4 -0
  165. package/dist/types/tools/index.d.ts +8 -8
  166. package/package.json +34 -13
  167. package/scripts/build-sdk-package-smoke.ts +94 -0
  168. package/scripts/capture-notifications-settings-showcase.ts +435 -0
  169. package/scripts/compile-args.ts +4 -2
  170. package/scripts/g005-daemon-smoke.ts +4 -5
  171. package/scripts/g011-daemon-path-smoke.ts +5 -5
  172. package/scripts/generate-sdk-adapter-parity-manifest.ts +163 -0
  173. package/scripts/generate-sdk-operation-inventory.ts +867 -0
  174. package/scripts/generate-telegram-baseline-manifest.ts +128 -0
  175. package/scripts/manifest-schema.ts +124 -0
  176. package/scripts/run-test-manifest.ts +153 -0
  177. package/scripts/run-threat-model-check.ts +157 -0
  178. package/scripts/verify-gjc-sdk-canonicalization.ts +3467 -0
  179. package/scripts/verify-gjc-sdk-rename.ts +90 -0
  180. package/src/append-only-mode.ts +1 -1
  181. package/src/cli/args.ts +43 -12
  182. package/src/cli/auth-gateway-cli.ts +2 -2
  183. package/src/cli/config-cli.ts +2 -1
  184. package/src/cli/daemon-cli.ts +63 -14
  185. package/src/cli/list-models.ts +1 -1
  186. package/src/cli/notify-cli.ts +288 -286
  187. package/src/cli.ts +21 -2
  188. package/src/commands/daemon.ts +50 -6
  189. package/src/commands/harness.ts +93 -36
  190. package/src/commands/launch.ts +5 -2
  191. package/src/commands/mcp-serve.ts +19 -12
  192. package/src/commands/notify.ts +36 -3
  193. package/src/commands/sdk.ts +426 -0
  194. package/src/commit/agentic/agent.ts +1 -0
  195. package/src/config/atomic-yaml-patch.ts +423 -0
  196. package/src/config/model-profile-activation.ts +240 -89
  197. package/src/config/model-profiles.ts +37 -34
  198. package/src/config/model-registry.ts +51 -26
  199. package/src/config/model-resolver.ts +138 -51
  200. package/src/config/model-selector-value.ts +50 -0
  201. package/src/config/models-config-schema.ts +14 -21
  202. package/src/config/settings-schema.ts +128 -10
  203. package/src/config/settings.ts +1120 -158
  204. package/src/coordinator-mcp/model-preset.ts +74 -20
  205. package/src/coordinator-mcp/server.ts +1597 -3052
  206. package/src/daemon/builtin.ts +8 -5
  207. package/src/daemon/control-types.ts +1 -1
  208. package/src/defaults/gjc/skills/team/SKILL.md +4 -4
  209. package/src/discovery/mcp-json.ts +327 -20
  210. package/src/extensibility/custom-tools/types.ts +1 -1
  211. package/src/extensibility/extensions/compact-handler.ts +3 -3
  212. package/src/extensibility/extensions/get-commands-handler.ts +2 -2
  213. package/src/extensibility/extensions/loader.ts +69 -5
  214. package/src/extensibility/extensions/runner.ts +112 -4
  215. package/src/extensibility/extensions/types.ts +176 -17
  216. package/src/extensibility/hooks/types.ts +1 -1
  217. package/src/extensibility/slash-commands.ts +3 -3
  218. package/src/gjc-runtime/launch-tmux.ts +170 -86
  219. package/src/gjc-runtime/psmux-detect.ts +82 -4
  220. package/src/gjc-runtime/session-state-sidecar.ts +41 -31
  221. package/src/gjc-runtime/team-runtime.ts +54 -35
  222. package/src/gjc-runtime/tmux-owner-isolation-cli.ts +53 -17
  223. package/src/gjc-runtime/tmux-owner-isolation.ts +5 -2
  224. package/src/gjc-runtime/tmux-sessions.ts +19 -13
  225. package/src/gjc-runtime/ultragoal-guard.ts +53 -6
  226. package/src/gjc-runtime/ultragoal-runtime.ts +155 -3
  227. package/src/gjc-runtime/windows-powershell-command.ts +58 -0
  228. package/src/harness-control-plane/operate.ts +9 -9
  229. package/src/harness-control-plane/owner.ts +283 -39
  230. package/src/harness-control-plane/receipts.ts +0 -1
  231. package/src/harness-control-plane/sdk-transport.ts +395 -0
  232. package/src/harness-control-plane/session-transport.ts +94 -0
  233. package/src/harness-control-plane/types.ts +1 -1
  234. package/src/internal-urls/docs-index.generated.ts +36 -37
  235. package/src/lsp/client.ts +42 -6
  236. package/src/lsp/index.ts +2 -2
  237. package/src/main.ts +299 -204
  238. package/src/modes/DESIGN.md +258 -0
  239. package/src/modes/acp/acp-agent.ts +1228 -2612
  240. package/src/modes/acp/acp-client-bridge.ts +2 -20
  241. package/src/modes/acp/acp-event-mapper.ts +18 -2
  242. package/src/modes/acp/acp-mode.ts +8 -36
  243. package/src/modes/acp/permission-mode.ts +25 -0
  244. package/src/modes/acp/startup-options.ts +6 -0
  245. package/src/modes/components/agent-dashboard.ts +37 -17
  246. package/src/modes/components/custom-editor.ts +1 -0
  247. package/src/modes/components/gajae-pet-widget.ts +169 -20
  248. package/src/modes/components/model-selector.ts +93 -35
  249. package/src/modes/components/notifications-settings-editor.ts +1379 -0
  250. package/src/modes/components/pet-capability.ts +115 -0
  251. package/src/modes/components/pet-selector.ts +4 -6
  252. package/src/modes/components/settings-selector.ts +86 -11
  253. package/src/modes/components/welcome.ts +4 -4
  254. package/src/modes/controllers/command-controller.ts +1 -2
  255. package/src/modes/controllers/event-controller.ts +11 -16
  256. package/src/modes/controllers/extension-ui-controller.ts +357 -12
  257. package/src/modes/controllers/input-controller.ts +43 -13
  258. package/src/modes/controllers/selector-controller.ts +671 -44
  259. package/src/modes/index.ts +0 -22
  260. package/src/modes/interactive-mode.ts +108 -24
  261. package/src/modes/runtime-init.ts +298 -6
  262. package/src/modes/shared/agent-wire/approval-gate.ts +9 -11
  263. package/src/modes/shared/agent-wire/deep-interview-gate.ts +10 -11
  264. package/src/modes/shared/agent-wire/event-contract.ts +7 -8
  265. package/src/modes/shared/agent-wire/event-envelope.ts +9 -17
  266. package/src/modes/shared/agent-wire/event-observation.ts +16 -7
  267. package/src/modes/shared/agent-wire/workflow-gate-broker.ts +1254 -87
  268. package/src/modes/shared/agent-wire/workflow-gate-schema.ts +15 -15
  269. package/src/modes/shared/agent-wire/workflow-gate-types.ts +113 -0
  270. package/src/modes/types.ts +16 -1
  271. package/src/runtime-mcp/client.ts +94 -19
  272. package/src/runtime-mcp/config.ts +27 -15
  273. package/src/runtime-mcp/manager.ts +343 -105
  274. package/src/runtime-mcp/oauth-flow.ts +42 -12
  275. package/src/runtime-mcp/transports/http.ts +49 -19
  276. package/src/runtime-mcp/transports/stdio.ts +47 -28
  277. package/src/runtime-mcp/types.ts +10 -0
  278. package/src/sdk/acp/adapter.ts +418 -0
  279. package/src/sdk/acp/index.ts +2 -0
  280. package/src/sdk/broker/broker.ts +642 -0
  281. package/src/sdk/broker/discovery.ts +94 -0
  282. package/src/sdk/broker/ensure.ts +249 -0
  283. package/src/sdk/broker/identity.ts +42 -0
  284. package/src/sdk/broker/index.ts +8 -0
  285. package/src/sdk/broker/internal-source-marker-2178.txt +1 -0
  286. package/src/sdk/broker/internal-source.bunfig.toml +1 -0
  287. package/src/sdk/broker/lifecycle-ledger.ts +286 -0
  288. package/src/sdk/broker/lifecycle.ts +2157 -0
  289. package/src/sdk/broker/process-incarnation.ts +159 -0
  290. package/src/sdk/broker/runtime.ts +164 -0
  291. package/src/sdk/broker/session-index.ts +318 -0
  292. package/src/sdk/broker/state-version.ts +23 -0
  293. package/src/sdk/broker/transport.ts +125 -0
  294. package/src/sdk/bus/chat-command-policy.ts +107 -0
  295. package/src/sdk/bus/chat-daemon-cli.ts +214 -0
  296. package/src/sdk/bus/chat-daemon-control.ts +713 -0
  297. package/src/sdk/bus/chat-daemon-runtime.ts +526 -0
  298. package/src/sdk/bus/chat-effect-journal.ts +353 -0
  299. package/src/{notifications → sdk/bus}/config-commands.ts +39 -10
  300. package/src/sdk/bus/config.ts +433 -0
  301. package/src/sdk/bus/conversation-store.ts +391 -0
  302. package/src/sdk/bus/discord-conversation.ts +85 -0
  303. package/src/sdk/bus/discord-daemon.ts +2275 -0
  304. package/src/sdk/bus/discord-live-provider.ts +521 -0
  305. package/src/sdk/bus/discord-provider.ts +56 -0
  306. package/src/{notifications → sdk/bus}/html-format.ts +2 -2
  307. package/src/sdk/bus/index.ts +3943 -0
  308. package/src/{notifications → sdk/bus}/lifecycle-commands.ts +2 -0
  309. package/src/{notifications → sdk/bus}/lifecycle-control-runtime.ts +225 -196
  310. package/src/{notifications → sdk/bus}/lifecycle-orchestrator.ts +161 -74
  311. package/src/{notifications → sdk/bus}/managed-daemon.ts +2 -2
  312. package/src/sdk/bus/native-runtime-compatibility.ts +42 -0
  313. package/src/sdk/bus/natives-augment.d.ts +38 -0
  314. package/src/sdk/bus/notification-orchestration.ts +535 -0
  315. package/src/{notifications → sdk/bus}/notification-service.ts +106 -12
  316. package/src/sdk/bus/session-control.ts +333 -0
  317. package/src/sdk/bus/slack-conversation.ts +74 -0
  318. package/src/sdk/bus/slack-daemon.ts +2144 -0
  319. package/src/sdk/bus/slack-live-provider.ts +380 -0
  320. package/src/sdk/bus/slack-provider.ts +76 -0
  321. package/src/{notifications → sdk/bus}/telegram-cli.ts +8 -8
  322. package/src/sdk/bus/telegram-daemon-cli.ts +330 -0
  323. package/src/sdk/bus/telegram-daemon-contract.ts +14 -0
  324. package/src/{notifications → sdk/bus}/telegram-daemon-control.ts +4 -4
  325. package/src/{notifications → sdk/bus}/telegram-daemon.ts +502 -54
  326. package/src/{notifications → sdk/bus}/telegram-reference.ts +2 -2
  327. package/src/sdk/bus/telegram-setup.ts +663 -0
  328. package/src/{notifications → sdk/bus}/topic-registry.ts +32 -0
  329. package/src/sdk/cli/index.ts +1 -0
  330. package/src/sdk/cli/session-cli.ts +275 -0
  331. package/src/sdk/client/client.ts +1 -0
  332. package/src/sdk/client/discovery.ts +108 -0
  333. package/src/sdk/client/index.ts +2 -0
  334. package/src/sdk/host/control/dispatch.ts +367 -0
  335. package/src/sdk/host/control/index.ts +10 -0
  336. package/src/sdk/host/control/operations.ts +63 -0
  337. package/src/sdk/host/events.ts +91 -0
  338. package/src/sdk/host/host.ts +296 -0
  339. package/src/sdk/host/index.ts +4 -0
  340. package/src/sdk/host/query/cursor.ts +189 -0
  341. package/src/sdk/host/query/handlers.ts +533 -0
  342. package/src/sdk/host/query/index.ts +3 -0
  343. package/src/sdk/host/query/revision-store.ts +1126 -0
  344. package/src/sdk/host/reverse-leases.ts +325 -0
  345. package/src/sdk/host/types.ts +29 -0
  346. package/src/sdk/index.ts +13 -0
  347. package/src/sdk/lifecycle-session.ts +39 -0
  348. package/src/sdk/mcp/index.ts +1 -0
  349. package/src/sdk/mcp/server.ts +332 -0
  350. package/src/sdk/models.ts +168 -0
  351. package/src/sdk/protocol/adapter-validation.ts +48 -0
  352. package/src/sdk/protocol/operation-inventory.generated.json +5654 -0
  353. package/src/sdk/protocol/operation-registry.ts +312 -0
  354. package/src/{sdk.ts → sdk/session.ts} +339 -212
  355. package/src/sdk/startup-capability.ts +189 -0
  356. package/src/session/agent-session.ts +2470 -866
  357. package/src/session/default-model-selection.ts +93 -0
  358. package/src/session/fallback-chain-controller.ts +136 -0
  359. package/src/session/session-manager.ts +447 -13
  360. package/src/session/session-storage.ts +8 -1
  361. package/src/setup/credential-auto-import.ts +290 -35
  362. package/src/setup/hermes/templates/operator-instructions.v1.md +3 -5
  363. package/src/slash-commands/builtin-registry.ts +33 -30
  364. package/src/task/executor.ts +62 -13
  365. package/src/tools/ask-answer-registry.ts +1 -1
  366. package/src/tools/ask.ts +13 -8
  367. package/src/tools/browser/STEALTH-THIRD-PARTY-NOTICES.md +26 -0
  368. package/src/tools/browser/benchmark/detector-report.ts +157 -0
  369. package/src/tools/browser/benchmark/run-suite.ts +39 -0
  370. package/src/tools/browser/launch.ts +124 -19
  371. package/src/tools/browser/profile-discovery.ts +63 -0
  372. package/src/tools/browser/profile-posture.ts +59 -0
  373. package/src/tools/browser/profile-reuse.ts +102 -0
  374. package/src/tools/browser/profile-warmup.ts +109 -0
  375. package/src/tools/browser/registry.ts +87 -11
  376. package/src/tools/browser/tab-protocol.ts +1 -0
  377. package/src/tools/browser/tab-supervisor.ts +1 -0
  378. package/src/tools/browser/tab-worker.ts +1 -1
  379. package/src/tools/browser.ts +6 -0
  380. package/src/tools/index.ts +8 -8
  381. package/src/tools/puppeteer/14_stealth_permissions.txt +57 -0
  382. package/src/tools/puppeteer/15_stealth_webrtc.txt +60 -0
  383. package/src/tools/telegram-send.ts +2 -2
  384. package/vendor/insane-search/MANIFEST.json +2 -1
  385. package/vendor/insane-search/engine/bias_check.py +4 -1
  386. package/vendor/insane-search/engine/phase0.py +26 -1
  387. package/dist/types/harness-control-plane/rpc-adapter.d.ts +0 -69
  388. package/dist/types/modes/bridge/auth.d.ts +0 -12
  389. package/dist/types/modes/bridge/bridge-client-bridge.d.ts +0 -9
  390. package/dist/types/modes/bridge/bridge-mode.d.ts +0 -47
  391. package/dist/types/modes/bridge/bridge-ui-context.d.ts +0 -88
  392. package/dist/types/modes/bridge/event-stream.d.ts +0 -8
  393. package/dist/types/modes/rpc/host-tools.d.ts +0 -1
  394. package/dist/types/modes/rpc/host-uris.d.ts +0 -1
  395. package/dist/types/modes/rpc/rpc-client.d.ts +0 -299
  396. package/dist/types/modes/rpc/rpc-mode.d.ts +0 -86
  397. package/dist/types/modes/rpc/rpc-socket-security.d.ts +0 -10
  398. package/dist/types/modes/rpc/rpc-types.d.ts +0 -810
  399. package/dist/types/modes/shared/agent-wire/command-contract.d.ts +0 -18
  400. package/dist/types/modes/shared/agent-wire/command-dispatch.d.ts +0 -37
  401. package/dist/types/modes/shared/agent-wire/command-validation.d.ts +0 -2
  402. package/dist/types/modes/shared/agent-wire/handshake.d.ts +0 -56
  403. package/dist/types/modes/shared/agent-wire/host-tool-bridge.d.ts +0 -16
  404. package/dist/types/modes/shared/agent-wire/host-uri-bridge.d.ts +0 -17
  405. package/dist/types/modes/shared/agent-wire/protocol.d.ts +0 -25
  406. package/dist/types/modes/shared/agent-wire/responses.d.ts +0 -4
  407. package/dist/types/modes/shared/agent-wire/scopes.d.ts +0 -18
  408. package/dist/types/modes/shared/agent-wire/session-registry.d.ts +0 -25
  409. package/dist/types/modes/shared/agent-wire/ui-request-broker.d.ts +0 -42
  410. package/dist/types/modes/shared/agent-wire/ui-result.d.ts +0 -27
  411. package/dist/types/modes/shared/agent-wire/unattended-action-policy.d.ts +0 -29
  412. package/dist/types/modes/shared/agent-wire/unattended-audit.d.ts +0 -68
  413. package/dist/types/modes/shared/agent-wire/unattended-run-controller.d.ts +0 -166
  414. package/dist/types/modes/shared/agent-wire/unattended-session.d.ts +0 -127
  415. package/dist/types/notifications/config.d.ts +0 -132
  416. package/src/harness-control-plane/rpc-adapter.ts +0 -290
  417. package/src/modes/bridge/auth.ts +0 -41
  418. package/src/modes/bridge/bridge-client-bridge.ts +0 -47
  419. package/src/modes/bridge/bridge-mode.ts +0 -675
  420. package/src/modes/bridge/bridge-ui-context.ts +0 -200
  421. package/src/modes/bridge/event-stream.ts +0 -70
  422. package/src/modes/rpc/host-tools.ts +0 -1
  423. package/src/modes/rpc/host-uris.ts +0 -1
  424. package/src/modes/rpc/rpc-client.ts +0 -1166
  425. package/src/modes/rpc/rpc-mode.ts +0 -1029
  426. package/src/modes/rpc/rpc-socket-security.ts +0 -115
  427. package/src/modes/rpc/rpc-types.ts +0 -637
  428. package/src/modes/shared/agent-wire/command-contract.ts +0 -18
  429. package/src/modes/shared/agent-wire/command-dispatch.ts +0 -498
  430. package/src/modes/shared/agent-wire/command-validation.ts +0 -181
  431. package/src/modes/shared/agent-wire/handshake.ts +0 -157
  432. package/src/modes/shared/agent-wire/host-tool-bridge.ts +0 -197
  433. package/src/modes/shared/agent-wire/host-uri-bridge.ts +0 -236
  434. package/src/modes/shared/agent-wire/protocol.ts +0 -46
  435. package/src/modes/shared/agent-wire/responses.ts +0 -17
  436. package/src/modes/shared/agent-wire/scopes.ts +0 -94
  437. package/src/modes/shared/agent-wire/session-registry.ts +0 -109
  438. package/src/modes/shared/agent-wire/ui-request-broker.ts +0 -150
  439. package/src/modes/shared/agent-wire/ui-result.ts +0 -48
  440. package/src/modes/shared/agent-wire/unattended-action-policy.ts +0 -365
  441. package/src/modes/shared/agent-wire/unattended-audit.ts +0 -176
  442. package/src/modes/shared/agent-wire/unattended-run-controller.ts +0 -426
  443. package/src/modes/shared/agent-wire/unattended-session.ts +0 -528
  444. package/src/notifications/config.ts +0 -219
  445. package/src/notifications/index.ts +0 -1835
  446. package/src/notifications/telegram-daemon-cli.ts +0 -243
  447. package/src/tools/puppeteer/09_stealth_locale.txt +0 -46
  448. /package/dist/types/{notifications → sdk/bus}/attachment-registry.d.ts +0 -0
  449. /package/dist/types/{notifications → sdk/bus}/chat-adapters.d.ts +0 -0
  450. /package/dist/types/{notifications → sdk/bus}/daemon-paths.d.ts +0 -0
  451. /package/dist/types/{notifications → sdk/bus}/engine.d.ts +0 -0
  452. /package/dist/types/{notifications → sdk/bus}/helpers.d.ts +0 -0
  453. /package/dist/types/{notifications → sdk/bus}/lifecycle-commands.d.ts +0 -0
  454. /package/dist/types/{notifications → sdk/bus}/operator-runtime.d.ts +0 -0
  455. /package/dist/types/{notifications → sdk/bus}/rate-limit-pool.d.ts +0 -0
  456. /package/dist/types/{notifications → sdk/bus}/recent-activity.d.ts +0 -0
  457. /package/dist/types/{notifications → sdk/bus}/reply-sent-store.d.ts +0 -0
  458. /package/dist/types/{notifications → sdk/bus}/rich-draft.d.ts +0 -0
  459. /package/dist/types/{notifications → sdk/bus}/rich-render.d.ts +0 -0
  460. /package/dist/types/{notifications → sdk/bus}/threaded-inbound.d.ts +0 -0
  461. /package/dist/types/{notifications → sdk/bus}/threaded-render.d.ts +0 -0
  462. /package/src/{notifications → sdk/bus}/attachment-registry.ts +0 -0
  463. /package/src/{notifications → sdk/bus}/chat-adapters.ts +0 -0
  464. /package/src/{notifications → sdk/bus}/daemon-paths.ts +0 -0
  465. /package/src/{notifications → sdk/bus}/engine.ts +0 -0
  466. /package/src/{notifications → sdk/bus}/helpers.ts +0 -0
  467. /package/src/{notifications → sdk/bus}/operator-runtime.ts +0 -0
  468. /package/src/{notifications → sdk/bus}/rate-limit-pool.ts +0 -0
  469. /package/src/{notifications → sdk/bus}/recent-activity.ts +0 -0
  470. /package/src/{notifications → sdk/bus}/reply-sent-store.ts +0 -0
  471. /package/src/{notifications → sdk/bus}/rich-draft.ts +0 -0
  472. /package/src/{notifications → sdk/bus}/rich-render.ts +0 -0
  473. /package/src/{notifications → sdk/bus}/threaded-inbound.ts +0 -0
  474. /package/src/{notifications → sdk/bus}/threaded-render.ts +0 -0
@@ -0,0 +1,32 @@
1
+ export type SdkFrame = Record<string, unknown>;
2
+ /** Narrow common surface shared by control and query adapters. */
3
+ export interface SessionSurface {
4
+ sessionId: string;
5
+ }
6
+ export interface SessionOperationSurface extends SessionSurface {
7
+ /** Query rows backed by this session's installed binding map. */
8
+ installedQueries?: ReadonlySet<string>;
9
+ }
10
+ /** Operations the neutral control dispatcher may require from a session. */
11
+ export interface ControlSurface extends SessionSurface {
12
+ [key: string]: unknown;
13
+ }
14
+ export interface HostEndpointAdapters {
15
+ sessionId: string;
16
+ stateRoot: string;
17
+ token: string;
18
+ sendFrame: (connectionId: string, frame: SdkFrame) => void | Promise<void>;
19
+ onFrame: (handler: (connectionId: string, frame: SdkFrame) => void) => undefined | (() => void);
20
+ }
21
+ export interface BrokerIndexWriter {
22
+ register(input: {
23
+ sessionId: string;
24
+ stateRoot: string;
25
+ endpointGeneration: number;
26
+ }): void | Promise<void>;
27
+ unregister?(input: {
28
+ sessionId: string;
29
+ stateRoot: string;
30
+ endpointGeneration: number;
31
+ }): void | Promise<void>;
32
+ }
@@ -0,0 +1,6 @@
1
+ export * as bus from "./bus";
2
+ export * from "./client";
3
+ export * as host from "./host";
4
+ export * as mcp from "./mcp";
5
+ export type { Q10CurrentThinkingLevel, Q10Model, Q10SettableThinkingLevel, Q10ThinkingCapabilities, Q10ThinkingEffort, Q10ThinkingMode, } from "./models";
6
+ export * from "./session";
@@ -0,0 +1,14 @@
1
+ import type { AgentSession } from "../session/agent-session";
2
+ import { type CreateAgentSessionOptions } from "./session";
3
+ import { SdkStartupCapability, type SdkStartupFailure, SdkStartupRollbackTracker } from "./startup-capability";
4
+ export type CreateLifecycleAgentSessionResult = {
5
+ session: AgentSession;
6
+ capability: SdkStartupCapability;
7
+ rollback: SdkStartupRollbackTracker;
8
+ } | {
9
+ capability: SdkStartupCapability;
10
+ rollback: SdkStartupRollbackTracker;
11
+ failure: SdkStartupFailure;
12
+ };
13
+ /** Internal lifecycle-only session construction with an owner-bound SDK startup result. */
14
+ export declare function createLifecycleAgentSession(options?: CreateAgentSessionOptions): Promise<CreateLifecycleAgentSessionResult>;
@@ -0,0 +1 @@
1
+ export * from "./server";
@@ -0,0 +1,37 @@
1
+ import { SdkClient } from "../client/client";
2
+ type Arguments = Record<string, unknown>;
3
+ type JsonRpcRequest = {
4
+ jsonrpc: "2.0";
5
+ id?: string | number | null;
6
+ method: string;
7
+ params?: unknown;
8
+ };
9
+ type JsonRpcResponse = {
10
+ jsonrpc: "2.0";
11
+ id: string | number | null;
12
+ result?: unknown;
13
+ error?: {
14
+ code: number;
15
+ message: string;
16
+ };
17
+ };
18
+ export interface SdkMcpServerOptions {
19
+ repo?: string;
20
+ agentDir?: string;
21
+ connect?: (url: string, token: string) => Promise<SdkClient>;
22
+ }
23
+ export declare const SDK_MCP_TOOL_NAMES: readonly ["gjc_session_control", "gjc_session_query", "gjc_session_global", "gjc_session_list"];
24
+ /** Creates the model-facing MCP adapter using only SDK discovery records and v3 WebSockets. */
25
+ export declare function createSdkMcpServer(options?: SdkMcpServerOptions): {
26
+ callTool: (name: string, args?: Arguments) => Promise<unknown>;
27
+ handleJsonRpc: (request: JsonRpcRequest) => Promise<JsonRpcResponse>;
28
+ handle: (request: JsonRpcRequest) => Promise<JsonRpcResponse>;
29
+ tools: Record<string, unknown>[];
30
+ };
31
+ /**
32
+ * Runs the SDK MCP server over stdio (newline-delimited JSON-RPC), the shipped
33
+ * `gjc mcp-serve sdk` entrypoint. Pure SDK client: session control/query flows
34
+ * through discovery records and v3 WebSockets only.
35
+ */
36
+ export declare function runSdkMcpStdio(options?: SdkMcpServerOptions): Promise<void>;
37
+ export {};
@@ -0,0 +1,44 @@
1
+ import { ThinkingLevel } from "@gajae-code/agent-core";
2
+ import { type Api, type Effort, type Model, type ThinkingControlMode } from "@gajae-code/ai";
3
+ export type Q10ThinkingEffort = Effort;
4
+ export type Q10SettableThinkingLevel = typeof ThinkingLevel.Off | Q10ThinkingEffort;
5
+ export type Q10CurrentThinkingLevel = Q10SettableThinkingLevel | typeof ThinkingLevel.Inherit;
6
+ export type Q10ThinkingMode = ThinkingControlMode;
7
+ export interface Q10ThinkingCapabilities {
8
+ validLevels: readonly Q10SettableThinkingLevel[];
9
+ minLevel?: Q10ThinkingEffort;
10
+ maxLevel?: Q10ThinkingEffort;
11
+ mode?: Q10ThinkingMode;
12
+ defaultLevel?: Q10ThinkingEffort;
13
+ /** Fresh raw explicit descriptor copy; source order retained. */
14
+ levels?: readonly Q10ThinkingEffort[];
15
+ }
16
+ export interface Q10Model {
17
+ provider: string;
18
+ id: string;
19
+ name: string;
20
+ contextWindow: number;
21
+ maxTokens: number;
22
+ reasoning: boolean;
23
+ thinking: Q10ThinkingCapabilities;
24
+ current: boolean;
25
+ currentThinkingLevel?: Q10CurrentThinkingLevel;
26
+ }
27
+ export type Q10ThinkingMetadataReason = "missing_thinking" | "unknown_min_level" | "unknown_max_level" | "inverted_range" | "unknown_mode" | "empty_levels" | "unknown_level" | "level_out_of_range" | "lower_bound_mismatch" | "upper_bound_mismatch" | "supported_membership_mismatch" | "empty_supported_levels" | "unknown_default_level" | "default_not_supported";
28
+ /** An intentionally safe error for malformed model thinking metadata. */
29
+ export declare class Q10ThinkingMetadataError extends Error {
30
+ readonly reason: Q10ThinkingMetadataReason;
31
+ readonly code = "internal";
32
+ constructor(provider: string, id: string, reason: Q10ThinkingMetadataReason);
33
+ }
34
+ export interface Q10ModelProjectionInput {
35
+ models: readonly Model<Api>[];
36
+ currentModel?: Model<Api>;
37
+ currentThinkingLevel?: Q10CurrentThinkingLevel;
38
+ resolveSupportedEfforts?: (model: Model<Api>) => readonly Effort[];
39
+ }
40
+ /**
41
+ * Projects model registry entries into the Q10 public DTO without exposing
42
+ * transport, credentials, pricing, or other registry internals.
43
+ */
44
+ export declare function projectQ10Models(input: Q10ModelProjectionInput): Q10Model[];
@@ -0,0 +1,14 @@
1
+ type Input = Record<string, unknown>;
2
+ type SecretInputError = {
3
+ code: "secret_field_forbidden";
4
+ message: string;
5
+ };
6
+ /** Rejects secret-bearing config patches from model-facing adapter inputs. */
7
+ export declare function validateAdapterSecretFields(operation: string, input: Input): SecretInputError | undefined;
8
+ export type AdapterValidationError = {
9
+ code: "invalid_reload_component" | "invalid_input";
10
+ message: string;
11
+ };
12
+ /** Validates controls that adapters must reject before forwarding them to a host. */
13
+ export declare function validateAdapterControl(operation: string, input: Input): AdapterValidationError | undefined;
14
+ export {};
@@ -0,0 +1,24 @@
1
+ export declare const ADAPTERS: readonly ["telegram", "discord", "slack", "mcp", "acp", "daemonCli"];
2
+ export type Adapter = (typeof ADAPTERS)[number];
3
+ export type AdapterDisposition = "native_alias" | "generic_safe" | "machine_only" | "provider_only" | "prohibited";
4
+ export type OperationKind = "control" | "global" | "query" | "reverse";
5
+ export type Idempotency = "idempotent" | "ordered" | "fast_lane";
6
+ export type QueryContinuityClass = "stable_prefix" | "retained_revision" | "scalar_snapshot" | "content_addressed";
7
+ export interface Operation {
8
+ id: string;
9
+ sdkId: string;
10
+ kind: OperationKind;
11
+ description: string;
12
+ idempotency: Idempotency;
13
+ errorCodes: string[];
14
+ revisionResource?: string;
15
+ continuityClass?: QueryContinuityClass;
16
+ adapterDispositions: Record<Adapter, AdapterDisposition>;
17
+ testIds: string[];
18
+ }
19
+ export declare function findOperation(kind: OperationKind, sdkId: string): Operation | undefined;
20
+ export declare function adapterDispositionError(adapter: Adapter, kind: OperationKind, sdkId: string, modelFacing?: boolean): {
21
+ code: string;
22
+ message: string;
23
+ } | undefined;
24
+ export declare const OPERATIONS: readonly Operation[];
@@ -1,30 +1,30 @@
1
- import { type AgentTelemetryConfig, type ThinkingLevel } from "@gajae-code/agent-core";
1
+ import { type AgentTelemetryConfig, ThinkingLevel } from "@gajae-code/agent-core";
2
2
  import { type AuthCredentialSelector, type Model, type ProviderSessionState } from "@gajae-code/ai";
3
- import { createAppendOnlyContextManager, providerSupportsAppendOnlyAuto, resolveAppendOnlyMode } from "./append-only-mode";
4
- import { type Rule } from "./capability/rule";
5
- import { ModelRegistry } from "./config/model-registry";
6
- import { type ScopedModelSelection } from "./config/model-resolver";
7
- import { type PromptTemplate } from "./config/prompt-templates";
8
- import { Settings, type SkillsSettings } from "./config/settings";
9
- import type { BashRestrictionProfile } from "./tools/bash-allowed-prefixes";
10
- import "./discovery";
11
- import type { CustomCommandsLoadResult } from "./extensibility/custom-commands";
12
- import type { CustomTool } from "./extensibility/custom-tools/types";
13
- import { type ExtensionFactory, type ExtensionUIContext, type LoadExtensionsResult, type ToolDefinition } from "./extensibility/extensions";
14
- import { type ConstrainedPluginHook } from "./extensibility/gjc-plugins/constrained-hooks";
15
- import { type Skill, type SkillWarning } from "./extensibility/skills";
16
- import type { FileSlashCommand } from "./extensibility/slash-commands";
17
- import type { HindsightSessionState } from "./hindsight/state";
18
- import { type LocalProtocolOptions } from "./internal-urls";
19
- import { AgentRegistry } from "./registry/agent-registry";
20
- import { MCPManager } from "./runtime-mcp";
21
- import { AgentSession, type ForkContextSeed } from "./session/agent-session";
22
- import { AuthStorage } from "./session/auth-storage";
23
- import { SessionManager } from "./session/session-manager";
24
- import { type BuildSystemPromptResult } from "./system-prompt";
25
- import { BashTool, BUILTIN_TOOLS, createTools, EditTool, EvalTool, FindTool, HIDDEN_TOOLS, type LspStartupServerInfo, loadSshTool, ReadTool, ResolveTool, SearchTool, type Tool, type ToolSession, WebSearchTool, WriteTool } from "./tools";
26
- import { EventBus } from "./utils/event-bus";
27
- import { type WorkspaceTree } from "./workspace-tree";
3
+ import { createAppendOnlyContextManager, providerSupportsAppendOnlyAuto, resolveAppendOnlyMode } from "../append-only-mode";
4
+ import { type Rule } from "../capability/rule";
5
+ import { ModelRegistry } from "../config/model-registry";
6
+ import { type ScopedModelSelection } from "../config/model-resolver";
7
+ import { type PromptTemplate } from "../config/prompt-templates";
8
+ import { Settings, type SkillsSettings } from "../config/settings";
9
+ import type { BashRestrictionProfile } from "../tools/bash-allowed-prefixes";
10
+ import "../discovery";
11
+ import type { CustomCommandsLoadResult } from "../extensibility/custom-commands";
12
+ import type { CustomTool } from "../extensibility/custom-tools/types";
13
+ import { type ExtensionFactory, type ExtensionUIContext, type LoadExtensionsResult, type ToolDefinition } from "../extensibility/extensions";
14
+ import { type ConstrainedPluginHook } from "../extensibility/gjc-plugins/constrained-hooks";
15
+ import { type Skill, type SkillWarning } from "../extensibility/skills";
16
+ import type { FileSlashCommand } from "../extensibility/slash-commands";
17
+ import type { HindsightSessionState } from "../hindsight/state";
18
+ import { type LocalProtocolOptions } from "../internal-urls";
19
+ import { AgentRegistry } from "../registry/agent-registry";
20
+ import { MCPManager } from "../runtime-mcp";
21
+ import { AgentSession, type ForkContextSeed } from "../session/agent-session";
22
+ import { AuthStorage } from "../session/auth-storage";
23
+ import { SessionManager } from "../session/session-manager";
24
+ import { type BuildSystemPromptResult } from "../system-prompt";
25
+ import { BashTool, BUILTIN_TOOLS, createTools, EditTool, EvalTool, FindTool, HIDDEN_TOOLS, type LspStartupServerInfo, loadSshTool, ReadTool, ResolveTool, SearchTool, type Tool, type ToolSession, WebSearchTool, WriteTool } from "../tools";
26
+ import { EventBus } from "../utils/event-bus";
27
+ import { type WorkspaceTree } from "../workspace-tree";
28
28
  export interface CreateAgentSessionOptions {
29
29
  /** Working directory for project-local discovery. Default: getProjectDir() */
30
30
  cwd?: string;
@@ -100,8 +100,12 @@ export interface CreateAgentSessionOptions {
100
100
  slashCommands?: FileSlashCommand[];
101
101
  /** @deprecated MCP runtime discovery is quarantined and ignored. */
102
102
  enableMCP?: boolean;
103
- /** Existing MCP manager to reuse (skips discovery, propagates to toolSession). */
103
+ /** Existing MCP manager to reuse (skips discovery, propagates to toolSession).
104
+ * Mutually exclusive with mcpConfigPath. */
104
105
  mcpManager?: MCPManager;
106
+ /** Load MCP tools for a top-level session only from this caller-owned absolute config file path.
107
+ * Mutually exclusive with mcpManager. */
108
+ mcpConfigPath?: string;
105
109
  /** Enable LSP integration (tool, formatting, diagnostics, warmup). Default: true */
106
110
  enableLsp?: boolean;
107
111
  /** Skip Python kernel availability check and prelude warmup */
@@ -144,6 +148,8 @@ export interface CreateAgentSessionOptions {
144
148
  settings?: Settings;
145
149
  /** Whether UI is available (enables interactive tools like ask). Default: false */
146
150
  hasUI?: boolean;
151
+ /** Whether this host mode can own a notification session endpoint. Default: true. */
152
+ notificationHostModeSupported?: boolean;
147
153
  /**
148
154
  * Opt-in OpenTelemetry instrumentation forwarded to the underlying Agent.
149
155
  * Passing `{}` enables the loop's GenAI-semantic-convention spans. See
@@ -169,24 +175,24 @@ export interface CreateAgentSessionResult {
169
175
  extensionsResult: LoadExtensionsResult;
170
176
  /** Update tool UI context (interactive mode) */
171
177
  setToolUIContext: (uiContext: ExtensionUIContext, hasUI: boolean) => void;
172
- /** MCP manager for server lifecycle management (undefined if MCP disabled) */
178
+ /** MCP manager for server lifecycle management (undefined if MCP disabled or an exact tools-only config is session-owned) */
173
179
  mcpManager?: MCPManager;
174
180
  /** Warning if session was restored with a different model than saved */
175
181
  modelFallbackMessage?: string;
176
- /** LSP servers detected for startup; warmup may continue in the background */
182
+ /** LSP servers configured for lazy startup in interactive mode */
177
183
  lspServers?: LspStartupServerInfo[];
178
184
  /** Shared event bus for tool/extension communication */
179
185
  eventBus: EventBus;
180
186
  }
181
- export type { PromptTemplate } from "./config/prompt-templates";
182
- export { Settings, type SkillsSettings } from "./config/settings";
183
- export type { CustomCommand, CustomCommandFactory } from "./extensibility/custom-commands/types";
184
- export type { CustomTool, CustomToolFactory } from "./extensibility/custom-tools/types";
185
- export type * from "./extensibility/extensions";
186
- export type { Skill } from "./extensibility/skills";
187
- export type { FileSlashCommand } from "./extensibility/slash-commands";
188
- export type { Tool } from "./tools";
189
- export { buildDirectoryTree, buildWorkspaceTree, type DirectoryTree, type WorkspaceTree } from "./workspace-tree";
187
+ export type { PromptTemplate } from "../config/prompt-templates";
188
+ export { Settings, type SkillsSettings } from "../config/settings";
189
+ export type { CustomCommand, CustomCommandFactory } from "../extensibility/custom-commands/types";
190
+ export type { CustomTool, CustomToolFactory } from "../extensibility/custom-tools/types";
191
+ export type * from "../extensibility/extensions";
192
+ export type { Skill } from "../extensibility/skills";
193
+ export type { FileSlashCommand } from "../extensibility/slash-commands";
194
+ export type { Tool } from "../tools";
195
+ export { buildDirectoryTree, buildWorkspaceTree, type DirectoryTree, type WorkspaceTree } from "../workspace-tree";
190
196
  export { BashTool, BUILTIN_TOOLS, createTools, EditTool, EvalTool, FindTool, HIDDEN_TOOLS, loadSshTool, ReadTool, ResolveTool, SearchTool, type ToolSession, WebSearchTool, WriteTool, };
191
197
  /**
192
198
  * Create an AuthStorage instance.
@@ -0,0 +1,50 @@
1
+ export type SdkStartupPhase = "registration" | "startup";
2
+ export type SdkStartupReason = "disabled" | "ineligible" | "factory_absent" | "runner_absent" | "pending" | "failed";
3
+ export interface SdkStartupFailure {
4
+ phase: SdkStartupPhase;
5
+ reason: SdkStartupReason;
6
+ message: string;
7
+ }
8
+ export type SdkStartupResult = {
9
+ status: "started";
10
+ } | {
11
+ status: "failed";
12
+ failure: SdkStartupFailure;
13
+ };
14
+ /** Internal symbols for lifecycle-only SDK startup construction and bus wiring. */
15
+ export declare const lifecycleStartupCapabilityOption: unique symbol;
16
+ export declare function attachLifecycleStartupCapability(api: object, capability: SdkStartupCapability): void;
17
+ export declare function lifecycleStartupCapabilityForApi(api: object): SdkStartupCapability | undefined;
18
+ export interface SdkStartupRollbackResult {
19
+ endpointGeneration: number | null;
20
+ fenced: boolean;
21
+ runtimeRemoved: boolean;
22
+ hostStopped: boolean;
23
+ brokerRegistrationReleased: boolean;
24
+ }
25
+ /** Internal lifecycle-only proof recorder. Fields become true only after their operation completes. */
26
+ export declare class SdkStartupRollbackTracker {
27
+ #private;
28
+ get generation(): number | undefined;
29
+ get result(): SdkStartupRollbackResult;
30
+ recordGeneration(generation: number): void;
31
+ recordAbsent(): void;
32
+ recordStop(generation: number, result: Pick<SdkStartupRollbackResult, "runtimeRemoved" | "hostStopped" | "brokerRegistrationReleased">): void;
33
+ }
34
+ /** Redact untrusted startup errors before they cross the lifecycle boundary. */
35
+ export declare function sanitizeSdkStartupMessage(value: unknown, knownSecrets?: Iterable<unknown>): string;
36
+ /** Convert every lifecycle bootstrap outcome to the public, bounded failure shape. */
37
+ export declare function normalizeSdkStartupFailure(phase: SdkStartupPhase, reason: SdkStartupReason, error?: unknown, knownSecrets?: Iterable<unknown>): SdkStartupFailure;
38
+ /** Session-owned, exactly-once lifecycle bootstrap completion. */
39
+ export declare class SdkStartupCapability {
40
+ #private;
41
+ readonly rollback?: SdkStartupRollbackTracker | undefined;
42
+ get cancelled(): boolean;
43
+ cancel(): void;
44
+ constructor(rollback?: SdkStartupRollbackTracker | undefined);
45
+ normalizeFailure(phase: SdkStartupPhase, reason: SdkStartupReason, error?: unknown): SdkStartupFailure;
46
+ get result(): SdkStartupResult | undefined;
47
+ get promise(): Promise<SdkStartupResult>;
48
+ settleStarted(): SdkStartupResult;
49
+ settleFailure(failure: SdkStartupFailure): SdkStartupResult;
50
+ }