@ginkoai/cli 1.0.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 (711) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +230 -0
  3. package/dist/adapters/ai-adapter.d.ts +25 -0
  4. package/dist/adapters/ai-adapter.d.ts.map +1 -0
  5. package/dist/adapters/ai-adapter.js +21 -0
  6. package/dist/adapters/ai-adapter.js.map +1 -0
  7. package/dist/adapters/ai-completion.d.ts +35 -0
  8. package/dist/adapters/ai-completion.d.ts.map +1 -0
  9. package/dist/adapters/ai-completion.js +118 -0
  10. package/dist/adapters/ai-completion.js.map +1 -0
  11. package/dist/adapters/base.d.ts +64 -0
  12. package/dist/adapters/base.d.ts.map +1 -0
  13. package/dist/adapters/base.js +48 -0
  14. package/dist/adapters/base.js.map +1 -0
  15. package/dist/adapters/claude-adapter.d.ts +18 -0
  16. package/dist/adapters/claude-adapter.d.ts.map +1 -0
  17. package/dist/adapters/claude-adapter.js +73 -0
  18. package/dist/adapters/claude-adapter.js.map +1 -0
  19. package/dist/adapters/claude.d.ts +20 -0
  20. package/dist/adapters/claude.d.ts.map +1 -0
  21. package/dist/adapters/claude.js +91 -0
  22. package/dist/adapters/claude.js.map +1 -0
  23. package/dist/adapters/copilot-adapter.d.ts +16 -0
  24. package/dist/adapters/copilot-adapter.d.ts.map +1 -0
  25. package/dist/adapters/copilot-adapter.js +288 -0
  26. package/dist/adapters/copilot-adapter.js.map +1 -0
  27. package/dist/adapters/cursor-adapter.d.ts +22 -0
  28. package/dist/adapters/cursor-adapter.d.ts.map +1 -0
  29. package/dist/adapters/cursor-adapter.js +108 -0
  30. package/dist/adapters/cursor-adapter.js.map +1 -0
  31. package/dist/adapters/detector.d.ts +29 -0
  32. package/dist/adapters/detector.d.ts.map +1 -0
  33. package/dist/adapters/detector.js +132 -0
  34. package/dist/adapters/detector.js.map +1 -0
  35. package/dist/adapters/generic-adapter.d.ts +18 -0
  36. package/dist/adapters/generic-adapter.d.ts.map +1 -0
  37. package/dist/adapters/generic-adapter.js +37 -0
  38. package/dist/adapters/generic-adapter.js.map +1 -0
  39. package/dist/adapters/gpt4.d.ts +20 -0
  40. package/dist/adapters/gpt4.d.ts.map +1 -0
  41. package/dist/adapters/gpt4.js +114 -0
  42. package/dist/adapters/gpt4.js.map +1 -0
  43. package/dist/adapters/grok-adapter.d.ts +18 -0
  44. package/dist/adapters/grok-adapter.d.ts.map +1 -0
  45. package/dist/adapters/grok-adapter.js +94 -0
  46. package/dist/adapters/grok-adapter.js.map +1 -0
  47. package/dist/adapters/index.d.ts +18 -0
  48. package/dist/adapters/index.d.ts.map +1 -0
  49. package/dist/adapters/index.js +71 -0
  50. package/dist/adapters/index.js.map +1 -0
  51. package/dist/adapters/openai-adapter.d.ts +18 -0
  52. package/dist/adapters/openai-adapter.d.ts.map +1 -0
  53. package/dist/adapters/openai-adapter.js +97 -0
  54. package/dist/adapters/openai-adapter.js.map +1 -0
  55. package/dist/adapters/universal.d.ts +20 -0
  56. package/dist/adapters/universal.d.ts.map +1 -0
  57. package/dist/adapters/universal.js +80 -0
  58. package/dist/adapters/universal.js.map +1 -0
  59. package/dist/analysis/deep-analyzer.d.ts +61 -0
  60. package/dist/analysis/deep-analyzer.d.ts.map +1 -0
  61. package/dist/analysis/deep-analyzer.js +349 -0
  62. package/dist/analysis/deep-analyzer.js.map +1 -0
  63. package/dist/analysis/project-analyzer.d.ts +25 -0
  64. package/dist/analysis/project-analyzer.d.ts.map +1 -0
  65. package/dist/analysis/project-analyzer.js +244 -0
  66. package/dist/analysis/project-analyzer.js.map +1 -0
  67. package/dist/commands/architecture/architecture-pipeline-enhanced.d.ts +82 -0
  68. package/dist/commands/architecture/architecture-pipeline-enhanced.d.ts.map +1 -0
  69. package/dist/commands/architecture/architecture-pipeline-enhanced.js +649 -0
  70. package/dist/commands/architecture/architecture-pipeline-enhanced.js.map +1 -0
  71. package/dist/commands/architecture/architecture-pipeline.d.ts +105 -0
  72. package/dist/commands/architecture/architecture-pipeline.d.ts.map +1 -0
  73. package/dist/commands/architecture/architecture-pipeline.js +510 -0
  74. package/dist/commands/architecture/architecture-pipeline.js.map +1 -0
  75. package/dist/commands/architecture/architecture-reflection.d.ts +67 -0
  76. package/dist/commands/architecture/architecture-reflection.d.ts.map +1 -0
  77. package/dist/commands/architecture/architecture-reflection.js +508 -0
  78. package/dist/commands/architecture/architecture-reflection.js.map +1 -0
  79. package/dist/commands/architecture/index.d.ts +21 -0
  80. package/dist/commands/architecture/index.d.ts.map +1 -0
  81. package/dist/commands/architecture/index.js +41 -0
  82. package/dist/commands/architecture/index.js.map +1 -0
  83. package/dist/commands/architecture.d.ts +20 -0
  84. package/dist/commands/architecture.d.ts.map +1 -0
  85. package/dist/commands/architecture.js +223 -0
  86. package/dist/commands/architecture.js.map +1 -0
  87. package/dist/commands/backlog/ai-enhanced.d.ts +83 -0
  88. package/dist/commands/backlog/ai-enhanced.d.ts.map +1 -0
  89. package/dist/commands/backlog/ai-enhanced.js +462 -0
  90. package/dist/commands/backlog/ai-enhanced.js.map +1 -0
  91. package/dist/commands/backlog/ai-prompt.d.ts +21 -0
  92. package/dist/commands/backlog/ai-prompt.d.ts.map +1 -0
  93. package/dist/commands/backlog/ai-prompt.js +373 -0
  94. package/dist/commands/backlog/ai-prompt.js.map +1 -0
  95. package/dist/commands/backlog/ai-template.d.ts +21 -0
  96. package/dist/commands/backlog/ai-template.d.ts.map +1 -0
  97. package/dist/commands/backlog/ai-template.js +374 -0
  98. package/dist/commands/backlog/ai-template.js.map +1 -0
  99. package/dist/commands/backlog/ai.d.ts +21 -0
  100. package/dist/commands/backlog/ai.d.ts.map +1 -0
  101. package/dist/commands/backlog/ai.js +76 -0
  102. package/dist/commands/backlog/ai.js.map +1 -0
  103. package/dist/commands/backlog/backlog-pipeline.d.ts +103 -0
  104. package/dist/commands/backlog/backlog-pipeline.d.ts.map +1 -0
  105. package/dist/commands/backlog/backlog-pipeline.js +538 -0
  106. package/dist/commands/backlog/backlog-pipeline.js.map +1 -0
  107. package/dist/commands/backlog/backlog-reflection.d.ts +48 -0
  108. package/dist/commands/backlog/backlog-reflection.d.ts.map +1 -0
  109. package/dist/commands/backlog/backlog-reflection.js +231 -0
  110. package/dist/commands/backlog/backlog-reflection.js.map +1 -0
  111. package/dist/commands/backlog/base.d.ts +95 -0
  112. package/dist/commands/backlog/base.d.ts.map +1 -0
  113. package/dist/commands/backlog/base.js +291 -0
  114. package/dist/commands/backlog/base.js.map +1 -0
  115. package/dist/commands/backlog/complete.d.ts +20 -0
  116. package/dist/commands/backlog/complete.d.ts.map +1 -0
  117. package/dist/commands/backlog/complete.js +83 -0
  118. package/dist/commands/backlog/complete.js.map +1 -0
  119. package/dist/commands/backlog/context-gatherer.d.ts +76 -0
  120. package/dist/commands/backlog/context-gatherer.d.ts.map +1 -0
  121. package/dist/commands/backlog/context-gatherer.js +216 -0
  122. package/dist/commands/backlog/context-gatherer.js.map +1 -0
  123. package/dist/commands/backlog/create.d.ts +25 -0
  124. package/dist/commands/backlog/create.d.ts.map +1 -0
  125. package/dist/commands/backlog/create.js +131 -0
  126. package/dist/commands/backlog/create.js.map +1 -0
  127. package/dist/commands/backlog/index.d.ts +17 -0
  128. package/dist/commands/backlog/index.d.ts.map +1 -0
  129. package/dist/commands/backlog/index.js +177 -0
  130. package/dist/commands/backlog/index.js.map +1 -0
  131. package/dist/commands/backlog/list.d.ts +25 -0
  132. package/dist/commands/backlog/list.d.ts.map +1 -0
  133. package/dist/commands/backlog/list.js +136 -0
  134. package/dist/commands/backlog/list.js.map +1 -0
  135. package/dist/commands/backlog/quick-query.d.ts +16 -0
  136. package/dist/commands/backlog/quick-query.d.ts.map +1 -0
  137. package/dist/commands/backlog/quick-query.js +126 -0
  138. package/dist/commands/backlog/quick-query.js.map +1 -0
  139. package/dist/commands/backlog/show.d.ts +20 -0
  140. package/dist/commands/backlog/show.d.ts.map +1 -0
  141. package/dist/commands/backlog/show.js +95 -0
  142. package/dist/commands/backlog/show.js.map +1 -0
  143. package/dist/commands/backlog/update.d.ts +25 -0
  144. package/dist/commands/backlog/update.d.ts.map +1 -0
  145. package/dist/commands/backlog/update.js +113 -0
  146. package/dist/commands/backlog/update.js.map +1 -0
  147. package/dist/commands/bug/bug-context-gatherer.d.ts +58 -0
  148. package/dist/commands/bug/bug-context-gatherer.d.ts.map +1 -0
  149. package/dist/commands/bug/bug-context-gatherer.js +228 -0
  150. package/dist/commands/bug/bug-context-gatherer.js.map +1 -0
  151. package/dist/commands/bug/bug-reflection.d.ts +70 -0
  152. package/dist/commands/bug/bug-reflection.d.ts.map +1 -0
  153. package/dist/commands/bug/bug-reflection.js +343 -0
  154. package/dist/commands/bug/bug-reflection.js.map +1 -0
  155. package/dist/commands/capture/capture-reflection.d.ts +139 -0
  156. package/dist/commands/capture/capture-reflection.d.ts.map +1 -0
  157. package/dist/commands/capture/capture-reflection.js +583 -0
  158. package/dist/commands/capture/capture-reflection.js.map +1 -0
  159. package/dist/commands/capture.d.ts +22 -0
  160. package/dist/commands/capture.d.ts.map +1 -0
  161. package/dist/commands/capture.js +301 -0
  162. package/dist/commands/capture.js.map +1 -0
  163. package/dist/commands/changelog/changelog-reflection.d.ts +65 -0
  164. package/dist/commands/changelog/changelog-reflection.d.ts.map +1 -0
  165. package/dist/commands/changelog/changelog-reflection.js +252 -0
  166. package/dist/commands/changelog/changelog-reflection.js.map +1 -0
  167. package/dist/commands/compact.d.ts +15 -0
  168. package/dist/commands/compact.d.ts.map +1 -0
  169. package/dist/commands/compact.js +113 -0
  170. package/dist/commands/compact.js.map +1 -0
  171. package/dist/commands/config.d.ts +10 -0
  172. package/dist/commands/config.d.ts.map +1 -0
  173. package/dist/commands/config.js +85 -0
  174. package/dist/commands/config.js.map +1 -0
  175. package/dist/commands/context-new.d.ts +18 -0
  176. package/dist/commands/context-new.d.ts.map +1 -0
  177. package/dist/commands/context-new.js +265 -0
  178. package/dist/commands/context-new.js.map +1 -0
  179. package/dist/commands/context.d.ts +16 -0
  180. package/dist/commands/context.d.ts.map +1 -0
  181. package/dist/commands/context.js +82 -0
  182. package/dist/commands/context.js.map +1 -0
  183. package/dist/commands/documentation/documentation-pipeline.d.ts +130 -0
  184. package/dist/commands/documentation/documentation-pipeline.d.ts.map +1 -0
  185. package/dist/commands/documentation/documentation-pipeline.js +716 -0
  186. package/dist/commands/documentation/documentation-pipeline.js.map +1 -0
  187. package/dist/commands/documentation/documentation-reflection.d.ts +54 -0
  188. package/dist/commands/documentation/documentation-reflection.d.ts.map +1 -0
  189. package/dist/commands/documentation/documentation-reflection.js +338 -0
  190. package/dist/commands/documentation/documentation-reflection.js.map +1 -0
  191. package/dist/commands/explore/explore-reflection-pipeline.d.ts +117 -0
  192. package/dist/commands/explore/explore-reflection-pipeline.d.ts.map +1 -0
  193. package/dist/commands/explore/explore-reflection-pipeline.js +503 -0
  194. package/dist/commands/explore/explore-reflection-pipeline.js.map +1 -0
  195. package/dist/commands/explore/index.d.ts +29 -0
  196. package/dist/commands/explore/index.d.ts.map +1 -0
  197. package/dist/commands/explore/index.js +30 -0
  198. package/dist/commands/explore/index.js.map +1 -0
  199. package/dist/commands/explore.d.ts +20 -0
  200. package/dist/commands/explore.d.ts.map +1 -0
  201. package/dist/commands/explore.js +224 -0
  202. package/dist/commands/explore.js.map +1 -0
  203. package/dist/commands/git/git-context-gatherer.d.ts +101 -0
  204. package/dist/commands/git/git-context-gatherer.d.ts.map +1 -0
  205. package/dist/commands/git/git-context-gatherer.js +284 -0
  206. package/dist/commands/git/git-context-gatherer.js.map +1 -0
  207. package/dist/commands/git/git-pipeline.d.ts +75 -0
  208. package/dist/commands/git/git-pipeline.d.ts.map +1 -0
  209. package/dist/commands/git/git-pipeline.js +530 -0
  210. package/dist/commands/git/git-pipeline.js.map +1 -0
  211. package/dist/commands/git/git-reflection.d.ts +50 -0
  212. package/dist/commands/git/git-reflection.d.ts.map +1 -0
  213. package/dist/commands/git/git-reflection.js +193 -0
  214. package/dist/commands/git/git-reflection.js.map +1 -0
  215. package/dist/commands/handoff/handoff-reflection-pipeline.d.ts +106 -0
  216. package/dist/commands/handoff/handoff-reflection-pipeline.d.ts.map +1 -0
  217. package/dist/commands/handoff/handoff-reflection-pipeline.js +534 -0
  218. package/dist/commands/handoff/handoff-reflection-pipeline.js.map +1 -0
  219. package/dist/commands/handoff/handoff-save.d.ts +16 -0
  220. package/dist/commands/handoff/handoff-save.d.ts.map +1 -0
  221. package/dist/commands/handoff/handoff-save.js +72 -0
  222. package/dist/commands/handoff/handoff-save.js.map +1 -0
  223. package/dist/commands/handoff/index.d.ts +19 -0
  224. package/dist/commands/handoff/index.d.ts.map +1 -0
  225. package/dist/commands/handoff/index.js +55 -0
  226. package/dist/commands/handoff/index.js.map +1 -0
  227. package/dist/commands/handoff-ai-orig.d.ts +27 -0
  228. package/dist/commands/handoff-ai-orig.d.ts.map +1 -0
  229. package/dist/commands/handoff-ai-orig.js +405 -0
  230. package/dist/commands/handoff-ai-orig.js.map +1 -0
  231. package/dist/commands/handoff-ai.d.ts +27 -0
  232. package/dist/commands/handoff-ai.d.ts.map +1 -0
  233. package/dist/commands/handoff-ai.js +405 -0
  234. package/dist/commands/handoff-ai.js.map +1 -0
  235. package/dist/commands/handoff-enhanced-orig.d.ts +25 -0
  236. package/dist/commands/handoff-enhanced-orig.d.ts.map +1 -0
  237. package/dist/commands/handoff-enhanced-orig.js +349 -0
  238. package/dist/commands/handoff-enhanced-orig.js.map +1 -0
  239. package/dist/commands/handoff-enhanced.d.ts +25 -0
  240. package/dist/commands/handoff-enhanced.d.ts.map +1 -0
  241. package/dist/commands/handoff-enhanced.js +349 -0
  242. package/dist/commands/handoff-enhanced.js.map +1 -0
  243. package/dist/commands/handoff-orig.d.ts +10 -0
  244. package/dist/commands/handoff-orig.d.ts.map +1 -0
  245. package/dist/commands/handoff-orig.js +167 -0
  246. package/dist/commands/handoff-orig.js.map +1 -0
  247. package/dist/commands/handoff.d.ts +10 -0
  248. package/dist/commands/handoff.d.ts.map +1 -0
  249. package/dist/commands/handoff.js +167 -0
  250. package/dist/commands/handoff.js.map +1 -0
  251. package/dist/commands/init-copilot.d.ts +6 -0
  252. package/dist/commands/init-copilot.d.ts.map +1 -0
  253. package/dist/commands/init-copilot.js +151 -0
  254. package/dist/commands/init-copilot.js.map +1 -0
  255. package/dist/commands/init-cursor.d.ts +5 -0
  256. package/dist/commands/init-cursor.d.ts.map +1 -0
  257. package/dist/commands/init-cursor.js +95 -0
  258. package/dist/commands/init-cursor.js.map +1 -0
  259. package/dist/commands/init-enhanced.d.ts +20 -0
  260. package/dist/commands/init-enhanced.d.ts.map +1 -0
  261. package/dist/commands/init-enhanced.js +430 -0
  262. package/dist/commands/init-enhanced.js.map +1 -0
  263. package/dist/commands/init.d.ts +16 -0
  264. package/dist/commands/init.d.ts.map +1 -0
  265. package/dist/commands/init.js +213 -0
  266. package/dist/commands/init.js.map +1 -0
  267. package/dist/commands/magic-prompt.d.ts +20 -0
  268. package/dist/commands/magic-prompt.d.ts.map +1 -0
  269. package/dist/commands/magic-prompt.js +166 -0
  270. package/dist/commands/magic-prompt.js.map +1 -0
  271. package/dist/commands/magic-simple.d.ts +20 -0
  272. package/dist/commands/magic-simple.d.ts.map +1 -0
  273. package/dist/commands/magic-simple.js +32 -0
  274. package/dist/commands/magic-simple.js.map +1 -0
  275. package/dist/commands/magic.d.ts +20 -0
  276. package/dist/commands/magic.d.ts.map +1 -0
  277. package/dist/commands/magic.js +144 -0
  278. package/dist/commands/magic.js.map +1 -0
  279. package/dist/commands/plan/plan-reflection-pipeline.d.ts +126 -0
  280. package/dist/commands/plan/plan-reflection-pipeline.d.ts.map +1 -0
  281. package/dist/commands/plan/plan-reflection-pipeline.js +554 -0
  282. package/dist/commands/plan/plan-reflection-pipeline.js.map +1 -0
  283. package/dist/commands/plan.d.ts +20 -0
  284. package/dist/commands/plan.d.ts.map +1 -0
  285. package/dist/commands/plan.js +253 -0
  286. package/dist/commands/plan.js.map +1 -0
  287. package/dist/commands/prd/index.d.ts +21 -0
  288. package/dist/commands/prd/index.d.ts.map +1 -0
  289. package/dist/commands/prd/index.js +41 -0
  290. package/dist/commands/prd/index.js.map +1 -0
  291. package/dist/commands/prd/prd-pipeline-enhanced.d.ts +82 -0
  292. package/dist/commands/prd/prd-pipeline-enhanced.d.ts.map +1 -0
  293. package/dist/commands/prd/prd-pipeline-enhanced.js +565 -0
  294. package/dist/commands/prd/prd-pipeline-enhanced.js.map +1 -0
  295. package/dist/commands/prd/prd-pipeline.d.ts +106 -0
  296. package/dist/commands/prd/prd-pipeline.d.ts.map +1 -0
  297. package/dist/commands/prd/prd-pipeline.js +491 -0
  298. package/dist/commands/prd/prd-pipeline.js.map +1 -0
  299. package/dist/commands/prd/prd-reflection-enhanced.d.ts +63 -0
  300. package/dist/commands/prd/prd-reflection-enhanced.d.ts.map +1 -0
  301. package/dist/commands/prd/prd-reflection-enhanced.js +310 -0
  302. package/dist/commands/prd/prd-reflection-enhanced.js.map +1 -0
  303. package/dist/commands/prd/prd-reflection.d.ts +59 -0
  304. package/dist/commands/prd/prd-reflection.d.ts.map +1 -0
  305. package/dist/commands/prd/prd-reflection.js +548 -0
  306. package/dist/commands/prd/prd-reflection.js.map +1 -0
  307. package/dist/commands/reflect.d.ts +24 -0
  308. package/dist/commands/reflect.d.ts.map +1 -0
  309. package/dist/commands/reflect.js +135 -0
  310. package/dist/commands/reflect.js.map +1 -0
  311. package/dist/commands/ship/ship-reflection.d.ts +164 -0
  312. package/dist/commands/ship/ship-reflection.d.ts.map +1 -0
  313. package/dist/commands/ship/ship-reflection.js +732 -0
  314. package/dist/commands/ship/ship-reflection.js.map +1 -0
  315. package/dist/commands/ship-ai.d.ts +28 -0
  316. package/dist/commands/ship-ai.d.ts.map +1 -0
  317. package/dist/commands/ship-ai.js +318 -0
  318. package/dist/commands/ship-ai.js.map +1 -0
  319. package/dist/commands/ship.d.ts +17 -0
  320. package/dist/commands/ship.d.ts.map +1 -0
  321. package/dist/commands/ship.js +175 -0
  322. package/dist/commands/ship.js.map +1 -0
  323. package/dist/commands/sprint/index.d.ts +21 -0
  324. package/dist/commands/sprint/index.d.ts.map +1 -0
  325. package/dist/commands/sprint/index.js +39 -0
  326. package/dist/commands/sprint/index.js.map +1 -0
  327. package/dist/commands/sprint/sprint-pipeline-enhanced.d.ts +142 -0
  328. package/dist/commands/sprint/sprint-pipeline-enhanced.d.ts.map +1 -0
  329. package/dist/commands/sprint/sprint-pipeline-enhanced.js +822 -0
  330. package/dist/commands/sprint/sprint-pipeline-enhanced.js.map +1 -0
  331. package/dist/commands/sprint/sprint-pipeline.d.ts +72 -0
  332. package/dist/commands/sprint/sprint-pipeline.d.ts.map +1 -0
  333. package/dist/commands/sprint/sprint-pipeline.js +363 -0
  334. package/dist/commands/sprint/sprint-pipeline.js.map +1 -0
  335. package/dist/commands/start/index.d.ts +19 -0
  336. package/dist/commands/start/index.d.ts.map +1 -0
  337. package/dist/commands/start/index.js +41 -0
  338. package/dist/commands/start/index.js.map +1 -0
  339. package/dist/commands/start/start-reflection-pipeline.d.ts +99 -0
  340. package/dist/commands/start/start-reflection-pipeline.d.ts.map +1 -0
  341. package/dist/commands/start/start-reflection-pipeline.js +458 -0
  342. package/dist/commands/start/start-reflection-pipeline.js.map +1 -0
  343. package/dist/commands/start/start-reflection.d.ts +89 -0
  344. package/dist/commands/start/start-reflection.d.ts.map +1 -0
  345. package/dist/commands/start/start-reflection.js +572 -0
  346. package/dist/commands/start/start-reflection.js.map +1 -0
  347. package/dist/commands/start/start-with-synthesis.d.ts +20 -0
  348. package/dist/commands/start/start-with-synthesis.d.ts.map +1 -0
  349. package/dist/commands/start/start-with-synthesis.js +134 -0
  350. package/dist/commands/start/start-with-synthesis.js.map +1 -0
  351. package/dist/commands/start-enhanced-orig.d.ts +19 -0
  352. package/dist/commands/start-enhanced-orig.d.ts.map +1 -0
  353. package/dist/commands/start-enhanced-orig.js +434 -0
  354. package/dist/commands/start-enhanced-orig.js.map +1 -0
  355. package/dist/commands/start-enhanced.d.ts +19 -0
  356. package/dist/commands/start-enhanced.d.ts.map +1 -0
  357. package/dist/commands/start-enhanced.js +434 -0
  358. package/dist/commands/start-enhanced.js.map +1 -0
  359. package/dist/commands/start-orig.d.ts +10 -0
  360. package/dist/commands/start-orig.d.ts.map +1 -0
  361. package/dist/commands/start-orig.js +119 -0
  362. package/dist/commands/start-orig.js.map +1 -0
  363. package/dist/commands/start.d.ts +10 -0
  364. package/dist/commands/start.d.ts.map +1 -0
  365. package/dist/commands/start.js +119 -0
  366. package/dist/commands/start.js.map +1 -0
  367. package/dist/commands/status.d.ts +11 -0
  368. package/dist/commands/status.d.ts.map +1 -0
  369. package/dist/commands/status.js +119 -0
  370. package/dist/commands/status.js.map +1 -0
  371. package/dist/commands/testing/index.d.ts +21 -0
  372. package/dist/commands/testing/index.d.ts.map +1 -0
  373. package/dist/commands/testing/index.js +41 -0
  374. package/dist/commands/testing/index.js.map +1 -0
  375. package/dist/commands/testing/testing-pipeline-enhanced.d.ts +94 -0
  376. package/dist/commands/testing/testing-pipeline-enhanced.d.ts.map +1 -0
  377. package/dist/commands/testing/testing-pipeline-enhanced.js +760 -0
  378. package/dist/commands/testing/testing-pipeline-enhanced.js.map +1 -0
  379. package/dist/commands/testing/testing-pipeline.d.ts +77 -0
  380. package/dist/commands/testing/testing-pipeline.d.ts.map +1 -0
  381. package/dist/commands/testing/testing-pipeline.js +479 -0
  382. package/dist/commands/testing/testing-pipeline.js.map +1 -0
  383. package/dist/commands/uninstall-copilot.d.ts +5 -0
  384. package/dist/commands/uninstall-copilot.d.ts.map +1 -0
  385. package/dist/commands/uninstall-copilot.js +143 -0
  386. package/dist/commands/uninstall-copilot.js.map +1 -0
  387. package/dist/commands/uninstall-cursor.d.ts +6 -0
  388. package/dist/commands/uninstall-cursor.d.ts.map +1 -0
  389. package/dist/commands/uninstall-cursor.js +124 -0
  390. package/dist/commands/uninstall-cursor.js.map +1 -0
  391. package/dist/commands/vibecheck-ai.d.ts +25 -0
  392. package/dist/commands/vibecheck-ai.d.ts.map +1 -0
  393. package/dist/commands/vibecheck-ai.js +260 -0
  394. package/dist/commands/vibecheck-ai.js.map +1 -0
  395. package/dist/commands/vibecheck-aware.d.ts +19 -0
  396. package/dist/commands/vibecheck-aware.d.ts.map +1 -0
  397. package/dist/commands/vibecheck-aware.js +350 -0
  398. package/dist/commands/vibecheck-aware.js.map +1 -0
  399. package/dist/commands/vibecheck-final.d.ts +22 -0
  400. package/dist/commands/vibecheck-final.d.ts.map +1 -0
  401. package/dist/commands/vibecheck-final.js +132 -0
  402. package/dist/commands/vibecheck-final.js.map +1 -0
  403. package/dist/commands/vibecheck-natural.d.ts +18 -0
  404. package/dist/commands/vibecheck-natural.d.ts.map +1 -0
  405. package/dist/commands/vibecheck-natural.js +105 -0
  406. package/dist/commands/vibecheck-natural.js.map +1 -0
  407. package/dist/commands/vibecheck-simple.d.ts +20 -0
  408. package/dist/commands/vibecheck-simple.d.ts.map +1 -0
  409. package/dist/commands/vibecheck-simple.js +136 -0
  410. package/dist/commands/vibecheck-simple.js.map +1 -0
  411. package/dist/commands/vibecheck.d.ts +10 -0
  412. package/dist/commands/vibecheck.d.ts.map +1 -0
  413. package/dist/commands/vibecheck.js +95 -0
  414. package/dist/commands/vibecheck.js.map +1 -0
  415. package/dist/core/adapters/path-adapter.d.ts +144 -0
  416. package/dist/core/adapters/path-adapter.d.ts.map +1 -0
  417. package/dist/core/adapters/path-adapter.js +245 -0
  418. package/dist/core/adapters/path-adapter.js.map +1 -0
  419. package/dist/core/command-shortcuts.d.ts +62 -0
  420. package/dist/core/command-shortcuts.d.ts.map +1 -0
  421. package/dist/core/command-shortcuts.js +124 -0
  422. package/dist/core/command-shortcuts.js.map +1 -0
  423. package/dist/core/config/config-aware-reflection.d.ts +37 -0
  424. package/dist/core/config/config-aware-reflection.d.ts.map +1 -0
  425. package/dist/core/config/config-aware-reflection.js +97 -0
  426. package/dist/core/config/config-aware-reflection.js.map +1 -0
  427. package/dist/core/config/config-loader.d.ts +154 -0
  428. package/dist/core/config/config-loader.d.ts.map +1 -0
  429. package/dist/core/config/config-loader.js +424 -0
  430. package/dist/core/config/config-loader.js.map +1 -0
  431. package/dist/core/config/config-migrator.d.ts +150 -0
  432. package/dist/core/config/config-migrator.d.ts.map +1 -0
  433. package/dist/core/config/config-migrator.js +423 -0
  434. package/dist/core/config/config-migrator.js.map +1 -0
  435. package/dist/core/config/config-schema.d.ts +276 -0
  436. package/dist/core/config/config-schema.d.ts.map +1 -0
  437. package/dist/core/config/config-schema.js +277 -0
  438. package/dist/core/config/config-schema.js.map +1 -0
  439. package/dist/core/config/index.d.ts +260 -0
  440. package/dist/core/config/index.d.ts.map +1 -0
  441. package/dist/core/config/index.js +283 -0
  442. package/dist/core/config/index.js.map +1 -0
  443. package/dist/core/config/interactive-config.d.ts +76 -0
  444. package/dist/core/config/interactive-config.d.ts.map +1 -0
  445. package/dist/core/config/interactive-config.js +315 -0
  446. package/dist/core/config/interactive-config.js.map +1 -0
  447. package/dist/core/config/path-config.d.ts +121 -0
  448. package/dist/core/config/path-config.d.ts.map +1 -0
  449. package/dist/core/config/path-config.js +210 -0
  450. package/dist/core/config/path-config.js.map +1 -0
  451. package/dist/core/config/path-resolver.d.ts +151 -0
  452. package/dist/core/config/path-resolver.d.ts.map +1 -0
  453. package/dist/core/config/path-resolver.js +343 -0
  454. package/dist/core/config/path-resolver.js.map +1 -0
  455. package/dist/core/config/project-detector.d.ts +58 -0
  456. package/dist/core/config/project-detector.d.ts.map +1 -0
  457. package/dist/core/config/project-detector.js +310 -0
  458. package/dist/core/config/project-detector.js.map +1 -0
  459. package/dist/core/config-backup/config-aware-reflection.d.ts +37 -0
  460. package/dist/core/config-backup/config-aware-reflection.d.ts.map +1 -0
  461. package/dist/core/config-backup/config-aware-reflection.js +97 -0
  462. package/dist/core/config-backup/config-aware-reflection.js.map +1 -0
  463. package/dist/core/config-backup/config-loader.d.ts +71 -0
  464. package/dist/core/config-backup/config-loader.d.ts.map +1 -0
  465. package/dist/core/config-backup/config-loader.js +288 -0
  466. package/dist/core/config-backup/config-loader.js.map +1 -0
  467. package/dist/core/config-backup/interactive-config.d.ts +76 -0
  468. package/dist/core/config-backup/interactive-config.d.ts.map +1 -0
  469. package/dist/core/config-backup/interactive-config.js +315 -0
  470. package/dist/core/config-backup/interactive-config.js.map +1 -0
  471. package/dist/core/config-backup/path-config.d.ts +121 -0
  472. package/dist/core/config-backup/path-config.d.ts.map +1 -0
  473. package/dist/core/config-backup/path-config.js +210 -0
  474. package/dist/core/config-backup/path-config.js.map +1 -0
  475. package/dist/core/config-backup/project-detector.d.ts +58 -0
  476. package/dist/core/config-backup/project-detector.d.ts.map +1 -0
  477. package/dist/core/config-backup/project-detector.js +310 -0
  478. package/dist/core/config-backup/project-detector.js.map +1 -0
  479. package/dist/core/documents/document-manager.d.ts +97 -0
  480. package/dist/core/documents/document-manager.d.ts.map +1 -0
  481. package/dist/core/documents/document-manager.js +441 -0
  482. package/dist/core/documents/document-manager.js.map +1 -0
  483. package/dist/core/documents/document-migrator.d.ts +138 -0
  484. package/dist/core/documents/document-migrator.d.ts.map +1 -0
  485. package/dist/core/documents/document-migrator.js +349 -0
  486. package/dist/core/documents/document-migrator.js.map +1 -0
  487. package/dist/core/documents/document-namer.d.ts +111 -0
  488. package/dist/core/documents/document-namer.d.ts.map +1 -0
  489. package/dist/core/documents/document-namer.js +225 -0
  490. package/dist/core/documents/document-namer.js.map +1 -0
  491. package/dist/core/documents/examples.d.ts +74 -0
  492. package/dist/core/documents/examples.d.ts.map +1 -0
  493. package/dist/core/documents/examples.js +273 -0
  494. package/dist/core/documents/examples.js.map +1 -0
  495. package/dist/core/documents/file-system.d.ts +93 -0
  496. package/dist/core/documents/file-system.d.ts.map +1 -0
  497. package/dist/core/documents/file-system.js +432 -0
  498. package/dist/core/documents/file-system.js.map +1 -0
  499. package/dist/core/documents/index.d.ts +97 -0
  500. package/dist/core/documents/index.d.ts.map +1 -0
  501. package/dist/core/documents/index.js +119 -0
  502. package/dist/core/documents/index.js.map +1 -0
  503. package/dist/core/documents/markdown-processor.d.ts +84 -0
  504. package/dist/core/documents/markdown-processor.d.ts.map +1 -0
  505. package/dist/core/documents/markdown-processor.js +302 -0
  506. package/dist/core/documents/markdown-processor.js.map +1 -0
  507. package/dist/core/documents/sequence-manager.d.ts +107 -0
  508. package/dist/core/documents/sequence-manager.d.ts.map +1 -0
  509. package/dist/core/documents/sequence-manager.js +246 -0
  510. package/dist/core/documents/sequence-manager.js.map +1 -0
  511. package/dist/core/documents/template-engine.d.ts +101 -0
  512. package/dist/core/documents/template-engine.d.ts.map +1 -0
  513. package/dist/core/documents/template-engine.js +440 -0
  514. package/dist/core/documents/template-engine.js.map +1 -0
  515. package/dist/core/handoff-quality.d.ts +164 -0
  516. package/dist/core/handoff-quality.d.ts.map +1 -0
  517. package/dist/core/handoff-quality.js +590 -0
  518. package/dist/core/handoff-quality.js.map +1 -0
  519. package/dist/core/platform/hook-adapter.d.ts +109 -0
  520. package/dist/core/platform/hook-adapter.d.ts.map +1 -0
  521. package/dist/core/platform/hook-adapter.js +527 -0
  522. package/dist/core/platform/hook-adapter.js.map +1 -0
  523. package/dist/core/platform/hook-migration.d.ts +73 -0
  524. package/dist/core/platform/hook-migration.d.ts.map +1 -0
  525. package/dist/core/platform/hook-migration.js +339 -0
  526. package/dist/core/platform/hook-migration.js.map +1 -0
  527. package/dist/core/platform/hook-migrator.d.ts +49 -0
  528. package/dist/core/platform/hook-migrator.d.ts.map +1 -0
  529. package/dist/core/platform/hook-migrator.js +305 -0
  530. package/dist/core/platform/hook-migrator.js.map +1 -0
  531. package/dist/core/platform/hook-templates.d.ts +60 -0
  532. package/dist/core/platform/hook-templates.d.ts.map +1 -0
  533. package/dist/core/platform/hook-templates.js +352 -0
  534. package/dist/core/platform/hook-templates.js.map +1 -0
  535. package/dist/core/platform/index.d.ts +82 -0
  536. package/dist/core/platform/index.d.ts.map +1 -0
  537. package/dist/core/platform/index.js +173 -0
  538. package/dist/core/platform/index.js.map +1 -0
  539. package/dist/core/platform/path-normalizer.d.ts +117 -0
  540. package/dist/core/platform/path-normalizer.d.ts.map +1 -0
  541. package/dist/core/platform/path-normalizer.js +333 -0
  542. package/dist/core/platform/path-normalizer.js.map +1 -0
  543. package/dist/core/platform/path-resolver.d.ts +120 -0
  544. package/dist/core/platform/path-resolver.d.ts.map +1 -0
  545. package/dist/core/platform/path-resolver.js +339 -0
  546. package/dist/core/platform/path-resolver.js.map +1 -0
  547. package/dist/core/platform/platform-adapter.d.ts +101 -0
  548. package/dist/core/platform/platform-adapter.d.ts.map +1 -0
  549. package/dist/core/platform/platform-adapter.js +243 -0
  550. package/dist/core/platform/platform-adapter.js.map +1 -0
  551. package/dist/core/platform/platform-detector.d.ts +122 -0
  552. package/dist/core/platform/platform-detector.d.ts.map +1 -0
  553. package/dist/core/platform/platform-detector.js +318 -0
  554. package/dist/core/platform/platform-detector.js.map +1 -0
  555. package/dist/core/platform/platform-templates.d.ts +62 -0
  556. package/dist/core/platform/platform-templates.d.ts.map +1 -0
  557. package/dist/core/platform/platform-templates.js +364 -0
  558. package/dist/core/platform/platform-templates.js.map +1 -0
  559. package/dist/core/platform/types.d.ts +54 -0
  560. package/dist/core/platform/types.d.ts.map +1 -0
  561. package/dist/core/platform/types.js +12 -0
  562. package/dist/core/platform/types.js.map +1 -0
  563. package/dist/core/polyglot-example.d.ts +115 -0
  564. package/dist/core/polyglot-example.d.ts.map +1 -0
  565. package/dist/core/polyglot-example.js +341 -0
  566. package/dist/core/polyglot-example.js.map +1 -0
  567. package/dist/core/pressure-monitor.d.ts +76 -0
  568. package/dist/core/pressure-monitor.d.ts.map +1 -0
  569. package/dist/core/pressure-monitor.js +156 -0
  570. package/dist/core/pressure-monitor.js.map +1 -0
  571. package/dist/core/reflection-pattern.d.ts +99 -0
  572. package/dist/core/reflection-pattern.d.ts.map +1 -0
  573. package/dist/core/reflection-pattern.js +294 -0
  574. package/dist/core/reflection-pattern.js.map +1 -0
  575. package/dist/core/session-log-manager.d.ts +83 -0
  576. package/dist/core/session-log-manager.d.ts.map +1 -0
  577. package/dist/core/session-log-manager.js +288 -0
  578. package/dist/core/session-log-manager.js.map +1 -0
  579. package/dist/core/simple-pipeline-base.d.ts +130 -0
  580. package/dist/core/simple-pipeline-base.d.ts.map +1 -0
  581. package/dist/core/simple-pipeline-base.js +240 -0
  582. package/dist/core/simple-pipeline-base.js.map +1 -0
  583. package/dist/core/simple-pipeline.d.ts +70 -0
  584. package/dist/core/simple-pipeline.d.ts.map +1 -0
  585. package/dist/core/simple-pipeline.js +241 -0
  586. package/dist/core/simple-pipeline.js.map +1 -0
  587. package/dist/core/utils/paths.d.ts +50 -0
  588. package/dist/core/utils/paths.d.ts.map +1 -0
  589. package/dist/core/utils/paths.js +75 -0
  590. package/dist/core/utils/paths.js.map +1 -0
  591. package/dist/core/validators/command-argument-validator.d.ts +102 -0
  592. package/dist/core/validators/command-argument-validator.d.ts.map +1 -0
  593. package/dist/core/validators/command-argument-validator.js +377 -0
  594. package/dist/core/validators/command-argument-validator.js.map +1 -0
  595. package/dist/core/validators/config-validator.d.ts +111 -0
  596. package/dist/core/validators/config-validator.d.ts.map +1 -0
  597. package/dist/core/validators/config-validator.js +433 -0
  598. package/dist/core/validators/config-validator.js.map +1 -0
  599. package/dist/core/validators/environment-validator.d.ts +138 -0
  600. package/dist/core/validators/environment-validator.d.ts.map +1 -0
  601. package/dist/core/validators/environment-validator.js +516 -0
  602. package/dist/core/validators/environment-validator.js.map +1 -0
  603. package/dist/core/validators/git-validator.d.ts +100 -0
  604. package/dist/core/validators/git-validator.d.ts.map +1 -0
  605. package/dist/core/validators/git-validator.js +288 -0
  606. package/dist/core/validators/git-validator.js.map +1 -0
  607. package/dist/core/validators/git-validator.test.d.ts +12 -0
  608. package/dist/core/validators/git-validator.test.d.ts.map +1 -0
  609. package/dist/core/validators/git-validator.test.js +40 -0
  610. package/dist/core/validators/git-validator.test.js.map +1 -0
  611. package/dist/core/validators/index.d.ts +90 -0
  612. package/dist/core/validators/index.d.ts.map +1 -0
  613. package/dist/core/validators/index.js +166 -0
  614. package/dist/core/validators/index.js.map +1 -0
  615. package/dist/core/validators/input-validator.d.ts +117 -0
  616. package/dist/core/validators/input-validator.d.ts.map +1 -0
  617. package/dist/core/validators/input-validator.js +368 -0
  618. package/dist/core/validators/input-validator.js.map +1 -0
  619. package/dist/core/validators/temp_index.d.ts +56 -0
  620. package/dist/core/validators/temp_index.d.ts.map +1 -0
  621. package/dist/core/validators/temp_index.js +94 -0
  622. package/dist/core/validators/temp_index.js.map +1 -0
  623. package/dist/core/validators/validation-error-handler.d.ts +107 -0
  624. package/dist/core/validators/validation-error-handler.d.ts.map +1 -0
  625. package/dist/core/validators/validation-error-handler.js +379 -0
  626. package/dist/core/validators/validation-error-handler.js.map +1 -0
  627. package/dist/core/validators/validation-orchestrator.d.ts +128 -0
  628. package/dist/core/validators/validation-orchestrator.d.ts.map +1 -0
  629. package/dist/core/validators/validation-orchestrator.js +301 -0
  630. package/dist/core/validators/validation-orchestrator.js.map +1 -0
  631. package/dist/index.d.ts +11 -0
  632. package/dist/index.d.ts.map +1 -0
  633. package/dist/index.js +316 -0
  634. package/dist/index.js.map +1 -0
  635. package/dist/services/active-context-manager.d.ts +118 -0
  636. package/dist/services/active-context-manager.d.ts.map +1 -0
  637. package/dist/services/active-context-manager.js +435 -0
  638. package/dist/services/active-context-manager.js.map +1 -0
  639. package/dist/services/ai-service.d.ts +71 -0
  640. package/dist/services/ai-service.d.ts.map +1 -0
  641. package/dist/services/ai-service.js +329 -0
  642. package/dist/services/ai-service.js.map +1 -0
  643. package/dist/services/context-search.d.ts +98 -0
  644. package/dist/services/context-search.d.ts.map +1 -0
  645. package/dist/services/context-search.js +289 -0
  646. package/dist/services/context-search.js.map +1 -0
  647. package/dist/services/insight-extractor.d.ts +69 -0
  648. package/dist/services/insight-extractor.d.ts.map +1 -0
  649. package/dist/services/insight-extractor.js +343 -0
  650. package/dist/services/insight-extractor.js.map +1 -0
  651. package/dist/services/insight-quality-controller.d.ts +167 -0
  652. package/dist/services/insight-quality-controller.d.ts.map +1 -0
  653. package/dist/services/insight-quality-controller.js +543 -0
  654. package/dist/services/insight-quality-controller.js.map +1 -0
  655. package/dist/services/module-generator.d.ts +108 -0
  656. package/dist/services/module-generator.d.ts.map +1 -0
  657. package/dist/services/module-generator.js +561 -0
  658. package/dist/services/module-generator.js.map +1 -0
  659. package/dist/services/statusline-tracker.d.ts +139 -0
  660. package/dist/services/statusline-tracker.d.ts.map +1 -0
  661. package/dist/services/statusline-tracker.js +360 -0
  662. package/dist/services/statusline-tracker.js.map +1 -0
  663. package/dist/templates/ai-instructions-template.d.ts +39 -0
  664. package/dist/templates/ai-instructions-template.d.ts.map +1 -0
  665. package/dist/templates/ai-instructions-template.js +222 -0
  666. package/dist/templates/ai-instructions-template.js.map +1 -0
  667. package/dist/types/config.d.ts +128 -0
  668. package/dist/types/config.d.ts.map +1 -0
  669. package/dist/types/config.js +49 -0
  670. package/dist/types/config.js.map +1 -0
  671. package/dist/types/documents.d.ts +87 -0
  672. package/dist/types/documents.d.ts.map +1 -0
  673. package/dist/types/documents.js +12 -0
  674. package/dist/types/documents.js.map +1 -0
  675. package/dist/types/session-log.d.ts +83 -0
  676. package/dist/types/session-log.d.ts.map +1 -0
  677. package/dist/types/session-log.js +12 -0
  678. package/dist/types/session-log.js.map +1 -0
  679. package/dist/types/session.d.ts +257 -0
  680. package/dist/types/session.d.ts.map +1 -0
  681. package/dist/types/session.js +12 -0
  682. package/dist/types/session.js.map +1 -0
  683. package/dist/utils/ai-templates.d.ts +98 -0
  684. package/dist/utils/ai-templates.d.ts.map +1 -0
  685. package/dist/utils/ai-templates.js +179 -0
  686. package/dist/utils/ai-templates.js.map +1 -0
  687. package/dist/utils/ginko-root.d.ts +51 -0
  688. package/dist/utils/ginko-root.d.ts.map +1 -0
  689. package/dist/utils/ginko-root.js +96 -0
  690. package/dist/utils/ginko-root.js.map +1 -0
  691. package/dist/utils/helpers.d.ts +19 -0
  692. package/dist/utils/helpers.d.ts.map +1 -0
  693. package/dist/utils/helpers.js +107 -0
  694. package/dist/utils/helpers.js.map +1 -0
  695. package/dist/utils/progressive-learning.d.ts +42 -0
  696. package/dist/utils/progressive-learning.d.ts.map +1 -0
  697. package/dist/utils/progressive-learning.js +248 -0
  698. package/dist/utils/progressive-learning.js.map +1 -0
  699. package/dist/utils/session-collector.d.ts +81 -0
  700. package/dist/utils/session-collector.d.ts.map +1 -0
  701. package/dist/utils/session-collector.js +387 -0
  702. package/dist/utils/session-collector.js.map +1 -0
  703. package/dist/utils/session-logger.d.ts +125 -0
  704. package/dist/utils/session-logger.d.ts.map +1 -0
  705. package/dist/utils/session-logger.js +359 -0
  706. package/dist/utils/session-logger.js.map +1 -0
  707. package/dist/utils/session-synthesizer.d.ts +36 -0
  708. package/dist/utils/session-synthesizer.d.ts.map +1 -0
  709. package/dist/utils/session-synthesizer.js +239 -0
  710. package/dist/utils/session-synthesizer.js.map +1 -0
  711. package/package.json +76 -0
