linksee-memory 0.1.4 → 0.3.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.
@@ -1,61 +1,69 @@
1
1
  ---
2
2
  name: linksee-memory
3
3
  description: |
4
+ The bridge to the agent's "past self". Before any new task, file edit, decision, or right after a failure, recall past caveats (pain records) / learnings (growth log) / implementation history from linksee-memory.
5
+ This is the only way to solve Claude Code's "memory amnesia every session" problem. The "never repeat the same mistake" mechanism that Mem0 / Letta / Zep can't provide.
4
6
  エージェントの「過去の自分」への橋。新しい作業・ファイル編集・意思決定・失敗の前後で、linksee-memory から過去の caveat(痛みの記録)/ learning(成長ログ)/ implementation(成功失敗)を recall する。
5
- これは Claude Code の「毎セッション記憶喪失」問題を解決する唯一の方法。Mem0/Letta/Zep にはできない「同じ失敗を二度としない」仕組み。
6
- 以下のタイミングで必ずこのスキルを使うこと:
7
- ①作業開始時・新タスク開始時(「実装しよう」「始めよう」「新しく〜作る」)
8
- ②ファイル編集する前(同じファイルを過去に触ってる可能性がある)
9
- ③エラー・失敗した瞬間(remember caveat 記録)
10
- ④成功した瞬間・新しいこと学んだ瞬間(remember learning 記録)
11
- ⑤ユーザーが「前に」「同じ」「覚えてる?」「覚えておいて」と言ったとき
12
- ⑥「なぜそうした」「いつ決めた」「どこで議論した」と聞かれたとき
13
- ⑦別プロジェクトから戻ってきたとき・セッション切り替え時
14
- トリガー: 記憶/覚えて/忘れて/過去/前回/前に/そういえば/覚えてる/memory/remember/recall/forget
15
- エラーキーワード: 失敗/エラー/うまくいかない/ハマった/同じ/また/繰り返し/debug
16
- 決定キーワード: 決めた/方針/戦略/ピボット/やめよう/方向転換
7
+
8
+ ALWAYS use this skill at the following moments / 以下のタイミングで必ずこのスキルを使うこと:
9
+ ① Task start / new task begins — "let's implement...", "let's start", "build a new...", 「実装しよう」「始めよう」「新しく〜作る」
10
+ ② Before editing a file — same file may have been touched before / 同じファイルを過去に触ってる可能性がある
11
+ ③ The moment an error/failure happens — remember as caveat / エラー・失敗した瞬間
12
+ ④ The moment something succeeds or is learned — remember as learning / 成功した瞬間・学んだ瞬間
13
+ ⑤ When the user says "before", "earlier", "last time", "same as", "remember?", "remember this" / 「前に」「同じ」「覚えてる?」「覚えておいて」
14
+ ⑥ When asked "why did we do that", "when was this decided", "where did we discuss this" / 「なぜそうした」「いつ決めた」「どこで議論した」
15
+ ⑦ Returning from another project / switching sessions / 別プロジェクトから戻ってきたとき
16
+
17
+ Triggers (EN): remember/recall/forget/memory/before/earlier/last time/previously/remember when/same as before/history
18
+ Triggers (JP): 記憶/覚えて/忘れて/過去/前回/前に/そういえば/覚えてる
19
+ Error keywords (EN): failed/broken/stuck/error/bug/doesn't work/not working/same error again/again/repeated/debug
20
+ Error keywords (JP): 失敗/エラー/うまくいかない/ハマった/同じ/また/繰り返し
21
+ Decision keywords (EN): decided/let's go with/approved/settled on/pivot/strategy/switch to/abandon
22
+ Decision keywords (JP): 決めた/方針/戦略/ピボット/やめよう/方向転換
17
23
  ---
18
24
 
19
- # Linksee Memory Skill — エージェントの過去と未来をつなぐ
25
+ # Linksee Memory Skill — Connecting the agent's past and future
20
26
 
21
27
  ## 🧠 Core Principle
22
28
 
