@mduenas/codegraph 0.4.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 (192) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +641 -0
  3. package/dist/bin/codegraph.d.ts +20 -0
  4. package/dist/bin/codegraph.d.ts.map +1 -0
  5. package/dist/bin/codegraph.js +704 -0
  6. package/dist/bin/codegraph.js.map +1 -0
  7. package/dist/config.d.ts +51 -0
  8. package/dist/config.d.ts.map +1 -0
  9. package/dist/config.js +291 -0
  10. package/dist/config.js.map +1 -0
  11. package/dist/context/formatter.d.ts +30 -0
  12. package/dist/context/formatter.d.ts.map +1 -0
  13. package/dist/context/formatter.js +244 -0
  14. package/dist/context/formatter.js.map +1 -0
  15. package/dist/context/index.d.ts +86 -0
  16. package/dist/context/index.d.ts.map +1 -0
  17. package/dist/context/index.js +402 -0
  18. package/dist/context/index.js.map +1 -0
  19. package/dist/db/index.d.ts +64 -0
  20. package/dist/db/index.d.ts.map +1 -0
  21. package/dist/db/index.js +170 -0
  22. package/dist/db/index.js.map +1 -0
  23. package/dist/db/migrations.d.ts +44 -0
  24. package/dist/db/migrations.d.ts.map +1 -0
  25. package/dist/db/migrations.js +105 -0
  26. package/dist/db/migrations.js.map +1 -0
  27. package/dist/db/queries.d.ts +148 -0
  28. package/dist/db/queries.d.ts.map +1 -0
  29. package/dist/db/queries.js +669 -0
  30. package/dist/db/queries.js.map +1 -0
  31. package/dist/directory.d.ts +45 -0
  32. package/dist/directory.d.ts.map +1 -0
  33. package/dist/directory.js +191 -0
  34. package/dist/directory.js.map +1 -0
  35. package/dist/errors.d.ts +136 -0
  36. package/dist/errors.d.ts.map +1 -0
  37. package/dist/errors.js +219 -0
  38. package/dist/errors.js.map +1 -0
  39. package/dist/extraction/grammars.d.ts +36 -0
  40. package/dist/extraction/grammars.d.ts.map +1 -0
  41. package/dist/extraction/grammars.js +181 -0
  42. package/dist/extraction/grammars.js.map +1 -0
  43. package/dist/extraction/index.d.ts +91 -0
  44. package/dist/extraction/index.d.ts.map +1 -0
  45. package/dist/extraction/index.js +493 -0
  46. package/dist/extraction/index.js.map +1 -0
  47. package/dist/extraction/tree-sitter.d.ts +176 -0
  48. package/dist/extraction/tree-sitter.d.ts.map +1 -0
  49. package/dist/extraction/tree-sitter.js +1798 -0
  50. package/dist/extraction/tree-sitter.js.map +1 -0
  51. package/dist/graph/index.d.ts +8 -0
  52. package/dist/graph/index.d.ts.map +1 -0
  53. package/dist/graph/index.js +13 -0
  54. package/dist/graph/index.js.map +1 -0
  55. package/dist/graph/queries.d.ts +106 -0
  56. package/dist/graph/queries.d.ts.map +1 -0
  57. package/dist/graph/queries.js +355 -0
  58. package/dist/graph/queries.js.map +1 -0
  59. package/dist/graph/traversal.d.ts +127 -0
  60. package/dist/graph/traversal.d.ts.map +1 -0
  61. package/dist/graph/traversal.js +465 -0
  62. package/dist/graph/traversal.js.map +1 -0
  63. package/dist/index.d.ts +496 -0
  64. package/dist/index.d.ts.map +1 -0
  65. package/dist/index.js +818 -0
  66. package/dist/index.js.map +1 -0
  67. package/dist/installer/banner.d.ts +40 -0
  68. package/dist/installer/banner.d.ts.map +1 -0
  69. package/dist/installer/banner.js +162 -0
  70. package/dist/installer/banner.js.map +1 -0
  71. package/dist/installer/claude-md-template.d.ts +10 -0
  72. package/dist/installer/claude-md-template.d.ts.map +1 -0
  73. package/dist/installer/claude-md-template.js +46 -0
  74. package/dist/installer/claude-md-template.js.map +1 -0
  75. package/dist/installer/config-writer.d.ts +36 -0
  76. package/dist/installer/config-writer.d.ts.map +1 -0
  77. package/dist/installer/config-writer.js +282 -0
  78. package/dist/installer/config-writer.js.map +1 -0
  79. package/dist/installer/index.d.ts +13 -0
  80. package/dist/installer/index.d.ts.map +1 -0
  81. package/dist/installer/index.js +155 -0
  82. package/dist/installer/index.js.map +1 -0
  83. package/dist/installer/prompts.d.ts +18 -0
  84. package/dist/installer/prompts.d.ts.map +1 -0
  85. package/dist/installer/prompts.js +113 -0
  86. package/dist/installer/prompts.js.map +1 -0
  87. package/dist/mcp/index.d.ts +64 -0
  88. package/dist/mcp/index.d.ts.map +1 -0
  89. package/dist/mcp/index.js +207 -0
  90. package/dist/mcp/index.js.map +1 -0
  91. package/dist/mcp/tools.d.ts +93 -0
  92. package/dist/mcp/tools.d.ts.map +1 -0
  93. package/dist/mcp/tools.js +442 -0
  94. package/dist/mcp/tools.js.map +1 -0
  95. package/dist/mcp/transport.d.ts +89 -0
  96. package/dist/mcp/transport.d.ts.map +1 -0
  97. package/dist/mcp/transport.js +170 -0
  98. package/dist/mcp/transport.js.map +1 -0
  99. package/dist/resolution/frameworks/csharp.d.ts +8 -0
  100. package/dist/resolution/frameworks/csharp.d.ts.map +1 -0
  101. package/dist/resolution/frameworks/csharp.js +274 -0
  102. package/dist/resolution/frameworks/csharp.js.map +1 -0
  103. package/dist/resolution/frameworks/express.d.ts +8 -0
  104. package/dist/resolution/frameworks/express.d.ts.map +1 -0
  105. package/dist/resolution/frameworks/express.js +208 -0
  106. package/dist/resolution/frameworks/express.js.map +1 -0
  107. package/dist/resolution/frameworks/go.d.ts +8 -0
  108. package/dist/resolution/frameworks/go.d.ts.map +1 -0
  109. package/dist/resolution/frameworks/go.js +225 -0
  110. package/dist/resolution/frameworks/go.js.map +1 -0
  111. package/dist/resolution/frameworks/index.d.ts +33 -0
  112. package/dist/resolution/frameworks/index.d.ts.map +1 -0
  113. package/dist/resolution/frameworks/index.js +113 -0
  114. package/dist/resolution/frameworks/index.js.map +1 -0
  115. package/dist/resolution/frameworks/java.d.ts +8 -0
  116. package/dist/resolution/frameworks/java.d.ts.map +1 -0
  117. package/dist/resolution/frameworks/java.js +239 -0
  118. package/dist/resolution/frameworks/java.js.map +1 -0
  119. package/dist/resolution/frameworks/laravel.d.ts +13 -0
  120. package/dist/resolution/frameworks/laravel.d.ts.map +1 -0
  121. package/dist/resolution/frameworks/laravel.js +198 -0
  122. package/dist/resolution/frameworks/laravel.js.map +1 -0
  123. package/dist/resolution/frameworks/python.d.ts +10 -0
  124. package/dist/resolution/frameworks/python.d.ts.map +1 -0
  125. package/dist/resolution/frameworks/python.js +331 -0
  126. package/dist/resolution/frameworks/python.js.map +1 -0
  127. package/dist/resolution/frameworks/react.d.ts +8 -0
  128. package/dist/resolution/frameworks/react.d.ts.map +1 -0
  129. package/dist/resolution/frameworks/react.js +294 -0
  130. package/dist/resolution/frameworks/react.js.map +1 -0
  131. package/dist/resolution/frameworks/ruby.d.ts +8 -0
  132. package/dist/resolution/frameworks/ruby.d.ts.map +1 -0
  133. package/dist/resolution/frameworks/ruby.js +262 -0
  134. package/dist/resolution/frameworks/ruby.js.map +1 -0
  135. package/dist/resolution/frameworks/rust.d.ts +8 -0
  136. package/dist/resolution/frameworks/rust.d.ts.map +1 -0
  137. package/dist/resolution/frameworks/rust.js +222 -0
  138. package/dist/resolution/frameworks/rust.js.map +1 -0
  139. package/dist/resolution/frameworks/swift.d.ts +10 -0
  140. package/dist/resolution/frameworks/swift.d.ts.map +1 -0
  141. package/dist/resolution/frameworks/swift.js +486 -0
  142. package/dist/resolution/frameworks/swift.js.map +1 -0
  143. package/dist/resolution/import-resolver.d.ts +20 -0
  144. package/dist/resolution/import-resolver.d.ts.map +1 -0
  145. package/dist/resolution/import-resolver.js +445 -0
  146. package/dist/resolution/import-resolver.js.map +1 -0
  147. package/dist/resolution/index.d.ts +72 -0
  148. package/dist/resolution/index.d.ts.map +1 -0
  149. package/dist/resolution/index.js +301 -0
  150. package/dist/resolution/index.js.map +1 -0
  151. package/dist/resolution/name-matcher.d.ts +27 -0
  152. package/dist/resolution/name-matcher.d.ts.map +1 -0
  153. package/dist/resolution/name-matcher.js +210 -0
  154. package/dist/resolution/name-matcher.js.map +1 -0
  155. package/dist/resolution/types.d.ts +108 -0
  156. package/dist/resolution/types.d.ts.map +1 -0
  157. package/dist/resolution/types.js +8 -0
  158. package/dist/resolution/types.js.map +1 -0
  159. package/dist/sync/git-hooks.d.ts +66 -0
  160. package/dist/sync/git-hooks.d.ts.map +1 -0
  161. package/dist/sync/git-hooks.js +281 -0
  162. package/dist/sync/git-hooks.js.map +1 -0
  163. package/dist/sync/index.d.ts +13 -0
  164. package/dist/sync/index.d.ts.map +1 -0
  165. package/dist/sync/index.js +18 -0
  166. package/dist/sync/index.js.map +1 -0
  167. package/dist/types.d.ts +410 -0
  168. package/dist/types.d.ts.map +1 -0
  169. package/dist/types.js +165 -0
  170. package/dist/types.js.map +1 -0
  171. package/dist/utils.d.ts +116 -0
  172. package/dist/utils.d.ts.map +1 -0
  173. package/dist/utils.js +295 -0
  174. package/dist/utils.js.map +1 -0
  175. package/dist/vectors/embedder.d.ts +140 -0
  176. package/dist/vectors/embedder.d.ts.map +1 -0
  177. package/dist/vectors/embedder.js +336 -0
  178. package/dist/vectors/embedder.js.map +1 -0
  179. package/dist/vectors/index.d.ts +9 -0
  180. package/dist/vectors/index.d.ts.map +1 -0
  181. package/dist/vectors/index.js +20 -0
  182. package/dist/vectors/index.js.map +1 -0
  183. package/dist/vectors/manager.d.ts +119 -0
  184. package/dist/vectors/manager.d.ts.map +1 -0
  185. package/dist/vectors/manager.js +274 -0
  186. package/dist/vectors/manager.js.map +1 -0
  187. package/dist/vectors/search.d.ts +134 -0
  188. package/dist/vectors/search.d.ts.map +1 -0
  189. package/dist/vectors/search.js +409 -0
  190. package/dist/vectors/search.js.map +1 -0
  191. package/package.json +67 -0
  192. package/scripts/postinstall.js +68 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,2CAA6B;AAkB7B,6BAA2D;AAC3D,0CAA4C;AAC5C,qCAAuE;AACvE,2CAKqB;AACrB,6CAMsB;AACtB,6CAIsB;AACtB,mCAA4D;AAC5D,uCAAkF;AAClF,uCAAiE;AACjE,iCAAqG;AACrG,mCAAgC;AAEhC,gCAAgC;AAChC,0CAAwB;AACxB,2BAAuC;AAA9B,qGAAA,eAAe,OAAA;AACxB,mCAAyC;AAAhC,uGAAA,aAAa,OAAA;AACtB,yCAA6D;AAApD,4GAAA,eAAe,OAAA;AAAE,0GAAA,aAAa,OAAA;AAEvC,2CAA0F;AAAjF,4GAAA,cAAc,OAAA;AAAE,iHAAA,mBAAmB,OAAA;AAAE,mHAAA,qBAAqB,OAAA;AAInE,mCAakB;AAZhB,wGAAA,cAAc,OAAA;AACd,mGAAA,SAAS,OAAA;AACT,oGAAA,UAAU,OAAA;AACV,uGAAA,aAAa,OAAA;AACb,qGAAA,WAAW,OAAA;AACX,qGAAA,WAAW,OAAA;AACX,qGAAA,WAAW,OAAA;AAEX,mGAAA,SAAS,OAAA;AACT,mGAAA,SAAS,OAAA;AACT,sGAAA,YAAY,OAAA;AACZ,uGAAA,aAAa,OAAA;AAEf,iCAAqF;AAA5E,8FAAA,KAAK,OAAA;AAAE,yGAAA,gBAAgB,OAAA;AAAE,iGAAA,QAAQ,OAAA;AAAE,iGAAA,QAAQ,OAAA;AAAE,sGAAA,aAAa,OAAA;AACnE,6BAAkC;AAAzB,gGAAA,SAAS,OAAA;AAsClB;;;;GAIG;AACH,MAAa,SAAS;IACZ,EAAE,CAAqB;IACvB,OAAO,CAAe;IACtB,MAAM,CAAkB;IACxB,WAAW,CAAS;IACpB,YAAY,CAAyB;IACrC,QAAQ,CAAoB;IAC5B,YAAY,CAAoB;IAChC,SAAS,CAAiB;IAC1B,aAAa,GAAyB,IAAI,CAAC;IAC3C,cAAc,CAAiB;IAC/B,eAAe,CAAkB;IAEzC,sDAAsD;IAC9C,UAAU,GAAG,IAAI,aAAK,EAAE,CAAC;IAEjC,YACE,EAAsB,EACtB,OAAqB,EACrB,MAAuB,EACvB,WAAmB;QAEnB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,YAAY,GAAG,IAAI,mCAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QAC7E,IAAI,CAAC,QAAQ,GAAG,IAAA,2BAAc,EAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACrD,IAAI,CAAC,YAAY,GAAG,IAAI,yBAAiB,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,CAAC,SAAS,GAAG,IAAI,sBAAc,CAAC,OAAO,CAAC,CAAC;QAC7C,+DAA+D;QAC/D,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;YAC5B,IAAI,CAAC,aAAa,GAAG,IAAA,6BAAmB,EAAC,EAAE,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE;gBAC5D,QAAQ,EAAE;oBACR,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,QAAQ,CAAC;iBACzD;aACF,CAAC,CAAC;QACL,CAAC;QACD,qDAAqD;QACrD,IAAI,CAAC,cAAc,GAAG,IAAA,8BAAoB,EACxC,WAAW,EACX,OAAO,EACP,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,aAAa,CACnB,CAAC;QACF,oBAAoB;QACpB,IAAI,CAAC,eAAe,GAAG,IAAA,4BAAqB,EAAC,WAAW,CAAC,CAAC;IAC5D,CAAC;IAED,8EAA8E;IAC9E,oBAAoB;IACpB,8EAA8E;IAE9E;;;;;;;;OAQG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,WAAmB,EAAE,UAAuB,EAAE;QAC9D,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAE/C,+BAA+B;QAC/B,IAAI,IAAA,yBAAa,EAAC,YAAY,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,oCAAoC,YAAY,EAAE,CAAC,CAAC;QACtE,CAAC;QAED,6BAA6B;QAC7B,IAAA,2BAAe,EAAC,YAAY,CAAC,CAAC;QAE9B,gCAAgC;QAChC,MAAM,MAAM,GAAG,IAAA,4BAAmB,EAAC,YAAY,CAAC,CAAC;QACjD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC;QACD,IAAA,mBAAU,EAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QAEjC,sBAAsB;QACtB,MAAM,MAAM,GAAG,IAAA,oBAAe,EAAC,YAAY,CAAC,CAAC;QAC7C,MAAM,EAAE,GAAG,uBAAkB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,IAAI,sBAAY,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;QAE7C,MAAM,QAAQ,GAAG,IAAI,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;QAElE,oCAAoC;QACpC,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,MAAM,QAAQ,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,WAAmB,EAAE,UAAqD,EAAE;QAC1F,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAE/C,+BAA+B;QAC/B,IAAI,IAAA,yBAAa,EAAC,YAAY,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,oCAAoC,YAAY,EAAE,CAAC,CAAC;QACtE,CAAC;QAED,6BAA6B;QAC7B,IAAA,2BAAe,EAAC,YAAY,CAAC,CAAC;QAE9B,gCAAgC;QAChC,MAAM,MAAM,GAAG,IAAA,4BAAmB,EAAC,YAAY,CAAC,CAAC;QACjD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC;QACD,IAAA,mBAAU,EAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QAEjC,sBAAsB;QACtB,MAAM,MAAM,GAAG,IAAA,oBAAe,EAAC,YAAY,CAAC,CAAC;QAC7C,MAAM,EAAE,GAAG,uBAAkB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,IAAI,sBAAY,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;QAE7C,OAAO,IAAI,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,WAAmB,EAAE,UAAuB,EAAE;QAC9D,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAE/C,uBAAuB;QACvB,IAAI,CAAC,IAAA,yBAAa,EAAC,YAAY,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,gCAAgC,YAAY,qBAAqB,CAAC,CAAC;QACrF,CAAC;QAED,+BAA+B;QAC/B,MAAM,UAAU,GAAG,IAAA,6BAAiB,EAAC,YAAY,CAAC,CAAC;QACnD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,gCAAgC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClF,CAAC;QAED,qBAAqB;QACrB,MAAM,MAAM,GAAG,IAAA,mBAAU,EAAC,YAAY,CAAC,CAAC;QAExC,gBAAgB;QAChB,MAAM,MAAM,GAAG,IAAA,oBAAe,EAAC,YAAY,CAAC,CAAC;QAC7C,MAAM,EAAE,GAAG,uBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,IAAI,sBAAY,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;QAE7C,MAAM,QAAQ,GAAG,IAAI,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;QAElE,oBAAoB;QACpB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxB,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,WAAmB;QACjC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAE/C,uBAAuB;QACvB,IAAI,CAAC,IAAA,yBAAa,EAAC,YAAY,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,gCAAgC,YAAY,qBAAqB,CAAC,CAAC;QACrF,CAAC;QAED,+BAA+B;QAC/B,MAAM,UAAU,GAAG,IAAA,6BAAiB,EAAC,YAAY,CAAC,CAAC;QACnD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,gCAAgC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClF,CAAC;QAED,qBAAqB;QACrB,MAAM,MAAM,GAAG,IAAA,mBAAU,EAAC,YAAY,CAAC,CAAC;QAExC,gBAAgB;QAChB,MAAM,MAAM,GAAG,IAAA,oBAAe,EAAC,YAAY,CAAC,CAAC;QAC7C,MAAM,EAAE,GAAG,uBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,IAAI,sBAAY,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;QAE7C,OAAO,IAAI,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,WAAmB;QACtC,OAAO,IAAA,yBAAa,EAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IAClD,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC;IAED,8EAA8E;IAC9E,gBAAgB;IAChB,8EAA8E;IAE9E;;OAEG;IACH,SAAS;QACP,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,OAAiC;QAC5C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,IAAA,mBAAU,EAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1C,qDAAqD;QACrD,IAAI,CAAC,YAAY,GAAG,IAAI,mCAAsB,CAC5C,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,CACb,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,IAAA,2BAAc,EAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACjE,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,8EAA8E;IAC9E,WAAW;IACX,8EAA8E;IAE9E;;;;OAIG;IACH,KAAK,CAAC,QAAQ,CAAC,UAAwB,EAAE;QACvC,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE;YACzC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAEpF,yDAAyD;YACzD,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;gBAC9C,OAAO,CAAC,UAAU,EAAE,CAAC;oBACnB,KAAK,EAAE,WAAW;oBAClB,OAAO,EAAE,CAAC;oBACV,KAAK,EAAE,CAAC;iBACT,CAAC,CAAC;gBACH,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU,CAAC,SAAmB;QAClC,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE;YACzC,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAI,CAAC,UAAwB,EAAE;QACnC,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE;YACzC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAEhE,2CAA2C;YAC3C,IAAI,MAAM,CAAC,UAAU,GAAG,CAAC,IAAI,MAAM,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;gBACtD,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,iBAAiB,CAAC,QAAgB,EAAE,MAAc;QAChD,OAAO,IAAA,8BAAiB,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC7C,CAAC;IAED,8EAA8E;IAC9E,uBAAuB;IACvB,8EAA8E;IAE9E;;;;;;;;OAQG;IACH,iBAAiB;QACf,kDAAkD;QAClD,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,CAAC;QAC9D,OAAO,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,qBAAqB;QACnB,OAAO,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,oBAAoB;QAClB,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;IAC7B,CAAC;IAED,8EAA8E;IAC9E,mBAAmB;IACnB,8EAA8E;IAE9E;;OAEG;IACH,QAAQ;QACN,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;QACtC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC;QACtC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,8EAA8E;IAC9E,kBAAkB;IAClB,8EAA8E;IAE9E;;OAEG;IACH,OAAO,CAAC,EAAU;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,QAAgB;QAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,IAAkB;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,KAAa,EAAE,OAAuB;QAChD,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;IAED,8EAA8E;IAC9E,kBAAkB;IAClB,8EAA8E;IAE9E;;OAEG;IACH,gBAAgB,CAAC,MAAc;QAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,MAAc;QAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAED,8EAA8E;IAC9E,kBAAkB;IAClB,8EAA8E;IAE9E;;OAEG;IACH,OAAO,CAAC,QAAgB;QACtB,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IACpC,CAAC;IAED,8EAA8E;IAC9E,sBAAsB;IACtB,8EAA8E;IAE9E;;;;;;;;;OASG;IACH,UAAU,CAAC,MAAc;QACvB,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;OASG;IACH,QAAQ,CAAC,OAAe,EAAE,OAA0B;QAClD,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;;;;OASG;IACH,YAAY,CAAC,MAAc,EAAE,QAAgB,CAAC;QAC5C,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACpD,CAAC;IAED;;;;;;;;OAQG;IACH,gBAAgB,CAAC,MAAc;QAC7B,OAAO,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAED;;;;;;;;OAQG;IACH,UAAU,CAAC,MAAc;QACvB,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;;OAMG;IACH,UAAU,CAAC,MAAc,EAAE,WAAmB,CAAC;QAC7C,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;OAMG;IACH,UAAU,CAAC,MAAc,EAAE,WAAmB,CAAC;QAC7C,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;;;OAQG;IACH,eAAe,CAAC,MAAc,EAAE,WAAmB,CAAC;QAClD,OAAO,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;;;OAOG;IACH,QAAQ,CACN,MAAc,EACd,IAAY,EACZ,SAA0B;QAE1B,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;OAKG;IACH,YAAY,CAAC,MAAc;QACzB,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;OAKG;IACH,WAAW,CAAC,MAAc;QACxB,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;OAKG;IACH,mBAAmB,CAAC,QAAgB;QAClC,OAAO,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IACzD,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,QAAgB;QAChC,OAAO,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACvD,CAAC;IAED;;;;OAIG;IACH,wBAAwB;QACtB,OAAO,IAAI,CAAC,YAAY,CAAC,wBAAwB,EAAE,CAAC;IACtD,CAAC;IAED;;;;;OAKG;IACH,YAAY,CAAC,KAAsB;QACjC,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;OAKG;IACH,cAAc,CAAC,MAAc;QAQ3B,OAAO,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAClD,CAAC;IAED,8EAA8E;IAC9E,sCAAsC;IACtC,8EAA8E;IAE9E;;;;;OAKG;IACH,KAAK,CAAC,oBAAoB;QACxB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,IAAI,CAAC,aAAa,GAAG,IAAA,6BAAmB,EAAC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE;gBACtE,QAAQ,EAAE;oBACR,YAAY,EAAE,IAAI;iBACnB;aACF,CAAC,CAAC;QACL,CAAC;QACD,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,uBAAuB;QACrB,OAAO,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,IAAI,KAAK,CAAC;IACtD,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,kBAAkB,CACtB,UAAkD;QAElD,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACpC,CAAC;QACD,OAAO,IAAI,CAAC,aAAc,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IACvD,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,cAAc,CAAC,KAAa,EAAE,QAAgB,EAAE;QACpD,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,EAAE,CAAC;YAC/D,MAAM,IAAI,KAAK,CACb,gEAAgE,CACjE,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,WAAW,CAAC,MAAc,EAAE,QAAgB,EAAE;QAClD,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,EAAE,CAAC;YAC/D,MAAM,IAAI,KAAK,CACb,gEAAgE,CACjE,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACH,iBAAiB;QAMf,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;IACvC,CAAC;IAED,8EAA8E;IAC9E,mBAAmB;IACnB,8EAA8E;IAE9E;;;;;;;OAOG;IACH,KAAK,CAAC,OAAO,CAAC,MAAc;QAC1B,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,mBAAmB,CACvB,KAAa,EACb,OAAoC;QAEpC,qDAAqD;QACrD,IAAI,CAAC,cAAc,GAAG,IAAA,8BAAoB,EACxC,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,aAAa,CACnB,CAAC;QACF,OAAO,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACjE,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,YAAY,CAChB,KAAgB,EAChB,OAA6B;QAE7B,qDAAqD;QACrD,IAAI,CAAC,cAAc,GAAG,IAAA,8BAAoB,EACxC,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,aAAa,CACnB,CAAC;QACF,OAAO,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,8EAA8E;IAC9E,kBAAkB;IAClB,8EAA8E;IAE9E;;OAEG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,kBAAkB;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,CAAC;IAChD,CAAC;IAED;;;;;;;;;;;OAWG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;IAC5C,CAAC;IAED;;;;;;;OAOG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;IAC3C,CAAC;IAED,8EAA8E;IAC9E,sBAAsB;IACtB,8EAA8E;IAE9E;;OAEG;IACH,QAAQ;QACN,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;IAED;;;OAGG;IACH,OAAO;QACL,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACH,YAAY;QACV,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;QAChB,IAAA,2BAAe,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACpC,CAAC;CACF;AAz2BD,8BAy2BC;AAED,iBAAiB;AACjB,kBAAe,SAAS,CAAC"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Banner and branding for the CodeGraph installer
