takt 0.41.0 → 0.43.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 (541) hide show
  1. package/README.md +59 -28
  2. package/builtins/en/config.yaml +9 -1
  3. package/builtins/en/facets/instructions/dual-team-leader-implement.md +7 -2
  4. package/builtins/en/facets/instructions/fix-maintenance.md +43 -0
  5. package/builtins/en/facets/instructions/implement-maintenance.md +72 -0
  6. package/builtins/en/facets/instructions/plan-maintenance.md +51 -0
  7. package/builtins/en/facets/instructions/review-coding.md +8 -0
  8. package/builtins/en/facets/instructions/supervise-maintenance.md +110 -0
  9. package/builtins/en/facets/instructions/team-leader-implement.md +6 -1
  10. package/builtins/en/facets/instructions/write-tests-first.md +5 -0
  11. package/builtins/en/facets/instructions/write-tests-maintenance.md +45 -0
  12. package/builtins/en/facets/knowledge/architecture.md +18 -13
  13. package/builtins/en/facets/knowledge/cqrs-es.md +48 -0
  14. package/builtins/en/facets/knowledge/existing-system.md +70 -0
  15. package/builtins/en/facets/knowledge/frontend.md +25 -0
  16. package/builtins/en/facets/knowledge/react.md +35 -0
  17. package/builtins/en/facets/output-contracts/coding-review.md +41 -0
  18. package/builtins/en/facets/output-contracts/frontend-review.md +1 -0
  19. package/builtins/en/facets/output-contracts/maintenance-scope.md +29 -0
  20. package/builtins/en/facets/personas/coding-reviewer.md +27 -0
  21. package/builtins/en/facets/personas/dual-supervisor.md +1 -1
  22. package/builtins/en/facets/policies/ai-antipattern.md +59 -0
  23. package/builtins/en/facets/policies/coding.md +85 -3
  24. package/builtins/en/facets/policies/existing-system-respect.md +73 -0
  25. package/builtins/en/facets/policies/qa.md +3 -1
  26. package/builtins/en/facets/policies/review.md +25 -12
  27. package/builtins/en/facets/policies/testing.md +33 -0
  28. package/builtins/en/workflow-categories.yaml +1 -0
  29. package/builtins/en/workflows/auto-improvement-loop.yaml +20 -4
  30. package/builtins/en/workflows/default-peer-review.yaml +25 -3
  31. package/builtins/en/workflows/frontend-maintenance.yaml +499 -0
  32. package/builtins/en/workflows/peer-review.yaml +23 -1
  33. package/builtins/en/workflows/review-fix-takt-default.yaml +30 -2
  34. package/builtins/ja/config.yaml +9 -1
  35. package/builtins/ja/facets/instructions/dual-team-leader-implement.md +7 -2
  36. package/builtins/ja/facets/instructions/fix-maintenance.md +43 -0
  37. package/builtins/ja/facets/instructions/implement-maintenance.md +72 -0
  38. package/builtins/ja/facets/instructions/plan-maintenance.md +51 -0
  39. package/builtins/ja/facets/instructions/review-coding.md +8 -0
  40. package/builtins/ja/facets/instructions/supervise-maintenance.md +110 -0
  41. package/builtins/ja/facets/instructions/team-leader-implement.md +6 -1
  42. package/builtins/ja/facets/instructions/write-tests-first.md +5 -0
  43. package/builtins/ja/facets/instructions/write-tests-maintenance.md +45 -0
  44. package/builtins/ja/facets/knowledge/architecture.md +18 -13
  45. package/builtins/ja/facets/knowledge/cqrs-es.md +48 -0
  46. package/builtins/ja/facets/knowledge/existing-system.md +70 -0
  47. package/builtins/ja/facets/knowledge/frontend.md +25 -0
  48. package/builtins/ja/facets/knowledge/react.md +35 -0
  49. package/builtins/ja/facets/output-contracts/coding-review.md +41 -0
  50. package/builtins/ja/facets/output-contracts/frontend-review.md +1 -0
  51. package/builtins/ja/facets/output-contracts/maintenance-scope.md +29 -0
  52. package/builtins/ja/facets/personas/coding-reviewer.md +27 -0
  53. package/builtins/ja/facets/personas/dual-supervisor.md +2 -2
  54. package/builtins/ja/facets/policies/ai-antipattern.md +59 -0
  55. package/builtins/ja/facets/policies/coding.md +85 -3
  56. package/builtins/ja/facets/policies/existing-system-respect.md +73 -0
  57. package/builtins/ja/facets/policies/qa.md +3 -1
  58. package/builtins/ja/facets/policies/review.md +25 -12
  59. package/builtins/ja/facets/policies/testing.md +33 -0
  60. package/builtins/ja/workflow-categories.yaml +1 -0
  61. package/builtins/ja/workflows/auto-improvement-loop.yaml +20 -4
  62. package/builtins/ja/workflows/default-peer-review.yaml +25 -3
  63. package/builtins/ja/workflows/frontend-maintenance.yaml +499 -0
  64. package/builtins/ja/workflows/peer-review.yaml +23 -1
  65. package/builtins/ja/workflows/review-fix-takt-default.yaml +30 -2
  66. package/builtins/skill/references/yaml-schema.md +8 -3
  67. package/builtins/skill-codex/references/yaml-schema.md +8 -3
  68. package/dist/agents/decompose-task-usecase.d.ts.map +1 -1
  69. package/dist/agents/decompose-task-usecase.js +3 -2
  70. package/dist/agents/decompose-task-usecase.js.map +1 -1
  71. package/dist/agents/judge-status-usecase.d.ts.map +1 -1
  72. package/dist/agents/judge-status-usecase.js +4 -3
  73. package/dist/agents/judge-status-usecase.js.map +1 -1
  74. package/dist/agents/provider-call-options.d.ts +4 -0
  75. package/dist/agents/provider-call-options.d.ts.map +1 -0
  76. package/dist/agents/provider-call-options.js +9 -0
  77. package/dist/agents/provider-call-options.js.map +1 -0
  78. package/dist/agents/runner.js +1 -1
  79. package/dist/agents/runner.js.map +1 -1
  80. package/dist/agents/structured-caller/prompt-based-structured-caller.d.ts.map +1 -1
  81. package/dist/agents/structured-caller/prompt-based-structured-caller.js +5 -4
  82. package/dist/agents/structured-caller/prompt-based-structured-caller.js.map +1 -1
  83. package/dist/agents/team-leader-structured-output.d.ts.map +1 -1
  84. package/dist/agents/team-leader-structured-output.js +21 -0
  85. package/dist/agents/team-leader-structured-output.js.map +1 -1
  86. package/dist/app/cli/commands.js +7 -1
  87. package/dist/app/cli/commands.js.map +1 -1
  88. package/dist/app/cli/program.js +1 -1
  89. package/dist/app/cli/program.js.map +1 -1
  90. package/dist/app/cli/routing.d.ts.map +1 -1
  91. package/dist/app/cli/routing.js +8 -1
  92. package/dist/app/cli/routing.js.map +1 -1
  93. package/dist/core/models/assistant-config.d.ts +4 -0
  94. package/dist/core/models/assistant-config.d.ts.map +1 -0
  95. package/dist/core/models/assistant-config.js +4 -0
  96. package/dist/core/models/assistant-config.js.map +1 -0
  97. package/dist/core/models/config-schemas.d.ts +160 -9
  98. package/dist/core/models/config-schemas.d.ts.map +1 -1
  99. package/dist/core/models/config-schemas.js +12 -2
  100. package/dist/core/models/config-schemas.js.map +1 -1
  101. package/dist/core/models/config-types.d.ts +30 -4
  102. package/dist/core/models/config-types.d.ts.map +1 -1
  103. package/dist/core/models/index.d.ts +1 -1
  104. package/dist/core/models/index.d.ts.map +1 -1
  105. package/dist/core/models/index.js.map +1 -1
  106. package/dist/core/models/provider-profiles.d.ts +1 -1
  107. package/dist/core/models/provider-profiles.d.ts.map +1 -1
  108. package/dist/core/models/quality-gate-defaults.d.ts +2 -0
  109. package/dist/core/models/quality-gate-defaults.d.ts.map +1 -0
  110. package/dist/core/models/quality-gate-defaults.js +2 -0
  111. package/dist/core/models/quality-gate-defaults.js.map +1 -0
  112. package/dist/core/models/response.d.ts +1 -1
  113. package/dist/core/models/response.d.ts.map +1 -1
  114. package/dist/core/models/response.js +1 -1
  115. package/dist/core/models/response.js.map +1 -1
  116. package/dist/core/models/schema-base.d.ts +80 -3
  117. package/dist/core/models/schema-base.d.ts.map +1 -1
  118. package/dist/core/models/schema-base.js +76 -2
  119. package/dist/core/models/schema-base.js.map +1 -1
  120. package/dist/core/models/types.d.ts +2 -2
  121. package/dist/core/models/types.d.ts.map +1 -1
  122. package/dist/core/models/workflow-provider-options.d.ts +7 -0
  123. package/dist/core/models/workflow-provider-options.d.ts.map +1 -1
  124. package/dist/core/models/workflow-schemas.d.ts +368 -51
  125. package/dist/core/models/workflow-schemas.d.ts.map +1 -1
  126. package/dist/core/models/workflow-system-input-types.d.ts +8 -1
  127. package/dist/core/models/workflow-system-input-types.d.ts.map +1 -1
  128. package/dist/core/models/workflow-system-schemas.d.ts +7 -1
  129. package/dist/core/models/workflow-system-schemas.d.ts.map +1 -1
  130. package/dist/core/models/workflow-system-schemas.js +12 -1
  131. package/dist/core/models/workflow-system-schemas.js.map +1 -1
  132. package/dist/core/models/workflow-types.d.ts +13 -5
  133. package/dist/core/models/workflow-types.d.ts.map +1 -1
  134. package/dist/core/models/workflow-types.js.map +1 -1
  135. package/dist/core/workflow/engine/OptionsBuilder.d.ts +1 -0
  136. package/dist/core/workflow/engine/OptionsBuilder.d.ts.map +1 -1
  137. package/dist/core/workflow/engine/OptionsBuilder.js +9 -4
  138. package/dist/core/workflow/engine/OptionsBuilder.js.map +1 -1
  139. package/dist/core/workflow/engine/ParallelRunner.d.ts +11 -0
  140. package/dist/core/workflow/engine/ParallelRunner.d.ts.map +1 -1
  141. package/dist/core/workflow/engine/ParallelRunner.js +139 -19
  142. package/dist/core/workflow/engine/ParallelRunner.js.map +1 -1
  143. package/dist/core/workflow/engine/TeamLeaderRunner.d.ts.map +1 -1
  144. package/dist/core/workflow/engine/TeamLeaderRunner.js +55 -23
  145. package/dist/core/workflow/engine/TeamLeaderRunner.js.map +1 -1
  146. package/dist/core/workflow/engine/WorkflowEngine.d.ts +1 -0
  147. package/dist/core/workflow/engine/WorkflowEngine.d.ts.map +1 -1
  148. package/dist/core/workflow/engine/WorkflowEngine.js +29 -4
  149. package/dist/core/workflow/engine/WorkflowEngine.js.map +1 -1
  150. package/dist/core/workflow/engine/WorkflowEngineSetup.d.ts.map +1 -1
  151. package/dist/core/workflow/engine/WorkflowEngineSetup.js +2 -0
  152. package/dist/core/workflow/engine/WorkflowEngineSetup.js.map +1 -1
  153. package/dist/core/workflow/engine/WorkflowRunLoop.d.ts +8 -0
  154. package/dist/core/workflow/engine/WorkflowRunLoop.d.ts.map +1 -1
  155. package/dist/core/workflow/engine/WorkflowRunLoop.js +78 -7
  156. package/dist/core/workflow/engine/WorkflowRunLoop.js.map +1 -1
  157. package/dist/core/workflow/engine/team-leader-execution.d.ts +1 -0
  158. package/dist/core/workflow/engine/team-leader-execution.d.ts.map +1 -1
  159. package/dist/core/workflow/engine/team-leader-execution.js +22 -0
  160. package/dist/core/workflow/engine/team-leader-execution.js.map +1 -1
  161. package/dist/core/workflow/engine/team-leader-timeout-fallback.d.ts +13 -0
  162. package/dist/core/workflow/engine/team-leader-timeout-fallback.d.ts.map +1 -0
  163. package/dist/core/workflow/engine/team-leader-timeout-fallback.js +125 -0
  164. package/dist/core/workflow/engine/team-leader-timeout-fallback.js.map +1 -0
  165. package/dist/core/workflow/instruction/InstructionBuilder.d.ts.map +1 -1
  166. package/dist/core/workflow/instruction/InstructionBuilder.js +4 -3
  167. package/dist/core/workflow/instruction/InstructionBuilder.js.map +1 -1
  168. package/dist/core/workflow/observability/workflowSpans.d.ts +28 -0
  169. package/dist/core/workflow/observability/workflowSpans.d.ts.map +1 -0
  170. package/dist/core/workflow/observability/workflowSpans.js +107 -0
  171. package/dist/core/workflow/observability/workflowSpans.js.map +1 -0
  172. package/dist/core/workflow/part-definition-validator.d.ts.map +1 -1
  173. package/dist/core/workflow/part-definition-validator.js +4 -0
  174. package/dist/core/workflow/part-definition-validator.js.map +1 -1
  175. package/dist/core/workflow/permission-profile-resolution.d.ts.map +1 -1
  176. package/dist/core/workflow/permission-profile-resolution.js +1 -0
  177. package/dist/core/workflow/permission-profile-resolution.js.map +1 -1
  178. package/dist/core/workflow/phase-runner.d.ts +1 -3
  179. package/dist/core/workflow/phase-runner.d.ts.map +1 -1
  180. package/dist/core/workflow/phase-runner.js.map +1 -1
  181. package/dist/core/workflow/quality-gates/commandGateMessage.d.ts +4 -0
  182. package/dist/core/workflow/quality-gates/commandGateMessage.d.ts.map +1 -0
  183. package/dist/core/workflow/quality-gates/commandGateMessage.js +84 -0
  184. package/dist/core/workflow/quality-gates/commandGateMessage.js.map +1 -0
  185. package/dist/core/workflow/quality-gates/commandGateRunner.d.ts +3 -0
  186. package/dist/core/workflow/quality-gates/commandGateRunner.d.ts.map +1 -0
  187. package/dist/core/workflow/quality-gates/commandGateRunner.js +242 -0
  188. package/dist/core/workflow/quality-gates/commandGateRunner.js.map +1 -0
  189. package/dist/core/workflow/quality-gates/qualityGateRunner.d.ts +3 -0
  190. package/dist/core/workflow/quality-gates/qualityGateRunner.d.ts.map +1 -0
  191. package/dist/core/workflow/quality-gates/qualityGateRunner.js +29 -0
  192. package/dist/core/workflow/quality-gates/qualityGateRunner.js.map +1 -0
  193. package/dist/core/workflow/quality-gates/types.d.ts +41 -0
  194. package/dist/core/workflow/quality-gates/types.d.ts.map +1 -0
  195. package/dist/core/workflow/quality-gates/types.js +2 -0
  196. package/dist/core/workflow/quality-gates/types.js.map +1 -0
  197. package/dist/core/workflow/report-phase-runner.d.ts.map +1 -1
  198. package/dist/core/workflow/report-phase-runner.js +3 -2
  199. package/dist/core/workflow/report-phase-runner.js.map +1 -1
  200. package/dist/core/workflow/run/run-meta.d.ts +3 -1
  201. package/dist/core/workflow/run/run-meta.d.ts.map +1 -1
  202. package/dist/core/workflow/run/run-meta.js +2 -0
  203. package/dist/core/workflow/run/run-meta.js.map +1 -1
  204. package/dist/core/workflow/run/run-slug.d.ts +2 -0
  205. package/dist/core/workflow/run/run-slug.d.ts.map +1 -0
  206. package/dist/core/workflow/run/run-slug.js +19 -0
  207. package/dist/core/workflow/run/run-slug.js.map +1 -0
  208. package/dist/core/workflow/status-judgment-phase.d.ts.map +1 -1
  209. package/dist/core/workflow/status-judgment-phase.js +7 -3
  210. package/dist/core/workflow/status-judgment-phase.js.map +1 -1
  211. package/dist/core/workflow/system/system-step-effect-runner.d.ts.map +1 -1
  212. package/dist/core/workflow/system/system-step-effect-runner.js +16 -1
  213. package/dist/core/workflow/system/system-step-effect-runner.js.map +1 -1
  214. package/dist/core/workflow/team-leader-continuation-ids.d.ts +3 -0
  215. package/dist/core/workflow/team-leader-continuation-ids.d.ts.map +1 -0
  216. package/dist/core/workflow/team-leader-continuation-ids.js +6 -0
  217. package/dist/core/workflow/team-leader-continuation-ids.js.map +1 -0
  218. package/dist/core/workflow/types.d.ts +7 -1
  219. package/dist/core/workflow/types.d.ts.map +1 -1
  220. package/dist/features/interactive/assistantInitFiles.d.ts +2 -0
  221. package/dist/features/interactive/assistantInitFiles.d.ts.map +1 -0
  222. package/dist/features/interactive/assistantInitFiles.js +110 -0
  223. package/dist/features/interactive/assistantInitFiles.js.map +1 -0
  224. package/dist/features/interactive/conversationLoop.d.ts +5 -1
  225. package/dist/features/interactive/conversationLoop.d.ts.map +1 -1
  226. package/dist/features/interactive/conversationLoop.js +33 -11
  227. package/dist/features/interactive/conversationLoop.js.map +1 -1
  228. package/dist/features/interactive/imageAttachments.d.ts +20 -0
  229. package/dist/features/interactive/imageAttachments.d.ts.map +1 -0
  230. package/dist/features/interactive/imageAttachments.js +75 -0
  231. package/dist/features/interactive/imageAttachments.js.map +1 -0
  232. package/dist/features/interactive/index.d.ts +2 -1
  233. package/dist/features/interactive/index.d.ts.map +1 -1
  234. package/dist/features/interactive/index.js +1 -1
  235. package/dist/features/interactive/index.js.map +1 -1
  236. package/dist/features/interactive/inlineImagePaste.d.ts +21 -0
  237. package/dist/features/interactive/inlineImagePaste.d.ts.map +1 -0
  238. package/dist/features/interactive/inlineImagePaste.js +136 -0
  239. package/dist/features/interactive/inlineImagePaste.js.map +1 -0
  240. package/dist/features/interactive/instructModeTypes.d.ts +23 -0
  241. package/dist/features/interactive/instructModeTypes.d.ts.map +1 -0
  242. package/dist/features/interactive/instructModeTypes.js +2 -0
  243. package/dist/features/interactive/instructModeTypes.js.map +1 -0
  244. package/dist/features/interactive/interactive-summary.d.ts +1 -1
  245. package/dist/features/interactive/interactive-summary.d.ts.map +1 -1
  246. package/dist/features/interactive/interactive-summary.js +4 -3
  247. package/dist/features/interactive/interactive-summary.js.map +1 -1
  248. package/dist/features/interactive/interactive.d.ts +8 -3
  249. package/dist/features/interactive/interactive.d.ts.map +1 -1
  250. package/dist/features/interactive/interactive.js +4 -0
  251. package/dist/features/interactive/interactive.js.map +1 -1
  252. package/dist/features/interactive/interactiveInput.d.ts +2 -1
  253. package/dist/features/interactive/interactiveInput.d.ts.map +1 -1
  254. package/dist/features/interactive/interactiveInput.js +5 -1
  255. package/dist/features/interactive/interactiveInput.js.map +1 -1
  256. package/dist/features/interactive/lineEditor.d.ts +2 -0
  257. package/dist/features/interactive/lineEditor.d.ts.map +1 -1
  258. package/dist/features/interactive/lineEditor.js +130 -9
  259. package/dist/features/interactive/lineEditor.js.map +1 -1
  260. package/dist/features/interactive/passthroughMode.d.ts.map +1 -1
  261. package/dist/features/interactive/passthroughMode.js +8 -4
  262. package/dist/features/interactive/passthroughMode.js.map +1 -1
  263. package/dist/features/interactive/promptSections.d.ts +2 -0
  264. package/dist/features/interactive/promptSections.d.ts.map +1 -1
  265. package/dist/features/interactive/promptSections.js +7 -1
  266. package/dist/features/interactive/promptSections.js.map +1 -1
  267. package/dist/features/interactive/quietMode.d.ts.map +1 -1
  268. package/dist/features/interactive/quietMode.js +12 -8
  269. package/dist/features/interactive/quietMode.js.map +1 -1
  270. package/dist/features/interactive/retryMode.d.ts +10 -13
  271. package/dist/features/interactive/retryMode.d.ts.map +1 -1
  272. package/dist/features/interactive/retryMode.js +42 -22
  273. package/dist/features/interactive/retryMode.js.map +1 -1
  274. package/dist/features/interactive/slashCommandRegistry.d.ts.map +1 -1
  275. package/dist/features/interactive/slashCommandRegistry.js +1 -0
  276. package/dist/features/interactive/slashCommandRegistry.js.map +1 -1
  277. package/dist/features/tasks/add/index.d.ts +4 -0
  278. package/dist/features/tasks/add/index.d.ts.map +1 -1
  279. package/dist/features/tasks/add/index.js +12 -29
  280. package/dist/features/tasks/add/index.js.map +1 -1
  281. package/dist/features/tasks/attachments.d.ts +19 -0
  282. package/dist/features/tasks/attachments.d.ts.map +1 -0
  283. package/dist/features/tasks/attachments.js +129 -0
  284. package/dist/features/tasks/attachments.js.map +1 -0
  285. package/dist/features/tasks/execute/resolveTask.d.ts.map +1 -1
  286. package/dist/features/tasks/execute/resolveTask.js +4 -3
  287. package/dist/features/tasks/execute/resolveTask.js.map +1 -1
  288. package/dist/features/tasks/execute/runMeta.d.ts +5 -1
  289. package/dist/features/tasks/execute/runMeta.d.ts.map +1 -1
  290. package/dist/features/tasks/execute/runMeta.js +10 -4
  291. package/dist/features/tasks/execute/runMeta.js.map +1 -1
  292. package/dist/features/tasks/execute/selectAndExecute.d.ts.map +1 -1
  293. package/dist/features/tasks/execute/selectAndExecute.js +48 -4
  294. package/dist/features/tasks/execute/selectAndExecute.js.map +1 -1
  295. package/dist/features/tasks/execute/taskSpecContext.d.ts +7 -2
  296. package/dist/features/tasks/execute/taskSpecContext.d.ts.map +1 -1
  297. package/dist/features/tasks/execute/taskSpecContext.js +23 -36
  298. package/dist/features/tasks/execute/taskSpecContext.js.map +1 -1
  299. package/dist/features/tasks/execute/taskWorkflowExecution.d.ts.map +1 -1
  300. package/dist/features/tasks/execute/taskWorkflowExecution.js +2 -1
  301. package/dist/features/tasks/execute/taskWorkflowExecution.js.map +1 -1
  302. package/dist/features/tasks/execute/traceReportRedaction.d.ts +0 -1
  303. package/dist/features/tasks/execute/traceReportRedaction.d.ts.map +1 -1
  304. package/dist/features/tasks/execute/traceReportRedaction.js +1 -9
  305. package/dist/features/tasks/execute/traceReportRedaction.js.map +1 -1
  306. package/dist/features/tasks/execute/types.d.ts +8 -0
  307. package/dist/features/tasks/execute/types.d.ts.map +1 -1
  308. package/dist/features/tasks/execute/workflowExecution.d.ts.map +1 -1
  309. package/dist/features/tasks/execute/workflowExecution.js +12 -1
  310. package/dist/features/tasks/execute/workflowExecution.js.map +1 -1
  311. package/dist/features/tasks/execute/workflowExecutionBootstrap.d.ts +5 -1
  312. package/dist/features/tasks/execute/workflowExecutionBootstrap.d.ts.map +1 -1
  313. package/dist/features/tasks/execute/workflowExecutionBootstrap.js +7 -2
  314. package/dist/features/tasks/execute/workflowExecutionBootstrap.js.map +1 -1
  315. package/dist/features/tasks/index.d.ts +1 -0
  316. package/dist/features/tasks/index.d.ts.map +1 -1
  317. package/dist/features/tasks/index.js +1 -0
  318. package/dist/features/tasks/index.js.map +1 -1
  319. package/dist/features/tasks/list/instructMode.d.ts +2 -20
  320. package/dist/features/tasks/list/instructMode.d.ts.map +1 -1
  321. package/dist/features/tasks/list/instructMode.js +15 -4
  322. package/dist/features/tasks/list/instructMode.js.map +1 -1
  323. package/dist/features/tasks/list/retryTaskSpecAttachments.d.ts +8 -0
  324. package/dist/features/tasks/list/retryTaskSpecAttachments.d.ts.map +1 -0
  325. package/dist/features/tasks/list/retryTaskSpecAttachments.js +87 -0
  326. package/dist/features/tasks/list/retryTaskSpecAttachments.js.map +1 -0
  327. package/dist/features/tasks/list/taskInstructionActions.d.ts.map +1 -1
  328. package/dist/features/tasks/list/taskInstructionActions.js +20 -2
  329. package/dist/features/tasks/list/taskInstructionActions.js.map +1 -1
  330. package/dist/features/tasks/list/taskRetryActions.d.ts.map +1 -1
  331. package/dist/features/tasks/list/taskRetryActions.js +24 -6
  332. package/dist/features/tasks/list/taskRetryActions.js.map +1 -1
  333. package/dist/features/tasks/resume/directInstructMode.d.ts +13 -0
  334. package/dist/features/tasks/resume/directInstructMode.d.ts.map +1 -0
  335. package/dist/features/tasks/resume/directInstructMode.js +67 -0
  336. package/dist/features/tasks/resume/directInstructMode.js.map +1 -0
  337. package/dist/features/tasks/resume/directRunFinder.d.ts +7 -0
  338. package/dist/features/tasks/resume/directRunFinder.d.ts.map +1 -0
  339. package/dist/features/tasks/resume/directRunFinder.js +43 -0
  340. package/dist/features/tasks/resume/directRunFinder.js.map +1 -0
  341. package/dist/features/tasks/resume/index.d.ts +3 -0
  342. package/dist/features/tasks/resume/index.d.ts.map +1 -0
  343. package/dist/features/tasks/resume/index.js +229 -0
  344. package/dist/features/tasks/resume/index.js.map +1 -0
  345. package/dist/features/tasks/taskSpecFile.d.ts +2 -0
  346. package/dist/features/tasks/taskSpecFile.d.ts.map +1 -0
  347. package/dist/features/tasks/taskSpecFile.js +38 -0
  348. package/dist/features/tasks/taskSpecFile.js.map +1 -0
  349. package/dist/infra/claude/executor.d.ts.map +1 -1
  350. package/dist/infra/claude/executor.js +27 -6
  351. package/dist/infra/claude/executor.js.map +1 -1
  352. package/dist/infra/claude/mcp-config.d.ts +7 -0
  353. package/dist/infra/claude/mcp-config.d.ts.map +1 -0
  354. package/dist/infra/claude/mcp-config.js +30 -0
  355. package/dist/infra/claude/mcp-config.js.map +1 -0
  356. package/dist/infra/claude-headless/client.d.ts.map +1 -1
  357. package/dist/infra/claude-headless/client.js +5 -40
  358. package/dist/infra/claude-headless/client.js.map +1 -1
  359. package/dist/infra/claude-headless/result-response.js +1 -1
  360. package/dist/infra/claude-headless/result-response.js.map +1 -1
  361. package/dist/infra/claude-terminal/client.d.ts +4 -0
  362. package/dist/infra/claude-terminal/client.d.ts.map +1 -0
  363. package/dist/infra/claude-terminal/client.js +314 -0
  364. package/dist/infra/claude-terminal/client.js.map +1 -0
  365. package/dist/infra/claude-terminal/command.d.ts +4 -0
  366. package/dist/infra/claude-terminal/command.d.ts.map +1 -0
  367. package/dist/infra/claude-terminal/command.js +50 -0
  368. package/dist/infra/claude-terminal/command.js.map +1 -0
  369. package/dist/infra/claude-terminal/response-normalizer.d.ts +14 -0
  370. package/dist/infra/claude-terminal/response-normalizer.d.ts.map +1 -0
  371. package/dist/infra/claude-terminal/response-normalizer.js +118 -0
  372. package/dist/infra/claude-terminal/response-normalizer.js.map +1 -0
  373. package/dist/infra/claude-terminal/tmux-backend.d.ts +7 -0
  374. package/dist/infra/claude-terminal/tmux-backend.d.ts.map +1 -0
  375. package/dist/infra/claude-terminal/tmux-backend.js +177 -0
  376. package/dist/infra/claude-terminal/tmux-backend.js.map +1 -0
  377. package/dist/infra/claude-terminal/transcript-reader.d.ts +13 -0
  378. package/dist/infra/claude-terminal/transcript-reader.d.ts.map +1 -0
  379. package/dist/infra/claude-terminal/transcript-reader.js +329 -0
  380. package/dist/infra/claude-terminal/transcript-reader.js.map +1 -0
  381. package/dist/infra/claude-terminal/types.d.ts +106 -0
  382. package/dist/infra/claude-terminal/types.d.ts.map +1 -0
  383. package/dist/infra/claude-terminal/types.js +2 -0
  384. package/dist/infra/claude-terminal/types.js.map +1 -0
  385. package/dist/infra/codex/CodexStreamHandler.d.ts +4 -2
  386. package/dist/infra/codex/CodexStreamHandler.d.ts.map +1 -1
  387. package/dist/infra/codex/CodexStreamHandler.js +55 -21
  388. package/dist/infra/codex/CodexStreamHandler.js.map +1 -1
  389. package/dist/infra/codex/client.d.ts +2 -0
  390. package/dist/infra/codex/client.d.ts.map +1 -1
  391. package/dist/infra/codex/client.js +42 -6
  392. package/dist/infra/codex/client.js.map +1 -1
  393. package/dist/infra/config/configNormalizers.d.ts +23 -16
  394. package/dist/infra/config/configNormalizers.d.ts.map +1 -1
  395. package/dist/infra/config/configNormalizers.js +69 -7
  396. package/dist/infra/config/configNormalizers.js.map +1 -1
  397. package/dist/infra/config/env/global-current-env-specs.d.ts.map +1 -1
  398. package/dist/infra/config/env/global-current-env-specs.js +7 -0
  399. package/dist/infra/config/env/global-current-env-specs.js.map +1 -1
  400. package/dist/infra/config/env/project-current-env-specs.d.ts.map +1 -1
  401. package/dist/infra/config/env/project-current-env-specs.js +7 -0
  402. package/dist/infra/config/env/project-current-env-specs.js.map +1 -1
  403. package/dist/infra/config/global/globalConfigCore.d.ts.map +1 -1
  404. package/dist/infra/config/global/globalConfigCore.js +5 -0
  405. package/dist/infra/config/global/globalConfigCore.js.map +1 -1
  406. package/dist/infra/config/global/globalConfigSerializer.d.ts.map +1 -1
  407. package/dist/infra/config/global/globalConfigSerializer.js +10 -0
  408. package/dist/infra/config/global/globalConfigSerializer.js.map +1 -1
  409. package/dist/infra/config/global/initialization.d.ts +1 -1
  410. package/dist/infra/config/global/initialization.d.ts.map +1 -1
  411. package/dist/infra/config/global/initialization.js +1 -0
  412. package/dist/infra/config/global/initialization.js.map +1 -1
  413. package/dist/infra/config/loaders/qualityGateOverrides.d.ts +3 -2
  414. package/dist/infra/config/loaders/qualityGateOverrides.d.ts.map +1 -1
  415. package/dist/infra/config/loaders/qualityGateOverrides.js +42 -3
  416. package/dist/infra/config/loaders/qualityGateOverrides.js.map +1 -1
  417. package/dist/infra/config/loaders/workflowFileLoader.d.ts.map +1 -1
  418. package/dist/infra/config/loaders/workflowFileLoader.js +2 -2
  419. package/dist/infra/config/loaders/workflowFileLoader.js.map +1 -1
  420. package/dist/infra/config/loaders/workflowNormalizationPolicies.d.ts +3 -1
  421. package/dist/infra/config/loaders/workflowNormalizationPolicies.d.ts.map +1 -1
  422. package/dist/infra/config/loaders/workflowNormalizationPolicies.js +28 -0
  423. package/dist/infra/config/loaders/workflowNormalizationPolicies.js.map +1 -1
  424. package/dist/infra/config/loaders/workflowParser.d.ts +2 -2
  425. package/dist/infra/config/loaders/workflowParser.d.ts.map +1 -1
  426. package/dist/infra/config/loaders/workflowParser.js +3 -2
  427. package/dist/infra/config/loaders/workflowParser.js.map +1 -1
  428. package/dist/infra/config/loaders/workflowStepNormalizer.d.ts.map +1 -1
  429. package/dist/infra/config/loaders/workflowStepNormalizer.js +2 -1
  430. package/dist/infra/config/loaders/workflowStepNormalizer.js.map +1 -1
  431. package/dist/infra/config/observabilityConfig.d.ts +13 -0
  432. package/dist/infra/config/observabilityConfig.d.ts.map +1 -0
  433. package/dist/infra/config/observabilityConfig.js +52 -0
  434. package/dist/infra/config/observabilityConfig.js.map +1 -0
  435. package/dist/infra/config/project/projectConfig.d.ts.map +1 -1
  436. package/dist/infra/config/project/projectConfig.js +23 -5
  437. package/dist/infra/config/project/projectConfig.js.map +1 -1
  438. package/dist/infra/config/project/projectConfigTransforms.d.ts +5 -1
  439. package/dist/infra/config/project/projectConfigTransforms.d.ts.map +1 -1
  440. package/dist/infra/config/project/projectConfigTransforms.js +8 -0
  441. package/dist/infra/config/project/projectConfigTransforms.js.map +1 -1
  442. package/dist/infra/config/providerOptions.d.ts +8 -2
  443. package/dist/infra/config/providerOptions.d.ts.map +1 -1
  444. package/dist/infra/config/providerOptions.js +49 -1
  445. package/dist/infra/config/providerOptions.js.map +1 -1
  446. package/dist/infra/config/providerOptionsContract.d.ts +3 -3
  447. package/dist/infra/config/providerOptionsContract.d.ts.map +1 -1
  448. package/dist/infra/config/providerOptionsContract.js +14 -0
  449. package/dist/infra/config/providerOptionsContract.js.map +1 -1
  450. package/dist/infra/config/resolveConfigValue.d.ts.map +1 -1
  451. package/dist/infra/config/resolveConfigValue.js +18 -0
  452. package/dist/infra/config/resolveConfigValue.js.map +1 -1
  453. package/dist/infra/config/resolvedConfig.d.ts +2 -1
  454. package/dist/infra/config/resolvedConfig.d.ts.map +1 -1
  455. package/dist/infra/config/traced/tracedConfigSchema.d.ts.map +1 -1
  456. package/dist/infra/config/traced/tracedConfigSchema.js +16 -0
  457. package/dist/infra/config/traced/tracedConfigSchema.js.map +1 -1
  458. package/dist/infra/git/format.d.ts.map +1 -1
  459. package/dist/infra/git/format.js +75 -8
  460. package/dist/infra/git/format.js.map +1 -1
  461. package/dist/infra/git/index.d.ts +1 -1
  462. package/dist/infra/git/index.d.ts.map +1 -1
  463. package/dist/infra/git/types.d.ts +5 -0
  464. package/dist/infra/git/types.d.ts.map +1 -1
  465. package/dist/infra/github/pr.d.ts.map +1 -1
  466. package/dist/infra/github/pr.js +174 -28
  467. package/dist/infra/github/pr.js.map +1 -1
  468. package/dist/infra/observability/otelFoundation.d.ts +6 -0
  469. package/dist/infra/observability/otelFoundation.d.ts.map +1 -0
  470. package/dist/infra/observability/otelFoundation.js +89 -0
  471. package/dist/infra/observability/otelFoundation.js.map +1 -0
  472. package/dist/infra/opencode/client.d.ts.map +1 -1
  473. package/dist/infra/opencode/client.js +19 -15
  474. package/dist/infra/opencode/client.js.map +1 -1
  475. package/dist/infra/providers/claude-terminal.d.ts +6 -0
  476. package/dist/infra/providers/claude-terminal.d.ts.map +1 -0
  477. package/dist/infra/providers/claude-terminal.js +70 -0
  478. package/dist/infra/providers/claude-terminal.js.map +1 -0
  479. package/dist/infra/providers/index.d.ts.map +1 -1
  480. package/dist/infra/providers/index.js +2 -0
  481. package/dist/infra/providers/index.js.map +1 -1
  482. package/dist/infra/providers/provider-capabilities.d.ts +1 -0
  483. package/dist/infra/providers/provider-capabilities.d.ts.map +1 -1
  484. package/dist/infra/providers/provider-capabilities.js +16 -0
  485. package/dist/infra/providers/provider-capabilities.js.map +1 -1
  486. package/dist/infra/rate-limit/detection.d.ts +2 -0
  487. package/dist/infra/rate-limit/detection.d.ts.map +1 -1
  488. package/dist/infra/rate-limit/detection.js +14 -1
  489. package/dist/infra/rate-limit/detection.js.map +1 -1
  490. package/dist/infra/task/clone-base-branch.d.ts +11 -0
  491. package/dist/infra/task/clone-base-branch.d.ts.map +1 -1
  492. package/dist/infra/task/clone-base-branch.js +34 -4
  493. package/dist/infra/task/clone-base-branch.js.map +1 -1
  494. package/dist/infra/task/clone.d.ts +2 -1
  495. package/dist/infra/task/clone.d.ts.map +1 -1
  496. package/dist/infra/task/clone.js +20 -3
  497. package/dist/infra/task/clone.js.map +1 -1
  498. package/dist/infra/task/index.d.ts +1 -1
  499. package/dist/infra/task/index.d.ts.map +1 -1
  500. package/dist/infra/task/index.js +1 -1
  501. package/dist/infra/task/index.js.map +1 -1
  502. package/dist/infra/task/projectLocalTaktSync.d.ts.map +1 -1
  503. package/dist/infra/task/projectLocalTaktSync.js +6 -2
  504. package/dist/infra/task/projectLocalTaktSync.js.map +1 -1
  505. package/dist/infra/task/runner.d.ts +2 -2
  506. package/dist/infra/task/runner.d.ts.map +1 -1
  507. package/dist/infra/task/runner.js +4 -4
  508. package/dist/infra/task/runner.js.map +1 -1
  509. package/dist/infra/task/taskRecordMutations.d.ts +1 -1
  510. package/dist/infra/task/taskRecordMutations.d.ts.map +1 -1
  511. package/dist/infra/task/taskRecordMutations.js +5 -1
  512. package/dist/infra/task/taskRecordMutations.js.map +1 -1
  513. package/dist/infra/task/taskRetryService.d.ts +2 -2
  514. package/dist/infra/task/taskRetryService.d.ts.map +1 -1
  515. package/dist/infra/task/taskRetryService.js +4 -4
  516. package/dist/infra/task/taskRetryService.js.map +1 -1
  517. package/dist/infra/workflow/system/system-enqueue-effect.d.ts +2 -2
  518. package/dist/infra/workflow/system/system-enqueue-effect.d.ts.map +1 -1
  519. package/dist/infra/workflow/system/system-enqueue-effect.js +5 -2
  520. package/dist/infra/workflow/system/system-enqueue-effect.js.map +1 -1
  521. package/dist/shared/constants.d.ts +1 -0
  522. package/dist/shared/constants.d.ts.map +1 -1
  523. package/dist/shared/constants.js +1 -0
  524. package/dist/shared/constants.js.map +1 -1
  525. package/dist/shared/i18n/labels_en.yaml +3 -1
  526. package/dist/shared/i18n/labels_ja.yaml +3 -1
  527. package/dist/shared/prompts/en/score_direct_instruct_system_prompt.md +63 -0
  528. package/dist/shared/prompts/en/score_retry_system_prompt.md +2 -2
  529. package/dist/shared/prompts/ja/score_direct_instruct_system_prompt.md +63 -0
  530. package/dist/shared/prompts/ja/score_retry_system_prompt.md +2 -2
  531. package/dist/shared/types/provider.d.ts +1 -1
  532. package/dist/shared/types/provider.d.ts.map +1 -1
  533. package/dist/shared/utils/debug.d.ts +2 -0
  534. package/dist/shared/utils/debug.d.ts.map +1 -1
  535. package/dist/shared/utils/debug.js +1 -0
  536. package/dist/shared/utils/debug.js.map +1 -1
  537. package/dist/shared/utils/sensitiveText.d.ts +2 -0
  538. package/dist/shared/utils/sensitiveText.d.ts.map +1 -0
  539. package/dist/shared/utils/sensitiveText.js +40 -0
  540. package/dist/shared/utils/sensitiveText.js.map +1 -0
  541. package/package.json +4 -2
