You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: nowledge-mem-bub-plugin/CHANGELOG.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,6 +3,7 @@
3
3
## 0.2.0 (2026-03-17)
4
4
5
5
- Fixed: memory context (Working Memory + recalled knowledge) no longer injected into system prompt, which was breaking LLM prefix cache and causing full KV recomputation every turn. Context now injected via `build_prompt` hook into user prompt space. System prompt stays static and cacheable. Contributed by @frostming.
6
+
- Fixed: trailing slash in API URL no longer causes silent 404 — URLs like `https://mem.example.com/` are now normalized at config load time.
6
7
- Changed: `system_prompt` hook now returns only static behavioral guidance (identical every turn), preserving prefix cache.
7
8
- Changed: memory loading moved from `load_state` hook to private `_load_memory` method called from `build_prompt`.
8
9
- Changed: skill directory renamed from `bub_skills/` to `skills/` for consistency.
Copy file name to clipboardExpand all lines: nowledge-mem-claude-code-plugin/CHANGELOG.md
+6Lines changed: 6 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,6 +5,12 @@ All notable changes to the Nowledge Mem Claude Code plugin will be documented in
5
5
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
8
+
## [0.7.2] - 2026-03-18
9
+
10
+
### Fixed
11
+
12
+
-**Slash commands `/search-memory`, `/save-thread`, `/distill-memory` now work.** Skill names had spaces (e.g. `Search Memory`) which Claude Code parsed as command "Search" + args "Memory", causing "Unknown skill" errors. Names now use hyphens matching all other plugins.
Copy file name to clipboardExpand all lines: nowledge-mem-claude-code-plugin/skills/save-thread/SKILL.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,5 @@
1
1
---
2
-
name: Save Thread
2
+
name: save-thread
3
3
description: Save the real Claude Code session messages only when the user explicitly requests it. Use nmem t save to import the recorded session, not a summary-only checkpoint.
Copy file name to clipboardExpand all lines: nowledge-mem-claude-code-plugin/skills/search-memory/SKILL.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,5 @@
1
1
---
2
-
name: Search Memory
2
+
name: search-memory
3
3
description: Search memory store when past insights would improve response. Recognize when user's stored breakthroughs, decisions, or solutions are relevant. Search proactively based on context, not just explicit requests.
Copy file name to clipboardExpand all lines: nowledge-mem-openclaw-plugin/CHANGELOG.md
+10Lines changed: 10 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,6 +2,16 @@
2
2
3
3
All notable changes to the Nowledge Mem OpenClaw plugin will be documented in this file.
4
4
5
+
## [0.6.15] - 2026-03-18
6
+
7
+
### Changed
8
+
9
+
-**Shared config for remote credentials.** The plugin now reads `apiUrl` and `apiKey` from `~/.nowledge-mem/config.json` — the same file used by nmem CLI, Bub, Claude Code, and other integrations. One config file connects all your tools. The legacy `~/.nowledge-mem/openclaw.json` is still honored at highest priority for backward compatibility, but is no longer the recommended path. New cascade for credentials: `openclaw.json` (legacy) > OpenClaw dashboard > `config.json` (shared) > env vars > defaults.
10
+
11
+
### Fixed
12
+
13
+
-**Trailing slash in API URL no longer causes 404.** URLs like `https://mem.example.com/` (with trailing slash) produced double-slash paths in API fallback requests. The URL is now normalized at construction time.
- Architecture: **CLI-first via OpenClaw runtime** - all CLI execution goes through `api.runtime.system.runCommandWithTimeout`, not direct `child_process`
12
-
- Remote mode: set `NMEM_API_URL` + `NMEM_API_KEY` env vars or config file `apiUrl` + `apiKey`
12
+
- Remote mode: `~/.nowledge-mem/config.json` (shared) or OpenClaw dashboard. Legacy `openclaw.json` still honored.
`parseConfig()` returns `_sources` object tracking where each value came from (`"file"`, `"pluginConfig"`, `"env"`, `"default"`). Used by `nowledge_mem_status` tool.
113
+
`parseConfig()` returns `_sources` object tracking where each value came from (`"file"`, `"pluginConfig"`, `"sharedConfig"`, `"env"`, `"default"`). Used by `nowledge_mem_status` tool.
111
114
112
115
Legacy aliases accepted silently in all sources for backward compat:
Copy file name to clipboardExpand all lines: nowledge-mem-openclaw-plugin/README.md
+15-12Lines changed: 15 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -372,24 +372,18 @@ To change settings, use the OpenClaw plugin settings UI. Changes take effect on
372
372
|`apiUrl`| string |`""`| Remote server URL. Empty = local (`http://127.0.0.1:14242`) |
373
373
|`apiKey`| string |`""`| API key for remote access. Injected as `NMEM_API_KEY` env var, never logged |
374
374
375
-
### Advanced: config file
375
+
### Remote access
376
376
377
-
For persistent or scripted config, create `~/.nowledge-mem/openclaw.json`:
377
+
Create `~/.nowledge-mem/config.json` with your credentials. This file is shared by all Nowledge Mem integrations (nmem CLI, Bub, Claude Code, etc.) so one file connects everything:
378
378
379
379
```json
380
380
{
381
-
"sessionContext": false,
382
-
"sessionDigest": true,
383
-
"digestMinInterval": 300,
384
-
"maxContextResults": 5,
385
-
"recallMinScore": 0,
386
-
"maxThreadMessageChars": 800,
387
-
"apiUrl": "",
388
-
"apiKey": ""
381
+
"apiUrl": "https://<your-url>",
382
+
"apiKey": "nmem_..."
389
383
}
390
384
```
391
385
392
-
The config file takes priority over OpenClaw settings. Only the keys you include are overridden; missing keys fall through to OpenClaw settings, then env vars, then defaults.
386
+
See [Access Mem Anywhere](https://mem.nowledge.co/docs/remote-access).
393
387
394
388
### Advanced: environment variables
395
389
@@ -401,16 +395,25 @@ NMEM_SESSION_DIGEST=true
401
395
NMEM_DIGEST_MIN_INTERVAL=300
402
396
NMEM_MAX_CONTEXT_RESULTS=5
403
397
NMEM_RECALL_MIN_SCORE=0
398
+
NMEM_MAX_THREAD_MESSAGE_CHARS=800
404
399
NMEM_API_URL=https://...
405
400
NMEM_API_KEY=your-key
406
401
```
407
402
408
403
### Priority
409
404
405
+
Plugin-specific settings:
410
406
```
411
-
config file > OpenClaw settings > env vars > defaults
407
+
openclaw.json (legacy) > OpenClaw dashboard > env vars > defaults
`~/.nowledge-mem/openclaw.json` is still honored for backward compatibility but is no longer the recommended path. New users should configure plugin-specific settings via the OpenClaw dashboard and shared credentials via `~/.nowledge-mem/config.json`.
416
+
414
417
Use `nowledge_mem_status` (or `openclaw nowledge-mem status`) to see where each value comes from.
0 commit comments