@memtensor/memos-local-openclaw-plugin 1.0.4-beta.2 → 1.0.4-beta.20

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 (124) hide show
  1. package/.env.example +7 -0
  2. package/README.md +111 -44
  3. package/dist/capture/index.d.ts +1 -1
  4. package/dist/capture/index.d.ts.map +1 -1
  5. package/dist/capture/index.js +36 -2
  6. package/dist/capture/index.js.map +1 -1
  7. package/dist/client/connector.d.ts +6 -2
  8. package/dist/client/connector.d.ts.map +1 -1
  9. package/dist/client/connector.js +160 -26
  10. package/dist/client/connector.js.map +1 -1
  11. package/dist/client/hub.d.ts.map +1 -1
  12. package/dist/client/hub.js +22 -0
  13. package/dist/client/hub.js.map +1 -1
  14. package/dist/client/skill-sync.d.ts +7 -0
  15. package/dist/client/skill-sync.d.ts.map +1 -1
  16. package/dist/client/skill-sync.js +10 -0
  17. package/dist/client/skill-sync.js.map +1 -1
  18. package/dist/config.d.ts.map +1 -1
  19. package/dist/config.js +2 -3
  20. package/dist/config.js.map +1 -1
  21. package/dist/hub/server.d.ts +9 -0
  22. package/dist/hub/server.d.ts.map +1 -1
  23. package/dist/hub/server.js +500 -112
  24. package/dist/hub/server.js.map +1 -1
  25. package/dist/hub/user-manager.d.ts +11 -0
  26. package/dist/hub/user-manager.d.ts.map +1 -1
  27. package/dist/hub/user-manager.js +31 -3
  28. package/dist/hub/user-manager.js.map +1 -1
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +7 -2
  31. package/dist/index.js.map +1 -1
  32. package/dist/ingest/chunker.d.ts +2 -1
  33. package/dist/ingest/chunker.d.ts.map +1 -1
  34. package/dist/ingest/chunker.js +14 -10
  35. package/dist/ingest/chunker.js.map +1 -1
  36. package/dist/ingest/providers/index.d.ts.map +1 -1
  37. package/dist/ingest/providers/index.js +37 -6
  38. package/dist/ingest/providers/index.js.map +1 -1
  39. package/dist/recall/engine.d.ts.map +1 -1
  40. package/dist/recall/engine.js +96 -1
  41. package/dist/recall/engine.js.map +1 -1
  42. package/dist/shared/llm-call.d.ts +1 -0
  43. package/dist/shared/llm-call.d.ts.map +1 -1
  44. package/dist/shared/llm-call.js +84 -9
  45. package/dist/shared/llm-call.js.map +1 -1
  46. package/dist/sharing/types.d.ts +1 -1
  47. package/dist/sharing/types.d.ts.map +1 -1
  48. package/dist/skill/evolver.d.ts +4 -0
  49. package/dist/skill/evolver.d.ts.map +1 -1
  50. package/dist/skill/evolver.js +59 -5
  51. package/dist/skill/evolver.js.map +1 -1
  52. package/dist/skill/generator.d.ts +2 -0
  53. package/dist/skill/generator.d.ts.map +1 -1
  54. package/dist/skill/generator.js +45 -3
  55. package/dist/skill/generator.js.map +1 -1
  56. package/dist/skill/installer.d.ts +26 -0
  57. package/dist/skill/installer.d.ts.map +1 -1
  58. package/dist/skill/installer.js +80 -4
  59. package/dist/skill/installer.js.map +1 -1
  60. package/dist/skill/upgrader.d.ts +2 -0
  61. package/dist/skill/upgrader.d.ts.map +1 -1
  62. package/dist/skill/upgrader.js +139 -1
  63. package/dist/skill/upgrader.js.map +1 -1
  64. package/dist/skill/validator.d.ts +3 -0
  65. package/dist/skill/validator.d.ts.map +1 -1
  66. package/dist/skill/validator.js +75 -0
  67. package/dist/skill/validator.js.map +1 -1
  68. package/dist/storage/ensure-binding.d.ts +12 -0
  69. package/dist/storage/ensure-binding.d.ts.map +1 -0
  70. package/dist/storage/ensure-binding.js +53 -0
  71. package/dist/storage/ensure-binding.js.map +1 -0
  72. package/dist/storage/sqlite.d.ts +115 -20
  73. package/dist/storage/sqlite.d.ts.map +1 -1
  74. package/dist/storage/sqlite.js +458 -110
  75. package/dist/storage/sqlite.js.map +1 -1
  76. package/dist/telemetry.d.ts +12 -5
  77. package/dist/telemetry.d.ts.map +1 -1
  78. package/dist/telemetry.js +156 -40
  79. package/dist/telemetry.js.map +1 -1
  80. package/dist/tools/memory-search.d.ts +3 -1
  81. package/dist/tools/memory-search.d.ts.map +1 -1
  82. package/dist/tools/memory-search.js +3 -1
  83. package/dist/tools/memory-search.js.map +1 -1
  84. package/dist/types.d.ts +11 -2
  85. package/dist/types.d.ts.map +1 -1
  86. package/dist/types.js +4 -0
  87. package/dist/types.js.map +1 -1
  88. package/dist/viewer/html.d.ts.map +1 -1
  89. package/dist/viewer/html.js +2952 -910
  90. package/dist/viewer/html.js.map +1 -1
  91. package/dist/viewer/server.d.ts +39 -8
  92. package/dist/viewer/server.d.ts.map +1 -1
  93. package/dist/viewer/server.js +1198 -227
  94. package/dist/viewer/server.js.map +1 -1
  95. package/index.ts +774 -74
  96. package/openclaw.plugin.json +2 -2
  97. package/package.json +3 -2
  98. package/scripts/postinstall.cjs +1 -1
  99. package/skill/memos-memory-guide/SKILL.md +64 -26
  100. package/src/capture/index.ts +40 -1
  101. package/src/client/connector.ts +161 -28
  102. package/src/client/hub.ts +18 -0
  103. package/src/client/skill-sync.ts +14 -0
  104. package/src/config.ts +2 -3
  105. package/src/hub/server.ts +481 -107
  106. package/src/hub/user-manager.ts +48 -8
  107. package/src/index.ts +10 -2
  108. package/src/ingest/chunker.ts +19 -13
  109. package/src/ingest/providers/index.ts +41 -7
  110. package/src/recall/engine.ts +89 -1
  111. package/src/shared/llm-call.ts +99 -10
  112. package/src/sharing/types.ts +1 -1
  113. package/src/skill/evolver.ts +63 -6
  114. package/src/skill/generator.ts +44 -5
  115. package/src/skill/installer.ts +107 -4
  116. package/src/skill/upgrader.ts +139 -1
  117. package/src/skill/validator.ts +79 -0
  118. package/src/storage/ensure-binding.ts +52 -0
  119. package/src/storage/sqlite.ts +498 -137
  120. package/src/telemetry.ts +172 -41
  121. package/src/tools/memory-search.ts +2 -1
  122. package/src/types.ts +12 -2
  123. package/src/viewer/html.ts +2952 -910
  124. package/src/viewer/server.ts +1109 -212
