oh-my-second-brain 0.9.0 → 0.10.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 (152) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/.codex-plugin/plugin.json +1 -1
  4. package/CHANGELOG-assets.md +6 -0
  5. package/CHANGELOG-cli.md +13 -0
  6. package/CHANGELOG-kernel.md +7 -0
  7. package/CHANGELOG-mcp.md +6 -0
  8. package/CHANGELOG-vendors.md +2 -0
  9. package/CHANGELOG.md +20 -0
  10. package/README.ko.md +24 -1
  11. package/README.md +22 -1
  12. package/assets/hermes-manifest.json +1 -1
  13. package/assets/skills/search/SKILL.md +1 -0
  14. package/dist/cli/args.d.ts +3 -4
  15. package/dist/cli/args.js +36 -15
  16. package/dist/cli/args.js.map +1 -1
  17. package/dist/cli/doc-command.d.ts +8 -0
  18. package/dist/cli/doc-command.js +51 -0
  19. package/dist/cli/doc-command.js.map +1 -0
  20. package/dist/cli/engine-session.d.ts +15 -0
  21. package/dist/cli/engine-session.js +45 -0
  22. package/dist/cli/engine-session.js.map +1 -0
  23. package/dist/cli/index-command.d.ts +8 -0
  24. package/dist/cli/index-command.js +60 -0
  25. package/dist/cli/index-command.js.map +1 -0
  26. package/dist/cli/oms.d.ts +1 -1
  27. package/dist/cli/oms.js +40 -21
  28. package/dist/cli/oms.js.map +1 -1
  29. package/dist/cli/search-args.d.ts +13 -0
  30. package/dist/cli/{semantic-args.js → search-args.js} +48 -13
  31. package/dist/cli/search-args.js.map +1 -0
  32. package/dist/cli/search-usage.d.ts +1 -0
  33. package/dist/cli/search-usage.js +25 -0
  34. package/dist/cli/search-usage.js.map +1 -0
  35. package/dist/cli/search.d.ts +10 -0
  36. package/dist/cli/search.js +71 -0
  37. package/dist/cli/search.js.map +1 -0
  38. package/dist/cli/serve-http.d.ts +15 -0
  39. package/dist/cli/{semantic-http.js → serve-http.js} +69 -54
  40. package/dist/cli/serve-http.js.map +1 -0
  41. package/dist/cli/setup-command.d.ts +9 -9
  42. package/dist/cli/setup-command.js +35 -12
  43. package/dist/cli/setup-command.js.map +1 -1
  44. package/dist/cli/usage.js +17 -9
  45. package/dist/cli/usage.js.map +1 -1
  46. package/dist/kernel/doctor/service.js +2 -1
  47. package/dist/kernel/doctor/service.js.map +1 -1
  48. package/dist/kernel/engine/assemble.d.ts +32 -3
  49. package/dist/kernel/engine/assemble.js +395 -102
  50. package/dist/kernel/engine/assemble.js.map +1 -1
  51. package/dist/kernel/engine/embed/config.d.ts +77 -0
  52. package/dist/kernel/engine/embed/config.js +308 -0
  53. package/dist/kernel/engine/embed/config.js.map +1 -0
  54. package/dist/kernel/engine/embed/deferred.d.ts +19 -14
  55. package/dist/kernel/engine/embed/deferred.js +27 -17
  56. package/dist/kernel/engine/embed/deferred.js.map +1 -1
  57. package/dist/kernel/engine/embed/identity.d.ts +14 -12
  58. package/dist/kernel/engine/embed/identity.js +36 -7
  59. package/dist/kernel/engine/embed/identity.js.map +1 -1
  60. package/dist/kernel/engine/embed/model.d.ts +107 -132
  61. package/dist/kernel/engine/embed/model.js +568 -289
  62. package/dist/kernel/engine/embed/model.js.map +1 -1
  63. package/dist/kernel/engine/embed/provider.d.ts +14 -21
  64. package/dist/kernel/engine/embed/provider.js +185 -221
  65. package/dist/kernel/engine/embed/provider.js.map +1 -1
  66. package/dist/kernel/engine/embed/store.d.ts +3 -1
  67. package/dist/kernel/engine/embed/store.js +111 -134
  68. package/dist/kernel/engine/embed/store.js.map +1 -1
  69. package/dist/kernel/engine/embed/sync.d.ts +17 -8
  70. package/dist/kernel/engine/embed/sync.js +157 -59
  71. package/dist/kernel/engine/embed/sync.js.map +1 -1
  72. package/dist/kernel/engine/mcp/facade.d.ts +9 -6
  73. package/dist/kernel/engine/mcp/facade.js +225 -24
  74. package/dist/kernel/engine/mcp/facade.js.map +1 -1
  75. package/dist/kernel/engine/mcp/query-mapper.d.ts +8 -2
  76. package/dist/kernel/engine/mcp/query-mapper.js +67 -9
  77. package/dist/kernel/engine/mcp/query-mapper.js.map +1 -1
  78. package/dist/kernel/engine/mcp/types.d.ts +42 -0
  79. package/dist/kernel/engine/paths.d.ts +2 -0
  80. package/dist/kernel/engine/paths.js +6 -0
  81. package/dist/kernel/engine/paths.js.map +1 -0
  82. package/dist/kernel/engine/retrieval/dispatcher.d.ts +27 -6
  83. package/dist/kernel/engine/retrieval/dispatcher.js +70 -6
  84. package/dist/kernel/engine/retrieval/dispatcher.js.map +1 -1
  85. package/dist/kernel/engine/retrieval/generator.d.ts +64 -0
  86. package/dist/kernel/engine/retrieval/generator.js +319 -0
  87. package/dist/kernel/engine/retrieval/generator.js.map +1 -0
  88. package/dist/kernel/engine/retrieval/index.d.ts +6 -4
  89. package/dist/kernel/engine/retrieval/index.js +3 -3
  90. package/dist/kernel/engine/retrieval/index.js.map +1 -1
  91. package/dist/kernel/engine/retrieval/passthrough.test-helper.d.ts +32 -0
  92. package/dist/kernel/engine/retrieval/passthrough.test-helper.js +35 -0
  93. package/dist/kernel/engine/retrieval/passthrough.test-helper.js.map +1 -0
  94. package/dist/kernel/engine/retrieval/reranker.d.ts +12 -17
  95. package/dist/kernel/engine/retrieval/reranker.js +116 -16
  96. package/dist/kernel/engine/retrieval/reranker.js.map +1 -1
  97. package/dist/kernel/engine/retrieval/taxonomy-context.d.ts +24 -0
  98. package/dist/kernel/engine/retrieval/taxonomy-context.js +96 -0
  99. package/dist/kernel/engine/retrieval/taxonomy-context.js.map +1 -0
  100. package/dist/kernel/engine/tracer.d.ts +1 -3
  101. package/dist/kernel/engine/tracer.js +39 -31
  102. package/dist/kernel/engine/tracer.js.map +1 -1
  103. package/dist/kernel/engine/types.d.ts +30 -6
  104. package/dist/kernel/engine/types.js.map +1 -1
  105. package/dist/kernel/harness/surface-registry.js +2 -5
  106. package/dist/kernel/harness/surface-registry.js.map +1 -1
  107. package/dist/kernel/link/convention-note.js +2 -2
  108. package/dist/kernel/link/convention-note.js.map +1 -1
  109. package/dist/kernel/measurement/no-default-contract.d.ts +1 -1
  110. package/dist/kernel/measurement/no-default-contract.js +2 -2
  111. package/dist/kernel/measurement/no-default-contract.js.map +1 -1
  112. package/dist/kernel/searchbackend/engine-search-backend.d.ts +1 -0
  113. package/dist/kernel/searchbackend/engine-search-backend.js +48 -8
  114. package/dist/kernel/searchbackend/engine-search-backend.js.map +1 -1
  115. package/dist/kernel/searchbackend/search-backend.d.ts +3 -1
  116. package/dist/kernel/searchbackend/search-backend.js +45 -8
  117. package/dist/kernel/searchbackend/search-backend.js.map +1 -1
  118. package/dist/kernel/semantic/semantic-engine.d.ts +11 -12
  119. package/dist/kernel/semantic/semantic-engine.js +35 -50
  120. package/dist/kernel/semantic/semantic-engine.js.map +1 -1
  121. package/dist/kernel/semantic/semantic-retrieve-args.d.ts +2 -1
  122. package/dist/kernel/semantic/semantic-retrieve-args.js +27 -0
  123. package/dist/kernel/semantic/semantic-retrieve-args.js.map +1 -1
  124. package/dist/kernel/semantic/semantic-retrieve-schema.d.ts +4 -2
  125. package/dist/kernel/semantic/semantic-retrieve-schema.js +2 -2
  126. package/dist/kernel/semantic/semantic-retrieve-schema.js.map +1 -1
  127. package/dist/kernel/semantic/semantic-retrieve.js +2 -2
  128. package/dist/kernel/semantic/semantic-retrieve.js.map +1 -1
  129. package/dist/kernel/semantic/semantic-tool-schemas.js +13 -1
  130. package/dist/kernel/semantic/semantic-tool-schemas.js.map +1 -1
  131. package/dist/kernel/setup/service.d.ts +3 -0
  132. package/dist/kernel/setup/service.js +22 -0
  133. package/dist/kernel/setup/service.js.map +1 -1
  134. package/dist/kernel/templates/resolver.d.ts +5 -0
  135. package/dist/kernel/templates/resolver.js +30 -1
  136. package/dist/kernel/templates/resolver.js.map +1 -1
  137. package/dist/mcp/server.js +16 -17
  138. package/dist/mcp/server.js.map +1 -1
  139. package/docs/conventions.md +19 -6
  140. package/docs/install.md +30 -1
  141. package/docs/verified-target.md +12 -2
  142. package/package.json +1 -1
  143. package/dist/cli/semantic-args.d.ts +0 -13
  144. package/dist/cli/semantic-args.js.map +0 -1
  145. package/dist/cli/semantic-http.d.ts +0 -11
  146. package/dist/cli/semantic-http.js.map +0 -1
  147. package/dist/cli/semantic-usage.d.ts +0 -1
  148. package/dist/cli/semantic-usage.js +0 -20
  149. package/dist/cli/semantic-usage.js.map +0 -1
  150. package/dist/cli/semantic.d.ts +0 -9
  151. package/dist/cli/semantic.js +0 -189
  152. package/dist/cli/semantic.js.map +0 -1
