@qduc/term2 0.19.0 → 0.21.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 (457) hide show
  1. package/dist/agent.d.ts +9 -0
  2. package/dist/agent.d.ts.map +1 -1
  3. package/dist/agent.js +151 -93
  4. package/dist/agent.js.map +1 -1
  5. package/dist/app.d.ts +1 -1
  6. package/dist/app.d.ts.map +1 -1
  7. package/dist/app.js +62 -36
  8. package/dist/app.js.map +1 -1
  9. package/dist/cli.js +122 -41
  10. package/dist/cli.js.map +1 -1
  11. package/dist/commands/guarded-settings-command.d.ts.map +1 -1
  12. package/dist/commands/guarded-settings-command.js +33 -5
  13. package/dist/commands/guarded-settings-command.js.map +1 -1
  14. package/dist/commands/mode-commands.d.ts +17 -12
  15. package/dist/commands/mode-commands.d.ts.map +1 -1
  16. package/dist/commands/mode-commands.js +68 -44
  17. package/dist/commands/mode-commands.js.map +1 -1
  18. package/dist/components/input/ApplicationInputSurface.d.ts.map +1 -1
  19. package/dist/components/input/ApplicationInputSurface.js +4 -0
  20. package/dist/components/input/ApplicationInputSurface.js.map +1 -1
  21. package/dist/components/input/MenuSurface.d.ts.map +1 -1
  22. package/dist/components/input/MenuSurface.js +1 -0
  23. package/dist/components/input/MenuSurface.js.map +1 -1
  24. package/dist/components/input/ProfileMenuSession.d.ts +16 -0
  25. package/dist/components/input/ProfileMenuSession.d.ts.map +1 -0
  26. package/dist/components/input/ProfileMenuSession.js +64 -0
  27. package/dist/components/input/ProfileMenuSession.js.map +1 -0
  28. package/dist/components/input/determine-active-menu.d.ts +3 -0
  29. package/dist/components/input/determine-active-menu.d.ts.map +1 -1
  30. package/dist/components/input/determine-active-menu.js +6 -1
  31. package/dist/components/input/determine-active-menu.js.map +1 -1
  32. package/dist/components/input/menu-registry.d.ts.map +1 -1
  33. package/dist/components/input/menu-registry.js +2 -0
  34. package/dist/components/input/menu-registry.js.map +1 -1
  35. package/dist/components/input/menu-types.d.ts +4 -0
  36. package/dist/components/input/menu-types.d.ts.map +1 -1
  37. package/dist/components/input/triggers.d.ts +1 -0
  38. package/dist/components/input/triggers.d.ts.map +1 -1
  39. package/dist/components/input/triggers.js +26 -0
  40. package/dist/components/input/triggers.js.map +1 -1
  41. package/dist/components/layout/BackgroundTaskManager.d.ts.map +1 -1
  42. package/dist/components/layout/BackgroundTaskManager.js +6 -2
  43. package/dist/components/layout/BackgroundTaskManager.js.map +1 -1
  44. package/dist/components/layout/BackgroundTasksPanel.d.ts.map +1 -1
  45. package/dist/components/layout/BackgroundTasksPanel.js +16 -8
  46. package/dist/components/layout/BackgroundTasksPanel.js.map +1 -1
  47. package/dist/components/layout/Banner.d.ts.map +1 -1
  48. package/dist/components/layout/Banner.js +10 -5
  49. package/dist/components/layout/Banner.js.map +1 -1
  50. package/dist/components/layout/BottomArea.d.ts.map +1 -1
  51. package/dist/components/layout/BottomArea.js +4 -3
  52. package/dist/components/layout/BottomArea.js.map +1 -1
  53. package/dist/components/layout/StatusBar.d.ts.map +1 -1
  54. package/dist/components/layout/StatusBar.js +28 -13
  55. package/dist/components/layout/StatusBar.js.map +1 -1
  56. package/dist/components/menu/ProfileSelectionMenu.d.ts +12 -0
  57. package/dist/components/menu/ProfileSelectionMenu.d.ts.map +1 -0
  58. package/dist/components/menu/ProfileSelectionMenu.js +48 -0
  59. package/dist/components/menu/ProfileSelectionMenu.js.map +1 -0
  60. package/dist/components/menu/ResumeSelectionMenu.d.ts.map +1 -1
  61. package/dist/components/menu/ResumeSelectionMenu.js +6 -14
  62. package/dist/components/menu/ResumeSelectionMenu.js.map +1 -1
  63. package/dist/components/message/ChatMessage.js +1 -1
  64. package/dist/components/message/ChatMessage.js.map +1 -1
  65. package/dist/components/message/MessageList.d.ts.map +1 -1
  66. package/dist/components/message/MessageList.js +32 -16
  67. package/dist/components/message/MessageList.js.map +1 -1
  68. package/dist/components/message/command-grouping.d.ts +6 -6
  69. package/dist/components/message/command-grouping.d.ts.map +1 -1
  70. package/dist/components/message/command-grouping.js +21 -8
  71. package/dist/components/message/command-grouping.js.map +1 -1
  72. package/dist/context/InputContext.d.ts +1 -1
  73. package/dist/context/InputContext.d.ts.map +1 -1
  74. package/dist/context/InputContext.js +8 -0
  75. package/dist/context/InputContext.js.map +1 -1
  76. package/dist/contracts/session-rollover.d.ts +9 -1
  77. package/dist/contracts/session-rollover.d.ts.map +1 -1
  78. package/dist/contracts/streamed-model-turn.d.ts +20 -2
  79. package/dist/contracts/streamed-model-turn.d.ts.map +1 -1
  80. package/dist/gateway/gateway.d.ts.map +1 -1
  81. package/dist/gateway/gateway.js +19 -23
  82. package/dist/gateway/gateway.js.map +1 -1
  83. package/dist/gateway/launcher-seam.d.ts.map +1 -1
  84. package/dist/gateway/launcher-seam.js +2 -19
  85. package/dist/gateway/launcher-seam.js.map +1 -1
  86. package/dist/gateway/settings-rpc.d.ts +1 -1
  87. package/dist/gateway/settings-rpc.d.ts.map +1 -1
  88. package/dist/gateway/settings-rpc.js +2 -0
  89. package/dist/gateway/settings-rpc.js.map +1 -1
  90. package/dist/hooks/settings-completion-config.d.ts.map +1 -1
  91. package/dist/hooks/settings-completion-config.js +25 -3
  92. package/dist/hooks/settings-completion-config.js.map +1 -1
  93. package/dist/hooks/use-app-commands.d.ts +3 -1
  94. package/dist/hooks/use-app-commands.d.ts.map +1 -1
  95. package/dist/hooks/use-app-commands.js +21 -14
  96. package/dist/hooks/use-app-commands.js.map +1 -1
  97. package/dist/hooks/use-conversation.d.ts +2 -2
  98. package/dist/hooks/use-conversation.d.ts.map +1 -1
  99. package/dist/hooks/use-conversation.js +1 -1
  100. package/dist/hooks/use-conversation.js.map +1 -1
  101. package/dist/hooks/use-handoff-flow.d.ts +1 -0
  102. package/dist/hooks/use-handoff-flow.d.ts.map +1 -1
  103. package/dist/hooks/use-handoff-flow.js +19 -12
  104. package/dist/hooks/use-handoff-flow.js.map +1 -1
  105. package/dist/hooks/use-profile-selection.d.ts +34 -0
  106. package/dist/hooks/use-profile-selection.d.ts.map +1 -0
  107. package/dist/hooks/use-profile-selection.js +103 -0
  108. package/dist/hooks/use-profile-selection.js.map +1 -0
  109. package/dist/hooks/use-resume-selection.d.ts +2 -0
  110. package/dist/hooks/use-resume-selection.d.ts.map +1 -1
  111. package/dist/hooks/use-resume-selection.js +11 -9
  112. package/dist/hooks/use-resume-selection.js.map +1 -1
  113. package/dist/hooks/use-settings-value-completion.d.ts.map +1 -1
  114. package/dist/hooks/use-settings-value-completion.js +16 -0
  115. package/dist/hooks/use-settings-value-completion.js.map +1 -1
  116. package/dist/hooks/use-skill-selection.d.ts +5 -3
  117. package/dist/hooks/use-skill-selection.d.ts.map +1 -1
  118. package/dist/hooks/use-skill-selection.js +8 -6
  119. package/dist/hooks/use-skill-selection.js.map +1 -1
  120. package/dist/lib/agent-client.d.ts +18 -0
  121. package/dist/lib/agent-client.d.ts.map +1 -1
  122. package/dist/lib/agent-client.js +69 -14
  123. package/dist/lib/agent-client.js.map +1 -1
  124. package/dist/lib/agent-configuration.d.ts +8 -0
  125. package/dist/lib/agent-configuration.d.ts.map +1 -1
  126. package/dist/lib/agent-configuration.js +7 -4
  127. package/dist/lib/agent-configuration.js.map +1 -1
  128. package/dist/lib/agent-factory.d.ts +8 -0
  129. package/dist/lib/agent-factory.d.ts.map +1 -1
  130. package/dist/lib/agent-factory.js +65 -41
  131. package/dist/lib/agent-factory.js.map +1 -1
  132. package/dist/lib/harness-input-idle.d.ts +10 -0
  133. package/dist/lib/harness-input-idle.d.ts.map +1 -1
  134. package/dist/lib/harness-input-idle.js +47 -5
  135. package/dist/lib/harness-input-idle.js.map +1 -1
  136. package/dist/non-interactive.d.ts.map +1 -1
  137. package/dist/non-interactive.js +6 -6
  138. package/dist/non-interactive.js.map +1 -1
  139. package/dist/prompts/memory.md +1 -1
  140. package/dist/prompts/prefix-quality.test.ts +8 -5
  141. package/dist/prompts/prompt-constructor.d.ts +5 -6
  142. package/dist/prompts/prompt-constructor.d.ts.map +1 -1
  143. package/dist/prompts/prompt-constructor.js +15 -7
  144. package/dist/prompts/prompt-constructor.js.map +1 -1
  145. package/dist/prompts/prompt-constructor.test.ts +73 -48
  146. package/dist/prompts/prompt-constructor.ts +21 -13
  147. package/dist/prompts/session-browser.md +2 -0
  148. package/dist/prompts/shell-auto-approval.d.ts +2 -2
  149. package/dist/prompts/shell-auto-approval.d.ts.map +1 -1
  150. package/dist/prompts/shell-auto-approval.js +19 -16
  151. package/dist/prompts/shell-auto-approval.js.map +1 -1
  152. package/dist/prompts/shell-auto-approval.ts +19 -16
  153. package/dist/providers/aborted-stream-recorder.js +2 -1
  154. package/dist/providers/aborted-stream-recorder.js.map +1 -1
  155. package/dist/providers/ai-sdk-streamed-model.d.ts.map +1 -1
  156. package/dist/providers/ai-sdk-streamed-model.js +7 -0
  157. package/dist/providers/ai-sdk-streamed-model.js.map +1 -1
  158. package/dist/providers/codex-responses-model.d.ts.map +1 -1
  159. package/dist/providers/codex-responses-model.js +75 -14
  160. package/dist/providers/codex-responses-model.js.map +1 -1
  161. package/dist/providers/codex-turn-converter.d.ts.map +1 -1
  162. package/dist/providers/codex-turn-converter.js +21 -4
  163. package/dist/providers/codex-turn-converter.js.map +1 -1
  164. package/dist/providers/codex.provider.d.ts.map +1 -1
  165. package/dist/providers/codex.provider.js +1 -0
  166. package/dist/providers/codex.provider.js.map +1 -1
  167. package/dist/providers/fetch/logging-middleware.d.ts.map +1 -1
  168. package/dist/providers/fetch/logging-middleware.js +22 -2
  169. package/dist/providers/fetch/logging-middleware.js.map +1 -1
  170. package/dist/providers/openai-chat-completions-model.js +119 -50
  171. package/dist/providers/openai-chat-completions-model.js.map +1 -1
  172. package/dist/providers/openai-responses-model.d.ts.map +1 -1
  173. package/dist/providers/openai-responses-model.js +131 -15
  174. package/dist/providers/openai-responses-model.js.map +1 -1
  175. package/dist/providers/registry.d.ts +1 -1
  176. package/dist/providers/registry.d.ts.map +1 -1
  177. package/dist/providers/retrying-model.d.ts.map +1 -1
  178. package/dist/providers/retrying-model.js +11 -2
  179. package/dist/providers/retrying-model.js.map +1 -1
  180. package/dist/services/agent-runtime/application-run-loop.d.ts +3 -1
  181. package/dist/services/agent-runtime/application-run-loop.d.ts.map +1 -1
  182. package/dist/services/agent-runtime/application-run-loop.js +99 -19
  183. package/dist/services/agent-runtime/application-run-loop.js.map +1 -1
  184. package/dist/services/agent-runtime/context-compaction/context-milestone-reminder.d.ts +2 -3
  185. package/dist/services/agent-runtime/context-compaction/context-milestone-reminder.d.ts.map +1 -1
  186. package/dist/services/agent-runtime/context-compaction/context-milestone-reminder.js +18 -9
  187. package/dist/services/agent-runtime/context-compaction/context-milestone-reminder.js.map +1 -1
  188. package/dist/services/agent-runtime/generation-guard.d.ts +25 -1
  189. package/dist/services/agent-runtime/generation-guard.d.ts.map +1 -1
  190. package/dist/services/agent-runtime/generation-guard.js +105 -1
  191. package/dist/services/agent-runtime/generation-guard.js.map +1 -1
  192. package/dist/services/agent-stream.d.ts +2 -0
  193. package/dist/services/agent-stream.d.ts.map +1 -1
  194. package/dist/services/agent-stream.js.map +1 -1
  195. package/dist/services/approval/approval-decision-policy.js +2 -2
  196. package/dist/services/approval/approval-decision-policy.js.map +1 -1
  197. package/dist/services/approval/shell-auto-approval-evaluator.d.ts +5 -1
  198. package/dist/services/approval/shell-auto-approval-evaluator.d.ts.map +1 -1
  199. package/dist/services/approval/shell-auto-approval-evaluator.js +42 -18
  200. package/dist/services/approval/shell-auto-approval-evaluator.js.map +1 -1
  201. package/dist/services/approval/shell-auto-approval-resolver.d.ts +5 -0
  202. package/dist/services/approval/shell-auto-approval-resolver.d.ts.map +1 -1
  203. package/dist/services/approval/shell-auto-approval-resolver.js +117 -20
  204. package/dist/services/approval/shell-auto-approval-resolver.js.map +1 -1
  205. package/dist/services/approval/tool-approval-batch-coordinator.d.ts.map +1 -1
  206. package/dist/services/approval/tool-approval-batch-coordinator.js +20 -3
  207. package/dist/services/approval/tool-approval-batch-coordinator.js.map +1 -1
  208. package/dist/services/conversation/conversation-adapter.d.ts.map +1 -1
  209. package/dist/services/conversation/conversation-adapter.js +2 -9
  210. package/dist/services/conversation/conversation-adapter.js.map +1 -1
  211. package/dist/services/conversation/conversation-decoder.d.ts.map +1 -1
  212. package/dist/services/conversation/conversation-decoder.js +6 -2
  213. package/dist/services/conversation/conversation-decoder.js.map +1 -1
  214. package/dist/services/conversation/conversation-orchestrator.d.ts.map +1 -1
  215. package/dist/services/conversation/conversation-orchestrator.js +22 -2
  216. package/dist/services/conversation/conversation-orchestrator.js.map +1 -1
  217. package/dist/services/conversation/conversation-persistence.d.ts +30 -0
  218. package/dist/services/conversation/conversation-persistence.d.ts.map +1 -1
  219. package/dist/services/conversation/conversation-persistence.js +101 -7
  220. package/dist/services/conversation/conversation-persistence.js.map +1 -1
  221. package/dist/services/conversation/conversation-replay.d.ts +2 -0
  222. package/dist/services/conversation/conversation-replay.d.ts.map +1 -1
  223. package/dist/services/conversation/conversation-replay.js +71 -57
  224. package/dist/services/conversation/conversation-replay.js.map +1 -1
  225. package/dist/services/conversation/conversation-result-builder.d.ts.map +1 -1
  226. package/dist/services/conversation/conversation-result-builder.js +21 -4
  227. package/dist/services/conversation/conversation-result-builder.js.map +1 -1
  228. package/dist/services/conversation/conversation-service.d.ts +3 -2
  229. package/dist/services/conversation/conversation-service.d.ts.map +1 -1
  230. package/dist/services/conversation/conversation-service.js +36 -15
  231. package/dist/services/conversation/conversation-service.js.map +1 -1
  232. package/dist/services/conversation/session-browser.d.ts +8 -1
  233. package/dist/services/conversation/session-browser.d.ts.map +1 -1
  234. package/dist/services/conversation/session-browser.js +134 -16
  235. package/dist/services/conversation/session-browser.js.map +1 -1
  236. package/dist/services/handoff/handoff-session.d.ts +2 -0
  237. package/dist/services/handoff/handoff-session.d.ts.map +1 -1
  238. package/dist/services/handoff/handoff-session.js +19 -3
  239. package/dist/services/handoff/handoff-session.js.map +1 -1
  240. package/dist/services/logging/conversation-log-events.d.ts +30 -3
  241. package/dist/services/logging/conversation-log-events.d.ts.map +1 -1
  242. package/dist/services/logging/conversation-log-events.js +1 -4
  243. package/dist/services/logging/conversation-log-events.js.map +1 -1
  244. package/dist/services/logging/logging-service.d.ts +1 -0
  245. package/dist/services/logging/logging-service.d.ts.map +1 -1
  246. package/dist/services/logging/logging-service.js +5 -2
  247. package/dist/services/logging/logging-service.js.map +1 -1
  248. package/dist/services/logging/provider-traffic.d.ts +8 -1
  249. package/dist/services/logging/provider-traffic.d.ts.map +1 -1
  250. package/dist/services/logging/provider-traffic.js +105 -10
  251. package/dist/services/logging/provider-traffic.js.map +1 -1
  252. package/dist/services/memory/memory-capabilities.d.ts.map +1 -1
  253. package/dist/services/memory/memory-capabilities.js +17 -5
  254. package/dist/services/memory/memory-capabilities.js.map +1 -1
  255. package/dist/services/memory/memory-store.d.ts +17 -0
  256. package/dist/services/memory/memory-store.d.ts.map +1 -1
  257. package/dist/services/memory/memory-store.js +74 -27
  258. package/dist/services/memory/memory-store.js.map +1 -1
  259. package/dist/services/mode-notices.d.ts +12 -9
  260. package/dist/services/mode-notices.d.ts.map +1 -1
  261. package/dist/services/mode-notices.js +83 -54
  262. package/dist/services/mode-notices.js.map +1 -1
  263. package/dist/services/model-service.d.ts +22 -4
  264. package/dist/services/model-service.d.ts.map +1 -1
  265. package/dist/services/model-service.js +148 -1
  266. package/dist/services/model-service.js.map +1 -1
  267. package/dist/services/models/model-catalog-session.d.ts +6 -0
  268. package/dist/services/models/model-catalog-session.d.ts.map +1 -1
  269. package/dist/services/models/model-catalog-session.js +7 -3
  270. package/dist/services/models/model-catalog-session.js.map +1 -1
  271. package/dist/services/models/model-listing.d.ts +57 -0
  272. package/dist/services/models/model-listing.d.ts.map +1 -0
  273. package/dist/services/models/model-listing.js +96 -0
  274. package/dist/services/models/model-listing.js.map +1 -0
  275. package/dist/services/models/model-resolution.d.ts +88 -0
  276. package/dist/services/models/model-resolution.d.ts.map +1 -0
  277. package/dist/services/models/model-resolution.js +292 -0
  278. package/dist/services/models/model-resolution.js.map +1 -0
  279. package/dist/services/plan-mode-interceptor.d.ts.map +1 -1
  280. package/dist/services/plan-mode-interceptor.js +5 -6
  281. package/dist/services/plan-mode-interceptor.js.map +1 -1
  282. package/dist/services/profiles/active-profile.d.ts +5 -0
  283. package/dist/services/profiles/active-profile.d.ts.map +1 -0
  284. package/dist/services/profiles/active-profile.js +33 -0
  285. package/dist/services/profiles/active-profile.js.map +1 -0
  286. package/dist/services/profiles/index.d.ts +9 -0
  287. package/dist/services/profiles/index.d.ts.map +1 -0
  288. package/dist/services/profiles/index.js +9 -0
  289. package/dist/services/profiles/index.js.map +1 -0
  290. package/dist/services/profiles/labels.d.ts +7 -0
  291. package/dist/services/profiles/labels.d.ts.map +1 -0
  292. package/dist/services/profiles/labels.js +22 -0
  293. package/dist/services/profiles/labels.js.map +1 -0
  294. package/dist/services/profiles/legacy-adapter.d.ts +28 -0
  295. package/dist/services/profiles/legacy-adapter.d.ts.map +1 -0
  296. package/dist/services/profiles/legacy-adapter.js +69 -0
  297. package/dist/services/profiles/legacy-adapter.js.map +1 -0
  298. package/dist/services/profiles/profile-transition.d.ts +48 -0
  299. package/dist/services/profiles/profile-transition.d.ts.map +1 -0
  300. package/dist/services/profiles/profile-transition.js +109 -0
  301. package/dist/services/profiles/profile-transition.js.map +1 -0
  302. package/dist/services/profiles/registry.d.ts +17 -0
  303. package/dist/services/profiles/registry.d.ts.map +1 -0
  304. package/dist/services/profiles/registry.js +147 -0
  305. package/dist/services/profiles/registry.js.map +1 -0
  306. package/dist/services/profiles/resolver.d.ts +10 -0
  307. package/dist/services/profiles/resolver.d.ts.map +1 -0
  308. package/dist/services/profiles/resolver.js +573 -0
  309. package/dist/services/profiles/resolver.js.map +1 -0
  310. package/dist/services/profiles/schema.d.ts +960 -0
  311. package/dist/services/profiles/schema.d.ts.map +1 -0
  312. package/dist/services/profiles/schema.js +196 -0
  313. package/dist/services/profiles/schema.js.map +1 -0
  314. package/dist/services/profiles/types.d.ts +224 -0
  315. package/dist/services/profiles/types.d.ts.map +1 -0
  316. package/dist/services/profiles/types.js +9 -0
  317. package/dist/services/profiles/types.js.map +1 -0
  318. package/dist/services/retry/committed-tool-continuation.d.ts +5 -0
  319. package/dist/services/retry/committed-tool-continuation.d.ts.map +1 -1
  320. package/dist/services/retry/committed-tool-continuation.js +6 -3
  321. package/dist/services/retry/committed-tool-continuation.js.map +1 -1
  322. package/dist/services/retry/retry-classifier.d.ts.map +1 -1
  323. package/dist/services/retry/retry-classifier.js +13 -10
  324. package/dist/services/retry/retry-classifier.js.map +1 -1
  325. package/dist/services/retry/retry-error-classification.d.ts +7 -0
  326. package/dist/services/retry/retry-error-classification.d.ts.map +1 -1
  327. package/dist/services/retry/retry-error-classification.js +32 -9
  328. package/dist/services/retry/retry-error-classification.js.map +1 -1
  329. package/dist/services/runtime-setting-router.d.ts.map +1 -1
  330. package/dist/services/runtime-setting-router.js +76 -23
  331. package/dist/services/runtime-setting-router.js.map +1 -1
  332. package/dist/services/session/background-check-in-scheduler.d.ts +20 -4
  333. package/dist/services/session/background-check-in-scheduler.d.ts.map +1 -1
  334. package/dist/services/session/background-check-in-scheduler.js +73 -6
  335. package/dist/services/session/background-check-in-scheduler.js.map +1 -1
  336. package/dist/services/session/initial-turn-recovery-handler.js +4 -4
  337. package/dist/services/session/initial-turn-recovery-handler.js.map +1 -1
  338. package/dist/services/session/session-composition.d.ts.map +1 -1
  339. package/dist/services/session/session-composition.js +2 -1
  340. package/dist/services/session/session-composition.js.map +1 -1
  341. package/dist/services/session/session-input-planner.d.ts.map +1 -1
  342. package/dist/services/session/session-input-planner.js +2 -9
  343. package/dist/services/session/session-input-planner.js.map +1 -1
  344. package/dist/services/session/session-manager.d.ts.map +1 -1
  345. package/dist/services/session/session-manager.js +4 -1
  346. package/dist/services/session/session-manager.js.map +1 -1
  347. package/dist/services/session-rollover/session-rollover-brief.d.ts +2 -1
  348. package/dist/services/session-rollover/session-rollover-brief.d.ts.map +1 -1
  349. package/dist/services/session-rollover/session-rollover-brief.js +5 -3
  350. package/dist/services/session-rollover/session-rollover-brief.js.map +1 -1
  351. package/dist/services/settings/settings-persistence.js +1 -1
  352. package/dist/services/settings/settings-persistence.js.map +1 -1
  353. package/dist/services/settings/settings-schema.d.ts +124 -19
  354. package/dist/services/settings/settings-schema.d.ts.map +1 -1
  355. package/dist/services/settings/settings-schema.js +111 -31
  356. package/dist/services/settings/settings-schema.js.map +1 -1
  357. package/dist/services/settings/settings-service.d.ts +3 -1
  358. package/dist/services/settings/settings-service.d.ts.map +1 -1
  359. package/dist/services/settings/settings-service.js +88 -91
  360. package/dist/services/settings/settings-service.js.map +1 -1
  361. package/dist/services/settings/settings-sources.d.ts.map +1 -1
  362. package/dist/services/settings/settings-sources.js +13 -1
  363. package/dist/services/settings/settings-sources.js.map +1 -1
  364. package/dist/services/settings/test-helpers/settings-consumer-inventory.d.ts +3 -3
  365. package/dist/services/settings/test-helpers/settings-consumer-inventory.d.ts.map +1 -1
  366. package/dist/services/settings/test-helpers/settings-consumer-inventory.js +15 -1
  367. package/dist/services/settings/test-helpers/settings-consumer-inventory.js.map +1 -1
  368. package/dist/services/subagents/mentor-runner.d.ts.map +1 -1
  369. package/dist/services/subagents/mentor-runner.js +5 -2
  370. package/dist/services/subagents/mentor-runner.js.map +1 -1
  371. package/dist/services/subagents/subagent-notification-store.d.ts +10 -2
  372. package/dist/services/subagents/subagent-notification-store.d.ts.map +1 -1
  373. package/dist/services/subagents/subagent-notification-store.js +10 -5
  374. package/dist/services/subagents/subagent-notification-store.js.map +1 -1
  375. package/dist/services/subagents/tool-policy.d.ts.map +1 -1
  376. package/dist/services/subagents/tool-policy.js +10 -15
  377. package/dist/services/subagents/tool-policy.js.map +1 -1
  378. package/dist/services/tool-toggles.d.ts +20 -0
  379. package/dist/services/tool-toggles.d.ts.map +1 -0
  380. package/dist/services/tool-toggles.js +115 -0
  381. package/dist/services/tool-toggles.js.map +1 -0
  382. package/dist/slash-commands.d.ts +3 -0
  383. package/dist/slash-commands.d.ts.map +1 -1
  384. package/dist/slash-commands.js.map +1 -1
  385. package/dist/tools/agent/configure-task-check-in.d.ts +19 -0
  386. package/dist/tools/agent/configure-task-check-in.d.ts.map +1 -0
  387. package/dist/tools/agent/configure-task-check-in.js +82 -0
  388. package/dist/tools/agent/configure-task-check-in.js.map +1 -0
  389. package/dist/tools/agent/run-subagent-async.d.ts +11 -1
  390. package/dist/tools/agent/run-subagent-async.d.ts.map +1 -1
  391. package/dist/tools/agent/run-subagent-async.js +22 -1
  392. package/dist/tools/agent/run-subagent-async.js.map +1 -1
  393. package/dist/tools/agent/run-subagent.d.ts +15 -0
  394. package/dist/tools/agent/run-subagent.d.ts.map +1 -1
  395. package/dist/tools/agent/run-subagent.js +24 -2
  396. package/dist/tools/agent/run-subagent.js.map +1 -1
  397. package/dist/tools/file/apply-patch.d.ts +2 -15
  398. package/dist/tools/file/apply-patch.d.ts.map +1 -1
  399. package/dist/tools/file/apply-patch.js +163 -98
  400. package/dist/tools/file/apply-patch.js.map +1 -1
  401. package/dist/tools/file/read-file.d.ts.map +1 -1
  402. package/dist/tools/file/read-file.js +48 -0
  403. package/dist/tools/file/read-file.js.map +1 -1
  404. package/dist/tools/file/upstream-apply-patch.d.ts +31 -0
  405. package/dist/tools/file/upstream-apply-patch.d.ts.map +1 -0
  406. package/dist/tools/file/upstream-apply-patch.js +123 -0
  407. package/dist/tools/file/upstream-apply-patch.js.map +1 -0
  408. package/dist/tools/format-helpers.d.ts +2 -0
  409. package/dist/tools/format-helpers.d.ts.map +1 -1
  410. package/dist/tools/format-helpers.js +7 -0
  411. package/dist/tools/format-helpers.js.map +1 -1
  412. package/dist/tools/memory/memory-tools.js +1 -1
  413. package/dist/tools/memory/memory-tools.js.map +1 -1
  414. package/dist/tools/session-browser/session-browser-tools.d.ts.map +1 -1
  415. package/dist/tools/session-browser/session-browser-tools.js +11 -1
  416. package/dist/tools/session-browser/session-browser-tools.js.map +1 -1
  417. package/dist/tools/session-rollover/session-rollover-tool.d.ts.map +1 -1
  418. package/dist/tools/session-rollover/session-rollover-tool.js +10 -1
  419. package/dist/tools/session-rollover/session-rollover-tool.js.map +1 -1
  420. package/dist/tools/system/shell.d.ts +12 -0
  421. package/dist/tools/system/shell.d.ts.map +1 -1
  422. package/dist/tools/system/shell.js +30 -4
  423. package/dist/tools/system/shell.js.map +1 -1
  424. package/dist/tools/types.d.ts +15 -2
  425. package/dist/tools/types.d.ts.map +1 -1
  426. package/dist/tools/types.js.map +1 -1
  427. package/dist/utils/ai/token-usage.d.ts +9 -0
  428. package/dist/utils/ai/token-usage.d.ts.map +1 -1
  429. package/dist/utils/ai/token-usage.js +15 -3
  430. package/dist/utils/ai/token-usage.js.map +1 -1
  431. package/dist/utils/conversation/conversation-utils.d.ts.map +1 -1
  432. package/dist/utils/conversation/conversation-utils.js +40 -1
  433. package/dist/utils/conversation/conversation-utils.js.map +1 -1
  434. package/dist/utils/conversation/message-buffer.d.ts +16 -0
  435. package/dist/utils/conversation/message-buffer.d.ts.map +1 -1
  436. package/dist/utils/conversation/message-buffer.js +33 -0
  437. package/dist/utils/conversation/message-buffer.js.map +1 -1
  438. package/dist/utils/output/trim-tool-output.d.ts +1 -1
  439. package/dist/utils/output/trim-tool-output.d.ts.map +1 -1
  440. package/dist/utils/output/trim-tool-output.js +20 -0
  441. package/dist/utils/output/trim-tool-output.js.map +1 -1
  442. package/dist/utils/resume-list.d.ts +2 -0
  443. package/dist/utils/resume-list.d.ts.map +1 -1
  444. package/dist/utils/resume-list.js +7 -14
  445. package/dist/utils/resume-list.js.map +1 -1
  446. package/dist/utils/settings-command.d.ts.map +1 -1
  447. package/dist/utils/settings-command.js +95 -14
  448. package/dist/utils/settings-command.js.map +1 -1
  449. package/dist/utils/streaming/streaming-session-factory.d.ts +3 -0
  450. package/dist/utils/streaming/streaming-session-factory.d.ts.map +1 -1
  451. package/dist/utils/streaming/streaming-session-factory.js +35 -17
  452. package/dist/utils/streaming/streaming-session-factory.js.map +1 -1
  453. package/dist/utils/streaming/streaming-speed-tracker.d.ts +47 -6
  454. package/dist/utils/streaming/streaming-speed-tracker.d.ts.map +1 -1
  455. package/dist/utils/streaming/streaming-speed-tracker.js +91 -23
  456. package/dist/utils/streaming/streaming-speed-tracker.js.map +1 -1
  457. package/package.json +3 -3