package/.env.example CHANGED
@@ -23,3 +23,10 @@ SUMMARIZER_TEMPERATURE=0
23
23
  # No memory content, queries, or personal data is ever sent — only tool names, latencies, and version info.
24
24
  # Enabled by default. Set to false to opt-out.
25
25
  # TELEMETRY_ENABLED=false
26
+ #
27
+ # Telemetry backend credentials (for maintainers / CI only).
28
+ # End users do NOT need to set these — they are bundled into the npm package at publish time.
29
+ # If not set and telemetry.credentials.json is absent, telemetry is silently disabled.
30
+ # MEMOS_ARMS_ENDPOINT=https://your-arms-endpoint.log.aliyuncs.com/rum/web/v2?workspace=...&service_id=...
31
+ # MEMOS_ARMS_PID=your-arms-pid
32
+ # MEMOS_ARMS_ENV=prod
package/README.md CHANGED
@@ -5,11 +5,11 @@
5
5
  [![Node.js >= 18](https://img.shields.io/badge/node-%3E%3D18-brightgreen)](https://nodejs.org/)
6
6
  [![GitHub](https://img.shields.io/badge/GitHub-Source-181717?logo=github)](https://github.com/MemTensor/MemOS/tree/main/apps/memos-local-openclaw)
7
7
 
8
- Persistent local conversation memory for [OpenClaw](https://github.com/nicepkg/openclaw) AI Agents. Every conversation is automatically captured, semantically indexed, and instantly recallable — with **task summarization & skill evolution**, **Hub-based team sharing for memories and skills**, and **multi-agent collaborative memory**.
8
+ Persistent local conversation memory for [OpenClaw](https://github.com/nicepkg/openclaw) AI Agents. Every conversation is automatically captured, semantically indexed, and instantly recallable — with **task summarization & skill evolution**, **team sharing for memories and skills**, and **multi-agent collaborative memory**.
9
9
 
10
- **Full-write | Hybrid Search | Task Summarization & Skill Evolution | Hub Team Sharing | Memory Viewer**
10
+ **Full-write | Hybrid Search | Task Summarization & Skill Evolution | Team Sharing | Memory Viewer**
11
11
 
12
- > **Homepage:** 🌐 [Homepage](https://memos-claw.openmem.net) · 📖 [Documentation](https://memos-claw.openmem.net/docs/index.html) · 📦 [NPM](https://www.npmjs.com/package/@memtensor/memos-local-openclaw-plugin)
12
+ > 🌐 [Homepage](https://memos-claw.openmem.net) · 📖 [Documentation](https://memos-claw.openmem.net/docs/) · 📦 [NPM](https://www.npmjs.com/package/@memtensor/memos-local-openclaw-plugin) · 🛠 [Troubleshooting](https://memos-claw.openmem.net/docs/troubleshooting.html)
13
13
 
14
14
  ## Why MemOS
15
15
 
@@ -48,13 +48,17 @@ Persistent local conversation memory for [OpenClaw](https://github.com/nicepkg/o
48
48
  - **Dedicated model** — Optional separate LLM model for skill generation (e.g., Claude 4.6 for higher quality)
49
49
  - **LLM fallback chain** — `skillSummarizer` → `summarizer` → OpenClaw native model (auto-detected from `openclaw.json`). If all configured models fail, the next in chain is tried automatically
50
50
 
51
- ### Hub Team Sharing (v4)
52
- - **Hub-Spoke collaboration** — One Hub stores shared tasks, memories, and skills; clients keep private data local and query the Hub only when needed
53
- - **Scoped retrieval** — `memory_search` and `skill_search` support `local`, `group`, and `all` search scopes in v4 flows
54
- - **Admin approval flow** — Team members are approved through the Hub before they can access shared data
55
- - **Task sharing** — `task_share` / `task_unshare` push or remove task memories from the Hub without changing local private storage
56
- - **Skill publish/pull** — Skills can be published to Hub visibility scopes and pulled back locally as full bundles for offline reuse
57
- - **Viewer support** — The Memory Viewer now includes Hub connection state, pending approvals, scoped search, task share controls, and Hub skill pull actions
51
+ ### Team Sharing (v4)
52
+ - **Hub-Client architecture** — One Hub stores shared data; clients keep private data local and query the Hub on demand. Roles can be switched dynamically with proper confirmation and cleanup
53
+ - **Hub port auto-derivation** — Hub port derived from gateway port (`gatewayPort + 11`) to avoid conflicts in multi-instance setups; automatic port retry on `EADDRINUSE`
54
+ - **Admin approval flow** — Join requests require admin approval; admins can promote, demote, and remove members (with self-removal prevention)
55
+ - **Notification system** — Role change notifications (promoted/demoted), resource sharing notifications (shared/unshared/removed) with localized messages, Hub shutdown alerts
56
+ - **Scoped retrieval** — `memory_search` and `skill_search` support `local`, `group`, and `all` search scopes
57
+ - **Task sharing** — `task_share` / `task_unshare` push or remove task memories from the team without changing local private storage
58
+ - **Skill publish/pull** — Skills can be published to team visibility scopes and pulled back locally as full bundles for offline reuse
59
+ - **Graceful state transitions** — Client-to-Hub switch triggers confirmation, pending request withdrawal, connection cleanup, and automatic restart
60
+ - **Multi-instance support** — Viewer port, Hub port, sessions, and databases are all isolated per instance; supports running multiple OpenClaw instances on the same machine
61
+ - **Viewer integration** — Full team management UI: connection state, member management, pending approvals, scoped search, task share controls, skill pull, notification feed, and setup guide
58
62
 
59
63
  ### Memory Migration — Reconnect 🦐
60
64
  - **One-click import** — Seamlessly migrate OpenClaw's native built-in memories (SQLite + JSONL) into the MemOS intelligent memory system
@@ -87,35 +91,29 @@ Persistent local conversation memory for [OpenClaw](https://github.com/nicepkg/o
87
91
 
88
92
  ### 1. Install
89
93
 
90
- **Step 0 Prepare build environment (macOS / Linux):**
94
+ One command installs the plugin, all dependencies, and build tools automatically. Supports auto-upgrade to the latest version.
91
95
 
92
- This plugin uses `better-sqlite3`, a native C/C++ module. On **macOS** and **Linux**, prebuilt binaries may not be available, so **install C++ build tools first** to ensure a smooth installation:
96
+ **macOS / Linux:**
93
97
 
94
98
  ```bash
95
- # macOS
96
- xcode-select --install
97
-
98
- # Linux (Ubuntu / Debian)
99
- sudo apt install build-essential python3
99
+ curl -fsSL https://cdn.memtensor.com.cn/memos-local-openclaw/install.sh | bash
100
100
  ```
101
101
 
102
- > **Windows users:** `better-sqlite3` ships prebuilt binaries for Windows + Node.js LTS, so you can usually skip this step and go directly to Step 1. If installation still fails, install [Visual Studio Build Tools](https://visualstudio.microsoft.com/visual-cpp-build-tools/) (select "C++ build tools" workload).
103
- >
104
- > Already have build tools? Skip to Step 1. Not sure? Run the install command above — it's safe to re-run.
105
- >
106
- > **Still having issues?** See the [Troubleshooting](#troubleshooting) section, the [detailed troubleshooting guide](https://memtensor.github.io/MemOS/apps/memos-local-openclaw/docs/troubleshooting.html), or the [official better-sqlite3 troubleshooting docs](https://github.com/WiseLibs/better-sqlite3/blob/master/docs/troubleshooting.md).
102
+ **Windows (PowerShell):**
103
+
104
+ ```powershell
105
+ powershell -c "irm https://cdn.memtensor.com.cn/memos-local-openclaw/install.ps1 | iex"
106
+ ```
107
107
 
108
- **Step 1 — Install the plugin:**
108
+ **Alternative — Install via OpenClaw CLI:**
109
109
 
110
110
  ```bash
111
111
  openclaw plugins install @memtensor/memos-local-openclaw-plugin
112
112
  ```
113
113
 
114
- The plugin is installed under `~/.openclaw/extensions/memos-local-openclaw-plugin` and registered as `memos-local-openclaw-plugin`. Dependencies and `better-sqlite3` native module are built automatically during installation.
115
-
116
114
  > **Note:** The Memory Viewer starts only when the **OpenClaw gateway** is running. After install, **configure** `openclaw.json` (step 2) and **start the gateway** (step 3); the viewer will then be available at `http://127.0.0.1:18799`.
117
115
  >
118
- > **Installation failed?** If `better-sqlite3` compilation fails during install, manually rebuild after ensuring build tools are installed:
116
+ > **Installation failed?** See the [Troubleshooting](#troubleshooting) section, the [detailed troubleshooting guide](https://memos-claw.openmem.net/docs/troubleshooting.html), or the [official better-sqlite3 troubleshooting docs](https://github.com/WiseLibs/better-sqlite3/blob/master/docs/troubleshooting.md). You can also try manually rebuilding the native module:
119
117
  > ```bash
120
118
  > cd ~/.openclaw/extensions/memos-local-openclaw-plugin && npm rebuild better-sqlite3
121
119
  > ```
@@ -259,15 +257,84 @@ memos-local: started (embedding: openai_compatible)
259
257
  ╚══════════════════════════════════════════╝
260
258
  ```
261
259
 
262
- ## Hub Sharing Quick Start (v4)
260
+ ## Team Sharing (v4)
261
+
262
+ Team Sharing turns multiple OpenClaw instances into a collaborative memory network. One instance serves as the **Hub** (team server), others connect as **Clients**. Private data stays local; only explicitly shared tasks, memories, and skills are visible to the team.
263
+
264
+ ### Key Capabilities
265
+
266
+ | Capability | Description |
267
+ |---|---|
268
+ | **Hub / Client architecture** | One Hub stores shared data; clients keep private data local and query the Hub on demand |
269
+ | **Hub port auto-derivation** | Hub port is automatically derived from the gateway port (`gatewayPort + 11`), avoiding port conflicts in multi-instance setups. Explicit `hub.port` config overrides this. |
270
+ | **Port retry on conflict** | If the derived/configured Hub port is in use (`EADDRINUSE`), the server automatically retries up to 3 consecutive ports |
271
+ | **Admin approval flow** | New members submit join requests; admin approves/rejects from the Viewer |
272
+ | **Self-removal prevention** | Admins cannot accidentally remove themselves from the team |
273
+ | **Role change notifications** | When an admin promotes/demotes a member, the affected user receives a notification |
274
+ | **Resource notifications** | Shared/unshared/removed resources trigger localized notifications with resource names |
275
+ | **Pending withdrawal** | Clients can cancel pending join requests when switching roles or disabling sharing |
276
+ | **Graceful role transitions** | Switching from Client to Hub (or vice versa) triggers confirmation prompts, proper cleanup of remote connections, and restart |
277
+ | **Hub shutdown notification** | When a Hub owner disables sharing, all connected clients receive a `hub_shutdown` notification |
278
+ | **Leave team** | Clients can leave a team with a confirmation dialog; the Hub is notified and the client's data is cleaned up |
279
+ | **Scoped retrieval** | `memory_search` and `skill_search` support `local`, `group`, and `all` search scopes |
280
+ | **Task sharing** | Push/remove task memories to/from the team |
281
+ | **Skill publish/pull** | Publish skills to team visibility; pull team skills locally as full bundles for offline use |
282
+
283
+ ### Quick Setup
284
+
285
+ **Option A — Start a Hub (team server):**
286
+
287
+ ```jsonc
288
+ {
289
+ "config": {
290
+ "sharing": {
291
+ "enabled": true,
292
+ "role": "hub",
293
+ "hub": {
294
+ "teamName": "My Team",
295
+ "teamToken": "${MEMOS_TEAM_TOKEN}"
296
+ // port is auto-derived; set explicitly only if needed
297
+ }
298
+ }
299
+ }
300
+ }
301
+ ```
302
+
303
+ **Option B — Join as Client:**
304
+
305
+ ```jsonc
306
+ {
307
+ "config": {
308
+ "sharing": {
309
+ "enabled": true,
310
+ "role": "client",
311
+ "client": {
312
+ "hubAddress": "192.168.1.100:18800"
313
+ }
314
+ }
315
+ }
316
+ }
317
+ ```
318
+
319
+ You can also configure sharing entirely through the **Viewer → Settings → Team Sharing** panel — no need to edit `openclaw.json` manually.
320
+
321
+ ### Multi-Instance Deployment
322
+
323
+ When running multiple OpenClaw instances on the same machine (e.g., personal + work):
324
+
325
+ - **Viewer port**: Each instance derives its Viewer port from the gateway port, so they won't conflict
326
+ - **Hub port**: Auto-derived as `gatewayPort + 11` (e.g., gateway `18789` → Hub `18800`, gateway `19001` → Hub `19012`)
327
+ - **Session isolation**: Each instance uses a separate cookie name based on its Viewer port, so multiple Viewers can be logged in simultaneously
328
+ - **Database isolation**: Each instance uses its own `memos.db` under its respective state directory
329
+
330
+ ### Viewer Team Sharing Panel
263
331
 
264
- If you want team sharing, do this after the basic install works:
332
+ The **Settings Team Sharing** panel provides a complete management interface:
265
333
 
266
- 1. **Pick a Hub machine** and set `sharing.enabled=true`, `sharing.role="hub"`, plus `sharing.hub.port`, `sharing.hub.teamName`, and `sharing.hub.teamToken`.
267
- 2. **Configure each client machine** with `sharing.enabled=true`, `sharing.role="client"`, `sharing.client.hubAddress`, and `sharing.client.userToken`.
268
- 3. **Open Viewer Settings Hub & Team** to verify connection state, current user, role, and groups.
269
- 4. **Search with scope** `Group` or `All` in Memories and Skills to query Hub data alongside local data.
270
- 5. **Share tasks** from the Tasks view and **pull skills** from the Skills view.
334
+ - **Hub mode**: Team name, member count, active members, pending approvals, admin controls (approve/reject/promote/demote/remove)
335
+ - **Client mode**: Connection status, team info, leave team button, notification feed
336
+ - **Setup guide cards**: Always visible choose "Host a Team" or "Join a Team" with step-by-step instructions
337
+ - **Real-time notifications**: Role changes, resource sharing events, Hub status changes
271
338
 
272
339
  For the full end-user workflow, see [`HUB-SHARING-GUIDE.md`](./HUB-SHARING-GUIDE.md).
273
340
 
@@ -373,26 +440,26 @@ Query → FTS5 + Vector dual recall → RRF Fusion → MMR Rerank
373
440
 
374
441
  ## Agent Tools
375
442
 
376
- The plugin provides local memory tools plus v4 Hub-sharing tools, and auto-installs the **memos-memory-guide** skill:
443
+ The plugin provides local memory tools plus v4 team-sharing tools, and auto-installs the **memos-memory-guide** skill:
377
444
 
378
445
  | Tool | Purpose | When to Use |
379
446
  |------|---------|-------------|
380
447
  | `auto_recall` | Automatically injects relevant memories into agent context each turn (via `before_agent_start` hook) | Runs automatically — no manual call needed |
381
- | `memory_search` | Search memories with `scope: local | group | all`; Hub hits are returned separately from local hits | When auto-recall returned nothing or you need local + shared context |
448
+ | `memory_search` | Search memories with `scope: local | group | all`; team hits are returned separately from local hits | When auto-recall returned nothing or you need local + shared context |
382
449
  | `memory_get` | Get full original text of a local memory chunk | When you need to verify exact details from a local search hit |
383
450
  | `memory_timeline` | Surrounding conversation around a local chunk | When you need the exact dialogue before/after a local hit |
384
- | `network_memory_detail` | Fetch full content for a Hub memory hit | When a shared search hit looks relevant and you need full detail |
451
+ | `network_memory_detail` | Fetch full content for a team memory hit | When a shared search hit looks relevant and you need full detail |
385
452
  | `memory_write_public` | Write a memory to the local shared public space (`owner="public"`) | When the agent discovers knowledge all local agents should access |
386
453
  | `task_summary` | Full structured summary of a completed task | When a hit has `task_id` and you need the full story |
387
- | `task_share` | Push a local task and its memories to the Hub | When a task should be searchable by your group or the whole team |
388
- | `task_unshare` | Remove a shared task from the Hub | When a task should stop being shared |
454
+ | `task_share` | Push a local task and its memories to the team | When a task should be searchable by your group or the whole team |
455
+ | `task_unshare` | Remove a shared task from the team | When a task should stop being shared |
389
456
  | `skill_get` | Get local skill content by `skillId` or `taskId` | When a hit has a linked task/skill and you want the reusable guide |
390
457
  | `skill_install` | Install a skill into the agent workspace | When the skill should be permanently available for future turns |
391
- | `skill_search` | Search skills with `scope: local | group | all` | When an agent needs to discover local or Hub-shared skills |
392
- | `skill_publish` | Publish a skill to Hub sharing or local public visibility, depending on scope | When a skill should be shared with teammates |
458
+ | `skill_search` | Search skills with `scope: local | group | all` | When an agent needs to discover local or team-shared skills |
459
+ | `skill_publish` | Publish a skill to team sharing or local public visibility, depending on scope | When a skill should be shared with teammates |
393
460
  | `skill_unpublish` | Make a previously shared skill private again | When a skill should no longer be shared |
394
- | `network_skill_pull` | Pull a Hub skill bundle into local storage | When a teammate's shared skill should be usable locally/offline |
395
- | `network_team_info` | Show current Hub URL, user, role, and groups | When you need to inspect current team connection state |
461
+ | `network_skill_pull` | Pull a team skill bundle into local storage | When a teammate's shared skill should be usable locally/offline |
462
+ | `network_team_info` | Show current team server URL, user, role, and groups | When you need to inspect current team connection state |
396
463
  | `memory_viewer` | Get the URL of the Memory Viewer web UI | When the user asks where to view or manage their memories |
397
464
 
398
465
  ### Search Parameters
@@ -420,7 +487,7 @@ Open `http://127.0.0.1:18799` in your browser after starting the gateway.
420
487
  | **Analytics** | Daily write/read activity charts, memory/task/skill totals, role breakdown |
421
488
  | **Logs** | Tool call log (memory_search, auto_recall, memory_add, etc.) with input/output, duration, and tool filter; auto-refresh |
422
489
  | **Import** | 🦐 OpenClaw native memory migration — scan, one-click import with real-time SSE progress, smart dedup, pause/resume; post-processing for task & skill generation |
423
- | **Settings** | Online configuration plus **Hub & Team** status, current role, team/groups, and admin pending-user actions |
490
+ | **Settings** | Online configuration plus **Team Sharing** status, current role, team/groups, and admin pending-user actions |
424
491
 
425
492
  **Viewer won't open?**
426
493
 
@@ -521,7 +588,7 @@ TELEMETRY_ENABLED=false
521
588
 
522
589
  ### Technical details
523
590
 
524
- - Uses [PostHog](https://posthog.com) for event collection
591
+ - Uses Aliyun ARMS RUM for event collection
525
592
  - Each installation gets a random anonymous UUID (stored at `~/.openclaw/memos-local/.anonymous-id`)
526
593
  - Events are batched and sent in the background; failures are silently ignored
527
594
  - The anonymous ID is never linked to any personal information
@@ -10,7 +10,7 @@ export declare function captureMessages(messages: Array<{
10
10
  role: string;
11
11
  content: string;
12
12
  toolName?: string;
13
- }>, sessionKey: string, turnId: string, evidenceTag: string, log: Logger, owner?: string): ConversationMessage[];
13
+ }>, sessionKey: string, turnId: string, evidenceTag: string, log: Logger, owner?: string, userSearchTime?: number): ConversationMessage[];
14
14
  /**
15
15
  * Strip OpenClaw-injected inbound metadata blocks from user messages.
16
16
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/capture/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAQ,MAAM,EAAE,MAAM,UAAU,CAAC;AAmClE;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,EACrE,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,EACX,KAAK,CAAC,EAAE,MAAM,GACb,mBAAmB,EAAE,CAwCvB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CA+CzD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/capture/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAQ,MAAM,EAAE,MAAM,UAAU,CAAC;AAsClE;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,EACrE,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,EACX,KAAK,CAAC,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,MAAM,GACtB,mBAAmB,EAAE,CAmDvB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CA+CzD"}
@@ -26,6 +26,7 @@ const INBOUND_META_SENTINELS = [
26
26
  ];
27
27
  const SENTINEL_FAST_RE = new RegExp(INBOUND_META_SENTINELS.map((s) => s.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")).join("|"));
28
28
  const ENVELOPE_PREFIX_RE = /^\s*\[(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun)\s+\d{4}-\d{2}-\d{2}\s+\d{2}:\d{2}(?::\d{2})?\s+[A-Z]{3}[+-]\d{1,2}\]\s*/;
29
+ const ENVELOPE_EXTRACT_RE = /^\s*\[(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun)\s+(\d{4}-\d{2}-\d{2})\s+(\d{2}:\d{2}(?::\d{2})?)\s+([A-Z]{3}[+-]\d{1,2})\]/;
29
30
  /**
30
31
  * Extract writable messages from a conversation turn.
31
32
  *
@@ -33,9 +34,10 @@ const ENVELOPE_PREFIX_RE = /^\s*\[(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun)\s+\d{4}-\d{2}-
33
34
  * prefixes (Sender info, conversation context, etc.) which are not user content.
34
35
  * Only skips: system prompts and our own memory tool results (prevents loop).
35
36
  */
36
- function captureMessages(messages, sessionKey, turnId, evidenceTag, log, owner) {
37
+ function captureMessages(messages, sessionKey, turnId, evidenceTag, log, owner, userSearchTime) {
37
38
  const now = Date.now();
38
39
  const result = [];
40
+ let lastTimestamp = 0;
39
41
  for (const msg of messages) {
40
42
  const role = msg.role;
41
43
  if (SKIP_ROLES.has(role))
@@ -55,14 +57,25 @@ function captureMessages(messages, sessionKey, turnId, evidenceTag, log, owner)
55
57
  content = stripInboundMetadata(content);
56
58
  }
57
59
  else {
60
+ content = stripThinkingTags(content);
58
61
  content = stripEvidenceWrappers(content, evidenceTag);
59
62
  }
60
63
  if (!content.trim())
61
64
  continue;
65
+ let ts;
66
+ if (role === "user" && userSearchTime && userSearchTime > 0) {
67
+ ts = userSearchTime;
68
+ }
69
+ else {
70
+ ts = now;
71
+ }
72
+ if (ts <= lastTimestamp)
73
+ ts = lastTimestamp + 1;
74
+ lastTimestamp = ts;
62
75
  result.push({
63
76
  role,
64
77
  content,
65
- timestamp: now,
78
+ timestamp: ts,
66
79
  turnId,
67
80
  sessionKey,
68
81
  toolName: role === "tool" ? msg.toolName : undefined,
@@ -123,6 +136,27 @@ function stripInboundMetadata(text) {
123
136
  }
124
137
  return stripEnvelopePrefix(result.join("\n")).trim();
125
138
  }
139
+ /** Strip <think…>…</think> blocks emitted by DeepSeek-style reasoning models. */
140
+ const THINKING_TAG_RE = /<think[\s>][\s\S]*?<\/think>\s*/gi;
141
+ /** Unwrap <final>…</final> tags from MiniMax-style models (keep content, strip tags). */
142
+ const FINAL_TAG_RE = /<\/?final\s*>/gi;
143
+ function stripThinkingTags(text) {
144
+ return text.replace(THINKING_TAG_RE, "").replace(FINAL_TAG_RE, "").trim();
145
+ }
146
+ function extractEnvelopeTimestamp(text) {
147
+ const m = ENVELOPE_EXTRACT_RE.exec(text);
148
+ if (!m)
149
+ return null;
150
+ const [, date, time, tz] = m;
151
+ const timeStr = time.includes(":") && time.split(":").length === 3 ? time : time + ":00";
152
+ const offsetMatch = tz.match(/([+-])(\d{1,2})$/);
153
+ const offsetStr = offsetMatch
154
+ ? `${offsetMatch[1]}${offsetMatch[2].padStart(2, "0")}:00`
155
+ : "+00:00";
156
+ const iso = `${date}T${timeStr}${offsetStr}`;
157
+ const ts = new Date(iso).getTime();
158
+ return Number.isNaN(ts) ? null : ts;
159
+ }
126
160
  function stripEnvelopePrefix(text) {
127
161
  return text.replace(ENVELOPE_PREFIX_RE, "");
128
162
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/capture/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/capture/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { Logger, MemosLocalConfig } from "../types";
2
- import type { GroupInfo, UserRole, UserStatus } from "../sharing/types";
2
+ import type { UserRole, UserStatus } from "../sharing/types";
3
3
  import type { SqliteStore } from "../storage/sqlite";
4
4
  export interface HubSessionInfo {
5
5
  hubUrl: string;
@@ -8,6 +8,7 @@ export interface HubSessionInfo {
8
8
  userToken: string;
9
9
  role: UserRole;
10
10
  connectedAt: number;
11
+ identityKey?: string;
11
12
  }
12
13
  export interface HubStatusInfo {
13
14
  connected: boolean;
@@ -17,7 +18,10 @@ export interface HubStatusInfo {
17
18
  username: string;
18
19
  role: UserRole;
19
20
  status: UserStatus | string;
20
- groups: GroupInfo[];
21
+ groups?: Array<{
22
+ id: string;
23
+ name: string;
24
+ }>;
21
25
  };
22
26
  }
23
27
  export declare function connectToHub(store: SqliteStore, config: MemosLocalConfig, log?: Logger): Promise<HubSessionInfo>;
@@ -1 +1 @@
1
- {"version":3,"file":"connector.d.ts","sourceRoot":"","sources":["../../src/client/connector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,IAAI,GAAG;QACX,EAAE,EAAE,MAAM,CAAC;QACX,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,QAAQ,CAAC;QACf,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC;QAC5B,MAAM,EAAE,SAAS,EAAE,CAAC;KACrB,CAAC;CACH;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CA6BtH;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC,CAkGvG;AAED,wBAAsB,WAAW,CAC/B,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,gBAAgB,EACxB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,cAAc,CAAC,CA+CzB;AAED,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,SAAgB,MAAM,EAAE,MAAM,CAAC;gBACnB,MAAM,EAAE,MAAM;CAK3B"}
1
+ {"version":3,"file":"connector.d.ts","sourceRoot":"","sources":["../../src/client/connector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,IAAI,GAAG;QACX,EAAE,EAAE,MAAM,CAAC;QACX,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,QAAQ,CAAC;QACf,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC;QAC5B,MAAM,CAAC,EAAE,KAAK,CAAC;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC9C,CAAC;CACH;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CA2EtH;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC,CA+JvG;AAED,wBAAsB,WAAW,CAC/B,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,gBAAgB,EACxB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,cAAc,CAAC,CAwEzB;AAED,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,SAAgB,MAAM,EAAE,MAAM,CAAC;gBACnB,MAAM,EAAE,MAAM;CAK3B"}