oh-my-second-brain 0.8.1 → 0.8.3

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.
@@ -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.8.1",
13
+ "version": "0.8.3",
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.8.1"
40
+ "version": "0.8.3"
41
41
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oms",
3
- "version": "0.8.1",
3
+ "version": "0.8.3",
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.8.1",
3
+ "version": "0.8.3",
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,10 @@ Skills, agents, and ontology data changes belong here.
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.8.3] - 2026-08-29
8
+
9
+ ## [0.8.2] - 2026-08-29
10
+
7
11
  ## [0.8.1] - 2026-08-29
8
12
 
9
13
  ## [0.8.0] - 2026-08-29
package/CHANGELOG-cli.md CHANGED
@@ -4,6 +4,10 @@ Changes to the `oms` command surface belong here.
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.8.3] - 2026-08-29
8
+
9
+ ## [0.8.2] - 2026-08-29
10
+
7
11
  ## [0.8.1] - 2026-08-29
8
12
 
9
13
  ## [0.8.0] - 2026-08-29
@@ -4,6 +4,10 @@ Domain logic changes belong here.
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.8.3] - 2026-08-29
8
+
9
+ ## [0.8.2] - 2026-08-29
10
+
7
11
  ## [0.8.1] - 2026-08-29
8
12
 
9
13
  ### Fixed
package/CHANGELOG-mcp.md CHANGED
@@ -4,6 +4,10 @@ MCP server tools and resources belong here.
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.8.3] - 2026-08-29
8
+
9
+ ## [0.8.2] - 2026-08-29
10
+
7
11
  ## [0.8.1] - 2026-08-29
8
12
 
9
13
  ## [0.8.0] - 2026-08-29
@@ -4,6 +4,10 @@ Per-host adapter and installer changes belong here.
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.8.3] - 2026-08-29
8
+
9
+ ## [0.8.2] - 2026-08-29
10
+
7
11
  ## [0.8.1] - 2026-08-29
8
12
 
9
13
  ## [0.8.0] - 2026-08-29
package/CHANGELOG.md CHANGED
@@ -10,6 +10,23 @@ This aggregate changelog contains changes that span multiple layers.
10
10
 
11
11
  ## [Unreleased]
12
12
 
13
+ ## [0.8.3] - 2026-08-29
14
+
15
+ ### Fixed
16
+
17
+ - **The Korean README documented an MCP surface that no longer exists.** It listed eleven tools — `oms_graph_status`, `oms_retrieve_by_axis`, `oms_lazy_load_note`, and eight more — as what `oms mcp` exposes. Those are the retired detail operations, which now route through the five public tools by an `op` parameter. It also named the write tool `write` rather than `oms_write`. Anyone wiring an MCP client from that list would have called tools the server does not advertise — `ListTools` returns exactly the five. It now states the same five tools the English README does: `oms_write`, `oms_search`, `oms_link`, `oms_status`, `oms_doctor`.
18
+ - **The Korean README credited `oms doctor` with `oms lint`'s job and omitted `lint` entirely.** `doctor` was described as broken-link and orphan detection, which is what `lint` does; `doctor` validates note frontmatter against the ontology. Both commands are now listed with their actual responsibilities.
19
+
20
+ ## [0.8.2] - 2026-08-29
21
+
22
+ ### Fixed
23
+
24
+ - **The Korean README told you to set an environment variable that does nothing.** It documented `OMS_MODEL_PATH` as the way to point OMS at a local GGUF model, but that name was retired and is read nowhere in the codebase — anyone following those instructions got no embeddings and no explanation why. It also never mentioned `oms setup --embedding-default`, so the one-step path that has shipped since 0.8.0 was invisible to Korean readers. Both READMEs now describe the same setup, and both name `OMS_EMBEDDING_PROVIDER` + `OMS_EMBEDDING_MODEL` as the way to choose your own model.
25
+
26
+ ### Documentation
27
+
28
+ - **Both READMEs now say the default embedding model is unmeasured.** `--embedding-default` installs the same model and prompt format qmd resolves by default, and its ranking quality here rests on that equivalence — not on a measured comparison in this project's own retrieval harness. That caveat existed only in a repository decision record, which npm users never see. It is now stated where the feature is recommended, alongside a link explaining why the measurement is not simply pending.
29
+
13
30
  ## [0.8.1] - 2026-08-29