3
+ */
4
+ export declare const chalk: {
5
+ bold: (s: string) => string;
6
+ dim: (s: string) => string;
7
+ red: (s: string) => string;
8
+ green: (s: string) => string;
9
+ yellow: (s: string) => string;
10
+ blue: (s: string) => string;
11
+ magenta: (s: string) => string;
12
+ cyan: (s: string) => string;
13
+ white: (s: string) => string;
14
+ gray: (s: string) => string;
15
+ };
16
+ /**
17
+ * Display the CodeGraph banner
18
+ */
19
+ export declare function showBanner(): void;
20
+ /**
21
+ * Show success checkmark
22
+ */
23
+ export declare function success(message: string): void;
24
+ /**
25
+ * Show error message
26
+ */
27
+ export declare function error(message: string): void;
28
+ /**
29
+ * Show info message
30
+ */
31
+ export declare function info(message: string): void;
32
+ /**
33
+ * Show warning message
34
+ */
35
+ export declare function warn(message: string): void;
36
+ /**
37
+ * Show the "next steps" section after installation
38
+ */
39
+ export declare function showNextSteps(location: 'global' | 'local'): void;
40
+ //# sourceMappingURL=banner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"banner.d.ts","sourceRoot":"","sources":["../../src/installer/banner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAwBH,eAAO,MAAM,KAAK;cACN,MAAM;aACP,MAAM;aACN,MAAM;eACJ,MAAM;gBACL,MAAM;cACR,MAAM;iBACH,MAAM;cACT,MAAM;eACL,MAAM;cACP,MAAM;CACjB,CAAC;AAeF;;GAEG;AACH,wBAAgB,UAAU,IAAI,IAAI,CA2BjC;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE7C;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE3C;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE1C;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE1C;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,GAAG,IAAI,CAahE"}
@@ -0,0 +1,162 @@
1
+ "use strict";
2
+ /**
3
+ * Banner and branding for the CodeGraph installer
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || (function () {
22
+ var ownKeys = function(o) {
23
+ ownKeys = Object.getOwnPropertyNames || function (o) {
24
+ var ar = [];
25
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
+ return ar;
27
+ };
28
+ return ownKeys(o);
29
+ };
30
+ return function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
+ __setModuleDefault(result, mod);
35
+ return result;
36
+ };
37
+ })();
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.chalk = void 0;
40
+ exports.showBanner = showBanner;
41
+ exports.success = success;
42
+ exports.error = error;
43
+ exports.info = info;
44
+ exports.warn = warn;
45
+ exports.showNextSteps = showNextSteps;
46
+ const figlet = __importStar(require("figlet"));
47
+ const path = __importStar(require("path"));
48
+ const fs = __importStar(require("fs"));
49
+ // =============================================================================
50
+ // ANSI Color Helpers (same pattern as CLI to avoid chalk ESM issues)
51
+ // =============================================================================
52
+ const colors = {
53
+ reset: '\x1b[0m',
54
+ bold: '\x1b[1m',
55
+ dim: '\x1b[2m',
56
+ red: '\x1b[31m',
57
+ green: '\x1b[32m',
58
+ yellow: '\x1b[33m',
59
+ blue: '\x1b[34m',
60
+ magenta: '\x1b[35m',
61
+ cyan: '\x1b[36m',
62
+ white: '\x1b[37m',
63
+ gray: '\x1b[90m',
64
+ };
65
+ exports.chalk = {
66
+ bold: (s) => `${colors.bold}${s}${colors.reset}`,
67
+ dim: (s) => `${colors.dim}${s}${colors.reset}`,
68
+ red: (s) => `${colors.red}${s}${colors.reset}`,
69
+ green: (s) => `${colors.green}${s}${colors.reset}`,
70
+ yellow: (s) => `${colors.yellow}${s}${colors.reset}`,
71
+ blue: (s) => `${colors.blue}${s}${colors.reset}`,
72
+ magenta: (s) => `${colors.magenta}${s}${colors.reset}`,
73
+ cyan: (s) => `${colors.cyan}${s}${colors.reset}`,
74
+ white: (s) => `${colors.white}${s}${colors.reset}`,
75
+ gray: (s) => `${colors.gray}${s}${colors.reset}`,
76
+ };
77
+ /**
78
+ * Get the package version
79
+ */
80
+ function getVersion() {
81
+ try {
82
+ const packageJsonPath = path.join(__dirname, '..', '..', 'package.json');
83
+ const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8'));
84
+ return packageJson.version;
85
+ }
86
+ catch {
87
+ return '0.0.0';
88
+ }
89
+ }
90
+ /**
91
+ * Display the CodeGraph banner
92
+ */
93
+ function showBanner() {
94
+ // Generate ASCII art using figlet
95
+ let banner;
96
+ try {
97
+ banner = figlet.textSync('CODEGRAPH', {
98
+ font: 'ANSI Shadow',
99
+ horizontalLayout: 'default',
100
+ });
101
+ }
102
+ catch {
103
+ // Fallback if figlet fails
104
+ banner = `
105
+ ██████╗ ██████╗ ██████╗ ███████╗ ██████╗ ██████╗ █████╗ ██████╗ ██╗ ██╗
106
+ ██╔════╝██╔═══██╗██╔══██╗██╔════╝██╔════╝ ██╔══██╗██╔══██╗██╔══██╗██║ ██║
107
+ ██║ ██║ ██║██║ ██║█████╗ ██║ ███╗██████╔╝███████║██████╔╝███████║
108
+ ██║ ██║ ██║██║ ██║██╔══╝ ██║ ██║██╔══██╗██╔══██║██╔═══╝ ██╔══██║
109
+ ╚██████╗╚██████╔╝██████╔╝███████╗╚██████╔╝██║ ██║██║ ██║██║ ██║ ██║
110
+ ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝
111
+ `;
112
+ }
113
+ console.log();
114
+ console.log(exports.chalk.cyan(banner));
115
+ console.log();
116
+ console.log(` ${exports.chalk.bold('CodeGraph')} v${getVersion()}`);
117
+ console.log(' Semantic code intelligence for Claude Code');
118
+ console.log(exports.chalk.dim(' Created by: Colby McHenry'));
119
+ console.log();
120
+ }
121
+ /**
122
+ * Show success checkmark
123
+ */
124
+ function success(message) {
125
+ console.log(exports.chalk.green(' ✓') + ' ' + message);
126
+ }
127
+ /**
128
+ * Show error message
129
+ */
130
+ function error(message) {
131
+ console.log(exports.chalk.red(' ✗') + ' ' + message);
132
+ }
133
+ /**
134
+ * Show info message
135
+ */
136
+ function info(message) {
137
+ console.log(exports.chalk.blue(' ℹ') + ' ' + message);
138
+ }
139
+ /**
140
+ * Show warning message
141
+ */
142
+ function warn(message) {
143
+ console.log(exports.chalk.yellow(' ⚠') + ' ' + message);
144
+ }
145
+ /**
146
+ * Show the "next steps" section after installation
147
+ */
148
+ function showNextSteps(location) {
149
+ console.log();
150
+ console.log(exports.chalk.bold(' Done!') + ' Restart Claude Code to use CodeGraph.');
151
+ console.log();
152
+ if (location === 'global') {
153
+ console.log(exports.chalk.dim(' Quick start:'));
154
+ console.log(exports.chalk.dim(' cd your-project'));
155
+ console.log(exports.chalk.cyan(' codegraph init -i'));
156
+ }
157
+ else {
158
+ console.log(exports.chalk.dim(' CodeGraph is ready to use in this project!'));
159
+ }
160
+ console.log();
161
+ }
162
+ //# sourceMappingURL=banner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"banner.js","sourceRoot":"","sources":["../../src/installer/banner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * CLAUDE.md template for CodeGraph instructions
3
+ *
4
+ * This template is injected into ~/.claude/CLAUDE.md (global) or ./.claude/CLAUDE.md (local)
5
+ * Keep this in sync with the README.md "Recommended: Add Global Instructions" section
6
+ */
7
+ export declare const CODEGRAPH_SECTION_START = "<!-- CODEGRAPH_START -->";
8
+ export declare const CODEGRAPH_SECTION_END = "<!-- CODEGRAPH_END -->";
9
+ export declare const CLAUDE_MD_TEMPLATE = "<!-- CODEGRAPH_START -->\n## CodeGraph\n\nCodeGraph builds a semantic knowledge graph of codebases for faster, smarter code exploration.\n\n### If `.codegraph/` exists in the project\n\n**Use codegraph tools for faster exploration.** These tools provide instant lookups via the code graph instead of scanning files:\n\n| Tool | Use For |\n|------|---------|\n| `codegraph_search` | Find symbols by name (functions, classes, types) |\n| `codegraph_context` | Get relevant code context for a task |\n| `codegraph_callers` | Find what calls a function |\n| `codegraph_callees` | Find what a function calls |\n| `codegraph_impact` | See what's affected by changing a symbol |\n| `codegraph_node` | Get details + source code for a symbol |\n\n**When spawning Explore agents in a codegraph-enabled project:**\n\nTell the Explore agent to use codegraph tools for faster exploration.\n\n**For quick lookups in the main session:**\n- Use `codegraph_search` instead of grep for finding symbols\n- Use `codegraph_callers`/`codegraph_callees` to trace code flow\n- Use `codegraph_impact` before making changes to see what's affected\n\n### If `.codegraph/` does NOT exist\n\nAt the start of a session, ask the user if they'd like to initialize CodeGraph:\n\n\"I notice this project doesn't have CodeGraph initialized. Would you like me to run `codegraph init -i` to build a code knowledge graph?\"\n<!-- CODEGRAPH_END -->";
10
+ //# sourceMappingURL=claude-md-template.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-md-template.d.ts","sourceRoot":"","sources":["../../src/installer/claude-md-template.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,eAAO,MAAM,uBAAuB,6BAA6B,CAAC;AAClE,eAAO,MAAM,qBAAqB,2BAA2B,CAAC;AAE9D,eAAO,MAAM,kBAAkB,s4CAgCN,CAAC"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ /**
3
+ * CLAUDE.md template for CodeGraph instructions
4
+ *
5
+ * This template is injected into ~/.claude/CLAUDE.md (global) or ./.claude/CLAUDE.md (local)
6
+ * Keep this in sync with the README.md "Recommended: Add Global Instructions" section
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.CLAUDE_MD_TEMPLATE = exports.CODEGRAPH_SECTION_END = exports.CODEGRAPH_SECTION_START = void 0;
10
+ // Markers to identify CodeGraph section for updates
11
+ exports.CODEGRAPH_SECTION_START = '<!-- CODEGRAPH_START -->';
12
+ exports.CODEGRAPH_SECTION_END = '<!-- CODEGRAPH_END -->';
13
+ exports.CLAUDE_MD_TEMPLATE = `${exports.CODEGRAPH_SECTION_START}
14
+ ## CodeGraph
15
+
16
+ CodeGraph builds a semantic knowledge graph of codebases for faster, smarter code exploration.
17
+
18
+ ### If \`.codegraph/\` exists in the project
19
+
20
+ **Use codegraph tools for faster exploration.** These tools provide instant lookups via the code graph instead of scanning files:
21
+
22
+ | Tool | Use For |
23
+ |------|---------|
24
+ | \`codegraph_search\` | Find symbols by name (functions, classes, types) |
25
+ | \`codegraph_context\` | Get relevant code context for a task |
26
+ | \`codegraph_callers\` | Find what calls a function |
27
+ | \`codegraph_callees\` | Find what a function calls |
28
+ | \`codegraph_impact\` | See what's affected by changing a symbol |
29
+ | \`codegraph_node\` | Get details + source code for a symbol |
30
+
31
+ **When spawning Explore agents in a codegraph-enabled project:**
32
+
33
+ Tell the Explore agent to use codegraph tools for faster exploration.
34
+
35
+ **For quick lookups in the main session:**
36
+ - Use \`codegraph_search\` instead of grep for finding symbols
37
+ - Use \`codegraph_callers\`/\`codegraph_callees\` to trace code flow
38
+ - Use \`codegraph_impact\` before making changes to see what's affected
39
+
40
+ ### If \`.codegraph/\` does NOT exist
41
+
42
+ At the start of a session, ask the user if they'd like to initialize CodeGraph:
43
+
44
+ "I notice this project doesn't have CodeGraph initialized. Would you like me to run \`codegraph init -i\` to build a code knowledge graph?"
45
+ ${exports.CODEGRAPH_SECTION_END}`;
46
+ //# sourceMappingURL=claude-md-template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-md-template.js","sourceRoot":"","sources":["../../src/installer/claude-md-template.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,oDAAoD;AACvC,QAAA,uBAAuB,GAAG,0BAA0B,CAAC;AACrD,QAAA,qBAAqB,GAAG,wBAAwB,CAAC;AAEjD,QAAA,kBAAkB,GAAG,GAAG,+BAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgC1D,6BAAqB,EAAE,CAAC"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Config file writing for the CodeGraph installer
3
+ * Writes to claude.json, settings.json, and CLAUDE.md
4
+ */
5
+ import { InstallLocation } from './prompts';
6
+ /**
7
+ * Write the MCP server configuration to claude.json
8
+ */
9
+ export declare function writeMcpConfig(location: InstallLocation): void;
10
+ /**
11
+ * Write permissions to settings.json
12
+ */
13
+ export declare function writePermissions(location: InstallLocation): void;
14
+ /**
15
+ * Check if MCP config already exists for CodeGraph
16
+ */
17
+ export declare function hasMcpConfig(location: InstallLocation): boolean;
18
+ /**
19
+ * Check if permissions already exist for CodeGraph
20
+ */
21
+ export declare function hasPermissions(location: InstallLocation): boolean;
22
+ /**
23
+ * Check if CLAUDE.md has CodeGraph section
24
+ */
25
+ export declare function hasClaudeMdSection(location: InstallLocation): boolean;
26
+ /**
27
+ * Write or update CLAUDE.md with CodeGraph instructions
28
+ *
29
+ * If the file exists and has a CodeGraph section (marked or unmarked),
30
+ * it will be replaced. Otherwise, the template is appended.
31
+ */
32
+ export declare function writeClaudeMd(location: InstallLocation): {
33
+ created: boolean;
34
+ updated: boolean;
35
+ };
36
+ //# sourceMappingURL=config-writer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-writer.d.ts","sourceRoot":"","sources":["../../src/installer/config-writer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAqF5C;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI,CAa9D;AAiBD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI,CAuBhE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CAI/D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CASjE;AAYD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CAWrE;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,eAAe,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAgE/F"}
@@ -0,0 +1,282 @@
1
+ "use strict";
2
+ /**
3
+ * Config file writing for the CodeGraph installer
4
+ * Writes to claude.json, settings.json, and CLAUDE.md
5
+ */
6
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
+ if (k2 === undefined) k2 = k;
8
+ var desc = Object.getOwnPropertyDescriptor(m, k);
9
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
10
+ desc = { enumerable: true, get: function() { return m[k]; } };
11
+ }
12
+ Object.defineProperty(o, k2, desc);
13
+ }) : (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ o[k2] = m[k];
16
+ }));
17
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
18
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
19
+ }) : function(o, v) {
20
+ o["default"] = v;
21
+ });
22
+ var __importStar = (this && this.__importStar) || (function () {
23
+ var ownKeys = function(o) {
24
+ ownKeys = Object.getOwnPropertyNames || function (o) {
25
+ var ar = [];
26
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
27
+ return ar;
28
+ };
29
+ return ownKeys(o);
30
+ };
31
+ return function (mod) {
32
+ if (mod && mod.__esModule) return mod;
33
+ var result = {};
34
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
35
+ __setModuleDefault(result, mod);
36
+ return result;
37
+ };
38
+ })();
39
+ Object.defineProperty(exports, "__esModule", { value: true });
40
+ exports.writeMcpConfig = writeMcpConfig;
41
+ exports.writePermissions = writePermissions;
42
+ exports.hasMcpConfig = hasMcpConfig;
43
+ exports.hasPermissions = hasPermissions;
44
+ exports.hasClaudeMdSection = hasClaudeMdSection;
45
+ exports.writeClaudeMd = writeClaudeMd;
46
+ const fs = __importStar(require("fs"));
47
+ const path = __importStar(require("path"));
48
+ const os = __importStar(require("os"));
49
+ const claude_md_template_1 = require("./claude-md-template");
50
+ /**
51
+ * Get the path to the Claude config directory
52
+ */
53
+ function getClaudeConfigDir(location) {
54
+ if (location === 'global') {
55
+ return path.join(os.homedir(), '.claude');
56
+ }
57
+ return path.join(process.cwd(), '.claude');
58
+ }
59
+ /**
60
+ * Get the path to the claude.json file
61
+ * - Global: ~/.claude.json (root level)
62
+ * - Local: ./.claude.json (project root)
63
+ */
64
+ function getClaudeJsonPath(location) {
65
+ if (location === 'global') {
66
+ return path.join(os.homedir(), '.claude.json');
67
+ }
68
+ return path.join(process.cwd(), '.claude.json');
69
+ }
70
+ /**
71
+ * Get the path to the settings.json file
72
+ * - Global: ~/.claude/settings.json
73
+ * - Local: ./.claude/settings.json
74
+ */
75
+ function getSettingsJsonPath(location) {
76
+ const configDir = getClaudeConfigDir(location);
77
+ return path.join(configDir, 'settings.json');
78
+ }
79
+ /**
80
+ * Read a JSON file, returning an empty object if it doesn't exist
81
+ */
82
+ function readJsonFile(filePath) {
83
+ try {
84
+ if (fs.existsSync(filePath)) {
85
+ const content = fs.readFileSync(filePath, 'utf-8');
86
+ return JSON.parse(content);
87
+ }
88
+ }
89
+ catch {
90
+ // Ignore parse errors, return empty object
91
+ }
92
+ return {};
93
+ }
94
+ /**
95
+ * Write a JSON file, creating parent directories if needed
96
+ */
97
+ function writeJsonFile(filePath, data) {
98
+ const dir = path.dirname(filePath);
99
+ if (!fs.existsSync(dir)) {
100
+ fs.mkdirSync(dir, { recursive: true });
101
+ }
102
+ fs.writeFileSync(filePath, JSON.stringify(data, null, 2) + '\n');
103
+ }
104
+ /**
105
+ * Get the MCP server configuration for the given location
106
+ */
107
+ function getMcpServerConfig(location) {
108
+ if (location === 'global') {
109
+ // Global: use 'codegraph' command directly (assumes globally installed)
110
+ return {
111
+ type: 'stdio',
112
+ command: 'codegraph',
113
+ args: ['serve', '--mcp'],
114
+ };
115
+ }
116
+ // Local: use npx to run the package
117
+ return {
118
+ type: 'stdio',
119
+ command: 'npx',
120
+ args: ['@colbymchenry/codegraph', 'serve', '--mcp'],
121
+ };
122
+ }
123
+ /**
124
+ * Write the MCP server configuration to claude.json
125
+ */
126
+ function writeMcpConfig(location) {
127
+ const claudeJsonPath = getClaudeJsonPath(location);
128
+ const config = readJsonFile(claudeJsonPath);
129
+ // Ensure mcpServers object exists
130
+ if (!config.mcpServers) {
131
+ config.mcpServers = {};
132
+ }
133
+ // Add or update codegraph server
134
+ config.mcpServers.codegraph = getMcpServerConfig(location);
135
+ writeJsonFile(claudeJsonPath, config);
136
+ }
137
+ /**
138
+ * Get the list of permissions for CodeGraph tools
139
+ */
140
+ function getCodeGraphPermissions() {
141
+ return [
142
+ 'mcp__codegraph__codegraph_search',
143
+ 'mcp__codegraph__codegraph_context',
144
+ 'mcp__codegraph__codegraph_callers',
145
+ 'mcp__codegraph__codegraph_callees',
146
+ 'mcp__codegraph__codegraph_impact',
147
+ 'mcp__codegraph__codegraph_node',
148
+ 'mcp__codegraph__codegraph_status',
149
+ ];
150
+ }
151
+ /**
152
+ * Write permissions to settings.json
153
+ */
154
+ function writePermissions(location) {
155
+ const settingsPath = getSettingsJsonPath(location);
156
+ const settings = readJsonFile(settingsPath);
157
+ // Ensure permissions object exists
158
+ if (!settings.permissions) {
159
+ settings.permissions = {};
160
+ }
161
+ // Ensure allow array exists
162
+ if (!Array.isArray(settings.permissions.allow)) {
163
+ settings.permissions.allow = [];
164
+ }
165
+ // Add CodeGraph permissions (avoiding duplicates)
166
+ const codegraphPermissions = getCodeGraphPermissions();
167
+ for (const permission of codegraphPermissions) {
168
+ if (!settings.permissions.allow.includes(permission)) {
169
+ settings.permissions.allow.push(permission);
170
+ }
171
+ }
172
+ writeJsonFile(settingsPath, settings);
173
+ }
174
+ /**
175
+ * Check if MCP config already exists for CodeGraph
176
+ */
177
+ function hasMcpConfig(location) {
178
+ const claudeJsonPath = getClaudeJsonPath(location);
179
+ const config = readJsonFile(claudeJsonPath);
180
+ return !!config.mcpServers?.codegraph;
181
+ }
182
+ /**
183
+ * Check if permissions already exist for CodeGraph
184
+ */
185
+ function hasPermissions(location) {
186
+ const settingsPath = getSettingsJsonPath(location);
187
+ const settings = readJsonFile(settingsPath);
188
+ const permissions = settings.permissions?.allow;
189
+ if (!Array.isArray(permissions)) {
190
+ return false;
191
+ }
192
+ // Check if at least one CodeGraph permission exists
193
+ return permissions.some((p) => p.startsWith('mcp__codegraph__'));
194
+ }
195
+ /**
196
+ * Get the path to CLAUDE.md
197
+ * - Global: ~/.claude/CLAUDE.md
198
+ * - Local: ./.claude/CLAUDE.md
199
+ */
200
+ function getClaudeMdPath(location) {
201
+ const configDir = getClaudeConfigDir(location);
202
+ return path.join(configDir, 'CLAUDE.md');
203
+ }
204
+ /**
205
+ * Check if CLAUDE.md has CodeGraph section
206
+ */
207
+ function hasClaudeMdSection(location) {
208
+ const claudeMdPath = getClaudeMdPath(location);
209
+ try {
210
+ if (fs.existsSync(claudeMdPath)) {
211
+ const content = fs.readFileSync(claudeMdPath, 'utf-8');
212
+ return content.includes(claude_md_template_1.CODEGRAPH_SECTION_START) || content.includes('## CodeGraph');
213
+ }
214
+ }
215
+ catch {
216
+ // Ignore errors
217
+ }
218
+ return false;
219
+ }
220
+ /**
221
+ * Write or update CLAUDE.md with CodeGraph instructions
222
+ *
223
+ * If the file exists and has a CodeGraph section (marked or unmarked),
224
+ * it will be replaced. Otherwise, the template is appended.
225
+ */
226
+ function writeClaudeMd(location) {
227
+ const claudeMdPath = getClaudeMdPath(location);
228
+ const configDir = getClaudeConfigDir(location);
229
+ // Ensure directory exists
230
+ if (!fs.existsSync(configDir)) {
231
+ fs.mkdirSync(configDir, { recursive: true });
232
+ }
233
+ // Check if file exists
234
+ if (!fs.existsSync(claudeMdPath)) {
235
+ // Create new file with just the CodeGraph section
236
+ fs.writeFileSync(claudeMdPath, claude_md_template_1.CLAUDE_MD_TEMPLATE + '\n');
237
+ return { created: true, updated: false };
238
+ }
239
+ // Read existing content
240
+ let content = fs.readFileSync(claudeMdPath, 'utf-8');
241
+ // Check for marked section (from previous installer)
242
+ if (content.includes(claude_md_template_1.CODEGRAPH_SECTION_START)) {
243
+ // Replace the marked section
244
+ const startIdx = content.indexOf(claude_md_template_1.CODEGRAPH_SECTION_START);
245
+ const endIdx = content.indexOf(claude_md_template_1.CODEGRAPH_SECTION_END);
246
+ if (endIdx > startIdx) {
247
+ // Replace existing marked section
248
+ const before = content.substring(0, startIdx);
249
+ const after = content.substring(endIdx + claude_md_template_1.CODEGRAPH_SECTION_END.length);
250
+ content = before + claude_md_template_1.CLAUDE_MD_TEMPLATE + after;
251
+ fs.writeFileSync(claudeMdPath, content);
252
+ return { created: false, updated: true };
253
+ }
254
+ }
255
+ // Check for unmarked "## CodeGraph" section (from manual setup)
256
+ const codegraphHeaderRegex = /\n## CodeGraph\n/;
257
+ const match = content.match(codegraphHeaderRegex);
258
+ if (match && match.index !== undefined) {
259
+ // Find the end of the CodeGraph section (next ## header or end of file)
260
+ const sectionStart = match.index;
261
+ const afterSection = content.substring(sectionStart + 1);
262
+ const nextHeaderMatch = afterSection.match(/\n## [^#]/);
263
+ let sectionEnd;
264
+ if (nextHeaderMatch && nextHeaderMatch.index !== undefined) {
265
+ sectionEnd = sectionStart + 1 + nextHeaderMatch.index;
266
+ }
267
+ else {
268
+ sectionEnd = content.length;
269
+ }
270
+ // Replace the section
271
+ const before = content.substring(0, sectionStart);
272
+ const after = content.substring(sectionEnd);
273
+ content = before + '\n' + claude_md_template_1.CLAUDE_MD_TEMPLATE + after;
274
+ fs.writeFileSync(claudeMdPath, content);
275
+ return { created: false, updated: true };
276
+ }
277
+ // No existing section, append to end
278
+ content = content.trimEnd() + '\n\n' + claude_md_template_1.CLAUDE_MD_TEMPLATE + '\n';
279
+ fs.writeFileSync(claudeMdPath, content);
280
+ return { created: false, updated: false };
281
+ }
282
+ //# sourceMappingURL=config-writer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-writer.js","sourceRoot":"","sources":["../../src/installer/config-writer.ts"],"names":[],"mappings":"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"}