23
- **このスキルは「エージェントの成長が session を跨いで永続するための唯一の手段」**。
29
+ **This skill is the only way to persist agent growth across sessions.**
30
+
31
+ Claude Code forgets everything when a session ends. The solution the user taught yesterday, the failure you hit today, the decision made three days ago — all of it is normally lost. **linksee-memory is the "memory that doesn't disappear" device.**
24
32
 
25
- Claude Code session が終わると全部忘れる。Michieさんが昨日教えてくれた解決策、今日やった失敗、3日前の決定——すべて普通は消える。**linksee-memory は「消えない記憶」を作る装置**。
33
+ Writes are handled automatically by the Stop hook (already running). But **reads require the agent to actively pull**. This skill instills that "go look first" habit in the agent.
26
34
 
27
- 書き込みは Stop hook が自動でやってくれる(もう動いてる)。でも**読み出しはエージェントが能動的にやらないと使われない**。この skill がその「読みにいく習慣」をエージェントに植え付ける。
35
+ *JP: Claude Code は session が終わると全部忘れる。linksee-memory は「消えない記憶」を作る装置。書き込みは Stop hook が自動でやってくれるが、読み出しはエージェントが能動的にやる必要がある。*
28
36
 
29
37
  ---
30
38
 
31
- ## 📐 6レイヤーの役割分担
39
+ ## 📐 The 6 layers — what goes where
32
40
 
33
- どのレイヤーに記録するかで、後の検索精度が変わる。
41
+ Which layer you record into determines later retrieval accuracy.
34
42
 
35
- | レイヤー | いつ使うか | |
43
+ | Layer | When to use | Example |
36
44
  |---|---|---|
37
- | 🎯 `goal` | ユーザーが明確なゴールを言ったとき | "freeeと連携させたい" "npm publishしたい" |
38
- | 📍 `context` | いつ・なぜそれをしてるかの背景 | "X社との商談が水曜にあるから" |
39
- | 💭 `emotion` | ユーザーの温度感・感情 | "疲れた" "嬉しい" "焦ってる" |
40
- | 🔧 `implementation` | コードを書いた、設定した、動いた/動かなかった | 成功: "OAuth flow が通った" / 失敗: "auth_expired で止まった" |
41
- | ⚠️ `caveat` | **二度と繰り返したくない教訓**(忘却保護) | "freeeOAuth24hで切れる" "このファイルは絶対編集しない" |
42
- | 📈 `learning` | 新しいこと学んだ、前の考えが更新された | "AST chunking の方が line diff より効く" |
45
+ | 🎯 `goal` | The user states a clear goal | "want to integrate with freee", "want to npm publish" |
46
+ | 📍 `context` | Background on when/why this is happening | "because there's a meeting with company X on Wednesday" |
47
+ | 💭 `emotion` | User's temperature / tone | "tired", "excited", "stressed", 「疲れた」「焦ってる」 |
48
+ | 🔧 `implementation` | Code written, configured, worked / didn't work | success: "OAuth flow works" / failure: "stopped with auth_expired" |
49
+ | ⚠️ `caveat` | **Lessons you never want to repeat** (auto-protected from forgetting) | "freee OAuth expires in 24h", "never edit this file" |
50
+ | 📈 `learning` | Learned something new, prior belief updated | "AST chunking beats line diff for token savings" |
43
51
 
44
- **重要:** `caveat` は自動で忘却保護される。痛みの記録は絶対消えない。
52
+ **Important:** `caveat` layer is automatically protected from forgetting. Pain records are never deleted.
45
53
 
46
- **v0.1.0: 別のpin方法** `importance: 1.0` remember すれば、caveat層じゃなくても auto-forget から保護される。「絶対忘れさせたくない goal」「重要な判断」等で使う:
54
+ **Pin-via-importance (v0.1.0+):** Calling `remember` with `importance: 1.0` pins the memory across all layers, protecting it from auto-forget even outside the caveat layer. Use for "mission-critical goals", "key decisions", etc.:
47
55
 
