agentrix 0.0.1

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 (402) hide show
  1. package/README.md +235 -0
  2. package/bin/agentrix.js +5 -0
  3. package/dist/api/auth.d.ts +10 -0
  4. package/dist/api/auth.d.ts.map +1 -0
  5. package/dist/api/auth.js +30 -0
  6. package/dist/api/auth.js.map +1 -0
  7. package/dist/api/automation.d.ts +52 -0
  8. package/dist/api/automation.d.ts.map +1 -0
  9. package/dist/api/automation.js +181 -0
  10. package/dist/api/automation.js.map +1 -0
  11. package/dist/api/base-handler.d.ts +62 -0
  12. package/dist/api/base-handler.d.ts.map +1 -0
  13. package/dist/api/base-handler.js +55 -0
  14. package/dist/api/base-handler.js.map +1 -0
  15. package/dist/api/config.d.ts +5 -0
  16. package/dist/api/config.d.ts.map +1 -0
  17. package/dist/api/config.js +14 -0
  18. package/dist/api/config.js.map +1 -0
  19. package/dist/api/create-plan.d.ts +8 -0
  20. package/dist/api/create-plan.d.ts.map +1 -0
  21. package/dist/api/create-plan.js +77 -0
  22. package/dist/api/create-plan.js.map +1 -0
  23. package/dist/api/git-status.d.ts +6 -0
  24. package/dist/api/git-status.d.ts.map +1 -0
  25. package/dist/api/git-status.js +57 -0
  26. package/dist/api/git-status.js.map +1 -0
  27. package/dist/api/plans.d.ts +6 -0
  28. package/dist/api/plans.d.ts.map +1 -0
  29. package/dist/api/plans.js +75 -0
  30. package/dist/api/plans.js.map +1 -0
  31. package/dist/api/repo-dashboard.d.ts +13 -0
  32. package/dist/api/repo-dashboard.d.ts.map +1 -0
  33. package/dist/api/repo-dashboard.js +47 -0
  34. package/dist/api/repo-dashboard.js.map +1 -0
  35. package/dist/api/repo-issue.d.ts +12 -0
  36. package/dist/api/repo-issue.d.ts.map +1 -0
  37. package/dist/api/repo-issue.js +47 -0
  38. package/dist/api/repo-issue.js.map +1 -0
  39. package/dist/api/repos.d.ts +9 -0
  40. package/dist/api/repos.d.ts.map +1 -0
  41. package/dist/api/repos.js +46 -0
  42. package/dist/api/repos.js.map +1 -0
  43. package/dist/api/sessions.d.ts +5 -0
  44. package/dist/api/sessions.d.ts.map +1 -0
  45. package/dist/api/sessions.js +19 -0
  46. package/dist/api/sessions.js.map +1 -0
  47. package/dist/api/tasks.d.ts +6 -0
  48. package/dist/api/tasks.d.ts.map +1 -0
  49. package/dist/api/tasks.js +22 -0
  50. package/dist/api/tasks.js.map +1 -0
  51. package/dist/api/terminal.d.ts +7 -0
  52. package/dist/api/terminal.d.ts.map +1 -0
  53. package/dist/api/terminal.js +16 -0
  54. package/dist/api/terminal.js.map +1 -0
  55. package/dist/api/worktrees.d.ts +7 -0
  56. package/dist/api/worktrees.d.ts.map +1 -0
  57. package/dist/api/worktrees.js +26 -0
  58. package/dist/api/worktrees.js.map +1 -0
  59. package/dist/cli/arg-parser.d.ts +3 -0
  60. package/dist/cli/arg-parser.d.ts.map +1 -0
  61. package/dist/cli/arg-parser.js +243 -0
  62. package/dist/cli/arg-parser.js.map +1 -0
  63. package/dist/cli/config-resolver.d.ts +29 -0
  64. package/dist/cli/config-resolver.d.ts.map +1 -0
  65. package/dist/cli/config-resolver.js +139 -0
  66. package/dist/cli/config-resolver.js.map +1 -0
  67. package/dist/cli/config.d.ts +5 -0
  68. package/dist/cli/config.d.ts.map +1 -0
  69. package/dist/cli/config.js +224 -0
  70. package/dist/cli/config.js.map +1 -0
  71. package/dist/cli/constants.d.ts +7 -0
  72. package/dist/cli/constants.d.ts.map +1 -0
  73. package/dist/cli/constants.js +15 -0
  74. package/dist/cli/constants.js.map +1 -0
  75. package/dist/cli/help.d.ts +3 -0
  76. package/dist/cli/help.d.ts.map +1 -0
  77. package/dist/cli/help.js +35 -0
  78. package/dist/cli/help.js.map +1 -0
  79. package/dist/cli/index.d.ts +23 -0
  80. package/dist/cli/index.d.ts.map +1 -0
  81. package/dist/cli/index.js +23 -0
  82. package/dist/cli/index.js.map +1 -0
  83. package/dist/cli/plans-command.d.ts +3 -0
  84. package/dist/cli/plans-command.d.ts.map +1 -0
  85. package/dist/cli/plans-command.js +151 -0
  86. package/dist/cli/plans-command.js.map +1 -0
  87. package/dist/cli/server-starter.d.ts +26 -0
  88. package/dist/cli/server-starter.d.ts.map +1 -0
  89. package/dist/cli/server-starter.js +72 -0
  90. package/dist/cli/server-starter.js.map +1 -0
  91. package/dist/cli/types.d.ts +46 -0
  92. package/dist/cli/types.d.ts.map +1 -0
  93. package/dist/cli/types.js +2 -0
  94. package/dist/cli/types.js.map +1 -0
  95. package/dist/cli/validation.d.ts +14 -0
  96. package/dist/cli/validation.d.ts.map +1 -0
  97. package/dist/cli/validation.js +99 -0
  98. package/dist/cli/validation.js.map +1 -0
  99. package/dist/cli.d.ts +5 -0
  100. package/dist/cli.d.ts.map +1 -0
  101. package/dist/cli.js +73 -0
  102. package/dist/cli.js.map +1 -0
  103. package/dist/config/agent-commands.d.ts +27 -0
  104. package/dist/config/agent-commands.d.ts.map +1 -0
  105. package/dist/config/agent-commands.js +56 -0
  106. package/dist/config/agent-commands.js.map +1 -0
  107. package/dist/config/constants.d.ts +35 -0
  108. package/dist/config/constants.d.ts.map +1 -0
  109. package/dist/config/constants.js +35 -0
  110. package/dist/config/constants.js.map +1 -0
  111. package/dist/config/developer-messages.d.ts +2 -0
  112. package/dist/config/developer-messages.d.ts.map +1 -0
  113. package/dist/config/developer-messages.js +43 -0
  114. package/dist/config/developer-messages.js.map +1 -0
  115. package/dist/core/agents.d.ts +23 -0
  116. package/dist/core/agents.d.ts.map +1 -0
  117. package/dist/core/agents.js +91 -0
  118. package/dist/core/agents.js.map +1 -0
  119. package/dist/core/auth.d.ts +3 -0
  120. package/dist/core/auth.d.ts.map +1 -0
  121. package/dist/core/auth.js +69 -0
  122. package/dist/core/auth.js.map +1 -0
  123. package/dist/core/automation/branch.d.ts +18 -0
  124. package/dist/core/automation/branch.d.ts.map +1 -0
  125. package/dist/core/automation/branch.js +29 -0
  126. package/dist/core/automation/branch.js.map +1 -0
  127. package/dist/core/automation/git-orchestration.d.ts +51 -0
  128. package/dist/core/automation/git-orchestration.d.ts.map +1 -0
  129. package/dist/core/automation/git-orchestration.js +25 -0
  130. package/dist/core/automation/git-orchestration.js.map +1 -0
  131. package/dist/core/automation/plan.d.ts +15 -0
  132. package/dist/core/automation/plan.d.ts.map +1 -0
  133. package/dist/core/automation/plan.js +25 -0
  134. package/dist/core/automation/plan.js.map +1 -0
  135. package/dist/core/automation/request-validation.d.ts +45 -0
  136. package/dist/core/automation/request-validation.d.ts.map +1 -0
  137. package/dist/core/automation/request-validation.js +144 -0
  138. package/dist/core/automation/request-validation.js.map +1 -0
  139. package/dist/core/automation/task-runner.d.ts +42 -0
  140. package/dist/core/automation/task-runner.d.ts.map +1 -0
  141. package/dist/core/automation/task-runner.js +215 -0
  142. package/dist/core/automation/task-runner.js.map +1 -0
  143. package/dist/core/branch-name.d.ts +13 -0
  144. package/dist/core/branch-name.d.ts.map +1 -0
  145. package/dist/core/branch-name.js +429 -0
  146. package/dist/core/branch-name.js.map +1 -0
  147. package/dist/core/default-branch.d.ts +12 -0
  148. package/dist/core/default-branch.d.ts.map +1 -0
  149. package/dist/core/default-branch.js +78 -0
  150. package/dist/core/default-branch.js.map +1 -0
  151. package/dist/core/event-bus.d.ts +73 -0
  152. package/dist/core/event-bus.d.ts.map +1 -0
  153. package/dist/core/event-bus.js +127 -0
  154. package/dist/core/event-bus.js.map +1 -0
  155. package/dist/core/git.d.ts +13 -0
  156. package/dist/core/git.d.ts.map +1 -0
  157. package/dist/core/git.js +15 -0
  158. package/dist/core/git.js.map +1 -0
  159. package/dist/core/github.d.ts +10 -0
  160. package/dist/core/github.d.ts.map +1 -0
  161. package/dist/core/github.js +245 -0
  162. package/dist/core/github.js.map +1 -0
  163. package/dist/core/plan-storage.d.ts +46 -0
  164. package/dist/core/plan-storage.d.ts.map +1 -0
  165. package/dist/core/plan-storage.js +237 -0
  166. package/dist/core/plan-storage.js.map +1 -0
  167. package/dist/core/plan.d.ts +23 -0
  168. package/dist/core/plan.d.ts.map +1 -0
  169. package/dist/core/plan.js +445 -0
  170. package/dist/core/plan.js.map +1 -0
  171. package/dist/core/repositories.d.ts +2 -0
  172. package/dist/core/repositories.d.ts.map +1 -0
  173. package/dist/core/repositories.js +58 -0
  174. package/dist/core/repositories.js.map +1 -0
  175. package/dist/core/repository-config.d.ts +9 -0
  176. package/dist/core/repository-config.d.ts.map +1 -0
  177. package/dist/core/repository-config.js +65 -0
  178. package/dist/core/repository-config.js.map +1 -0
  179. package/dist/core/task-store.d.ts +14 -0
  180. package/dist/core/task-store.d.ts.map +1 -0
  181. package/dist/core/task-store.js +105 -0
  182. package/dist/core/task-store.js.map +1 -0
  183. package/dist/core/tasks.d.ts +62 -0
  184. package/dist/core/tasks.d.ts.map +1 -0
  185. package/dist/core/tasks.js +582 -0
  186. package/dist/core/tasks.js.map +1 -0
  187. package/dist/core/terminal-sessions.d.ts +18 -0
  188. package/dist/core/terminal-sessions.d.ts.map +1 -0
  189. package/dist/core/terminal-sessions.js +539 -0
  190. package/dist/core/terminal-sessions.js.map +1 -0
  191. package/dist/core/tmux.d.ts +29 -0
  192. package/dist/core/tmux.d.ts.map +1 -0
  193. package/dist/core/tmux.js +151 -0
  194. package/dist/core/tmux.js.map +1 -0
  195. package/dist/core/workdir.d.ts +8 -0
  196. package/dist/core/workdir.d.ts.map +1 -0
  197. package/dist/core/workdir.js +26 -0
  198. package/dist/core/workdir.js.map +1 -0
  199. package/dist/domain/branch-validator.d.ts +51 -0
  200. package/dist/domain/branch-validator.d.ts.map +1 -0
  201. package/dist/domain/branch-validator.js +88 -0
  202. package/dist/domain/branch-validator.js.map +1 -0
  203. package/dist/domain/git-url-parser.d.ts +27 -0
  204. package/dist/domain/git-url-parser.d.ts.map +1 -0
  205. package/dist/domain/git-url-parser.js +84 -0
  206. package/dist/domain/git-url-parser.js.map +1 -0
  207. package/dist/domain/index.d.ts +8 -0
  208. package/dist/domain/index.d.ts.map +1 -0
  209. package/dist/domain/index.js +5 -0
  210. package/dist/domain/index.js.map +1 -0
  211. package/dist/domain/repository.d.ts +55 -0
  212. package/dist/domain/repository.d.ts.map +1 -0
  213. package/dist/domain/repository.js +73 -0
  214. package/dist/domain/repository.js.map +1 -0
  215. package/dist/domain/worktree.d.ts +43 -0
  216. package/dist/domain/worktree.d.ts.map +1 -0
  217. package/dist/domain/worktree.js +57 -0
  218. package/dist/domain/worktree.js.map +1 -0
  219. package/dist/infrastructure/cookies/cookie-manager.d.ts +18 -0
  220. package/dist/infrastructure/cookies/cookie-manager.d.ts.map +1 -0
  221. package/dist/infrastructure/cookies/cookie-manager.js +20 -0
  222. package/dist/infrastructure/cookies/cookie-manager.js.map +1 -0
  223. package/dist/infrastructure/cookies/cookie-parser.d.ts +43 -0
  224. package/dist/infrastructure/cookies/cookie-parser.d.ts.map +1 -0
  225. package/dist/infrastructure/cookies/cookie-parser.js +88 -0
  226. package/dist/infrastructure/cookies/cookie-parser.js.map +1 -0
  227. package/dist/infrastructure/cookies/cookie-security.d.ts +15 -0
  228. package/dist/infrastructure/cookies/cookie-security.d.ts.map +1 -0
  229. package/dist/infrastructure/cookies/cookie-security.js +35 -0
  230. package/dist/infrastructure/cookies/cookie-security.js.map +1 -0
  231. package/dist/infrastructure/cookies/index.d.ts +7 -0
  232. package/dist/infrastructure/cookies/index.d.ts.map +1 -0
  233. package/dist/infrastructure/cookies/index.js +4 -0
  234. package/dist/infrastructure/cookies/index.js.map +1 -0
  235. package/dist/infrastructure/errors/error-handler.d.ts +22 -0
  236. package/dist/infrastructure/errors/error-handler.d.ts.map +1 -0
  237. package/dist/infrastructure/errors/error-handler.js +89 -0
  238. package/dist/infrastructure/errors/error-handler.js.map +1 -0
  239. package/dist/infrastructure/errors/http-error.d.ts +30 -0
  240. package/dist/infrastructure/errors/http-error.d.ts.map +1 -0
  241. package/dist/infrastructure/errors/http-error.js +46 -0
  242. package/dist/infrastructure/errors/http-error.js.map +1 -0
  243. package/dist/infrastructure/errors/index.d.ts +5 -0
  244. package/dist/infrastructure/errors/index.d.ts.map +1 -0
  245. package/dist/infrastructure/errors/index.js +5 -0
  246. package/dist/infrastructure/errors/index.js.map +1 -0
  247. package/dist/infrastructure/errors/not-found-error.d.ts +8 -0
  248. package/dist/infrastructure/errors/not-found-error.d.ts.map +1 -0
  249. package/dist/infrastructure/errors/not-found-error.js +13 -0
  250. package/dist/infrastructure/errors/not-found-error.js.map +1 -0
  251. package/dist/infrastructure/errors/validation-error.d.ts +21 -0
  252. package/dist/infrastructure/errors/validation-error.d.ts.map +1 -0
  253. package/dist/infrastructure/errors/validation-error.js +31 -0
  254. package/dist/infrastructure/errors/validation-error.js.map +1 -0
  255. package/dist/infrastructure/logging/index.d.ts +3 -0
  256. package/dist/infrastructure/logging/index.d.ts.map +1 -0
  257. package/dist/infrastructure/logging/index.js +2 -0
  258. package/dist/infrastructure/logging/index.js.map +1 -0
  259. package/dist/infrastructure/logging/logger.d.ts +21 -0
  260. package/dist/infrastructure/logging/logger.d.ts.map +1 -0
  261. package/dist/infrastructure/logging/logger.js +49 -0
  262. package/dist/infrastructure/logging/logger.js.map +1 -0
  263. package/dist/repositories/git-repository.d.ts +67 -0
  264. package/dist/repositories/git-repository.d.ts.map +1 -0
  265. package/dist/repositories/git-repository.js +111 -0
  266. package/dist/repositories/git-repository.js.map +1 -0
  267. package/dist/repositories/git-status-repository.d.ts +22 -0
  268. package/dist/repositories/git-status-repository.d.ts.map +1 -0
  269. package/dist/repositories/git-status-repository.js +620 -0
  270. package/dist/repositories/git-status-repository.js.map +1 -0
  271. package/dist/repositories/repository-repository.d.ts +44 -0
  272. package/dist/repositories/repository-repository.d.ts.map +1 -0
  273. package/dist/repositories/repository-repository.js +155 -0
  274. package/dist/repositories/repository-repository.js.map +1 -0
  275. package/dist/repositories/worktree-repository.d.ts +66 -0
  276. package/dist/repositories/worktree-repository.d.ts.map +1 -0
  277. package/dist/repositories/worktree-repository.js +330 -0
  278. package/dist/repositories/worktree-repository.js.map +1 -0
  279. package/dist/server/cookies.d.ts +6 -0
  280. package/dist/server/cookies.d.ts.map +1 -0
  281. package/dist/server/cookies.js +6 -0
  282. package/dist/server/cookies.js.map +1 -0
  283. package/dist/server/events.d.ts +8 -0
  284. package/dist/server/events.d.ts.map +1 -0
  285. package/dist/server/events.js +128 -0
  286. package/dist/server/events.js.map +1 -0
  287. package/dist/server/index.d.ts +18 -0
  288. package/dist/server/index.d.ts.map +1 -0
  289. package/dist/server/index.js +173 -0
  290. package/dist/server/index.js.map +1 -0
  291. package/dist/server/router.d.ts +16 -0
  292. package/dist/server/router.d.ts.map +1 -0
  293. package/dist/server/router.js +256 -0
  294. package/dist/server/router.js.map +1 -0
  295. package/dist/server/ui.d.ts +8 -0
  296. package/dist/server/ui.d.ts.map +1 -0
  297. package/dist/server/ui.js +211 -0
  298. package/dist/server/ui.js.map +1 -0
  299. package/dist/server/websocket.d.ts +9 -0
  300. package/dist/server/websocket.d.ts.map +1 -0
  301. package/dist/server/websocket.js +116 -0
  302. package/dist/server/websocket.js.map +1 -0
  303. package/dist/services/auth-service.d.ts +49 -0
  304. package/dist/services/auth-service.d.ts.map +1 -0
  305. package/dist/services/auth-service.js +53 -0
  306. package/dist/services/auth-service.js.map +1 -0
  307. package/dist/services/index.d.ts +11 -0
  308. package/dist/services/index.d.ts.map +1 -0
  309. package/dist/services/index.js +6 -0
  310. package/dist/services/index.js.map +1 -0
  311. package/dist/services/repository-service.d.ts +57 -0
  312. package/dist/services/repository-service.d.ts.map +1 -0
  313. package/dist/services/repository-service.js +62 -0
  314. package/dist/services/repository-service.js.map +1 -0
  315. package/dist/services/session-service.d.ts +31 -0
  316. package/dist/services/session-service.d.ts.map +1 -0
  317. package/dist/services/session-service.js +134 -0
  318. package/dist/services/session-service.js.map +1 -0
  319. package/dist/services/terminal-service.d.ts +43 -0
  320. package/dist/services/terminal-service.d.ts.map +1 -0
  321. package/dist/services/terminal-service.js +85 -0
  322. package/dist/services/terminal-service.js.map +1 -0
  323. package/dist/services/worktree-service.d.ts +39 -0
  324. package/dist/services/worktree-service.d.ts.map +1 -0
  325. package/dist/services/worktree-service.js +208 -0
  326. package/dist/services/worktree-service.js.map +1 -0
  327. package/dist/types/auth.d.ts +35 -0
  328. package/dist/types/auth.d.ts.map +1 -0
  329. package/dist/types/auth.js +2 -0
  330. package/dist/types/auth.js.map +1 -0
  331. package/dist/types/config.d.ts +46 -0
  332. package/dist/types/config.d.ts.map +1 -0
  333. package/dist/types/config.js +5 -0
  334. package/dist/types/config.js.map +1 -0
  335. package/dist/types/git.d.ts +190 -0
  336. package/dist/types/git.d.ts.map +1 -0
  337. package/dist/types/git.js +5 -0
  338. package/dist/types/git.js.map +1 -0
  339. package/dist/types/http.d.ts +46 -0
  340. package/dist/types/http.d.ts.map +1 -0
  341. package/dist/types/http.js +2 -0
  342. package/dist/types/http.js.map +1 -0
  343. package/dist/types/index.d.ts +8 -0
  344. package/dist/types/index.d.ts.map +1 -0
  345. package/dist/types/index.js +2 -0
  346. package/dist/types/index.js.map +1 -0
  347. package/dist/types/plan.d.ts +31 -0
  348. package/dist/types/plan.d.ts.map +1 -0
  349. package/dist/types/plan.js +5 -0
  350. package/dist/types/plan.js.map +1 -0
  351. package/dist/types/services.d.ts +99 -0
  352. package/dist/types/services.d.ts.map +1 -0
  353. package/dist/types/services.js +2 -0
  354. package/dist/types/services.js.map +1 -0
  355. package/dist/types/tasks.d.ts +68 -0
  356. package/dist/types/tasks.d.ts.map +1 -0
  357. package/dist/types/tasks.js +5 -0
  358. package/dist/types/tasks.js.map +1 -0
  359. package/dist/types/terminal.d.ts +60 -0
  360. package/dist/types/terminal.d.ts.map +1 -0
  361. package/dist/types/terminal.js +2 -0
  362. package/dist/types/terminal.js.map +1 -0
  363. package/dist/utils/cookies.d.ts +7 -0
  364. package/dist/utils/cookies.d.ts.map +1 -0
  365. package/dist/utils/cookies.js +6 -0
  366. package/dist/utils/cookies.js.map +1 -0
  367. package/dist/utils/http.d.ts +23 -0
  368. package/dist/utils/http.d.ts.map +1 -0
  369. package/dist/utils/http.js +58 -0
  370. package/dist/utils/http.js.map +1 -0
  371. package/dist/utils/random.d.ts +12 -0
  372. package/dist/utils/random.d.ts.map +1 -0
  373. package/dist/utils/random.js +25 -0
  374. package/dist/utils/random.js.map +1 -0
  375. package/dist/utils/repository-cache.d.ts +8 -0
  376. package/dist/utils/repository-cache.d.ts.map +1 -0
  377. package/dist/utils/repository-cache.js +13 -0
  378. package/dist/utils/repository-cache.js.map +1 -0
  379. package/dist/validation/index.d.ts +9 -0
  380. package/dist/validation/index.d.ts.map +1 -0
  381. package/dist/validation/index.js +6 -0
  382. package/dist/validation/index.js.map +1 -0
  383. package/dist/validation/request-validator.d.ts +99 -0
  384. package/dist/validation/request-validator.d.ts.map +1 -0
  385. package/dist/validation/request-validator.js +189 -0
  386. package/dist/validation/request-validator.js.map +1 -0
  387. package/dist/validation/schemas/repository-schema.d.ts +26 -0
  388. package/dist/validation/schemas/repository-schema.d.ts.map +1 -0
  389. package/dist/validation/schemas/repository-schema.js +31 -0
  390. package/dist/validation/schemas/repository-schema.js.map +1 -0
  391. package/dist/validation/schemas/terminal-schema.d.ts +21 -0
  392. package/dist/validation/schemas/terminal-schema.d.ts.map +1 -0
  393. package/dist/validation/schemas/terminal-schema.js +38 -0
  394. package/dist/validation/schemas/terminal-schema.js.map +1 -0
  395. package/dist/validation/schemas/worktree-schema.d.ts +21 -0
  396. package/dist/validation/schemas/worktree-schema.d.ts.map +1 -0
  397. package/dist/validation/schemas/worktree-schema.js +29 -0
  398. package/dist/validation/schemas/worktree-schema.js.map +1 -0
  399. package/package.json +79 -0
  400. package/ui/dist/assets/index-BDDrbP3l.js +354 -0
  401. package/ui/dist/assets/index-CwB7gOl4.css +41 -0
  402. package/ui/dist/index.html +13 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal.js","sourceRoot":"","sources":["../../src/api/terminal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAGpF,MAAM,UAAU,sBAAsB,CAAC,OAAe,EAAE,UAA6B,EAAE;IACrF,MAAM,eAAe,GAAG,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAEhE,MAAM,IAAI,GAAG,aAAa,CAAC;QACzB,SAAS,EAAE,oBAAoB;QAC/B,OAAO,EAAE,KAAK,EAAE,KAAwB,EAAE,EAAE,CAAC,eAAe,CAAC,YAAY,CAAC,KAAK,CAAC;KACjF,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,aAAa,CAAC;QACzB,SAAS,EAAE,oBAAoB;QAC/B,OAAO,EAAE,KAAK,EAAE,KAAwB,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,CAAC,KAAK,CAAC;KAC9E,CAAC,CAAC;IAEH,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACxB,CAAC"}
