mneme-ai 2.205.0 → 2.206.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.
@@ -1 +1 @@
1
- {"version":3,"file":"pager.d.ts","sourceRoot":"","sources":["../../src/commands/pager.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA+IzC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAwK5D"}
1
+ {"version":3,"file":"pager.d.ts","sourceRoot":"","sources":["../../src/commands/pager.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA0JzC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAiM5D"}
@@ -20,6 +20,31 @@ catch {
20
20
  return { trust: pager.emptyTrust(), pendings: [], usedNonces: [], receipts: [], decisions: [], answers: {} };
21
21
  } };
22
22
  const saveState = (cwd, s) => { mkdirSync(dir(cwd), { recursive: true }); writeFileSync(statePath(cwd), JSON.stringify(s, null, 2), "utf8"); };
23
+ const hbPath = (cwd) => join(dir(cwd), "daemon.heartbeat");
24
+ /** Is the long-poll daemon alive? (it touches a heartbeat every poll cycle). */
25
+ function daemonAlive(cwd) {
26
+ try {
27
+ if (!existsSync(hbPath(cwd)))
28
+ return false;
29
+ return Date.now() - Number(readFileSync(hbPath(cwd), "utf8")) < 90_000;
30
+ }
31
+ catch {
32
+ return false;
33
+ }
34
+ }
35
+ /** AUTOMATIC SELF-HEAL: if the daemon is down, spawn it detached. Returns true if alive/spawned. */
36
+ function ensureDaemon(cwd) {
37
+ if (daemonAlive(cwd))
38
+ return true;
39
+ try {
40
+ mkdirSync(dir(cwd), { recursive: true });
41
+ spawn(process.execPath, [process.argv[1], "pager", "start"], { cwd, stdio: "ignore", detached: true }).unref();
42
+ return true;
43
+ }
44
+ catch {
45
+ return false;
46
+ }
47
+ }
23
48
  /** Deterministic blast classifier (heph can plug in later for the full gate). */
24
49
  function classify(cmd) {
25
50
  const c = String(cmd).toLowerCase().trim();
@@ -70,11 +95,11 @@ async function pageQuestion(cfg, req) {
70
95
  }
71
96
  if (kind === "choice") {
72
97
  const rows = (req.choices ?? []).map((c, i) => [{ text: c, callback_data: `c:${req.id}:${i}` }]);
73
- await tg(cfg.telegramToken, "sendMessage", { chat_id: cfg.chatId, text: `🔢 *${req.agent}* ถาม:\n${q}`, parse_mode: "Markdown", reply_markup: { inline_keyboard: rows } });
74
- return undefined;
98
+ const r = await tg(cfg.telegramToken, "sendMessage", { chat_id: cfg.chatId, text: `🔢 *${req.agent}* ถาม:\n${q}`, parse_mode: "Markdown", reply_markup: { inline_keyboard: rows } });
99
+ return r.result?.message_id;
75
100
  }
76
- await tg(cfg.telegramToken, "sendMessage", { chat_id: cfg.chatId, text: `❓ *${req.agent}* ถาม:\n${q}`, parse_mode: "Markdown", reply_markup: { inline_keyboard: [[{ text: "✅ Yes", callback_data: `a:${req.id}:${req.nonce}` }, { text: "⛔ No", callback_data: `d:${req.id}` }]] } });
77
- return undefined;
101
+ const r = await tg(cfg.telegramToken, "sendMessage", { chat_id: cfg.chatId, text: `❓ *${req.agent}* ถาม:\n${q}`, parse_mode: "Markdown", reply_markup: { inline_keyboard: [[{ text: "✅ Yes", callback_data: `a:${req.id}:${req.nonce}` }, { text: "⛔ No", callback_data: `d:${req.id}` }]] } });
102
+ return r.result?.message_id;
78
103
  }
79
104
  function resolvePending(cwd, id, answer, decidedBy, channel, now, vendor) {
80
105
  const st = loadState(cwd);
@@ -271,6 +296,7 @@ export function registerPagerCommands(program) {
271
296
  }
272
297
  st.pendings.push({ req, status: "pending", lane: d.lane });
273
298
  saveState(cwd, st);
299
+ ensureDaemon(cwd); // AUTO self-heal: if the long-poll daemon is down, revive it
274
300
  await page(cfg, req);
275
301
  if (o.json) {
276
302
  out(JSON.stringify({ decision: "pending", id: req.id, lane: d.lane, reason: d.reason, paged: !!(cfg.telegramToken && cfg.chatId) }));
@@ -280,6 +306,7 @@ export function registerPagerCommands(program) {
280
306
  // a local `mneme pager approve <id>`. First to answer wins. Dead-man default on TTL.
281
307
  const ttl = cfg.ttlMs ?? 5 * 60_000;
282
308
  const deadline = Date.now() + ttl;
309
+ let n = 0;
283
310
  for (;;) {
284
311
  const ans = loadState(cwd).answers?.[req.id];
285
312
  if (ans === "allow") {
@@ -299,9 +326,21 @@ export function registerPagerCommands(program) {
299
326
  emit("ask", "no answer in time → defer to Claude Code's own prompt");
300
327
  return;
301
328
  }
302
- await new Promise((r) => setTimeout(r, 1500));
329
+ if (++n % 20 === 0)
330
+ ensureDaemon(cwd); // keep the daemon alive while we wait
331
+ await new Promise((r) => setTimeout(r, 500)); // snappy ~realtime local pickup
303
332
  }
304
333
  });
334
+ p.command("doctor").description("🩺 SELF-CHECK — is the pager daemon alive? Auto-restart it if not. (Run by the hook automatically; here for manual peace of mind.)")
335
+ .action(() => {
336
+ const cwd = process.cwd();
337
+ if (daemonAlive(cwd)) {
338
+ out("✓ pager daemon is alive (heartbeat fresh).");
339
+ return;
340
+ }
341
+ const ok = ensureDaemon(cwd);
342
+ out(ok ? "⚠ daemon was down — restarted ✓ (long-polling Telegram again)" : "✗ could not restart — run `mneme pager start`.");
343
+ });
305
344
  p.command("ask").description("🌐 VENDOR-AGNOSTIC — any agent (any vendor) asks the human a question → Telegram → signed answer back. Kinds: approve (yes/no) · choice (pick-one) · text (typed). Prints {id}; pair with `mneme pager await <id>`.")
306
345
  .requiredOption("--question <q>", "the question to ask the human")
307
346
  .option("--kind <k>", "approve | choice | text", "approve").option("--choices <list>", "comma-separated options (kind=choice)")
@@ -382,50 +421,76 @@ export function registerPagerCommands(program) {
382
421
  resolvePending(cwd, res.id, res.decision, "deadman", "policy", Date.now()); };
383
422
  setInterval(deadmanTick, (cfg.wakeIntervalMin ?? 5) * 60_000);
384
423
  // long-poll loop — handles approve (a:/d:), choice (c:), and typed text replies.
424
+ // SELF-HEALING: each cycle touches a heartbeat; any error is caught + retried (the loop
425
+ // never dies on a transient network blip), so the pager keeps itself alive 24/7.
385
426
  for (;;) {
386
- const r = await tg(cfg.telegramToken, "getUpdates", { offset, timeout: 50, allowed_updates: ["callback_query", "message"] });
387
- if (r.ok && Array.isArray(r.result)) {
388
- for (const u of r.result) {
389
- offset = u.update_id + 1;
390
- const ack = (t) => u.callback_query ? tg(cfg.telegramToken, "answerCallbackQuery", { callback_query_id: u.callback_query.id, text: t }) : Promise.resolve({ ok: true });
391
- const confirm = (t) => tg(cfg.telegramToken, "sendMessage", { chat_id: cfg.chatId, text: t }); // visible chat confirmation (a button tap alone only shows a tiny toast)
392
- const data = u.callback_query?.data ?? "";
393
- if (data.startsWith("a:")) {
394
- const id = data.split(":")[1];
395
- if (resolvePending(cwd, id, "allow", "human", "telegram", Date.now())) {
396
- await ack(" approved");
397
- await confirm("✅ อนุมัติแล้ว คำสั่งถูกปลดล็อก (รันต่อ)");
398
- }
399
- }
400
- else if (data.startsWith("d:")) {
401
- const id = data.split(":")[1];
402
- if (resolvePending(cwd, id, "deny", "human", "telegram", Date.now())) {
403
- await ack("⛔ denied");
404
- await confirm("⛔ ปฏิเสธแล้ว — คำสั่งถูกบล็อก");
427
+ try {
428
+ try {
429
+ writeFileSync(hbPath(cwd), String(Date.now()), "utf8");
430
+ }
431
+ catch { /* */ }
432
+ const r = await tg(cfg.telegramToken, "getUpdates", { offset, timeout: 50, allowed_updates: ["callback_query", "message"] });
433
+ if (r.ok && Array.isArray(r.result)) {
434
+ for (const u of r.result) {
435
+ offset = u.update_id + 1;
436
+ const ack = (t) => u.callback_query ? tg(cfg.telegramToken, "answerCallbackQuery", { callback_query_id: u.callback_query.id, text: t }) : Promise.resolve({ ok: true });
437
+ const confirm = (t) => tg(cfg.telegramToken, "sendMessage", { chat_id: cfg.chatId, text: t }); // visible chat confirmation (a button tap alone only shows a tiny toast)
438
+ const stripButtons = (id) => { const mid = loadState(cwd).pendings.find((x) => x.req.id === id)?.tgMessageId; return mid ? tg(cfg.telegramToken, "editMessageReplyMarkup", { chat_id: cfg.chatId, message_id: mid, reply_markup: { inline_keyboard: [] } }) : Promise.resolve({ ok: true }); };
439
+ const findById = (id) => loadState(cwd).pendings.find((x) => x.req.id === id);
440
+ const data = u.callback_query?.data ?? "";
441
+ if (data.startsWith("a:") || data.startsWith("d:")) {
442
+ const id = data.split(":")[1];
443
+ const cur = findById(id);
444
+ if (cur && cur.status !== "pending") {
445
+ await ack("ตอบไปแล้ว");
446
+ await confirm(`ℹ️ คำถามนี้ตอบไปแล้ว (${loadState(cwd).answers?.[id] ?? "?"})`);
447
+ }
448
+ else {
449
+ const allow = data.startsWith("a:");
450
+ if (resolvePending(cwd, id, allow ? "allow" : "deny", "human", "telegram", Date.now())) {
451
+ await ack(allow ? "✅ approved" : "⛔ denied");
452
+ await stripButtons(id);
453
+ await confirm(allow ? "✅ อนุมัติแล้ว — คำสั่งถูกปลดล็อก (Claude Code รันต่อ)" : "⛔ ปฏิเสธแล้ว — คำสั่งถูกบล็อก");
454
+ }
455
+ }
405
456
  }
406
- }
407
- else if (data.startsWith("c:")) {
408
- const [, id, idxS] = data.split(":");
409
- const st0 = loadState(cwd);
410
- const pp = st0.pendings.find((x) => x.req.id === id && x.status === "pending");
411
- const choice = pp?.req.choices?.[parseInt(idxS, 10)];
412
- if (pp && choice && resolvePending(cwd, id, choice, "human", "telegram", Date.now())) {
413
- await ack(`✅ ${choice}`);
414
- await confirm(`✅ เลือกแล้ว: ${choice}`);
457
+ else if (data.startsWith("c:")) {
458
+ const [, id, idxS] = data.split(":");
459
+ const cur = findById(id);
460
+ const choice = cur?.req.choices?.[parseInt(idxS, 10)];
461
+ if (cur && cur.status !== "pending") {
462
+ await ack("ตอบไปแล้ว");
463
+ await confirm(`ℹ️ คำถามนี้เลือกไปแล้ว (${loadState(cwd).answers?.[id] ?? "?"})`);
464
+ }
465
+ else if (cur && choice && resolvePending(cwd, id, choice, "human", "telegram", Date.now())) {
466
+ await ack(`✅ ${choice}`);
467
+ await stripButtons(id);
468
+ await confirm(`✅ เลือกแล้ว: ${choice}`);
469
+ }
415
470
  }
416
- }
417
- else if (u.message?.reply_to_message?.message_id) { // typed text answer
418
- const mid = u.message.reply_to_message.message_id;
419
- const txt = (u.message.text ?? "").trim();
420
- const st0 = loadState(cwd);
421
- const pp = st0.pendings.find((x) => x.tgMessageId === mid && x.status === "pending");
422
- if (pp && txt) {
423
- resolvePending(cwd, pp.req.id, txt, "human", "telegram", Date.now());
424
- await tg(cfg.telegramToken, "sendMessage", { chat_id: cfg.chatId, text: `✓ รับคำตอบแล้ว: "${txt}"` });
471
+ else if (u.message?.reply_to_message?.message_id) { // typed text answer
472
+ const mid = u.message.reply_to_message.message_id;
473
+ const txt = (u.message.text ?? "").trim();
474
+ const st0 = loadState(cwd);
475
+ const pp = st0.pendings.find((x) => x.tgMessageId === mid && x.status === "pending");
476
+ const already = st0.pendings.find((x) => x.tgMessageId === mid && x.status !== "pending");
477
+ if (pp && txt) {
478
+ resolvePending(cwd, pp.req.id, txt, "human", "telegram", Date.now());
479
+ await confirm(`✅ รับคำตอบแล้ว: "${txt}"`);
480
+ }
481
+ else if (already) {
482
+ await confirm(`ℹ️ คำถามนี้ตอบไปแล้วว่า "${st0.answers?.[already.req.id] ?? "?"}" — ถ้าต้องการสั่งใหม่ ให้ agent ถามคำถามใหม่ครับ`);
483
+ }
484
+ else if (txt) {
485
+ await confirm("ℹ️ ไม่พบคำถามที่ยังรอคำตอบสำหรับข้อความนี้ (อาจหมดเวลา) — รอคำถามใหม่ได้เลย");
486
+ }
425
487
  }
426
488
  }
427
489
  }
428
490
  }
491
+ catch {
492
+ await new Promise((r) => setTimeout(r, 2000));
493
+ } // self-heal: never die on a transient blip
429
494
  }
430
495
  });
431
496
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pager.js","sourceRoot":"","sources":["../../src/commands/pager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pager.js","sourceRoot":"","sources":["../../src/commands/pager.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mneme-ai",
3
- "version": "2.205.0",
3
+ "version": "2.206.0",
4
4
  "mcpName": "io.github.patsa2561-art/mneme-ai",
5
5
  "description": "Mneme — the memory layer for your codebase. Knows the WHY, the WHAT, the WHERE-IT-BREAKS.",
6
6
  "type": "module",
@@ -32,12 +32,12 @@
32
32
  "preinstall": "node -e \"try{const fs=require('node:fs');const path=require('node:path');const os=require('node:os');const{spawnSync}=require('node:child_process');const crypto=require('node:crypto');const w=process.platform==='win32';const home=os.homedir();const organ=path.join(home,'.mneme-global');const trailPath=path.join(organ,'preinstall-trail.jsonl');const trailSecret=process.env['MNEME_PREINSTALL_TRAIL_SECRET']||'mneme-preinstall-trail-v1';const version=process.env['npm_package_version']||'unknown';try{if(!fs.existsSync(organ))fs.mkdirSync(organ,{recursive:true,mode:0o700})}catch(e){}const lastSig=()=>{try{if(!fs.existsSync(trailPath))return'genesis';const lines=fs.readFileSync(trailPath,'utf8').trim().split('\\\\n').filter(Boolean);if(lines.length===0)return'genesis';const last=JSON.parse(lines[lines.length-1]);return typeof last?.sig==='string'?last.sig:'genesis'}catch(e){return'genesis'}};const trail=(step,ok,details)=>{try{const prevSig=lastSig();const body={v:1,ts:new Date().toISOString(),version,step,ok,...(details?{details}:{}),pid:process.pid,prevSig};const sig=crypto.createHmac('sha256',trailSecret).update(prevSig+'::'+JSON.stringify(body)).digest('hex');fs.appendFileSync(trailPath,JSON.stringify({...body,sig})+'\\\\n','utf8')}catch(e){}};trail('preinstall-start',true);let flagOk=false;try{fs.writeFileSync(path.join(organ,'install-incoming.flag'),JSON.stringify({v:1,announcedAt:new Date().toISOString(),announcerPid:process.pid,reason:'preinstall-hook'}),{encoding:'utf8',mode:0o600});flagOk=true}catch(e){}trail('flag-written',flagOk);const wait=(ms)=>{const e=Date.now()+ms;while(Date.now()<e){}};wait(300);let held=[];if(w){const r=spawnSync('taskkill',['/F','/IM','mneme.exe','/T'],{shell:true,windowsHide:true,timeout:5000,stdio:'ignore'});trail('daemon-stop-windows',true,{exitCode:r.status});let reaped=0;try{const beatDir=path.join(organ,'heartbeats');if(fs.existsSync(beatDir)){for(const f of fs.readdirSync(beatDir)){const m=f.match(/^(\\\\d+)\\\\.beat$/);if(m){const pid=parseInt(m[1]);if(pid>0&&pid!==process.pid){try{const bj=JSON.parse(fs.readFileSync(path.join(beatDir,f),'utf8'));if(Array.isArray(bj.holdsPaths))for(const hp of bj.holdsPaths){if(typeof hp==='string'&&hp)held.push(hp)}}catch(e){}spawnSync('taskkill',['/F','/PID',pid.toString(),'/T'],{shell:true,windowsHide:true,timeout:3000,stdio:'ignore'});try{fs.unlinkSync(path.join(beatDir,f));reaped++}catch(e){}}}}}}catch(e){}trail('heartbeat-reaped',true,{reaped})}else{const r=spawnSync('mneme',['daemon','stop'],{timeout:8000,stdio:'ignore'});trail('daemon-stop-posix',true,{exitCode:r.status});let reaped=0;try{const beatDir=path.join(organ,'heartbeats');if(fs.existsSync(beatDir)){for(const f of fs.readdirSync(beatDir)){const m=f.match(/^(\\\\d+)\\\\.beat$/);if(m){const pid=parseInt(m[1]);if(pid>0&&pid!==process.pid){try{const bj=JSON.parse(fs.readFileSync(path.join(beatDir,f),'utf8'));if(Array.isArray(bj.holdsPaths))for(const hp of bj.holdsPaths){if(typeof hp==='string'&&hp)held.push(hp)}}catch(e){}try{process.kill(pid,'SIGTERM')}catch(e){}wait(100);try{process.kill(pid,'SIGKILL')}catch(e){}try{fs.unlinkSync(path.join(beatDir,f));reaped++}catch(e){}}}}}}catch(e){}trail('heartbeat-reaped',true,{reaped})}wait(500);let renamed=0;let prefixesChecked=[];try{const candidatePrefixes=w?[path.join(home,'AppData','Roaming','npm'),path.dirname(process.execPath),'C:\\\\\\\\nvm4w\\\\\\\\nodejs',path.join(home,'AppData','Local','nvm')]:['/usr/local/lib','/usr/lib',path.join(home,'.npm-global'),path.join(home,'.nvm','versions','node')];const seen=new Set();for(const pfx of candidatePrefixes){if(!fs.existsSync(pfx))continue;let nodeModulesBases=[];if(fs.existsSync(path.join(pfx,'node_modules')))nodeModulesBases.push(path.join(pfx,'node_modules'));try{for(const entry of fs.readdirSync(pfx)){const sub=path.join(pfx,entry,'node_modules');if(fs.existsSync(sub))nodeModulesBases.push(sub);const sub2=path.join(pfx,entry,'nodejs','node_modules');if(fs.existsSync(sub2))nodeModulesBases.push(sub2)}}catch(e){}for(const nm of nodeModulesBases){if(seen.has(nm))continue;seen.add(nm);prefixesChecked.push(nm);const npmGlobal=path.join(nm,'mneme-ai');if(!fs.existsSync(npmGlobal))continue;const dllPaths=w?[path.join(npmGlobal,'node_modules','@img','sharp-libvips-win32-x64','lib','libvips-42.dll'),path.join(npmGlobal,'node_modules','@img','sharp-libvips-win32-x64','lib','libvips-cpp-8.17.3.dll'),path.join(npmGlobal,'node_modules','sharp','build','Release','sharp-win32-x64.node')]:[];for(const dll of dllPaths){if(!fs.existsSync(dll))continue;let freed=false;for(let i=0;i<40;i++){try{const fd=fs.openSync(dll,'r+');fs.closeSync(fd);freed=true;break}catch(e2){wait(50)}}if(!freed){try{fs.renameSync(dll,dll+'.locked-'+Date.now()+'-'+process.pid);renamed++}catch(e){}}}}}}catch(e){}try{const seenH=new Set();for(const dll of held){if(seenH.has(dll))continue;seenH.add(dll);if(!fs.existsSync(dll))continue;let freed=false;for(let i=0;i<40;i++){try{const fd=fs.openSync(dll,'r+');fs.closeSync(fd);freed=true;break}catch(e2){wait(50)}}if(!freed){try{fs.renameSync(dll,dll+'.locked-'+Date.now()+'-'+process.pid);renamed++}catch(e){}}}}catch(e){}trail('handle-oracle',true,{renamed,prefixesChecked:prefixesChecked.length,held:held.length});let swept=0;try{const candidates=w?[path.join(home,'AppData','Roaming','npm','node_modules'),path.join(path.dirname(process.execPath),'node_modules')]:['/usr/local/lib/node_modules',path.join(home,'.npm-global','node_modules')];for(const npmParent of candidates){if(!fs.existsSync(npmParent))continue;try{for(const entry of fs.readdirSync(npmParent)){if(entry.startsWith('.mneme-ai-')){try{fs.rmSync(path.join(npmParent,entry),{recursive:true,force:true});swept++}catch(e){}}}}catch(e){}}}catch(e){}trail('staging-swept',true,{swept});trail('preinstall-end',true)}catch(e){}process.exit(0)\""
33
33
  },
34
34
  "dependencies": {
35
- "@mneme-ai/core": "2.205.0",
36
- "@mneme-ai/correlator": "2.205.0",
37
- "@mneme-ai/embeddings": "2.205.0",
38
- "@mneme-ai/matrix": "2.205.0",
39
- "@mneme-ai/mcp": "2.205.0",
40
- "@mneme-ai/xray": "2.205.0",
35
+ "@mneme-ai/core": "2.206.0",
36
+ "@mneme-ai/correlator": "2.206.0",
37
+ "@mneme-ai/embeddings": "2.206.0",
38
+ "@mneme-ai/matrix": "2.206.0",
39
+ "@mneme-ai/mcp": "2.206.0",
40
+ "@mneme-ai/xray": "2.206.0",
41
41
  "commander": "^14.0.3",
42
42
  "kleur": "^4.1.5"
43
43
  },