contentbase 0.2.0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (360) hide show
  1. package/CNAME +1 -0
  2. package/LAUNCH-PLAN.md +419 -0
  3. package/dist/adapters/node-fs.d.ts +17 -0
  4. package/dist/adapters/node-fs.d.ts.map +1 -0
  5. package/dist/adapters/node-fs.js +71 -0
  6. package/dist/adapters/node-fs.js.map +1 -0
  7. package/dist/ast-query.d.ts +44 -0
  8. package/dist/ast-query.d.ts.map +1 -0
  9. package/dist/ast-query.js +95 -0
  10. package/dist/ast-query.js.map +1 -0
  11. package/dist/base-model.d.ts +8 -0
  12. package/dist/base-model.d.ts.map +1 -0
  13. package/dist/base-model.js +12 -0
  14. package/dist/base-model.js.map +1 -0
  15. package/dist/cli/commands/action.d.ts +2 -0
  16. package/dist/cli/commands/action.d.ts.map +1 -0
  17. package/dist/cli/commands/action.js +73 -0
  18. package/dist/cli/commands/action.js.map +1 -0
  19. package/dist/cli/commands/api/endpoints/actions.d.ts +13 -0
  20. package/dist/cli/commands/api/endpoints/actions.d.ts.map +1 -0
  21. package/dist/cli/commands/api/endpoints/actions.js +28 -0
  22. package/dist/cli/commands/api/endpoints/actions.js.map +1 -0
  23. package/dist/cli/commands/api/endpoints/doc.d.ts +5 -0
  24. package/dist/cli/commands/api/endpoints/doc.d.ts.map +1 -0
  25. package/dist/cli/commands/api/endpoints/doc.js +186 -0
  26. package/dist/cli/commands/api/endpoints/doc.js.map +1 -0
  27. package/dist/cli/commands/api/endpoints/docs-index.d.ts +8 -0
  28. package/dist/cli/commands/api/endpoints/docs-index.d.ts.map +1 -0
  29. package/dist/cli/commands/api/endpoints/docs-index.js +23 -0
  30. package/dist/cli/commands/api/endpoints/docs-index.js.map +1 -0
  31. package/dist/cli/commands/api/endpoints/document.d.ts +47 -0
  32. package/dist/cli/commands/api/endpoints/document.d.ts.map +1 -0
  33. package/dist/cli/commands/api/endpoints/document.js +146 -0
  34. package/dist/cli/commands/api/endpoints/document.js.map +1 -0
  35. package/dist/cli/commands/api/endpoints/documents.d.ts +35 -0
  36. package/dist/cli/commands/api/endpoints/documents.d.ts.map +1 -0
  37. package/dist/cli/commands/api/endpoints/documents.js +56 -0
  38. package/dist/cli/commands/api/endpoints/documents.js.map +1 -0
  39. package/dist/cli/commands/api/endpoints/index.d.ts +22 -0
  40. package/dist/cli/commands/api/endpoints/index.d.ts.map +1 -0
  41. package/dist/cli/commands/api/endpoints/index.js +38 -0
  42. package/dist/cli/commands/api/endpoints/index.js.map +1 -0
  43. package/dist/cli/commands/api/endpoints/inspect.d.ts +10 -0
  44. package/dist/cli/commands/api/endpoints/inspect.d.ts.map +1 -0
  45. package/dist/cli/commands/api/endpoints/inspect.js +15 -0
  46. package/dist/cli/commands/api/endpoints/inspect.js.map +1 -0
  47. package/dist/cli/commands/api/endpoints/models.d.ts +5 -0
  48. package/dist/cli/commands/api/endpoints/models.d.ts.map +1 -0
  49. package/dist/cli/commands/api/endpoints/models.js +9 -0
  50. package/dist/cli/commands/api/endpoints/models.js.map +1 -0
  51. package/dist/cli/commands/api/endpoints/query.d.ts +40 -0
  52. package/dist/cli/commands/api/endpoints/query.d.ts.map +1 -0
  53. package/dist/cli/commands/api/endpoints/query.js +106 -0
  54. package/dist/cli/commands/api/endpoints/query.js.map +1 -0
  55. package/dist/cli/commands/api/endpoints/root.d.ts +5 -0
  56. package/dist/cli/commands/api/endpoints/root.d.ts.map +1 -0
  57. package/dist/cli/commands/api/endpoints/root.js +7 -0
  58. package/dist/cli/commands/api/endpoints/root.js.map +1 -0
  59. package/dist/cli/commands/api/endpoints/search-reindex.d.ts +10 -0
  60. package/dist/cli/commands/api/endpoints/search-reindex.d.ts.map +1 -0
  61. package/dist/cli/commands/api/endpoints/search-reindex.js +38 -0
  62. package/dist/cli/commands/api/endpoints/search-reindex.js.map +1 -0
  63. package/dist/cli/commands/api/endpoints/search-status.d.ts +7 -0
  64. package/dist/cli/commands/api/endpoints/search-status.d.ts.map +1 -0
  65. package/dist/cli/commands/api/endpoints/search-status.js +33 -0
  66. package/dist/cli/commands/api/endpoints/search-status.js.map +1 -0
  67. package/dist/cli/commands/api/endpoints/search.d.ts +24 -0
  68. package/dist/cli/commands/api/endpoints/search.d.ts.map +1 -0
  69. package/dist/cli/commands/api/endpoints/search.js +61 -0
  70. package/dist/cli/commands/api/endpoints/search.js.map +1 -0
  71. package/dist/cli/commands/api/endpoints/semantic-search.d.ts +28 -0
  72. package/dist/cli/commands/api/endpoints/semantic-search.d.ts.map +1 -0
  73. package/dist/cli/commands/api/endpoints/semantic-search.js +76 -0
  74. package/dist/cli/commands/api/endpoints/semantic-search.js.map +1 -0
  75. package/dist/cli/commands/api/endpoints/text-search.d.ts +17 -0
  76. package/dist/cli/commands/api/endpoints/text-search.d.ts.map +1 -0
  77. package/dist/cli/commands/api/endpoints/text-search.js +55 -0
  78. package/dist/cli/commands/api/endpoints/text-search.js.map +1 -0
  79. package/dist/cli/commands/api/endpoints/validate.d.ts +12 -0
  80. package/dist/cli/commands/api/endpoints/validate.d.ts.map +1 -0
  81. package/dist/cli/commands/api/endpoints/validate.js +27 -0
  82. package/dist/cli/commands/api/endpoints/validate.js.map +1 -0
  83. package/dist/cli/commands/api/helpers.d.ts +8 -0
  84. package/dist/cli/commands/api/helpers.d.ts.map +1 -0
  85. package/dist/cli/commands/api/helpers.js +89 -0
  86. package/dist/cli/commands/api/helpers.js.map +1 -0
  87. package/dist/cli/commands/console.d.ts +2 -0
  88. package/dist/cli/commands/console.d.ts.map +1 -0
  89. package/dist/cli/commands/console.js +117 -0
  90. package/dist/cli/commands/console.js.map +1 -0
  91. package/dist/cli/commands/create.d.ts +2 -0
  92. package/dist/cli/commands/create.d.ts.map +1 -0
  93. package/dist/cli/commands/create.js +185 -0
  94. package/dist/cli/commands/create.js.map +1 -0
  95. package/dist/cli/commands/embed.d.ts +2 -0
  96. package/dist/cli/commands/embed.d.ts.map +1 -0
  97. package/dist/cli/commands/embed.js +231 -0
  98. package/dist/cli/commands/embed.js.map +1 -0
  99. package/dist/cli/commands/export.d.ts +2 -0
  100. package/dist/cli/commands/export.d.ts.map +1 -0
  101. package/dist/cli/commands/export.js +55 -0
  102. package/dist/cli/commands/export.js.map +1 -0
  103. package/dist/cli/commands/extract.d.ts +2 -0
  104. package/dist/cli/commands/extract.d.ts.map +1 -0
  105. package/dist/cli/commands/extract.js +149 -0
  106. package/dist/cli/commands/extract.js.map +1 -0
  107. package/dist/cli/commands/help.d.ts +2 -0
  108. package/dist/cli/commands/help.d.ts.map +1 -0
  109. package/dist/cli/commands/help.js +58 -0
  110. package/dist/cli/commands/help.js.map +1 -0
  111. package/dist/cli/commands/index.d.ts +18 -0
  112. package/dist/cli/commands/index.d.ts.map +1 -0
  113. package/dist/cli/commands/index.js +19 -0
  114. package/dist/cli/commands/index.js.map +1 -0
  115. package/dist/cli/commands/init.d.ts +2 -0
  116. package/dist/cli/commands/init.d.ts.map +1 -0
  117. package/dist/cli/commands/init.js +82 -0
  118. package/dist/cli/commands/init.js.map +1 -0
  119. package/dist/cli/commands/inspect.d.ts +2 -0
  120. package/dist/cli/commands/inspect.d.ts.map +1 -0
  121. package/dist/cli/commands/inspect.js +53 -0
  122. package/dist/cli/commands/inspect.js.map +1 -0
  123. package/dist/cli/commands/mcp.d.ts +2 -0
  124. package/dist/cli/commands/mcp.d.ts.map +1 -0
  125. package/dist/cli/commands/mcp.js +92 -0
  126. package/dist/cli/commands/mcp.js.map +1 -0
  127. package/dist/cli/commands/search.d.ts +2 -0
  128. package/dist/cli/commands/search.d.ts.map +1 -0
  129. package/dist/cli/commands/search.js +212 -0
  130. package/dist/cli/commands/search.js.map +1 -0
  131. package/dist/cli/commands/serve.d.ts +2 -0
  132. package/dist/cli/commands/serve.d.ts.map +1 -0
  133. package/dist/cli/commands/serve.js +298 -0
  134. package/dist/cli/commands/serve.js.map +1 -0
  135. package/dist/cli/commands/summary.d.ts +2 -0
  136. package/dist/cli/commands/summary.d.ts.map +1 -0
  137. package/dist/cli/commands/summary.js +58 -0
  138. package/dist/cli/commands/summary.js.map +1 -0
  139. package/dist/cli/commands/teach.d.ts +2 -0
  140. package/dist/cli/commands/teach.d.ts.map +1 -0
  141. package/dist/cli/commands/teach.js +80 -0
  142. package/dist/cli/commands/teach.js.map +1 -0
  143. package/dist/cli/commands/text-search.d.ts +2 -0
  144. package/dist/cli/commands/text-search.d.ts.map +1 -0
  145. package/dist/cli/commands/text-search.js +125 -0
  146. package/dist/cli/commands/text-search.js.map +1 -0
  147. package/dist/cli/commands/update.d.ts +2 -0
  148. package/dist/cli/commands/update.d.ts.map +1 -0
  149. package/dist/cli/commands/update.js +167 -0
  150. package/dist/cli/commands/update.js.map +1 -0
  151. package/dist/cli/commands/validate.d.ts +2 -0
  152. package/dist/cli/commands/validate.d.ts.map +1 -0
  153. package/dist/cli/commands/validate.js +129 -0
  154. package/dist/cli/commands/validate.js.map +1 -0
  155. package/dist/cli/index.d.ts +3 -0
  156. package/dist/cli/index.d.ts.map +1 -0
  157. package/dist/cli/index.js +84 -0
  158. package/dist/cli/index.js.map +1 -0
  159. package/dist/cli/load-collection.d.ts +7 -0
  160. package/dist/cli/load-collection.d.ts.map +1 -0
  161. package/dist/cli/load-collection.js +201 -0
  162. package/dist/cli/load-collection.js.map +1 -0
  163. package/dist/cli/registry.d.ts +17 -0
  164. package/dist/cli/registry.d.ts.map +1 -0
  165. package/dist/cli/registry.js +16 -0
  166. package/dist/cli/registry.js.map +1 -0
  167. package/dist/cnotes +0 -0
  168. package/dist/collection.d.ts +145 -0
  169. package/dist/collection.d.ts.map +1 -0
  170. package/dist/collection.js +684 -0
  171. package/dist/collection.js.map +1 -0
  172. package/dist/define-model.d.ts +45 -0
  173. package/dist/define-model.d.ts.map +1 -0
  174. package/dist/define-model.js +106 -0
  175. package/dist/define-model.js.map +1 -0
  176. package/dist/document.d.ts +119 -0
  177. package/dist/document.d.ts.map +1 -0
  178. package/dist/document.js +418 -0
  179. package/dist/document.js.map +1 -0
  180. package/dist/extract-sections.d.ts +46 -0
  181. package/dist/extract-sections.d.ts.map +1 -0
  182. package/dist/extract-sections.js +153 -0
  183. package/dist/extract-sections.js.map +1 -0
  184. package/dist/index.d.ts +28 -0
  185. package/dist/index.d.ts.map +1 -0
  186. package/dist/index.js +31 -0
  187. package/dist/index.js.map +1 -0
  188. package/dist/mcp/helpers.d.ts +14 -0
  189. package/dist/mcp/helpers.d.ts.map +1 -0
  190. package/dist/mcp/helpers.js +7 -0
  191. package/dist/mcp/helpers.js.map +1 -0
  192. package/dist/mcp/model-info.d.ts +2 -0
  193. package/dist/mcp/model-info.d.ts.map +1 -0
  194. package/dist/mcp/model-info.js +94 -0
  195. package/dist/mcp/model-info.js.map +1 -0
  196. package/dist/mcp/prompts.d.ts +2 -0
  197. package/dist/mcp/prompts.d.ts.map +1 -0
  198. package/dist/mcp/prompts.js +180 -0
  199. package/dist/mcp/prompts.js.map +1 -0
  200. package/dist/mcp/readme.d.ts +2 -0
  201. package/dist/mcp/readme.d.ts.map +1 -0
  202. package/dist/mcp/readme.js +71 -0
  203. package/dist/mcp/readme.js.map +1 -0
  204. package/dist/mcp/resources.d.ts +2 -0
  205. package/dist/mcp/resources.d.ts.map +1 -0
  206. package/dist/mcp/resources.js +85 -0
  207. package/dist/mcp/resources.js.map +1 -0
  208. package/dist/mcp/server.d.ts +18 -0
  209. package/dist/mcp/server.d.ts.map +1 -0
  210. package/dist/mcp/server.js +83 -0
  211. package/dist/mcp/server.js.map +1 -0
  212. package/dist/mcp/tools/mutation.d.ts +2 -0
  213. package/dist/mcp/tools/mutation.d.ts.map +1 -0
  214. package/dist/mcp/tools/mutation.js +155 -0
  215. package/dist/mcp/tools/mutation.js.map +1 -0
  216. package/dist/mcp/tools/query.d.ts +2 -0
  217. package/dist/mcp/tools/query.d.ts.map +1 -0
  218. package/dist/mcp/tools/query.js +130 -0
  219. package/dist/mcp/tools/query.js.map +1 -0
  220. package/dist/mcp/tools/search.d.ts +2 -0
  221. package/dist/mcp/tools/search.d.ts.map +1 -0
  222. package/dist/mcp/tools/search.js +168 -0
  223. package/dist/mcp/tools/search.js.map +1 -0
  224. package/dist/model-instance.d.ts +11 -0
  225. package/dist/model-instance.d.ts.map +1 -0
  226. package/dist/model-instance.js +208 -0
  227. package/dist/model-instance.js.map +1 -0
  228. package/dist/node-shortcuts.d.ts +25 -0
  229. package/dist/node-shortcuts.d.ts.map +1 -0
  230. package/dist/node-shortcuts.js +67 -0
  231. package/dist/node-shortcuts.js.map +1 -0
  232. package/dist/parse.d.ts +45 -0
  233. package/dist/parse.d.ts.map +1 -0
  234. package/dist/parse.js +98 -0
  235. package/dist/parse.js.map +1 -0
  236. package/dist/query/collection-query.d.ts +39 -0
  237. package/dist/query/collection-query.d.ts.map +1 -0
  238. package/dist/query/collection-query.js +184 -0
  239. package/dist/query/collection-query.js.map +1 -0
  240. package/dist/query/index.d.ts +8 -0
  241. package/dist/query/index.d.ts.map +1 -0
  242. package/dist/query/index.js +5 -0
  243. package/dist/query/index.js.map +1 -0
  244. package/dist/query/operators.d.ts +3 -0
  245. package/dist/query/operators.d.ts.map +1 -0
  246. package/dist/query/operators.js +18 -0
  247. package/dist/query/operators.js.map +1 -0
  248. package/dist/query/query-builder.d.ts +34 -0
  249. package/dist/query/query-builder.d.ts.map +1 -0
  250. package/dist/query/query-builder.js +84 -0
  251. package/dist/query/query-builder.js.map +1 -0
  252. package/dist/query/query-dsl.d.ts +36 -0
  253. package/dist/query/query-dsl.d.ts.map +1 -0
  254. package/dist/query/query-dsl.js +195 -0
  255. package/dist/query/query-dsl.js.map +1 -0
  256. package/dist/relationships/belongs-to.d.ts +9 -0
  257. package/dist/relationships/belongs-to.d.ts.map +1 -0
  258. package/dist/relationships/belongs-to.js +34 -0
  259. package/dist/relationships/belongs-to.js.map +1 -0
  260. package/dist/relationships/has-many.d.ts +23 -0
  261. package/dist/relationships/has-many.d.ts.map +1 -0
  262. package/dist/relationships/has-many.js +136 -0
  263. package/dist/relationships/has-many.js.map +1 -0
  264. package/dist/relationships/index.d.ts +26 -0
  265. package/dist/relationships/index.d.ts.map +1 -0
  266. package/dist/relationships/index.js +32 -0
  267. package/dist/relationships/index.js.map +1 -0
  268. package/dist/relationships/types.d.ts +2 -0
  269. package/dist/relationships/types.d.ts.map +1 -0
  270. package/dist/relationships/types.js +2 -0
  271. package/dist/relationships/types.js.map +1 -0
  272. package/dist/search/document-inputs.d.ts +30 -0
  273. package/dist/search/document-inputs.d.ts.map +1 -0
  274. package/dist/search/document-inputs.js +52 -0
  275. package/dist/search/document-inputs.js.map +1 -0
  276. package/dist/search/luca-semantic-search.d.ts +27 -0
  277. package/dist/search/luca-semantic-search.d.ts.map +1 -0
  278. package/dist/search/luca-semantic-search.js +56 -0
  279. package/dist/search/luca-semantic-search.js.map +1 -0
  280. package/dist/section.d.ts +21 -0
  281. package/dist/section.d.ts.map +1 -0
  282. package/dist/section.js +21 -0
  283. package/dist/section.js.map +1 -0
  284. package/dist/types.d.ts +185 -0
  285. package/dist/types.d.ts.map +1 -0
  286. package/dist/types.js +2 -0
  287. package/dist/types.js.map +1 -0
  288. package/dist/utils/index.d.ts +9 -0
  289. package/dist/utils/index.d.ts.map +1 -0
  290. package/dist/utils/index.js +8 -0
  291. package/dist/utils/index.js.map +1 -0
  292. package/dist/utils/inflect.d.ts +6 -0
  293. package/dist/utils/inflect.d.ts.map +1 -0
  294. package/dist/utils/inflect.js +75 -0
  295. package/dist/utils/inflect.js.map +1 -0
  296. package/dist/utils/match-pattern.d.ts +25 -0
  297. package/dist/utils/match-pattern.d.ts.map +1 -0
  298. package/dist/utils/match-pattern.js +52 -0
  299. package/dist/utils/match-pattern.js.map +1 -0
  300. package/dist/utils/normalize-headings.d.ts +8 -0
  301. package/dist/utils/normalize-headings.d.ts.map +1 -0
  302. package/dist/utils/normalize-headings.js +19 -0
  303. package/dist/utils/normalize-headings.js.map +1 -0
  304. package/dist/utils/parse-table.d.ts +7 -0
  305. package/dist/utils/parse-table.d.ts.map +1 -0
  306. package/dist/utils/parse-table.js +17 -0
  307. package/dist/utils/parse-table.js.map +1 -0
  308. package/dist/utils/read-directory.d.ts +5 -0
  309. package/dist/utils/read-directory.d.ts.map +1 -0
  310. package/dist/utils/read-directory.js +29 -0
  311. package/dist/utils/read-directory.js.map +1 -0
  312. package/dist/utils/stringify-ast.d.ts +6 -0
  313. package/dist/utils/stringify-ast.d.ts.map +1 -0
  314. package/dist/utils/stringify-ast.js +8 -0
  315. package/dist/utils/stringify-ast.js.map +1 -0
  316. package/dist/utils/strip-markdown.d.ts +11 -0
  317. package/dist/utils/strip-markdown.d.ts.map +1 -0
  318. package/dist/utils/strip-markdown.js +48 -0
  319. package/dist/utils/strip-markdown.js.map +1 -0
  320. package/dist/validator.d.ts +10 -0
  321. package/dist/validator.d.ts.map +1 -0
  322. package/dist/validator.js +55 -0
  323. package/dist/validator.js.map +1 -0
  324. package/index.html +1636 -0
  325. package/package.json +5 -4
  326. package/src/adapters/node-fs.ts +80 -0
  327. package/src/cli/commands/api/endpoints/doc.ts +2 -2
  328. package/src/cli/commands/api/endpoints/document.ts +2 -2
  329. package/src/cli/commands/api/endpoints/search-reindex.ts +6 -25
  330. package/src/cli/commands/api/endpoints/search-status.ts +3 -20
  331. package/src/cli/commands/api/endpoints/search.ts +3 -33
  332. package/src/cli/commands/api/endpoints/semantic-search.ts +3 -33
  333. package/src/cli/commands/embed.ts +8 -81
  334. package/src/cli/commands/mcp.ts +5 -1128
  335. package/src/cli/commands/search.ts +4 -76
  336. package/src/cli/commands/serve.ts +7 -32
  337. package/src/cli/index.ts +1 -1
  338. package/src/cli/load-collection.ts +2 -2
  339. package/src/collection.ts +31 -30
  340. package/src/document.ts +18 -0
  341. package/src/extract-sections.ts +3 -0
  342. package/src/index.ts +10 -0
  343. package/src/mcp/helpers.ts +7 -0
  344. package/src/mcp/model-info.ts +102 -0
  345. package/src/mcp/prompts.ts +199 -0
  346. package/src/mcp/readme.ts +153 -0
  347. package/src/mcp/resources.ts +89 -0
  348. package/src/mcp/server.ts +103 -0
  349. package/src/mcp/tools/mutation.ts +176 -0
  350. package/src/mcp/tools/query.ts +141 -0
  351. package/src/mcp/tools/search.ts +180 -0
  352. package/src/parse.ts +5 -0
  353. package/src/query/query-dsl.ts +1 -1
  354. package/src/relationships/has-many.ts +2 -2
  355. package/src/search/document-inputs.ts +85 -0
  356. package/src/search/luca-semantic-search.ts +75 -0
  357. package/src/types.ts +54 -0
  358. package/src/utils/index.ts +2 -0
  359. package/src/utils/match-pattern.ts +2 -2
  360. package/src/utils/strip-markdown.ts +59 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../src/cli/commands/extract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,SAAS,MAAM,WAAW,CAAA;AACjC,OAAO,IAAI,MAAM,SAAS,CAAA;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAG3D,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACxB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACxB,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACvC,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAC/C,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACrC,CAAC,CAAA;AAEF,KAAK,UAAU,OAAO,CAAC,OAAmC,EAAE,OAA2B;IACrF,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC;QACtC,aAAa,EAAE,OAAO,CAAC,aAAa;KACrC,CAAC,CAAA;IAEF,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAuB,CAAA;IAChE,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,+DAA+D,CAAC,CAAA;QAC9E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAA;IACjD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAA;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,MAAM,YAAY,GAAG,WAAW;SAC7B,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACpB,MAAM,CAAC,OAAO,CAAC,CAAA;IAClB,MAAM,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAA;IAC9C,MAAM,WAAW,GAAG,OAAO,CAAC,mBAAmB,CAAA;IAC/C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,CAAC,CAAA;IAExC,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,CAAA;IACjC,MAAM,WAAW,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;IAEpE,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,KAAK,CAAC,yBAAyB,MAAM,EAAE,CAAC,CAAA;QAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,MAAM,QAAQ,GAAkB,EAAE,CAAA;IAElC,IAAI,KAAK,EAAE,CAAC;QACV,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,CAAC;YACR,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;SAChC,CAAC,CAAA;IACf,CAAC;IAED,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QAEnC,IAAI,kBAAkB,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3D,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;aAC3B,CAAC,CAAA;QACX,CAAC;QAED,MAAM,QAAQ,GAAkB,EAAE,CAAA;QAElC,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,CAAA;QACxC,IAAI,SAAS,EAAE,CAAC;YACd,QAAQ,CAAC,IAAI,CAAC,SAAwB,CAAC,CAAA;QACzC,CAAC;QAED,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,yBAAyB,CAAA;QACnD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,QAAQ,CAAC,IAAI,CAAC,GAAI,OAAyB,CAAC,CAAA;QAC9C,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;gBAC7C,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5B,QAAQ,CAAC,IAAI,CAAC,GAAI,YAA8B,CAAC,CAAA;gBACnD,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,2BAA2B;YAC7B,CAAC;QACH,CAAC;QAED,IAAI,CAAC,WAAW,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAC9B,CAAC,CAAC,EAAgB,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAC1C,CAAA;YACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;gBAC1D,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBACjC,MAAM,KAAK,GAAG,WAAW,GAAG,QAAQ,CAAA;gBACpC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;oBAChB,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;wBACzB,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,CAM7C,CAAA;oBACP,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAA;IAC5B,CAAC;IAED,MAAM,WAAW,GAAS,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAA;IAC9D,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;AAC/C,CAAC;AAED,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE;IAC3B,WAAW,EAAE,0CAA0C;IACvD,KAAK,EAAE,QAAQ;IACf,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6CP;IACC,UAAU;IACV,OAAO;CACR,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=help.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/help.ts"],"names":[],"mappings":""}
