om-memory-system 5.9.1 → 5.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/README.md +7 -11
  2. package/dist/adapters/opencode/conversation.js +4 -2
  3. package/dist/adapters/opencode/memory-tool.d.ts +4 -0
  4. package/dist/adapters/opencode/memory-tool.js +53 -0
  5. package/dist/adapters/opencode/package-skills.d.ts +1 -1
  6. package/dist/adapters/opencode/package-skills.js +17 -15
  7. package/dist/adapters/pi/extension.js +7 -0
  8. package/dist/cli/memory-command.d.ts +2 -0
  9. package/dist/cli/memory-command.js +35 -9
  10. package/dist/config-paths.d.ts +5 -0
  11. package/dist/config-paths.js +15 -0
  12. package/dist/config-template.d.ts +1 -1
  13. package/dist/config-template.js +8 -0
  14. package/dist/config.d.ts +51 -40
  15. package/dist/config.js +8 -15
  16. package/dist/core/capture.d.ts +2 -1
  17. package/dist/core/capture.js +8 -1
  18. package/dist/core/host.d.ts +12 -0
  19. package/dist/core/memorisation-operations.d.ts +33 -0
  20. package/dist/core/memorisation-operations.js +160 -0
  21. package/dist/core/memorisation-settings.d.ts +11 -0
  22. package/dist/core/memorisation-settings.js +48 -0
  23. package/dist/core/memorisation.d.ts +43 -0
  24. package/dist/core/memorisation.js +76 -0
  25. package/dist/core/memorise-turn.d.ts +11 -0
  26. package/dist/core/memorise-turn.js +64 -0
  27. package/dist/core/memory-operations.d.ts +6 -1
  28. package/dist/core/memory-operations.js +29 -0
  29. package/dist/core/memory-tool-text.js +1 -1
  30. package/dist/core/retrieval.d.ts +3 -2
  31. package/dist/core/retrieval.js +11 -4
  32. package/dist/core/tool-outcome.d.ts +6 -0
  33. package/dist/core/tool-outcome.js +31 -0
  34. package/dist/importer/claude-conversation.js +8 -1
  35. package/dist/importer/claude-turn-units.js +1 -0
  36. package/dist/importer/importer.js +3 -3
  37. package/dist/importer/opencode-reader.js +2 -1
  38. package/dist/importer/pi-conversation.js +11 -5
  39. package/dist/index.js +2 -42
  40. package/dist/services/api-handlers.js +13 -35
  41. package/dist/services/capture-diagnostics.d.ts +3 -2
  42. package/dist/services/capture-diagnostics.js +5 -1
  43. package/dist/services/cleanup-service.js +2 -1
  44. package/dist/services/client-session-read.d.ts +16 -0
  45. package/dist/services/client-session-read.js +32 -0
  46. package/dist/services/client.d.ts +6 -1
  47. package/dist/services/client.js +20 -36
  48. package/dist/services/deduplication-service.js +12 -1
  49. package/dist/services/global-config-writer.js +14 -1
  50. package/dist/services/linked-search.d.ts +15 -0
  51. package/dist/services/linked-search.js +23 -2
  52. package/dist/services/live-captured-entries.js +2 -1
  53. package/dist/services/memorisation-routes.d.ts +16 -0
  54. package/dist/services/memorisation-routes.js +94 -0
  55. package/dist/services/memorisation-store.d.ts +45 -0
  56. package/dist/services/memorisation-store.js +120 -0
  57. package/dist/services/memory-kind.d.ts +6 -0
  58. package/dist/services/memory-kind.js +6 -0
  59. package/dist/services/memory-portability-service.js +2 -1
  60. package/dist/services/memory-replace.d.ts +8 -0
  61. package/dist/services/memory-replace.js +26 -0
  62. package/dist/services/retrieval-rerank.d.ts +3 -1
  63. package/dist/services/retrieval-rerank.js +1 -1
  64. package/dist/services/settings-snapshot.js +6 -0
  65. package/dist/services/turso/exact-scan.d.ts +2 -1
  66. package/dist/services/turso/exact-scan.js +4 -3
  67. package/dist/services/turso/keyword-search.d.ts +2 -1
  68. package/dist/services/turso/keyword-search.js +3 -2
  69. package/dist/services/turso/vector-search.d.ts +10 -9
  70. package/dist/services/turso/vector-search.js +38 -95
  71. package/dist/services/turso/vector-writes.d.ts +8 -0
  72. package/dist/services/turso/vector-writes.js +80 -0
  73. package/dist/services/web-ensure.d.ts +1 -0
  74. package/dist/services/web-ensure.js +5 -1
  75. package/dist/services/web-memory-rows.d.ts +12 -0
  76. package/dist/services/web-memory-rows.js +58 -0
  77. package/dist/services/web-route-modules.js +5 -0
  78. package/dist/v2/adapter.d.ts +13 -1
  79. package/dist/v2/adapter.js +7 -0
  80. package/dist/web/assets/{index-Be6Uh64d.css → index-CoYuPYCS.css} +1 -1
  81. package/dist/web/assets/index-DQgI670D.js +171 -0
  82. package/dist/web/index.html +2 -2
  83. package/package.json +1 -1
  84. package/skills/omms-memory/SKILL.md +18 -0
  85. package/skills/omms-remember/SKILL.md +118 -0
  86. package/dist/web/assets/index-BX_zZiKa.js +0 -170