@@ -14,6 +14,7 @@ import { createReadCodeOutlineToolDefinition, createCodeContextSearchToolDefinit
14
14
  import { createWebSearchToolDefinition } from '../../tools/web/web-search.js';
15
15
  import { createWebFetchToolDefinition } from '../../tools/web/web-fetch.js';
16
16
  import { createApplyPatchToolDefinition } from '../../tools/file/apply-patch.js';
17
+ import { extractPatchPaths } from '../../tools/file/upstream-apply-patch.js';
17
18
  import { createSearchReplaceToolDefinition } from '../../tools/file/search-replace.js';
18
19
  import { createCreateFileToolDefinition } from '../../tools/file/create-file.js';
19
20
  import { createShellToolDefinition } from '../../tools/system/shell.js';
@@ -711,17 +712,7 @@ export class SubagentToolFactory {
711
712
  settingsService: this.#settings,
712
713
  loggingService: this.#logger,
713
714
  executionContext,
714
- }), cwd, filesChanged, (params) => {
715
- if (params.operations) {
716
- return params.operations.map((operation) => operation.path);
717
- }
718
- return params.path ? [params.path] : [];
719
- }, nestedApprovals, diffDeltas), fsWriteScope, (params) => {
720
- if (params.operations) {
721
- return params.operations.map((operation) => operation.path);
722
- }
723
- return params.path ? [params.path] : [];
724
- }));
715
+ }), cwd, filesChanged, (params) => extractPatchPaths(params.patch), nestedApprovals, diffDeltas), fsWriteScope, (params) => extractPatchPaths(params.patch)));
725
716
  }