@@ -10,7 +10,7 @@
10
10
  {
11
11
  "name": "oms",
12
12
  "description": "Oh My Second Brain convention layer for Obsidian vaults — capture, retrieve, and validate knowledge under a declared semantic convention.",
13
- "version": "0.9.0",
13
+ "version": "0.10.0",
14
14
  "author": {
15
15
  "name": "gobeumsu",
16
16
  "email": "gobeumsu@gmail.com"
@@ -37,5 +37,5 @@
37
37
  ]
38
38
  }
39
39
  ],
40
- "version": "0.9.0"
40
+ "version": "0.10.0"
41
41
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oms",
3
- "version": "0.9.0",
3
+ "version": "0.10.0",
4
4
  "description": "Oh My Second Brain convention layer for Obsidian vaults — capture, retrieve, and validate knowledge under a declared semantic convention.",
5
5
  "author": {
6
6
  "name": "gobeumsu"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oms",
3
- "version": "0.9.0",
3
+ "version": "0.10.0",
4
4
  "description": "Oh My Second Brain convention layer for Obsidian vaults — Codex native rules, skills, and MCP adapter.",
5
5
  "_note": "oms install writes Codex MCP config, installs ~/.codex/rules/oms.md, and installs ~/.codex/skills/oms-*.",
6
6
  "skills": "./assets/skills/",
@@ -4,6 +4,12 @@ Skills, agents, templates, and host guidance changes belong here.
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.10.0] - 2026-09-01
8
+
9
+ ### Changed
10
+
11
+ - **The `/search` skill now documents an explicit `strategy` in `oms_search` calls with `op: "query"`.** Its frontmatter is unchanged.
12
+
7
13
  ## [0.9.0] - 2026-08-31
