watashi-db 0.0.7 → 0.0.9

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 (174) hide show
  1. package/README.md +120 -63
  2. package/Usersj.miyamoto.watashi-dbdefault.db +0 -0
  3. package/cowork-plugin/.claude-plugin/plugin.json +1 -1
  4. package/cowork-plugin/.mcp.json +1 -1
  5. package/cowork-plugin/hooks/hooks.json +7 -0
  6. package/cowork-plugin/skills/recall/SKILL.md +6 -3
  7. package/dist/config/loader.js +25 -1
  8. package/dist/config/loader.js.map +1 -1
  9. package/dist/config/schema.d.ts +53 -0
  10. package/dist/config/schema.js +9 -0
  11. package/dist/config/schema.js.map +1 -1
  12. package/dist/config/validator.js +11 -0
  13. package/dist/config/validator.js.map +1 -1
  14. package/dist/constants.d.ts +9 -1
  15. package/dist/constants.js +51 -3
  16. package/dist/constants.js.map +1 -1
  17. package/dist/context-pack.d.ts +7 -2
  18. package/dist/context-pack.js +137 -31
  19. package/dist/context-pack.js.map +1 -1
  20. package/dist/database/archive.d.ts +39 -0
  21. package/dist/database/archive.js +180 -0
  22. package/dist/database/archive.js.map +1 -0
  23. package/dist/database/groom.d.ts +39 -0
  24. package/dist/database/groom.js +246 -0
  25. package/dist/database/groom.js.map +1 -0
  26. package/dist/database/maintain.d.ts +39 -0
  27. package/dist/database/maintain.js +62 -0
  28. package/dist/database/maintain.js.map +1 -0
  29. package/dist/database/queries-core.d.ts +320 -12
  30. package/dist/database/queries-core.js +1834 -56
  31. package/dist/database/queries-core.js.map +1 -1
  32. package/dist/database/queries.d.ts +213 -12
  33. package/dist/database/queries.js +109 -0
  34. package/dist/database/queries.js.map +1 -1
  35. package/dist/database/schema.js +4199 -1
  36. package/dist/database/schema.js.map +1 -1
  37. package/dist/embedding/embed-on-write.d.ts +98 -0
  38. package/dist/embedding/embed-on-write.js +104 -0
  39. package/dist/embedding/embed-on-write.js.map +1 -0
  40. package/dist/embedding/ollama.d.ts +18 -0
  41. package/dist/embedding/ollama.js +67 -0
  42. package/dist/embedding/ollama.js.map +1 -0
  43. package/dist/embedding/openai.d.ts +17 -0
  44. package/dist/embedding/openai.js +77 -0
  45. package/dist/embedding/openai.js.map +1 -0
  46. package/dist/embedding/provider.d.ts +34 -0
  47. package/dist/embedding/provider.js +92 -0
  48. package/dist/embedding/provider.js.map +1 -0
  49. package/dist/embedding/search.d.ts +61 -0
  50. package/dist/embedding/search.js +165 -0
  51. package/dist/embedding/search.js.map +1 -0
  52. package/dist/embedding/similarity.d.ts +21 -0
  53. package/dist/embedding/similarity.js +48 -0
  54. package/dist/embedding/similarity.js.map +1 -0
  55. package/dist/embedding/transformers-local.d.ts +24 -0
  56. package/dist/embedding/transformers-local.js +65 -0
  57. package/dist/embedding/transformers-local.js.map +1 -0
  58. package/dist/embedding/types.d.ts +27 -0
  59. package/dist/embedding/types.js +6 -0
  60. package/dist/embedding/types.js.map +1 -0
  61. package/dist/hook.d.ts +54 -1
  62. package/dist/hook.js +560 -7
  63. package/dist/hook.js.map +1 -1
  64. package/dist/index.js +4 -0
  65. package/dist/index.js.map +1 -1
  66. package/dist/policy.d.ts +7 -1
  67. package/dist/policy.js +30 -0
  68. package/dist/policy.js.map +1 -1
  69. package/dist/project-detect.d.ts +8 -0
  70. package/dist/project-detect.js +36 -0
  71. package/dist/project-detect.js.map +1 -0
  72. package/dist/prompts/bootstrap-prompts.js +48 -0
  73. package/dist/prompts/bootstrap-prompts.js.map +1 -1
  74. package/dist/resources/config-guide-content.d.ts +7 -0
  75. package/dist/resources/config-guide-content.js +180 -0
  76. package/dist/resources/config-guide-content.js.map +1 -0
  77. package/dist/resources/context-resources.js +18 -1
  78. package/dist/resources/context-resources.js.map +1 -1
  79. package/dist/server-instructions.js +60 -3
  80. package/dist/server-instructions.js.map +1 -1
  81. package/dist/server.js +26 -18
  82. package/dist/server.js.map +1 -1
  83. package/dist/setup.d.ts +14 -0
  84. package/dist/setup.js +133 -10
  85. package/dist/setup.js.map +1 -1
  86. package/dist/store/federation.d.ts +126 -2
  87. package/dist/store/federation.js +719 -2
  88. package/dist/store/federation.js.map +1 -1
  89. package/dist/store/merge.d.ts +11 -0
  90. package/dist/store/merge.js +38 -8
  91. package/dist/store/merge.js.map +1 -1
  92. package/dist/store/session-state.d.ts +12 -0
  93. package/dist/store/session-state.js +27 -1
  94. package/dist/store/session-state.js.map +1 -1
  95. package/dist/store/sync-manager.d.ts +7 -5
  96. package/dist/store/sync-manager.js +134 -58
  97. package/dist/store/sync-manager.js.map +1 -1
  98. package/dist/tools/claim-tools.d.ts +7 -1
  99. package/dist/tools/claim-tools.js +328 -178
  100. package/dist/tools/claim-tools.js.map +1 -1
  101. package/dist/tools/decision-tools.d.ts +3 -2
  102. package/dist/tools/decision-tools.js +48 -131
  103. package/dist/tools/decision-tools.js.map +1 -1
  104. package/dist/tools/episode-tools.d.ts +2 -3
  105. package/dist/tools/episode-tools.js +59 -130
  106. package/dist/tools/episode-tools.js.map +1 -1
  107. package/dist/tools/export-tools.d.ts +7 -1
  108. package/dist/tools/export-tools.js +90 -68
  109. package/dist/tools/export-tools.js.map +1 -1
  110. package/dist/tools/get-tools.d.ts +11 -0
  111. package/dist/tools/get-tools.js +282 -0
  112. package/dist/tools/get-tools.js.map +1 -0
  113. package/dist/tools/groom-tools.d.ts +13 -0
  114. package/dist/tools/groom-tools.js +197 -0
  115. package/dist/tools/groom-tools.js.map +1 -0
  116. package/dist/tools/helpers.d.ts +10 -0
  117. package/dist/tools/helpers.js +10 -0
  118. package/dist/tools/helpers.js.map +1 -0
  119. package/dist/tools/insight-tools.d.ts +11 -0
  120. package/dist/tools/insight-tools.js +167 -0
  121. package/dist/tools/insight-tools.js.map +1 -0
  122. package/dist/tools/knowledge-tools.d.ts +7 -0
  123. package/dist/tools/knowledge-tools.js +151 -0
  124. package/dist/tools/knowledge-tools.js.map +1 -0
  125. package/dist/tools/maintenance-tools.d.ts +11 -0
  126. package/dist/tools/maintenance-tools.js +1074 -0
  127. package/dist/tools/maintenance-tools.js.map +1 -0
  128. package/dist/tools/memo-tools.d.ts +15 -0
  129. package/dist/tools/memo-tools.js +370 -0
  130. package/dist/tools/memo-tools.js.map +1 -0
  131. package/dist/tools/model-tools.d.ts +11 -0
  132. package/dist/tools/model-tools.js +175 -0
  133. package/dist/tools/model-tools.js.map +1 -0
  134. package/dist/tools/profile-tools.d.ts +13 -1
  135. package/dist/tools/profile-tools.js +80 -113
  136. package/dist/tools/profile-tools.js.map +1 -1
  137. package/dist/tools/promote-tools.js +91 -4
  138. package/dist/tools/promote-tools.js.map +1 -1
  139. package/dist/tools/query-tools.d.ts +13 -1
  140. package/dist/tools/query-tools.js +358 -121
  141. package/dist/tools/query-tools.js.map +1 -1
  142. package/dist/tools/store-tools.d.ts +5 -2
  143. package/dist/tools/store-tools.js +94 -74
  144. package/dist/tools/store-tools.js.map +1 -1
  145. package/dist/tools/theory-tools.js +24 -0
  146. package/dist/tools/theory-tools.js.map +1 -1
  147. package/dist/types.d.ts +641 -229
  148. package/dist/types.js +186 -134
  149. package/dist/types.js.map +1 -1
  150. package/misc/work-notes/main 20260224.txt +98 -0
  151. package/misc/work-notes/plans/20260220084456_UNKNOWN_Issue-#24-Episode/343/202/277/343/202/244/343/203/210/343/203/253/343/201/256-Qiita/346/226/271/345/274/217/343/202/254/343/202/244.md +52 -0
  152. package/misc/work-notes/plans/20260220095602_UNKNOWN_Issue-#10-/346/233/270/343/201/215/350/276/274/343/201/277/346/231/202/343/201/256/343/202/263/343/203/263/343/203/206/343/203/263/343/203/204Lint/346/251/237.md +120 -0
  153. package/misc/work-notes/plans/20260220100439_UNKNOWN_Issue-#10-/346/233/270/343/201/215/350/276/274/343/201/277/346/231/202/343/201/256/343/202/263/343/203/263/343/203/206/343/203/263/343/203/204Lint/346/251/237.md +156 -0
  154. package/misc/work-notes/plans/20260220110445_UNKNOWN_Issue-#11-/343/203/227/343/203/255/343/203/225/343/202/241/343/202/244/343/203/253/350/246/201/347/264/204/343/201/256/343/202/271/343/202/263/343/202/242/343/203/252/303/243.md +154 -0
  155. package/misc/work-notes/plans/20260220114035_UNKNOWN_Issue-#15-/343/202/263/343/203/263/343/203/206/343/202/255/343/202/271/343/203/210/344/272/210/347/256/227API/357/274/210token-budg.md +178 -0
  156. package/misc/work-notes/plans/20260220133902_UNKNOWN_Issue-#16-/343/202/257/343/203/251/343/202/244/343/202/242/343/203/263/343/203/210/345/210/245/343/203/235/343/203/252/343/202/267/343/203/274/345/261/244/357/274/210r.md +284 -0
  157. package/misc/work-notes/plans/20260220151356_UNKNOWN_Issue-#28-V9/343/203/236/343/202/244/343/202/260/343/203/254/343/203/274/343/202/267/343/203/247/343/203/263/347/265/261/345/220/210/357/274/210#23-+.md +178 -0
  158. package/misc/work-notes/plans/20260227042805_UNKNOWN_config.json-/343/202/254/343/202/244/343/203/211/346/225/264/345/202/231-+-MCP-resourceprompt-/303/250.md +90 -0
  159. package/misc/work-notes/plans/20260302113135_UNKNOWN_MCP/343/203/204/343/203/274/343/203/253/343/203/210/343/203/274/343/202/257/343/203/263/343/203/200/343/202/244/343/202/250/343/203/203/343/203/210-(~17,370-/303/242.md +152 -0
  160. package/misc/work-notes/plans/20260302151940_UNKNOWN_README.md-/347/217/276/350/241/214API/345/217/215/346/230/240/343/202/242/343/203/203/343/203/227/343/203/207/343/203/274/343/203/210.md +87 -0
  161. package/misc/work-notes/plans/20260302173113_UNKNOWN_watashi-manage-claim-/343/202/250/343/203/251/343/203/274/346/224/271/345/226/204-+-search-summ.md +70 -0
  162. package/misc/work-notes/plans/20260303091511_UNKNOWN_Issue-#60-entity-type-/347/234/201/347/225/245/345/257/276/345/277/234-/342/200/224-ID/345/206/205/351/203/250/350/247/243.md +205 -0
  163. package/misc/work-notes/plans/20260304152700_UNKNOWN_Issue-#61-setup-/343/202/263/343/203/236/343/203/263/343/203/211/343/201/247-MCP-/343/202/265/343/203/274/343/203/220/343/203/274/303/247/302/231.md +67 -0
  164. package/misc/work-notes/plans/20260304170153_UNKNOWN_Issue-#54-user-memoplanissue-/343/201/256-content-/342/206/222-l1-co.md +76 -0
  165. package/package.json +12 -2
  166. package/scripts/backfill-search-summary.mjs +219 -0
  167. package/scripts/migrate-theories.mjs +231 -0
  168. package/{watashi-db-cowork-plugin.zip → watashi-db-plugin.zip} +0 -0
  169. package/dist/config/instance.d.ts +0 -10
  170. package/dist/config/instance.js +0 -39
  171. package/dist/config/instance.js.map +0 -1
  172. package/dist/config/types.d.ts +0 -116
  173. package/dist/config/types.js +0 -37
  174. package/dist/config/types.js.map +0 -1
package/README.md CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  > [!NOTE]
7
7
  > **v0.x は開発初期段階です。** APIやデータ構造に破壊的変更が入る可能性があります。
8
- > データはすべてローカル(`~/.watashi-db/watashi.db`)に保存され、外部送信は一切ありません。
8
+ > データはすべてローカル(`~/.watashi-db/default.db`)に保存され、外部送信は一切ありません。
9
9
 
10
10
  ---
11
11
 
@@ -24,6 +24,7 @@
24
24
  - **監査ログ**: 全操作に「誰が・何を・なぜ」を自動記録
25
25
  - **Provenance自動付与**: 接続元AIの情報をサーバー側で自動記録(自己申告に依存しない)
26
26
  - **L2推論基盤**: Claim間の関係(推論グラフ)、構造化根拠参照、検証ログ
27
+ - **マルチデバイス同期**: Google Drive等を介したスナップショット同期、複数PCで同一データを共有可能
27
28
 
28
29
  ---
29
30
 
@@ -32,51 +33,56 @@
32
33
  ### 前提条件
33
34
 
34
35
  - Node.js >= 18
35
- - MCP対応のAIクライアント(Claude Code, Claude Desktop 等)
36
+ - MCP対応のAIクライアント(Claude Code, Codex CLI, Claude Desktop 等)
36
37
 
37
- ### インストール
38
+ ### ステップ 1: MCP サーバーを登録(全クライアント共通)
38
39
 
39
- ```bash
40
- npm install -g watashi-db
41
- ```
42
-
43
- ### Claude Code での設定
40
+ お使いの MCP クライアントに watashi-db を登録します:
44
41
 
45
42
  ```bash
46
- claude mcp add watashi-db -- npx watashi-db
43
+ # Claude Code
44
+ claude mcp add --scope user watashi-db -- npx -y watashi-db@latest
45
+
46
+ # Codex CLI
47
+ codex mcp add watashi-db -- npx -y watashi-db@latest
47
48
  ```
48
49
 
49
- または `~/.claude.json` に直接記述:
50
+ Claude Desktop の場合は `claude_desktop_config.json` に追加:
50
51
 
51
52
  ```json
52
53
  {
53
54
  "mcpServers": {
54
55
  "watashi-db": {
55
56
  "command": "npx",
56
- "args": ["watashi-db"]
57
+ "args": ["-y", "watashi-db@latest"]
57
58
  }
58
59
  }
59
60
  }
60
61
  ```
61
62
 
62
- ### Claude Desktop での設定
63
+ > [!TIP]
64
+ > `@latest` をつけるとクライアント起動時に常に最新版が使われます。
63
65
 
64
- `claude_desktop_config.json` に追加:
66
+ ### ステップ 2: Hook と /recall を配置(Claude Code)
65
67
 
66
- ```json
67
- {
68
- "mcpServers": {
69
- "watashi-db": {
70
- "command": "npx",
71
- "args": ["watashi-db"]
72
- }
73
- }
74
- }
68
+ ```bash
69
+ npx watashi-db setup
75
70
  ```
76
71
 
72
+ Claude Code を再起動すれば使えます。
73
+
74
+ - **Hook**: プロンプト送信時に設計判断・好み・作業の節目を自動記録するリマインダー
75
+ - **@nolog**: プロンプトの先頭に `@nolog` を付けると、そのメッセージの内容は記録されません
76
+ - **/recall**: 過去の判断・好み・経験を検索するコマンド
77
+
78
+ > [!NOTE]
79
+ > ステップ 2 は現在 Claude Code 専用です。Codex CLI は Hook と Skill に未対応のため、
80
+ > watashi-db への記録・活用は server instructions 経由の LLM 任せとなります。
81
+ > 背景: [#31](https://github.com/bareforge/watashi-db/issues/31), [#32](https://github.com/bareforge/watashi-db/issues/32)
82
+
77
83
  ### Claude Code Cowork プラグイン
78
84
 
79
- [Releases](https://github.com/bareforge/watashi-db/releases) から `watashi-db-cowork-plugin.zip` をダウンロードし、Cowork UI の「プラグインをアップロード」からインストールできます。
85
+ リポジトリの `cowork-plugin/` ディレクトリに Cowork 用プラグインが含まれています。
80
86
 
81
87
  プラグインには以下のスキルが含まれます:
82
88
 
@@ -84,8 +90,58 @@ claude mcp add watashi-db -- npx watashi-db
84
90
  |--------|------|
85
91
  | `/session-start` | セッション開始時にプロファイルとコンテキストを自動読み込み |
86
92
  | `/remember <内容>` | ユーザーの好み・スキル・知識をわたしDBに記録 |
93
+ | `/recall [トピック]` | 過去の判断・好み・経験を watashi-db から検索 |
87
94
  | `/reflect [トピック]` | エピソード・意思決定の振り返りとパターン分析 |
88
95
 
96
+ ### 開発者向け(ソースから)
97
+
98
+ ```bash
99
+ git clone https://github.com/bareforge/watashi-db.git && cd watashi-db
100
+ npm install && npm run build && npm link
101
+ claude mcp add -s user watashi-db -- watashi-db serve
102
+ ```
103
+
104
+ ### バージョンアップ
105
+
106
+ MCP 設定で `watashi-db@latest` を指定していれば、Claude の再起動で自動的に最新版が使われます。手動でグローバルインストールしている場合は:
107
+
108
+ ```bash
109
+ npm install -g watashi-db@latest
110
+ ```
111
+
112
+ ### バックアップ・同期・マルチStore(オプション)
113
+
114
+ `~/.watashi-db/config.json` を作成すると、以下の機能が使えます:
115
+
116
+ - **バックアップ**: `sync.destination` を設定すると、書き込み時に自動でスナップショットをバックアップ
117
+ - **マルチデバイス同期**: Google Drive 等のクラウドストレージを介して複数 PC でデータを共有
118
+ - **マルチStore**: プロジェクト別に DB を分離、`watashi_maintain(action="promote")` でデータを移動
119
+
120
+ ```json
121
+ {
122
+ "stores": {
123
+ "default": {
124
+ "type": "local",
125
+ "path": "~/.watashi-db/default.db",
126
+ "sync": {
127
+ "enabled": true,
128
+ "destination": "G:/マイドライブ/watashi-db",
129
+ "generations": 3
130
+ }
131
+ }
132
+ },
133
+ "contexts": {
134
+ "default": {
135
+ "stores": { "default": "read-write" },
136
+ "default_store": "default"
137
+ }
138
+ },
139
+ "default_context": "default"
140
+ }
141
+ ```
142
+
143
+ 詳細なセットアップ手順・全設定項目のリファレンスについては [config.json 設定ガイド](docs/config-guide.md) を参照してください。
144
+
89
145
  ---
90
146
 
91
147
  ## 使い方
@@ -101,24 +157,22 @@ watashi_store_claim:
101
157
  predicate: "prefers"
102
158
  object: "日本語コメント"
103
159
  category: "preference"
104
-
105
- # 好みの簡易登録
106
- watashi_store_preference:
107
- preference: "ダークモードのエディタ"
108
160
  ```
109
161
 
110
162
  ### 情報の取得
111
163
 
112
164
  ```
113
165
  # プロファイル全体像(セッション開始時に推奨)
114
- watashi_get_profile_summary
166
+ watashi_get:
167
+ entity_type: "profile"
115
168
 
116
- # トピック関連のコンテキスト検索
117
- watashi_query_context:
118
- topic: "TypeScript"
169
+ # 全エンティティ横断検索
170
+ watashi_search:
171
+ query: "TypeScript"
119
172
 
120
- # 条件検索
121
- watashi_search_claims:
173
+ # カテゴリ絞り込み検索
174
+ watashi_search:
175
+ entity_types: ["claim"]
122
176
  category: "skill"
123
177
  status: "active"
124
178
  ```
@@ -129,8 +183,8 @@ watashi_search_claims:
129
183
  watashi_log_decision:
130
184
  title: "MIT LICENSEを採用"
131
185
  description: "オープンソースライセンスの選定"
132
- reasoning: "最も自由度が高く、個人プロジェクトに適切"
133
- alternatives: ["Apache 2.0", "GPL v3"]
186
+ l2_reasoning: "最も自由度が高く、個人プロジェクトに適切"
187
+ l2_alternatives: ["Apache 2.0", "GPL v3"]
134
188
  ```
135
189
 
136
190
  ---
@@ -150,15 +204,15 @@ watashi_log_decision:
150
204
  │ (MCP Server) │
151
205
  │ │
152
206
  │ ┌─────────────────┐ │
153
- │ │ Tools (17) │ │
154
- │ │ Resources (2) │ │
155
- │ │ Prompts (1) │ │
207
+ │ │ Tools (11) │ │
208
+ │ │ Resources (5) │ │
209
+ │ │ Prompts (2) │ │
156
210
  │ └────────┬────────┘ │
157
211
  │ │ │
158
212
  │ ┌────────▼────────┐ │
159
213
  │ │ SQLite + FTS5 │ │
160
214
  │ │ (~/.watashi-db │ │
161
- │ │ /watashi.db) │ │
215
+ │ │ /default.db) │ │
162
216
  │ └─────────────────┘ │
163
217
  └───────────────────────┘
164
218
  ```
@@ -167,39 +221,39 @@ watashi_log_decision:
167
221
 
168
222
  | テーブル | 説明 |
169
223
  |---------|------|
170
- | `claims` | SPO三つ組の知識断片(主語・述語・目的語) |
171
- | `claims_fts` | FTS5全文検索インデックス |
224
+ | `claims` | SPO三つ組の知識断片 |
172
225
  | `claim_history` | Claimの変更履歴 |
173
- | `claim_relations` | Claim間の推論関係(7種: supports, contradicts, derives, ...) |
174
- | `claim_evidence` | 構造化根拠参照(7種: url, file, claim, ...) |
175
- | `claim_checks` | 検証ログ(7種 x 4結果) |
226
+ | `claim_relations` | Claim間の推論関係 |
227
+ | `claim_evidence` | 構造化根拠参照 |
228
+ | `claim_checks` | 検証ログ |
176
229
  | `decisions` | 意思決定ログ |
177
- | `decisions_fts` | Decisions用FTS5全文検索インデックス |
178
- | `episodes` | 思考パターン・意思決定エピソード(文脈→問題→欲求→決定→結果→原則) |
179
- | `episodes_fts` | Episodes用FTS5全文検索インデックス |
230
+ | `episodes` | エピソード(問題→決定→結果→教訓) |
231
+ | `theories` | 仮説・パターン認識 |
232
+ | `insights` | エピソードからの知見 |
233
+ | `models` | 運用モデル・フレームワーク |
234
+ | `user_memos` | 参照メモ |
235
+ | `user_plans` | セッション間作業計画 |
236
+ | `user_issues` | 追跡対象の課題 |
180
237
  | `audit_log` | 全操作の監査ログ |
238
+ | `store_meta` | Store メタデータ |
239
+ | `unified_search_items` | FTS5統合検索インデックス |
240
+ | `schema_version` | マイグレーションバージョン管理 |
181
241
 
182
242
  ### MCPツール一覧
183
243
 
184
244
  | ツール | 説明 |
185
245
  |--------|------|
186
246
  | `watashi_store_claim` | SPO三つ組でユーザー知識を記録 |
187
- | `watashi_update_claim` | 既存Claimを更新(履歴付き) |
188
- | `watashi_retract_claim` | Claimを撤回(削除ではない) |
189
- | `watashi_supersede_claim` | Claimを新しいClaimで置き換え |
190
- | `watashi_get_claim` | Claim詳細 + 変更履歴を取得 |
191
- | `watashi_search_claims` | 条件検索(カテゴリ・スコープ・テキスト) |
192
- | `watashi_query_context` | FTS5全文検索でコンテキスト取得 |
247
+ | `watashi_update_claim` | Claimの更新・撤回 |
248
+ | `watashi_manage_claim` | Claim高度管理(置換・検証・関係付け・Decision管理) |
249
+ | `watashi_search` | 全エンティティ横断検索(自然言語・タグ・embedding) |
250
+ | `watashi_get` | エンティティ詳細取得 + プロファイルサマリー |
193
251
  | `watashi_log_decision` | 意思決定を構造的に記録 |
194
- | `watashi_list_decisions` | 意思決定ログの検索・一覧 |
195
- | `watashi_update_decision_status` | 意思決定のステータス遷移 |
196
- | `watashi_get_profile_summary` | プロファイル全体像をMarkdownで取得 |
197
- | `watashi_store_preference` | 好みの簡易登録ショートカット |
198
- | `watashi_log_episode` | 思考パターン・意思決定エピソードを構造的に記録 |
199
- | `watashi_list_episodes` | エピソードの検索・一覧(FTS5・タグ対応) |
200
- | `watashi_get_episode` | エピソード詳細を取得 |
201
- | `watashi_backup_db` | SQLiteファイルのバックアップ |
202
- | `watashi_export_json` | 全データのJSONエクスポート |
252
+ | `watashi_log_episode` | エピソード(問題→決定→結果→教訓)を記録 |
253
+ | `watashi_store_knowledge` | Theory/Insight/Model を記録 |
254
+ | `watashi_store_user_memo` | Memo/Plan/Issue を記録 |
255
+ | `watashi_update_user_memo` | Memo/Plan/Issue を更新 |
256
+ | `watashi_maintain` | DB保守(統計・バックアップ・エクスポート・棚卸・Store管理) |
203
257
 
204
258
  ---
205
259
 
@@ -230,9 +284,12 @@ npm run dev
230
284
  ### DBファイルの場所
231
285
 
232
286
  ```
233
- ~/.watashi-db/watashi.db
287
+ ~/.watashi-db/default.db
234
288
  ```
235
289
 
290
+ > [!NOTE]
291
+ > 旧バージョンで `watashi.db` を使用していた場合、サーバー起動時に自動で `default.db` にリネームされます。
292
+
236
293
  ---
237
294
 
238
295
  ## ライセンス
File without changes
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "watashi-db",
3
- "version": "0.0.6",
3
+ "version": "0.0.9",
4
4
  "description": "わたしDB - パーソナルコンテキストデータベース。ユーザーの好み・スキル・価値観・意思決定をセッション横断で記憶・活用します。",
5
5
  "author": { "name": "watashi-db" },
6
6
  "repository": "https://github.com/bareforge/watashi-db",
@@ -2,7 +2,7 @@
2
2
  "mcpServers": {
3
3
  "watashi-db": {
4
4
  "command": "npx",
5
- "args": ["watashi-db"]
5
+ "args": ["-y", "watashi-db@latest"]
6
6
  }
7
7
  }
8
8
  }