726
717
  else {
727
718
  tools.push(this.#toolPolicy.wrapWriteToolWithScope(this.#toolPolicy.wrapWriteTool(createSearchReplaceToolDefinition({
@@ -788,10 +779,14 @@ export class SubagentToolFactory {
788
779
  // callback closes the active-tool gate that defers steering interrupts.
789
780
  options.onToolComplete?.(definition.name, result, context, details);
790
781
  }
791
- const trimmedResult = definition.preserveSerializedOutput
792
- ? String(result ?? '')
793
- : trimToolOutput(result, undefined, maxOutputLength ?? undefined);
794
- return definition.preserveSerializedOutput ? trimmedResult : injectRunBudgetWarning(trimmedResult, context);
782
+ if (definition.preserveSerializedOutput) {
783
+ return String(result ?? '');
784
+ }
785
+ const trimmedResult = trimToolOutput(result, undefined, maxOutputLength ?? undefined);
786
+ // Structured content-part results (read_file images) carry no single
787
+ // text slot for the run-budget advisory; deliver them unmodified so
788
+ // the image reaches the provider converter.
789
+ return typeof trimmedResult === 'string' ? injectRunBudgetWarning(trimmedResult, context) : trimmedResult;
795
790
  },
796
791
  };
797
792
  return wrapToolInvoke(wrapped, isZodToolParameterSchema(definition.parameters) ? definition.parameters : undefined, { argumentParsing: definition.argumentParsing });
