@posthog/agent 1.26.0 → 1.28.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 (572) hide show
  1. package/dist/index.d.ts +1274 -20
  2. package/dist/index.js +7327 -11
  3. package/dist/index.js.map +1 -1
  4. package/package.json +6 -12
  5. package/src/agent.ts +42 -5
  6. package/src/types.ts +1 -1
  7. package/src/worktree-manager.ts +45 -0
  8. package/dist/_virtual/_commonjsHelpers.js +0 -6
  9. package/dist/_virtual/_commonjsHelpers.js.map +0 -1
  10. package/dist/_virtual/_tslib.js +0 -74
  11. package/dist/_virtual/_tslib.js.map +0 -1
  12. package/dist/_virtual/additionalItems.js +0 -4
  13. package/dist/_virtual/additionalItems.js.map +0 -1
  14. package/dist/_virtual/additionalProperties.js +0 -4
  15. package/dist/_virtual/additionalProperties.js.map +0 -1
  16. package/dist/_virtual/ajv.js +0 -4
  17. package/dist/_virtual/ajv.js.map +0 -1
  18. package/dist/_virtual/allOf.js +0 -4
  19. package/dist/_virtual/allOf.js.map +0 -1
  20. package/dist/_virtual/anyOf.js +0 -4
  21. package/dist/_virtual/anyOf.js.map +0 -1
  22. package/dist/_virtual/applicability.js +0 -4
  23. package/dist/_virtual/applicability.js.map +0 -1
  24. package/dist/_virtual/boolSchema.js +0 -4
  25. package/dist/_virtual/boolSchema.js.map +0 -1
  26. package/dist/_virtual/code.js +0 -4
  27. package/dist/_virtual/code.js.map +0 -1
  28. package/dist/_virtual/code2.js +0 -4
  29. package/dist/_virtual/code2.js.map +0 -1
  30. package/dist/_virtual/const.js +0 -4
  31. package/dist/_virtual/const.js.map +0 -1
  32. package/dist/_virtual/contains.js +0 -4
  33. package/dist/_virtual/contains.js.map +0 -1
  34. package/dist/_virtual/core.js +0 -4
  35. package/dist/_virtual/core.js.map +0 -1
  36. package/dist/_virtual/dataType.js +0 -4
  37. package/dist/_virtual/dataType.js.map +0 -1
  38. package/dist/_virtual/defaults.js +0 -4
  39. package/dist/_virtual/defaults.js.map +0 -1
  40. package/dist/_virtual/dependencies.js +0 -4
  41. package/dist/_virtual/dependencies.js.map +0 -1
  42. package/dist/_virtual/draft7.js +0 -4
  43. package/dist/_virtual/draft7.js.map +0 -1
  44. package/dist/_virtual/enum.js +0 -4
  45. package/dist/_virtual/enum.js.map +0 -1
  46. package/dist/_virtual/equal.js +0 -4
  47. package/dist/_virtual/equal.js.map +0 -1
  48. package/dist/_virtual/errors.js +0 -4
  49. package/dist/_virtual/errors.js.map +0 -1
  50. package/dist/_virtual/format.js +0 -4
  51. package/dist/_virtual/format.js.map +0 -1
  52. package/dist/_virtual/formats.js +0 -4
  53. package/dist/_virtual/formats.js.map +0 -1
  54. package/dist/_virtual/id.js +0 -4
  55. package/dist/_virtual/id.js.map +0 -1
  56. package/dist/_virtual/if.js +0 -4
  57. package/dist/_virtual/if.js.map +0 -1
  58. package/dist/_virtual/index.js +0 -4
  59. package/dist/_virtual/index.js.map +0 -1
  60. package/dist/_virtual/index10.js +0 -4
  61. package/dist/_virtual/index10.js.map +0 -1
  62. package/dist/_virtual/index11.js +0 -4
  63. package/dist/_virtual/index11.js.map +0 -1
  64. package/dist/_virtual/index2.js +0 -4
  65. package/dist/_virtual/index2.js.map +0 -1
  66. package/dist/_virtual/index3.js +0 -4
  67. package/dist/_virtual/index3.js.map +0 -1
  68. package/dist/_virtual/index4.js +0 -4
  69. package/dist/_virtual/index4.js.map +0 -1
  70. package/dist/_virtual/index5.js +0 -4
  71. package/dist/_virtual/index5.js.map +0 -1
  72. package/dist/_virtual/index6.js +0 -4
  73. package/dist/_virtual/index6.js.map +0 -1
  74. package/dist/_virtual/index7.js +0 -4
  75. package/dist/_virtual/index7.js.map +0 -1
  76. package/dist/_virtual/index8.js +0 -4
  77. package/dist/_virtual/index8.js.map +0 -1
  78. package/dist/_virtual/index9.js +0 -4
  79. package/dist/_virtual/index9.js.map +0 -1
  80. package/dist/_virtual/items.js +0 -4
  81. package/dist/_virtual/items.js.map +0 -1
  82. package/dist/_virtual/items2020.js +0 -4
  83. package/dist/_virtual/items2020.js.map +0 -1
  84. package/dist/_virtual/keyword.js +0 -4
  85. package/dist/_virtual/keyword.js.map +0 -1
  86. package/dist/_virtual/limit.js +0 -4
  87. package/dist/_virtual/limit.js.map +0 -1
  88. package/dist/_virtual/limitItems.js +0 -4
  89. package/dist/_virtual/limitItems.js.map +0 -1
  90. package/dist/_virtual/limitLength.js +0 -4
  91. package/dist/_virtual/limitLength.js.map +0 -1
  92. package/dist/_virtual/limitNumber.js +0 -4
  93. package/dist/_virtual/limitNumber.js.map +0 -1
  94. package/dist/_virtual/limitProperties.js +0 -4
  95. package/dist/_virtual/limitProperties.js.map +0 -1
  96. package/dist/_virtual/metadata.js +0 -4
  97. package/dist/_virtual/metadata.js.map +0 -1
  98. package/dist/_virtual/multipleOf.js +0 -4
  99. package/dist/_virtual/multipleOf.js.map +0 -1
  100. package/dist/_virtual/names.js +0 -4
  101. package/dist/_virtual/names.js.map +0 -1
  102. package/dist/_virtual/not.js +0 -4
  103. package/dist/_virtual/not.js.map +0 -1
  104. package/dist/_virtual/oneOf.js +0 -4
  105. package/dist/_virtual/oneOf.js.map +0 -1
  106. package/dist/_virtual/pattern.js +0 -4
  107. package/dist/_virtual/pattern.js.map +0 -1
  108. package/dist/_virtual/patternProperties.js +0 -4
  109. package/dist/_virtual/patternProperties.js.map +0 -1
  110. package/dist/_virtual/prefixItems.js +0 -4
  111. package/dist/_virtual/prefixItems.js.map +0 -1
  112. package/dist/_virtual/properties.js +0 -4
  113. package/dist/_virtual/properties.js.map +0 -1
  114. package/dist/_virtual/propertyNames.js +0 -4
  115. package/dist/_virtual/propertyNames.js.map +0 -1
  116. package/dist/_virtual/ref.js +0 -4
  117. package/dist/_virtual/ref.js.map +0 -1
  118. package/dist/_virtual/ref_error.js +0 -4
  119. package/dist/_virtual/ref_error.js.map +0 -1
  120. package/dist/_virtual/required.js +0 -4
  121. package/dist/_virtual/required.js.map +0 -1
  122. package/dist/_virtual/resolve.js +0 -4
  123. package/dist/_virtual/resolve.js.map +0 -1
  124. package/dist/_virtual/rules.js +0 -4
  125. package/dist/_virtual/rules.js.map +0 -1
  126. package/dist/_virtual/scope.js +0 -4
  127. package/dist/_virtual/scope.js.map +0 -1
  128. package/dist/_virtual/subschema.js +0 -4
  129. package/dist/_virtual/subschema.js.map +0 -1
  130. package/dist/_virtual/thenElse.js +0 -4
  131. package/dist/_virtual/thenElse.js.map +0 -1
  132. package/dist/_virtual/types.js +0 -4
  133. package/dist/_virtual/types.js.map +0 -1
  134. package/dist/_virtual/ucs2length.js +0 -4
  135. package/dist/_virtual/ucs2length.js.map +0 -1
  136. package/dist/_virtual/uniqueItems.js +0 -4
  137. package/dist/_virtual/uniqueItems.js.map +0 -1
  138. package/dist/_virtual/uri.js +0 -4
  139. package/dist/_virtual/uri.js.map +0 -1
  140. package/dist/_virtual/util.js +0 -4
  141. package/dist/_virtual/util.js.map +0 -1
  142. package/dist/_virtual/validation_error.js +0 -4
  143. package/dist/_virtual/validation_error.js.map +0 -1
  144. package/dist/example-client.d.ts +0 -3
  145. package/dist/example-client.d.ts.map +0 -1
  146. package/dist/example.d.ts +0 -3
  147. package/dist/example.d.ts.map +0 -1
  148. package/dist/index.d.ts.map +0 -1
  149. package/dist/node_modules/@agentclientprotocol/sdk/dist/acp.js +0 -891
  150. package/dist/node_modules/@agentclientprotocol/sdk/dist/acp.js.map +0 -1
  151. package/dist/node_modules/@agentclientprotocol/sdk/dist/schema.js +0 -876
  152. package/dist/node_modules/@agentclientprotocol/sdk/dist/schema.js.map +0 -1
  153. package/dist/node_modules/@agentclientprotocol/sdk/dist/stream.js +0 -66
  154. package/dist/node_modules/@agentclientprotocol/sdk/dist/stream.js.map +0 -1
  155. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/completable.js +0 -23
  156. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/completable.js.map +0 -1
  157. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js +0 -331
  158. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js.map +0 -1
  159. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js +0 -717
  160. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js.map +0 -1
  161. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-compat.js +0 -221
  162. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-compat.js.map +0 -1
  163. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-json-schema-compat.js +0 -56
  164. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-json-schema-compat.js.map +0 -1
  165. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js +0 -440
  166. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js.map +0 -1
  167. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/toolNameValidation.js +0 -94
  168. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/toolNameValidation.js.map +0 -1
  169. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js +0 -1610
  170. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js.map +0 -1
  171. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/validation/ajv-provider.js +0 -91
  172. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/validation/ajv-provider.js.map +0 -1
  173. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v3/ZodError.js +0 -133
  174. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v3/ZodError.js.map +0 -1
  175. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v3/errors.js +0 -9
  176. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v3/errors.js.map +0 -1
  177. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v3/helpers/errorUtil.js +0 -9
  178. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v3/helpers/errorUtil.js.map +0 -1
  179. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v3/helpers/parseUtil.js +0 -112
  180. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v3/helpers/parseUtil.js.map +0 -1
  181. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v3/helpers/util.js +0 -136
  182. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v3/helpers/util.js.map +0 -1
  183. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v3/locales/en.js +0 -112
  184. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v3/locales/en.js.map +0 -1
  185. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v3/types.js +0 -3297
  186. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v3/types.js.map +0 -1
  187. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/classic/errors.js +0 -44
  188. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/classic/errors.js.map +0 -1
  189. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/classic/iso.js +0 -36
  190. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/classic/iso.js.map +0 -1
  191. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/classic/parse.js +0 -10
  192. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/classic/parse.js.map +0 -1
  193. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/classic/schemas.js +0 -657
  194. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/classic/schemas.js.map +0 -1
  195. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/api.js +0 -449
  196. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/api.js.map +0 -1
  197. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/checks.js +0 -413
  198. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/checks.js.map +0 -1
  199. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/core.js +0 -57
  200. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/core.js.map +0 -1
  201. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/doc.js +0 -38
  202. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/doc.js.map +0 -1
  203. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/errors.js +0 -86
  204. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/errors.js.map +0 -1
  205. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/parse.js +0 -61
  206. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/parse.js.map +0 -1
  207. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/regexes.js +0 -80
  208. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/regexes.js.map +0 -1
  209. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/registries.js +0 -52
  210. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/registries.js.map +0 -1
  211. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/schemas.js +0 -1307
  212. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/schemas.js.map +0 -1
  213. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/to-json-schema.js +0 -842
  214. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/to-json-schema.js.map +0 -1
  215. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/util.js +0 -335
  216. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/util.js.map +0 -1
  217. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/versions.js +0 -8
  218. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/core/versions.js.map +0 -1
  219. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/mini/schemas.js +0 -51
  220. package/dist/node_modules/@modelcontextprotocol/sdk/node_modules/zod/v4/mini/schemas.js.map +0 -1
  221. package/dist/node_modules/ajv/dist/ajv.js +0 -69
  222. package/dist/node_modules/ajv/dist/ajv.js.map +0 -1
  223. package/dist/node_modules/ajv/dist/compile/codegen/code.js +0 -169
  224. package/dist/node_modules/ajv/dist/compile/codegen/code.js.map +0 -1
  225. package/dist/node_modules/ajv/dist/compile/codegen/index.js +0 -712
  226. package/dist/node_modules/ajv/dist/compile/codegen/index.js.map +0 -1
  227. package/dist/node_modules/ajv/dist/compile/codegen/scope.js +0 -157
  228. package/dist/node_modules/ajv/dist/compile/codegen/scope.js.map +0 -1
  229. package/dist/node_modules/ajv/dist/compile/errors.js +0 -140
  230. package/dist/node_modules/ajv/dist/compile/errors.js.map +0 -1
  231. package/dist/node_modules/ajv/dist/compile/index.js +0 -253
  232. package/dist/node_modules/ajv/dist/compile/index.js.map +0 -1
  233. package/dist/node_modules/ajv/dist/compile/names.js +0 -40
  234. package/dist/node_modules/ajv/dist/compile/names.js.map +0 -1
  235. package/dist/node_modules/ajv/dist/compile/ref_error.js +0 -25
  236. package/dist/node_modules/ajv/dist/compile/ref_error.js.map +0 -1
  237. package/dist/node_modules/ajv/dist/compile/resolve.js +0 -162
  238. package/dist/node_modules/ajv/dist/compile/resolve.js.map +0 -1
  239. package/dist/node_modules/ajv/dist/compile/rules.js +0 -29
  240. package/dist/node_modules/ajv/dist/compile/rules.js.map +0 -1
  241. package/dist/node_modules/ajv/dist/compile/util.js +0 -183
  242. package/dist/node_modules/ajv/dist/compile/util.js.map +0 -1
  243. package/dist/node_modules/ajv/dist/compile/validate/applicability.js +0 -30
  244. package/dist/node_modules/ajv/dist/compile/validate/applicability.js.map +0 -1
  245. package/dist/node_modules/ajv/dist/compile/validate/boolSchema.js +0 -64
  246. package/dist/node_modules/ajv/dist/compile/validate/boolSchema.js.map +0 -1
  247. package/dist/node_modules/ajv/dist/compile/validate/dataType.js +0 -213
  248. package/dist/node_modules/ajv/dist/compile/validate/dataType.js.map +0 -1
  249. package/dist/node_modules/ajv/dist/compile/validate/defaults.js +0 -49
  250. package/dist/node_modules/ajv/dist/compile/validate/defaults.js.map +0 -1
  251. package/dist/node_modules/ajv/dist/compile/validate/index.js +0 -544
  252. package/dist/node_modules/ajv/dist/compile/validate/index.js.map +0 -1
  253. package/dist/node_modules/ajv/dist/compile/validate/keyword.js +0 -139
  254. package/dist/node_modules/ajv/dist/compile/validate/keyword.js.map +0 -1
  255. package/dist/node_modules/ajv/dist/compile/validate/subschema.js +0 -95
  256. package/dist/node_modules/ajv/dist/compile/validate/subschema.js.map +0 -1
  257. package/dist/node_modules/ajv/dist/core.js +0 -639
  258. package/dist/node_modules/ajv/dist/core.js.map +0 -1
  259. package/dist/node_modules/ajv/dist/refs/data.json.js +0 -31
  260. package/dist/node_modules/ajv/dist/refs/data.json.js.map +0 -1
  261. package/dist/node_modules/ajv/dist/refs/json-schema-draft-07.json.js +0 -254
  262. package/dist/node_modules/ajv/dist/refs/json-schema-draft-07.json.js.map +0 -1
  263. package/dist/node_modules/ajv/dist/runtime/equal.js +0 -9
  264. package/dist/node_modules/ajv/dist/runtime/equal.js.map +0 -1
  265. package/dist/node_modules/ajv/dist/runtime/ucs2length.js +0 -25
  266. package/dist/node_modules/ajv/dist/runtime/ucs2length.js.map +0 -1
  267. package/dist/node_modules/ajv/dist/runtime/uri.js +0 -8
  268. package/dist/node_modules/ajv/dist/runtime/uri.js.map +0 -1
  269. package/dist/node_modules/ajv/dist/runtime/validation_error.js +0 -22
  270. package/dist/node_modules/ajv/dist/runtime/validation_error.js.map +0 -1
  271. package/dist/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +0 -53
  272. package/dist/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js.map +0 -1
  273. package/dist/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +0 -112
  274. package/dist/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js.map +0 -1
  275. package/dist/node_modules/ajv/dist/vocabularies/applicator/allOf.js +0 -26
  276. package/dist/node_modules/ajv/dist/vocabularies/applicator/allOf.js.map +0 -1
  277. package/dist/node_modules/ajv/dist/vocabularies/applicator/anyOf.js +0 -14
  278. package/dist/node_modules/ajv/dist/vocabularies/applicator/anyOf.js.map +0 -1
  279. package/dist/node_modules/ajv/dist/vocabularies/applicator/contains.js +0 -99
  280. package/dist/node_modules/ajv/dist/vocabularies/applicator/contains.js.map +0 -1
  281. package/dist/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +0 -93
  282. package/dist/node_modules/ajv/dist/vocabularies/applicator/dependencies.js.map +0 -1
  283. package/dist/node_modules/ajv/dist/vocabularies/applicator/if.js +0 -70
  284. package/dist/node_modules/ajv/dist/vocabularies/applicator/if.js.map +0 -1
  285. package/dist/node_modules/ajv/dist/vocabularies/applicator/index.js +0 -77
  286. package/dist/node_modules/ajv/dist/vocabularies/applicator/index.js.map +0 -1
  287. package/dist/node_modules/ajv/dist/vocabularies/applicator/items.js +0 -57
  288. package/dist/node_modules/ajv/dist/vocabularies/applicator/items.js.map +0 -1
  289. package/dist/node_modules/ajv/dist/vocabularies/applicator/items2020.js +0 -37
  290. package/dist/node_modules/ajv/dist/vocabularies/applicator/items2020.js.map +0 -1
  291. package/dist/node_modules/ajv/dist/vocabularies/applicator/not.js +0 -29
  292. package/dist/node_modules/ajv/dist/vocabularies/applicator/not.js.map +0 -1
  293. package/dist/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +0 -64
  294. package/dist/node_modules/ajv/dist/vocabularies/applicator/oneOf.js.map +0 -1
  295. package/dist/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +0 -80
  296. package/dist/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js.map +0 -1
  297. package/dist/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +0 -15
  298. package/dist/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js.map +0 -1
  299. package/dist/node_modules/ajv/dist/vocabularies/applicator/properties.js +0 -61
  300. package/dist/node_modules/ajv/dist/vocabularies/applicator/properties.js.map +0 -1
  301. package/dist/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +0 -42
  302. package/dist/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js.map +0 -1
  303. package/dist/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +0 -16
  304. package/dist/node_modules/ajv/dist/vocabularies/applicator/thenElse.js.map +0 -1
  305. package/dist/node_modules/ajv/dist/vocabularies/code.js +0 -146
  306. package/dist/node_modules/ajv/dist/vocabularies/code.js.map +0 -1
  307. package/dist/node_modules/ajv/dist/vocabularies/core/id.js +0 -11
  308. package/dist/node_modules/ajv/dist/vocabularies/core/id.js.map +0 -1
  309. package/dist/node_modules/ajv/dist/vocabularies/core/index.js +0 -21
  310. package/dist/node_modules/ajv/dist/vocabularies/core/index.js.map +0 -1
  311. package/dist/node_modules/ajv/dist/vocabularies/core/ref.js +0 -131
  312. package/dist/node_modules/ajv/dist/vocabularies/core/ref.js.map +0 -1
  313. package/dist/node_modules/ajv/dist/vocabularies/discriminator/index.js +0 -113
  314. package/dist/node_modules/ajv/dist/vocabularies/discriminator/index.js.map +0 -1
  315. package/dist/node_modules/ajv/dist/vocabularies/discriminator/types.js +0 -12
  316. package/dist/node_modules/ajv/dist/vocabularies/discriminator/types.js.map +0 -1
  317. package/dist/node_modules/ajv/dist/vocabularies/draft7.js +0 -28
  318. package/dist/node_modules/ajv/dist/vocabularies/draft7.js.map +0 -1
  319. package/dist/node_modules/ajv/dist/vocabularies/format/format.js +0 -94
  320. package/dist/node_modules/ajv/dist/vocabularies/format/format.js.map +0 -1
  321. package/dist/node_modules/ajv/dist/vocabularies/format/index.js +0 -9
  322. package/dist/node_modules/ajv/dist/vocabularies/format/index.js.map +0 -1
  323. package/dist/node_modules/ajv/dist/vocabularies/metadata.js +0 -21
  324. package/dist/node_modules/ajv/dist/vocabularies/metadata.js.map +0 -1
  325. package/dist/node_modules/ajv/dist/vocabularies/validation/const.js +0 -31
  326. package/dist/node_modules/ajv/dist/vocabularies/validation/const.js.map +0 -1
  327. package/dist/node_modules/ajv/dist/vocabularies/validation/enum.js +0 -54
  328. package/dist/node_modules/ajv/dist/vocabularies/validation/enum.js.map +0 -1
  329. package/dist/node_modules/ajv/dist/vocabularies/validation/index.js +0 -54
  330. package/dist/node_modules/ajv/dist/vocabularies/validation/index.js.map +0 -1
  331. package/dist/node_modules/ajv/dist/vocabularies/validation/limitItems.js +0 -26
  332. package/dist/node_modules/ajv/dist/vocabularies/validation/limitItems.js.map +0 -1
  333. package/dist/node_modules/ajv/dist/vocabularies/validation/limitLength.js +0 -33
  334. package/dist/node_modules/ajv/dist/vocabularies/validation/limitLength.js.map +0 -1
  335. package/dist/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +0 -29
  336. package/dist/node_modules/ajv/dist/vocabularies/validation/limitNumber.js.map +0 -1
  337. package/dist/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +0 -26
  338. package/dist/node_modules/ajv/dist/vocabularies/validation/limitProperties.js.map +0 -1
  339. package/dist/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +0 -28
  340. package/dist/node_modules/ajv/dist/vocabularies/validation/multipleOf.js.map +0 -1
  341. package/dist/node_modules/ajv/dist/vocabularies/validation/pattern.js +0 -27
  342. package/dist/node_modules/ajv/dist/vocabularies/validation/pattern.js.map +0 -1
  343. package/dist/node_modules/ajv/dist/vocabularies/validation/required.js +0 -84
  344. package/dist/node_modules/ajv/dist/vocabularies/validation/required.js.map +0 -1
  345. package/dist/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +0 -72
  346. package/dist/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js.map +0 -1
  347. package/dist/node_modules/ajv-formats/dist/formats.js +0 -212
  348. package/dist/node_modules/ajv-formats/dist/formats.js.map +0 -1
  349. package/dist/node_modules/ajv-formats/dist/index.js +0 -52
  350. package/dist/node_modules/ajv-formats/dist/index.js.map +0 -1
  351. package/dist/node_modules/ajv-formats/dist/limit.js +0 -75
  352. package/dist/node_modules/ajv-formats/dist/limit.js.map +0 -1
  353. package/dist/node_modules/diff/libesm/diff/base.js +0 -256
  354. package/dist/node_modules/diff/libesm/diff/base.js.map +0 -1
  355. package/dist/node_modules/diff/libesm/diff/line.js +0 -64
  356. package/dist/node_modules/diff/libesm/diff/line.js.map +0 -1
  357. package/dist/node_modules/diff/libesm/patch/create.js +0 -185
  358. package/dist/node_modules/diff/libesm/patch/create.js.map +0 -1
  359. package/dist/node_modules/fast-deep-equal/index.js +0 -47
  360. package/dist/node_modules/fast-deep-equal/index.js.map +0 -1
  361. package/dist/node_modules/fast-uri/index.js +0 -347
  362. package/dist/node_modules/fast-uri/index.js.map +0 -1
  363. package/dist/node_modules/fast-uri/lib/schemes.js +0 -255
  364. package/dist/node_modules/fast-uri/lib/schemes.js.map +0 -1
  365. package/dist/node_modules/fast-uri/lib/utils.js +0 -334
  366. package/dist/node_modules/fast-uri/lib/utils.js.map +0 -1
  367. package/dist/node_modules/json-schema-traverse/index.js +0 -98
  368. package/dist/node_modules/json-schema-traverse/index.js.map +0 -1
  369. package/dist/node_modules/uuid/dist/rng.js +0 -14
  370. package/dist/node_modules/uuid/dist/rng.js.map +0 -1
  371. package/dist/node_modules/uuid/dist/stringify.js +0 -29
  372. package/dist/node_modules/uuid/dist/stringify.js.map +0 -1
  373. package/dist/node_modules/uuid/dist/v7.js +0 -65
  374. package/dist/node_modules/uuid/dist/v7.js.map +0 -1
  375. package/dist/node_modules/zod-to-json-schema/dist/esm/Options.js +0 -37
  376. package/dist/node_modules/zod-to-json-schema/dist/esm/Options.js.map +0 -1
  377. package/dist/node_modules/zod-to-json-schema/dist/esm/Refs.js +0 -26
  378. package/dist/node_modules/zod-to-json-schema/dist/esm/Refs.js.map +0 -1
  379. package/dist/node_modules/zod-to-json-schema/dist/esm/errorMessages.js +0 -17
  380. package/dist/node_modules/zod-to-json-schema/dist/esm/errorMessages.js.map +0 -1
  381. package/dist/node_modules/zod-to-json-schema/dist/esm/getRelativePath.js +0 -11
  382. package/dist/node_modules/zod-to-json-schema/dist/esm/getRelativePath.js.map +0 -1
  383. package/dist/node_modules/zod-to-json-schema/dist/esm/parseDef.js +0 -66
  384. package/dist/node_modules/zod-to-json-schema/dist/esm/parseDef.js.map +0 -1
  385. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/any.js +0 -21
  386. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/any.js.map +0 -1
  387. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/array.js +0 -30
  388. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/array.js.map +0 -1
  389. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js +0 -53
  390. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js.map +0 -1
  391. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js +0 -8
  392. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js.map +0 -1
  393. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/branded.js +0 -8
  394. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/branded.js.map +0 -1
  395. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/catch.js +0 -8
  396. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/catch.js.map +0 -1
  397. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/date.js +0 -50
  398. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/date.js.map +0 -1
  399. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/default.js +0 -11
  400. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/default.js.map +0 -1
  401. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/effects.js +0 -11
  402. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/effects.js.map +0 -1
  403. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/enum.js +0 -9
  404. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/enum.js.map +0 -1
  405. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js +0 -56
  406. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js.map +0 -1
  407. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/literal.js +0 -24
  408. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/literal.js.map +0 -1
  409. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/map.js +0 -30
  410. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/map.js.map +0 -1
  411. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js +0 -19
  412. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js.map +0 -1
  413. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/never.js +0 -15
  414. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/never.js.map +0 -1
  415. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/null.js +0 -13
  416. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/null.js.map +0 -1
  417. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js +0 -37
  418. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js.map +0 -1
  419. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/number.js +0 -56
  420. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/number.js.map +0 -1
  421. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/object.js +0 -76
  422. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/object.js.map +0 -1
  423. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/optional.js +0 -25
  424. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/optional.js.map +0 -1
  425. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js +0 -24
  426. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js.map +0 -1
  427. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/promise.js +0 -8
  428. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/promise.js.map +0 -1
  429. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js +0 -8
  430. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js.map +0 -1
  431. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/record.js +0 -65
  432. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/record.js.map +0 -1
  433. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/set.js +0 -24
  434. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/set.js.map +0 -1
  435. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/string.js +0 -350
  436. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/string.js.map +0 -1
  437. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js +0 -36
  438. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js.map +0 -1
  439. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js +0 -10
  440. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js.map +0 -1
  441. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/union.js +0 -84
  442. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/union.js.map +0 -1
  443. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js +0 -8
  444. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js.map +0 -1
  445. package/dist/node_modules/zod-to-json-schema/dist/esm/selectParser.js +0 -109
  446. package/dist/node_modules/zod-to-json-schema/dist/esm/selectParser.js.map +0 -1
  447. package/dist/node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js +0 -90
  448. package/dist/node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js.map +0 -1
  449. package/dist/node_modules/zod-to-json-schema/node_modules/zod/v3/types.js +0 -42
  450. package/dist/node_modules/zod-to-json-schema/node_modules/zod/v3/types.js.map +0 -1
  451. package/dist/package.json.js +0 -8
  452. package/dist/package.json.js.map +0 -1
  453. package/dist/src/acp-extensions.d.ts +0 -91
  454. package/dist/src/acp-extensions.d.ts.map +0 -1
  455. package/dist/src/acp-extensions.js +0 -38
  456. package/dist/src/acp-extensions.js.map +0 -1
  457. package/dist/src/adapters/claude/claude.d.ts +0 -136
  458. package/dist/src/adapters/claude/claude.d.ts.map +0 -1
  459. package/dist/src/adapters/claude/claude.js +0 -1128
  460. package/dist/src/adapters/claude/claude.js.map +0 -1
  461. package/dist/src/adapters/claude/mcp-server.d.ts +0 -30
  462. package/dist/src/adapters/claude/mcp-server.d.ts.map +0 -1
  463. package/dist/src/adapters/claude/mcp-server.js +0 -668
  464. package/dist/src/adapters/claude/mcp-server.js.map +0 -1
  465. package/dist/src/adapters/claude/tools.d.ts +0 -35
  466. package/dist/src/adapters/claude/tools.d.ts.map +0 -1
  467. package/dist/src/adapters/claude/tools.js +0 -473
  468. package/dist/src/adapters/claude/tools.js.map +0 -1
  469. package/dist/src/adapters/claude/utils.d.ts +0 -48
  470. package/dist/src/adapters/claude/utils.d.ts.map +0 -1
  471. package/dist/src/adapters/claude/utils.js +0 -158
  472. package/dist/src/adapters/claude/utils.js.map +0 -1
  473. package/dist/src/agent.d.ts +0 -58
  474. package/dist/src/agent.d.ts.map +0 -1
  475. package/dist/src/agent.js +0 -576
  476. package/dist/src/agent.js.map +0 -1
  477. package/dist/src/agents/execution.d.ts +0 -2
  478. package/dist/src/agents/execution.d.ts.map +0 -1
  479. package/dist/src/agents/execution.js +0 -40
  480. package/dist/src/agents/execution.js.map +0 -1
  481. package/dist/src/agents/planning.d.ts +0 -2
  482. package/dist/src/agents/planning.d.ts.map +0 -1
  483. package/dist/src/agents/planning.js +0 -63
  484. package/dist/src/agents/planning.js.map +0 -1
  485. package/dist/src/agents/research.d.ts +0 -2
  486. package/dist/src/agents/research.d.ts.map +0 -1
  487. package/dist/src/agents/research.js +0 -163
  488. package/dist/src/agents/research.js.map +0 -1
  489. package/dist/src/file-manager.d.ts +0 -43
  490. package/dist/src/file-manager.d.ts.map +0 -1
  491. package/dist/src/file-manager.js +0 -266
  492. package/dist/src/file-manager.js.map +0 -1
  493. package/dist/src/git-manager.d.ts +0 -79
  494. package/dist/src/git-manager.d.ts.map +0 -1
  495. package/dist/src/git-manager.js +0 -454
  496. package/dist/src/git-manager.js.map +0 -1
  497. package/dist/src/posthog-api.d.ts +0 -48
  498. package/dist/src/posthog-api.d.ts.map +0 -1
  499. package/dist/src/posthog-api.js +0 -260
  500. package/dist/src/posthog-api.js.map +0 -1
  501. package/dist/src/prompt-builder.d.ts +0 -49
  502. package/dist/src/prompt-builder.d.ts.map +0 -1
  503. package/dist/src/prompt-builder.js +0 -397
  504. package/dist/src/prompt-builder.js.map +0 -1
  505. package/dist/src/schemas.d.ts +0 -980
  506. package/dist/src/schemas.d.ts.map +0 -1
  507. package/dist/src/schemas.js +0 -196
  508. package/dist/src/schemas.js.map +0 -1
  509. package/dist/src/session-store.d.ts +0 -58
  510. package/dist/src/session-store.d.ts.map +0 -1
  511. package/dist/src/session-store.js +0 -206
  512. package/dist/src/session-store.js.map +0 -1
  513. package/dist/src/task-manager.d.ts +0 -25
  514. package/dist/src/task-manager.d.ts.map +0 -1
  515. package/dist/src/task-manager.js +0 -123
  516. package/dist/src/task-manager.js.map +0 -1
  517. package/dist/src/template-manager.d.ts +0 -30
  518. package/dist/src/template-manager.d.ts.map +0 -1
  519. package/dist/src/template-manager.js +0 -152
  520. package/dist/src/template-manager.js.map +0 -1
  521. package/dist/src/todo-manager.d.ts +0 -29
  522. package/dist/src/todo-manager.d.ts.map +0 -1
  523. package/dist/src/todo-manager.js +0 -135
  524. package/dist/src/todo-manager.js.map +0 -1
  525. package/dist/src/tools/registry.d.ts +0 -25
  526. package/dist/src/tools/registry.d.ts.map +0 -1
  527. package/dist/src/tools/registry.js +0 -120
  528. package/dist/src/tools/registry.js.map +0 -1
  529. package/dist/src/tools/types.d.ts +0 -80
  530. package/dist/src/tools/types.d.ts.map +0 -1
  531. package/dist/src/types.d.ts +0 -193
  532. package/dist/src/types.d.ts.map +0 -1
  533. package/dist/src/types.js +0 -11
  534. package/dist/src/types.js.map +0 -1
  535. package/dist/src/utils/logger.d.ts +0 -37
  536. package/dist/src/utils/logger.d.ts.map +0 -1
  537. package/dist/src/utils/logger.js +0 -83
  538. package/dist/src/utils/logger.js.map +0 -1
  539. package/dist/src/utils/tapped-stream.d.ts +0 -17
  540. package/dist/src/utils/tapped-stream.d.ts.map +0 -1
  541. package/dist/src/utils/tapped-stream.js +0 -45
  542. package/dist/src/utils/tapped-stream.js.map +0 -1
  543. package/dist/src/workflow/config.d.ts +0 -3
  544. package/dist/src/workflow/config.d.ts.map +0 -1
  545. package/dist/src/workflow/config.js +0 -54
  546. package/dist/src/workflow/config.js.map +0 -1
  547. package/dist/src/workflow/steps/build.d.ts +0 -3
  548. package/dist/src/workflow/steps/build.d.ts.map +0 -1
  549. package/dist/src/workflow/steps/build.js +0 -108
  550. package/dist/src/workflow/steps/build.js.map +0 -1
  551. package/dist/src/workflow/steps/finalize.d.ts +0 -3
  552. package/dist/src/workflow/steps/finalize.d.ts.map +0 -1
  553. package/dist/src/workflow/steps/finalize.js +0 -188
  554. package/dist/src/workflow/steps/finalize.js.map +0 -1
  555. package/dist/src/workflow/steps/plan.d.ts +0 -3
  556. package/dist/src/workflow/steps/plan.d.ts.map +0 -1
  557. package/dist/src/workflow/steps/plan.js +0 -136
  558. package/dist/src/workflow/steps/plan.js.map +0 -1
  559. package/dist/src/workflow/steps/research.d.ts +0 -3
  560. package/dist/src/workflow/steps/research.d.ts.map +0 -1
  561. package/dist/src/workflow/steps/research.js +0 -189
  562. package/dist/src/workflow/steps/research.js.map +0 -1
  563. package/dist/src/workflow/types.d.ts +0 -51
  564. package/dist/src/workflow/types.d.ts.map +0 -1
  565. package/dist/src/workflow/utils.d.ts +0 -12
  566. package/dist/src/workflow/utils.d.ts.map +0 -1
  567. package/dist/src/workflow/utils.js +0 -41
  568. package/dist/src/workflow/utils.js.map +0 -1
  569. package/dist/src/worktree-manager.d.ts +0 -39
  570. package/dist/src/worktree-manager.d.ts.map +0 -1
  571. package/dist/src/worktree-manager.js +0 -808
  572. package/dist/src/worktree-manager.js.map +0 -1