@@ -33,8 +33,8 @@
33
33
  <link rel="icon" type="image/svg+xml" href="/omms-icon.svg" />
34
34
  <link rel="apple-touch-icon" href="/apple-touch-icon.png" />
35
35
  <title>OMMS Memory Explorer</title>
36
- <script type="module" crossorigin src="/assets/index-BX_zZiKa.js"></script>
37
- <link rel="stylesheet" crossorigin href="/assets/index-Be6Uh64d.css">
36
+ <script type="module" crossorigin src="/assets/index-DQgI670D.js"></script>
37
+ <link rel="stylesheet" crossorigin href="/assets/index-CoYuPYCS.css">
38
38
  </head>
39
39
  <body>
40
40
  <div id="app"></div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "om-memory-system",
3
- "version": "5.9.1",
3
+ "version": "5.10.1",
4
4
  "description": "Opinionated modular memory system for coding agents (OpenCode + Pi)",
5
5
  "type": "module",
6
6
  "main": "dist/plugin.js",
@@ -30,6 +30,22 @@ Search first:
30
30
  - when the user refers to earlier work, for example "we fixed this before", "last time", "remember", or "did we";
31
31
  - before a decision about project conventions, tools, or structure.
32
32
 
33
+ Use `recall` instead when the user quotes a memorisation ID or asks what was planned or memorised, for example "what were we gonna do with the release notes" or "what did I memorise". Recall searches memorisations only. When the user asks for the memorisation labelled X, use `recall` with `tags: "X"`, not `search`. Use `search` for other questions about earlier work.
34
+
35
+ ```text
36
+ memory({ mode: "recall", query: "<ms- ID or topic>" })
37
+ memory({ mode: "recall", tags: "<label1,label2>" })
38
+ ```
39
+
40
+ With the command:
41
+
42
+ ```bash
43
+ om-memory-system memory recall "<ms- ID or topic>"
44
+ om-memory-system memory recall --tags "<label1,label2>"
45
+ ```
46
+
47
+ A labelled recall returns only memorisations that carry every label. Add a query to narrow by text as well.
48
+
33
49
  With the `memory` tool:
34
50
 