@@ -6,6 +6,13 @@
6
6
  "command": "npx watashi-db hook",
7
7
  "timeout": 10
8
8
  }]
9
+ }],
10
+ "Stop": [{
11
+ "hooks": [{
12
+ "type": "command",
13
+ "command": "npx watashi-db stop-hook",
14
+ "timeout": 10
15
+ }]
9
16
  }]
10
17
  }
11
18
  }
@@ -15,14 +15,17 @@ watashi-db から過去のコンテキストを検索・参照します。
15
15
 
16
16
  ## 手順
17
17
 
18
- 1. **トピック特定**: $ARGUMENTS または会話の文脈から検索キーワードを抽出
18
+ 1. **概要確認**: 引数なし、または初回利用時はまず `watashi_list_topics` で記録済みトピックの概要を確認する
19
19
 
20
- 2. **検索実行**: 以下のツールを適切に使い分ける:
20
+ 2. **トピック特定**: $ARGUMENTS または会話の文脈から検索キーワードを抽出
21
+
22
+ 3. **検索実行**: 以下のツールを適切に使い分ける:
23
+ - `watashi_list_topics`: 記録済みトピックの全体像(カテゴリ分布・タグ上位・最近の判断)
21
24
  - `watashi_query_context`: 幅広いトピック検索(Claims + Decisions + Episodes 横断)