8
14
 
9
15
  ### Changed
package/CHANGELOG-cli.md CHANGED
@@ -4,6 +4,19 @@ Changes to the `oms` command surface belong here.
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.10.0] - 2026-09-01
8
+
9
+ ### Breaking
10
+
11
+ - **OMS now has one search taxonomy.** `oms semantic` and the old top-level collection, context, cleanup, and HTTP aliases are removed; use `oms search`, `oms doc get|multi-get`, `oms embed`, and `oms serve`. `oms index` contains exactly `sync|status|cleanup|collections|contexts`; embedding remains the compact top-level `oms embed` command.
12
+ - **Setup model options have changed.** `--embedding-*` is replaced by `--models-default`, `--models-descriptor`, and `--models-no-default`.
13
+ - **The embedding runtime is local-only.** The former Upstage provider path is removed; configured model identities must resolve to verified local GGUF artifacts.
14
+
15
+ ### Added
16
+
17
+ - **Search now uses an explicit closed qmd-v2.8.3 expansion strategy.** `--max-queries` is strict, reranking is opt-in, and local model-set descriptors are supported.
18
+ - **`oms serve` exposes only the canonical HTTP endpoints.** `/health`, `/search`, `/get`, and `/multi-get` remain; no query alias or second MCP tool surface is advertised.
19
+
7
20
  ## [0.9.0] - 2026-08-31
8
21
 
9
22
  ### Changed
@@ -4,6 +4,13 @@ Domain logic changes belong here.
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.10.0] - 2026-09-01
8
+
9
+ ### Changed
10
+
11
+ - **The kernel now manages model lifecycle explicitly and carries active-template taxonomy context through the canonical engine search path.** It reports unavailable capabilities honestly instead of silently claiming support.
12
+ - **Local model execution now has one strict lifecycle.** Vault model selection outranks setup defaults, GGUF contexts wait for admitted work before disposal, cross-encoder reranking receives bounded note content rather than filenames, and the inconsistent Upstage branch is removed.
13
+
7
14
  ## [0.9.0] - 2026-08-31
8
15
 
9
16
  ### Changed
package/CHANGELOG-mcp.md CHANGED
@@ -4,6 +4,12 @@ MCP server tools and resources belong here.
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.10.0] - 2026-09-01
8
+
9
+ ### Changed
10
+
11
+ - **`oms_search` query now accepts the closed `strategy`, `maxQueries`, `rerank`, and `candidateLimit` controls.** Query budgets are strict integers, expansion is not advertised on context retrieval, and these controls remain on the existing tool; no additional public search tool was added.
12
+
7
13
  ## [0.9.0] - 2026-08-31
8
14
 
9
15
  ### Changed
@@ -4,6 +4,8 @@ Per-host adapter and installer changes belong here.
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.10.0] - 2026-09-01
8
+
7
9
  ## [0.9.0] - 2026-08-31