35
51
  ```text
@@ -84,6 +100,8 @@ Types:
84
100
  | Mode | Options |
85
101
  | ------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
86
102
  | `search` | query, limit, scope |
103
+ | `memorise` | content, or topic, done, doing and next for a session snapshot; tags (labels) |
104
+ | `recall` | query (a memorisation ID or topic), tags (labels), limit |
87
105
  | `add` | content, type, tags |
88
106
  | `list` | limit, scope |
89
107
  | `forget` | the memory id |
@@ -0,0 +1,118 @@
1
+ ---
2
+ name: omms-remember
3
+ description: Save a short session snapshot in OMMS from the current context, then report its ID. Use when the user asks to memorise, remember, or save this session, its progress, or its next steps for a later session. Do not read session history or transcript files.
4
+ ---
5
+
6
+ # OMMS session snapshot
7
+
8
+ Save a short snapshot of the current session in OMMS. Use plain British English and short sentences. A fresh agent can then recall the work without the chat history.
9
+
10
+ Do not ask the user questions. Do not write a handover file or a paste-ready prompt.
11
+
12
+ ## Write the snapshot
13
+
14
+ 1. Use only what you already hold in the current context. Do not read session history, transcripts, logs, or prior conversation exports.
15
+ 2. You may run cheap read-only git commands to confirm the current branch and head commit. Do not inspect diffs, logs, or history to rebuild the session.
16
+ 3. Fill these fields from the current context:
17
+ - `topic`: the project, change, or subject.
18
+ - `done`: completed work, with task IDs or file names where useful.
19
+ - `doing`: work in progress. Leave it out when nothing is in progress.
20
+ - `next`: the next actions and any gate that blocks them.
21
+ 4. Omit empty fields. Keep the whole snapshot short enough to stay under the configured memorisation size cap. OMMS never shortens it for you.
22
+ 5. Never store secrets: API keys, tokens, passwords, private keys, or other credentials. Do not copy raw secret-bearing output into any field.
23
+
24
+ ## Save with memorise
25
+
26
+ If your tool list has a `memory` tool, use it. Pi and OpenCode call it `memory`. Claude Code with the OMMS plugin calls it `mcp__omms__memory`.
27
+
28
+ ```text
29
+ memory({
30
+ mode: "memorise",
31
+ topic: "<project, change, or subject>",
32
+ done: "<completed work>",
33
+ doing: "<work in progress>",
34
+ next: "<next actions and gates>"
35
+ })
36
+ ```
37
+
38
+ Use `mode: "memorise"` with only the fields that have content. Do not add a transcript or a long conversation summary.
39
+
40
+ When the user supplies text to memorise, save that text with `content` instead of inventing snapshot fields:
41
+
42
+ ```text
43
+ memory({ mode: "memorise", content: "<text the user names>" })
44
+ ```
45
+
46
+ Send `content` or the snapshot fields in one call, never both. The tool refuses a call with both. When the user's text already has done, doing and next parts, put them in the snapshot fields.
47
+
48
+ ## Labels
49
+
50
+ Every memorisation can carry labels. Labels are the `tags` argument, a comma-separated list.
51
+
52
+ - When the user names labels, for example "memorise this, label it release, wip", pass every label the user names in `tags`, exactly as written. Never drop, reword or merge a user label.
53
+ - Add 1 to 3 labels of your own that describe the topic. Keep them short and lower-case. Do not repeat a label the user gave.
54
+ - When the user names no labels, still add 1 to 3 labels of your own.
55
+ - Do not put `memorisation` in `tags`. OMMS adds that fixed tag itself.
56
+
57
+ ```text
58
+ memory({
59
+ mode: "memorise",
60
+ topic: "<topic>",
61
+ next: "<next actions>",
62
+ tags: "<user labels as written>,<your 1 to 3 labels>"
63
+ })
64
+ ```
65
+
66
+ With the command, add `--tags "<labels>"`:
67
+
68
+ ```bash
69
+ om-memory-system memory memorise --topic "<topic>" --next "<next>" --tags "release,wip,auth"
70
+ ```
71
+
72
+ Use the `om-memory-system memory` command only when no `memory` tool is listed. Run it from the project directory:
73
+
74
+ ```bash
75
+ om-memory-system memory memorise --topic "<topic>" --done "<done>" --doing "<doing>" --next "<next>"
76
+ ```
77
+
78
+ For text the user supplies:
79
+
80
+ ```bash
81
+ om-memory-system memory memorise "<text>"
82
+ ```
83
+
84
+ Each command prints one JSON document. A result with `"success": false` has an `error` field. If the snapshot exceeds the size cap, shorten the fields and retry. Report the error if the save still fails.
85
+
86
+ ## Report and recall
87
+
88
+ Tell the user the returned `ms-` ID. Say they can recall the snapshot later by quoting that ID, by asking about its topic, or by asking for a label.
89
+
90
+ To recall by label, use `recall` with `tags`. Only a memorisation that carries every label matches. Add `query` to narrow by text as well. With `tags` and no `query`, recall returns the newest matches. Use this when the user asks for "the memorisation labelled X".
91
+
92
+ ```text
93
+ memory({ mode: "recall", tags: "<label1,label2>" })
94
+ ```
95
+
96
+ With the command:
97
+
98
+ ```bash
99
+ om-memory-system memory recall --tags "<label1,label2>"
100
+ ```
101
+
102
+ Use mode `recall` when the user quotes a memorisation ID or asks what was planned or memorised, for example "what were we gonna do with the release notes" or "what did I memorise". Use mode `search` for other questions about earlier work.
103
+
104
+ ```text
105
+ memory({ mode: "recall", query: "<ms- ID or topic>" })
106
+ ```
107
+
108
+ With the command:
109
+
110
+ ```bash
111
+ om-memory-system memory recall "<ms- ID or topic>"
112
+ ```
113
+
114
+ ## Invocation names
115
+
116
+ - Claude Code: `/omms:omms-remember`
117
+ - Pi: `/skill:omms-remember`
118
+ - OpenCode: `/omms-remember`