14
31
 
15
32
  ### Fixed
package/README.ko.md CHANGED
@@ -74,7 +74,8 @@ oms setup 기존 볼트를 컨벤션으로 채택 (.oms/taxonomy.yaml 작
74
74
  oms install 호스트 어댑터 + MCP 등록 설치
75
75
  oms uninstall 호스트 어댑터 + MCP 등록 제거
76
76
  oms update 패키지 업데이트 확인/적용 후 어댑터 재조정
77
- oms doctor 온톨로지 기준 노트 검증 (broken-link + orphan 탐지)
77
+ oms doctor 온톨로지 기준으로 노트 frontmatter 검증 (필드/컨셉별 집계)
78
+ oms lint 볼트 링크 건강도 점검: 깨진 [[wikilink]] + 고아 노트
78
79
  oms semantic 네이티브 마크다운 시맨틱 인덱스 / 검색 / 조회
79
80
  oms mcp stdio MCP 서버 시작
80
81
  oms hook 볼트 가드 훅 (Claude Code pre/post tool-use)
@@ -84,11 +85,11 @@ oms hook 볼트 가드 훅 (Claude Code pre/post tool-use)
84
85
 
85
86
  ## MCP 도구
86
87
 
87
- `oms mcp`는 상태, 읽기, 검색, 검증, 게이트된 write 도구를 노출한다:
88
+ `oms mcp`는 정확히 다섯 개의 공개 도구를 노출한다:
88
89
 
89
- `oms_graph_status` · `oms_graph_build` · `oms_list_concepts` · `oms_retrieve_context` · `oms_retrieve_by_axis` · `oms_sync_embeddings` · `oms_semantic_query` · `oms_get_document` · `oms_multi_get_documents` · `oms_lazy_load_note` · `oms_validate_contract` · `write`
90
+ `oms_write` · `oms_search` · `oms_link` · `oms_status` · `oms_doctor`
90
91
 
91
- `write`는 경로 안전성, 볼트 격리, 커널이 소유한 컨셉 계약으로 게이트된다.
92
+ `oms_write`는 경로 안전성, 볼트 격리, 커널이 소유한 컨셉 계약으로 게이트된다.
92
93
 
93
94
  ## 볼트 구조 (`.oms/`)
94
95
 
@@ -102,14 +103,21 @@ oms hook 볼트 가드 훅 (Claude Code pre/post tool-use)
102
103
 
103
104
  ## 시맨틱 검색 (선택)
104
105
 
105
- 시맨틱 검색에는 실제 임베딩 모델이 필요하다 — 프로덕션 경로에 가짜/해시 폴백은 없다(ADR-007). 로컬 GGUF 모델(`OMS_MODEL_PATH`) **또는** 임베딩 API 키(`UPSTAGE_API_KEY`) 중 하나를 설정한 뒤 동기화·질의한다:
106
+ 시맨틱 검색에는 실제 임베딩 모델이 필요하다 — 프로덕션 경로에 가짜/해시 폴백은 없다(ADR-007). 가장 간단한 경로는 고정된 로컬 기본 모델이다:
106
107
 
107
108
  ```bash
108
- oms semantic sync --vault /path/to/vault --collection vault
109
- oms semantic query "무엇을 찾아야 하나?" --vault /path/to/vault
109
+ oms setup --vault /path/to/vault --yes --embedding-default
110
+ oms embed --vault /path/to/vault
111
+ oms semantic vsearch "무엇을 찾아야 하나?" --vault /path/to/vault
110
112
  ```
111
113
 
112
- 모델을 설정하지 않아도 그래프 기반 검색과 컨벤션 검증은 그대로 동작한다.
114
+ `--embedding-default`는 EmbeddingGemma-300M(약 318 MB)을 내려받아 고정된 SHA-256으로 검증한 뒤, 볼트가 아니라 사용자 캐시 디렉터리에 설치한다. `node-llama-cpp`로 로컬 실행되므로 API 키가 필요 없고, 모델 원본 768차원을 폴딩 없이 그대로 사용한다. 이후 `oms embed`와 벡터 검색은 환경변수 없이 동작한다.
115
+
116
+ 의존하기 전에 알아둘 점이 하나 있다. 이 모델과 프롬프트 형식은 [qmd](https://github.com/tobi/qmd)가 기본으로 쓰는 것과 동일하지만, 이 프로젝트의 자체 검색 하네스에서 측정된 적은 한 번도 없다. 여기서의 랭킹 품질은 대안과의 측정 비교가 아니라 그 동일성에 근거한다. 그 이유와, 해당 측정이 단순히 '보류 중'이 아닌 이유는 [결정 기록](https://github.com/GoBeromsu/oh-my-second-brain/blob/main/docs/measurements/model-default-deferral.md)에 적혀 있다.
117
+
118
+ 직접 고른 모델을 쓰려면 `OMS_EMBEDDING_PROVIDER`와 `OMS_EMBEDDING_MODEL`을 함께 지정한다(`gguf`에 로컬 GGUF 경로, 또는 `upstage`에 모델 id와 `UPSTAGE_API_KEY`). 둘 중 하나만 지정하면 두 변수 이름을 모두 알려주며 실패한다. 조용한 폴백은 없다.
119
+
120
+ 모델이 없어도 어휘 검색, 그래프 기반 검색, 컨벤션 검증은 그대로 동작한다. 벡터와 HyDE 요청만 거부되며, 그때 어떤 변수를 설정해야 하는지 알려준다.
113
121
 
114
122
  ## 개발
115
123
 
package/README.md CHANGED
@@ -113,6 +113,8 @@ oms semantic vsearch "what should I retrieve?" --vault /path/to/vault
113
113
 
114
114
  `--embedding-default` downloads EmbeddingGemma-300M (~318 MB), verifies it against a pinned SHA-256, and installs it under your user cache — not in the vault. It runs locally through `node-llama-cpp`, needs no API key, and embeds at the model's full 768 dimensions with no folding. After that, `oms embed` and vector search need no environment variables.
115
115
 
116
+ One thing to know before you rely on it: this is the same model and prompt format [qmd](https://github.com/tobi/qmd) resolves by default, but it has never been measured in this project's own retrieval harness. Its ranking quality here rests on that equivalence, not on a measured comparison against alternatives. [The decision record](https://github.com/GoBeromsu/oh-my-second-brain/blob/main/docs/measurements/model-default-deferral.md) explains why, and why the measurement is not merely pending.
117
+
116
118
  To choose your own model instead, set `OMS_EMBEDDING_PROVIDER` + `OMS_EMBEDDING_MODEL` (`gguf` with a local GGUF path, or `upstage` with a model id and `UPSTAGE_API_KEY`). Setting only one of the pair is an error naming both, never a silent fallback.
117
119
 
118
120
  Without any model, lexical search, graph-based retrieval, and convention validation all still work; only vector and HyDE requests are refused, and they say which variables to set.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oms",
3
- "version": "0.8.1",
3
+ "version": "0.8.3",
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
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oh-my-second-brain",
3
- "version": "0.8.1",
3
+ "version": "0.8.3",
4
4
  "description": "Oh My Second Brain: a host-agnostic, user-owned convention layer for Obsidian and plain-markdown knowledge vaults.",
5
5
  "type": "module",
6
6
  "license": "MIT",