48
56
  ```
49
57
  remember({
50
58
  entity_name: "KanseiLink", entity_kind: "project",
51
- layer: "goal", content: "Plugin Marketplace 申請中",
59
+ layer: "goal", content: "Plugin Marketplace submission under review",
52
60
  importance: 1.0 // pin
53
61
  })
54
62
  ```
55
63
 
56
- **Layer alias 対応** — canonical layer 名覚えなくても、自然な言い方で呼べる:
64
+ **Layer aliases**no need to memorize canonical names. Natural language aliases resolve automatically:
57
65
 
58
- | 自然語 | → canonical |
66
+ | Natural alias | → canonical |
59
67
  |---|---|
60
68
  | `decisions` / `insights` / `learned` | `learning` |
61
69
  | `warnings` / `rules` / `pitfalls` / `dont` | `caveat` |
@@ -66,159 +74,157 @@ remember({
66
74
 
67
75
  ---
68
76
 
69
- ## 🔄 実行フロー(5つのタイミング)
70
-
71
- ### ① Task Start — 作業開始前に必ず recall
77
+ ## 🔄 Execution flow — 5 canonical moments
72
78
 
73
- 新しい作業を始める**前**に、過去のコンテキストを注入する。
79
+ ### ① Task Start — Always recall before starting work
74
80
 
75
- **v0.1.0 新フロー: 超-セッション冒頭は `list_entities` から**
81
+ Before starting any new task, inject past context.
76
82
 
77
- 会話の一番最初(ユーザーが最初の発話をしてきた時点)で、「自分が何を知ってるか」を把握する:
83
+ **At the very beginning of a conversation**, use `list_entities` first to understand what you know:
78
84
 
79
85
  ```
80
86
  mcp__linksee__list_entities({ min_memories: 5, limit: 10 })
81
87
  ```
82
88
 
83
- これで返ってくる "momentum 高い entity" = 今まさに話題に上りそうなプロジェクト。各entity `layer_breakdown` を見れば「このprojectはcaveatが多い」「goalが未完」等が分かる。
89
+ The returned "high-momentum entities" are the projects likely to be discussed. Each entity's `layer_breakdown` reveals patterns ("this project has many caveats", "goal is unfinished", etc.).
84
90
 
85
- その後、具体的な作業が始まったら recall:
91
+ Then, once a specific task starts, recall:
86
92
 
87
93
  ```
88
94
  mcp__linksee__recall({
89
- query: "<現タスクのキーワード。プロジェクト名 + 技術名>",
95
+ query: "<keywords of current task — project name + technology>",
90
96
  max_tokens: 2000
91
97
  })
92
98
  ```
93
99
 
94
- **例**: ユーザーが「KanseiLinkに新しいツール追加したい」と言ったら:
100
+ **Example**: User says "let's add a new tool to KanseiLink":
95
101
  ```
96
102
  recall({ query: "KanseiLink new tool", max_tokens: 2000 })
97
103
  ```
98
104
 
99
- 返ってきた memories から、特に以下に注目:
100
- - **`caveat` 層**絶対避けるべき罠
101
- - **`learning` 層**前に得た結論
102
- - **`implementation.failure`** — 過去の失敗パターン
105
+ In the returned memories, pay special attention to:
106
+ - **`caveat` layer**traps to absolutely avoid
107
+ - **`learning` layer**previously-reached conclusions
108
+ - **`implementation.failure`** — past failure patterns
103
109
 
104
- **例の結果の使い方:**
110
+ **Using the results:**
105
111
  ```
106
- 過去の caveat から: "同じMCPtool名の衝突に気をつけろ"
107
- 新しいツール追加前に既存tool名を確認する流れで作業開始
112
+ From past caveat: "Watch out for MCP tool name collisions"
113
+ Before adding a new tool, check existing tool names first.
108
114
  ```
109
115
 
110
- ### ② File Edit — ファイル編集前に recall_file
116
+ ### ② File Edit — Use recall_file before touching a file
111
117
 
112
- 特定ファイルを触る前に、そのファイルの過去の編集履歴を確認:
118
+ Before touching a specific file, check its edit history:
113
119
 
114
120
  ```
115
121
  mcp__linksee__recall_file({
116
- path_substring: "<ファイルのパス or 部分一致する名前>",
122
+ path_substring: "<file path or substring match>",
117
123
  max_intents: 5
118
124
  })
119
125
  ```
120
126
 
121
- 返ってくる: そのファイルの全編集履歴 + **各編集を引き起こしたユーザー発言**
127
+ Returns: the file's entire edit history + **the user message that drove each edit**.
122
128
 
123
- **これがキモ**: Mem0/Lettaにはない機能。「このファイル、前になぜ変更されたか」が残ってる。
129
+ **This is the key differentiator.** Mem0 / Letta don't have this. "Why was this file changed last time" is preserved.
124
130
 
125
- ### ③ Before Reading — 既読ファイルなら read_smart
131
+ ### ③ Before Reading — Use read_smart for files already read
126
132
 
127
- ファイルを読む必要があるとき、**Read ツールの代わりに read_smart を使う**:
133
+ When you need to read a file, **use `read_smart` instead of the standard `Read` tool**:
128
134
 
129
135
  ```
130
136
  mcp__linksee__read_smart({
131
- path: "<絶対パス>"
137
+ path: "<absolute path>"
132
138
  })
133
139
  ```
134
140
 
135
- **効果**:
136
- - 初回読み: 通常 Read と同じトークン(chunk metadata 付き)
137
- - 2回目以降・変更なし: **~50 トークンだけ返る**(99% 節約)
138
- - 2回目以降・変更あり: 変更 chunk だけ返る(50-90% 節約)
141
+ **Effect**:
142
+ - First read: same tokens as normal Read (with chunk metadata)
143
+ - Subsequent reads, unchanged: **~50 tokens returned** (99% savings)
144
+ - Subsequent reads, changed: only changed chunks returned (5090% savings)
139
145
 
140
- 特に大きなファイル(1000行超えるもの)で効果絶大。
146
+ Especially effective for large files (>1000 lines).
141
147
 
142
- ### ③.5 Updating existing memory — v0.1.0 新: forget+remember の代わりに update_memory
148
+ ### ③.5 Updating existing memory — use update_memory, not forget+remember
143
149
 
144
- 事実が変わった / 目標が更新された / caveat の細部を修正したい場合、**forget して remember すると memory_id が変わって session_file_edits のリンクが切れる**。代わりに `update_memory`:
150
+ When facts change / goal updated / caveat detail needs correction: **`forget` + `remember` breaks `memory_id` continuity, cutting the `session_file_edits` links.** Use `update_memory` instead:
145
151
 
146
152
  ```
147
153
  update_memory({
148
154
  memory_id: 1234,
149
- content: '{"primary": "Plugin Marketplace 申請中(審査7日目)", "deadline": "2026-04-25"}',
150
- importance: 1.0 // pin 強化
155
+ content: '{"primary": "Plugin Marketplace under review (day 7)", "deadline": "2026-04-25"}',
156
+ importance: 1.0 // strengthen pin
151
157
  })
152
158
  ```
153
159
 
154
- `layer` も変更可能だが、caveat 他への demotion は不可(auto-protectedのため)
160
+ `layer` can also be changed, but demoting from caveat to another layer is **not allowed** (auto-protected).
155
161
 
156
- ### ④ Failure — エラー発生時に caveat 記録
162
+ ### ④ Failure — Record caveat the moment an error hits
157
163
 
158
- エラー・失敗・「うまくいかない」が発生した瞬間、すぐ記録する:
164
+ The moment an error, failure, or "doesn't work" happens, record immediately:
159
165
 
160
166
  ```
161
167
  mcp__linksee__remember({
162
- entity_name: "<プロジェクト名 or サービス名>",
168
+ entity_name: "<project name or service name>",
163
169
  entity_kind: "project",
164
170
  layer: "caveat",
165
- content: '{"rule_or_warning":"<失敗内容 + 回避策>","when":"<ISO日時>"}',
166
- importance: 0.8 // 失敗は重要度高め
171
+ content: '{"rule_or_warning":"<what failed + workaround>","when":"<ISO datetime>"}',
172
+ importance: 0.8 // failures are high-importance
167
173
  })
168
174
  ```
169
175
 
170
- **例**:
176
+ **Example**:
171
177
  ```json
172
178
  {
173
- "rule_or_warning": "freee MCPは24時間でOAuth token切れる。refresh_token使って再取得する必要あり。access_tokenを直接使い回すと401で止まる",
174
- "from_incident": "session 02759-...で auth_expired エラー",
175
- "workaround": "24h毎に refresh token → 新しい access token"
179
+ "rule_or_warning": "freee MCP OAuth token expires in 24 hours. Must refresh via refresh_token. Reusing access_token directly causes 401.",
180
+ "from_incident": "session 02759-... hit auth_expired error",
181
+ "workaround": "every 24h: refresh token → new access token"
176
182
  }
177
183
  ```
178
184
 
179
- **なぜ重要か**: `caveat` は**自動で忘却保護**される。この記録があれば、別セッションの別エージェントも同じ失敗を避けられる。
185
+ **Why this matters**: `caveat` is **auto-protected from forgetting**. Once recorded, a future agent in a different session avoids the same failure.
180
186
 
181
- ### ⑤ Success/Learning — 成功・学習時に記録
187
+ ### ⑤ Success / Learning — Record the moment of insight
182
188
 
183
- 新しいこと理解した、アプローチ変えた、問題解決した瞬間:
189
+ When you understand something new, change approaches, or solve a problem:
184
190
 
185
191
  ```
186
192
  mcp__linksee__remember({
187
193
  entity_name: "<entity>",
188
194
  entity_kind: "project | concept | ...",
189
195
  layer: "learning",
190
- content: '{"at":"<日時>","learned":"<何を学んだか>","prior_belief":"<前はこう思ってた>"}',
196
+ content: '{"at":"<datetime>","learned":"<what was learned>","prior_belief":"<what we used to think>"}',
191
197
  importance: 0.7
192
198
  })
193
199
  ```
194
200
 
195
- `prior_belief` を書くことで「**信念の更新履歴**」が残る。これは後で「なぜこの決定をしたのか」の根拠になる。
201
+ Recording `prior_belief` leaves a **belief-update history**. Later, this becomes the evidence for "why was this decision made".
196
202
 
197
203
  ---
198
204
 
199
- ## 🎯 絶対ルール
205
+ ## 🎯 Hard rules
200
206
 
201
- ### ✅ やるべきこと
207
+ ### ✅ Do
202
208
 
203
- 1. **新タスク開始時、必ず最初に `recall` を呼ぶ**(たとえ短くても)
204
- 2. **同じファイルを触る前に `recall_file` で過去履歴を確認**
205
- 3. **大きなファイルは `Read` より `read_smart` を優先**
206
- 4. **エラーが出たら即座に `caveat` 記録**(その場で記録、後回しにしない)
207
- 5. **ユーザーが驚いたり「なるほど」と言ったら `learning` 記録**
209
+ 1. **At any new task start, always call `recall` first** (even briefly)
210
+ 2. **Before touching the same file, verify history via `recall_file`**
211
+ 3. **Prefer `read_smart` over `Read` for larger files**
212
+ 4. **When an error occurs, record a `caveat` immediately** (on the spot — don't defer)
213
+ 5. **When the user is surprised or says "interesting", record a `learning`**
208
214
 
209
- ### ❌ やってはいけないこと
215
+ ### ❌ Don't
210
216
 
211
- 1. ❌ 作業開始時に recall せず、いきなり手を動かす
212
- 2. ❌ エラーをその場で解決したのに記録しない 未来の自分(or 他のエージェント)が同じ失敗を繰り返す
213
- 3. ❌ `Read` ばかり使って `read_smart` を使わない(トークン無駄)
214
- 4. ❌ caveat をふざけた軽い tone で書く(真面目に残す)
215
- 5. ❌ 長期作業中は consolidate を忘れない(週1は `consolidate()` 呼ぶべき)
217
+ 1. ❌ Start a task without recalling first
218
+ 2. ❌ Solve an error on the spot without recording — future you (or another agent) will hit the same failure
219
+ 3. ❌ Use `Read` everywhere instead of `read_smart` (wastes tokens)
220
+ 4. ❌ Write caveats in a flippant tone — preserve them seriously
221
+ 5. ❌ Skip `consolidate` during long-running work — run it weekly
216
222
 
217
223
  ---
218
224
 
219
- ## 🔁 Consolidate — 記憶の定期整理
225
+ ## 🔁 Consolidate — periodic memory tidy-up
220
226
 
221
- メモリが膨張してきたら(目安: DB 20MB超、memories 15,000件超):
227
+ When memory has grown (rough guideline: DB > 20MB, memories > 15,000):
222
228
 
223
229
  ```
224
230
  mcp__linksee__consolidate({
@@ -227,142 +233,142 @@ mcp__linksee__consolidate({
227
233
  })
228
234
  ```
229
235
 
230
- これで 7日前より古く、importance低く、cold バンドになった memories が自動でクラスタ化 → learning 層に1件に圧縮元データ削除。
236
+ This clusters cold, low-importance memories older than 7 days compresses them into a single `learning`-layer entrydeletes originals.
231
237
 
232
- **caveat active goal は消えない**。睡眠中の脳の記憶整理と同じ。
238
+ **`caveat` memories and active `goal` memories are never consolidated away.** Equivalent to sleep-time memory reorganization.
233
239
 
234
240
  ---
235
241
 
236
- ## 🧭 Skill 発火シナリオ集
242
+ ## 🧭 Skill firing scenarios
237
243
 
238
- ### Case A: 新しいプロジェクトに入る
244
+ ### Case A — Returning to a project
239
245
 
240
- ユーザー: "今日は XYZ プロジェクトに戻るよ"
246
+ User: "Today I'm back on the XYZ project"
241
247
 
242
248
  ```
243
249
  1. recall({ query: "XYZ", max_tokens: 2500 })
244
- 2. 返ってきた caveat/learning/goal を確認
245
- 3. ユーザーに「前回の続きで...」と状況を1行で示す
246
- 4. その文脈の上で作業開始
250
+ 2. Review returned caveat / learning / goal
251
+ 3. Tell user "Picking up from last time..." with a one-line status
252
+ 4. Resume work grounded in that context
247
253
  ```
248
254
 
249
- ### Case B: 同じエラーが出た(デジャブ感)
255
+ ### Case B — Déjà-vu error
250
256
 
251
- ユーザー: "あれ、このエラー前も見たような..."
257
+ User: "Wait, I feel like I've seen this error before..."
252
258
 
253
259
  ```
254
- 1. recall({ query: "<エラーメッセージの核キーワード>", max_tokens: 1000 })
255
- 2. 過去の caveat から workaround 取得
256
- 3. 「前回(日時)同じエラーで、X で解決した」と回答
257
- 4. workaround を適用
260
+ 1. recall({ query: "<core keywords of the error message>", max_tokens: 1000 })
261
+ 2. Pull workaround from past caveat
262
+ 3. Reply: "Last time (DATE), we hit the same error and solved it with X."
263
+ 4. Apply the workaround
258
264
  ```
259
265
 
260
- ### Case C: ファイル編集前の確認
266
+ ### Case C — Pre-edit check
261
267
 
262
- ユーザー: "server.ts を直して"
268
+ User: "Fix server.ts"
263
269
 
264
270
  ```
265
271
  1. recall_file({ path_substring: "server.ts" })
266
- 2. 過去の編集頻度・理由を確認
267
- 3. 「このファイル過去 N 回編集されてる。最後は ○○ 目的」と報告
268
- 4. その文脈で今回の編集を行う
269
- 5. 編集後、implementation.success / failure で記録
272
+ 2. Review past edit frequency and reasons
273
+ 3. Report: "This file has been edited N times. Last edit was to <reason>."
274
+ 4. Perform the edit in that context
275
+ 5. After editing, record success / failure via implementation layer
270
276
  ```
271
277
 
272
- ### Case D: 決定した瞬間
278
+ ### Case D — Decision made
273
279
 
274
- ユーザー: "じゃあ Sonnet に切り替えるわ"
280
+ User: "Alright, let's switch to Sonnet"
275
281
 
276
282
  ```
277
283
  1. remember({
278
- entity_name: "<プロジェクト>",
284
+ entity_name: "<project>",
279
285
  entity_kind: "project",
280
286
  layer: "learning",
281
- content: '{"at":"...", "learned":"このプロジェクトは Sonnet で行く", "prior_belief":"Opus使ってた"}',
287
+ content: '{"at":"...", "learned":"This project uses Sonnet", "prior_belief":"Was using Opus"}',
282
288
  importance: 0.8
283
289
  })
284
- 2. 「記録しました」と一言
285
- 3. 次からの作業は Sonnet 前提で進める
290
+ 2. Brief confirmation: "Recorded."
291
+ 3. From here, proceed assuming Sonnet
286
292
  ```
287
293
 
288
- ### Case E: 長時間作業の終盤
294
+ ### Case E — End of long session
289
295
 
290
- ユーザー: "今日はここまで"
296
+ User: "That's it for today"
291
297
 
292
298
  ```
293
- 1. 今日のハイライトを remember で記録:
294
- - 主要な decision learning
295
- - 発生した失敗を caveat
296
- - 完成した成果物を implementation.success
297
- 2. 「記録完了。次回 recall で取れる状態です」と報告
298
- 3. 必要なら consolidate({scope:"session", min_age_days: 14}) を提案
299
+ 1. Record today's highlights via remember:
300
+ - Major decisions learning layer
301
+ - Failures hit → caveat layer
302
+ - Finished deliverables → implementation.success
303
+ 2. Report: "Recorded. Retrievable via recall next session."
304
+ 3. Optionally suggest: consolidate({scope:"session", min_age_days: 14})
299
305
  ```
300
306
 
301
- ### Case F: ユーザーが「覚えて」と明示
307
+ ### Case F — User explicitly says "remember this"
302
308
 
303
- ユーザー: "これは覚えておいて: cloudsign より DocuSign の方が安定"
309
+ User: "Remember this: DocuSign is more stable than CloudSign"
304
310
 
305
311
  ```
306
312
  1. remember({
307
- entity_name: "cloudsign vs DocuSign",
313
+ entity_name: "CloudSign vs DocuSign",
308
314
  entity_kind: "concept",
309
315
  layer: "caveat",
310
- content: '{"rule_or_warning":"cloudsign (61% success) より DocuSign-JP (100%) の方が安定。カスタマーに提案するときは DocuSign 推奨"}',
311
- importance: 0.9 // ユーザー明示指示は高優先度
316
+ content: '{"rule_or_warning":"CloudSign (61% success) is less reliable than DocuSign-JP (100%). Recommend DocuSign when advising customers."}',
317
+ importance: 0.9 // user-explicit instruction = high priority
312
318
  })
313
- 2. 「記憶しました。caveat 層なので忘れません」と確認
319
+ 2. Confirm: "Recorded. Since it's in the caveat layer, it won't be forgotten."
314
320
  ```
315
321
 
316
322
  ---
317
323
 
318
- ## 🔐 プライバシー(ユーザーに聞かれたとき)
324
+ ## 🔐 Privacy (when the user asks)
319
325
 
320
- linksee-memory **完全ローカル**:
321
- - DB: `~/.linksee-memory/memory.db` (ユーザーのPC内)
322
- - 外部送信: なし(telemetry opt-in、デフォルト OFF
323
- - バックアップ: ファイルコピーで完結
326
+ linksee-memory is **fully local**:
327
+ - DB: `~/.linksee-memory/memory.db` (inside the user's PC)
328
+ - External transmission: none (telemetry is opt-in, OFF by default)
329
+ - Backup: a simple file copy is sufficient
324
330
 
325
- 「私たちのデータは外に出てる?」と聞かれたら:
326
- 「**デフォルトで一切出てません。** telemetry を明示的に enable していない限り、すべてローカルDB。`~/.linksee-memory/memory.db` のコピーが唯一のバックアップ。」と答える。
331
+ If the user asks "does our data leave my machine?", answer:
332
+ "**By default, nothing leaves.** Unless you explicitly enable telemetry, everything is in a local DB. A copy of `~/.linksee-memory/memory.db` is the only backup you need."
327
333
 
328
334
  ---
329
335
 
330
- ## 🚀 KanseiLink Skill との連携
336
+ ## 🚀 Pairing with KanseiLink Skill
331
337
 
332
- KanseiLink skill linksee-memory skill は**セットで動く**と最大効果:
338
+ The KanseiLink skill and linksee-memory skill **work best together**:
333
339
 
334
340
  ```
335
- ユーザー: "freeeで請求書作って"
341
+ User: "Create an invoice via freee"
336
342
 
337
- [linksee-memory skill 発火] recall({query: "freee"})
338
- 過去の caveat: "company_id 最初に取る必要あり"
339
- 過去の learning: "OAuth 24h refresh"
343
+ [linksee-memory skill fires] recall({query: "freee"})
344
+ past caveat: "fetch company_id first"
345
+ past learning: "OAuth 24h refresh required"
340
346
 
341
- [kansei-link skill 発火] search_services({intent: "invoice"})
342
- → freee verifiedtrust 0.9
343
- → get_service_tips pitfall 確認
347
+ [kansei-link skill fires] search_services({intent: "invoice"})
348
+ → freee verified, trust 0.9
349
+ → get_service_tips reveals pitfalls
344
350
 
345
- 両方の集合知を持った状態で実装開始
351
+ Now you have both bodies of knowledge before starting
346
352
  ```
347
353
 
348
- **KanseiLink = 外部SaaSの集合知 / linksee-memory = 自分の過去の集合知**。両輪。
354
+ **KanseiLink = collective knowledge about external SaaS / linksee-memory = collective knowledge about your own past**. Two wheels of the same cart.
349
355
 
350
356
  ---
351
357
 
352
- ## 📊 使うほど精度が上がる原理
358
+ ## 📊 Precision grows with usage
353
359
 
354
- | 時点 | recall 精度 | なぜ |
360
+ | Moment | recall precision | Why |
355
361
  |---|---|---|
356
- | Day 1 | 低(データ少) | Stop hook が貯めてる最中 |
357
- | Week 1 | | 数千件 memoriesFTS5 が効き出す |
358
- | Month 1 | | heat_score が安定、重要メモリが浮上 |
359
- | Month 3+ | 最強 | consolidate 走って、learnings が結晶化 |
362
+ | Day 1 | low (little data) | Stop hook is still collecting |
363
+ | Week 1 | medium | thousands of memories, FTS5 kicks in |
364
+ | Month 1 | high | heat_score stabilizes, important memories surface |
365
+ | Month 3+ | strongest | consolidate has run, learnings crystallized |
360
366
 
361
- **「使うほど賢くなる」は時間が味方してくれる**。今日の記録は 3ヶ月後の自分が読む。
367
+ **"Gets smarter with use"** — time is on your side. Today's record is read by tomorrow's you.
362
368
 
363
369
  ---
364
370
 
365
- *このスキルは linksee-memory MCP v0.0.5+ の上で動く。*
366
- *Stop hook 経由で自動記録、recall 経由で手動取り出し。*
367
- *MCP Registry 登録済み、Glama/LobeHub 申請中(2026-04-17 時点)*
371
+ *This skill runs on top of linksee-memory MCP v0.2.0+.*
372
+ *Auto-write via Stop hook, explicit read via recall.*
373
+ *Listed in MCP Official Registry, PulseMCP, mcpservers.org, Glama.*
368
374
  *MIT License — Synapse Arrows PTE. LTD.*