@@ -0,0 +1,314 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ import { USAGE_MISSING_REASONS } from '../../core/logging/contracts.js';
3
+ import { AGENT_FAILURE_CATEGORIES, classifyAbortSignalReason, } from '../../shared/types/agent-failure.js';
4
+ import { createLogger, getErrorMessage } from '../../shared/utils/index.js';
5
+ import { prepareClaudeMcpConfig } from '../claude/mcp-config.js';
6
+ import { buildClaudeTerminalCommand } from './command.js';
7
+ import { normalizeClaudeTerminalResponse } from './response-normalizer.js';
8
+ import { ProjectClaudeTranscriptReader } from './transcript-reader.js';
9
+ import { TmuxTerminalBackend } from './tmux-backend.js';
10
+ const DEFAULT_BACKEND = 'tmux';
11
+ const DEFAULT_TIMEOUT_MS = 900000;
12
+ const DEFAULT_POLL_INTERVAL_MS = 500;
13
+ const log = createLogger('claude-terminal');
14
+ class ClaudeTerminalAbortError extends Error {
15
+ reason;
16
+ constructor(reason) {
17
+ super('Claude terminal execution aborted.');
18
+ this.reason = reason;
19
+ }
20
+ }
21
+ function createErrorResponse(agentName, message, failureCategory = AGENT_FAILURE_CATEGORIES.PROVIDER_ERROR, sessionId) {
22
+ return {
23
+ persona: agentName,
24
+ status: 'error',
25
+ content: message,
26
+ timestamp: new Date(),
27
+ sessionId,
28
+ error: message,
29
+ failureCategory,
30
+ providerUsage: {
31
+ usageMissing: true,
32
+ reason: USAGE_MISSING_REASONS.NOT_SUPPORTED_BY_PROVIDER,
33
+ },
34
+ };
35
+ }
36
+ function createAbortResponse(agentName, reason, sessionId) {
37
+ const failure = classifyAbortSignalReason(reason);
38
+ return createErrorResponse(agentName, failure.reason, failure.category, sessionId);
39
+ }
40
+ function resolveTerminalBackend(backendName, backend) {
41
+ if (backend) {
42
+ return backend;
43
+ }
44
+ if (backendName === 'tmux') {
45
+ return new TmuxTerminalBackend();
46
+ }
47
+ throw new Error(`Unsupported Claude terminal backend: ${backendName}`);
48
+ }
49
+ function emitInit(options, sessionId) {
50
+ if (!options.onStream || !options.model) {
51
+ return;
52
+ }
53
+ options.onStream({
54
+ type: 'init',
55
+ data: {
56
+ model: options.model,
57
+ sessionId,
58
+ },
59
+ });
60
+ }
61
+ function getUnsupportedCallOptionMessage(options) {
62
+ if (options.maxTurns !== undefined) {
63
+ return 'provider: claude-terminal does not support maxTurns because Claude Code terminal mode has no verified --max-turns option.';
64
+ }
65
+ return undefined;
66
+ }
67
+ function collectInteractiveEvents(events) {
68
+ return events.filter((event) => event.type === 'permission_request' || event.type === 'ask_user_question');
69
+ }
70
+ function formatPermissionDecision(decision) {
71
+ if (decision.behavior === 'allow') {
72
+ if (decision.updatedInput || decision.updatedPermissions) {
73
+ throw new Error('Claude terminal provider cannot apply updated permission input or rules.');
74
+ }
75
+ return 'yes';
76
+ }
77
+ if (decision.behavior === 'deny') {
78
+ if (decision.interrupt === true) {
79
+ throw new Error('Claude terminal provider cannot interrupt a terminal permission request from callback output.');
80
+ }
81
+ return decision.message ? `no\n${decision.message}` : 'no';
82
+ }
83
+ throw new Error('Claude terminal permission callback returned an invalid decision.');
84
+ }
85
+ function formatQuestionAnswers(answers) {
86
+ const answerText = Object.values(answers).filter((value) => value.length > 0).join('\n');
87
+ if (answerText.length === 0) {
88
+ throw new Error('Claude terminal ask-user callback returned no answer text.');
89
+ }
90
+ return answerText;
91
+ }
92
+ async function buildInteractiveEventReply(event, options) {
93
+ if (event.type === 'permission_request') {
94
+ if (!options.onPermissionRequest) {
95
+ throw new Error('Claude terminal provider received a permission request event but no onPermissionRequest handler is configured.');
96
+ }
97
+ const decision = await options.onPermissionRequest({
98
+ toolName: event.tool,
99
+ input: event.input,
100
+ });
101
+ return formatPermissionDecision(decision);
102
+ }
103
+ if (event.type === 'ask_user_question') {
104
+ if (!options.onAskUserQuestion) {
105
+ throw new Error('Claude terminal provider received an ask-user question event but no onAskUserQuestion handler is configured.');
106
+ }
107
+ const answers = await options.onAskUserQuestion({ questions: event.questions });
108
+ return formatQuestionAnswers(answers);
109
+ }
110
+ throw new Error('Claude terminal provider cannot reply to a non-interactive transcript event.');
111
+ }
112
+ export async function callClaudeTerminal(agentName, prompt, options) {
113
+ const backendName = options.backend ?? DEFAULT_BACKEND;
114
+ const timeoutMs = options.timeoutMs ?? DEFAULT_TIMEOUT_MS;
115
+ const pollIntervalMs = options.transcriptPollIntervalMs ?? DEFAULT_POLL_INTERVAL_MS;
116
+ const keepSession = options.keepSession === true;
117
+ const terminalBackend = resolveTerminalBackend(backendName, options.terminalBackend);
118
+ const transcriptReader = options.transcriptReader ?? new ProjectClaudeTranscriptReader();
119
+ const claudeSessionId = options.sessionId ?? randomUUID();
120
+ let responseSessionId = options.sessionId;
121
+ let terminalSession;
122
+ let stopRequested = false;
123
+ let cleanup;
124
+ let abortHandler;
125
+ let aborted = false;
126
+ let pendingStart;
127
+ async function stopSession() {
128
+ if (!terminalSession || stopRequested) {
129
+ return;
130
+ }
131
+ stopRequested = true;
132
+ await terminalBackend.stop(terminalSession);
133
+ }
134
+ function stopPendingSessionOnResolve(startPromise) {
135
+ startPromise
136
+ .then(async (session) => {
137
+ try {
138
+ await terminalBackend.stop(session);
139
+ }
140
+ catch (error) {
141
+ log.error('Failed to stop Claude terminal session', {
142
+ error: getErrorMessage(error),
143
+ session: session.name,
144
+ });
145
+ }
146
+ })
147
+ .catch((error) => {
148
+ log.error('Claude terminal session start failed after abort', {
149
+ error: getErrorMessage(error),
150
+ });
151
+ });
152
+ }
153
+ if (options.abortSignal?.aborted) {
154
+ return createAbortResponse(agentName, options.abortSignal.reason, responseSessionId);
155
+ }
156
+ const unsupportedMessage = getUnsupportedCallOptionMessage(options);
157
+ if (unsupportedMessage) {
158
+ return createErrorResponse(agentName, unsupportedMessage, AGENT_FAILURE_CATEGORIES.PROVIDER_ERROR, responseSessionId);
159
+ }
160
+ function withAbort(operation) {
161
+ const signal = options.abortSignal;
162
+ if (!signal) {
163
+ return operation();
164
+ }
165
+ if (signal.aborted) {
166
+ aborted = true;
167
+ return Promise.reject(new ClaudeTerminalAbortError(signal.reason));
168
+ }
169
+ return new Promise((resolve, reject) => {
170
+ const onAbort = () => {
171
+ aborted = true;
172
+ reject(new ClaudeTerminalAbortError(signal.reason));
173
+ };
174
+ signal.addEventListener('abort', onAbort, { once: true });
175
+ let operationPromise;
176
+ try {
177
+ operationPromise = operation();
178
+ }
179
+ catch (error) {
180
+ signal.removeEventListener('abort', onAbort);
181
+ reject(error);
182
+ return;
183
+ }
184
+ operationPromise.then(resolve, reject).finally(() => {
185
+ signal.removeEventListener('abort', onAbort);
186
+ });
187
+ });
188
+ }
189
+ if (options.abortSignal) {
190
+ abortHandler = () => {
191
+ aborted = true;
192
+ };
193
+ options.abortSignal?.addEventListener('abort', abortHandler, { once: true });
194
+ }
195
+ try {
196
+ const prepared = await prepareClaudeMcpConfig(options.mcpServers);
197
+ cleanup = prepared.cleanup;
198
+ if (options.abortSignal?.aborted) {
199
+ throw new ClaudeTerminalAbortError(options.abortSignal.reason);
200
+ }
201
+ const command = buildClaudeTerminalCommand({
202
+ pathToClaudeCodeExecutable: options.pathToClaudeCodeExecutable,
203
+ model: options.model,
204
+ effort: options.effort,
205
+ allowedTools: options.allowedTools,
206
+ mcpConfigPath: prepared.path,
207
+ permissionMode: options.permissionMode,
208
+ bypassPermissions: options.bypassPermissions,
209
+ sessionId: options.sessionId,
210
+ newSessionId: options.sessionId ? undefined : claudeSessionId,
211
+ systemPrompt: options.systemPrompt,
212
+ outputSchema: options.outputSchema,
213
+ });
214
+ const startedSession = await withAbort(() => {
215
+ const startPromise = terminalBackend.start({
216
+ cwd: options.cwd,
217
+ backend: backendName,
218
+ command,
219
+ });
220
+ pendingStart = startPromise;
221
+ return startPromise;
222
+ });
223
+ terminalSession = startedSession;
224
+ responseSessionId = claudeSessionId;
225
+ if (options.abortSignal?.aborted) {
226
+ return createAbortResponse(agentName, options.abortSignal.reason, responseSessionId);
227
+ }
228
+ let baseline = await withAbort(() => transcriptReader.readBaseline({
229
+ cwd: options.cwd,
230
+ sessionId: claudeSessionId,
231
+ }));
232
+ await withAbort(() => terminalBackend.pasteText(startedSession, prompt));
233
+ const session = await withAbort(() => transcriptReader.findSession({
234
+ cwd: options.cwd,
235
+ sessionId: claudeSessionId,
236
+ timeoutMs,
237
+ pollIntervalMs,
238
+ abortSignal: options.abortSignal,
239
+ }));
240
+ responseSessionId = session.sessionId;
241
+ emitInit(options, session.sessionId);
242
+ const handledEvents = [];
243
+ let response;
244
+ while (true) {
245
+ response = await withAbort(() => transcriptReader.waitForAssistantResponse({
246
+ session,
247
+ baseline,
248
+ cwd: options.cwd,
249
+ timeoutMs,
250
+ pollIntervalMs,
251
+ abortSignal: options.abortSignal,
252
+ }));
253
+ handledEvents.push(...response.events);
254
+ const interactiveEvents = collectInteractiveEvents(response.events);
255
+ if (interactiveEvents.length === 0) {
256
+ break;
257
+ }
258
+ baseline = await withAbort(() => transcriptReader.readBaseline({
259
+ cwd: options.cwd,
260
+ sessionId: session.sessionId,
261
+ }));
262
+ for (const event of interactiveEvents) {
263
+ const reply = await withAbort(() => buildInteractiveEventReply(event, options));
264
+ await withAbort(() => terminalBackend.pasteText(startedSession, reply));
265
+ }
266
+ }
267
+ return normalizeClaudeTerminalResponse({
268
+ agentName,
269
+ sessionId: response.sessionId,
270
+ assistantText: response.assistantText,
271
+ events: handledEvents,
272
+ outputSchema: options.outputSchema,
273
+ onStream: options.onStream,
274
+ });
275
+ }
276
+ catch (error) {
277
+ if (error instanceof ClaudeTerminalAbortError) {
278
+ return createAbortResponse(agentName, error.reason, responseSessionId);
279
+ }
280
+ return createErrorResponse(agentName, getErrorMessage(error), AGENT_FAILURE_CATEGORIES.PROVIDER_ERROR, responseSessionId);
281
+ }
282
+ finally {
283
+ if (abortHandler) {
284
+ options.abortSignal?.removeEventListener('abort', abortHandler);
285
+ }
286
+ try {
287
+ if (aborted && !terminalSession && pendingStart) {
288
+ stopPendingSessionOnResolve(pendingStart);
289
+ }
290
+ if (!keepSession || aborted) {
291
+ try {
292
+ await stopSession();
293
+ }
294
+ catch (error) {
295
+ log.error('Failed to stop Claude terminal session', {
296
+ error: getErrorMessage(error),
297
+ session: terminalSession?.name,
298
+ });
299
+ }
300
+ }
301
+ }
302
+ finally {
303
+ try {
304
+ await cleanup?.();
305
+ }
306
+ catch (error) {
307
+ log.error('Failed to clean up Claude terminal resources', {
308
+ error: getErrorMessage(error),
309
+ });
310
+ }
311
+ }
312
+ }
313
+ }
314
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/infra/claude-terminal/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAExE,OAAO,EACL,wBAAwB,EACxB,yBAAyB,GAE1B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,+BAA+B,EAAE,MAAM,0BAA0B,CAAC;AAC3E,OAAO,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAWxD,MAAM,eAAe,GAA8B,MAAM,CAAC;AAC1D,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAClC,MAAM,wBAAwB,GAAG,GAAG,CAAC;AACrC,MAAM,GAAG,GAAG,YAAY,CAAC,iBAAiB,CAAC,CAAC;AAE5C,MAAM,wBAAyB,SAAQ,KAAK;IACrB;IAArB,YAAqB,MAAe;QAClC,KAAK,CAAC,oCAAoC,CAAC,CAAC;QADzB,WAAM,GAAN,MAAM,CAAS;IAEpC,CAAC;CACF;AAED,SAAS,mBAAmB,CAC1B,SAAiB,EACjB,OAAe,EACf,kBAAwC,wBAAwB,CAAC,cAAc,EAC/E,SAAkB;IAElB,OAAO;QACL,OAAO,EAAE,SAAS;QAClB,MAAM,EAAE,OAAO;QACf,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,IAAI,IAAI,EAAE;QACrB,SAAS;QACT,KAAK,EAAE,OAAO;QACd,eAAe;QACf,aAAa,EAAE;YACb,YAAY,EAAE,IAAI;YAClB,MAAM,EAAE,qBAAqB,CAAC,yBAAyB;SACxD;KACF,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,SAAiB,EAAE,MAAe,EAAE,SAAkB;IACjF,MAAM,OAAO,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAClD,OAAO,mBAAmB,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AACrF,CAAC;AAED,SAAS,sBAAsB,CAC7B,WAAsC,EACtC,OAAoC;IAEpC,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,IAAI,WAAW,KAAK,MAAM,EAAE,CAAC;QAC3B,OAAO,IAAI,mBAAmB,EAAE,CAAC;IACnC,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,wCAAwC,WAAW,EAAE,CAAC,CAAC;AACzE,CAAC;AAED,SAAS,QAAQ,CAAC,OAAkC,EAAE,SAAiB;IACrE,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACxC,OAAO;IACT,CAAC;IACD,OAAO,CAAC,QAAQ,CAAC;QACf,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE;YACJ,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,SAAS;SACV;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,+BAA+B,CAAC,OAAkC;IACzE,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACnC,OAAO,2HAA2H,CAAC;IACrI,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,wBAAwB,CAAC,MAA6B;IAC7D,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAC7B,KAAK,CAAC,IAAI,KAAK,oBAAoB,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,CAC1E,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAAC,QAA4F;IAC5H,IAAI,QAAQ,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAClC,IAAI,QAAQ,CAAC,YAAY,IAAI,QAAQ,CAAC,kBAAkB,EAAE,CAAC;YACzD,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;QAC9F,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;QACjC,IAAI,QAAQ,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,+FAA+F,CAAC,CAAC;QACnH,CAAC;QACD,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7D,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;AACvF,CAAC;AAED,SAAS,qBAAqB,CAAC,OAA+B;IAC5D,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzF,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAChF,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,KAAK,UAAU,0BAA0B,CACvC,KAA0B,EAC1B,OAAkC;IAElC,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;QACxC,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,gHAAgH,CAAC,CAAC;QACpI,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,mBAAmB,CAAC;YACjD,QAAQ,EAAE,KAAK,CAAC,IAAI;YACpB,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC,CAAC;QACH,OAAO,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;QACvC,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,8GAA8G,CAAC,CAAC;QAClI,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;QAChF,OAAO,qBAAqB,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,8EAA8E,CAAC,CAAC;AAClG,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,SAAiB,EACjB,MAAc,EACd,OAAkC;IAElC,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,IAAI,eAAe,CAAC;IACvD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,kBAAkB,CAAC;IAC1D,MAAM,cAAc,GAAG,OAAO,CAAC,wBAAwB,IAAI,wBAAwB,CAAC;IACpF,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,KAAK,IAAI,CAAC;IACjD,MAAM,eAAe,GAAG,sBAAsB,CAAC,WAAW,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IACrF,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,IAAI,6BAA6B,EAAE,CAAC;IACzF,MAAM,eAAe,GAAG,OAAO,CAAC,SAAS,IAAI,UAAU,EAAE,CAAC;IAC1D,IAAI,iBAAiB,GAAuB,OAAO,CAAC,SAAS,CAAC;IAC9D,IAAI,eAA4C,CAAC;IACjD,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,OAA0C,CAAC;IAC/C,IAAI,YAAsC,CAAC;IAC3C,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,YAAkD,CAAC;IAEvD,KAAK,UAAU,WAAW;QACxB,IAAI,CAAC,eAAe,IAAI,aAAa,EAAE,CAAC;YACtC,OAAO;QACT,CAAC;QACD,aAAa,GAAG,IAAI,CAAC;QACrB,MAAM,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC9C,CAAC;IAED,SAAS,2BAA2B,CAAC,YAAsC;QACzE,YAAY;aACT,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;YACtB,IAAI,CAAC;gBACH,MAAM,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACtC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,GAAG,CAAC,KAAK,CAAC,wCAAwC,EAAE;oBAClD,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC;oBAC7B,OAAO,EAAE,OAAO,CAAC,IAAI;iBACtB,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,GAAG,CAAC,KAAK,CAAC,kDAAkD,EAAE;gBAC5D,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC;aAC9B,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,IAAI,OAAO,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;QACjC,OAAO,mBAAmB,CAAC,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IACvF,CAAC;IAED,MAAM,kBAAkB,GAAG,+BAA+B,CAAC,OAAO,CAAC,CAAC;IACpE,IAAI,kBAAkB,EAAE,CAAC;QACvB,OAAO,mBAAmB,CAAC,SAAS,EAAE,kBAAkB,EAAE,wBAAwB,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;IACxH,CAAC;IAED,SAAS,SAAS,CAAI,SAA2B;QAC/C,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;QACnC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,SAAS,EAAE,CAAC;QACrB,CAAC;QACD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,GAAG,IAAI,CAAC;YACf,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QACrE,CAAC;QACD,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACxC,MAAM,OAAO,GAAG,GAAS,EAAE;gBACzB,OAAO,GAAG,IAAI,CAAC;gBACf,MAAM,CAAC,IAAI,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YACtD,CAAC,CAAC;YACF,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1D,IAAI,gBAA4B,CAAC;YACjC,IAAI,CAAC;gBACH,gBAAgB,GAAG,SAAS,EAAE,CAAC;YACjC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC7C,MAAM,CAAC,KAAK,CAAC,CAAC;gBACd,OAAO;YACT,CAAC;YACD,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;gBAClD,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC/C,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACxB,YAAY,GAAG,GAAG,EAAE;YAClB,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC,CAAC;QACF,OAAO,CAAC,WAAW,EAAE,gBAAgB,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/E,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAClE,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;QAC3B,IAAI,OAAO,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;YACjC,MAAM,IAAI,wBAAwB,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACjE,CAAC;QACD,MAAM,OAAO,GAAG,0BAA0B,CAAC;YACzC,0BAA0B,EAAE,OAAO,CAAC,0BAA0B;YAC9D,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,aAAa,EAAE,QAAQ,CAAC,IAAI;YAC5B,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;YAC5C,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,YAAY,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe;YAC7D,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,YAAY,EAAE,OAAO,CAAC,YAAY;SACnC,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE;YAC1C,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,CAAC;gBACzC,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,OAAO,EAAE,WAAW;gBACpB,OAAO;aACR,CAAC,CAAC;YACH,YAAY,GAAG,YAAY,CAAC;YAC5B,OAAO,YAAY,CAAC;QACtB,CAAC,CAAC,CAAC;QACH,eAAe,GAAG,cAAc,CAAC;QACjC,iBAAiB,GAAG,eAAe,CAAC;QACpC,IAAI,OAAO,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;YACjC,OAAO,mBAAmB,CAAC,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;QACvF,CAAC;QACD,IAAI,QAAQ,GAA6B,MAAM,SAAS,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,YAAY,CAAC;YAC3F,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,SAAS,EAAE,eAAe;SAC3B,CAAC,CAAC,CAAC;QACJ,MAAM,SAAS,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,SAAS,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC;QAEzE,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,WAAW,CAAC;YACjE,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,SAAS,EAAE,eAAe;YAC1B,SAAS;YACT,cAAc;YACd,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC,CAAC,CAAC,CAAC;QACJ,iBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC;QACtC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QAErC,MAAM,aAAa,GAA0B,EAAE,CAAC;QAChD,IAAI,QAAkC,CAAC;QACvC,OAAO,IAAI,EAAE,CAAC;YACZ,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,wBAAwB,CAAC;gBACzE,OAAO;gBACP,QAAQ;gBACR,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,SAAS;gBACT,cAAc;gBACd,WAAW,EAAE,OAAO,CAAC,WAAW;aACjC,CAAC,CAAC,CAAC;YAEJ,aAAa,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;YACvC,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACpE,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACnC,MAAM;YACR,CAAC;YAED,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,YAAY,CAAC;gBAC7D,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,SAAS,EAAE,OAAO,CAAC,SAAS;aAC7B,CAAC,CAAC,CAAC;YACJ,KAAK,MAAM,KAAK,IAAI,iBAAiB,EAAE,CAAC;gBACtC,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,CAAC,0BAA0B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;gBAChF,MAAM,SAAS,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,SAAS,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;QAED,OAAO,+BAA+B,CAAC;YACrC,SAAS;YACT,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,aAAa,EAAE,QAAQ,CAAC,aAAa;YACrC,MAAM,EAAE,aAAa;YACrB,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC3B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,wBAAwB,EAAE,CAAC;YAC9C,OAAO,mBAAmB,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;QACzE,CAAC;QACD,OAAO,mBAAmB,CAAC,SAAS,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,wBAAwB,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;IAC5H,CAAC;YAAS,CAAC;QACT,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,CAAC,WAAW,EAAE,mBAAmB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,CAAC;YACH,IAAI,OAAO,IAAI,CAAC,eAAe,IAAI,YAAY,EAAE,CAAC;gBAChD,2BAA2B,CAAC,YAAY,CAAC,CAAC;YAC5C,CAAC;YACD,IAAI,CAAC,WAAW,IAAI,OAAO,EAAE,CAAC;gBAC5B,IAAI,CAAC;oBACH,MAAM,WAAW,EAAE,CAAC;gBACtB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,GAAG,CAAC,KAAK,CAAC,wCAAwC,EAAE;wBAClD,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC;wBAC7B,OAAO,EAAE,eAAe,EAAE,IAAI;qBAC/B,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC;gBACH,MAAM,OAAO,EAAE,EAAE,CAAC;YACpB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,GAAG,CAAC,KAAK,CAAC,8CAA8C,EAAE;oBACxD,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC;iBAC9B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { BuildClaudeTerminalCommandOptions, ClaudeTerminalCommand } from './types.js';
2
+ export declare function buildClaudeTerminalCommand(options: BuildClaudeTerminalCommandOptions): ClaudeTerminalCommand;
3
+ export declare function createClaudeTerminalSessionName(): string;
4
+ //# sourceMappingURL=command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../src/infra/claude-terminal/command.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,iCAAiC,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAY3F,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,iCAAiC,GACzC,qBAAqB,CAmCvB;AAED,wBAAgB,+BAA+B,IAAI,MAAM,CAExD"}
@@ -0,0 +1,50 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ import { taktPermissionModeToClaudeExpression, } from '../claude/permission-mode-expression.js';
3
+ function resolvePermissionMode(options) {
4
+ if (options.bypassPermissions) {
5
+ return 'bypassPermissions';
6
+ }
7
+ if (options.permissionMode === undefined) {
8
+ return undefined;
9
+ }
10
+ return taktPermissionModeToClaudeExpression(options.permissionMode);
11
+ }
12
+ export function buildClaudeTerminalCommand(options) {
13
+ const args = [];
14
+ const permissionMode = resolvePermissionMode(options);
15
+ if (options.model) {
16
+ args.push('--model', options.model);
17
+ }
18
+ if (options.effort) {
19
+ args.push('--effort', options.effort);
20
+ }
21
+ if (options.allowedTools && options.allowedTools.length > 0) {
22
+ args.push('--allowed-tools', options.allowedTools.join(','));
23
+ }
24
+ if (options.mcpConfigPath) {
25
+ args.push('--mcp-config', options.mcpConfigPath);
26
+ }
27
+ if (permissionMode) {
28
+ args.push('--permission-mode', permissionMode);
29
+ }
30
+ if (options.sessionId) {
31
+ args.push('--resume', options.sessionId);
32
+ }
33
+ else if (options.newSessionId) {
34
+ args.push('--session-id', options.newSessionId);
35
+ }
36
+ if (options.systemPrompt?.trim()) {
37
+ args.push('--system-prompt', options.systemPrompt.trim());
38
+ }
39
+ if (options.outputSchema) {
40
+ args.push('--json-schema', JSON.stringify(options.outputSchema));
41
+ }
42
+ return {
43
+ executable: options.pathToClaudeCodeExecutable ?? 'claude',
44
+ args,
45
+ };
46
+ }
47
+ export function createClaudeTerminalSessionName() {
48
+ return `takt-claude-terminal-${randomUUID()}`;
49
+ }
50
+ //# sourceMappingURL=command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/infra/claude-terminal/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,oCAAoC,GAErC,MAAM,yCAAyC,CAAC;AAGjD,SAAS,qBAAqB,CAAC,OAA0C;IACvE,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAC9B,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IACD,IAAI,OAAO,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QACzC,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,oCAAoC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;AACtE,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,OAA0C;IAE1C,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,cAAc,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAEtD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IACD,IAAI,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5D,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,cAAc,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;SAAM,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,OAAO,CAAC,YAAY,EAAE,IAAI,EAAE,EAAE,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QACzB,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;IACnE,CAAC;IAED,OAAO;QACL,UAAU,EAAE,OAAO,CAAC,0BAA0B,IAAI,QAAQ;QAC1D,IAAI;KACL,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,+BAA+B;IAC7C,OAAO,wBAAwB,UAAU,EAAE,EAAE,CAAC;AAChD,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { AgentResponse } from '../../core/models/index.js';
2
+ import type { StreamCallback } from '../../shared/types/provider.js';
3
+ import type { ClaudeTerminalEvent } from './types.js';
4
+ interface NormalizeClaudeTerminalResponseInput {
5
+ agentName: string;
6
+ sessionId: string;
7
+ assistantText: string;
8
+ events?: ClaudeTerminalEvent[];
9
+ outputSchema?: Record<string, unknown>;
10
+ onStream?: StreamCallback;
11
+ }
12
+ export declare function normalizeClaudeTerminalResponse(input: NormalizeClaudeTerminalResponseInput): AgentResponse;
13
+ export {};
14
+ //# sourceMappingURL=response-normalizer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-normalizer.d.ts","sourceRoot":"","sources":["../../../src/infra/claude-terminal/response-normalizer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAGhE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAGrE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD,UAAU,oCAAoC;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B;AAiGD,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,oCAAoC,GAAG,aAAa,CAsC1G"}
@@ -0,0 +1,118 @@
1
+ import { USAGE_MISSING_REASONS } from '../../core/logging/contracts.js';
2
+ import { validateStructuredOutputAgainstSchema } from '../../core/workflow/engine/structured-output-schema-validator.js';
3
+ import { AGENT_FAILURE_CATEGORIES } from '../../shared/types/agent-failure.js';
4
+ import { parseStructuredOutput } from '../../shared/utils/index.js';
5
+ import { buildRateLimitedResponseFields, resolveRateLimitTextSource } from '../rate-limit/detection.js';
6
+ function emitResult(onStream, payload) {
7
+ onStream?.({
8
+ type: 'result',
9
+ data: payload,
10
+ });
11
+ }
12
+ function emitText(onStream, text) {
13
+ if (!onStream || text.length === 0) {
14
+ return;
15
+ }
16
+ onStream({ type: 'text', data: { text } });
17
+ }
18
+ function emitToolUseEvents(onStream, events) {
19
+ if (!onStream || !events) {
20
+ return;
21
+ }
22
+ for (const event of events) {
23
+ if (event.type === 'tool_use') {
24
+ onStream({
25
+ type: 'tool_use',
26
+ data: {
27
+ tool: event.tool,
28
+ input: event.input,
29
+ id: event.id,
30
+ },
31
+ });
32
+ }
33
+ }
34
+ }
35
+ function createProviderErrorResponse(input, message) {
36
+ emitResult(input.onStream, {
37
+ result: input.assistantText,
38
+ sessionId: input.sessionId,
39
+ success: false,
40
+ error: message,
41
+ });
42
+ return {
43
+ persona: input.agentName,
44
+ status: 'error',
45
+ content: input.assistantText,
46
+ timestamp: new Date(),
47
+ sessionId: input.sessionId,
48
+ error: message,
49
+ failureCategory: AGENT_FAILURE_CATEGORIES.PROVIDER_ERROR,
50
+ providerUsage: {
51
+ usageMissing: true,
52
+ reason: USAGE_MISSING_REASONS.NOT_SUPPORTED_BY_PROVIDER,
53
+ },
54
+ };
55
+ }
56
+ function createRateLimitedResponse(input, source) {
57
+ emitResult(input.onStream, {
58
+ result: '',
59
+ sessionId: input.sessionId,
60
+ success: false,
61
+ error: input.assistantText,
62
+ });
63
+ return {
64
+ persona: input.agentName,
65
+ timestamp: new Date(),
66
+ sessionId: input.sessionId,
67
+ providerUsage: {
68
+ usageMissing: true,
69
+ reason: USAGE_MISSING_REASONS.NOT_SUPPORTED_BY_PROVIDER,
70
+ },
71
+ ...buildRateLimitedResponseFields('claude-terminal', source, input.assistantText),
72
+ };
73
+ }
74
+ function normalizeStructuredOutput(content, outputSchema) {
75
+ const structuredOutput = parseStructuredOutput(content, outputSchema !== undefined);
76
+ if (outputSchema === undefined || structuredOutput === undefined) {
77
+ return structuredOutput;
78
+ }
79
+ validateStructuredOutputAgainstSchema(structuredOutput, outputSchema);
80
+ return structuredOutput;
81
+ }
82
+ export function normalizeClaudeTerminalResponse(input) {
83
+ emitToolUseEvents(input.onStream, input.events);
84
+ const rateLimitSource = resolveRateLimitTextSource(input.assistantText);
85
+ if (rateLimitSource) {
86
+ return createRateLimitedResponse(input, rateLimitSource);
87
+ }
88
+ let structuredOutput;
89
+ try {
90
+ structuredOutput = normalizeStructuredOutput(input.assistantText, input.outputSchema);
91
+ }
92
+ catch (error) {
93
+ const detail = error instanceof Error ? error.message : String(error);
94
+ return createProviderErrorResponse(input, `Claude terminal structured output validation failed: ${detail}`);
95
+ }
96
+ if (input.outputSchema !== undefined && structuredOutput === undefined) {
97
+ return createProviderErrorResponse(input, 'Claude terminal provider could not extract structured output.');
98
+ }
99
+ emitText(input.onStream, input.assistantText);
100
+ emitResult(input.onStream, {
101
+ result: input.assistantText,
102
+ sessionId: input.sessionId,
103
+ success: true,
104
+ });
105
+ return {
106
+ persona: input.agentName,
107
+ status: 'done',
108
+ content: input.assistantText,
109
+ timestamp: new Date(),
110
+ sessionId: input.sessionId,
111
+ structuredOutput,
112
+ providerUsage: {
113
+ usageMissing: true,
114
+ reason: USAGE_MISSING_REASONS.NOT_SUPPORTED_BY_PROVIDER,
115
+ },
116
+ };
117
+ }
118
+ //# sourceMappingURL=response-normalizer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-normalizer.js","sourceRoot":"","sources":["../../../src/infra/claude-terminal/response-normalizer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { TerminalBackend, TerminalSession, TerminalStartOptions } from './types.js';
2
+ export declare class TmuxTerminalBackend implements TerminalBackend {
3
+ start(options: TerminalStartOptions): Promise<TerminalSession>;
4
+ pasteText(session: TerminalSession, text: string): Promise<void>;
5
+ stop(session: TerminalSession): Promise<void>;
6
+ }
7
+ //# sourceMappingURL=tmux-backend.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tmux-backend.d.ts","sourceRoot":"","sources":["../../../src/infra/claude-terminal/tmux-backend.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AA2IzF,qBAAa,mBAAoB,YAAW,eAAe;IACnD,KAAK,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,eAAe,CAAC;IAe9D,SAAS,CAAC,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BhE,IAAI,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CAGpD"}