8
10
 
9
11
  ### Changed
package/CHANGELOG.md CHANGED
@@ -10,6 +10,26 @@ This aggregate changelog contains changes that span multiple layers.
10
10
 
11
11
  ## [Unreleased]
12
12
 
13
+ ## [0.10.0] - 2026-09-01
14
+
15
+ ### Breaking
16
+
17
+ - **OMS now has one search taxonomy.** `oms semantic` and the old top-level collection, context, cleanup, and HTTP aliases are removed; use `oms search`, `oms doc get|multi-get`, `oms embed`, and `oms serve`. `oms index` contains exactly `sync|status|cleanup|collections|contexts`; embedding remains the compact top-level `oms embed` command.
18
+ - **Setup model options have changed.** `--embedding-*` is replaced by `--models-default`, `--models-descriptor`, and `--models-no-default`.
19
+ - **The embedding runtime is local-only.** The former Upstage provider path is removed; configured model identities must resolve to verified local GGUF artifacts.
20
+
21
+ ### Added
22
+
23
+ - **Search now uses an explicit closed qmd-v2.8.3 expansion strategy.** `--max-queries` is strict, reranking is opt-in, and local model-set descriptors are supported.
24
+ - **`oms serve` exposes only `/health`, `/search`, `/get`, and `/multi-get`.** It does not add a query alias or a second MCP tool surface.
25
+
26
+ ### Changed
27
+
28
+ - **The kernel makes model lifecycle and capability availability explicit.** The canonical engine path carries active-template taxonomy context into search rather than silently claiming unavailable capabilities.
29
+ - **Model-bearing work is lifecycle-safe and content-aware.** Vault selection outranks setup defaults, GGUF disposal waits for admitted work, and reranking scores bounded note content instead of filenames.
30
+ - **MCP search accepts `strategy`, `maxQueries`, `rerank`, and `candidateLimit` through the existing `oms_search` tool.** No additional public search tool was added.
31
+ - **The `/search` skill now calls `oms_search` with `op: "query"` and an explicit strategy.** Its frontmatter is unchanged.
32
+
13
33
  ## [0.9.0] - 2026-08-31
14
34
 
15
35
  ### Changed
package/README.ko.md CHANGED
@@ -34,13 +34,36 @@ oms update 패키지 업데이트 확인/적용 후 어댑터 재조정
34
34
  oms reconcile 엄격한 전역 볼트 포인터로 호스트 재기록
35
35
  oms doctor 템플릿 권위와 파생 상태 진단
36
36
  oms lint 깨진 [[wikilink]]와 고아 노트 점검
37
- oms semantic 네이티브 Markdown lexical/vector 검색 관리
37
+ oms search <text> 일반 lexical 검색; --vec, --hyde, --expand, --max-queries 1..32, --rerank은 명시적 선택
38
+ oms embed 색인된 노트의 임베딩 생성
39
+ oms index sync|status|cleanup|collections|contexts
40
+ oms doc get|multi-get
41
+ oms serve 로컬 검색 HTTP 서버 시작
38
42
  oms mcp stdio MCP 서버 시작
39
43
  oms hook Claude pre/post tool-use 볼트 가드 실행
40
44
  ```
41
45
 
42
46
  `oh-my-second-brain`이 전체 명령이고 `oms`는 짧은 별칭이다.
43
47
 
48
+ `oms search <text>`는 lexical-only다. `--vec`, `--hyde`는 각각의 typed
49
+ channel을 선택하고, `--expand`는 G004 expansion을 명시적으로 켜며,
50
+ `--max-queries`는 1부터 32까지의 정수만 받는다. `--rerank`도 opt-in이다.
51
+ `oms embed`가 유일한 embedding 명령이며 `oms index`에는 embedding
52
+ subcommand가 없다.
53
+
54
+ Vector 검색에는 검증된 로컬 embedding capability가 필요하다. 선택 경로는
55
+ 완전한 `OMS_EMBEDDING_PROVIDER`/`OMS_EMBEDDING_MODEL` 쌍, vault의
56
+ `.oms/models.json`과 검증된 설치 receipt, 또는 setup-installed default다.
57
+ HyDE에는 resolved generate capability가, reranking에는 resolved rerank
58
+ capability가 필요하다. 각각의 완전한 환경변수 쌍은
59
+ `OMS_GENERATE_PROVIDER`/`OMS_GENERATE_MODEL`과
60
+ `OMS_RERANK_PROVIDER`/`OMS_RERANK_MODEL`이다. 누락되거나 불완전하거나
61
+ 설치되지 않은 선택은 크게 실패한다. G004
62
+ expansion은 명시적으로 사용할 수 있는 기능이며, 교체·parity·outperformance를
63
+ 주장하지 않는다.
64
+ Setup에서는 로컬 검증 acquisition 정책 하나를 선택한다:
65
+ `--models-default`, `--models-descriptor <path>`, `--models-no-default`.
66
+
44
67
  ## MCP 도구
45
68
 
46
69
  `oms mcp`는 정확히 다섯 개의 공개 도구를 노출한다:
package/README.md CHANGED
@@ -34,13 +34,34 @@ oms update Check/apply a package update and reconcile adapters
34
34
  oms reconcile Re-stamp hosts from the strict global vault pointer
35
35
  oms doctor Diagnose template authority and derived state
36
36
  oms lint Check broken [[wikilinks]] and orphan notes
37
- oms semantic Manage native Markdown lexical/vector retrieval
37
+ oms search <text> Plain lexical search; --vec, --hyde, --expand, --max-queries 1..32, and --rerank are explicit
38
+ oms embed Generate embeddings for indexed notes
39
+ oms index sync|status|cleanup|collections|contexts
40
+ oms doc get|multi-get
41
+ oms serve Start the local search HTTP server
38
42
  oms mcp Start the stdio MCP server
39
43
  oms hook Run Claude pre/post tool-use vault guards
40
44
  ```