22
25
  - `watashi_search_claims`: 特定カテゴリの好み・スキルを絞り込む場合
23
26
  - `watashi_get_context_pack`: トークン予算を指定した効率的な検索
24
27
 
25
- 3. **結果の活用**:
28
+ 4. **結果の活用**:
26
29
  - 検索結果が0件なら何も報告しない(ユーザーの邪魔をしない)
27
30
  - 関連する過去の判断・好みが見つかったら、自然に応答に組み込む
28
31
  - 「以前〜と判断されています」のように出典を示す
@@ -3,13 +3,37 @@
3
3
  * ファイルの読み込み・パース・バリデーション、またはデフォルト構成の生成
4
4
  */
5
5
  import fs from "node:fs";
6
- import { CONFIG_PATH, DB_PATH } from "../constants.js";
6
+ import { CONFIG_PATH, DB_PATH, LEGACY_DB_PATH } from "../constants.js";
7
7
  import { validateAndResolveConfig, ConfigValidationError } from "./validator.js";
8
+ /**
9
+ * 旧デフォルトDB名 (watashi.db) → 新デフォルトDB名 (default.db) の自動リネーム
10
+ * WAL関連ファイル (-shm, -wal) も同時にリネームする
11
+ */
12
+ function migrateDefaultDbName() {
13
+ if (fs.existsSync(LEGACY_DB_PATH) && !fs.existsSync(DB_PATH)) {
14
+ fs.renameSync(LEGACY_DB_PATH, DB_PATH);
15
+ // WAL関連ファイルもリネーム
16
+ for (const suffix of ["-shm", "-wal"]) {
17
+ const legacyWal = LEGACY_DB_PATH + suffix;
18
+ if (fs.existsSync(legacyWal)) {
19
+ fs.renameSync(legacyWal, DB_PATH + suffix);
20
+ }
21
+ }
22
+ // groom-state.json もリネーム
23
+ const legacyGroom = LEGACY_DB_PATH + ".groom-state.json";
24
+ if (fs.existsSync(legacyGroom)) {
25
+ fs.renameSync(legacyGroom, DB_PATH + ".groom-state.json");
26
+ }
27
+ process.stderr.write(`[watashi-db] DB名を自動マイグレーション: watashi.db → default.db\n`);
28
+ }
29
+ }
8
30
  /**
9
31
  * config.json を読み込んで ResolvedConfig を返す
10
32
  * ファイルが存在しない場合はデフォルト構成を返す
11
33
  */
