oh-my-second-brain 0.2.0 → 0.6.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 (494) hide show
  1. package/.claude-plugin/marketplace.json +41 -0
  2. package/{adapters/claude-code/.claude-plugin → .claude-plugin}/plugin.json +7 -8
  3. package/{adapters/codex/.codex-plugin → .codex-plugin}/plugin.json +4 -4
  4. package/ACKNOWLEDGMENTS.md +162 -0
  5. package/CHANGELOG-assets.md +23 -0
  6. package/CHANGELOG-cli.md +24 -0
  7. package/CHANGELOG-kernel.md +48 -0
  8. package/CHANGELOG-mcp.md +36 -0
  9. package/CHANGELOG-vendors.md +26 -0
  10. package/CHANGELOG.md +51 -7
  11. package/README.ko.md +2 -2
  12. package/README.md +16 -16
  13. package/{adapters/claude-code → assets/claude}/CLAUDE.md +4 -4
  14. package/{adapters → assets}/codex/AGENTS.md +3 -3
  15. package/{adapters → assets}/codex/rules/oms.md +5 -5
  16. package/{adapters → assets}/hermes/README.md +1 -1
  17. package/{adapters → assets}/hermes/SOUL.md +3 -3
  18. package/{adapters/hermes/manifest.json → assets/hermes-manifest.json} +3 -4
  19. package/assets/skills/distill/SKILL.md +20 -0
  20. package/assets/skills/doctor/SKILL.md +23 -0
  21. package/assets/skills/link/SKILL.md +24 -0
  22. package/assets/skills/search/SKILL.md +25 -0
  23. package/assets/skills/status/SKILL.md +22 -0
  24. package/assets/skills/write/SKILL.md +30 -0
  25. package/core/ontology/schemas/README.md +20 -14
  26. package/dist/assets/shared-skills.d.ts +4 -0
  27. package/dist/assets/shared-skills.js +8 -0
  28. package/dist/assets/shared-skills.js.map +1 -0
  29. package/dist/cli/args.d.ts +3 -1
  30. package/dist/cli/args.js +14 -1
  31. package/dist/cli/args.js.map +1 -1
  32. package/dist/cli/audit.js +3 -3
  33. package/dist/cli/audit.js.map +1 -1
  34. package/dist/cli/claude-install-plan.js +2 -2
  35. package/dist/cli/claude-install-plan.js.map +1 -1
  36. package/dist/cli/doctor-lint.js +8 -8
  37. package/dist/cli/doctor-lint.js.map +1 -1
  38. package/dist/cli/global-writeback.js +1 -1
  39. package/dist/cli/global-writeback.js.map +1 -1
  40. package/dist/cli/host-commands.d.ts +1 -1
  41. package/dist/cli/host-commands.js +24 -5
  42. package/dist/cli/host-commands.js.map +1 -1
  43. package/dist/cli/link-command.d.ts +1 -1
  44. package/dist/cli/link-command.js +2 -2
  45. package/dist/cli/link-command.js.map +1 -1
  46. package/dist/cli/linkify.js +16 -71
  47. package/dist/cli/linkify.js.map +1 -1
  48. package/dist/cli/oms.d.ts +1 -1
  49. package/dist/cli/oms.js +45 -11
  50. package/dist/cli/oms.js.map +1 -1
  51. package/dist/cli/semantic-args.d.ts +1 -1
  52. package/dist/cli/semantic-args.js +102 -3
  53. package/dist/cli/semantic-args.js.map +1 -1
  54. package/dist/cli/semantic-http.js +3 -3
  55. package/dist/cli/semantic-http.js.map +1 -1
  56. package/dist/cli/semantic-usage.js +1 -1
  57. package/dist/cli/semantic-usage.js.map +1 -1
  58. package/dist/cli/semantic.js +31 -12
  59. package/dist/cli/semantic.js.map +1 -1
  60. package/dist/cli/setup-command.d.ts +17 -0
  61. package/dist/cli/setup-command.js +89 -145
  62. package/dist/cli/setup-command.js.map +1 -1
  63. package/dist/cli/update-notice.d.ts +1 -1
  64. package/dist/cli/update-notice.js +2 -2
  65. package/dist/cli/update-notice.js.map +1 -1
  66. package/dist/cli/usage.d.ts +1 -1
  67. package/dist/cli/usage.js +2 -2
  68. package/dist/cli/usage.js.map +1 -1
  69. package/dist/{capture → kernel/capture}/safe.d.ts +11 -1
  70. package/dist/{capture → kernel/capture}/safe.js +3 -3
  71. package/dist/kernel/capture/safe.js.map +1 -0
  72. package/dist/kernel/contracts/index.d.ts +144 -0
  73. package/dist/kernel/contracts/index.js +401 -0
  74. package/dist/kernel/contracts/index.js.map +1 -0
  75. package/dist/kernel/conventions/frontmatter.js.map +1 -0
  76. package/dist/kernel/conventions/lint.js.map +1 -0
  77. package/dist/kernel/conventions/report.js.map +1 -0
  78. package/dist/{conventions → kernel/conventions}/validate.d.ts +1 -1
  79. package/dist/kernel/conventions/validate.js.map +1 -0
  80. package/dist/kernel/conventions/vault-walk.js.map +1 -0
  81. package/dist/{conventions → kernel/conventions}/write-contract.d.ts +1 -1
  82. package/dist/kernel/conventions/write-contract.js.map +1 -0
  83. package/dist/kernel/conventions/write-protocol.js.map +1 -0
  84. package/dist/kernel/doctor/service.d.ts +71 -0
  85. package/dist/kernel/doctor/service.js +70 -0
  86. package/dist/kernel/doctor/service.js.map +1 -0
  87. package/dist/{engine → kernel/engine}/assemble.d.ts +46 -1
  88. package/dist/kernel/engine/assemble.js +483 -0
  89. package/dist/kernel/engine/assemble.js.map +1 -0
  90. package/dist/kernel/engine/axes/store.d.ts +90 -0
  91. package/dist/kernel/engine/axes/store.js +400 -0
  92. package/dist/kernel/engine/axes/store.js.map +1 -0
  93. package/dist/{engine → kernel/engine}/conventions/vault-lint.d.ts +1 -1
  94. package/dist/{engine → kernel/engine}/conventions/vault-lint.js +1 -1
  95. package/dist/kernel/engine/conventions/vault-lint.js.map +1 -0
  96. package/dist/kernel/engine/embed/chunker.js.map +1 -0
  97. package/dist/kernel/engine/embed/deferred.js.map +1 -0
  98. package/dist/{engine → kernel/engine}/embed/hash-stub.test-helper.d.ts +1 -1
  99. package/dist/{engine → kernel/engine}/embed/hash-stub.test-helper.js +1 -1
  100. package/dist/kernel/engine/embed/hash-stub.test-helper.js.map +1 -0
  101. package/dist/kernel/engine/embed/identity.d.ts +21 -0
  102. package/dist/kernel/engine/embed/identity.js +47 -0
  103. package/dist/kernel/engine/embed/identity.js.map +1 -0
  104. package/dist/kernel/engine/embed/model.d.ts +134 -0
  105. package/dist/kernel/engine/embed/model.js +302 -0
  106. package/dist/kernel/engine/embed/model.js.map +1 -0
  107. package/dist/{engine → kernel/engine}/embed/provider.d.ts +36 -5
  108. package/dist/kernel/engine/embed/provider.js +403 -0
  109. package/dist/kernel/engine/embed/provider.js.map +1 -0
  110. package/dist/{engine → kernel/engine}/embed/store.d.ts +13 -1
  111. package/dist/kernel/engine/embed/store.js +730 -0
  112. package/dist/kernel/engine/embed/store.js.map +1 -0
  113. package/dist/kernel/engine/embed/sync.d.ts +100 -0
  114. package/dist/kernel/engine/embed/sync.js +753 -0
  115. package/dist/kernel/engine/embed/sync.js.map +1 -0
  116. package/dist/{engine → kernel/engine}/graph/builder.d.ts +9 -5
  117. package/dist/{engine → kernel/engine}/graph/builder.js +213 -79
  118. package/dist/kernel/engine/graph/builder.js.map +1 -0
  119. package/dist/kernel/engine/graph/explore.js.map +1 -0
  120. package/dist/{engine → kernel/engine}/graph/node.d.ts +49 -1
  121. package/dist/kernel/engine/graph/node.js +315 -0
  122. package/dist/kernel/engine/graph/node.js.map +1 -0
  123. package/dist/kernel/engine/graph/resolver.js.map +1 -0
  124. package/dist/kernel/engine/graph/traverse.js.map +1 -0
  125. package/dist/kernel/engine/linkify/apply.js.map +1 -0
  126. package/dist/kernel/engine/linkify/josa.js.map +1 -0
  127. package/dist/kernel/engine/linkify/mask.js.map +1 -0
  128. package/dist/kernel/engine/linkify/suggest.js.map +1 -0
  129. package/dist/kernel/engine/linkify/types.js.map +1 -0
  130. package/dist/{engine → kernel/engine}/mcp/facade.d.ts +27 -1
  131. package/dist/kernel/engine/mcp/facade.js +1144 -0
  132. package/dist/kernel/engine/mcp/facade.js.map +1 -0
  133. package/dist/kernel/engine/mcp/op-mappers.js.map +1 -0
  134. package/dist/{engine → kernel/engine}/mcp/query-mapper.d.ts +27 -2
  135. package/dist/kernel/engine/mcp/query-mapper.js +247 -0
  136. package/dist/kernel/engine/mcp/query-mapper.js.map +1 -0
  137. package/dist/{engine → kernel/engine}/mcp/types.d.ts +69 -2
  138. package/dist/kernel/engine/mcp/types.js.map +1 -0
  139. package/dist/{engine → kernel/engine}/retrieval/dispatcher.d.ts +23 -1
  140. package/dist/{engine → kernel/engine}/retrieval/dispatcher.js +92 -14
  141. package/dist/kernel/engine/retrieval/dispatcher.js.map +1 -0
  142. package/dist/{engine → kernel/engine}/retrieval/index.d.ts +4 -1
  143. package/dist/{engine → kernel/engine}/retrieval/index.js +6 -3
  144. package/dist/kernel/engine/retrieval/index.js.map +1 -0
  145. package/dist/kernel/engine/retrieval/reranker.d.ts +124 -0
  146. package/dist/kernel/engine/retrieval/reranker.js +204 -0
  147. package/dist/kernel/engine/retrieval/reranker.js.map +1 -0
  148. package/dist/{engine → kernel/engine}/retrieval/rrf.d.ts +10 -2
  149. package/dist/kernel/engine/retrieval/rrf.js +77 -0
  150. package/dist/kernel/engine/retrieval/rrf.js.map +1 -0
  151. package/dist/{engine → kernel/engine}/tracer.d.ts +13 -0
  152. package/dist/{engine → kernel/engine}/tracer.js +63 -6
  153. package/dist/kernel/engine/tracer.js.map +1 -0
  154. package/dist/{engine → kernel/engine}/types.d.ts +4 -4
  155. package/dist/kernel/engine/types.js.map +1 -0
  156. package/dist/{graph → kernel/graph}/cache.d.ts +1 -1
  157. package/dist/{graph → kernel/graph}/cache.js +165 -21
  158. package/dist/kernel/graph/cache.js.map +1 -0
  159. package/dist/kernel/graph/explore.js.map +1 -0
  160. package/dist/{harness → kernel/harness}/surface-registry.d.ts +0 -1
  161. package/dist/kernel/harness/surface-registry.js +170 -0
  162. package/dist/kernel/harness/surface-registry.js.map +1 -0
  163. package/dist/{harness → kernel/harness}/validation.js +67 -4
  164. package/dist/kernel/harness/validation.js.map +1 -0
  165. package/dist/kernel/index.d.ts +13 -0
  166. package/dist/kernel/index.js +14 -0
  167. package/dist/kernel/index.js.map +1 -0
  168. package/dist/{install → kernel/install}/adapter-source.d.ts +10 -1
  169. package/dist/kernel/install/adapter-source.js +76 -0
  170. package/dist/kernel/install/adapter-source.js.map +1 -0
  171. package/dist/kernel/install/common.js.map +1 -0
  172. package/dist/{install → kernel/install}/hosts.d.ts +3 -3
  173. package/dist/{install → kernel/install}/hosts.js +3 -22
  174. package/dist/kernel/install/hosts.js.map +1 -0
  175. package/dist/{core/ontology → kernel/install}/types.js.map +1 -1
  176. package/dist/{link → kernel/link}/convention-note.js +2 -2
  177. package/dist/kernel/link/convention-note.js.map +1 -0
  178. package/dist/kernel/link/global-config.js.map +1 -0
  179. package/dist/kernel/link/link.js.map +1 -0
  180. package/dist/kernel/link/workflow.d.ts +55 -0
  181. package/dist/kernel/link/workflow.js +107 -0
  182. package/dist/kernel/link/workflow.js.map +1 -0
  183. package/dist/kernel/measurement/no-default-contract.d.ts +17 -0
  184. package/dist/kernel/measurement/no-default-contract.js +84 -0
  185. package/dist/kernel/measurement/no-default-contract.js.map +1 -0
  186. package/dist/{ontology → kernel/ontology}/active.d.ts +1 -1
  187. package/dist/{ontology → kernel/ontology}/active.js +2 -2
  188. package/dist/kernel/ontology/active.js.map +1 -0
  189. package/dist/kernel/ontology/loader.js.map +1 -0
  190. package/dist/kernel/ontology/resolver.js.map +1 -0
  191. package/dist/{install → kernel/ontology}/types.js.map +1 -1
  192. package/dist/kernel/plugin/index.d.ts +1 -0
  193. package/dist/kernel/plugin/index.js +2 -0
  194. package/dist/kernel/plugin/index.js.map +1 -0
  195. package/dist/{core → kernel}/runtime/assets.d.ts +2 -4
  196. package/dist/{core → kernel}/runtime/assets.js +1 -3
  197. package/dist/kernel/runtime/assets.js.map +1 -0
  198. package/dist/kernel/search/morning-test-fixtures.js.map +1 -0
  199. package/dist/{retrieve → kernel/search}/morning.d.ts +0 -1
  200. package/dist/kernel/search/morning.js.map +1 -0
  201. package/dist/kernel/search/semantic-contract.js.map +1 -0
  202. package/dist/kernel/searchbackend/engine-search-backend.d.ts +28 -0
  203. package/dist/kernel/searchbackend/engine-search-backend.js +153 -0
  204. package/dist/kernel/searchbackend/engine-search-backend.js.map +1 -0
  205. package/dist/kernel/searchbackend/index.d.ts +2 -0
  206. package/dist/kernel/searchbackend/index.js +2 -0
  207. package/dist/kernel/searchbackend/index.js.map +1 -0
  208. package/dist/kernel/searchbackend/search-backend.d.ts +57 -0
  209. package/dist/kernel/searchbackend/search-backend.js +110 -0
  210. package/dist/kernel/searchbackend/search-backend.js.map +1 -0
  211. package/dist/{mcp → kernel/semantic}/semantic-engine.d.ts +3 -2
  212. package/dist/kernel/semantic/semantic-engine.js +78 -0
  213. package/dist/kernel/semantic/semantic-engine.js.map +1 -0
  214. package/dist/{mcp → kernel/semantic}/semantic-retrieve-args.d.ts +20 -3
  215. package/dist/{mcp → kernel/semantic}/semantic-retrieve-args.js +81 -15
  216. package/dist/kernel/semantic/semantic-retrieve-args.js.map +1 -0
  217. package/dist/{mcp → kernel/semantic}/semantic-retrieve-schema.d.ts +0 -24
  218. package/dist/{mcp → kernel/semantic}/semantic-retrieve-schema.js +0 -8
  219. package/dist/kernel/semantic/semantic-retrieve-schema.js.map +1 -0
  220. package/dist/{mcp → kernel/semantic}/semantic-retrieve.js +5 -9
  221. package/dist/kernel/semantic/semantic-retrieve.js.map +1 -0
  222. package/dist/kernel/semantic/semantic-schemas.js.map +1 -0
  223. package/dist/{mcp → kernel/semantic}/semantic-tool-schemas.js +0 -28
  224. package/dist/kernel/semantic/semantic-tool-schemas.js.map +1 -0
  225. package/dist/{setup → kernel/setup}/axis.d.ts +1 -1
  226. package/dist/{setup → kernel/setup}/axis.js +1 -1
  227. package/dist/kernel/setup/axis.js.map +1 -0
  228. package/dist/{cli/setup-documents.d.ts → kernel/setup/documents.d.ts} +1 -1
  229. package/dist/{cli/setup-documents.js → kernel/setup/documents.js} +15 -49
  230. package/dist/kernel/setup/documents.js.map +1 -0
  231. package/dist/kernel/setup/service.d.ts +44 -0
  232. package/dist/kernel/setup/service.js +97 -0
  233. package/dist/kernel/setup/service.js.map +1 -0
  234. package/dist/{update → kernel/update}/update.d.ts +7 -0
  235. package/dist/{update → kernel/update}/update.js +106 -8
  236. package/dist/kernel/update/update.js.map +1 -0
  237. package/dist/mcp/engine-morning-backend.d.ts +4 -4
  238. package/dist/mcp/engine-morning-backend.js +4 -18
  239. package/dist/mcp/engine-morning-backend.js.map +1 -1
  240. package/dist/mcp/link-tools.d.ts +9 -56
  241. package/dist/mcp/link-tools.js +5 -129
  242. package/dist/mcp/link-tools.js.map +1 -1
  243. package/dist/mcp/server.d.ts +9 -2
  244. package/dist/mcp/server.js +373 -324
  245. package/dist/mcp/server.js.map +1 -1
  246. package/dist/mcp/update-notice.d.ts +1 -1
  247. package/dist/mcp/update-notice.js +1 -1
  248. package/dist/mcp/update-notice.js.map +1 -1
  249. package/dist/{install → vendors/claude}/claude-hooks.d.ts +1 -1
  250. package/dist/{install → vendors/claude}/claude-hooks.js +1 -1
  251. package/dist/vendors/claude/claude-hooks.js.map +1 -0
  252. package/dist/{install → vendors/claude}/claude-marketplace.d.ts +3 -3
  253. package/dist/{install → vendors/claude}/claude-marketplace.js +6 -9
  254. package/dist/vendors/claude/claude-marketplace.js.map +1 -0
  255. package/dist/{install → vendors/claude}/claude.d.ts +2 -2
  256. package/dist/{install → vendors/claude}/claude.js +2 -2
  257. package/dist/vendors/claude/claude.js.map +1 -0
  258. package/dist/{hook → vendors/claude/hook}/post-tool-use.js +5 -5
  259. package/dist/vendors/claude/hook/post-tool-use.js.map +1 -0
  260. package/dist/vendors/claude/hook/pre-tool-use.js.map +1 -0
  261. package/dist/vendors/claude/hook/stdin.js.map +1 -0
  262. package/dist/vendors/codex/codex.d.ts +10 -0
  263. package/dist/{install → vendors/codex}/codex.js +19 -37
  264. package/dist/vendors/codex/codex.js.map +1 -0
  265. package/dist/{install → vendors/hermes}/hermes.d.ts +2 -2
  266. package/dist/{install → vendors/hermes}/hermes.js +15 -7
  267. package/dist/vendors/hermes/hermes.js.map +1 -0
  268. package/docs/adapters.md +15 -0
  269. package/docs/install.md +10 -11
  270. package/package.json +23 -10
  271. package/adapters/README.md +0 -99
  272. package/adapters/claude-code/skills/compile/SKILL.md +0 -27
  273. package/adapters/claude-code/skills/define/SKILL.md +0 -51
  274. package/adapters/claude-code/skills/distill/SKILL.md +0 -28
  275. package/adapters/claude-code/skills/doctor/SKILL.md +0 -58
  276. package/adapters/claude-code/skills/link/SKILL.md +0 -87
  277. package/adapters/claude-code/skills/retrieve/SKILL.md +0 -99
  278. package/adapters/claude-code/skills/setup/SKILL.md +0 -78
  279. package/adapters/claude-code/skills/uninstall/SKILL.md +0 -34
  280. package/adapters/claude-code/skills/update/SKILL.md +0 -45
  281. package/adapters/claude-code/skills/vault-decision-record/SKILL.md +0 -52
  282. package/adapters/claude-code/skills/vault-lint/SKILL.md +0 -47
  283. package/adapters/claude-code/skills/vault-scaffold/SKILL.md +0 -47
  284. package/adapters/claude-code/skills/wiki/SKILL.md +0 -82
  285. package/adapters/claude-code/skills/write/SKILL.md +0 -16
  286. package/adapters/codex/skills/oms-compile/SKILL.md +0 -16
  287. package/adapters/codex/skills/oms-distill/SKILL.md +0 -14
  288. package/adapters/codex/skills/oms-doctor/SKILL.md +0 -14
  289. package/adapters/codex/skills/oms-install/SKILL.md +0 -19
  290. package/adapters/codex/skills/oms-link/SKILL.md +0 -35
  291. package/adapters/codex/skills/oms-retrieve/SKILL.md +0 -32
  292. package/adapters/codex/skills/oms-setup/SKILL.md +0 -34
  293. package/adapters/codex/skills/oms-uninstall/SKILL.md +0 -20
  294. package/adapters/codex/skills/oms-update/SKILL.md +0 -22
  295. package/adapters/codex/skills/oms-vault-lint/SKILL.md +0 -19
  296. package/adapters/codex/skills/oms-wiki/SKILL.md +0 -39
  297. package/adapters/codex/skills/oms-write/SKILL.md +0 -10
  298. package/adapters/hermes/skills/compile/SKILL.md +0 -13
  299. package/adapters/hermes/skills/distill/SKILL.md +0 -10
  300. package/adapters/hermes/skills/doctor/SKILL.md +0 -14
  301. package/adapters/hermes/skills/install/SKILL.md +0 -19
  302. package/adapters/hermes/skills/link/SKILL.md +0 -18
  303. package/adapters/hermes/skills/retrieve/SKILL.md +0 -32
  304. package/adapters/hermes/skills/setup/SKILL.md +0 -37
  305. package/adapters/hermes/skills/uninstall/SKILL.md +0 -20
  306. package/adapters/hermes/skills/update/SKILL.md +0 -22
  307. package/adapters/hermes/skills/wiki/SKILL.md +0 -14
  308. package/adapters/hermes/skills/write/SKILL.md +0 -10
  309. package/core/agents/librarian.md +0 -44
  310. package/core/agents/retriever.md +0 -62
  311. package/core/skills/compile/CHANGELOG.md +0 -24
  312. package/core/skills/compile/SKILL.md +0 -57
  313. package/core/skills/define/SKILL.md +0 -59
  314. package/core/skills/distill/CHANGELOG.md +0 -39
  315. package/core/skills/distill/SKILL.md +0 -62
  316. package/core/skills/doctor/SKILL.md +0 -49
  317. package/core/skills/link/SKILL.md +0 -130
  318. package/core/skills/retrieve/SKILL.md +0 -78
  319. package/core/skills/setup/CHANGELOG.md +0 -49
  320. package/core/skills/setup/SKILL.md +0 -246
  321. package/core/skills/uninstall/SKILL.md +0 -34
  322. package/core/skills/vault-decision-record/CHANGELOG.md +0 -24
  323. package/core/skills/vault-decision-record/SKILL.md +0 -93
  324. package/core/skills/vault-lint/CHANGELOG.md +0 -35
  325. package/core/skills/vault-lint/SKILL.md +0 -58
  326. package/core/skills/vault-scaffold/CHANGELOG.md +0 -21
  327. package/core/skills/vault-scaffold/SKILL.md +0 -72
  328. package/core/skills/wiki/CHANGELOG.md +0 -23
  329. package/core/skills/wiki/SKILL.md +0 -159
  330. package/core/skills/write/SKILL.md +0 -15
  331. package/dist/capture/safe.js.map +0 -1
  332. package/dist/cli/setup-documents.js.map +0 -1
  333. package/dist/conventions/frontmatter.js.map +0 -1
  334. package/dist/conventions/lint.js.map +0 -1
  335. package/dist/conventions/report.js.map +0 -1
  336. package/dist/conventions/validate.js.map +0 -1
  337. package/dist/conventions/vault-walk.js.map +0 -1
  338. package/dist/conventions/write-contract.js.map +0 -1
  339. package/dist/conventions/write-protocol.js.map +0 -1
  340. package/dist/core/ontology/loader.js.map +0 -1
  341. package/dist/core/ontology/resolver.js.map +0 -1
  342. package/dist/core/runtime/assets.js.map +0 -1
  343. package/dist/engine/assemble.js +0 -162
  344. package/dist/engine/assemble.js.map +0 -1
  345. package/dist/engine/conventions/vault-lint.js.map +0 -1
  346. package/dist/engine/embed/chunker.js.map +0 -1
  347. package/dist/engine/embed/deferred.js.map +0 -1
  348. package/dist/engine/embed/hash-stub.test-helper.js.map +0 -1
  349. package/dist/engine/embed/identity.d.ts +0 -11
  350. package/dist/engine/embed/identity.js +0 -15
  351. package/dist/engine/embed/identity.js.map +0 -1
  352. package/dist/engine/embed/provider.js +0 -266
  353. package/dist/engine/embed/provider.js.map +0 -1
  354. package/dist/engine/embed/store.js +0 -416
  355. package/dist/engine/embed/store.js.map +0 -1
  356. package/dist/engine/embed/sync.d.ts +0 -45
  357. package/dist/engine/embed/sync.js +0 -321
  358. package/dist/engine/embed/sync.js.map +0 -1
  359. package/dist/engine/graph/builder.js.map +0 -1
  360. package/dist/engine/graph/explore.js.map +0 -1
  361. package/dist/engine/graph/node.js +0 -110
  362. package/dist/engine/graph/node.js.map +0 -1
  363. package/dist/engine/graph/resolver.js.map +0 -1
  364. package/dist/engine/graph/traverse.js.map +0 -1
  365. package/dist/engine/linkify/apply.js.map +0 -1
  366. package/dist/engine/linkify/josa.js.map +0 -1
  367. package/dist/engine/linkify/mask.js.map +0 -1
  368. package/dist/engine/linkify/suggest.js.map +0 -1
  369. package/dist/engine/linkify/types.js.map +0 -1
  370. package/dist/engine/mcp/facade.js +0 -628
  371. package/dist/engine/mcp/facade.js.map +0 -1
  372. package/dist/engine/mcp/op-mappers.js.map +0 -1
  373. package/dist/engine/mcp/query-mapper.js +0 -102
  374. package/dist/engine/mcp/query-mapper.js.map +0 -1
  375. package/dist/engine/mcp/types.js.map +0 -1
  376. package/dist/engine/retrieval/dispatcher.js.map +0 -1
  377. package/dist/engine/retrieval/index.js.map +0 -1
  378. package/dist/engine/retrieval/reranker.d.ts +0 -46
  379. package/dist/engine/retrieval/reranker.js +0 -29
  380. package/dist/engine/retrieval/reranker.js.map +0 -1
  381. package/dist/engine/retrieval/rrf.js +0 -54
  382. package/dist/engine/retrieval/rrf.js.map +0 -1
  383. package/dist/engine/tracer.js.map +0 -1
  384. package/dist/engine/types.js.map +0 -1
  385. package/dist/graph/cache.js.map +0 -1
  386. package/dist/graph/explore.js.map +0 -1
  387. package/dist/harness/surface-registry.js +0 -397
  388. package/dist/harness/surface-registry.js.map +0 -1
  389. package/dist/harness/validation.js.map +0 -1
  390. package/dist/hook/post-tool-use.js.map +0 -1
  391. package/dist/hook/pre-tool-use.js.map +0 -1
  392. package/dist/hook/stdin.js.map +0 -1
  393. package/dist/index.d.ts +0 -12
  394. package/dist/index.js +0 -13
  395. package/dist/index.js.map +0 -1
  396. package/dist/install/adapter-source.js +0 -45
  397. package/dist/install/adapter-source.js.map +0 -1
  398. package/dist/install/claude-hooks.js.map +0 -1
  399. package/dist/install/claude-marketplace.js.map +0 -1
  400. package/dist/install/claude.js.map +0 -1
  401. package/dist/install/codex.d.ts +0 -24
  402. package/dist/install/codex.js.map +0 -1
  403. package/dist/install/common.js.map +0 -1
  404. package/dist/install/hermes.js.map +0 -1
  405. package/dist/install/hosts.js.map +0 -1
  406. package/dist/link/convention-note.js.map +0 -1
  407. package/dist/link/global-config.js.map +0 -1
  408. package/dist/link/link.js.map +0 -1
  409. package/dist/mcp/semantic-engine.js +0 -52
  410. package/dist/mcp/semantic-engine.js.map +0 -1
  411. package/dist/mcp/semantic-retrieve-args.js.map +0 -1
  412. package/dist/mcp/semantic-retrieve-schema.js.map +0 -1
  413. package/dist/mcp/semantic-retrieve.js.map +0 -1
  414. package/dist/mcp/semantic-schemas.js.map +0 -1
  415. package/dist/mcp/semantic-tool-schemas.js.map +0 -1
  416. package/dist/ontology/active.js.map +0 -1
  417. package/dist/retrieve/morning-test-fixtures.js.map +0 -1
  418. package/dist/retrieve/morning.js.map +0 -1
  419. package/dist/retrieve/semantic-contract.js.map +0 -1
  420. package/dist/setup/axis.js.map +0 -1
  421. package/dist/update/update.js.map +0 -1
  422. package/docs/release.md +0 -188
  423. /package/{adapters/codex/.mcp.json → .mcp.codex.json} +0 -0
  424. /package/{adapters/claude-code/.mcp.json → .mcp.json} +0 -0
  425. /package/{adapters/claude-code → assets/claude}/hooks/oms-guard.mjs +0 -0
  426. /package/{adapters/claude-code → assets/claude}/hooks/oms-post-guard.mjs +0 -0
  427. /package/dist/{conventions → kernel/conventions}/frontmatter.d.ts +0 -0
  428. /package/dist/{conventions → kernel/conventions}/frontmatter.js +0 -0
  429. /package/dist/{conventions → kernel/conventions}/lint.d.ts +0 -0
  430. /package/dist/{conventions → kernel/conventions}/lint.js +0 -0
  431. /package/dist/{conventions → kernel/conventions}/report.d.ts +0 -0
  432. /package/dist/{conventions → kernel/conventions}/report.js +0 -0
  433. /package/dist/{conventions → kernel/conventions}/validate.js +0 -0
  434. /package/dist/{conventions → kernel/conventions}/vault-walk.d.ts +0 -0
  435. /package/dist/{conventions → kernel/conventions}/vault-walk.js +0 -0
  436. /package/dist/{conventions → kernel/conventions}/write-contract.js +0 -0
  437. /package/dist/{conventions → kernel/conventions}/write-protocol.d.ts +0 -0
  438. /package/dist/{conventions → kernel/conventions}/write-protocol.js +0 -0
  439. /package/dist/{engine → kernel/engine}/embed/chunker.d.ts +0 -0
  440. /package/dist/{engine → kernel/engine}/embed/chunker.js +0 -0
  441. /package/dist/{engine → kernel/engine}/embed/deferred.d.ts +0 -0
  442. /package/dist/{engine → kernel/engine}/embed/deferred.js +0 -0
  443. /package/dist/{engine → kernel/engine}/graph/explore.d.ts +0 -0
  444. /package/dist/{engine → kernel/engine}/graph/explore.js +0 -0
  445. /package/dist/{engine → kernel/engine}/graph/resolver.d.ts +0 -0
  446. /package/dist/{engine → kernel/engine}/graph/resolver.js +0 -0
  447. /package/dist/{engine → kernel/engine}/graph/traverse.d.ts +0 -0
  448. /package/dist/{engine → kernel/engine}/graph/traverse.js +0 -0
  449. /package/dist/{engine → kernel/engine}/linkify/apply.d.ts +0 -0
  450. /package/dist/{engine → kernel/engine}/linkify/apply.js +0 -0
  451. /package/dist/{engine → kernel/engine}/linkify/josa.d.ts +0 -0
  452. /package/dist/{engine → kernel/engine}/linkify/josa.js +0 -0
  453. /package/dist/{engine → kernel/engine}/linkify/mask.d.ts +0 -0
  454. /package/dist/{engine → kernel/engine}/linkify/mask.js +0 -0
  455. /package/dist/{engine → kernel/engine}/linkify/suggest.d.ts +0 -0
  456. /package/dist/{engine → kernel/engine}/linkify/suggest.js +0 -0
  457. /package/dist/{engine → kernel/engine}/linkify/types.d.ts +0 -0
  458. /package/dist/{engine → kernel/engine}/linkify/types.js +0 -0
  459. /package/dist/{engine → kernel/engine}/mcp/op-mappers.d.ts +0 -0
  460. /package/dist/{engine → kernel/engine}/mcp/op-mappers.js +0 -0
  461. /package/dist/{engine → kernel/engine}/mcp/types.js +0 -0
  462. /package/dist/{engine → kernel/engine}/types.js +0 -0
  463. /package/dist/{graph → kernel/graph}/explore.d.ts +0 -0
  464. /package/dist/{graph → kernel/graph}/explore.js +0 -0
  465. /package/dist/{harness → kernel/harness}/validation.d.ts +0 -0
  466. /package/dist/{install → kernel/install}/common.d.ts +0 -0
  467. /package/dist/{install → kernel/install}/common.js +0 -0
  468. /package/dist/{install → kernel/install}/types.d.ts +0 -0
  469. /package/dist/{core/ontology → kernel/install}/types.js +0 -0
  470. /package/dist/{link → kernel/link}/convention-note.d.ts +0 -0
  471. /package/dist/{link → kernel/link}/global-config.d.ts +0 -0
  472. /package/dist/{link → kernel/link}/global-config.js +0 -0
  473. /package/dist/{link → kernel/link}/link.d.ts +0 -0
  474. /package/dist/{link → kernel/link}/link.js +0 -0
  475. /package/dist/{core → kernel}/ontology/loader.d.ts +0 -0
  476. /package/dist/{core → kernel}/ontology/loader.js +0 -0
  477. /package/dist/{core → kernel}/ontology/resolver.d.ts +0 -0
  478. /package/dist/{core → kernel}/ontology/resolver.js +0 -0
  479. /package/dist/{core → kernel}/ontology/types.d.ts +0 -0
  480. /package/dist/{install → kernel/ontology}/types.js +0 -0
  481. /package/dist/{retrieve → kernel/search}/morning-test-fixtures.d.ts +0 -0
  482. /package/dist/{retrieve → kernel/search}/morning-test-fixtures.js +0 -0
  483. /package/dist/{retrieve → kernel/search}/morning.js +0 -0
  484. /package/dist/{retrieve → kernel/search}/semantic-contract.d.ts +0 -0
  485. /package/dist/{retrieve → kernel/search}/semantic-contract.js +0 -0
  486. /package/dist/{mcp → kernel/semantic}/semantic-retrieve.d.ts +0 -0
  487. /package/dist/{mcp → kernel/semantic}/semantic-schemas.d.ts +0 -0
  488. /package/dist/{mcp → kernel/semantic}/semantic-schemas.js +0 -0
  489. /package/dist/{mcp → kernel/semantic}/semantic-tool-schemas.d.ts +0 -0
  490. /package/dist/{hook → vendors/claude/hook}/post-tool-use.d.ts +0 -0
  491. /package/dist/{hook → vendors/claude/hook}/pre-tool-use.d.ts +0 -0
  492. /package/dist/{hook → vendors/claude/hook}/pre-tool-use.js +0 -0
  493. /package/dist/{hook → vendors/claude/hook}/stdin.d.ts +0 -0
  494. /package/dist/{hook → vendors/claude/hook}/stdin.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write-contract.js","sourceRoot":"","sources":["../../../src/kernel/conventions/write-contract.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write-protocol.js","sourceRoot":"","sources":["../../../src/kernel/conventions/write-protocol.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAsCH;;;GAGG;AACH,MAAM,mBAAmB,GAAwC;IAC/D,mBAAmB,EAAE,IAAI;IACzB,oBAAoB,EAAE,IAAI;IAC1B,cAAc,EAAE,IAAI;IACpB,cAAc,EAAE,IAAI;IACpB,aAAa,EAAE,IAAI;IACnB,aAAa,EAAE,KAAK;IACpB,cAAc,EAAE,KAAK;IACrB,iBAAiB,EAAE,KAAK;IACxB,gBAAgB,EAAE,KAAK;IACvB,sBAAsB,EAAE,KAAK;CAC9B,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,SAAS,CACvB,KAAiB,EACjB,IAAwB,EACxB,OAAe,EACf,WAAmB;IAEnB,OAAO;QACL,KAAK;QACL,IAAI;QACJ,OAAO;QACP,WAAW;QACX,WAAW,EAAE,mBAAmB,CAAC,IAAI,CAAC;KACvC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,71 @@