41
45
 
42
46
  `oh-my-second-brain` is the full command; `oms` is its short alias.
43
47
 
48
+ `oms search <text>` is lexical-only. `--vec` and `--hyde` select their respective
49
+ typed channels; `--expand` explicitly enables G004 expansion, `--max-queries`
50
+ accepts an integer from 1 through 32, and `--rerank` is opt-in. `oms embed` is
51
+ the sole embedding command; `oms index` has no embedding subcommand.
52
+
53
+ Vector search requires a verified local embedding capability, selected by a
54
+ complete `OMS_EMBEDDING_PROVIDER`/`OMS_EMBEDDING_MODEL` pair, the vault's
55
+ `.oms/models.json` plus its verified installed receipt, or a setup-installed
56
+ default. HyDE also requires a resolved generate capability; reranking requires
57
+ a resolved rerank capability. Their complete environment pairs are
58
+ `OMS_GENERATE_PROVIDER`/`OMS_GENERATE_MODEL` and
59
+ `OMS_RERANK_PROVIDER`/`OMS_RERANK_MODEL`. Missing, incomplete, or uninstalled
60
+ selections fail loudly. G004 expansion is an explicit
61
+ available capability; it makes no replacement, parity, or outperformance claim.
62
+ During setup, choose one local verified acquisition policy:
63
+ `--models-default`, `--models-descriptor <path>`, or `--models-no-default`.
64
+
44
65
  ## MCP tools
45
66
 
46
67
  `oms mcp` exposes exactly five public tools:
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oms",
3
- "version": "0.9.0",
3
+ "version": "0.10.0",
4
4
  "description": "Oh My Second Brain convention layer for Obsidian vaults — Hermes skill bundle and MCP adapter.",
5
5
  "_note": "oms install writes ~/.hermes/config.yaml mcp_servers.oms and installs skills under ~/.hermes/skills/knowledge-management/oms/."
6
6
  }