12
34
  export function loadConfig() {
35
+ // 旧DB名の自動リネーム(config.json の有無に関わらず実行)
36
+ migrateDefaultDbName();
13
37
  if (!fs.existsSync(CONFIG_PATH)) {
14
38
  return getDefaultConfig();
15
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAGjF;;;GAGG;AACH,MAAM,UAAU,UAAU;IACxB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAChC,OAAO,gBAAgB,EAAE,CAAC;IAC5B,CAAC;IAED,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAClD,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,OAAO,GAAG,CAAC,YAAY,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACjE,MAAM,IAAI,qBAAqB,CAAC,CAAC,2BAA2B,OAAO,EAAE,CAAC,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,wBAAwB,CAAC,MAAM,CAAC,CAAC;AAC1C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO;QACL,MAAM,EAAE;YACN,OAAO,EAAE;gBACP,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,OAAO;aACtB;SACF;QACD,QAAQ,EAAE;YACR,OAAO,EAAE;gBACP,MAAM,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE;gBACjC,aAAa,EAAE,SAAS;aACzB;SACF;QACD,eAAe,EAAE,SAAS;KAC3B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAGjF;;;GAGG;AACH,SAAS,oBAAoB;IAC3B,IAAI,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7D,EAAE,CAAC,UAAU,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QACvC,iBAAiB;QACjB,KAAK,MAAM,MAAM,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,cAAc,GAAG,MAAM,CAAC;YAC1C,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC7B,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,GAAG,MAAM,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;QACD,yBAAyB;QACzB,MAAM,WAAW,GAAG,cAAc,GAAG,mBAAmB,CAAC;QACzD,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/B,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,OAAO,GAAG,mBAAmB,CAAC,CAAC;QAC5D,CAAC;QACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;IACjF,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,UAAU;IACxB,sCAAsC;IACtC,oBAAoB,EAAE,CAAC;IAEvB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAChC,OAAO,gBAAgB,EAAE,CAAC;IAC5B,CAAC;IAED,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAClD,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,OAAO,GAAG,CAAC,YAAY,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACjE,MAAM,IAAI,qBAAqB,CAAC,CAAC,2BAA2B,OAAO,EAAE,CAAC,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,wBAAwB,CAAC,MAAM,CAAC,CAAC;AAC1C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO;QACL,MAAM,EAAE;YACN,OAAO,EAAE;gBACP,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,OAAO;aACtB;SACF;QACD,QAAQ,EAAE;YACR,OAAO,EAAE;gBACP,MAAM,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE;gBACjC,aAAa,EAAE,SAAS;aACzB;SACF;QACD,eAAe,EAAE,SAAS;KAC3B,CAAC;AACJ,CAAC"}
@@ -84,6 +84,23 @@ export declare const ContextSchema: z.ZodObject<{
84
84
  default_store: string;
85
85
  }>;
86
86
  export type ContextConfig = z.infer<typeof ContextSchema>;
87
+ export declare const EmbeddingConfigSchema: z.ZodObject<{
88
+ provider: z.ZodDefault<z.ZodString>;
89
+ model: z.ZodDefault<z.ZodString>;
90
+ dimensions: z.ZodDefault<z.ZodNumber>;
91
+ base_url: z.ZodOptional<z.ZodString>;
92
+ }, "strict", z.ZodTypeAny, {
93
+ model: string;
94
+ provider: string;
95
+ dimensions: number;
96
+ base_url?: string | undefined;
97
+ }, {
98
+ model?: string | undefined;
99
+ provider?: string | undefined;
100
+ dimensions?: number | undefined;
101
+ base_url?: string | undefined;
102
+ }>;
103
+ export type EmbeddingConfig = z.infer<typeof EmbeddingConfigSchema>;
87
104
  export declare const LintConfigSchema: z.ZodObject<{
88
105
  secret_detection: z.ZodDefault<z.ZodEnum<["block", "warn", "off"]>>;
89
106
  }, "strict", z.ZodTypeAny, {
@@ -198,6 +215,22 @@ export declare const RawConfigSchema: z.ZodObject<{
198
215
  }, {
199
216
  secret_detection?: "block" | "warn" | "off" | undefined;
200
217
  }>>;
218
+ embedding: z.ZodOptional<z.ZodObject<{
219
+ provider: z.ZodDefault<z.ZodString>;
220
+ model: z.ZodDefault<z.ZodString>;
221
+ dimensions: z.ZodDefault<z.ZodNumber>;
222
+ base_url: z.ZodOptional<z.ZodString>;
223
+ }, "strict", z.ZodTypeAny, {
224
+ model: string;
225
+ provider: string;
226
+ dimensions: number;
227
+ base_url?: string | undefined;
228
+ }, {
229
+ model?: string | undefined;
230
+ provider?: string | undefined;
231
+ dimensions?: number | undefined;
232
+ base_url?: string | undefined;
233
+ }>>;
201
234
  client_policies: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
202
235
  read: z.ZodDefault<z.ZodUnion<[z.ZodObject<{
203
236
  categories: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -259,6 +292,12 @@ export declare const RawConfigSchema: z.ZodObject<{
259
292
  default_store: string;
260
293
  }>;
261
294
  default_context: string;
295
+ embedding?: {
296
+ model: string;
297
+ provider: string;
298
+ dimensions: number;
299
+ base_url?: string | undefined;
300
+ } | undefined;
262
301
  lint?: {
263
302
  secret_detection: "block" | "warn" | "off";
264
303
  } | undefined;
@@ -293,6 +332,12 @@ export declare const RawConfigSchema: z.ZodObject<{
293
332
  default_store: string;
294
333
  }>;
295
334
  default_context: string;
335
+ embedding?: {
336
+ model?: string | undefined;
337
+ provider?: string | undefined;
338
+ dimensions?: number | undefined;
339
+ base_url?: string | undefined;
340
+ } | undefined;
296
341
  lint?: {
297
342
  secret_detection?: "block" | "warn" | "off" | undefined;
298
343
  } | undefined;
@@ -342,12 +387,20 @@ export interface ClientPolicyConfig {
342
387
  read: ClientPolicyAccess | "none";
343
388
  write: ClientPolicyAccess | "none";
344
389
  }
390
+ /** 解決済みEmbedding設定 */
391
+ export interface ResolvedEmbeddingConfig {
392
+ provider: string;
393
+ model: string;
394
+ dimensions: number;
395
+ base_url?: string;
396
+ }
345
397
  /** 解決済みConfig(バリデーション通過後の内部表現) */
346
398
  export interface ResolvedConfig {
347
399
  stores: Record<string, ResolvedStore>;
348
400
  contexts: Record<string, ResolvedContext>;
349
401
  default_context: string;
350
402
  lint?: ResolvedLintConfig;
403
+ embedding?: ResolvedEmbeddingConfig;
351
404
  client_policies?: Record<string, ClientPolicyConfig>;
352
405
  }
353
406
  //# sourceMappingURL=schema.d.ts.map
@@ -50,6 +50,14 @@ const ClientPolicySchema = z.object({
50
50
  read: z.union([PolicyAccessSchema, z.literal("none")]).default({}),
51
51
  write: z.union([PolicyAccessSchema, z.literal("none")]).default({}),
52
52
  }).strict();
53
+ // --- Embedding 設定(Issue #29) ---
54
+ export const EmbeddingConfigSchema = z.object({
55
+ provider: z.string().default("openai").describe("Embeddingプロバイダー名"),
56
+ model: z.string().default("text-embedding-3-small").describe("モデル名"),
57
+ dimensions: z.number().int().min(1).default(1536).describe("ベクトル次元数"),
58
+ // 2026-02-23 追加: Ollama等ローカルサーバー用
59
+ base_url: z.string().optional().describe("ベースURL(例: http://192.168.x.x:11434)"),
60
+ }).strict();
53
61
  // --- Lint 設定 ---
54
62
  export const LintConfigSchema = z.object({
55
63
  secret_detection: z.enum(["block", "warn", "off"]).default("warn"),
@@ -64,6 +72,7 @@ export const RawConfigSchema = z.object({
64
72
  contexts: z.record(z.string(), ContextSchema).refine((c) => Object.keys(c).length > 0, { message: "少なくとも1つのcontextが必要です" }),
65
73
  default_context: z.string().min(1, "default_contextは必須です"),
66
74
  lint: LintConfigSchema.optional(),
75
+ embedding: EmbeddingConfigSchema.optional(),
67
76
  client_policies: z.record(z.string(), ClientPolicySchema).optional(),
68
77
  }).strict();
69
78
  //# sourceMappingURL=schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
@@ -172,11 +172,22 @@ export function validateAndResolveConfig(raw) {
172
172
  if (errors.length > 0) {
173
173
  throw new ConfigValidationError(errors);
174
174
  }
175
+ // 7. Embedding設定の解決(Issue #29)
176
+ // 2026-02-23 修正: base_url対応(Ollama等ローカルサーバー用)
177
+ const resolvedEmbedding = config.embedding
178
+ ? {
179
+ provider: config.embedding.provider,
180
+ model: config.embedding.model,
181
+ dimensions: config.embedding.dimensions,
182
+ ...(config.embedding.base_url ? { base_url: config.embedding.base_url } : {}),
183
+ }
184
+ : undefined;
175
185
  return {
176
186
  stores: resolvedStores,
177
187
  contexts: resolvedContexts,
178
188
  default_context: config.default_context,
179
189
  lint: resolvedLint,
190
+ embedding: resolvedEmbedding,
180
191
  client_policies: resolvedClientPolicies,
181
192
  };
182
193
  }
@@ -1 +1 @@
1
- {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/config/validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/config/validator.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,20 @@
1
1
  export declare const DB_DIR: string;
2
2
  export declare const DB_PATH: string;
3
+ export declare const LEGACY_DB_PATH: string;
3
4
  export declare const CONFIG_PATH: string;
4
5
  export declare const BUSY_TIMEOUT_MS = 5000;
5
6
  export declare const SERVER_NAME = "watashi-db";
6
- export declare const SERVER_VERSION = "0.0.7";
7
+ export declare const SERVER_VERSION = "0.0.8";
7
8
  export declare const CLAIM_CATEGORIES: readonly ["preference", "identity", "skill", "value", "workflow", "knowledge", "custom"];
8
9
  export declare const CLAIM_SCOPES: readonly ["global", "persona", "project", "tool", "temporal"];
9
10
  export declare const CLAIM_STATUSES: readonly ["active", "retracted", "superseded", "promoted"];
10
11
  export declare const DECISION_STATUSES: readonly ["active", "reversed", "obsolete", "promoted"];
11
12
  export declare const THEORY_STATUSES: readonly ["active", "archived", "promoted"];
13
+ export declare const INSIGHT_STATUSES: readonly ["active", "archived", "promoted"];
14
+ export declare const MODEL_STATUSES: readonly ["active", "archived", "promoted"];
15
+ export declare const USER_MEMO_STATUSES: readonly ["active", "archived"];
16
+ export declare const USER_MEMO_USAGE_POLICIES: readonly ["auto", "on_request", "human_directed"];
17
+ export declare const USER_PLAN_STATUSES: readonly ["active", "completed", "archived"];
18
+ export declare const USER_ISSUE_STATUSES: readonly ["open", "closed", "archived"];
19
+ export declare const USER_ISSUE_PRIORITIES: readonly ["low", "medium", "high", "critical"];
12
20
  //# sourceMappingURL=constants.d.ts.map