hmem-mcp 7.2.2 → 7.2.4
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.
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hmem-mcp",
|
|
3
|
-
"version": "7.2.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "7.2.4",
|
|
4
|
+
"description": "Persistent memory and agent lifecycle for Claude Code — because sessions shouldn't start from zero.",
|
|
5
5
|
"author": "Bumblebiber",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"repository": {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: hmem-activate
|
|
3
|
-
description: Activate a project mid-session via load_project, then check for and fix misrouted O-entry exchanges. Use whenever the user says "aktiviere Projekt X", "lade Projekt X", "load project X", "wechsel zu Projekt X", or switches project context during a session.
|
|
3
|
+
description: Activate a project mid-session via load_project, then check for and fix misrouted O-entry exchanges. Use whenever the user says "aktiviere Projekt X", "lade Projekt X", "load project X", "wechsel zu Projekt X", or switches project context during a session. ALSO use when you are about to call load_project mid-session for any reason — even if the user didn't explicitly ask to switch projects.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# hmem-activate
|
|
@@ -13,8 +13,8 @@ Use when the user switches to a different project mid-session.
|
|
|
13
13
|
Before calling load_project, check which project is currently active. The active project is shown in every tool response as `Active project: PXXXX <name>`.
|
|
14
14
|
|
|
15
15
|
Note:
|
|
16
|
-
- **OLD_PROJECT**: currently active project ID (e.g. P0043)
|
|
17
|
-
- **OLD_O**: corresponding O-entry (same seq: P0043 → O0043)
|
|
16
|
+
- **OLD_PROJECT**: currently active project ID (e.g. P0043) — or `none` if no project was active
|
|
17
|
+
- **OLD_O**: corresponding O-entry (same seq: P0043 → O0043) — if OLD_PROJECT = `none`, use **O0000** (catch-all for unattributed sessions)
|
|
18
18
|
- **TARGET_PROJECT**: the project the user wants to switch to
|
|
19
19
|
- **TARGET_O**: corresponding O-entry (e.g. P0048 → O0048)
|
|
20
20
|
|
|
@@ -138,6 +138,7 @@ git push
|
|
|
138
138
|
| cli.ts (new commands) | **hmem-update** (new CLI commands for users), hmem-setup |
|
|
139
139
|
| cli-checkpoint.ts | hmem-config (checkpoint docs), hmem-read (summary docs) |
|
|
140
140
|
| cli-log-exchange.ts | hmem-setup (hook docs) |
|
|
141
|
-
| cli-context-inject.ts | hmem-wipe, hmem-setup |
|
|
141
|
+
| cli-context-inject.ts | hmem-wipe, **hmem-setup**, **hmem-update** |
|
|
142
|
+
| cli-hook-startup.ts | **hmem-setup** (first-message context docs), **hmem-update** (user-visible behavior) |
|
|
142
143
|
| Any new skill added | **hmem-update** (list of skills to sync) |
|
|
143
144
|
| Any new user-visible behavior | **hmem-update** — always |
|
|
@@ -78,10 +78,10 @@ Script: `~/.claude/hooks/hmem-log-exchange.sh`
|
|
|
78
78
|
Fires only after `/clear` (matcher: `"clear"`). Two hooks run in sequence:
|
|
79
79
|
|
|
80
80
|
**a) `hmem context-inject`** — outputs `additionalContext` containing:
|
|
81
|
-
-
|
|
82
|
-
-
|
|
83
|
-
-
|
|
84
|
-
-
|
|
81
|
+
- 5 most recently edited P-entries (one line each, active marked with `[*]`)
|
|
82
|
+
- Hint to call `read_memory({prefix:"P", titles_only:true})` for the full list
|
|
83
|
+
- All R-entries (rules, one line each)
|
|
84
|
+
- Footer with `load_project` call for the active project (if any)
|
|
85
85
|
- Keeps the agent oriented after a context reset without a full `read_memory()` call.
|
|
86
86
|
|
|
87
87
|
**b) `hmem deactivate`** — resets the active project for the new session:
|
|
@@ -370,6 +370,36 @@ Agents update L4 after every code change (enforced via `hmem-subagent` POST-TASK
|
|
|
370
370
|
|
|
371
371
|
---
|
|
372
372
|
|
|
373
|
+
## Step 2k: v7.2.2 — Richer Session-Start Context + I-Entry Active Device Block
|
|
374
|
+
|
|
375
|
+
**Only needed when upgrading from < v7.2.2**
|
|
376
|
+
|
|
377
|
+
### context-inject: 5 most recent projects instead of full list
|
|
378
|
+
|
|
379
|
+
`hmem context-inject` (SessionStart[clear] hook) now shows only the **5 most recently edited P-entries** instead of all projects. A hint is appended:
|
|
380
|
+
```
|
|
381
|
+
(full list: read_memory({prefix:"P", titles_only:true}))
|
|
382
|
+
```
|
|
383
|
+
No config change needed — automatic.
|
|
384
|
+
|
|
385
|
+
### hook-startup: H-entry title fix
|
|
386
|
+
|
|
387
|
+
H-entries without a `title` field (entries whose content lives entirely in `level_1`) now display correctly. Previously they appeared as blank lines in the `--- Human context (H-entries) ---` block.
|
|
388
|
+
|
|
389
|
+
### hook-startup: Active device block
|
|
390
|
+
|
|
391
|
+
The first-message context injection now includes a **`--- Active device (I00XX) ---`** block showing:
|
|
392
|
+
- I-entry body (L1) — device name, specs, IP
|
|
393
|
+
- All L2 section titles (Specs, OS, IP Address, Access, Services, Apps, Storage, Notes, Rules)
|
|
394
|
+
- For the **Apps** section: full L3 title list (installed software)
|
|
395
|
+
- Irrelevant L2/L3 nodes are filtered out
|
|
396
|
+
|
|
397
|
+
### hook-startup: recent projects limit raised 3 → 5
|
|
398
|
+
|
|
399
|
+
The `--- Recent projects ---` block in the first-message injection now shows 5 most recently updated P-entries (was 3).
|
|
400
|
+
|
|
401
|
+
---
|
|
402
|
+
|
|
373
403
|
## Step 3: Entry Migration
|
|
374
404
|
|
|
375
405
|
Some versions introduce new data formats. Check if migration is needed:
|