@@ -19,6 +19,7 @@ Retrieve vault knowledge without changing the vault.
19
19
  ```
20
20
 
21
21
  Plain `query` is projection-independent lexical retrieval and remains available when no embedding provider is configured. Template-managed source files are never returned as notes.
22
+ Expansion is explicit only for `oms_search` `op: "query"` through the closed strategy object and never changes a plain lexical query.
22
23
 
23
24
  Use `oms_search { op: "templates" }` to discover stable template IDs and declared axes. Typed queries use the same derived projection as writes:
24
25
 
@@ -23,10 +23,9 @@ export interface ParsedCliArgs {
23
23
  readonly json: boolean;
24
24
  readonly folders: readonly string[];
25
25
  readonly conventionNote: boolean;
26
- readonly embeddingDescriptorPath: string | undefined;
27
- readonly embeddingNoDefault: boolean;
28
- /** setup: install the pinned default embedding model. */
29
- readonly embeddingDefault: boolean;
26
+ readonly modelsDescriptorPath: string | undefined;
27
+ readonly modelsNoDefault: boolean;
28
+ readonly modelsDefault: boolean;
30
29
  readonly unknownFlags: readonly string[];
31
30
  readonly error: CliArgumentError | undefined;
32
31
  }
package/dist/cli/args.js CHANGED
@@ -31,9 +31,9 @@ export function parseCliArgs(argv, cwd = process.cwd()) {
31
31
  let json = false;
32
32
  const folders = [];
33
33
  let conventionNote = true;
34
- let embeddingDescriptorPath;
35
- let embeddingNoDefault = false;
36
- let embeddingDefault = false;
34
+ let modelsDescriptorPath;
35
+ let modelsNoDefault = false;
36
+ let modelsDefault = false;
37
37
  const unknownFlags = [];
38
38
  for (let i = 1; i < argv.length; i++) {
39
39
  const arg = argv[i];
@@ -117,20 +117,41 @@ export function parseCliArgs(argv, cwd = process.cwd()) {
117
117
  else if (arg === "--no-convention-note") {
118
118
  conventionNote = false;
119
119
  }
120
- else if (arg === "--embedding-descriptor" && next) {
121
- embeddingDescriptorPath = path.resolve(cwd, next);
120
+ else if (arg === "--models-descriptor") {
121
+ if (next === undefined || next === "" || next.startsWith("-")) {
122
+ return parsedArgsWithError("[oms] Missing value for --models-descriptor. Choose one of --models-default, --models-descriptor <path>, or --models-no-default.");
123
+ }
124
+ modelsDescriptorPath = path.resolve(cwd, next);
122
125
  i++;
123
126
  }
124
- else if (arg === "--embedding-no-default") {
125
- embeddingNoDefault = true;
127
+ else if (arg === "--models-no-default") {
128
+ modelsNoDefault = true;
129
+ }
130
+ else if (arg === "--models-default") {
131
+ modelsDefault = true;
126
132
  }
127
- else if (arg === "--embedding-default") {
128
- embeddingDefault = true;
133
+ else if (arg === "--embedding-descriptor") {
134
+ unknownFlags.push(arg);
135
+ if (next !== undefined && !next.startsWith("--"))
136
+ i++;
137
+ }
138
+ else if (arg === "--embedding-default" || arg === "--embedding-no-default") {
139
+ unknownFlags.push(arg);
129
140
  }
130
141
  else if (arg !== undefined) {
131
142
  unknownFlags.push(arg);
132
143
  }
133
144
  }
145
+ if (command === "setup") {
146
+ const modelChoices = [
147
+ modelsDescriptorPath !== undefined ? "--models-descriptor" : undefined,
148
+ modelsDefault ? "--models-default" : undefined,
149
+ modelsNoDefault ? "--models-no-default" : undefined,
150
+ ].filter((flag) => flag !== undefined);
151
+ if (modelChoices.length > 1) {
152
+ return parsedArgsWithError(`[oms] Mutually exclusive setup model options: ${modelChoices.join(" and ")}. Choose one of --models-default, --models-descriptor <path>, or --models-no-default.`);
153
+ }
154
+ }
134
155
  return {
135
156
  command,
136
157
  vault,
@@ -151,9 +172,9 @@ export function parseCliArgs(argv, cwd = process.cwd()) {
151
172
  json,
152
173
  folders,
153
174
  conventionNote,
154
- embeddingDescriptorPath,
155
- embeddingNoDefault,
156
- embeddingDefault,
175
+ modelsDescriptorPath,
176
+ modelsNoDefault,
177
+ modelsDefault,
157
178
  unknownFlags,
158
179
  error: undefined,
159
180
  };
@@ -178,9 +199,9 @@ export function parseCliArgs(argv, cwd = process.cwd()) {
178
199
  json,
179
200
  folders,
180
201
  conventionNote,
181
- embeddingDescriptorPath,
182
- embeddingNoDefault,
183
- embeddingDefault,
202
+ modelsDescriptorPath,
203
+ modelsNoDefault,
204
+ modelsDefault,
184
205
  unknownFlags,
185
206
  error: new CliArgumentError(message),
186
207
  };
@@ -1 +1 @@
1
- {"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/cli/args.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/cli/args.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { type ParsedSearchArgs } from "./search-args.js";
2
+ export interface DocCommandOptions {
3
+ readonly args: ParsedSearchArgs;
4
+ readonly vault: string;
5
+ readonly write: (message: string) => void;
6
+ readonly writeError: (message: string) => void;
7
+ }
8
+ export declare function runDocCommand(options: DocCommandOptions): Promise<number>;
@@ -0,0 +1,51 @@
1
+ import { booleanOption, numberOption, printJson, stringOption, targetList, } from "./search-args.js";
2
+ import { runEngineSession } from "./engine-session.js";
3
+ import { searchUsage } from "./search-usage.js";
4
+ export async function runDocCommand(options) {
5
+ const { args, vault, write, writeError } = options;
6
+ const command = args.positional[1];
7
+ const rest = args.positional.slice(2);
8
+ if (command === "get") {
9
+ const target = rest[0];
10
+ if (!target) {
11
+ writeError("Usage: oms doc get <target>");
12
+ return 1;
13
+ }
14
+ return runEngineSession(vault, { write: false }, async (adapter) => {
15
+ const result = await adapter.getDocument({
16
+ vault,
17
+ target,
18
+ collection: stringOption(args, "collection"),
19
+ fromLine: numberOption(args, "fromLine"),
20
+ lineCount: numberOption(args, "lineCount"),
21
+ lineNumbers: booleanOption(args, "lineNumbers"),
22
+ fullPath: booleanOption(args, "fullPath"),
23
+ });
24
+ printJson(write, result);
25
+ return result.available ? 0 : 1;
26
+ });
27
+ }
28
+ if (command === "multi-get") {
29
+ const targets = targetList(rest);
30
+ if (targets.length === 0) {
31
+ writeError("Usage: oms doc multi-get <target...>");
32
+ return 1;
33
+ }
34
+ return runEngineSession(vault, { write: false }, async (adapter) => {
35
+ const result = await adapter.multiGetDocuments({
36
+ vault,
37
+ targets: [...targets],
38
+ collection: stringOption(args, "collection"),
39
+ lineLimit: numberOption(args, "lineLimit"),
40
+ maxBytes: numberOption(args, "maxBytes"),
41
+ lineNumbers: booleanOption(args, "lineNumbers"),
42
+ fullPath: booleanOption(args, "fullPath"),
43
+ });
44
+ printJson(write, result);
45
+ return result.available ? 0 : 1;
46
+ });
47
+ }
48
+ writeError(searchUsage());
49
+ return 1;
50
+ }
51
+ //# sourceMappingURL=doc-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doc-command.js","sourceRoot":"","sources":["../../src/cli/doc-command.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,UAAU,GAEX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAShD,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAA0B;IAC5D,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IACnD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEtC,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,UAAU,CAAC,6BAA6B,CAAC,CAAC;YAC1C,OAAO,CAAC,CAAC;QACX,CAAC;QACD,OAAO,gBAAgB,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YACjE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC;gBACvC,KAAK;gBACL,MAAM;gBACN,UAAU,EAAE,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC;gBAC5C,QAAQ,EAAE,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC;gBACxC,SAAS,EAAE,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC;gBAC1C,WAAW,EAAE,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC;gBAC/C,QAAQ,EAAE,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC;aAC1C,CAAC,CAAC;YACH,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACzB,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,UAAU,CAAC,sCAAsC,CAAC,CAAC;YACnD,OAAO,CAAC,CAAC;QACX,CAAC;QACD,OAAO,gBAAgB,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YACjE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,iBAAiB,CAAC;gBAC7C,KAAK;gBACL,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC;gBACrB,UAAU,EAAE,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC;gBAC5C,SAAS,EAAE,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC;gBAC1C,QAAQ,EAAE,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC;gBACxC,WAAW,EAAE,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC;gBAC/C,QAAQ,EAAE,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC;aAC1C,CAAC,CAAC;YACH,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACzB,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;IAC1B,OAAO,CAAC,CAAC;AACX,CAAC"}
@@ -0,0 +1,15 @@
1
+ import type { McpEngineAdapter } from "../kernel/engine/mcp/facade.js";
2
+ export interface EngineSessionOptions {
3
+ readonly write: boolean;
4
+ readonly embed?: boolean;
5
+ readonly modelCacheDir?: string;
6
+ readonly modelEnv?: Readonly<Record<string, string | undefined>>;
7
+ }
8
+ export interface EngineSession {
9
+ readonly adapter: McpEngineAdapter;
10
+ dispose(): Promise<void>;
11
+ }
12
+ /** Fails loudly under ADR-007 before an operation that requires real embeddings. */
13
+ export declare function ensureEmbeddingCapability(vault: string, modelCacheDir?: string, modelEnv?: Readonly<Record<string, string | undefined>>): void;
14
+ export declare function createEngineSession(vault: string, options: EngineSessionOptions): EngineSession;
15
+ export declare function runEngineSession<T>(vault: string, options: EngineSessionOptions, fn: (adapter: McpEngineAdapter) => Promise<T>): Promise<T>;
@@ -0,0 +1,45 @@
1
+ import { assembleCoreSemanticEngineReadOnly, assembleEngineReadOnly, assembleEphemeralCoreSemanticEngine, } from "../kernel/engine/assemble.js";
2
+ import { assembleFullSemanticEngine, assembleSemanticEngine, embeddingConfigPresent, } from "../kernel/semantic/semantic-engine.js";
3
+ import { readModelsConfigSync } from "../kernel/engine/embed/config.js";
4
+ import { readInstalledModelsReceiptSync } from "../kernel/engine/embed/model.js";
5
+ /** Fails loudly under ADR-007 before an operation that requires real embeddings. */
6
+ export function ensureEmbeddingCapability(vault, modelCacheDir, modelEnv) {
7
+ if (!embeddingConfigPresent(vault, modelCacheDir, modelEnv)) {
8
+ throw new Error(`Embedding capability is unavailable for ${vault}. Configure OMS_EMBEDDING_PROVIDER and OMS_EMBEDDING_MODEL, declare embed in .oms/models.json, or run oms setup --models-default.`);
9
+ }
10
+ }
11
+ export function createEngineSession(vault, options) {
12
+ if (options.embed === true) {
13
+ ensureEmbeddingCapability(vault, options.modelCacheDir, options.modelEnv);
14
+ const engine = assembleFullSemanticEngine(vault, undefined, options.modelCacheDir, options.modelEnv);
15
+ return { adapter: engine.adapter, dispose: () => engine.dispose() };
16
+ }
17
+ if (options.write) {
18
+ const engine = assembleSemanticEngine(vault, undefined, options.modelCacheDir, options.modelEnv);
19
+ return { adapter: engine.adapter, dispose: () => engine.dispose() };
20
+ }
21
+ const modelInputs = {
22
+ vault,
23
+ modelsConfig: readModelsConfigSync(vault),
24
+ installedModelsReceipt: readInstalledModelsReceiptSync(options.modelCacheDir === undefined ? {} : { cacheDir: options.modelCacheDir }),
25
+ ...(options.modelCacheDir === undefined ? {} : { embeddingCacheDir: options.modelCacheDir }),
26
+ ...(options.modelEnv === undefined ? {} : { modelEnv: options.modelEnv }),
27
+ };
28
+ const readOnly = embeddingConfigPresent(vault, options.modelCacheDir, options.modelEnv)
29
+ ? assembleEngineReadOnly({
30
+ ...modelInputs,
31
+ })
32
+ : assembleCoreSemanticEngineReadOnly(modelInputs);
33
+ const engine = readOnly ?? assembleEphemeralCoreSemanticEngine(modelInputs);
34
+ return { adapter: engine.adapter, dispose: () => engine.dispose() };
35
+ }
36
+ export async function runEngineSession(vault, options, fn) {
37
+ const session = createEngineSession(vault, options);
38
+ try {
39
+ return await fn(session.adapter);
40
+ }
41
+ finally {
42
+ await session.dispose();
43
+ }
44
+ }
45
+ //# sourceMappingURL=engine-session.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine-session.js","sourceRoot":"","sources":["../../src/cli/engine-session.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { type ParsedSearchArgs } from "./search-args.js";
2
+ export interface IndexCommandOptions {
3
+ readonly args: ParsedSearchArgs;
4
+ readonly vault: string;
5
+ readonly write: (message: string) => void;
6
+ readonly writeError: (message: string) => void;
7
+ }
8
+ export declare function runIndexCommand(options: IndexCommandOptions): Promise<number>;
@@ -0,0 +1,60 @@
1
+ import { booleanOption, numberOption, printJson, stringOption, } from "./search-args.js";
2
+ import { runEngineSession } from "./engine-session.js";
3
+ import { searchUsage } from "./search-usage.js";
4
+ export async function runIndexCommand(options) {
5
+ const { args, vault, write, writeError } = options;
6
+ const command = args.positional[1];
7
+ if (command === "sync") {
8
+ return runEngineSession(vault, { write: true, embed: false }, async (adapter) => {
9
+ const result = await adapter.syncEmbeddings({
10
+ vault,
11
+ collection: stringOption(args, "collection"),
12
+ index: stringOption(args, "index"),
13
+ embed: false,
14
+ force: booleanOption(args, "force"),
15
+ chunkStrategy: stringOption(args, "chunkStrategy"),
16
+ maxDocsPerBatch: numberOption(args, "maxDocsPerBatch"),
17
+ maxBatchMb: numberOption(args, "maxBatchMb"),
18
+ });
19
+ printJson(write, result);
20
+ return result.available ? 0 : 1;
21
+ });
22
+ }
23
+ if (command === "status") {
24
+ return runEngineSession(vault, { write: false }, async (adapter) => {
25
+ const result = await adapter.semanticStatus({ vault, index: stringOption(args, "index") });
26
+ printJson(write, result);
27
+ return result.available ? 0 : 1;
28
+ });
29
+ }
30
+ if (command === "cleanup") {
31
+ return runEngineSession(vault, { write: true }, async (adapter) => {
32
+ const result = await adapter.cleanup({ vault, index: stringOption(args, "index") });
33
+ printJson(write, result);
34
+ return result.available ? 0 : 1;
35
+ });
36
+ }
37
+ if (command === "collections") {
38
+ return runEngineSession(vault, { write: false }, async (adapter) => {
39
+ const result = adapter.listCollections({ vault, index: stringOption(args, "index") });
40
+ if (!result.available) {
41
+ printJson(write, result);
42
+ return 1;
43
+ }
44
+ const name = args.positional[2];
45
+ printJson(write, { collections: name ? result.collections.filter((collection) => collection.name === name) : result.collections });
46
+ return 0;
47
+ });
48
+ }
49
+ if (command === "contexts") {
50
+ return runEngineSession(vault, { write: false }, async (adapter) => {
51
+ const result = await adapter.listContexts({ vault, index: stringOption(args, "index") });
52
+ printJson(write, result);
53
+ return result.available ? 0 : 1;
54
+ });
55
+ }
56
+ writeError(`[oms] Unknown index subcommand: ${command ?? "(none)"}`);
57
+ writeError(searchUsage());
58
+ return 1;
59
+ }
60
+ //# sourceMappingURL=index-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-command.js","sourceRoot":"","sources":["../../src/cli/index-command.ts"],"names":[],"mappings":"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"}
package/dist/cli/oms.d.ts CHANGED
@@ -5,5 +5,5 @@ export { runDoctor, runLint } from "./doctor-lint.js";
5
5
  export { runAudit } from "./audit.js";
6
6
  export { formatLinkResult, runLink, } from "./link-command.js";
7
7
  export { runLinkify } from "./linkify.js";
8
- export { runSetup, type SetupPrompt, type SetupEmbeddingDescriptor, } from "./setup-command.js";
8
+ export { runSetup, type SetupPrompt, } from "./setup-command.js";
9
9
  export { maybePrintUpdateNotice } from "./update-notice.js";