1
+ import type { WriteTargetSource } from "../conventions/write-protocol.js";
2
+ import type { McpEngineAdapter } from "../engine/mcp/facade.js";
3
+ export type DoctorRepairOperation = "build-graph" | "semantic-cleanup" | "sync-embeddings";
4
+ type SemanticIndexPostcondition = {
5
+ readonly kind: "semantic-index";
6
+ readonly databasePath: string;
7
+ readonly documentPaths: readonly string[];
8
+ readonly chunks: number;
9
+ readonly orphanDocumentPaths: readonly string[];
10
+ };
11
+ export type DoctorRepairReceipt = {
12
+ readonly operation: "build-graph";
13
+ readonly resolvedVault: string;
14
+ readonly resolutionSource: WriteTargetSource;
15
+ readonly written: {
16
+ readonly paths: readonly string[];
17
+ readonly summary: {
18
+ readonly notes: number;
19
+ readonly edges: number;
20
+ readonly searchDocuments: number;
21
+ };
22
+ };
23
+ readonly postcondition: {
24
+ readonly kind: "graph-cache";
25
+ readonly cachePath: string;
26
+ readonly generatedAt: string;
27
+ readonly notes: number;
28
+ readonly edges: number;
29
+ readonly searchDocuments: number;
30
+ };
31
+ } | {
32
+ readonly operation: "semantic-cleanup" | "sync-embeddings";
33
+ readonly resolvedVault: string;
34
+ readonly resolutionSource: WriteTargetSource;
35
+ readonly written: {
36
+ readonly paths: readonly string[];
37
+ readonly summary: Record<string, unknown>;
38
+ };
39
+ readonly postcondition: SemanticIndexPostcondition;
40
+ };
41
+ export type DoctorRepairResult = {
42
+ readonly kind: "rejected";
43
+ readonly value: {
44
+ readonly status: "rejected";
45
+ readonly rejection: unknown;
46
+ readonly resolvedVault: string;
47
+ readonly resolutionSource: WriteTargetSource;
48
+ };
49
+ } | {
50
+ readonly kind: "error";
51
+ readonly message: string;
52
+ } | {
53
+ readonly kind: "completed";
54
+ readonly value: Record<string, unknown>;
55
+ };
56
+ export declare function repairDoctor({ operation, vault, source, args, resolveAdapter }: {
57
+ readonly operation: DoctorRepairOperation;
58
+ readonly vault: string;
59
+ readonly source: WriteTargetSource;
60
+ readonly args: Record<string, unknown> | undefined;
61
+ /**
62
+ * Deferred on purpose. Constructing a semantic adapter opens - and
63
+ * therefore creates - `<vault>/.oms/engine-store.sqlite`, so accepting an
64
+ * already-built adapter would let that mutation happen in the caller's
65
+ * argument list, before this function ever runs admission. Taking a factory
66
+ * keeps admission the first effectful step even though the caller decides
67
+ * WHICH adapter is appropriate.
68
+ */
69
+ readonly resolveAdapter?: () => McpEngineAdapter;
70
+ }): Promise<DoctorRepairResult>;
71
+ export {};
@@ -0,0 +1,70 @@
1
+ import { readFile, stat } from "node:fs/promises";
2
+ import path from "node:path";
3
+ import Database from "better-sqlite3";
4
+ import { admitWriteTarget } from "../capture/safe.js";
5
+ import { walkMarkdown } from "../engine/embed/sync.js";
6
+ import { buildGraphCache, graphCachePath } from "../graph/cache.js";
7
+ import { resolveActiveOntology } from "../ontology/active.js";
8
+ import { handleSemanticTool } from "../semantic/semantic-retrieve.js";
9
+ async function semanticIndexPostcondition(vault) {
10
+ const databasePath = path.join(vault, ".oms", "engine-store.sqlite");
11
+ await stat(databasePath);
12
+ const database = new Database(databasePath, { readonly: true });
13
+ try {
14
+ const documentPaths = database.prepare("SELECT DISTINCT doc_path FROM engine_chunk_meta ORDER BY doc_path").all().map((row) => row.doc_path);
15
+ const chunks = database.prepare("SELECT COUNT(*) AS count FROM engine_chunk_meta").get().count;
16
+ const livePaths = new Set();
17
+ for await (const notePath of walkMarkdown(vault, vault))
18
+ livePaths.add(notePath);
19
+ return { kind: "semantic-index", databasePath, documentPaths, chunks, orphanDocumentPaths: documentPaths.filter((notePath) => !livePaths.has(notePath)) };
20
+ }
21
+ finally {
22
+ database.close();
23
+ }
24
+ }
25
+ function isRecord(value) {
26
+ return typeof value === "object" && value !== null && !Array.isArray(value);
27
+ }
28
+ export async function repairDoctor({ operation, vault, source, args, resolveAdapter }) {
29
+ const rejection = await admitWriteTarget({ vault, source });
30
+ if (rejection)
31
+ return { kind: "rejected", value: { status: "rejected", rejection, resolvedVault: vault, resolutionSource: source } };
32
+ if (operation === "build-graph") {
33
+ const { ontology, source: ontologySource } = await resolveActiveOntology(vault);
34
+ const cache = await buildGraphCache({ vault, ontology, write: true });
35
+ const cachePath = graphCachePath(vault);
36
+ const persistedCache = JSON.parse(await readFile(cachePath, "utf-8"));
37
+ if (!isRecord(persistedCache) || persistedCache["generatedAt"] !== cache.generatedAt || !Array.isArray(persistedCache["notes"]) || !Array.isArray(persistedCache["edges"]) || !Array.isArray(persistedCache["search"])) {
38
+ throw new Error("Graph cache postcondition failed: persisted cache does not match the completed build.");
39
+ }
40
+ const receipt = {
41
+ operation, resolvedVault: vault, resolutionSource: source,
42
+ written: { paths: [cachePath], summary: { notes: persistedCache["notes"].length, edges: persistedCache["edges"].length, searchDocuments: persistedCache["search"].length } },
43
+ postcondition: { kind: "graph-cache", cachePath, generatedAt: persistedCache["generatedAt"], notes: persistedCache["notes"].length, edges: persistedCache["edges"].length, searchDocuments: persistedCache["search"].length },
44
+ };
45
+ return { kind: "completed", value: { vault, ontologySource, cachePath, generatedAt: cache.generatedAt, notes: cache.notes.length, edges: cache.edges.length, searchDocuments: cache.search.length, sourceOfTruth: cache.sourceOfTruth, resolvedVault: vault, resolutionSource: source, receipt } };
46
+ }
47
+ if (!resolveAdapter)
48
+ throw new Error(`Doctor repair "${operation}" requires a semantic adapter.`);
49
+ // Admission has passed; only now is it safe to let adapter construction touch
50
+ // the vault.
51
+ const adapter = resolveAdapter();
52
+ const name = operation === "semantic-cleanup" ? "oms_semantic_cleanup" : "oms_sync_embeddings";
53
+ const semanticResult = await handleSemanticTool(name, args, vault, adapter);
54
+ if (!semanticResult)
55
+ throw new Error(`Doctor repair "${operation}" was not handled.`);
56
+ if (!semanticResult.ok)
57
+ return { kind: "error", message: semanticResult.message };
58
+ if (!isRecord(semanticResult.value) || semanticResult.value["available"] !== true)
59
+ return { kind: "completed", value: semanticResult.value };
60
+ const postcondition = await semanticIndexPostcondition(vault);
61
+ if (postcondition.orphanDocumentPaths.length > 0)
62
+ throw new Error("Semantic index postcondition failed: stored documents include paths outside the live vault.");
63
+ const receipt = {
64
+ operation, resolvedVault: vault, resolutionSource: source,
65
+ written: { paths: [postcondition.databasePath], summary: semanticResult.value },
66
+ postcondition,
67
+ };
68
+ return { kind: "completed", value: { ...semanticResult.value, resolvedVault: vault, resolutionSource: source, receipt } };
69
+ }
70
+ //# sourceMappingURL=service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/kernel/doctor/service.ts"],"names":[],"mappings":"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"}
@@ -9,10 +9,12 @@
9
9
  * - Explicit embedding configuration: OMS_EMBEDDING_PROVIDER + OMS_EMBEDDING_MODEL.