@@ -0,0 +1,315 @@
1
+ /**
2
+ * @fileType: utility
3
+ * @status: current
4
+ * @updated: 2025-09-20
5
+ * @tags: [interactive, prompts, configuration, setup, existing-projects]
6
+ * @related: [project-detector.ts, config-loader.ts, init.ts]
7
+ * @priority: high
8
+ * @complexity: high
9
+ * @dependencies: [inquirer, chalk, fs-extra]
10
+ */
11
+ import chalk from 'chalk';
12
+ import fs from 'fs-extra';
13
+ import path from 'path';
14
+ import { ProjectDetector } from './project-detector.js';
15
+ import { ConfigLoader } from './config-loader.js';
16
+ /**
17
+ * Interactive configuration setup for existing projects
18
+ */
19
+ export class InteractiveConfigSetup {
20
+ detector = new ProjectDetector();
21
+ configLoader = new ConfigLoader();
22
+ /**
23
+ * Run interactive configuration setup
24
+ */
25
+ async setupConfiguration(projectRoot = process.cwd()) {
26
+ console.log(chalk.green('\n🌿 Setting up Ginko for your project\n'));
27
+ // Analyze project
28
+ const analysis = await this.detector.analyzeProject(projectRoot);
29
+ this.displayProjectAnalysis(analysis);
30
+ // Get configuration choice
31
+ const configChoice = await this.promptForConfiguration(projectRoot);
32
+ const config = await this.processConfigChoice(configChoice, projectRoot);
33
+ // Confirm paths
34
+ const confirmedConfig = await this.confirmPaths(config, projectRoot);
35
+ // Feature selection
36
+ const finalConfig = await this.selectFeatures(confirmedConfig);
37
+ return finalConfig;
38
+ }
39
+ /**
40
+ * Display project analysis results
41
+ */
42
+ displayProjectAnalysis(analysis) {
43
+ console.log(chalk.blue('📁 Project Analysis:'));
44
+ if (analysis.hasDocsFolder) {
45
+ console.log(chalk.green(' ✓ Found existing docs/ folder'));
46
+ }
47
+ else {
48
+ console.log(chalk.yellow(' • No docs/ folder found'));
49
+ }
50
+ if (analysis.hasExistingAdr) {
51
+ console.log(chalk.green(' ✓ Found existing ADR documents'));
52
+ }
53
+ if (analysis.hasExistingPrd) {
54
+ console.log(chalk.green(' ✓ Found existing PRD documents'));
55
+ }
56
+ if (analysis.existingPaths.length > 0) {
57
+ console.log(chalk.dim(` 📂 Existing paths: ${analysis.existingPaths.join(', ')}`));
58
+ }
59
+ console.log();
60
+ }
61
+ /**
62
+ * Prompt user for configuration approach
63
+ */
64
+ async promptForConfiguration(projectRoot) {
65
+ const options = await this.detector.generateConfigOptions(projectRoot);
66
+ console.log(chalk.cyan('How would you like to configure documentation paths?\n'));
67
+ // Display options
68
+ options.forEach((option, index) => {
69
+ console.log(chalk.white(`${index + 1}. ${option.name}`));
70
+ if (option.description) {
71
+ console.log(chalk.dim(` ${option.description}`));
72
+ }
73
+ console.log();
74
+ });
75
+ // Simulate user choice (in real implementation, use inquirer)
76
+ // For this example, we'll default to the first option
77
+ console.log(chalk.green(`Selected: ${options[0].name}\n`));
78
+ return options[0].value;
79
+ }
80
+ /**
81
+ * Process configuration choice and generate config
82
+ */
83
+ async processConfigChoice(choice, projectRoot) {
84
+ if (typeof choice === 'string') {
85
+ switch (choice) {
86
+ case 'existing-docs':
87
+ return await this.generateExistingDocsConfig(projectRoot);
88
+ case 'standard-docs':
89
+ return await this.generateStandardConfig();
90
+ case 'custom':
91
+ return await this.promptCustomPaths();
92
+ default:
93
+ return await this.generateStandardConfig();
94
+ }
95
+ }
96
+ return choice;
97
+ }
98
+ /**
99
+ * Generate config that works with existing docs structure
100
+ */
101
+ async generateExistingDocsConfig(projectRoot) {
102
+ const analysis = await this.detector.analyzeProject(projectRoot);
103
+ return analysis.recommendedConfig;
104
+ }
105
+ /**
106
+ * Generate standard documentation configuration
107
+ */
108
+ async generateStandardConfig() {
109
+ return {
110
+ version: "1.0.0",
111
+ paths: {
112
+ docs: {
113
+ root: "docs",
114
+ adr: "${docs.root}/adr",
115
+ prd: "${docs.root}/PRD",
116
+ sprints: "${docs.root}/sprints"
117
+ },
118
+ ginko: {
119
+ root: ".ginko",
120
+ context: "${ginko.root}/context",
121
+ sessions: "${ginko.root}/sessions",
122
+ backlog: "${ginko.root}/backlog",
123
+ patterns: "${ginko.root}/patterns",
124
+ bestPractices: "${ginko.root}/best-practices"
125
+ }
126
+ },
127
+ features: {
128
+ autoCapture: true,
129
+ gitIntegration: true,
130
+ aiEnhancement: true,
131
+ documentNaming: true,
132
+ crossPlatform: true
133
+ }
134
+ };
135
+ }
136
+ /**
137
+ * Prompt for custom paths
138
+ */
139
+ async promptCustomPaths() {
140
+ console.log(chalk.cyan('Enter custom paths (press Enter for defaults):\n'));
141
+ // Simulate prompts (in real implementation, use inquirer)
142
+ const docsRoot = 'docs'; // Default response
143
+ const adrPath = `${docsRoot}/adr`;
144
+ const prdPath = `${docsRoot}/PRD`;
145
+ const sprintsPath = `${docsRoot}/sprints`;
146
+ console.log(chalk.dim(`Using: docs root=${docsRoot}, adr=${adrPath}, prd=${prdPath}, sprints=${sprintsPath}\n`));
147
+ return {
148
+ version: "1.0.0",
149
+ paths: {
150
+ docs: {
151
+ root: docsRoot,
152
+ adr: adrPath,
153
+ prd: prdPath,
154
+ sprints: sprintsPath
155
+ },
156
+ ginko: {
157
+ root: ".ginko",
158
+ context: "${ginko.root}/context",
159
+ sessions: "${ginko.root}/sessions",
160
+ backlog: "${ginko.root}/backlog",
161
+ patterns: "${ginko.root}/patterns",
162
+ bestPractices: "${ginko.root}/best-practices"
163
+ }
164
+ },
165
+ features: {
166
+ autoCapture: true,
167
+ gitIntegration: true,
168
+ aiEnhancement: true,
169
+ documentNaming: true,
170
+ crossPlatform: true
171
+ }
172
+ };
173
+ }
174
+ /**
175
+ * Confirm and validate paths
176
+ */
177
+ async confirmPaths(config, projectRoot) {
178
+ console.log(chalk.blue('📋 Configuration Summary:\n'));
179
+ if (config.paths?.docs) {
180
+ console.log(chalk.white('Documentation paths:'));
181
+ console.log(chalk.dim(` Root: ${config.paths.docs.root}`));
182
+ console.log(chalk.dim(` ADR: ${config.paths.docs.adr}`));
183
+ console.log(chalk.dim(` PRD: ${config.paths.docs.prd}`));
184
+ console.log(chalk.dim(` Sprints: ${config.paths.docs.sprints}`));
185
+ }
186
+ if (config.paths?.ginko) {
187
+ console.log(chalk.white('\nGinko paths:'));
188
+ console.log(chalk.dim(` Root: ${config.paths.ginko.root}`));
189
+ console.log(chalk.dim(` Context: ${config.paths.ginko.context}`));
190
+ console.log(chalk.dim(` Sessions: ${config.paths.ginko.sessions}`));
191
+ }
192
+ // Check for conflicts
193
+ const conflicts = await this.checkPathConflicts(config, projectRoot);
194
+ if (conflicts.length > 0) {
195
+ console.log(chalk.yellow('\n⚠️ Potential conflicts:'));
196
+ conflicts.forEach(conflict => console.log(chalk.yellow(` • ${conflict}`)));
197
+ }
198
+ console.log(chalk.green('\n✓ Configuration looks good!\n'));
199
+ return config;
200
+ }
201
+ /**
202
+ * Feature selection prompts
203
+ */
204
+ async selectFeatures(config) {
205
+ console.log(chalk.cyan('🔧 Feature Configuration:\n'));
206
+ const features = {
207
+ autoCapture: true,
208
+ gitIntegration: true,
209
+ aiEnhancement: true,
210
+ documentNaming: true,
211
+ crossPlatform: true,
212
+ ...config.features
213
+ };
214
+ console.log(chalk.white('Enabled features:'));
215
+ Object.entries(features).forEach(([key, value]) => {
216
+ const status = value ? chalk.green('✓') : chalk.red('✗');
217
+ console.log(` ${status} ${this.getFeatureDescription(key)}`);
218
+ });
219
+ console.log();
220
+ return {
221
+ version: "1.0.0",
222
+ ...config,
223
+ features
224
+ };
225
+ }
226
+ /**
227
+ * Get human-readable feature descriptions
228
+ */
229
+ getFeatureDescription(feature) {
230
+ const descriptions = {
231
+ autoCapture: 'Automatic session capture',
232
+ gitIntegration: 'Git-native context tracking',
233
+ aiEnhancement: 'AI-powered collaboration',
234
+ documentNaming: 'Standardized document naming',
235
+ crossPlatform: 'Cross-platform compatibility'
236
+ };
237
+ return descriptions[feature] || feature;
238
+ }
239
+ /**
240
+ * Check for path conflicts with existing files/directories
241
+ */
242
+ async checkPathConflicts(config, projectRoot) {
243
+ const conflicts = [];
244
+ if (!config.paths)
245
+ return conflicts;
246
+ // Check documentation paths
247
+ if (config.paths.docs) {
248
+ for (const [key, pathStr] of Object.entries(config.paths.docs)) {
249
+ if (typeof pathStr === 'string' && !pathStr.includes('${')) {
250
+ const fullPath = path.join(projectRoot, pathStr);
251
+ if (await fs.pathExists(fullPath)) {
252
+ const stat = await fs.stat(fullPath);
253
+ if (stat.isFile()) {
254
+ conflicts.push(`Path ${pathStr} exists as a file`);
255
+ }
256
+ }
257
+ }
258
+ }
259
+ }
260
+ return conflicts;
261
+ }
262
+ /**
263
+ * Quick setup for non-interactive environments
264
+ */
265
+ async quickSetup(projectRoot = process.cwd()) {
266
+ console.log(chalk.green('🚀 Quick setup mode\n'));
267
+ const analysis = await this.detector.analyzeProject(projectRoot);
268
+ const config = analysis.recommendedConfig;
269
+ console.log(chalk.dim('Using recommended configuration based on project structure\n'));
270
+ return {
271
+ version: "1.0.0",
272
+ ...config
273
+ };
274
+ }
275
+ /**
276
+ * Validate final configuration
277
+ */
278
+ async validateConfiguration(config, projectRoot) {
279
+ const errors = [];
280
+ const warnings = [];
281
+ // Validate required fields
282
+ if (!config.version) {
283
+ errors.push('Missing version field');
284
+ }
285
+ if (!config.paths) {
286
+ errors.push('Missing paths configuration');
287
+ }
288
+ if (!config.features) {
289
+ errors.push('Missing features configuration');
290
+ }
291
+ // Validate path accessibility
292
+ if (config.paths?.docs) {
293
+ for (const [key, pathStr] of Object.entries(config.paths.docs)) {
294
+ if (typeof pathStr === 'string' && !pathStr.includes('${')) {
295
+ const fullPath = path.join(projectRoot, pathStr);
296
+ const dir = path.dirname(fullPath);
297
+ try {
298
+ await fs.ensureDir(dir);
299
+ }
300
+ catch (error) {
301
+ errors.push(`Cannot create directory for ${key}: ${pathStr}`);
302
+ }
303
+ }
304
+ }
305
+ }
306
+ return {
307
+ valid: errors.length === 0,
308
+ errors,
309
+ warnings
310
+ };
311
+ }
312
+ }
313
+ // Export singleton instance
314
+ export const interactiveConfig = new InteractiveConfigSetup();
315
+ //# sourceMappingURL=interactive-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactive-config.js","sourceRoot":"","sources":["../../../src/core/config-backup/interactive-config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,121 @@
1
+ /**
2
+ * @fileType: config
3
+ * @status: current
4
+ * @updated: 2025-09-20
5
+ * @tags: [paths, configuration, cross-platform, adapters]
6
+ * @related: [platform-adapter.ts, config-loader.ts]
7
+ * @priority: critical
8
+ * @complexity: medium
9
+ * @dependencies: [path, fs-extra]
10
+ */
11
+ export interface PathConfig {
12
+ project: {
13
+ root: string;
14
+ worktrees: string;
15
+ packages: string;
16
+ };
17
+ ginko: {
18
+ root: string;
19
+ context: string;
20
+ sessions: string;
21
+ backlog: string;
22
+ };
23
+ docs: {
24
+ root: string;
25
+ adr: string;
26
+ prd: string;
27
+ sprints: string;
28
+ };
29
+ build: {
30
+ dist: string;
31
+ temp: string;
32
+ logs: string;
33
+ };
34
+ }
35
+ export declare class PathManager {
36
+ private config;
37
+ private projectRoot;
38
+ constructor();
39
+ /**
40
+ * Detect project root by finding git repository root
41
+ */
42
+ private detectProjectRoot;
43
+ /**
44
+ * Load default path configuration relative to project root
45
+ */
46
+ private loadDefaultConfig;
47
+ /**
48
+ * Get project root path
49
+ */
50
+ getProjectRoot(): string;
51
+ /**
52
+ * Get worktree paths dynamically
53
+ */
54
+ getWorktreePaths(): Promise<Record<string, string>>;
55
+ /**
56
+ * Get path for specific worktree
57
+ */
58
+ getWorktreePath(name: string): Promise<string | null>;
59
+ /**
60
+ * Get configuration with variable substitution
61
+ */
62
+ getConfig(): PathConfig;
63
+ /**
64
+ * Resolve path with platform-specific separators
65
+ */
66
+ resolvePath(...segments: string[]): string;
67
+ /**
68
+ * Get relative path from project root
69
+ */
70
+ getRelativePath(absolutePath: string): string;
71
+ /**
72
+ * Ensure directory exists
73
+ */
74
+ ensureDir(dirPath: string): Promise<void>;
75
+ /**
76
+ * Check if path exists
77
+ */
78
+ pathExists(filePath: string): Promise<boolean>;
79
+ /**
80
+ * Normalize path for current platform
81
+ */
82
+ normalizePath(inputPath: string): string;
83
+ /**
84
+ * Join paths with platform-appropriate separators
85
+ */
86
+ joinPaths(...segments: string[]): string;
87
+ /**
88
+ * Get package path
89
+ */
90
+ getPackagePath(packageName: string): string;
91
+ /**
92
+ * Get source path for a package
93
+ */
94
+ getPackageSourcePath(packageName: string): string;
95
+ /**
96
+ * Update configuration from ginko.json if it exists
97
+ */
98
+ loadConfigFile(): Promise<void>;
99
+ /**
100
+ * Merge custom path configuration with defaults
101
+ */
102
+ private mergePathConfig;
103
+ }
104
+ /**
105
+ * Global path manager instance
106
+ */
107
+ export declare const pathManager: PathManager;
108
+ /**
109
+ * Convenience functions for common operations
110
+ */
111
+ export declare const paths: {
112
+ root: () => string;
113
+ worktree: (name: string) => Promise<string | null>;
114
+ package: (name: string) => string;
115
+ packageSrc: (name: string) => string;
116
+ resolve: (...segments: string[]) => string;
117
+ join: (...segments: string[]) => string;
118
+ normalize: (inputPath: string) => string;
119
+ relative: (absolutePath: string) => string;
120
+ };
121
+ //# sourceMappingURL=path-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"path-config.d.ts","sourceRoot":"","sources":["../../../src/core/config-backup/path-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,IAAI,EAAE;QACJ,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,WAAW,CAAS;;IAO5B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAezB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA2BzB;;OAEG;IACH,cAAc,IAAI,MAAM;IAIxB;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IA+BzD;;OAEG;IACG,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAK3D;;OAEG;IACH,SAAS,IAAI,UAAU;IAIvB;;OAEG;IACH,WAAW,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM;IAI1C;;OAEG;IACH,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;IAI7C;;OAEG;IACG,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/C;;OAEG;IACG,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIpD;;OAEG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAIxC;;OAEG;IACH,SAAS,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM;IAIxC;;OAEG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAI3C;;OAEG;IACH,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAIjD;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBrC;;OAEG;IACH,OAAO,CAAC,eAAe;CAKxB;AAED;;GAEG;AACH,eAAO,MAAM,WAAW,aAAoB,CAAC;AAE7C;;GAEG;AACH,eAAO,MAAM,KAAK;;qBAEC,MAAM;oBACP,MAAM;uBACH,MAAM;2BACF,MAAM,EAAE;wBACX,MAAM,EAAE;2BACL,MAAM;6BACJ,MAAM;CAChC,CAAC"}
@@ -0,0 +1,210 @@
1
+ /**
2
+ * @fileType: config
3
+ * @status: current
4
+ * @updated: 2025-09-20
5
+ * @tags: [paths, configuration, cross-platform, adapters]
6
+ * @related: [platform-adapter.ts, config-loader.ts]
7
+ * @priority: critical
8
+ * @complexity: medium
9
+ * @dependencies: [path, fs-extra]
10
+ */
11
+ import path from 'path';
12
+ import fs from 'fs-extra';
13
+ import { execSync } from 'child_process';
14
+ export class PathManager {
15
+ config;
16
+ projectRoot;
17
+ constructor() {
18
+ this.projectRoot = this.detectProjectRoot();
19
+ this.config = this.loadDefaultConfig();
20
+ }
21
+ /**
22
+ * Detect project root by finding git repository root
23
+ */
24
+ detectProjectRoot() {
25
+ try {
26
+ const gitRoot = execSync('git rev-parse --show-toplevel', {
27
+ encoding: 'utf8',
28
+ cwd: process.cwd()
29
+ }).trim();
30
+ // Normalize path separators for current platform
31
+ return path.resolve(gitRoot);
32
+ }
33
+ catch (error) {
34
+ // Fallback to current working directory
35
+ return process.cwd();
36
+ }
37
+ }
38
+ /**
39
+ * Load default path configuration relative to project root
40
+ */
41
+ loadDefaultConfig() {
42
+ return {
43
+ project: {
44
+ root: this.projectRoot,
45
+ worktrees: path.join(path.dirname(this.projectRoot), `${path.basename(this.projectRoot)}-worktrees`),
46
+ packages: path.join(this.projectRoot, 'packages')
47
+ },
48
+ ginko: {
49
+ root: path.join(this.projectRoot, '.ginko'),
50
+ context: path.join(this.projectRoot, '.ginko', 'context'),
51
+ sessions: path.join(this.projectRoot, '.ginko', 'sessions'),
52
+ backlog: path.join(this.projectRoot, '.ginko', 'backlog')
53
+ },
54
+ docs: {
55
+ root: path.join(this.projectRoot, 'docs'),
56
+ adr: path.join(this.projectRoot, 'docs', 'adr'),
57
+ prd: path.join(this.projectRoot, 'docs', 'PRD'),
58
+ sprints: path.join(this.projectRoot, 'docs', 'sprints')
59
+ },
60
+ build: {
61
+ dist: path.join(this.projectRoot, 'dist'),
62
+ temp: path.join(this.projectRoot, '.temp'),
63
+ logs: path.join(this.projectRoot, '.logs')
64
+ }
65
+ };
66
+ }
67
+ /**
68
+ * Get project root path
69
+ */
70
+ getProjectRoot() {
71
+ return this.projectRoot;
72
+ }
73
+ /**
74
+ * Get worktree paths dynamically
75
+ */
76
+ async getWorktreePaths() {
77
+ try {
78
+ const worktreeList = execSync('git worktree list --porcelain', {
79
+ encoding: 'utf8',
80
+ cwd: this.projectRoot
81
+ });
82
+ const worktrees = {};
83
+ const lines = worktreeList.split('\n');
84
+ let currentPath = '';
85
+ let currentBranch = '';
86
+ for (const line of lines) {
87
+ if (line.startsWith('worktree ')) {
88
+ currentPath = line.replace('worktree ', '');
89
+ }
90
+ else if (line.startsWith('branch ')) {
91
+ currentBranch = line.replace('branch refs/heads/', '');
92
+ if (currentBranch.startsWith('feature/')) {
93
+ const name = currentBranch.replace('feature/', '');
94
+ worktrees[name] = path.resolve(currentPath);
95
+ }
96
+ }
97
+ }
98
+ return worktrees;
99
+ }
100
+ catch (error) {
101
+ return {};
102
+ }
103
+ }
104
+ /**
105
+ * Get path for specific worktree
106
+ */
107
+ async getWorktreePath(name) {
108
+ const worktrees = await this.getWorktreePaths();
109
+ return worktrees[name] || null;
110
+ }
111
+ /**
112
+ * Get configuration with variable substitution
113
+ */
114
+ getConfig() {
115
+ return this.config;
116
+ }
117
+ /**
118
+ * Resolve path with platform-specific separators
119
+ */
120
+ resolvePath(...segments) {
121
+ return path.resolve(this.projectRoot, ...segments);
122
+ }
123
+ /**
124
+ * Get relative path from project root
125
+ */
126
+ getRelativePath(absolutePath) {
127
+ return path.relative(this.projectRoot, absolutePath);
128
+ }
129
+ /**
130
+ * Ensure directory exists
131
+ */
132
+ async ensureDir(dirPath) {
133
+ await fs.ensureDir(dirPath);
134
+ }
135
+ /**
136
+ * Check if path exists
137
+ */
138
+ async pathExists(filePath) {
139
+ return fs.pathExists(filePath);
140
+ }
141
+ /**
142
+ * Normalize path for current platform
143
+ */
144
+ normalizePath(inputPath) {
145
+ return path.normalize(inputPath);
146
+ }
147
+ /**
148
+ * Join paths with platform-appropriate separators
149
+ */
150
+ joinPaths(...segments) {
151
+ return path.join(...segments);
152
+ }
153
+ /**
154
+ * Get package path
155
+ */
156
+ getPackagePath(packageName) {
157
+ return path.join(this.config.project.packages, packageName);
158
+ }
159
+ /**
160
+ * Get source path for a package
161
+ */
162
+ getPackageSourcePath(packageName) {
163
+ return path.join(this.getPackagePath(packageName), 'src');
164
+ }
165
+ /**
166
+ * Update configuration from ginko.json if it exists
167
+ */
168
+ async loadConfigFile() {
169
+ const configPath = path.join(this.projectRoot, 'ginko.json');
170
+ if (await fs.pathExists(configPath)) {
171
+ try {
172
+ const configData = await fs.readJson(configPath);
173
+ // Merge with default config, applying variable substitution
174
+ if (configData.paths) {
175
+ this.mergePathConfig(configData.paths);
176
+ }
177
+ }
178
+ catch (error) {
179
+ // Fallback to default config if file is invalid
180
+ console.warn('Invalid ginko.json, using default paths');
181
+ }
182
+ }
183
+ }
184
+ /**
185
+ * Merge custom path configuration with defaults
186
+ */
187
+ mergePathConfig(customPaths) {
188
+ // Apply variable substitution and merge
189
+ // This would implement the ${docs.root}/adr pattern substitution
190
+ // For now, use defaults
191
+ }
192
+ }
193
+ /**
194
+ * Global path manager instance
195
+ */
196
+ export const pathManager = new PathManager();
197
+ /**
198
+ * Convenience functions for common operations
199
+ */
200
+ export const paths = {
201
+ root: () => pathManager.getProjectRoot(),
202
+ worktree: (name) => pathManager.getWorktreePath(name),
203
+ package: (name) => pathManager.getPackagePath(name),
204
+ packageSrc: (name) => pathManager.getPackageSourcePath(name),
205
+ resolve: (...segments) => pathManager.resolvePath(...segments),
206
+ join: (...segments) => pathManager.joinPaths(...segments),
207
+ normalize: (inputPath) => pathManager.normalizePath(inputPath),
208
+ relative: (absolutePath) => pathManager.getRelativePath(absolutePath)
209
+ };
210
+ //# sourceMappingURL=path-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"path-config.js","sourceRoot":"","sources":["../../../src/core/config-backup/path-config.ts"],"names":[],"mappings":"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"}