hmem-mcp 7.3.1 → 7.4.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.
@@ -40,7 +40,7 @@ server.tool("update_many", "Batch-update multiple memory entries at once. Applie
40
40
  : new HmemStore(HMEM_PATH, hmemConfig);
41
41
  try {
42
42
  if (storeName === "personal")
43
- syncPullThenPush(HMEM_PATH);
43
+ await syncPullThenPush(HMEM_PATH);
44
44
  let updated = 0;
45
45
  let notFound = 0;
46
46
  for (const id of ids) {
@@ -150,7 +150,7 @@ server.tool("import_memory", "Import entries from a .hmem file into your memory.
150
150
  try {
151
151
  const safePath = validateFilePath(source_path, path.dirname(hmemStore.getDbPath()));
152
152
  if (storeName === "personal" && !dry_run)
153
- syncPullThenPush(HMEM_PATH);
153
+ await syncPullThenPush(HMEM_PATH);
154
154
  const result = hmemStore.importFromHmem(safePath, dry_run);
155
155
  const mode = dry_run ? "preview" : "imported";
156
156
  log(`import_memory: ${mode} from ${safePath} (${result.inserted} new, ${result.merged} merged)`);
@@ -167,7 +167,7 @@ server.tool("import_memory", "Import entries from a .hmem file into your memory.
167
167
  lines.push(` ID remapping ${dry_run ? "required" : "applied"} (${result.conflicts} conflicts)`);
168
168
  }
169
169
  if (storeName === "personal" && !dry_run && (result.inserted > 0 || result.merged > 0)) {
170
- const retry = syncPushWithRetry(HMEM_PATH);
170
+ const retry = await syncPushWithRetry(HMEM_PATH);
171
171
  if (!retry.resolved)
172
172
  lines.push(` ⚠ unresolved push conflicts after ${retry.attempts} attempts`);
173
173
  else if (retry.attempts > 1)
@@ -443,14 +443,14 @@ server.tool("move_nodes", "Move session (L2), batch (L3), or exchange (L4) nodes
443
443
  : new HmemStore(HMEM_PATH, hmemConfig);
444
444
  try {
445
445
  if (store === "personal")
446
- syncPullThenPush(HMEM_PATH);
446
+ await syncPullThenPush(HMEM_PATH);
447
447
  const result = hmemStore.moveNodes(node_ids, target_o_id);
448
448
  let text = `Moved ${result.moved} node(s) to ${target_o_id}.`;
449
449
  if (result.errors.length > 0) {
450
450
  text += `\nErrors:\n${result.errors.join("\n")}`;
451
451
  }
452
452
  if (store === "personal") {
453
- const retry = syncPushWithRetry(HMEM_PATH);
453
+ const retry = await syncPushWithRetry(HMEM_PATH);
454
454
  if (!retry.resolved)
455
455
  text += `\n⚠ unresolved push conflicts after ${retry.attempts} attempts`;
456
456
  else if (retry.attempts > 1)
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-curate-server.js","sourceRoot":"","sources":["../src/mcp-curate-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-curate-server.js","sourceRoot":"","sources":["../src/mcp-curate-server.ts"],"names":[],"mappings":"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"}
@@ -429,11 +429,11 @@ server.tool("write_memory", "Write a new memory entry to your hierarchical long-
429
429
  };
430
430
  }
431
431
  if (storeName === "personal")
432
- syncPullThenPush(HMEM_PATH);
432
+ await syncPullThenPush(HMEM_PATH);
433
433
  // Multi-agent ID-collision prevention: reserve next ID at sync server before writing.
434
434
  // No-op if hmem-sync is disabled. Throws after maxAttempts if continually conflicting.
435
435
  if (storeName === "personal") {
436
- reserveNextId(HMEM_PATH, prefix, hmemStore);
436
+ await reserveNextId(HMEM_PATH, prefix, hmemStore);
437
437
  }
438
438
  const result = hmemStore.write(prefix, content, links, undefined, favorite, tags, pinned, force);
439
439
  const storeLabel = storeName === "company" ? "company" : path.basename(HMEM_PATH, ".hmem");
@@ -564,7 +564,7 @@ server.tool("update_memory", "Update the text of an existing memory entry or sub
564
564
  };
565
565
  }
566
566
  if (storeName === "personal" && !isExternal)
567
- syncPullThenPush(HMEM_PATH);
567
+ await syncPullThenPush(HMEM_PATH);
568
568
  // Cross-project write notice: if updating a P-sub-node of a project that isn't currently
569
569
  // active, do NOT auto-switch. The agent may be doing a quick cross-project edit (e.g.
570
570
  // logging a hmem bug while working on another project). Instead, return a notice in the
@@ -619,7 +619,7 @@ server.tool("update_memory", "Update the text of an existing memory entry or sub
619
619
  if (tags !== undefined)
620
620
  parts.push(tags.length > 0 ? `tags: ${tags.join(" ")}` : "tags cleared");
621
621
  if (storeName === "personal" && !isExternal) {
622
- const retry = syncPushWithRetry(HMEM_PATH);
622
+ const retry = await syncPushWithRetry(HMEM_PATH);
623
623
  if (!retry.resolved) {
624
624
  parts.push(`⚠ unresolved push conflicts after ${retry.attempts} attempts`);
625
625
  }
@@ -658,7 +658,7 @@ server.tool("flush_context", "Store a conversation chunk as linear context histo
658
658
  try {
659
659
  const hmemStore = new HmemStore(HMEM_PATH, hmemConfig);
660
660
  try {
661
- syncPullThenPush(HMEM_PATH);
661
+ await syncPullThenPush(HMEM_PATH);
662
662
  const result = hmemStore.writeLinear("O", { l1, l2, l3, l4, l5 }, tags, links);
663
663
  const levels = [l1, l2, l3, l4, l5].filter(Boolean).length;
664
664
  log(`flush_context: ${result.id} (${levels} levels, ${tags.join(" ")})`);
@@ -789,7 +789,7 @@ server.tool("append_memory", "Append new child nodes to an existing memory entry
789
789
  }
790
790
  }
791
791
  if (storeName === "personal")
792
- syncPullThenPush(HMEM_PATH);
792
+ await syncPullThenPush(HMEM_PATH);
793
793
  // Cross-project write notice (see update_memory for rationale)
794
794
  const rootId = id.includes(".") ? id.split(".")[0] : id;
795
795
  let crossProjectNotice = "";
@@ -805,7 +805,7 @@ server.tool("append_memory", "Append new child nodes to an existing memory entry
805
805
  // (e.g. both inserting P0048.7.5 with different content). On conflict the loop
806
806
  // pulls and recomputes the next free sub-seq before retrying.
807
807
  if (storeName === "personal") {
808
- reserveNextSubIds(HMEM_PATH, id, content, hmemStore);
808
+ await reserveNextSubIds(HMEM_PATH, id, content, hmemStore);
809
809
  }
810
810
  const result = hmemStore.appendChildren(id, content);
811
811
  const storeLabel = storeName === "company" ? "company" : path.basename(HMEM_PATH, ".hmem");
@@ -817,7 +817,7 @@ server.tool("append_memory", "Append new child nodes to an existing memory entry
817
817
  }
818
818
  let conflictNote = "";
819
819
  if (storeName === "personal") {
820
- const retry = syncPushWithRetry(HMEM_PATH);
820
+ const retry = await syncPushWithRetry(HMEM_PATH);
821
821
  if (!retry.resolved) {
822
822
  conflictNote = `\n⚠ Push had unresolved conflicts after ${retry.attempts} attempts — your local changes are saved but another agent's writes may have collided. Run hmem-sync sync manually to investigate.`;
823
823
  }
@@ -900,7 +900,7 @@ server.tool("read_memory", "Read from your hierarchical long-term memory (.hmem)
900
900
  "Overrides the `store` parameter. Use to audit/curate another .hmem file."),
901
901
  }, async ({ id, depth, prefix, after, before, search, limit: maxResults, time, period, time_around, show_obsolete, show_obsolete_path, titles_only, expand, mode, store: storeName, curator, show_all, tag, stale_days, context_for, min_tag_score, hmem_path }) => {
902
902
  // Pull before read to get latest from server (30s cooldown)
903
- const newEntries = storeName === "personal" && !hmem_path ? syncPull(HMEM_PATH) : [];
903
+ const newEntries = storeName === "personal" && !hmem_path ? await syncPull(HMEM_PATH) : [];
904
904
  try {
905
905
  const { store: hmemStore, label: storeLabelResolved, path: resolvedPath } = resolveStore(storeName, hmem_path);
906
906
  const isExternal = !!hmem_path;
@@ -1240,8 +1240,7 @@ server.tool("load_project", "Load a project and activate it. Returns L2 content
1240
1240
  };
1241
1241
  }
1242
1242
  // Check if project is obsolete
1243
- const isObsolete = hmemStore.db.prepare("SELECT obsolete FROM memories WHERE id = ? AND obsolete = 1").get(id);
1244
- if (isObsolete) {
1243
+ if (hmemStore.isObsolete(id)) {
1245
1244
  return {
1246
1245
  content: [{ type: "text", text: `ERROR: ${id} is obsolete. Use the current version instead.` }],
1247
1246
  isError: true,
@@ -1335,6 +1334,7 @@ server.tool("load_project", "Load a project and activate it. Returns L2 content
1335
1334
  if (depth === 0)
1336
1335
  continue; // skip entirely
1337
1336
  const cId = lastSeg(child.id);
1337
+ lines.push("");
1338
1338
  lines.push(` ${cId} ${cleanTitle(childTitle, 60)}`);
1339
1339
  if (depth === 1) {
1340
1340
  // Title only — show child count hint if present
@@ -1399,6 +1399,7 @@ server.tool("load_project", "Load a project and activate it. Returns L2 content
1399
1399
  const expandBody = withBody.includes(child.seq);
1400
1400
  const expandChildTitles = withChildren.includes(child.seq);
1401
1401
  const hideChildren = HIDE_CHILDREN_SECTIONS.includes(child.seq);
1402
+ lines.push("");
1402
1403
  lines.push(` ${cId} ${cleanTitle(child.title || child.content, 60)}`);
1403
1404
  if (hideChildren) {
1404
1405
  const childCount = child.children ? child.children.filter((g) => !g.irrelevant).length : 0;
@@ -1456,6 +1457,7 @@ server.tool("load_project", "Load a project and activate it. Returns L2 content
1456
1457
  }
1457
1458
  // Links
1458
1459
  if (e.linkedEntries && e.linkedEntries.length > 0) {
1460
+ lines.push("");
1459
1461
  lines.push(" Links:");
1460
1462
  for (const le of e.linkedEntries) {
1461
1463
  lines.push(` ${le.id} ${cleanTitle(le.title, 70)}`);
@@ -1466,6 +1468,7 @@ server.tool("load_project", "Load a project and activate it. Returns L2 content
1466
1468
  const ctx = hmemStore.findContext(id, 4, 10);
1467
1469
  const relatedEL = ctx.tagRelated.filter(r => (r.entry.prefix === "E" || r.entry.prefix === "L") && !r.entry.obsolete && !r.entry.irrelevant);
1468
1470
  if (relatedEL.length > 0) {
1471
+ lines.push("");
1469
1472
  lines.push(" Related errors & lessons:");
1470
1473
  for (const r of relatedEL) {
1471
1474
  lines.push(` ${r.entry.id} [⚡] ${cleanTitle(r.entry.title, 70)}`);
@@ -1479,6 +1482,7 @@ server.tool("load_project", "Load a project and activate it. Returns L2 content
1479
1482
  depth: 2,
1480
1483
  }).filter(r => !r.obsolete && !r.irrelevant && Array.isArray(r.links) && r.links.includes(id));
1481
1484
  if (ruleEntries.length > 0) {
1485
+ lines.push("");
1482
1486
  lines.push(" Rules:");
1483
1487
  for (const r of ruleEntries) {
1484
1488
  lines.push(` ${r.id} ${cleanTitle(r.title)}`);
@@ -1496,6 +1500,7 @@ server.tool("load_project", "Load a project and activate it. Returns L2 content
1496
1500
  if (oExists) {
1497
1501
  const { text: oText, ids } = formatRecentOEntries(hmemStore, 1, 5, id, true);
1498
1502
  if (oText.trim()) {
1503
+ lines.push("");
1499
1504
  lines.push(" --- Recent Session Context ---");
1500
1505
  lines.push(" " + oText.replace(/\n/g, "\n "));
1501
1506
  sessionCache.registerDelivered(ids);
@@ -1550,7 +1555,7 @@ server.tool("load_project", "Load a project and activate it. Returns L2 content
1550
1555
  // Onboarding hints: show when no I/A-entries exist or no active I-entry
1551
1556
  const onboardingHints = [];
1552
1557
  const hasAnyI = !!totalStats.byPrefix["I"];
1553
- const hasActiveI = hasAnyI && !!(hmemStore.db.prepare("SELECT 1 FROM memories WHERE prefix = 'I' AND active = 1 AND irrelevant != 1 AND obsolete != 1 LIMIT 1").get());
1558
+ const hasActiveI = hasAnyI && hmemStore.hasActiveEntryWithPrefix("I");
1554
1559
  if (!hasAnyI || !hasActiveI) {
1555
1560
  const reason = !hasAnyI ? "No I-entries found" : "No active I-entry";
1556
1561
  onboardingHints.push(`Hint: ${reason}. Document your devices: write_memory(prefix="I", content="Device Name | Active | OS | hostname\\n\\ndetails")`);
@@ -1601,8 +1606,7 @@ server.tool("read_project", "Read a project's context without activating it —
1601
1606
  isError: true,
1602
1607
  };
1603
1608
  }
1604
- const isObsolete = hmemStore.db.prepare("SELECT obsolete FROM memories WHERE id = ? AND obsolete = 1").get(id);
1605
- if (isObsolete) {
1609
+ if (hmemStore.isObsolete(id)) {
1606
1610
  return {
1607
1611
  content: [{ type: "text", text: `ERROR: ${id} is obsolete. Use the current version instead.` }],
1608
1612
  isError: true,
@@ -1776,8 +1780,8 @@ server.tool("create_project", "Create a new project with the standard R0009 sche
1776
1780
  const allTags = ["#project", ...(tags ?? [])];
1777
1781
  // Pull + reserve P-ID before write (multi-agent collision prevention)
1778
1782
  if (storeName === "personal") {
1779
- syncPullThenPush(HMEM_PATH);
1780
- reserveNextId(HMEM_PATH, "P", hmemStore);
1783
+ await syncPullThenPush(HMEM_PATH);
1784
+ await reserveNextId(HMEM_PATH, "P", hmemStore);
1781
1785
  }
1782
1786
  // Write P-entry (signature: prefix, content, links, minRole, favorite, tags)
1783
1787
  const result = hmemStore.write("P", content, links ?? [], undefined, false, allTags);
@@ -1792,7 +1796,7 @@ server.tool("create_project", "Create a new project with the standard R0009 sche
1792
1796
  // Reserve the O-prefix slot too — even though we may rename it afterwards,
1793
1797
  // the initial write needs collision protection
1794
1798
  if (storeName === "personal")
1795
- reserveNextId(HMEM_PATH, "O", hmemStore);
1799
+ await reserveNextId(HMEM_PATH, "O", hmemStore);
1796
1800
  hmemStore.write("O", `${name} — Session Log`, [pId], undefined, false, ["#session-log"]);
1797
1801
  // The O-entry gets auto-assigned the next seq, which may not match pSeq.
1798
1802
  // We need to ensure it has the right ID. Check if it matches:
@@ -1807,7 +1811,7 @@ server.tool("create_project", "Create a new project with the standard R0009 sche
1807
1811
  // Note: write() with prefix "P" auto-activates the project (deactivates others)
1808
1812
  // Sync with retry loop to catch any version conflicts from the rename
1809
1813
  if (storeName === "personal")
1810
- syncPushWithRetry(HMEM_PATH);
1814
+ await syncPushWithRetry(HMEM_PATH);
1811
1815
  log(`create_project: ${pId} + ${oId} created and activated`);
1812
1816
  const sectionNames = schema
1813
1817
  ? schema.sections.map(s => s.name).join(", ")
@@ -1870,14 +1874,14 @@ server.tool("set_active_device", "Set the active device for this machine. Call t
1870
1874
  const store = new HmemStore(HMEM_PATH, hmemConfig);
1871
1875
  let title = id;
1872
1876
  try {
1873
- const row = store.db.prepare("SELECT title FROM memories WHERE id = ? AND obsolete != 1 LIMIT 1").get(id);
1874
- if (!row) {
1877
+ const rowTitle = store.getNonObsoleteTitle(id);
1878
+ if (rowTitle === undefined) {
1875
1879
  return {
1876
1880
  content: [{ type: "text", text: `ERROR: Entry ${id} not found or obsolete.` }],
1877
1881
  isError: true,
1878
1882
  };
1879
1883
  }
1880
- title = (row.title ?? id).split("|")[0].trim();
1884
+ title = rowTitle.split("|")[0].trim();
1881
1885
  }
1882
1886
  finally {
1883
1887
  store.close();