@@ -0,0 +1,58 @@
1
+ import { commands } from '../registry.js';
2
+ async function handler(_options, context) {
3
+ const ui = context.container.feature('ui');
4
+ const lines = [
5
+ '# cnotes',
6
+ '',
7
+ 'An ORM for structured Markdown/MDX files.',
8
+ '',
9
+ '## Usage',
10
+ '',
11
+ '```',
12
+ 'cnotes <command> [options]',
13
+ '```',
14
+ '',
15
+ '## Commands',
16
+ '',
17
+ '| Command | Description |',
18
+ '|---------|-------------|',
19
+ ];
20
+ for (const name of commands.available) {
21
+ const def = commands.get(name);
22
+ const label = def.usage ? `${name} ${def.usage}` : name;
23
+ lines.push(`| \`${label}\` | ${def.description} |`);
24
+ }
25
+ lines.push('', '## Global Options', '', '| Option | Description |', '|--------|-------------|', '| `--help`, `-h` | Show help for a command |', '| `--contentFolder` | Path to content folder (most commands) |', '', '## Getting Help', '', '```bash', '# Show this overview', 'cnotes help', '', '# Show detailed help for a command', 'cnotes help serve', 'cnotes serve --help', '```');
26
+ console.log(ui.markdown(lines.join('\n')));
27
+ }
28
+ commands.register('help', {
29
+ description: 'Show available commands',
30
+ help: `# cnotes help
31
+
32
+ Show available commands and usage information.
33
+
34
+ ## Usage
35
+
36
+ \`\`\`
37
+ cnotes help [command]
38
+ \`\`\`
39
+
40
+ ## Arguments
41
+
42
+ | Argument | Description |
43
+ |----------|-------------|
44
+ | \`command\` | Show detailed help for a specific command |
45
+
46
+ ## Examples
47
+
48
+ \`\`\`bash
49
+ # Show all commands
50
+ cnotes help
51
+
52
+ # Show help for the serve command
53
+ cnotes help serve
54
+ \`\`\`
55
+ `,
56
+ handler,
57
+ });
58
+ //# sourceMappingURL=help.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help.js","sourceRoot":"","sources":["../../../src/cli/commands/help.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,KAAK,UAAU,OAAO,CAAC,QAAa,EAAE,OAA2B;IAC/D,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAE1C,MAAM,KAAK,GAAa;QACtB,UAAU;QACV,EAAE;QACF,2CAA2C;QAC3C,EAAE;QACF,UAAU;QACV,EAAE;QACF,KAAK;QACL,4BAA4B;QAC5B,KAAK;QACL,EAAE;QACF,aAAa;QACb,EAAE;QACF,2BAA2B;QAC3B,2BAA2B;KAC5B,CAAA;IAED,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAE,CAAA;QAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;QACvD,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,QAAQ,GAAG,CAAC,WAAW,IAAI,CAAC,CAAA;IACrD,CAAC;IAED,KAAK,CAAC,IAAI,CACR,EAAE,EACF,mBAAmB,EACnB,EAAE,EACF,0BAA0B,EAC1B,0BAA0B,EAC1B,8CAA8C,EAC9C,gEAAgE,EAChE,EAAE,EACF,iBAAiB,EACjB,EAAE,EACF,SAAS,EACT,sBAAsB,EACtB,aAAa,EACb,EAAE,EACF,oCAAoC,EACpC,mBAAmB,EACnB,qBAAqB,EACrB,KAAK,CACN,CAAA;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AAC5C,CAAC;AAED,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE;IACxB,WAAW,EAAE,yBAAyB;IACtC,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;CAyBP;IACC,OAAO;CACR,CAAC,CAAA"}
@@ -0,0 +1,18 @@
1
+ import './init.js';
2
+ import './create.js';
3
+ import './inspect.js';
4
+ import './validate.js';
5
+ import './export.js';
6
+ import './action.js';
7
+ import './summary.js';
8
+ import './teach.js';
9
+ import './extract.js';
10
+ import './mcp.js';
11
+ import './serve.js';
12
+ import './console.js';
13
+ import './help.js';
14
+ import './text-search.js';
15
+ import './search.js';
16
+ import './embed.js';
17
+ import './update.js';
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,CAAA;AAClB,OAAO,aAAa,CAAA;AACpB,OAAO,cAAc,CAAA;AACrB,OAAO,eAAe,CAAA;AACtB,OAAO,aAAa,CAAA;AACpB,OAAO,aAAa,CAAA;AACpB,OAAO,cAAc,CAAA;AACrB,OAAO,YAAY,CAAA;AACnB,OAAO,cAAc,CAAA;AACrB,OAAO,UAAU,CAAA;AACjB,OAAO,YAAY,CAAA;AACnB,OAAO,cAAc,CAAA;AACrB,OAAO,WAAW,CAAA;AAClB,OAAO,kBAAkB,CAAA;AACzB,OAAO,aAAa,CAAA;AACpB,OAAO,YAAY,CAAA;AACnB,OAAO,aAAa,CAAA"}
@@ -0,0 +1,19 @@
1
+ // Side-effect imports register each command
2
+ import './init.js';
3
+ import './create.js';
4
+ import './inspect.js';
5
+ import './validate.js';
6
+ import './export.js';
7
+ import './action.js';
8
+ import './summary.js';
9
+ import './teach.js';
10
+ import './extract.js';
11
+ import './mcp.js';
12
+ import './serve.js';
13
+ import './console.js';
14
+ import './help.js';
15
+ import './text-search.js';
16
+ import './search.js';
17
+ import './embed.js';
18
+ import './update.js';
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA,4CAA4C;AAC5C,OAAO,WAAW,CAAA;AAClB,OAAO,aAAa,CAAA;AACpB,OAAO,cAAc,CAAA;AACrB,OAAO,eAAe,CAAA;AACtB,OAAO,aAAa,CAAA;AACpB,OAAO,aAAa,CAAA;AACpB,OAAO,cAAc,CAAA;AACrB,OAAO,YAAY,CAAA;AACnB,OAAO,cAAc,CAAA;AACrB,OAAO,UAAU,CAAA;AACjB,OAAO,YAAY,CAAA;AACnB,OAAO,cAAc,CAAA;AACrB,OAAO,WAAW,CAAA;AAClB,OAAO,kBAAkB,CAAA;AACzB,OAAO,aAAa,CAAA;AACpB,OAAO,YAAY,CAAA;AACnB,OAAO,aAAa,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=init.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":""}
@@ -0,0 +1,82 @@
1
+ import fs from 'fs/promises';
2
+ import path from 'path';
3
+ import { commands } from '../registry.js';
4
+ async function handler(_options, context) {
5
+ const name = context.container.argv._[1] || 'my-content';
6
+ const dir = path.resolve(process.cwd(), name);
7
+ await fs.mkdir(dir, { recursive: true });
8
+ await fs.mkdir(path.join(dir, 'posts'), { recursive: true });
9
+ await fs.writeFile(path.join(dir, 'models.ts'), `import { defineModel, z } from "contentbase";
10
+
11
+ export const Post = defineModel("Post", {
12
+ prefix: "posts",
13
+ meta: z.object({
14
+ status: z.enum(["draft", "published"]).default("draft"),
15
+ author: z.string().optional(),
16
+ }),
17
+ });
18
+ `, 'utf8');
19
+ await fs.writeFile(path.join(dir, 'posts', 'hello-world.md'), `---
20
+ status: draft
21
+ author: me
22
+ ---
23
+
24
+ # Hello World
25
+
26
+ Welcome to your contentbase project!
27
+ `, 'utf8');
28
+ await fs.writeFile(path.join(dir, 'index.ts'), `import { Collection } from "contentbase";
29
+ import { Post } from "./models";
30
+
31
+ export const collection = new Collection({
32
+ rootPath: import.meta.dir,
33
+ });
34
+
35
+ collection.register(Post);
36
+ `, 'utf8');
37
+ console.log(`Created contentbase project at ${dir}`);
38
+ console.log(` ${name}/models.ts`);
39
+ console.log(` ${name}/index.ts`);
40
+ console.log(` ${name}/posts/hello-world.md`);
41
+ }
42
+ commands.register('init', {
43
+ description: 'Initialize a new contentbase project',
44
+ usage: '[name]',
45
+ help: `# cnotes init
46
+
47
+ Scaffold a new contentbase project with a sample model and document.
48
+
49
+ ## Usage
50
+
51
+ \`\`\`
52
+ cnotes init [name]
53
+ \`\`\`
54
+
55
+ ## Arguments
56
+
57
+ | Argument | Description | Default |
58
+ |----------|-------------|---------|
59
+ | \`name\` | Directory name for the project | \`my-content\` |
60
+
61
+ ## What It Creates
62
+
63
+ - \`<name>/models.ts\` — Model definitions with a sample Post model
64
+ - \`<name>/index.ts\` — Collection entry point
65
+ - \`<name>/posts/hello-world.md\` — Sample document
66
+
67
+ ## Examples
68
+
69
+ \`\`\`bash
70
+ # Create with default name
71
+ cnotes init
72
+
73
+ # Create with custom name
74
+ cnotes init docs
75
+
76
+ # Create in a subdirectory
77
+ cnotes init content/blog
78
+ \`\`\`
79
+ `,
80
+ handler,
81
+ });
82
+ //# sourceMappingURL=init.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,aAAa,CAAA;AAC5B,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,KAAK,UAAU,OAAO,CAAC,QAAa,EAAE,OAA2B;IAC/D,MAAM,IAAI,GAAI,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAY,IAAI,YAAY,CAAA;IACpE,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAA;IAE7C,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IACxC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAE5D,MAAM,EAAE,CAAC,SAAS,CAChB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,EAC3B;;;;;;;;;CASH,EACG,MAAM,CACP,CAAA;IAED,MAAM,EAAE,CAAC,SAAS,CAChB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,gBAAgB,CAAC,EACzC;;;;;;;;CAQH,EACG,MAAM,CACP,CAAA;IAED,MAAM,EAAE,CAAC,SAAS,CAChB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,EAC1B;;;;;;;;CAQH,EACG,MAAM,CACP,CAAA;IAED,OAAO,CAAC,GAAG,CAAC,kCAAkC,GAAG,EAAE,CAAC,CAAA;IACpD,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,YAAY,CAAC,CAAA;IAClC,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,WAAW,CAAC,CAAA;IACjC,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,uBAAuB,CAAC,CAAA;AAC/C,CAAC;AAED,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE;IACxB,WAAW,EAAE,sCAAsC;IACnD,KAAK,EAAE,QAAQ;IACf,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkCP;IACC,OAAO;CACR,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=inspect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/inspect.ts"],"names":[],"mappings":""}
@@ -0,0 +1,53 @@
1
+ import { z } from 'zod';
2
+ import { commands } from '../registry.js';
3
+ import { loadCollection } from '../load-collection.js';
4
+ const argsSchema = z.object({
5
+ contentFolder: z.string().optional(),
6
+ });
7
+ async function handler(options) {
8
+ const collection = await loadCollection({
9
+ contentFolder: options.contentFolder,
10
+ });
11
+ console.log(collection.generateModelSummary());
12
+ }
13
+ commands.register('inspect', {
14
+ description: 'Display collection info and registered models',
15
+ help: `# cnotes inspect
16
+
17
+ Display a summary of the collection: registered models, their fields, sections, relationships, and document counts.
18
+
19
+ ## Usage
20
+
21
+ \`\`\`
22
+ cnotes inspect [options]
23
+ \`\`\`
24
+
25
+ ## Options
26
+
27
+ | Option | Description |
28
+ |--------|-------------|
29
+ | \`--contentFolder\` | Path to content folder |
30
+
31
+ ## Output
32
+
33
+ Shows for each model:
34
+ - Prefix and document count
35
+ - Meta field definitions (name, type, required, default)
36
+ - Section headings
37
+ - Relationships (belongsTo, hasMany)
38
+ - Computed properties and named scopes
39
+
40
+ ## Examples
41
+
42
+ \`\`\`bash
43
+ # Inspect current directory's collection
44
+ cnotes inspect
45
+
46
+ # Inspect a specific content folder
47
+ cnotes inspect --contentFolder test/fixtures/sdlc
48
+ \`\`\`
49
+ `,
50
+ argsSchema,
51
+ handler,
52
+ });
53
+ //# sourceMappingURL=inspect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../../src/cli/commands/inspect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAEtD,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACrC,CAAC,CAAA;AAEF,KAAK,UAAU,OAAO,CAAC,OAAmC;IACxD,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC;QACtC,aAAa,EAAE,OAAO,CAAC,aAAa;KACrC,CAAC,CAAA;IAEF,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,oBAAoB,EAAE,CAAC,CAAA;AAChD,CAAC;AAED,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE;IAC3B,WAAW,EAAE,+CAA+C;IAC5D,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkCP;IACC,UAAU;IACV,OAAO;CACR,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=mcp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/mcp.ts"],"names":[],"mappings":""}
@@ -0,0 +1,92 @@
1
+ import { z } from 'zod';
2
+ import { commands } from '../registry.js';
3
+ import { startMcpServer } from '../../mcp/server.js';
4
+ const argsSchema = z.object({
5
+ transport: z.enum(['stdio', 'http']).default('stdio'),
6
+ port: z.number().default(3003),
7
+ contentFolder: z.string().optional(),
8
+ modulePath: z.string().optional(),
9
+ mcpCompat: z.enum(['standard', 'codex']).optional(),
10
+ stdioCompat: z.enum(['standard', 'codex', 'auto']).optional(),
11
+ watch: z.boolean().default(true),
12
+ });
13
+ async function handler(options, context) {
14
+ const container = context.container;
15
+ // Resolve content folder: positional arg > --contentFolder > ./docs
16
+ const positionalFolder = container.argv._[1];
17
+ const contentFolder = positionalFolder || options.contentFolder || undefined;
18
+ const modulePath = options.modulePath || undefined;
19
+ await startMcpServer(container, {
20
+ transport: options.transport,
21
+ port: options.port,
22
+ contentFolder,
23
+ modulePath,
24
+ mcpCompat: options.mcpCompat,
25
+ stdioCompat: options.stdioCompat,
26
+ watch: options.watch,
27
+ });
28
+ }
29
+ commands.register('mcp', {
30
+ description: 'Start an MCP server for AI agents to query and manage structured markdown content',
31
+ help: `# cnotes mcp
32
+
33
+ Start an MCP (Model Context Protocol) server that exposes collection tools, resources, and prompts for AI agents. Supports both stdio and HTTP transports.
34
+
35
+ ## Usage
36
+
37
+ \`\`\`
38
+ cnotes mcp [contentFolder] [options]
39
+ \`\`\`
40
+
41
+ ## Arguments
42
+
43
+ | Argument | Description |
44
+ |----------|-------------|
45
+ | \`contentFolder\` | Path to content folder (positional or via \`--contentFolder\`) |
46
+
47
+ ## Options
48
+
49
+ | Option | Default | Description |
50
+ |--------|---------|-------------|
51
+ | \`--transport\` | \`stdio\` | Transport mode: \`stdio\` or \`http\` |
52
+ | \`--port\` | \`3003\` | Port for HTTP transport |
53
+ | \`--mcpCompat\` | \`standard\` | HTTP compatibility profile: \`standard\` or \`codex\` (or set \`MCP_HTTP_COMPAT\`) |
54
+ | \`--stdioCompat\` | \`standard\` | Stdio framing profile: \`standard\`, \`codex\`, or \`auto\` (or set \`MCP_STDIO_COMPAT\`) |
55
+ | \`--modulePath\` | | Path to collection entry module |
56
+ | \`--contentFolder\` | | Path to content folder |
57
+ | \`--disable-watch\` | \`false\` | Disable file watching for automatic collection refresh |
58
+
59
+ ## Exposed Capabilities
60
+
61
+ **Tools:** read_me, inspect, get_model_info, list_documents, query, search_content, text_search, keyword_search, semantic_search, hybrid_search, validate, create_document, update_document, update_section, delete_document, run_action
62
+
63
+ **Resources:** schema, table of contents, models summary, primer, per-document resources
64
+
65
+ **Prompts:** create-<model>, review-document, teach, query-guide
66
+
67
+ ## Examples
68
+
69
+ \`\`\`bash
70
+ # Start with stdio (for Claude Desktop, Cursor, etc.)
71
+ cnotes mcp
72
+
73
+ # Start with HTTP transport
74
+ cnotes mcp --transport http --port 3003
75
+
76
+ # Start with Codex HTTP compatibility mode
77
+ cnotes mcp --transport http --port 3003 --mcpCompat codex
78
+
79
+ # Start with Codex stdio framing mode
80
+ cnotes mcp --stdioCompat codex
81
+
82
+ # Serve a specific content folder
83
+ cnotes mcp ./docs
84
+
85
+ # Use in claude_desktop_config.json
86
+ # { "command": "cnotes", "args": ["mcp", "./docs"] }
87
+ \`\`\`
88
+ `,
89
+ argsSchema,
90
+ handler,
91
+ });
92
+ //# sourceMappingURL=mcp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../../src/cli/commands/mcp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1B,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IACrD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC9B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE;IACnD,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC7D,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;CACjC,CAAC,CAAA;AAEF,KAAK,UAAU,OAAO,CAAC,OAAmC,EAAE,OAA2B;IACrF,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;IAEnC,oEAAoE;IACpE,MAAM,gBAAgB,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAuB,CAAA;IAClE,MAAM,aAAa,GAAG,gBAAgB,IAAI,OAAO,CAAC,aAAa,IAAI,SAAS,CAAA;IAC5E,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,SAAS,CAAA;IAElD,MAAM,cAAc,CAAC,SAAS,EAAE;QAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,aAAa;QACb,UAAU;QACV,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC,CAAA;AACJ,CAAC;AAED,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE;IACvB,WAAW,EAAE,mFAAmF;IAChG,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDP;IACC,UAAU;IACV,OAAO;CACR,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/search.ts"],"names":[],"mappings":""}
@@ -0,0 +1,212 @@
1
+ import { z } from 'zod';
2
+ import path from 'node:path';
3
+ import { commands } from '../registry.js';
4
+ import { loadCollection } from '../load-collection.js';
5
+ import { collectDocumentInputs } from '../../search/document-inputs.js';
6
+ import { getInitializedSemanticSearch, hasSearchIndex } from '../../search/luca-semantic-search.js';
7
+ const argsSchema = z.object({
8
+ mode: z.enum(['hybrid', 'keyword', 'vector']).default('hybrid'),
9
+ model: z.string().optional(),
10
+ where: z.string().optional(),
11
+ n: z.number().default(10),
12
+ json: z.boolean().default(false),
13
+ full: z.boolean().default(false),
14
+ bootstrap: z.boolean().default(false),
15
+ contentFolder: z.string().optional(),
16
+ });
17
+ async function buildIndex(container, collection) {
18
+ const ss = await getInitializedSemanticSearch(container, collection.rootPath);
19
+ const docs = collectDocumentInputs(collection);
20
+ const toIndex = docs.filter((doc) => ss.needsReindex(doc));
21
+ ss.removeStale(docs.map((d) => d.pathId));
22
+ if (toIndex.length === 0) {
23
+ console.error('Index is up to date.');
24
+ return ss;
25
+ }
26
+ console.error(`Indexing ${toIndex.length} document(s)...`);
27
+ const batchSize = 5;
28
+ for (let i = 0; i < toIndex.length; i += batchSize) {
29
+ const batch = toIndex.slice(i, i + batchSize);
30
+ await ss.indexDocuments(batch);
31
+ console.error(` ${Math.min(i + batchSize, toIndex.length)}/${toIndex.length}`);
32
+ }
33
+ console.error('Index ready.');
34
+ return ss;
35
+ }
36
+ async function handler(options, { container }) {
37
+ const ui = container.feature('ui');
38
+ const query = container.argv._[1];
39
+ if (!query) {
40
+ console.error('Usage: cnotes search <query> [options]');
41
+ console.error(' --mode hybrid|keyword|vector (default: hybrid)');
42
+ console.error(' --model Filter by model name');
43
+ console.error(' --where Metadata filter, e.g. "status=approved"');
44
+ console.error(' -n Max results (default: 10)');
45
+ console.error(' --json Output as JSON');
46
+ console.error(' --full Include full document content');
47
+ console.error(' --bootstrap Build index if missing, then search');
48
+ process.exit(1);
49
+ }
50
+ const collection = await loadCollection({
51
+ contentFolder: options.contentFolder,
52
+ });
53
+ if (!hasSearchIndex(collection.rootPath) && !options.bootstrap) {
54
+ console.error('No search index found. Run: cnotes embed');
55
+ process.exit(1);
56
+ }
57
+ let ss;
58
+ if (options.bootstrap && !hasSearchIndex(collection.rootPath)) {
59
+ ss = await buildIndex(container, collection);
60
+ }
61
+ else {
62
+ ss = await getInitializedSemanticSearch(container, collection.rootPath);
63
+ }
64
+ // Parse where clause: "key=value,key2=value2"
65
+ let where;
66
+ if (options.where) {
67
+ where = {};
68
+ for (const pair of options.where.split(',')) {
69
+ const [key, ...rest] = pair.split('=');
70
+ if (key && rest.length > 0) {
71
+ where[key.trim()] = rest.join('=').trim();
72
+ }
73
+ }
74
+ }
75
+ const searchOptions = {
76
+ limit: options.n,
77
+ model: options.model,
78
+ where,
79
+ };
80
+ let results;
81
+ switch (options.mode) {
82
+ case 'keyword':
83
+ results = await ss.search(query, searchOptions);
84
+ break;
85
+ case 'vector':
86
+ results = await ss.vectorSearch(query, searchOptions);
87
+ break;
88
+ case 'hybrid':
89
+ default:
90
+ results = await ss.hybridSearch(query, searchOptions);
91
+ break;
92
+ }
93
+ if (options.json) {
94
+ if (options.full) {
95
+ for (const r of results) {
96
+ try {
97
+ const doc = collection.document(r.pathId);
98
+ r.content = doc.content;
99
+ }
100
+ catch { }
101
+ }
102
+ }
103
+ console.log(JSON.stringify(results, null, 2));
104
+ return;
105
+ }
106
+ if (results.length === 0) {
107
+ console.log('No results found.');
108
+ return;
109
+ }
110
+ const colors = ui.colors;
111
+ const cols = process.stdout.columns || 80;
112
+ const pad = ' ';
113
+ const maxSnippet = cols - pad.length - 2;
114
+ for (let i = 0; i < results.length; i++) {
115
+ const r = results[i];
116
+ const title = r.title || r.pathId;
117
+ console.log(`${colors.dim(`${i + 1}.`)} ${colors.bold(title)}`);
118
+ let relPath = r.pathId;
119
+ try {
120
+ relPath = path.relative(process.cwd(), collection.document(r.pathId).path);
121
+ }
122
+ catch { }
123
+ console.log(`${pad}${colors.cyan(relPath)}`);
124
+ if (r.snippet) {
125
+ let snippet = r.snippet
126
+ .replace(/>>>/g, '').replace(/<<</g, '')
127
+ .replace(/\n/g, ' ').replace(/\s+/g, ' ')
128
+ .replace(/[`*_~\[\]]/g, '').trim();
129
+ if (r.matchedSection)
130
+ snippet = `${r.matchedSection} — ${snippet}`;
131
+ if (snippet.length > maxSnippet)
132
+ snippet = snippet.substring(0, maxSnippet - 1) + '…';
133
+ console.log(`${pad}${colors.dim(snippet)}`);
134
+ }
135
+ if (i < results.length - 1)
136
+ console.log();
137
+ }
138
+ if (options.full) {
139
+ for (const r of results) {
140
+ try {
141
+ const doc = collection.document(r.pathId);
142
+ console.log(ui.colors.cyan(`\n--- ${r.pathId} ---\n`));
143
+ console.log(doc.content);
144
+ }
145
+ catch { }
146
+ }
147
+ }
148
+ }
149
+ commands.register('search', {
150
+ description: 'Semantic search across collection documents',
151
+ usage: '<query>',
152
+ help: `# cnotes search
153
+
154
+ Search documents in the collection using keyword, semantic, or hybrid search modes. Requires a search index — run \`cnotes embed\` first.
155
+
156
+ ## Usage
157
+
158
+ \`\`\`
159
+ cnotes search <query> [options]
160
+ \`\`\`
161
+
162
+ ## Arguments
163
+
164
+ | Argument | Description |
165
+ |----------|-------------|
166
+ | \`query\` | Search query text |
167
+
168
+ ## Options
169
+
170
+ | Option | Default | Description |
171
+ |--------|---------|-------------|
172
+ | \`--mode\` | \`hybrid\` | Search mode: \`hybrid\`, \`keyword\`, or \`vector\` |
173
+ | \`--model\` | | Filter results to a specific model |
174
+ | \`--where\` | | Metadata filter (e.g. \`"status=approved"\`) |
175
+ | \`-n\` | \`10\` | Maximum results to return |
176
+ | \`--json\` | \`false\` | Output as JSON |
177
+ | \`--full\` | \`false\` | Include full document content |
178
+ | \`--bootstrap\` | \`false\` | Build index if missing, then search |
179
+ | \`--contentFolder\` | | Path to content folder |
180
+
181
+ ## Examples
182
+
183
+ \`\`\`bash
184
+ # Hybrid search (default)
185
+ cnotes search "authentication patterns"
186
+
187
+ # Keyword-only search (BM25)
188
+ cnotes search "deploymentConfig" --mode keyword
189
+
190
+ # Semantic vector search
191
+ cnotes search "how do deployments work" --mode vector
192
+
193
+ # Filter by model
194
+ cnotes search "auth" --model Epic
195
+
196
+ # Filter by metadata
197
+ cnotes search "approved plans" --where "status=approved"
198
+
199
+ # Limit results
200
+ cnotes search "auth" -n 20
201
+
202
+ # JSON output
203
+ cnotes search "auth" --json
204
+
205
+ # Build index if missing, then search
206
+ cnotes search "auth" --bootstrap
207
+ \`\`\`
208
+ `,
209
+ argsSchema,
210
+ handler,
211
+ });
212
+ //# sourceMappingURL=search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/cli/commands/search.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=serve.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/serve.ts"],"names":[],"mappings":""}