hmem-mcp 3.2.0 → 3.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.
- package/package.json +1 -1
- package/skills/hmem-read/SKILL.md +15 -0
- package/skills/hmem-write/SKILL.md +76 -0
package/package.json
CHANGED
|
@@ -93,6 +93,21 @@ read_memory(context_for="P0029", min_tag_score=7) # stricter — only strong ma
|
|
|
93
93
|
|
|
94
94
|
---
|
|
95
95
|
|
|
96
|
+
## Adapt Communication to User Skill Level
|
|
97
|
+
|
|
98
|
+
After loading memory, check H-prefix entries for **User Skill Assessments** (e.g. H0010 "User Skill: IT").
|
|
99
|
+
These tell you the user's expertise level per topic — adapt your language accordingly:
|
|
100
|
+
|
|
101
|
+
- **Beginner**: Explain concepts, avoid jargon, use analogies
|
|
102
|
+
- **Intermediate**: Brief explanations, some jargon OK
|
|
103
|
+
- **Advanced**: Direct technical language, skip basics
|
|
104
|
+
- **Expert**: Peer-level discussion, challenge assumptions
|
|
105
|
+
|
|
106
|
+
If no skill assessment exists yet, create one based on the user's vocabulary and questions
|
|
107
|
+
(see hmem-write skill for the H-prefix convention).
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
96
111
|
## After loading — proactive cleanup
|
|
97
112
|
|
|
98
113
|
Only on the **first read of a session** (not after every read). Scan L1 summaries and flag:
|
|
@@ -334,11 +334,87 @@ Use `tag_bulk` when adding a new systematic tag to an existing category, or clea
|
|
|
334
334
|
|
|
335
335
|
---
|
|
336
336
|
|
|
337
|
+
## H-Prefix: User Skill Assessment
|
|
338
|
+
|
|
339
|
+
Actively track the user's expertise level across topics. This drives how you communicate —
|
|
340
|
+
a coding expert doesn't need variable explanations, a beginner doesn't need jargon.
|
|
341
|
+
|
|
342
|
+
### Structure
|
|
343
|
+
|
|
344
|
+
One H-entry per main topic, with sub-nodes per subtopic:
|
|
345
|
+
|
|
346
|
+
```
|
|
347
|
+
write_memory(prefix="H", content="User Skill: IT
|
|
348
|
+
Coding — Advanced: writes TypeScript fluently, debugs SQLite schemas, understands async/MCP
|
|
349
|
+
Terminal/CLI — Advanced: bash, git, systemctl, nvm, sqlite3 comfortable
|
|
350
|
+
Networking — Intermediate: HTTP/DNS solid, asked about WebSocket details
|
|
351
|
+
DevOps — Intermediate: systemd + nvm yes, Docker unfamiliar",
|
|
352
|
+
tags=["#skill-assessment", "#it"])
|
|
353
|
+
```
|
|
354
|
+
|
|
355
|
+
Levels: **Beginner → Intermediate → Advanced → Expert**
|
|
356
|
+
|
|
357
|
+
Always include evidence (observed behavior, not assumptions).
|
|
358
|
+
|
|
359
|
+
### When to assess
|
|
360
|
+
|
|
361
|
+
- **First interaction**: Make initial assessment from vocabulary, questions, and tool usage
|
|
362
|
+
- **Ongoing (every few exchanges)**: Watch for signals:
|
|
363
|
+
- **Upgrade signals**: uses domain-specific terms correctly, solves problems independently, corrects the agent
|
|
364
|
+
- **Downgrade signals**: "das verstehe ich nicht", "explain that", asks about basic concepts, misuses terms
|
|
365
|
+
- **On /save**: Review and update assessments if evidence accumulated
|
|
366
|
+
|
|
367
|
+
### How to update
|
|
368
|
+
|
|
369
|
+
Reference the O-entry (automatic session log) where the skill change was observed:
|
|
370
|
+
|
|
371
|
+
```
|
|
372
|
+
# User demonstrated new skill — link to the exchange that proves it
|
|
373
|
+
append_memory(id="H0010", content="Docker — Intermediate: configured docker-compose independently (see O0042.15)")
|
|
374
|
+
|
|
375
|
+
# User's skill improved
|
|
376
|
+
update_memory(id="H0010.3", content="Networking — Advanced: configures DNS, TLS, reverse proxies (see O0042.23)")
|
|
377
|
+
|
|
378
|
+
# User struggled — downgrade with evidence
|
|
379
|
+
update_memory(id="H0010.4", content="DevOps — Beginner: asked what systemd is, needed step-by-step (see O0042.8)")
|
|
380
|
+
```
|
|
381
|
+
|
|
382
|
+
The O-entry reference lets future agents verify the assessment by reading the original conversation.
|
|
383
|
+
|
|
384
|
+
### How to USE assessments
|
|
385
|
+
|
|
386
|
+
Before explaining anything technical, check the relevant H-entry:
|
|
387
|
+
|
|
388
|
+
- **Beginner**: Explain concepts, use analogies, avoid jargon, step-by-step
|
|
389
|
+
- **Intermediate**: Brief explanations, some jargon OK, link to docs for details
|
|
390
|
+
- **Advanced**: Direct technical language, skip basics, focus on trade-offs
|
|
391
|
+
- **Expert**: Peer-level discussion, challenge assumptions, discuss edge cases
|
|
392
|
+
|
|
393
|
+
Example: If H0010.1 says "Coding — Advanced", don't explain what a Map is.
|
|
394
|
+
If H0010.4 says "DevOps — Beginner", explain what a systemd service does before configuring one.
|
|
395
|
+
|
|
396
|
+
### Topics are open-ended
|
|
397
|
+
|
|
398
|
+
Not just IT — any domain the user works in:
|
|
399
|
+
- Music (theory, instruments, production)
|
|
400
|
+
- Mechanical (bikes, cars, tools)
|
|
401
|
+
- Business (accounting, marketing, management)
|
|
402
|
+
- Languages (German, English proficiency)
|
|
403
|
+
|
|
404
|
+
Create new H-entries as topics emerge naturally from conversation.
|
|
405
|
+
|
|
406
|
+
---
|
|
407
|
+
|
|
408
|
+
## Language Consistency
|
|
409
|
+
|
|
410
|
+
Match the language of existing entries. Before writing, check what language the memory store uses (run `read_memory()` if unsure). If existing entries are in German, write in German. If English, write in English. Do not mix languages within a single store — it makes search and curation harder.
|
|
411
|
+
|
|
337
412
|
## Anti-Patterns
|
|
338
413
|
|
|
339
414
|
| Wrong | Right |
|
|
340
415
|
|-------|-------|
|
|
341
416
|
| L1 too short: "Fixed bug" | Full sentence with root cause |
|
|
417
|
+
| Writing English when existing entries are German | Match the store's language |
|
|
342
418
|
| Tabs inside content text (e.g. code snippets) | Use spaces for indentation within content — tabs at line start always mean "go deeper in the hierarchy" |
|
|
343
419
|
| Mixed spaces and tabs for hierarchy | Stay consistent — either tabs or spaces as your depth marker |
|
|
344
420
|
| Everything flat, no indentation | Use hierarchy — L2/L3 for details |
|