@@ -1 +1 @@
1
- {"version":3,"file":"tool-policy.js","sourceRoot":"","sources":["../../../source/services/subagents/tool-policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-policy.js","sourceRoot":"","sources":["../../../source/services/subagents/tool-policy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ export declare function isToolToggleKey(key: string): boolean;
2
+ export declare function getToolToggleKeys(): readonly string[];
3
+ /** Minimal read surface of ISettingsService, for testability without the full service. */
4
+ type SettingsReader = {
5
+ getDynamic(key: string): unknown;
6
+ get(key: string): unknown;
7
+ };
8
+ /**
9
+ * The capability group strings currently masked by disabled toggles. Returns a
10
+ * fresh set each call; callers may mutate it to derive an effective set.
11
+ */
12
+ export declare function resolveDisabledCapabilities(settings: SettingsReader): Set<string>;
13
+ /**
14
+ * One warning notice per apply batch listing the newly disabled toggles that
15
+ * conflict with the now-active profile. Returns null when nothing conflicts.
16
+ * `newlyDisabledKeys` must contain only toggles whose value changed true→false.
17
+ */
18
+ export declare function buildToggleConflictNotice(settings: SettingsReader, newlyDisabledKeys: readonly string[]): string | null;
19
+ export {};
20
+ //# sourceMappingURL=tool-toggles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-toggles.d.ts","sourceRoot":"","sources":["../../source/services/tool-toggles.ts"],"names":[],"mappings":"AAwCA,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,wBAAgB,iBAAiB,IAAI,SAAS,MAAM,EAAE,CAErD;AAED,0FAA0F;AAC1F,KAAK,cAAc,GAAG;IACpB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACjC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC3B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,cAAc,GAAG,GAAG,CAAC,MAAM,CAAC,CAUjF;AAmDD;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,cAAc,EACxB,iBAAiB,EAAE,SAAS,MAAM,EAAE,GACnC,MAAM,GAAG,IAAI,CAyBf"}
@@ -0,0 +1,115 @@
1
+ import { SETTING_KEYS } from './settings/settings-schema.js';
2
+ const CAPABILITY_GROUPS = [
3
+ { key: SETTING_KEYS.TOOLS_SHELL_ENABLED, capabilities: ['shell'] },
4
+ { key: SETTING_KEYS.TOOLS_WEB_ENABLED, capabilities: ['web'] },
5
+ // filesystem-read-external has no separate toggle: fileRead masks both read
6
+ // capabilities. Lite keeps its outside-workspace read authority, which is
7
+ // keyed on liteMode, not on a capability.
8
+ {
9
+ key: SETTING_KEYS.TOOLS_FILE_READ_ENABLED,
10
+ capabilities: ['filesystem-read-workspace', 'filesystem-read-external'],
11
+ },
12
+ { key: SETTING_KEYS.TOOLS_FILE_WRITE_ENABLED, capabilities: ['filesystem-write'] },
13
+ { key: SETTING_KEYS.TOOLS_MEMORY_ENABLED, capabilities: ['memory'] },
14
+ { key: SETTING_KEYS.TOOLS_SESSIONS_ENABLED, capabilities: ['sessions'] },
15
+ { key: SETTING_KEYS.TOOLS_SKILLS_ENABLED, capabilities: ['skills'] },
16
+ { key: SETTING_KEYS.TOOLS_MENTOR_ENABLED, capabilities: ['mentor'] },
17
+ { key: SETTING_KEYS.TOOLS_SUBAGENTS_ENABLED, capabilities: ['subagents'] },
18
+ { key: SETTING_KEYS.TOOLS_BACKGROUND_TASKS_ENABLED, capabilities: ['background-tasks'] },
19
+ { key: SETTING_KEYS.TOOLS_USER_INTERACTION_ENABLED, capabilities: ['user-interaction'] },
20
+ { key: SETTING_KEYS.TOOLS_CODE_CONTEXT_ENABLED, capabilities: ['code-context'] },
21
+ ];
22
+ const CAPABILITY_GROUP_KEYS = new Set(CAPABILITY_GROUPS.map((group) => group.key));
23
+ export function isToolToggleKey(key) {
24
+ return CAPABILITY_GROUP_KEYS.has(key);
25
+ }
26
+ export function getToolToggleKeys() {
27
+ return [...CAPABILITY_GROUP_KEYS];
28
+ }
29
+ /**
30
+ * The capability group strings currently masked by disabled toggles. Returns a
31
+ * fresh set each call; callers may mutate it to derive an effective set.
32
+ */
33
+ export function resolveDisabledCapabilities(settings) {
34
+ const masked = new Set();
35
+ for (const group of CAPABILITY_GROUPS) {
36
+ if (settings.getDynamic(group.key) === false) {
37
+ for (const capability of group.capabilities) {
38
+ masked.add(capability);
39
+ }
40
+ }
41
+ }
42
+ return masked;
43
+ }
44
+ /**
45
+ * Profile guidance that references a toggle's tools even when the toggle is
46
+ * off: those models may attempt unavailable tools mid-run. Only conflicts the
47
+ * design doc identified are listed; anything else is considered intentional.
48
+ */
49
+ const PROFILE_TOGGLE_CONFLICTS = {
50
+ 'builtin:orchestrator': {
51
+ label: 'Orchestrator',
52
+ toggles: [
53
+ SETTING_KEYS.TOOLS_FILE_WRITE_ENABLED,
54
+ SETTING_KEYS.TOOLS_SHELL_ENABLED,
55
+ SETTING_KEYS.TOOLS_SUBAGENTS_ENABLED,
56
+ ],
57
+ },
58
+ 'builtin:mentor': {
59
+ label: 'Mentor',
60
+ toggles: [
61
+ SETTING_KEYS.TOOLS_FILE_WRITE_ENABLED,
62
+ SETTING_KEYS.TOOLS_SHELL_ENABLED,
63
+ SETTING_KEYS.TOOLS_MENTOR_ENABLED,
64
+ ],
65
+ },
66
+ 'builtin:standard': {
67
+ label: 'Standard',
68
+ toggles: [
69
+ SETTING_KEYS.TOOLS_FILE_WRITE_ENABLED,
70
+ SETTING_KEYS.TOOLS_SHELL_ENABLED,
71
+ SETTING_KEYS.TOOLS_SUBAGENTS_ENABLED,
72
+ ],
73
+ },
74
+ 'builtin:plan': {
75
+ label: 'Plan',
76
+ toggles: [
77
+ SETTING_KEYS.TOOLS_FILE_WRITE_ENABLED,
78
+ SETTING_KEYS.TOOLS_SHELL_ENABLED,
79
+ SETTING_KEYS.TOOLS_SUBAGENTS_ENABLED,
80
+ ],
81
+ },
82
+ 'builtin:lite': {
83
+ label: 'Lite',
84
+ toggles: [
85
+ SETTING_KEYS.TOOLS_SHELL_ENABLED,
86
+ SETTING_KEYS.TOOLS_WEB_ENABLED,
87
+ SETTING_KEYS.TOOLS_FILE_READ_ENABLED,
88
+ SETTING_KEYS.TOOLS_FILE_WRITE_ENABLED,
89
+ ],
90
+ },
91
+ };
92
+ /**
93
+ * One warning notice per apply batch listing the newly disabled toggles that
94
+ * conflict with the now-active profile. Returns null when nothing conflicts.
95
+ * `newlyDisabledKeys` must contain only toggles whose value changed true→false.
96
+ */
97
+ export function buildToggleConflictNotice(settings, newlyDisabledKeys) {
98
+ if (newlyDisabledKeys.length === 0) {
99
+ return null;
100
+ }
101
+ const activeProfileId = String(settings.get('app.activeProfileId') ?? '');
102
+ const conflicts = PROFILE_TOGGLE_CONFLICTS[activeProfileId];
103
+ if (conflicts) {
104
+ const conflicting = newlyDisabledKeys.filter((key) => conflicts.toggles.includes(key));
105
+ if (conflicting.length === 0) {
106
+ return null;
107
+ }
108
+ return `Tool warning: ${conflicting.join(', ')} disabled while the ${conflicts.label} profile's guidance still references these tools; the model may attempt unavailable tools.`;
109
+ }
110
+ if (activeProfileId.startsWith('builtin:')) {
111
+ return null;
112
+ }
113
+ return `Tool warning: ${newlyDisabledKeys.join(', ')} disabled for non-builtin profile '${activeProfileId}', whose guidance may reference these tools.`;
114
+ }
115
+ //# sourceMappingURL=tool-toggles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-toggles.js","sourceRoot":"","sources":["../../source/services/tool-toggles.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,9 @@ export type SlashCommandCompletion = {
15
15
  } | {
16
16
  type: 'resume';
17
17
  trigger: string;
18
+ } | {
19
+ type: 'profile';
20
+ trigger: string;
18
21
  };
19
22
  export interface SlashCommand {
20
23
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"slash-commands.d.ts","sourceRoot":"","sources":["../source/slash-commands.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,sBAAsB,GAC9B;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GAC3D;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAC9D;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAExC,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO,GAAG,IAAI,CAAC;IAC1C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,sBAAsB,CAAC;CACrC;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAO3G"}
1
+ {"version":3,"file":"slash-commands.d.ts","sourceRoot":"","sources":["../source/slash-commands.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,sBAAsB,GAC9B;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GAC3D;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAC9D;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzC,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO,GAAG,IAAI,CAAC;IAC1C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,sBAAsB,CAAC;CACrC;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAO3G"}
@@ -1 +1 @@
1
- {"version":3,"file":"slash-commands.js","sourceRoot":"","sources":["../source/slash-commands.ts"],"names":[],"mappings":"AAeA,MAAM,UAAU,mBAAmB,CAAC,QAAwB,EAAE,WAAmB;IAC/E,MAAM,cAAc,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;IACjD,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,cAAc,CAAC,CAAC;IAC7F,IAAI,UAAU;QAAE,OAAO,UAAU,CAAC;IAElC,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC;IAC1G,OAAO,aAAa,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACnE,CAAC"}
1
+ {"version":3,"file":"slash-commands.js","sourceRoot":"","sources":["../source/slash-commands.ts"],"names":[],"mappings":"AAgBA,MAAM,UAAU,mBAAmB,CAAC,QAAwB,EAAE,WAAmB;IAC/E,MAAM,cAAc,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;IACjD,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,cAAc,CAAC,CAAC;IAC7F,IAAI,UAAU;QAAE,OAAO,UAAU,CAAC;IAElC,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC;IAC1G,OAAO,aAAa,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACnE,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { z } from 'zod';
2
+ import type { ToolDefinition, FormatCommandMessage } from '../types.js';
3
+ export declare const MIN_CHECK_IN_INTERVAL_SECONDS = 300;
4
+ export declare const MIN_NEXT_CHECK_IN_SECONDS = 30;
5
+ export declare const configureTaskCheckInSchema: z.ZodObject<{
6
+ target: z.ZodString;
7
+ enabled: z.ZodOptional<z.ZodBoolean>;
8
+ interval_seconds: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
9
+ next_check_in_seconds: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
10
+ }, z.core.$strip>;
11
+ export type ConfigureTaskCheckInParams = z.infer<typeof configureTaskCheckInSchema>;
12
+ export interface ConfigureTaskCheckInResult {
13
+ ok: boolean;
14
+ message?: string;
15
+ error?: string;
16
+ }
17
+ export declare function createConfigureTaskCheckInToolDefinition(configureTaskCheckIn: (params: ConfigureTaskCheckInParams) => ConfigureTaskCheckInResult): ToolDefinition;
18
+ export declare const formatConfigureTaskCheckInCommandMessage: FormatCommandMessage;
19
+ //# sourceMappingURL=configure-task-check-in.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configure-task-check-in.d.ts","sourceRoot":"","sources":["../../../source/tools/agent/configure-task-check-in.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AASxE,eAAO,MAAM,6BAA6B,MAAM,CAAC;AACjD,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAE5C,eAAO,MAAM,0BAA0B;;;;;iBA8BrC,CAAC;AAEH,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAEpF,MAAM,WAAW,0BAA0B;IACzC,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,wCAAwC,CACtD,oBAAoB,EAAE,CAAC,MAAM,EAAE,0BAA0B,KAAK,0BAA0B,GACvF,cAAc,CA6BhB;AAED,eAAO,MAAM,wCAAwC,EAAE,oBA2BtD,CAAC"}
@@ -0,0 +1,82 @@
1
+ import { z } from 'zod';
2
+ import { relaxedNumber } from '../utils.js';
3
+ import { getOutputText, normalizeToolArguments, createBaseMessage, getCallIdFromItem, safeJsonParse, } from '../format-helpers.js';
4
+ export const MIN_CHECK_IN_INTERVAL_SECONDS = 300; // 5 minutes
5
+ export const MIN_NEXT_CHECK_IN_SECONDS = 30; // 30 seconds (scheduler tick granularity)
6
+ export const configureTaskCheckInSchema = z.object({
7
+ target: z
8
+ .string()
9
+ .trim()
10
+ .min(1)
11
+ .max(128)
12
+ .describe('The background task identifier: shell jobId (e.g. job-123) or subagent name/runId (e.g. explorer-1 or run-abc).'),
13
+ enabled: z
14
+ .boolean()
15
+ .optional()
16
+ .describe('Set to false to disable/mute future proactive check-ins for this task, or true to enable them.'),
17
+ interval_seconds: relaxedNumber
18
+ .int()
19
+ .min(MIN_CHECK_IN_INTERVAL_SECONDS, `interval_seconds must be at least ${MIN_CHECK_IN_INTERVAL_SECONDS} seconds (5 minutes)`)
20
+ .optional()
21
+ .describe(`Set a recurring interval in seconds between future check-ins for this task (minimum ${MIN_CHECK_IN_INTERVAL_SECONDS} seconds / 5 minutes).`),
22
+ next_check_in_seconds: relaxedNumber
23
+ .int()
24
+ .min(MIN_NEXT_CHECK_IN_SECONDS, `next_check_in_seconds must be at least ${MIN_NEXT_CHECK_IN_SECONDS} seconds`)
25
+ .optional()
26
+ .describe(`Schedule the next check-in specifically after this many seconds from now (minimum ${MIN_NEXT_CHECK_IN_SECONDS} seconds).`),
27
+ });
28
+ export function createConfigureTaskCheckInToolDefinition(configureTaskCheckIn) {
29
+ return {
30
+ name: 'configure_task_check_in',
31
+ description: 'Configure or mute proactive check-ins for an active background shell job or subagent. ' +
32
+ 'Use this to mute future check-ins when a task is expected to run quietly until completion, or to adjust how frequently or when next you want to be checked in on.',
33
+ parameters: configureTaskCheckInSchema,
34
+ needsApproval: () => false,
35
+ parallelSafe: true,
36
+ execute: (rawParams) => {
37
+ const parsed = configureTaskCheckInSchema.safeParse(rawParams);
38
+ if (!parsed.success) {
39
+ return JSON.stringify({
40
+ ok: false,
41
+ error: parsed.error.issues.map((i) => i.message).join('; '),
42
+ });
43
+ }
44
+ try {
45
+ const result = configureTaskCheckIn(parsed.data);
46
+ return JSON.stringify(result);
47
+ }
48
+ catch (error) {
49
+ return JSON.stringify({
50
+ ok: false,
51
+ error: error?.message || String(error),
52
+ });
53
+ }
54
+ },
55
+ formatCommandMessage: formatConfigureTaskCheckInCommandMessage,
56
+ };
57
+ }
58
+ export const formatConfigureTaskCheckInCommandMessage = (item, index, toolCallArgumentsById) => {
59
+ const callId = getCallIdFromItem(item);
60
+ const fallbackArgs = callId && toolCallArgumentsById.has(callId) ? toolCallArgumentsById.get(callId) : null;
61
+ const args = normalizeToolArguments(item?.rawItem?.arguments ?? item?.arguments) ?? normalizeToolArguments(fallbackArgs) ?? {};
62
+ const rawOutput = getOutputText(item);
63
+ const result = safeJsonParse(rawOutput);
64
+ const target = args.target ?? 'task';
65
+ const success = result !== null && result.ok;
66
+ const command = success
67
+ ? `configure_task_check_in [${target}] — updated`
68
+ : `configure_task_check_in [${target}] — failed`;
69
+ const output = success
70
+ ? result.message ?? `Check-in settings updated for ${target}.`
71
+ : `Failed to configure check-in for ${target}: ${result?.error ?? rawOutput ?? 'unknown error'}`;
72
+ return [
73
+ createBaseMessage(item, index, 0, false, {
74
+ command,
75
+ output,
76
+ success,
77
+ toolName: 'configure_task_check_in',
78
+ toolArgs: args,
79
+ }),
80
+ ];
81
+ };
82
+ //# sourceMappingURL=configure-task-check-in.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configure-task-check-in.js","sourceRoot":"","sources":["../../../source/tools/agent/configure-task-check-in.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,10 @@ declare const runSubagentAsyncSchema: z.ZodObject<{
10
10
  task: z.ZodString;
11
11
  name: z.ZodOptional<z.ZodString>;
12
12
  continue_run_id: z.ZodOptional<z.ZodString>;
13
+ check_in: z.ZodOptional<z.ZodObject<{
14
+ enabled: z.ZodOptional<z.ZodBoolean>;
15
+ interval_seconds: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
16
+ }, z.core.$strip>>;
13
17
  }, z.core.$strip>;
14
18
  declare const getSubagentResultSchema: z.ZodObject<{
15
19
  runId: z.ZodString;
@@ -43,7 +47,13 @@ export type CancelRunAcknowledgement = {
43
47
  export declare const formatRunSubagentAsyncCommandMessage: FormatCommandMessage;
44
48
  export declare const formatGetSubagentResultCommandMessage: FormatCommandMessage;
45
49
  /** @deprecated Historical compatibility only. New agents register the unified run_subagent tool. */
46
- export declare function createRunSubagentAsyncToolDefinition(runSubagentAsync: (params: RunSubagentAsyncParams, context?: unknown, details?: unknown) => Promise<SubagentRunHandle>): ToolDefinition<typeof runSubagentAsyncSchema>;
50
+ export declare function createRunSubagentAsyncToolDefinition(runSubagentAsync: (params: RunSubagentAsyncParams, context?: unknown, details?: unknown) => Promise<SubagentRunHandle>, configureCheckIn?: (target: {
51
+ kind: 'shell' | 'subagent';
52
+ id: string;
53
+ }, options: {
54
+ enabled?: boolean;
55
+ intervalMs?: number;
56
+ }) => void): ToolDefinition<typeof runSubagentAsyncSchema>;
47
57
  export declare function createGetSubagentResultToolDefinition(getSubagentResult: (params: GetSubagentResultParams, context?: unknown, details?: unknown) => Promise<SubagentResult>, getSubagentStatus: (params: GetSubagentStatusParams, context?: unknown, details?: unknown) => SubagentRunStatus | SubagentRunStatus[]): ToolDefinition<typeof getSubagentResultSchema>;
48
58
  export declare const formatGetSubagentStatusCommandMessage: FormatCommandMessage;
49
59
  export declare function createGetSubagentStatusToolDefinition(getSubagentStatus: (params: GetSubagentStatusParams, context?: unknown, details?: unknown) => SubagentRunStatus | SubagentRunStatus[], now?: () => number): ToolDefinition<typeof getSubagentStatusSchema>;
@@ -1 +1 @@
1
- {"version":3,"file":"run-subagent-async.d.ts","sourceRoot":"","sources":["../../../source/tools/agent/run-subagent-async.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-subagent-async.d.ts","sourceRoot":"","sources":["../../../source/tools/agent/run-subagent-async.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { getOutputText, normalizeToolArguments, createBaseMessage, getCallIdFrom
3
3
  import { SUBAGENT_RUN_NAME_PATTERN, SubagentRegistryError } from '../../services/subagents/subagent-async-registry.js';
4
4
  import { isAbortLike, truncatePreview, formatSubagentResult } from '../../services/subagents/utils.js';
5
5
  import { BACKGROUND_SUBAGENT_QUIET_AFTER_MS, formatBackgroundTaskLiveness, normalizeBackgroundTaskActivity, } from '../../services/background-task-activity.js';
6
+ import { relaxedNumber } from '../utils.js';
6
7
  const ASYNC_ROLES = ['explorer', 'worker', 'mentor'];
7
8
  const runSubagentAsyncSchema = z.object({
8
9
  role: z.enum(ASYNC_ROLES).describe('The subagent role to use: explorer, worker, or mentor.'),
@@ -18,6 +19,20 @@ const runSubagentAsyncSchema = z.object({
18
19
  .string()
19
20
  .optional()
20
21
  .describe('Continue a completed run using its runId. Required for explicit session reuse.'),
22
+ check_in: z
23
+ .object({
24
+ enabled: z
25
+ .boolean()
26
+ .optional()
27
+ .describe('Enable or disable proactive check-ins for this background subagent. Defaults to true.'),
28
+ interval_seconds: relaxedNumber
29
+ .int()
30
+ .positive()
31
+ .optional()
32
+ .describe('Custom interval in seconds between proactive check-ins.'),
33
+ })
34
+ .optional()
35
+ .describe('Optional check-in configuration for this background subagent.'),
21
36
  });
22
37
  const getSubagentResultSchema = z.object({
23
38
  runId: z.string().describe('The runId returned by run_subagent with execution: "background".'),
@@ -118,7 +133,7 @@ export const formatGetSubagentResultCommandMessage = (item, index, toolCallArgum
118
133
  ];
119
134
  };
120
135
  /** @deprecated Historical compatibility only. New agents register the unified run_subagent tool. */
121
- export function createRunSubagentAsyncToolDefinition(runSubagentAsync) {
136
+ export function createRunSubagentAsyncToolDefinition(runSubagentAsync, configureCheckIn) {
122
137
  return {
123
138
  name: 'run_subagent_async',
124
139
  description: 'Start a subagent that runs asynchronously in the background and returns a runId immediately — the call does NOT block. ' +
@@ -133,6 +148,12 @@ export function createRunSubagentAsyncToolDefinition(runSubagentAsync) {
133
148
  execute: async (params, context, details) => {
134
149
  try {
135
150
  const handle = await runSubagentAsync(params, context, details);
151
+ if (params.check_in !== undefined && configureCheckIn) {
152
+ configureCheckIn({ kind: 'subagent', id: handle.runId }, {
153
+ enabled: params.check_in.enabled,
154
+ intervalMs: params.check_in.interval_seconds !== undefined ? params.check_in.interval_seconds * 1000 : undefined,
155
+ });
156
+ }
136
157
  const handleOutput = { runId: handle.runId, status: handle.status };
137
158
  if (handle.name)
138
159
  handleOutput.name = handle.name;