10
10
  * - Lex-only semantic queries must remain usable without embedding configuration.
11
11
  */
12
+ import type { EmbeddingModelDescriptor } from "./embed/model.js";
12
13
  import { McpEngineAdapter } from "./mcp/facade.js";
13
- import type { DispatcherDeps } from "./retrieval/dispatcher.js";
14
+ import type { DispatcherDeps, DispatcherPolicy } from "./retrieval/dispatcher.js";
14
15
  import type { EngineStore } from "./embed/store.js";
15
16
  import type { EmbeddingProvider } from "./types.js";
17
+ import type { Reranker } from "./retrieval/reranker.js";
16
18
  /** Configuration for assembleEngine() / assembleCoreSemanticEngine(). */
17
19
  export interface AssembleConfig {
18
20
  /** Absolute path to the vault root. */
@@ -21,18 +23,44 @@ export interface AssembleConfig {
21
23
  embeddingProvider?: string;
22
24
  /** Optional explicit embedding model/id/path (OMS_EMBEDDING_MODEL). */
23
25
  embeddingModel?: string;
26
+ /**
27
+ * Optional canonical descriptor supplied by setup. When omitted, assembly
28
+ * discovers the setup-written installed default. `null` explicitly waives
29
+ * default discovery.
30
+ */
31
+ embeddingDescriptor?: EmbeddingModelDescriptor | null;
32
+ /** Test/setup override for the user-level model cache root. */
33
+ embeddingCacheDir?: string;
34
+ /** Explicit descriptor-shape overrides for callers without a descriptor. */
35
+ embeddingDimensions?: number;
36
+ embeddingContext?: number;
37
+ embeddingContextLength?: number;
38
+ embeddingContextTokens?: number;
39
+ embeddingMrlDim?: number;
40
+ embeddingNormalization?: string;
41
+ embeddingPrefixScheme?: string;
24
42
  /** Absolute path to the SQLite engine store database file. Default: <vault>/.oms/engine-store.sqlite */
25
43
  dbPath?: string;
26
44
  /** RRF smoothing constant passed to DispatcherDeps (default 60). */
27
45
  rrfK?: number;
46
+ /** Explicit retrieval policy used by the production dispatcher. */
47
+ policy?: DispatcherPolicy;
28
48
  /** Default BFS hop depth for graph sub-queries (default 2). */
29
49
  graphDepth?: number;
50
+ /**
51
+ * Optional real cross-encoder reranker. Reranking is disabled unless a
52
+ * request explicitly sets `rerank: true`; such a request fails loudly when
53
+ * this is absent.
54
+ */
55
+ reranker?: Reranker;
30
56
  }
31
57
  export interface AssembledEngine {
32
58
  adapter: McpEngineAdapter;
33
59
  deps: DispatcherDeps;
34
60
  store: EngineStore;
35
61
  provider: EmbeddingProvider;
62
+ /** Whether lex-only queries refresh this engine's selected lexical store. */
63
+ implicitLexicalSync: boolean;
36
64
  syncVault(opts?: SyncVaultOptions): Promise<SyncVaultResult>;
37
65
  dispose(): Promise<void>;
38
66
  }
@@ -50,6 +78,8 @@ export interface SyncVaultResult {
50
78
  skipped: number;
51
79
  available: boolean;
52
80
  reason?: string;
81
+ /** True when this sync replaced the active on-disk generation. */
82
+ generationSwapped?: boolean;
53
83
  }
54
84
  /**
55
85
  * Assemble a semantic-capable engine with a REAL embedding provider.
@@ -66,6 +96,21 @@ export declare function assembleEngine(config: AssembleConfig): AssembledEngine;
66
96
  * vec/HyDE operations will fail (embed() throws; vecAvailable is false).
67
97
  */
68
98
  export declare function assembleCoreSemanticEngine(config: AssembleConfig): AssembledEngine;
99
+ /**
100
+ * Assemble a core-only semantic engine whose lexical index is process-local.
101
+ * Lex-only queries populate this store on demand without touching the vault.
102
+ */
103
+ export declare function assembleEphemeralCoreSemanticEngine(config: AssembleConfig): AssembledEngine;
104
+ /**
105
+ * Assemble an existing CORE-ONLY semantic engine without creating a store.
106
+ * Returns null when the semantic index is absent or cannot be read safely.
107
+ */
108
+ export declare function assembleCoreSemanticEngineReadOnly(config: AssembleConfig): AssembledEngine | null;
109
+ /**
110
+ * Assemble an existing vector-capable semantic engine without creating a store.
111
+ * Returns null when the semantic index is absent or cannot be read safely.
112
+ */
113
+ export declare function assembleEngineReadOnly(config: AssembleConfig): AssembledEngine | null;
69
114
  /**
70
115
  * Assemble a GRAPH-ONLY engine: graph ops run model-free; semantic store/embed
71
116
  * are throw-on-use guards.