@@ -0,0 +1,7 @@
1
+ export declare function createWorktreeHandlers(workdir: string, branchNameGenerator: unknown, defaultBranchConfig: unknown): {
2
+ create: (context: import("../types/http.js").RequestContext) => Promise<void>;
3
+ delete: (context: import("../types/http.js").RequestContext) => Promise<void>;
4
+ upsert: (context: import("../types/http.js").RequestContext) => Promise<void>;
5
+ destroy: (context: import("../types/http.js").RequestContext) => Promise<void>;
6
+ };
7
+ //# sourceMappingURL=worktrees.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worktrees.d.ts","sourceRoot":"","sources":["../../src/api/worktrees.ts"],"names":[],"mappings":"AAKA,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,EACf,mBAAmB,EAAE,OAAO,EAC5B,mBAAmB,EAAE,OAAO;;;;;EAyB7B"}
@@ -0,0 +1,26 @@
1
+ import { createWorktreeService } from '../services/index.js';
2
+ import { createHandler } from './base-handler.js';
3
+ import { validateWorktreeCreate, validateWorktreeDelete } from '../validation/index.js';
4
+ export function createWorktreeHandlers(workdir, branchNameGenerator, defaultBranchConfig) {
5
+ const worktreeService = createWorktreeService(workdir, branchNameGenerator, defaultBranchConfig);
6
+ const createWorktree = createHandler({
7
+ validator: validateWorktreeCreate,
8
+ handler: async (input) => worktreeService.createWorktree(input),
9
+ successCode: 202,
10
+ });
11
+ const deleteWorktree = createHandler({
12
+ validator: validateWorktreeDelete,
13
+ handler: async (input) => {
14
+ const data = await worktreeService.deleteWorktree(input);
15
+ return { data };
16
+ },
17
+ });
18
+ return {
19
+ create: createWorktree,
20
+ delete: deleteWorktree,
21
+ // Deprecated aliases for backward compatibility
22
+ upsert: createWorktree,
23
+ destroy: deleteWorktree,
24
+ };
25
+ }
26
+ //# sourceMappingURL=worktrees.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worktrees.js","sourceRoot":"","sources":["../../src/api/worktrees.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAGxF,MAAM,UAAU,sBAAsB,CACpC,OAAe,EACf,mBAA4B,EAC5B,mBAA4B;IAE5B,MAAM,eAAe,GAAG,qBAAqB,CAAC,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;IAEjG,MAAM,cAAc,GAAG,aAAa,CAAC;QACnC,SAAS,EAAE,sBAAsB;QACjC,OAAO,EAAE,KAAK,EAAE,KAA0B,EAAE,EAAE,CAAC,eAAe,CAAC,cAAc,CAAC,KAAK,CAAC;QACpF,WAAW,EAAE,GAAG;KACjB,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,aAAa,CAAC;QACnC,SAAS,EAAE,sBAAsB;QACjC,OAAO,EAAE,KAAK,EAAE,KAA0B,EAAE,EAAE;YAC5C,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YACzD,OAAO,EAAE,IAAI,EAAE,CAAC;QAClB,CAAC;KACF,CAAC,CAAC;IAEH,OAAO;QACL,MAAM,EAAE,cAAc;QACtB,MAAM,EAAE,cAAc;QACtB,gDAAgD;QAChD,MAAM,EAAE,cAAc;QACtB,OAAO,EAAE,cAAc;KACxB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { ParsedArgs } from './types.js';
2
+ export declare function parseArgs(argv: string[]): ParsedArgs;
3
+ //# sourceMappingURL=arg-parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arg-parser.d.ts","sourceRoot":"","sources":["../../src/cli/arg-parser.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAgQ7C,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CAGpD"}
@@ -0,0 +1,243 @@
1
+ import { DEFAULT_HOST, DEFAULT_PORT } from '../server/index.js';
2
+ import { VALID_TERMINAL_SESSION_MODES } from './constants.js';
3
+ class ArgumentParser {
4
+ args;
5
+ provided;
6
+ terminalSessionModeSource = null;
7
+ constructor() {
8
+ this.args = this.createDefaultArgs();
9
+ this.provided = this.createProvidedTracker();
10
+ }
11
+ createDefaultArgs() {
12
+ return {
13
+ port: DEFAULT_PORT,
14
+ host: DEFAULT_HOST,
15
+ ui: null,
16
+ workdir: null,
17
+ password: null,
18
+ cookieSecure: null,
19
+ defaultBranch: null,
20
+ showPassword: false,
21
+ codexCommand: null,
22
+ claudeCommand: null,
23
+ cursorCommand: null,
24
+ ideCommand: null,
25
+ vscodeCommand: null,
26
+ ngrokApiKey: null,
27
+ ngrokDomain: null,
28
+ openaiApiKey: null,
29
+ terminalSessionMode: null,
30
+ save: false,
31
+ help: false,
32
+ version: false,
33
+ };
34
+ }
35
+ createProvidedTracker() {
36
+ return {
37
+ port: false,
38
+ host: false,
39
+ ui: false,
40
+ workdir: false,
41
+ password: false,
42
+ cookieSecure: false,
43
+ defaultBranch: false,
44
+ showPassword: false,
45
+ codexCommand: false,
46
+ claudeCommand: false,
47
+ cursorCommand: false,
48
+ ideCommand: false,
49
+ vscodeCommand: false,
50
+ ngrokApiKey: false,
51
+ ngrokDomain: false,
52
+ openaiApiKey: false,
53
+ terminalSessionMode: false,
54
+ save: false,
55
+ };
56
+ }
57
+ requireValue(_token, value) {
58
+ if (!value) {
59
+ throw new Error(`Expected value after ${_token}`);
60
+ }
61
+ return value;
62
+ }
63
+ requireNonEmpty(_token, value, fieldName) {
64
+ const trimmed = value.trim();
65
+ if (!trimmed) {
66
+ throw new Error(`${fieldName} cannot be empty`);
67
+ }
68
+ return trimmed;
69
+ }
70
+ setTerminalSessionMode(rawValue, sourceToken) {
71
+ const normalized = this.requireNonEmpty(sourceToken, rawValue, 'Terminal session mode');
72
+ const lower = normalized.toLowerCase();
73
+ if (!VALID_TERMINAL_SESSION_MODES.has(lower)) {
74
+ throw new Error(`Invalid terminal session mode "${rawValue}". Expected one of: ${[
75
+ ...VALID_TERMINAL_SESSION_MODES,
76
+ ].join(', ')}`);
77
+ }
78
+ if (this.provided['terminalSessionMode']) {
79
+ if (this.args.terminalSessionMode !== lower) {
80
+ throw new Error(`Conflicting terminal session mode options (${this.terminalSessionModeSource} and ${sourceToken})`);
81
+ }
82
+ return;
83
+ }
84
+ this.args.terminalSessionMode = lower;
85
+ this.provided['terminalSessionMode'] = true;
86
+ this.terminalSessionModeSource = sourceToken;
87
+ }
88
+ parsePort(_token, value) {
89
+ const parsed = Number.parseInt(value, 10);
90
+ if (!Number.isInteger(parsed) || parsed < 1 || parsed > 65535) {
91
+ throw new Error(`Invalid port: ${value}`);
92
+ }
93
+ return parsed;
94
+ }
95
+ parseCookieSecure(_token, value) {
96
+ const trimmed = value.trim().toLowerCase();
97
+ if (!['true', 'false', 'auto'].includes(trimmed)) {
98
+ throw new Error('cookie-secure must be one of: true, false, auto');
99
+ }
100
+ return trimmed;
101
+ }
102
+ parse(argv) {
103
+ for (let i = 0; i < argv.length; i += 1) {
104
+ const token = argv[i];
105
+ switch (token) {
106
+ case '--port':
107
+ case '-p': {
108
+ const value = this.requireValue(token, argv[++i]);
109
+ this.args.port = this.parsePort(token, value);
110
+ this.provided['port'] = true;
111
+ break;
112
+ }
113
+ case '--host':
114
+ case '-H': {
115
+ this.args.host = this.requireValue(token, argv[++i]);
116
+ this.provided['host'] = true;
117
+ break;
118
+ }
119
+ case '--ui':
120
+ case '-u': {
121
+ this.args.ui = this.requireValue(token, argv[++i]);
122
+ this.provided['ui'] = true;
123
+ break;
124
+ }
125
+ case '--workdir':
126
+ case '-w': {
127
+ this.args.workdir = this.requireValue(token, argv[++i]);
128
+ this.provided['workdir'] = true;
129
+ break;
130
+ }
131
+ case '--cookie-secure': {
132
+ const value = this.requireValue(token, argv[++i]);
133
+ this.args.cookieSecure = this.parseCookieSecure(token, value);
134
+ this.provided['cookieSecure'] = true;
135
+ break;
136
+ }
137
+ case '--terminal-session-mode': {
138
+ const value = this.requireValue(token, argv[++i]);
139
+ this.setTerminalSessionMode(value, token);
140
+ break;
141
+ }
142
+ case '--force-tmux': {
143
+ this.setTerminalSessionMode('tmux', token);
144
+ break;
145
+ }
146
+ case '--no-tmux': {
147
+ this.setTerminalSessionMode('pty', token);
148
+ break;
149
+ }
150
+ case '--default-branch': {
151
+ const value = this.requireValue(token, argv[++i]);
152
+ this.args.defaultBranch = this.requireNonEmpty(token, value, 'Default branch');
153
+ this.provided['defaultBranch'] = true;
154
+ break;
155
+ }
156
+ case '--password':
157
+ case '-P': {
158
+ const value = this.requireValue(token, argv[++i]);
159
+ this.args.password = this.requireNonEmpty(token, value, 'Password');
160
+ this.provided['password'] = true;
161
+ break;
162
+ }
163
+ case '--show-password': {
164
+ this.args.showPassword = true;
165
+ this.provided['showPassword'] = true;
166
+ break;
167
+ }
168
+ case '--codex-command': {
169
+ this.args.codexCommand = this.requireValue(token, argv[++i]);
170
+ this.provided['codexCommand'] = true;
171
+ break;
172
+ }
173
+ case '--claude-command': {
174
+ this.args.claudeCommand = this.requireValue(token, argv[++i]);
175
+ this.provided['claudeCommand'] = true;
176
+ break;
177
+ }
178
+ case '--cursor-command': {
179
+ this.args.cursorCommand = this.requireValue(token, argv[++i]);
180
+ this.provided['cursorCommand'] = true;
181
+ break;
182
+ }
183
+ case '--ide-command': {
184
+ this.args.ideCommand = this.requireValue(token, argv[++i]);
185
+ this.provided['ideCommand'] = true;
186
+ break;
187
+ }
188
+ case '--vscode-command': {
189
+ this.args.vscodeCommand = this.requireValue(token, argv[++i]);
190
+ this.provided['vscodeCommand'] = true;
191
+ break;
192
+ }
193
+ case '--ngrok-api-key': {
194
+ const value = this.requireValue(token, argv[++i]);
195
+ this.args.ngrokApiKey = this.requireNonEmpty(token, value, 'ngrok API key');
196
+ this.provided['ngrokApiKey'] = true;
197
+ break;
198
+ }
199
+ case '--ngrok-domain': {
200
+ const value = this.requireValue(token, argv[++i]);
201
+ this.args.ngrokDomain = this.requireNonEmpty(token, value, 'ngrok domain');
202
+ this.provided['ngrokDomain'] = true;
203
+ break;
204
+ }
205
+ case '--openai-api-key': {
206
+ const value = this.requireValue(token, argv[++i]);
207
+ this.args.openaiApiKey = this.requireNonEmpty(token, value, 'OpenAI API key');
208
+ this.provided['openaiApiKey'] = true;
209
+ break;
210
+ }
211
+ case '--save': {
212
+ this.args.save = true;
213
+ this.provided['save'] = true;
214
+ break;
215
+ }
216
+ case '--help':
217
+ case '-h':
218
+ this.args.help = true;
219
+ break;
220
+ case '--version':
221
+ case '-v':
222
+ this.args.version = true;
223
+ break;
224
+ default:
225
+ if (token && token.startsWith('-')) {
226
+ throw new Error(`Unknown option: ${token}`);
227
+ }
228
+ else {
229
+ throw new Error(`Unexpected argument: ${token}`);
230
+ }
231
+ }
232
+ }
233
+ return {
234
+ ...this.args,
235
+ _provided: this.provided,
236
+ };
237
+ }
238
+ }
239
+ export function parseArgs(argv) {
240
+ const parser = new ArgumentParser();
241
+ return parser.parse(argv);
242
+ }
243
+ //# sourceMappingURL=arg-parser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arg-parser.js","sourceRoot":"","sources":["../../src/cli/arg-parser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import type { ParsedArgs } from './types.js';
2
+ interface ResolvedConfig {
3
+ port: number;
4
+ host: string;
5
+ uiPath: string;
6
+ workdir: string;
7
+ password: string | null;
8
+ showPassword: boolean;
9
+ defaultBranch: string | null;
10
+ defaultBranches: Record<string, string> | null;
11
+ cookieSecure: string;
12
+ codexCommand: string | null;
13
+ claudeCommand: string | null;
14
+ cursorCommand: string | null;
15
+ ideCommand: string | null;
16
+ vscodeCommand: string | null;
17
+ ngrokApiKey: string | null;
18
+ ngrokDomain: string | null;
19
+ automationApiKey: string | null;
20
+ openaiApiKey: string | null;
21
+ branchNameLlm: string | null;
22
+ planLlm: string | null;
23
+ terminalSessionMode: string;
24
+ }
25
+ export declare function resolveConfig(args: ParsedArgs, fileConfig: Record<string, unknown>): ResolvedConfig;
26
+ export declare function validateNgrokConfig(config: ResolvedConfig): void;
27
+ export declare function buildConfigToSave(config: ResolvedConfig, args: ParsedArgs, fileConfig: Record<string, unknown>): Record<string, unknown>;
28
+ export {};
29
+ //# sourceMappingURL=config-resolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-resolver.d.ts","sourceRoot":"","sources":["../../src/cli/config-resolver.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAI7C,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAcD,wBAAgB,aAAa,CAC3B,IAAI,EAAE,UAAU,EAChB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,cAAc,CA+DhB;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAOhE;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,UAAU,EAChB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA4EzB"}
@@ -0,0 +1,139 @@
1
+ import path from 'node:path';
2
+ import { fileURLToPath } from 'node:url';
3
+ import { DEFAULT_HOST, DEFAULT_PORT } from '../server/index.js';
4
+ const BUNDLED_UI_PATH = fileURLToPath(new URL('../../ui/dist', import.meta.url));
5
+ function resolveValue(provided, cliValue, configValue, defaultValue) {
6
+ if (provided) {
7
+ return cliValue;
8
+ }
9
+ return configValue ?? defaultValue;
10
+ }
11
+ export function resolveConfig(args, fileConfig) {
12
+ const { _provided: provided } = args;
13
+ const fc = fileConfig;
14
+ const port = resolveValue(provided['port'] ?? false, args.port, fc['port'], DEFAULT_PORT);
15
+ const host = resolveValue(provided['host'] ?? false, args.host, fc['host'], DEFAULT_HOST);
16
+ const uiInput = resolveValue(provided['ui'] ?? false, args.ui, fc['ui'], null);
17
+ const workdirInput = resolveValue(provided['workdir'] ?? false, args.workdir, fc['workdir'], null);
18
+ const password = resolveValue(provided['password'] ?? false, args.password, fc['password'], null);
19
+ const defaultBranch = resolveValue(provided['defaultBranch'] ?? false, args.defaultBranch, fc['defaultBranch'], null);
20
+ const cookieSecure = resolveValue(provided['cookieSecure'] ?? false, args.cookieSecure, fc['cookieSecure'], 'auto');
21
+ const defaultBranches = fc['defaultBranches'] && typeof fc['defaultBranches'] === 'object' && Object.keys(fc['defaultBranches']).length > 0
22
+ ? fc['defaultBranches']
23
+ : null;
24
+ const codexCommand = resolveValue(provided['codexCommand'] ?? false, args.codexCommand, fc['codexCommand'], null);
25
+ const claudeCommand = resolveValue(provided['claudeCommand'] ?? false, args.claudeCommand, fc['claudeCommand'], null);
26
+ const ideCommand = resolveValue(provided['ideCommand'] ?? false, args.ideCommand, fc['ideCommand'], null);
27
+ const cursorCommand = (provided['cursorCommand'] ?? false)
28
+ ? args.cursorCommand
29
+ : (provided['ideCommand'] ?? false)
30
+ ? args.ideCommand
31
+ : fc['cursorCommand'] ?? fc['ideCommand'] ?? null;
32
+ const vscodeCommand = resolveValue(provided['vscodeCommand'] ?? false, args.vscodeCommand, fc['vscodeCommand'], null);
33
+ const ngrokApiKey = resolveValue(provided['ngrokApiKey'] ?? false, args.ngrokApiKey, fc['ngrokApiKey'], null);
34
+ const ngrokDomain = resolveValue(provided['ngrokDomain'] ?? false, args.ngrokDomain, fc['ngrokDomain'], null);
35
+ const openaiApiKey = resolveValue(provided['openaiApiKey'] ?? false, args.openaiApiKey, fc['openaiApiKey'], null);
36
+ const terminalSessionMode = resolveValue(provided['terminalSessionMode'] ?? false, args.terminalSessionMode, fc['terminalSessionMode'], 'auto');
37
+ const automationApiKey = fc['automationApiKey'] ?? null;
38
+ const branchNameLlm = fc['branchNameLlm'] ?? null;
39
+ const planLlm = fc['planLlm'] ?? null;
40
+ const uiPath = uiInput ? path.resolve(process.cwd(), uiInput) : BUNDLED_UI_PATH;
41
+ const workdir = workdirInput ? path.resolve(process.cwd(), workdirInput) : process.cwd();
42
+ return {
43
+ port,
44
+ host,
45
+ uiPath,
46
+ workdir,
47
+ password,
48
+ showPassword: args.showPassword,
49
+ defaultBranch,
50
+ defaultBranches,
51
+ cookieSecure: cookieSecure ?? 'auto',
52
+ codexCommand,
53
+ claudeCommand,
54
+ cursorCommand,
55
+ ideCommand,
56
+ vscodeCommand,
57
+ ngrokApiKey,
58
+ ngrokDomain,
59
+ automationApiKey,
60
+ openaiApiKey,
61
+ branchNameLlm,
62
+ planLlm,
63
+ terminalSessionMode: terminalSessionMode ?? 'auto',
64
+ };
65
+ }
66
+ export function validateNgrokConfig(config) {
67
+ const hasApiKey = Boolean(config.ngrokApiKey);
68
+ const hasDomain = Boolean(config.ngrokDomain);
69
+ if ((hasApiKey && !hasDomain) || (hasDomain && !hasApiKey)) {
70
+ throw new Error('Both --ngrok-api-key and --ngrok-domain must be provided together.');
71
+ }
72
+ }
73
+ export function buildConfigToSave(config, args, fileConfig) {
74
+ const { _provided: provided } = args;
75
+ const fc = fileConfig;
76
+ const configToSave = {
77
+ port: config.port,
78
+ host: config.host,
79
+ };
80
+ const uiInput = (provided['ui'] ?? false) ? args.ui : fc['ui'] ?? null;
81
+ if (uiInput) {
82
+ configToSave['ui'] = uiInput;
83
+ }
84
+ const workdirInput = (provided['workdir'] ?? false) ? args.workdir : fc['workdir'] ?? null;
85
+ if (workdirInput) {
86
+ configToSave['workdir'] = workdirInput;
87
+ }
88
+ if (config.password) {
89
+ configToSave['password'] = config.password;
90
+ }
91
+ if (config.defaultBranch) {
92
+ configToSave['defaultBranch'] = config.defaultBranch;
93
+ }
94
+ if (config.defaultBranches) {
95
+ configToSave['defaultBranches'] = config.defaultBranches;
96
+ }
97
+ if (config.cookieSecure && config.cookieSecure !== 'auto') {
98
+ configToSave['cookies'] = { secure: config.cookieSecure };
99
+ }
100
+ if (config.branchNameLlm) {
101
+ configToSave['branchNameLlm'] = config.branchNameLlm;
102
+ }
103
+ if (config.planLlm) {
104
+ configToSave['planLlm'] = config.planLlm;
105
+ }
106
+ if ((provided['terminalSessionMode'] ?? false) || fc['terminalSessionMode'] !== undefined) {
107
+ configToSave['terminalSessionMode'] = config.terminalSessionMode;
108
+ }
109
+ const commandsConfig = {};
110
+ if (config.codexCommand)
111
+ commandsConfig['codex'] = config.codexCommand;
112
+ if (config.claudeCommand)
113
+ commandsConfig['claude'] = config.claudeCommand;
114
+ if (config.cursorCommand)
115
+ commandsConfig['cursor'] = config.cursorCommand;
116
+ if (config.ideCommand)
117
+ commandsConfig['ide'] = config.ideCommand;
118
+ if (config.vscodeCommand)
119
+ commandsConfig['vscode'] = config.vscodeCommand;
120
+ if (Object.keys(commandsConfig).length > 0) {
121
+ configToSave['commands'] = commandsConfig;
122
+ }
123
+ if (config.ngrokApiKey && config.ngrokDomain) {
124
+ configToSave['ngrok'] = {
125
+ apiKey: config.ngrokApiKey,
126
+ domain: config.ngrokDomain,
127
+ };
128
+ }
129
+ if (config.automationApiKey) {
130
+ configToSave['automation'] = {
131
+ apiKey: config.automationApiKey,
132
+ };
133
+ }
134
+ if (config.openaiApiKey) {
135
+ configToSave['openaiApiKey'] = config.openaiApiKey;
136
+ }
137
+ return configToSave;
138
+ }
139
+ //# sourceMappingURL=config-resolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-resolver.js","sourceRoot":"","sources":["../../src/cli/config-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGhE,MAAM,eAAe,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AA0BjF,SAAS,YAAY,CACnB,QAAiB,EACjB,QAAW,EACX,WAA0B,EAC1B,YAAe;IAEf,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,OAAO,WAAW,IAAI,YAAY,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,IAAgB,EAChB,UAAmC;IAEnC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IACrC,MAAM,EAAE,GAAG,UAAU,CAAC;IAEtB,MAAM,IAAI,GAAG,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAuB,EAAE,YAAY,CAAC,CAAC;IAChH,MAAM,IAAI,GAAG,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAuB,EAAE,YAAY,CAAC,CAAC;IAChH,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAuB,EAAE,IAAI,CAAC,CAAC;IACrG,MAAM,YAAY,GAAG,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAuB,EAAE,IAAI,CAAC,CAAC;IACzH,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,UAAU,CAAuB,EAAE,IAAI,CAAC,CAAC;IACxH,MAAM,aAAa,GAAG,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC,eAAe,CAAuB,EAAE,IAAI,CAAC,CAAC;IAC5I,MAAM,YAAY,GAAG,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC,cAAc,CAAuB,EAAE,MAAM,CAAC,CAAC;IAE1I,MAAM,eAAe,GACnB,EAAE,CAAC,iBAAiB,CAAC,IAAI,OAAO,EAAE,CAAC,iBAAiB,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAW,CAAC,CAAC,MAAM,GAAG,CAAC;QAC3H,CAAC,CAAE,EAAE,CAAC,iBAAiB,CAA4B;QACnD,CAAC,CAAC,IAAI,CAAC;IAEX,MAAM,YAAY,GAAG,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC,cAAc,CAAuB,EAAE,IAAI,CAAC,CAAC;IACxI,MAAM,aAAa,GAAG,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC,eAAe,CAAuB,EAAE,IAAI,CAAC,CAAC;IAC5I,MAAM,UAAU,GAAG,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC,YAAY,CAAuB,EAAE,IAAI,CAAC,CAAC;IAEhI,MAAM,aAAa,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,KAAK,CAAC;QACxD,CAAC,CAAC,IAAI,CAAC,aAAa;QACpB,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC;YACjC,CAAC,CAAC,IAAI,CAAC,UAAU;YACjB,CAAC,CAAE,EAAE,CAAC,eAAe,CAAwB,IAAK,EAAE,CAAC,YAAY,CAAwB,IAAI,IAAI,CAAC;IAEtG,MAAM,aAAa,GAAG,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC,eAAe,CAAuB,EAAE,IAAI,CAAC,CAAC;IAC5I,MAAM,WAAW,GAAG,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,aAAa,CAAuB,EAAE,IAAI,CAAC,CAAC;IACpI,MAAM,WAAW,GAAG,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,aAAa,CAAuB,EAAE,IAAI,CAAC,CAAC;IACpI,MAAM,YAAY,GAAG,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC,cAAc,CAAuB,EAAE,IAAI,CAAC,CAAC;IACxI,MAAM,mBAAmB,GAAG,YAAY,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,mBAAmB,EAAE,EAAE,CAAC,qBAAqB,CAAuB,EAAE,MAAM,CAAC,CAAC;IAEtK,MAAM,gBAAgB,GAAI,EAAE,CAAC,kBAAkB,CAAwB,IAAI,IAAI,CAAC;IAChF,MAAM,aAAa,GAAI,EAAE,CAAC,eAAe,CAAwB,IAAI,IAAI,CAAC;IAC1E,MAAM,OAAO,GAAI,EAAE,CAAC,SAAS,CAAwB,IAAI,IAAI,CAAC;IAE9D,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC;IAChF,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IAEzF,OAAO;QACL,IAAI;QACJ,IAAI;QACJ,MAAM;QACN,OAAO;QACP,QAAQ;QACR,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,aAAa;QACb,eAAe;QACf,YAAY,EAAE,YAAY,IAAI,MAAM;QACpC,YAAY;QACZ,aAAa;QACb,aAAa;QACb,UAAU;QACV,aAAa;QACb,WAAW;QACX,WAAW;QACX,gBAAgB;QAChB,YAAY;QACZ,aAAa;QACb,OAAO;QACP,mBAAmB,EAAE,mBAAmB,IAAI,MAAM;KACnD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,MAAsB;IACxD,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAE9C,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IACxF,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,MAAsB,EACtB,IAAgB,EAChB,UAAmC;IAEnC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IACrC,MAAM,EAAE,GAAG,UAAU,CAAC;IAEtB,MAAM,YAAY,GAA4B;QAC5C,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,IAAI,EAAE,MAAM,CAAC,IAAI;KAClB,CAAC;IAEF,MAAM,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAE,EAAE,CAAC,IAAI,CAAwB,IAAI,IAAI,CAAC;IAC/F,IAAI,OAAO,EAAE,CAAC;QACZ,YAAY,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;IAC/B,CAAC;IAED,MAAM,YAAY,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAE,EAAE,CAAC,SAAS,CAAwB,IAAI,IAAI,CAAC;IACnH,IAAI,YAAY,EAAE,CAAC;QACjB,YAAY,CAAC,SAAS,CAAC,GAAG,YAAY,CAAC;IACzC,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,YAAY,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC7C,CAAC;IAED,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;QACzB,YAAY,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC;IACvD,CAAC;IAED,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QAC3B,YAAY,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAC,eAAe,CAAC;IAC3D,CAAC;IAED,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,KAAK,MAAM,EAAE,CAAC;QAC1D,YAAY,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC;IAC5D,CAAC;IAED,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;QACzB,YAAY,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC;IACvD,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,YAAY,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC;IAC3C,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,qBAAqB,CAAC,KAAK,SAAS,EAAE,CAAC;QAC1F,YAAY,CAAC,qBAAqB,CAAC,GAAG,MAAM,CAAC,mBAAmB,CAAC;IACnE,CAAC;IAED,MAAM,cAAc,GAA2B,EAAE,CAAC;IAClD,IAAI,MAAM,CAAC,YAAY;QAAE,cAAc,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC;IACvE,IAAI,MAAM,CAAC,aAAa;QAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC;IAC1E,IAAI,MAAM,CAAC,aAAa;QAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC;IAC1E,IAAI,MAAM,CAAC,UAAU;QAAE,cAAc,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC;IACjE,IAAI,MAAM,CAAC,aAAa;QAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC;IAE1E,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3C,YAAY,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC;IAC5C,CAAC;IAED,IAAI,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QAC7C,YAAY,CAAC,OAAO,CAAC,GAAG;YACtB,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,MAAM,EAAE,MAAM,CAAC,WAAW;SAC3B,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAC5B,YAAY,CAAC,YAAY,CAAC,GAAG;YAC3B,MAAM,EAAE,MAAM,CAAC,gBAAgB;SAChC,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;QACxB,YAAY,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC;IACrD,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { NormalizedConfig } from './types.js';
2
+ export declare function normalizeConfig(rawConfig: unknown, configPath: string): Record<string, unknown>;
3
+ export declare function loadConfig(): Promise<NormalizedConfig>;
4
+ export declare function saveConfig(configValues: Record<string, unknown>): Promise<string>;
5
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/cli/config.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAiDnD,wBAAgB,eAAe,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAiM/F;AAED,wBAAsB,UAAU,IAAI,OAAO,CAAC,gBAAgB,CAAC,CA4B5D;AAED,wBAAsB,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAavF"}