@@ -1,189 +0,0 @@
1
- import { query } from '@anthropic-ai/claude-agent-sdk';
2
- import { POSTHOG_NOTIFICATIONS } from '../../acp-extensions.js';
3
- import { RESEARCH_SYSTEM_PROMPT } from '../../agents/research.js';
4
- import { finalizeStepGitActions } from '../utils.js';
5
-
6
- const researchStep = async ({ step, context }) => {
7
- const { task, cwd, isCloudMode, options, logger, fileManager, gitManager, promptBuilder, sessionId, mcpServers, sendNotification, } = context;
8
- const stepLogger = logger.child("ResearchStep");
9
- const existingResearch = await fileManager.readResearch(task.id);
10
- if (existingResearch) {
11
- stepLogger.info("Research already exists", {
12
- taskId: task.id,
13
- hasQuestions: !!existingResearch.questions,
14
- answered: existingResearch.answered,
15
- });
16
- // If there are unanswered questions, re-emit them so UI can prompt user
17
- if (existingResearch.questions && !existingResearch.answered) {
18
- stepLogger.info("Re-emitting unanswered research questions", {
19
- taskId: task.id,
20
- questionCount: existingResearch.questions.length,
21
- });
22
- await sendNotification(POSTHOG_NOTIFICATIONS.ARTIFACT, {
23
- sessionId,
24
- kind: "research_questions",
25
- content: existingResearch.questions,
26
- });
27
- // In local mode, halt to allow user to answer
28
- if (!isCloudMode) {
29
- await sendNotification(POSTHOG_NOTIFICATIONS.PHASE_COMPLETE, {
30
- sessionId,
31
- phase: "research",
32
- });
33
- return { status: "skipped", halt: true };
34
- }
35
- }
36
- return { status: "skipped" };
37
- }
38
- stepLogger.info("Starting research phase", { taskId: task.id });
39
- await sendNotification(POSTHOG_NOTIFICATIONS.PHASE_START, {
40
- sessionId,
41
- phase: "research",
42
- });
43
- const researchPrompt = await promptBuilder.buildResearchPrompt(task, cwd);
44
- const fullPrompt = `${RESEARCH_SYSTEM_PROMPT}\n\n${researchPrompt}`;
45
- const baseOptions = {
46
- model: step.model,
47
- cwd,
48
- permissionMode: "plan",
49
- settingSources: ["local"],
50
- mcpServers,
51
- // Allow research tools: read-only operations, web search, and MCP resources
52
- allowedTools: [
53
- "Read",
54
- "Glob",
55
- "Grep",
56
- "WebFetch",
57
- "WebSearch",
58
- "ListMcpResources",
59
- "ReadMcpResource",
60
- "TodoWrite",
61
- "BashOutput",
62
- ],
63
- };
64
- const response = query({
65
- prompt: fullPrompt,
66
- options: { ...baseOptions, ...(options.queryOverrides || {}) },
67
- });
68
- let jsonContent = "";
69
- try {
70
- for await (const message of response) {
71
- // Extract text content from assistant messages
72
- if (message.type === "assistant" && message.message?.content) {
73
- for (const c of message.message.content) {
74
- if (c.type === "text" && c.text) {
75
- jsonContent += c.text;
76
- }
77
- }
78
- }
79
- }
80
- }
81
- catch (error) {
82
- stepLogger.error("Error during research step query", error);
83
- throw error;
84
- }
85
- if (!jsonContent.trim()) {
86
- stepLogger.error("No JSON output from research agent", { taskId: task.id });
87
- await sendNotification(POSTHOG_NOTIFICATIONS.ERROR, {
88
- sessionId,
89
- message: "Research agent returned no output",
90
- });
91
- return { status: "completed", halt: true };
92
- }
93
- // Parse JSON response
94
- let evaluation;
95
- try {
96
- // Extract JSON from potential markdown code blocks or other wrapping
97
- const jsonMatch = jsonContent.match(/\{[\s\S]*\}/);
98
- if (!jsonMatch) {
99
- throw new Error("No JSON object found in response");
100
- }
101
- evaluation = JSON.parse(jsonMatch[0]);
102
- stepLogger.info("Parsed research evaluation", {
103
- taskId: task.id,
104
- score: evaluation.actionabilityScore,
105
- hasQuestions: !!evaluation.questions,
106
- });
107
- }
108
- catch (error) {
109
- stepLogger.error("Failed to parse research JSON", {
110
- taskId: task.id,
111
- error: error instanceof Error ? error.message : String(error),
112
- content: jsonContent.substring(0, 500),
113
- });
114
- await sendNotification(POSTHOG_NOTIFICATIONS.ERROR, {
115
- sessionId,
116
- message: `Failed to parse research JSON: ${error instanceof Error ? error.message : String(error)}`,
117
- });
118
- return { status: "completed", halt: true };
119
- }
120
- // Add answered/answers fields to evaluation
121
- if (evaluation.questions && evaluation.questions.length > 0) {
122
- evaluation.answered = false;
123
- evaluation.answers = undefined;
124
- }
125
- // Always write research.json
126
- await fileManager.writeResearch(task.id, evaluation);
127
- stepLogger.info("Research evaluation written", {
128
- taskId: task.id,
129
- score: evaluation.actionabilityScore,
130
- hasQuestions: !!evaluation.questions,
131
- });
132
- await sendNotification(POSTHOG_NOTIFICATIONS.ARTIFACT, {
133
- sessionId,
134
- kind: "research_evaluation",
135
- content: evaluation,
136
- });
137
- await gitManager.addAllPostHogFiles();
138
- await finalizeStepGitActions(context, step, {
139
- commitMessage: `Research phase for ${task.title}`,
140
- });
141
- // Log whether questions need answering
142
- if (evaluation.actionabilityScore < 0.7 &&
143
- evaluation.questions &&
144
- evaluation.questions.length > 0) {
145
- stepLogger.info("Actionability score below threshold, questions needed", {
146
- taskId: task.id,
147
- score: evaluation.actionabilityScore,
148
- questionCount: evaluation.questions.length,
149
- });
150
- await sendNotification(POSTHOG_NOTIFICATIONS.ARTIFACT, {
151
- sessionId,
152
- kind: "research_questions",
153
- content: evaluation.questions,
154
- });
155
- }
156
- else {
157
- stepLogger.info("Actionability score acceptable, proceeding to planning", {
158
- taskId: task.id,
159
- score: evaluation.actionabilityScore,
160
- });
161
- }
162
- // In local mode, always halt after research for user review
163
- if (!isCloudMode) {
164
- await sendNotification(POSTHOG_NOTIFICATIONS.PHASE_COMPLETE, {
165
- sessionId,
166
- phase: "research",
167
- });
168
- return { status: "completed", halt: true };
169
- }
170
- // In cloud mode, check if questions need answering
171
- const researchData = await fileManager.readResearch(task.id);
172
- if (researchData?.questions && !researchData.answered) {
173
- // Questions need answering - halt for user input in cloud mode too
174
- await sendNotification(POSTHOG_NOTIFICATIONS.PHASE_COMPLETE, {
175
- sessionId,
176
- phase: "research",
177
- });
178
- return { status: "completed", halt: true };
179
- }
180
- // No questions or questions already answered - proceed to planning
181
- await sendNotification(POSTHOG_NOTIFICATIONS.PHASE_COMPLETE, {
182
- sessionId,
183
- phase: "research",
184
- });
185
- return { status: "completed" };
186
- };
187
-
188
- export { researchStep };
189
- //# sourceMappingURL=research.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"research.js","sources":["../../../../src/workflow/steps/research.ts"],"sourcesContent":["import { query } from \"@anthropic-ai/claude-agent-sdk\";\nimport { POSTHOG_NOTIFICATIONS } from \"../../acp-extensions.js\";\nimport { RESEARCH_SYSTEM_PROMPT } from \"../../agents/research.js\";\nimport type { ResearchEvaluation } from \"../../types.js\";\nimport type { WorkflowStepRunner } from \"../types.js\";\nimport { finalizeStepGitActions } from \"../utils.js\";\n\nexport const researchStep: WorkflowStepRunner = async ({ step, context }) => {\n const {\n task,\n cwd,\n isCloudMode,\n options,\n logger,\n fileManager,\n gitManager,\n promptBuilder,\n sessionId,\n mcpServers,\n sendNotification,\n } = context;\n\n const stepLogger = logger.child(\"ResearchStep\");\n\n const existingResearch = await fileManager.readResearch(task.id);\n if (existingResearch) {\n stepLogger.info(\"Research already exists\", {\n taskId: task.id,\n hasQuestions: !!existingResearch.questions,\n answered: existingResearch.answered,\n });\n\n // If there are unanswered questions, re-emit them so UI can prompt user\n if (existingResearch.questions && !existingResearch.answered) {\n stepLogger.info(\"Re-emitting unanswered research questions\", {\n taskId: task.id,\n questionCount: existingResearch.questions.length,\n });\n\n await sendNotification(POSTHOG_NOTIFICATIONS.ARTIFACT, {\n sessionId,\n kind: \"research_questions\",\n content: existingResearch.questions,\n });\n\n // In local mode, halt to allow user to answer\n if (!isCloudMode) {\n await sendNotification(POSTHOG_NOTIFICATIONS.PHASE_COMPLETE, {\n sessionId,\n phase: \"research\",\n });\n return { status: \"skipped\", halt: true };\n }\n }\n\n return { status: \"skipped\" };\n }\n\n stepLogger.info(\"Starting research phase\", { taskId: task.id });\n await sendNotification(POSTHOG_NOTIFICATIONS.PHASE_START, {\n sessionId,\n phase: \"research\",\n });\n\n const researchPrompt = await promptBuilder.buildResearchPrompt(task, cwd);\n const fullPrompt = `${RESEARCH_SYSTEM_PROMPT}\\n\\n${researchPrompt}`;\n\n const baseOptions: Record<string, unknown> = {\n model: step.model,\n cwd,\n permissionMode: \"plan\",\n settingSources: [\"local\"],\n mcpServers,\n // Allow research tools: read-only operations, web search, and MCP resources\n allowedTools: [\n \"Read\",\n \"Glob\",\n \"Grep\",\n \"WebFetch\",\n \"WebSearch\",\n \"ListMcpResources\",\n \"ReadMcpResource\",\n \"TodoWrite\",\n \"BashOutput\",\n ],\n };\n\n const response = query({\n prompt: fullPrompt,\n options: { ...baseOptions, ...(options.queryOverrides || {}) },\n });\n\n let jsonContent = \"\";\n try {\n for await (const message of response) {\n // Extract text content from assistant messages\n if (message.type === \"assistant\" && message.message?.content) {\n for (const c of message.message.content) {\n if (c.type === \"text\" && c.text) {\n jsonContent += c.text;\n }\n }\n }\n }\n } catch (error) {\n stepLogger.error(\"Error during research step query\", error);\n throw error;\n }\n\n if (!jsonContent.trim()) {\n stepLogger.error(\"No JSON output from research agent\", { taskId: task.id });\n await sendNotification(POSTHOG_NOTIFICATIONS.ERROR, {\n sessionId,\n message: \"Research agent returned no output\",\n });\n return { status: \"completed\", halt: true };\n }\n\n // Parse JSON response\n let evaluation: ResearchEvaluation;\n try {\n // Extract JSON from potential markdown code blocks or other wrapping\n const jsonMatch = jsonContent.match(/\\{[\\s\\S]*\\}/);\n if (!jsonMatch) {\n throw new Error(\"No JSON object found in response\");\n }\n evaluation = JSON.parse(jsonMatch[0]);\n stepLogger.info(\"Parsed research evaluation\", {\n taskId: task.id,\n score: evaluation.actionabilityScore,\n hasQuestions: !!evaluation.questions,\n });\n } catch (error) {\n stepLogger.error(\"Failed to parse research JSON\", {\n taskId: task.id,\n error: error instanceof Error ? error.message : String(error),\n content: jsonContent.substring(0, 500),\n });\n await sendNotification(POSTHOG_NOTIFICATIONS.ERROR, {\n sessionId,\n message: `Failed to parse research JSON: ${\n error instanceof Error ? error.message : String(error)\n }`,\n });\n return { status: \"completed\", halt: true };\n }\n\n // Add answered/answers fields to evaluation\n if (evaluation.questions && evaluation.questions.length > 0) {\n evaluation.answered = false;\n evaluation.answers = undefined;\n }\n\n // Always write research.json\n await fileManager.writeResearch(task.id, evaluation);\n stepLogger.info(\"Research evaluation written\", {\n taskId: task.id,\n score: evaluation.actionabilityScore,\n hasQuestions: !!evaluation.questions,\n });\n\n await sendNotification(POSTHOG_NOTIFICATIONS.ARTIFACT, {\n sessionId,\n kind: \"research_evaluation\",\n content: evaluation,\n });\n\n await gitManager.addAllPostHogFiles();\n await finalizeStepGitActions(context, step, {\n commitMessage: `Research phase for ${task.title}`,\n });\n\n // Log whether questions need answering\n if (\n evaluation.actionabilityScore < 0.7 &&\n evaluation.questions &&\n evaluation.questions.length > 0\n ) {\n stepLogger.info(\"Actionability score below threshold, questions needed\", {\n taskId: task.id,\n score: evaluation.actionabilityScore,\n questionCount: evaluation.questions.length,\n });\n\n await sendNotification(POSTHOG_NOTIFICATIONS.ARTIFACT, {\n sessionId,\n kind: \"research_questions\",\n content: evaluation.questions,\n });\n } else {\n stepLogger.info(\"Actionability score acceptable, proceeding to planning\", {\n taskId: task.id,\n score: evaluation.actionabilityScore,\n });\n }\n\n // In local mode, always halt after research for user review\n if (!isCloudMode) {\n await sendNotification(POSTHOG_NOTIFICATIONS.PHASE_COMPLETE, {\n sessionId,\n phase: \"research\",\n });\n return { status: \"completed\", halt: true };\n }\n\n // In cloud mode, check if questions need answering\n const researchData = await fileManager.readResearch(task.id);\n if (researchData?.questions && !researchData.answered) {\n // Questions need answering - halt for user input in cloud mode too\n await sendNotification(POSTHOG_NOTIFICATIONS.PHASE_COMPLETE, {\n sessionId,\n phase: \"research\",\n });\n return { status: \"completed\", halt: true };\n }\n\n // No questions or questions already answered - proceed to planning\n await sendNotification(POSTHOG_NOTIFICATIONS.PHASE_COMPLETE, {\n sessionId,\n phase: \"research\",\n });\n return { status: \"completed\" };\n};\n"],"names":[],"mappings":"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"}
@@ -1,51 +0,0 @@
1
- import type { AgentSideConnection } from "@agentclientprotocol/sdk";
2
- import type { PostHogFileManager } from "../file-manager.js";
3
- import type { GitManager } from "../git-manager.js";
4
- import type { PostHogAPIClient } from "../posthog-api.js";
5
- import type { PromptBuilder } from "../prompt-builder.js";
6
- import type { PermissionMode, Task, TaskExecutionOptions } from "../types.js";
7
- import type { Logger } from "../utils/logger.js";
8
- /**
9
- * Function type for sending custom PostHog notifications via ACP extNotification.
10
- * Used by workflow steps to emit artifacts, phase updates, etc.
11
- */
12
- export type SendNotification = (method: string, params: Record<string, unknown>) => Promise<void>;
13
- export interface WorkflowRuntime {
14
- task: Task;
15
- taskSlug: string;
16
- runId: string;
17
- cwd: string;
18
- isCloudMode: boolean;
19
- options: TaskExecutionOptions;
20
- logger: Logger;
21
- fileManager: PostHogFileManager;
22
- gitManager: GitManager;
23
- promptBuilder: PromptBuilder;
24
- connection: AgentSideConnection;
25
- sessionId: string;
26
- mcpServers?: Record<string, unknown>;
27
- posthogAPI?: PostHogAPIClient;
28
- sendNotification: SendNotification;
29
- stepResults: Record<string, unknown>;
30
- }
31
- export interface WorkflowStepDefinition {
32
- id: string;
33
- name: string;
34
- agent: string;
35
- model: string;
36
- permissionMode?: PermissionMode | string;
37
- commit?: boolean;
38
- push?: boolean;
39
- run: WorkflowStepRunner;
40
- }
41
- export interface WorkflowStepRuntime {
42
- step: WorkflowStepDefinition;
43
- context: WorkflowRuntime;
44
- }
45
- export interface WorkflowStepResult {
46
- status: "completed" | "skipped";
47
- halt?: boolean;
48
- }
49
- export type WorkflowStepRunner = (runtime: WorkflowStepRuntime) => Promise<WorkflowStepResult>;
50
- export type WorkflowDefinition = WorkflowStepDefinition[];
51
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/workflow/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAC7B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC5B,OAAO,CAAC,IAAI,CAAC,CAAC;AAEnB,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,IAAI,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,oBAAoB,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,kBAAkB,CAAC;IAChC,UAAU,EAAE,UAAU,CAAC;IACvB,aAAa,EAAE,aAAa,CAAC;IAC7B,UAAU,EAAE,mBAAmB,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,cAAc,GAAG,MAAM,CAAC;IACzC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,GAAG,EAAE,kBAAkB,CAAC;CACzB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,sBAAsB,CAAC;IAC7B,OAAO,EAAE,eAAe,CAAC;CAC1B;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,WAAW,GAAG,SAAS,CAAC;IAChC,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,MAAM,kBAAkB,GAAG,CAC/B,OAAO,EAAE,mBAAmB,KACzB,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAEjC,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,EAAE,CAAC"}
@@ -1,12 +0,0 @@
1
- import type { WorkflowRuntime, WorkflowStepDefinition } from "./types.js";
2
- interface FinalizeGitOptions {
3
- commitMessage: string;
4
- allowEmptyCommit?: boolean;
5
- }
6
- /**
7
- * Commits (and optionally pushes) any staged changes according to the step configuration.
8
- * Returns true if a commit was created.
9
- */
10
- export declare function finalizeStepGitActions(context: WorkflowRuntime, step: WorkflowStepDefinition, options: FinalizeGitOptions): Promise<boolean>;
11
- export {};
12
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/workflow/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAE1E,UAAU,kBAAkB;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE,sBAAsB,EAC5B,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,OAAO,CAAC,CAqClB"}
@@ -1,41 +0,0 @@
1
- /**
2
- * Commits (and optionally pushes) any staged changes according to the step configuration.
3
- * Returns true if a commit was created.
4
- */
5
- async function finalizeStepGitActions(context, step, options) {
6
- if (!step.commit) {
7
- return false;
8
- }
9
- const { gitManager, logger } = context;
10
- const hasStagedChanges = await gitManager.hasStagedChanges();
11
- if (!hasStagedChanges && !options.allowEmptyCommit) {
12
- logger.debug("No staged changes to commit for step", { stepId: step.id });
13
- return false;
14
- }
15
- try {
16
- await gitManager.commitChanges(options.commitMessage);
17
- logger.info("Committed changes for step", {
18
- stepId: step.id,
19
- message: options.commitMessage,
20
- });
21
- }
22
- catch (error) {
23
- logger.error("Failed to commit changes for step", {
24
- stepId: step.id,
25
- error: error instanceof Error ? error.message : String(error),
26
- });
27
- throw error;
28
- }
29
- if (step.push) {
30
- const branchName = await gitManager.getCurrentBranch();
31
- await gitManager.pushBranch(branchName);
32
- logger.info("Pushed branch after step", {
33
- stepId: step.id,
34
- branch: branchName,
35
- });
36
- }
37
- return true;
38
- }
39
-
40
- export { finalizeStepGitActions };
41
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sources":["../../../src/workflow/utils.ts"],"sourcesContent":["import type { WorkflowRuntime, WorkflowStepDefinition } from \"./types.js\";\n\ninterface FinalizeGitOptions {\n commitMessage: string;\n allowEmptyCommit?: boolean;\n}\n\n/**\n * Commits (and optionally pushes) any staged changes according to the step configuration.\n * Returns true if a commit was created.\n */\nexport async function finalizeStepGitActions(\n context: WorkflowRuntime,\n step: WorkflowStepDefinition,\n options: FinalizeGitOptions,\n): Promise<boolean> {\n if (!step.commit) {\n return false;\n }\n\n const { gitManager, logger } = context;\n const hasStagedChanges = await gitManager.hasStagedChanges();\n\n if (!hasStagedChanges && !options.allowEmptyCommit) {\n logger.debug(\"No staged changes to commit for step\", { stepId: step.id });\n return false;\n }\n\n try {\n await gitManager.commitChanges(options.commitMessage);\n logger.info(\"Committed changes for step\", {\n stepId: step.id,\n message: options.commitMessage,\n });\n } catch (error) {\n logger.error(\"Failed to commit changes for step\", {\n stepId: step.id,\n error: error instanceof Error ? error.message : String(error),\n });\n throw error;\n }\n\n if (step.push) {\n const branchName = await gitManager.getCurrentBranch();\n await gitManager.pushBranch(branchName);\n logger.info(\"Pushed branch after step\", {\n stepId: step.id,\n branch: branchName,\n });\n }\n\n return true;\n}\n"],"names":[],"mappings":"AAOA;;;AAGG;AACI,eAAe,sBAAsB,CAC1C,OAAwB,EACxB,IAA4B,EAC5B,OAA2B,EAAA;AAE3B,IAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;AAChB,QAAA,OAAO,KAAK;IACd;AAEA,IAAA,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO;AACtC,IAAA,MAAM,gBAAgB,GAAG,MAAM,UAAU,CAAC,gBAAgB,EAAE;IAE5D,IAAI,CAAC,gBAAgB,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE;AAClD,QAAA,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC;AACzE,QAAA,OAAO,KAAK;IACd;AAEA,IAAA,IAAI;QACF,MAAM,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC;AACrD,QAAA,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE;YACxC,MAAM,EAAE,IAAI,CAAC,EAAE;YACf,OAAO,EAAE,OAAO,CAAC,aAAa;AAC/B,SAAA,CAAC;IACJ;IAAE,OAAO,KAAK,EAAE;AACd,QAAA,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE;YAChD,MAAM,EAAE,IAAI,CAAC,EAAE;AACf,YAAA,KAAK,EAAE,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC;AAC9D,SAAA,CAAC;AACF,QAAA,MAAM,KAAK;IACb;AAEA,IAAA,IAAI,IAAI,CAAC,IAAI,EAAE;AACb,QAAA,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,gBAAgB,EAAE;AACtD,QAAA,MAAM,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC;AACvC,QAAA,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE;YACtC,MAAM,EAAE,IAAI,CAAC,EAAE;AACf,YAAA,MAAM,EAAE,UAAU;AACnB,SAAA,CAAC;IACJ;AAEA,IAAA,OAAO,IAAI;AACb;;;;"}
@@ -1,39 +0,0 @@
1
- import type { WorktreeInfo } from "./types.js";
2
- import { Logger } from "./utils/logger.js";
3
- export interface WorktreeConfig {
4
- mainRepoPath: string;
5
- worktreeBasePath?: string;
6
- logger?: Logger;
7
- }
8
- export declare class WorktreeManager {
9
- private mainRepoPath;
10
- private worktreeBasePath;
11
- private repoName;
12
- private logger;
13
- constructor(config: WorktreeConfig);
14
- private usesExternalPath;
15
- private runGitCommand;
16
- private randomElement;
17
- generateWorktreeName(): string;
18
- private getWorktreeFolderPath;
19
- private getWorktreePath;
20
- worktreeExists(name: string): Promise<boolean>;
21
- ensureArrayDirIgnored(): Promise<void>;
22
- private generateUniqueWorktreeName;
23
- private getDefaultBranch;
24
- createWorktree(): Promise<WorktreeInfo>;
25
- deleteWorktree(worktreePath: string): Promise<void>;
26
- getWorktreeInfo(worktreePath: string): Promise<WorktreeInfo | null>;
27
- listWorktrees(): Promise<WorktreeInfo[]>;
28
- private parseWorktreeList;
29
- isWorktree(repoPath: string): Promise<boolean>;
30
- getMainRepoPathFromWorktree(worktreePath: string): Promise<string | null>;
31
- cleanupOrphanedWorktrees(associatedWorktreePaths: string[]): Promise<{
32
- deleted: string[];
33
- errors: Array<{
34
- path: string;
35
- error: string;
36
- }>;
37
- }>;
38
- }
39
- //# sourceMappingURL=worktree-manager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"worktree-manager.d.ts","sourceRoot":"","sources":["../../src/worktree-manager.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAK3C,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAgeD,qBAAa,eAAe;IAC1B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,gBAAgB,CAAgB;IACxC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,EAAE,cAAc;IASlC,OAAO,CAAC,gBAAgB;YAIV,aAAa;IAW3B,OAAO,CAAC,aAAa;IAIrB,oBAAoB,IAAI,MAAM;IAO9B,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,eAAe;IAIjB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAU9C,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;YA+B9B,0BAA0B;YAkB1B,gBAAgB;IAwBxB,cAAc,IAAI,OAAO,CAAC,YAAY,CAAC;IAyDvC,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsCnD,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAcnE,aAAa,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAU9C,OAAO,CAAC,iBAAiB;IAwCnB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAmB9C,2BAA2B,CAC/B,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAoBnB,wBAAwB,CAAC,uBAAuB,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QACzE,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,MAAM,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAChD,CAAC;CA+CH"}