@mysten-incubation/memwal-mcp 0.0.6-rc.0 → 0.0.7-dev.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/README.md CHANGED
@@ -4,6 +4,10 @@ Walrus Memory MCP is a stdio Model Context Protocol server for Walrus Memory. It
4
4
 
5
5
  On first use, the package advertises a `memwal_login` tool to the MCP client. The agent can call it inline — no separate CLI command needed. The tool opens a browser-based wallet login flow and stores local credentials at `~/.memwal/credentials.json`. A matching `memwal_logout` tool clears the saved credentials.
6
6
 
7
+ ## Source and release ownership
8
+
9
+ This directory is the canonical source for the MCP runtime, tests, versioning, and npm releases. The Claude Code marketplace package is maintained separately in [`CommandOSSLabs/walrus-memory-mcp-plugin`](https://github.com/CommandOSSLabs/walrus-memory-mcp-plugin) for transfer to MystenLabs. npm releases intentionally do not bundle a second marketplace-plugin copy.
10
+
7
11
  ## Quick Start
8
12
 
9
13
  Add Walrus Memory MCP to your MCP client config:
@@ -67,12 +67,12 @@ const TOOL_DEFINITIONS = [
67
67
  },
68
68
  {
69
69
  name: "memwal_restore",
70
- description: "Re-index a namespace from Walrus blobs back into the relayer's search index. Returns counts only.",
70
+ description: "Re-index a namespace from Walrus blobs back into the relayer's search index. Returns counts and truncated status; call again with a higher limit when truncated=true.",
71
71
  inputSchema: {
72
72
  type: "object",
73
73
  properties: {
74
74
  namespace: { type: "string", minLength: 1 },
75
- limit: { type: "integer", minimum: 1, maximum: 500, default: 10 },
75
+ limit: { type: "integer", minimum: 1, maximum: 100, default: 10 },
76
76
  },
77
77
  required: ["namespace"],
78
78
  additionalProperties: false,
@@ -1 +1 @@
1
- {"version":3,"file":"auth-required.js","sourceRoot":"","sources":["../src/auth-required.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAAE,SAAS,EAA0B,MAAM,WAAW,CAAC;AAC9D,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAWvC,MAAM,gBAAgB,GAAG;IACrB;QACI,IAAI,EAAE,iBAAiB;QACvB,WAAW,EACP,8KAA8K;QAClL,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACR,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE;gBACtC,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAChC;YACD,QAAQ,EAAE,CAAC,MAAM,CAAC;YAClB,oBAAoB,EAAE,KAAK;SAC9B;KACJ;IACD;QACI,IAAI,EAAE,eAAe;QACrB,WAAW,EACP,+GAA+G;QACnH,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACR,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE;gBACvC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE;gBACjE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAChC;YACD,QAAQ,EAAE,CAAC,OAAO,CAAC;YACnB,oBAAoB,EAAE,KAAK;SAC9B;KACJ;IACD;QACI,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACP,wJAAwJ;QAC5J,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACR,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE;gBACtC,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAChC;YACD,QAAQ,EAAE,CAAC,MAAM,CAAC;YAClB,oBAAoB,EAAE,KAAK;SAC9B;KACJ;IACD;QACI,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACP,mGAAmG;QACvG,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACR,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE;gBAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE;aACpE;YACD,QAAQ,EAAE,CAAC,WAAW,CAAC;YACvB,oBAAoB,EAAE,KAAK;SAC9B;KACJ;IACD;QACI,IAAI,EAAE,cAAc;QACpB,WAAW,EACP,wVAAwV;QAC5V,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;YACd,oBAAoB,EAAE,KAAK;SAC9B;KACJ;CACJ,CAAC;AAEF;;sEAEsE;AACtE,MAAM,mBAAmB,GAAG,CAAC,GAAG,MAAM,CAAC;AAEvC;0EAC0E;AAC1E,MAAM,oBAAoB,GAAG,KAAK,CAAC;AAEnC,MAAM,iBAAiB,GAAG;IACtB,sCAAsC;IACtC,EAAE;IACF,sFAAsF;IACtF,oFAAoF;IACpF,oEAAoE;IACpE,EAAE;IACF,4EAA4E;IAC5E,EAAE;IACF,gDAAgD;IAChD,EAAE;IACF,wFAAwF;IACxF,EAAE;IACF,yFAAyF;IACzF,mFAAmF;CACtF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb,SAAS,kBAAkB,CAAC,GAAe;IACvC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;AACrD,CAAC;AAkBD;;;iDAGiD;AACjD,SAAS,cAAc,CAAC,KAAmC,EAAE,IAAY;IACrE,kBAAkB,CAAC;QACf,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,uBAAuB;QAC/B,MAAM,EAAE;YACJ,KAAK;YACL,MAAM,EAAE,YAAY;YACpB,IAAI,EAAE,IAAI;SACb;KACJ,CAAC,CAAC;AACP,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,KAAK,UAAU,mBAAmB,CAC9B,MAA0B,EAC1B,cAAuB;IAEvB,IAAI,UAAU,GAAkB,IAAI,CAAC;IAErC,uEAAuE;IACvE,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE;QAC7C,+DAA+D;QAC/D,qEAAqE;QACrE,kEAAkE;QAClE,yEAAyE;QACzE,iEAAiE;QACjE,+DAA+D;QAC/D,gCAAgC;QAChC,SAAS,CAAC;YACN,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,SAAS,EAAE,mBAAmB;YAC9B,WAAW,EAAE,KAAK;YAClB,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;gBACX,UAAU,GAAG,GAAG,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,CAAC;gBACb,6DAA6D;gBAC7D,iDAAiD;gBACjD,cAAc,CAAC,MAAM,EAAE,gCAAgC,GAAG,EAAE,CAAC,CAAC;YAClE,CAAC;SACJ,CAAC;aACG,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;YACZ,GAAG,CAAC,IAAI,CAAC,yBAAyB,EAAE;gBAChC,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,eAAe,EAAE,KAAK,CAAC,eAAe;aACzC,CAAC,CAAC;QACP,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACX,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC7D,GAAG,CAAC,IAAI,CAAC,wBAAwB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;IAEH,mEAAmE;IACnE,mEAAmE;IACnE,gDAAgD;IAChD,MAAM,cAAc,GAAG,IAAI,OAAO,CAAS,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CACrD,UAAU,CACN,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC,EACjD,oBAAoB,CACvB,CAAC,KAAK,EAAE,EAAW,CACvB,CAAC;IAEF,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACD,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC;IACzD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,GAAG,CAAC,KAAK,CAAC,iCAAiC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QACtD,OAAO;YACH,OAAO,EAAE,IAAI;YACb,IAAI,EAAE;gBACF,0CAA0C,GAAG,EAAE;gBAC/C,EAAE;gBACF,uBAAuB;gBACvB,EAAE;gBACF,gDAAgD;aACnD,CAAC,IAAI,CAAC,IAAI,CAAC;SACf,CAAC;IACN,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IACjD,oEAAoE;IACpE,qEAAqE;IACrE,iEAAiE;IACjE,qEAAqE;IACrE,oDAAoD;IACpD,OAAO;QACH,OAAO,EAAE,KAAK;QACd,IAAI,EAAE;YACF,4DAA4D;YAC5D,EAAE;YACF,YAAY,GAAG,EAAE;YACjB,EAAE;YACF,QAAQ;YACR,GAAG;YACH,QAAQ;YACR,EAAE;YACF,8CAA8C,GAAG,GAAG;YACpD,EAAE;YACF,0EAA0E;YAC1E,2EAA2E;YAC3E,wCAAwC;YACxC,EAAE;YACF,2EAA2E;YAC3E,2FAA2F;YAC3F,qLAAqL;YACrL,EAAE;YACF,4GAA4G;SAC/G,CAAC,IAAI,CAAC,IAAI,CAAC;KACf,CAAC;AACN,CAAC;AAaD;;;;;;;GAOG;AACH,SAAS,cAAc,CACnB,IAAY,EACZ,MAA0B;IAE1B,IAAI,GAAe,CAAC;IACpB,IAAI,CAAC;QACD,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAe,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,uCAAuC;IACvC,IAAI,GAAG,CAAC,EAAE,IAAI,IAAI,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACnD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,EAAE,GAAG,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC;IAC1B,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;IAE1B,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC1B,kBAAkB,CAAC;YACf,OAAO,EAAE,KAAK;YACd,EAAE;YACF,MAAM,EAAE;gBACJ,eAAe,EAAE,YAAY;gBAC7B,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE;gBAC/C,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE;aACnD;SACJ,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC1B,uEAAuE;QACvE,0EAA0E;QAC1E,MAAM,KAAK,GAAG,SAAS,EAAE,CAAC;QAC1B,IAAI,KAAK;YAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAC5B,kBAAkB,CAAC;YACf,OAAO,EAAE,KAAK;YACd,EAAE;YACF,MAAM,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE;SACtC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAI/B,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC;QAC7B,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC;QAElD,IAAI,QAAQ,KAAK,cAAc,EAAE,CAAC;YAC9B,+DAA+D;YAC/D,kEAAkE;YAClE,6BAA6B;YAC7B,KAAK,mBAAmB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBAC5D,kBAAkB,CAAC;oBACf,OAAO,EAAE,KAAK;oBACd,EAAE;oBACF,MAAM,EAAE;wBACJ,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;wBAC9C,OAAO,EAAE,MAAM,CAAC,OAAO;qBAC1B;iBACJ,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,6DAA6D;QAC7D,wEAAwE;QACxE,sEAAsE;QACtE,8BAA8B;QAC9B,MAAM,KAAK,GAAG,SAAS,EAAE,CAAC;QAC1B,IAAI,KAAK;YAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAE5B,kBAAkB,CAAC;YACf,OAAO,EAAE,KAAK;YACd,EAAE;YACF,MAAM,EAAE;gBACJ,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;gBACpD,OAAO,EAAE,IAAI;aAChB;SACJ,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,wDAAwD;IACxD,kBAAkB,CAAC;QACf,OAAO,EAAE,KAAK;QACd,EAAE;QACF,KAAK,EAAE;YACH,IAAI,EAAE,CAAC,KAAK;YACZ,OAAO,EAAE,qBAAqB,MAAM,IAAI,WAAW,EAAE;SACxD;KACJ,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACvC,MAA0B;IAE1B,GAAG,CAAC,IAAI,CAAC,8BAA8B,EAAE;QACrC,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,UAAU,EAAE,MAAM,CAAC,UAAU;KAChC,CAAC,CAAC;IAEH,OAAO,MAAM,IAAI,OAAO,CAAqB,CAAC,OAAO,EAAE,EAAE;QACrD,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,IAAI,OAAO,GAAG,KAAK,CAAC;QAEpB,MAAM,MAAM,GAAG,GAAS,EAAE;YACtB,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC7C,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC3C,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACjD,CAAC,CAAC;QAEF,MAAM,MAAM,GAAG,CAAC,KAAa,EAAQ,EAAE;YACnC,GAAG,IAAI,KAAK,CAAC;YACb,IAAI,EAAU,CAAC;YACf,OAAO,CAAC,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnC,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACpD,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;gBACxB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;oBAAE,SAAS;gBAEnC,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAChD,IAAI,CAAC,OAAO;oBAAE,SAAS;gBAEvB,+DAA+D;gBAC/D,+DAA+D;gBAC/D,+DAA+D;gBAC/D,OAAO,GAAG,IAAI,CAAC;gBACf,MAAM,EAAE,CAAC;gBACT,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;gBAEtB,MAAM,YAAY,GAAa,CAAC,OAAO,CAAC,CAAC;gBACzC,IAAI,EAAU,CAAC;gBACf,OAAO,CAAC,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnC,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;oBAC9C,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;oBACxB,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC;wBAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC3C,CAAC;gBAED,GAAG,CAAC,IAAI,CAAC,wCAAwC,EAAE;oBAC/C,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS;oBAClC,YAAY,EAAE,YAAY,CAAC,MAAM;iBACpC,CAAC,CAAC;gBACH,OAAO,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;gBAChD,OAAO;YACX,CAAC;QACL,CAAC,CAAC;QAEF,MAAM,KAAK,GAAG,GAAS,EAAE;YACrB,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,MAAM,EAAE,CAAC;YACT,GAAG,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE,CAAC,CAAC;YAC5C,OAAO,CAAC,SAAS,CAAC,CAAC;QACvB,CAAC,CAAC;QAEF,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAClC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"auth-required.js","sourceRoot":"","sources":["../src/auth-required.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAAE,SAAS,EAA0B,MAAM,WAAW,CAAC;AAC9D,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAWvC,MAAM,gBAAgB,GAAG;IACrB;QACI,IAAI,EAAE,iBAAiB;QACvB,WAAW,EACP,8KAA8K;QAClL,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACR,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE;gBACtC,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAChC;YACD,QAAQ,EAAE,CAAC,MAAM,CAAC;YAClB,oBAAoB,EAAE,KAAK;SAC9B;KACJ;IACD;QACI,IAAI,EAAE,eAAe;QACrB,WAAW,EACP,+GAA+G;QACnH,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACR,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE;gBACvC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE;gBACjE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAChC;YACD,QAAQ,EAAE,CAAC,OAAO,CAAC;YACnB,oBAAoB,EAAE,KAAK;SAC9B;KACJ;IACD;QACI,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACP,wJAAwJ;QAC5J,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACR,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE;gBACtC,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAChC;YACD,QAAQ,EAAE,CAAC,MAAM,CAAC;YAClB,oBAAoB,EAAE,KAAK;SAC9B;KACJ;IACD;QACI,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACP,uKAAuK;QAC3K,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACR,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE;gBAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE;aACpE;YACD,QAAQ,EAAE,CAAC,WAAW,CAAC;YACvB,oBAAoB,EAAE,KAAK;SAC9B;KACJ;IACD;QACI,IAAI,EAAE,cAAc;QACpB,WAAW,EACP,wVAAwV;QAC5V,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;YACd,oBAAoB,EAAE,KAAK;SAC9B;KACJ;CACJ,CAAC;AAEF;;sEAEsE;AACtE,MAAM,mBAAmB,GAAG,CAAC,GAAG,MAAM,CAAC;AAEvC;0EAC0E;AAC1E,MAAM,oBAAoB,GAAG,KAAK,CAAC;AAEnC,MAAM,iBAAiB,GAAG;IACtB,sCAAsC;IACtC,EAAE;IACF,sFAAsF;IACtF,oFAAoF;IACpF,oEAAoE;IACpE,EAAE;IACF,4EAA4E;IAC5E,EAAE;IACF,gDAAgD;IAChD,EAAE;IACF,wFAAwF;IACxF,EAAE;IACF,yFAAyF;IACzF,mFAAmF;CACtF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb,SAAS,kBAAkB,CAAC,GAAe;IACvC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;AACrD,CAAC;AAkBD;;;iDAGiD;AACjD,SAAS,cAAc,CAAC,KAAmC,EAAE,IAAY;IACrE,kBAAkB,CAAC;QACf,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,uBAAuB;QAC/B,MAAM,EAAE;YACJ,KAAK;YACL,MAAM,EAAE,YAAY;YACpB,IAAI,EAAE,IAAI;SACb;KACJ,CAAC,CAAC;AACP,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,KAAK,UAAU,mBAAmB,CAC9B,MAA0B,EAC1B,cAAuB;IAEvB,IAAI,UAAU,GAAkB,IAAI,CAAC;IAErC,uEAAuE;IACvE,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE;QAC7C,+DAA+D;QAC/D,qEAAqE;QACrE,kEAAkE;QAClE,yEAAyE;QACzE,iEAAiE;QACjE,+DAA+D;QAC/D,gCAAgC;QAChC,SAAS,CAAC;YACN,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,SAAS,EAAE,mBAAmB;YAC9B,WAAW,EAAE,KAAK;YAClB,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;gBACX,UAAU,GAAG,GAAG,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,CAAC;gBACb,6DAA6D;gBAC7D,iDAAiD;gBACjD,cAAc,CAAC,MAAM,EAAE,gCAAgC,GAAG,EAAE,CAAC,CAAC;YAClE,CAAC;SACJ,CAAC;aACG,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;YACZ,GAAG,CAAC,IAAI,CAAC,yBAAyB,EAAE;gBAChC,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,eAAe,EAAE,KAAK,CAAC,eAAe;aACzC,CAAC,CAAC;QACP,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACX,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC7D,GAAG,CAAC,IAAI,CAAC,wBAAwB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;IAEH,mEAAmE;IACnE,mEAAmE;IACnE,gDAAgD;IAChD,MAAM,cAAc,GAAG,IAAI,OAAO,CAAS,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CACrD,UAAU,CACN,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC,EACjD,oBAAoB,CACvB,CAAC,KAAK,EAAE,EAAW,CACvB,CAAC;IAEF,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACD,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC;IACzD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,GAAG,CAAC,KAAK,CAAC,iCAAiC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QACtD,OAAO;YACH,OAAO,EAAE,IAAI;YACb,IAAI,EAAE;gBACF,0CAA0C,GAAG,EAAE;gBAC/C,EAAE;gBACF,uBAAuB;gBACvB,EAAE;gBACF,gDAAgD;aACnD,CAAC,IAAI,CAAC,IAAI,CAAC;SACf,CAAC;IACN,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IACjD,oEAAoE;IACpE,qEAAqE;IACrE,iEAAiE;IACjE,qEAAqE;IACrE,oDAAoD;IACpD,OAAO;QACH,OAAO,EAAE,KAAK;QACd,IAAI,EAAE;YACF,4DAA4D;YAC5D,EAAE;YACF,YAAY,GAAG,EAAE;YACjB,EAAE;YACF,QAAQ;YACR,GAAG;YACH,QAAQ;YACR,EAAE;YACF,8CAA8C,GAAG,GAAG;YACpD,EAAE;YACF,0EAA0E;YAC1E,2EAA2E;YAC3E,wCAAwC;YACxC,EAAE;YACF,2EAA2E;YAC3E,2FAA2F;YAC3F,qLAAqL;YACrL,EAAE;YACF,4GAA4G;SAC/G,CAAC,IAAI,CAAC,IAAI,CAAC;KACf,CAAC;AACN,CAAC;AAaD;;;;;;;GAOG;AACH,SAAS,cAAc,CACnB,IAAY,EACZ,MAA0B;IAE1B,IAAI,GAAe,CAAC;IACpB,IAAI,CAAC;QACD,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAe,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,uCAAuC;IACvC,IAAI,GAAG,CAAC,EAAE,IAAI,IAAI,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACnD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,EAAE,GAAG,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC;IAC1B,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;IAE1B,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC1B,kBAAkB,CAAC;YACf,OAAO,EAAE,KAAK;YACd,EAAE;YACF,MAAM,EAAE;gBACJ,eAAe,EAAE,YAAY;gBAC7B,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE;gBAC/C,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE;aACnD;SACJ,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC1B,uEAAuE;QACvE,0EAA0E;QAC1E,MAAM,KAAK,GAAG,SAAS,EAAE,CAAC;QAC1B,IAAI,KAAK;YAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAC5B,kBAAkB,CAAC;YACf,OAAO,EAAE,KAAK;YACd,EAAE;YACF,MAAM,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE;SACtC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAI/B,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC;QAC7B,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC;QAElD,IAAI,QAAQ,KAAK,cAAc,EAAE,CAAC;YAC9B,+DAA+D;YAC/D,kEAAkE;YAClE,6BAA6B;YAC7B,KAAK,mBAAmB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBAC5D,kBAAkB,CAAC;oBACf,OAAO,EAAE,KAAK;oBACd,EAAE;oBACF,MAAM,EAAE;wBACJ,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;wBAC9C,OAAO,EAAE,MAAM,CAAC,OAAO;qBAC1B;iBACJ,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,6DAA6D;QAC7D,wEAAwE;QACxE,sEAAsE;QACtE,8BAA8B;QAC9B,MAAM,KAAK,GAAG,SAAS,EAAE,CAAC;QAC1B,IAAI,KAAK;YAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAE5B,kBAAkB,CAAC;YACf,OAAO,EAAE,KAAK;YACd,EAAE;YACF,MAAM,EAAE;gBACJ,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;gBACpD,OAAO,EAAE,IAAI;aAChB;SACJ,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,wDAAwD;IACxD,kBAAkB,CAAC;QACf,OAAO,EAAE,KAAK;QACd,EAAE;QACF,KAAK,EAAE;YACH,IAAI,EAAE,CAAC,KAAK;YACZ,OAAO,EAAE,qBAAqB,MAAM,IAAI,WAAW,EAAE;SACxD;KACJ,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACvC,MAA0B;IAE1B,GAAG,CAAC,IAAI,CAAC,8BAA8B,EAAE;QACrC,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,UAAU,EAAE,MAAM,CAAC,UAAU;KAChC,CAAC,CAAC;IAEH,OAAO,MAAM,IAAI,OAAO,CAAqB,CAAC,OAAO,EAAE,EAAE;QACrD,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,IAAI,OAAO,GAAG,KAAK,CAAC;QAEpB,MAAM,MAAM,GAAG,GAAS,EAAE;YACtB,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC7C,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC3C,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACjD,CAAC,CAAC;QAEF,MAAM,MAAM,GAAG,CAAC,KAAa,EAAQ,EAAE;YACnC,GAAG,IAAI,KAAK,CAAC;YACb,IAAI,EAAU,CAAC;YACf,OAAO,CAAC,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnC,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACpD,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;gBACxB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;oBAAE,SAAS;gBAEnC,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAChD,IAAI,CAAC,OAAO;oBAAE,SAAS;gBAEvB,+DAA+D;gBAC/D,+DAA+D;gBAC/D,+DAA+D;gBAC/D,OAAO,GAAG,IAAI,CAAC;gBACf,MAAM,EAAE,CAAC;gBACT,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;gBAEtB,MAAM,YAAY,GAAa,CAAC,OAAO,CAAC,CAAC;gBACzC,IAAI,EAAU,CAAC;gBACf,OAAO,CAAC,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnC,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;oBAC9C,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;oBACxB,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC;wBAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC3C,CAAC;gBAED,GAAG,CAAC,IAAI,CAAC,wCAAwC,EAAE;oBAC/C,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS;oBAClC,YAAY,EAAE,YAAY,CAAC,MAAM;iBACpC,CAAC,CAAC;gBACH,OAAO,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;gBAChD,OAAO;YACX,CAAC;QACL,CAAC,CAAC;QAEF,MAAM,KAAK,GAAG,GAAS,EAAE;YACrB,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,MAAM,EAAE,CAAC;YACT,GAAG,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE,CAAC,CAAC;YAC5C,OAAO,CAAC,SAAS,CAAC,CAAC;QACvB,CAAC,CAAC;QAEF,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAClC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../src/bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAMnD;;gFAEgF;AAChF,MAAM,WAAW,YAAY;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd;;;8BAG0B;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAcD;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,UAAU,CAerF;AAgDD,UAAU,UAAU;IAChB,OAAO,EAAE,KAAK,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AA8VD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,SAAS,CAC3B,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,YAAY;AACpB;;;;yEAIyE;AACzE,YAAY,GAAE,MAAM,EAAO,GAC5B,OAAO,CAAC,IAAI,CAAC,CAmNf"}
1
+ {"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../src/bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAMnD;;gFAEgF;AAChF,MAAM,WAAW,YAAY;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd;;;8BAG0B;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAcD;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,UAAU,CAerF;AAgDD,UAAU,UAAU;IAChB,OAAO,EAAE,KAAK,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAkWD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,SAAS,CAC3B,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,YAAY;AACpB;;;;yEAIyE;AACzE,YAAY,GAAE,MAAM,EAAO,GAC5B,OAAO,CAAC,IAAI,CAAC,CAuTf"}
package/dist/bridge.js CHANGED
@@ -308,7 +308,7 @@ function writeStdoutMessage(msg) {
308
308
  * mode, but available even when creds already exist (so user can re-login,
309
309
  * switch wallets, or refresh). Returns a click-able URL near-instantly;
310
310
  * listener stays alive in the background until callback or timeout. */
311
- async function handleLocalLogin(config) {
311
+ async function handleLocalLogin(config, onCredentials) {
312
312
  const urlReady = new Promise((resolve) => {
313
313
  loginFlow({
314
314
  relayerUrl: config.relayerUrl,
@@ -318,7 +318,8 @@ async function handleLocalLogin(config) {
318
318
  openBrowser: false,
319
319
  onUrl: (url) => resolve(url),
320
320
  })
321
- .then((creds) => {
321
+ .then(async (creds) => {
322
+ await onCredentials(creds);
322
323
  log.info("memwal_login.bridge.success", {
323
324
  accountId: creds.accountId,
324
325
  delegateAddress: creds.delegateAddress,
@@ -422,8 +423,10 @@ pendingLines = []) {
422
423
  note(`Connected. Bridging stdio MCP ↔ ${creds.relayerUrl}`);
423
424
  log.info("bridge.connected", { relayer: creds.relayerUrl });
424
425
  let stdinClosed = false;
425
- let reconnecting = false;
426
426
  let reconnectAttempt = 0;
427
+ let reconnectPromise = null;
428
+ let credentialGeneration = 0;
429
+ let activeCredentialGeneration = 0;
427
430
  // In-flight requests pending a response. We replay them after a forced
428
431
  // reconnect so a server-side session swap doesn't strand a tool call
429
432
  // forever waiting for a reply that will never come. Notifications
@@ -434,52 +437,135 @@ pendingLines = []) {
434
437
  * locally-served `memwal_login` + `memwal_logout` tools so the MCP
435
438
  * client surfaces them in its tool palette. */
436
439
  const pendingListIds = new Set();
437
- async function reconnect(reason) {
438
- if (stdinClosed || reconnecting)
440
+ async function reconnect(reason, immediate = false) {
441
+ if (stdinClosed)
439
442
  return;
440
- reconnecting = true;
441
- try {
442
- sse.abort();
443
- }
444
- catch {
445
- /* already dead */
446
- }
447
- const backoff = Math.min(15_000, 500 * Math.pow(2, reconnectAttempt));
448
- reconnectAttempt += 1;
449
- log.warn("bridge.reconnecting", { reason, backoffMs: backoff, attempt: reconnectAttempt });
450
- await new Promise((r) => setTimeout(r, backoff));
451
- try {
452
- sse = await openSseStream(creds.relayerUrl, creds);
453
- reconnectAttempt = 0;
454
- log.info("bridge.reconnected", {
455
- relayer: creds.relayerUrl,
456
- replayCount: inFlight.size,
443
+ // All callers await the same reconnect. Returning immediately while a
444
+ // reconnect is active lets the server pump spin on the aborted stream
445
+ // and lets client messages race the stale POST URL.
446
+ if (reconnectPromise)
447
+ return reconnectPromise;
448
+ reconnectPromise = (async () => {
449
+ try {
450
+ sse.abort();
451
+ }
452
+ catch {
453
+ /* already dead */
454
+ }
455
+ const backoff = immediate
456
+ ? 0
457
+ : Math.min(15_000, 500 * Math.pow(2, reconnectAttempt));
458
+ reconnectAttempt += 1;
459
+ log.warn("bridge.reconnecting", {
460
+ reason,
461
+ backoffMs: backoff,
462
+ attempt: reconnectAttempt,
457
463
  });
458
- // Replay any requests that haven't been answered yet against the
459
- // fresh session. Iterate over a snapshot — postMessage is async
460
- // and the SSE pump may delete entries concurrently as replies
461
- // start arriving on the new session.
462
- for (const [id, msg] of Array.from(inFlight.entries())) {
463
- try {
464
- const status = await postMessage(sse.postUrl, msg, creds);
465
- log.info("bridge.replayed", { id, status });
466
- }
467
- catch (err) {
468
- log.error("bridge.replay_failed", {
469
- id,
470
- err: err instanceof Error ? err.message : String(err),
464
+ if (backoff > 0)
465
+ await new Promise((r) => setTimeout(r, backoff));
466
+ try {
467
+ while (!stdinClosed) {
468
+ const openingGeneration = credentialGeneration;
469
+ const openingCreds = creds;
470
+ const candidate = await openSseStream(openingCreds.relayerUrl, openingCreds);
471
+ // Login can finish while an older handshake is awaiting its
472
+ // endpoint event. Never publish that stale session: its GET
473
+ // used the old key, while subsequent POSTs would use the new
474
+ // key and fail session authentication.
475
+ if (openingGeneration !== credentialGeneration) {
476
+ candidate.abort();
477
+ log.info("bridge.reconnect_discarded_stale_credentials", {
478
+ openingGeneration,
479
+ credentialGeneration,
480
+ });
481
+ continue;
482
+ }
483
+ sse = candidate;
484
+ activeCredentialGeneration = openingGeneration;
485
+ reconnectAttempt = 0;
486
+ log.info("bridge.reconnected", {
487
+ relayer: openingCreds.relayerUrl,
488
+ replayCount: inFlight.size,
471
489
  });
490
+ // Replay any requests that haven't been answered yet against the
491
+ // fresh session. Iterate over a snapshot — postMessage is async
492
+ // and the SSE pump may delete entries concurrently as replies
493
+ // start arriving on the new session.
494
+ for (const [id, msg] of Array.from(inFlight.entries())) {
495
+ try {
496
+ const status = await postMessage(sse.postUrl, msg, openingCreds);
497
+ log.info("bridge.replayed", { id, status });
498
+ }
499
+ catch (err) {
500
+ log.error("bridge.replay_failed", {
501
+ id,
502
+ err: err instanceof Error ? err.message : String(err),
503
+ });
504
+ }
505
+ }
506
+ // Credentials can also rotate while replay awaits POSTs.
507
+ // In that case this candidate is already stale even though
508
+ // it passed the first generation check.
509
+ if (openingGeneration !== credentialGeneration) {
510
+ candidate.abort();
511
+ continue;
512
+ }
513
+ break;
472
514
  }
473
515
  }
474
- }
475
- catch (err) {
476
- log.error("bridge.reconnect_failed", {
477
- err: err instanceof Error ? err.message : String(err),
478
- });
479
- // Try again on the next stdin message rather than spinning.
516
+ catch (err) {
517
+ log.error("bridge.reconnect_failed", {
518
+ err: err instanceof Error ? err.message : String(err),
519
+ });
520
+ // Try again on the next stdin message rather than spinning.
521
+ }
522
+ })();
523
+ try {
524
+ await reconnectPromise;
480
525
  }
481
526
  finally {
482
- reconnecting = false;
527
+ reconnectPromise = null;
528
+ }
529
+ }
530
+ async function adoptCredentials(nextCreds) {
531
+ const previousAccountId = creds.accountId;
532
+ const accountChanged = previousAccountId !== nextCreds.accountId;
533
+ // Never replay an operation authorized for account A against account B.
534
+ // Return explicit retryable errors instead; the caller can decide which
535
+ // operations belong in the newly-selected account.
536
+ if (accountChanged) {
537
+ try {
538
+ sse.abort();
539
+ }
540
+ catch {
541
+ /* already dead */
542
+ }
543
+ for (const [id] of Array.from(inFlight.entries())) {
544
+ writeStdoutMessage({
545
+ jsonrpc: "2.0",
546
+ id,
547
+ error: {
548
+ code: -32001,
549
+ message: "Walrus Memory account changed during login; retry this request for the new account",
550
+ },
551
+ });
552
+ pendingListIds.delete(id);
553
+ }
554
+ inFlight.clear();
555
+ }
556
+ creds = nextCreds;
557
+ credentialGeneration += 1;
558
+ reconnectAttempt = 0;
559
+ log.info("bridge.credentials_updated", {
560
+ previousAccountId,
561
+ accountId: creds.accountId,
562
+ delegate: creds.delegateAddress,
563
+ });
564
+ await reconnect("login-credentials-updated", true);
565
+ // Covers the narrow case where this update joined a reconnect just as
566
+ // its promise was resolving, after its final generation check.
567
+ if (activeCredentialGeneration !== credentialGeneration) {
568
+ await reconnect("login-credentials-generation-mismatch", true);
483
569
  }
484
570
  }
485
571
  // Server → client: stream SSE messages to stdout. Loop forever, restart
@@ -541,7 +627,7 @@ pendingLines = []) {
541
627
  if (msg.method === "tools/call" && msg.id != null) {
542
628
  const params = (msg.params ?? {});
543
629
  if (params.name === "memwal_login") {
544
- const result = await handleLocalLogin(config);
630
+ const result = await handleLocalLogin(config, adoptCredentials);
545
631
  writeStdoutMessage({
546
632
  jsonrpc: "2.0",
547
633
  id: msg.id,
@@ -582,6 +668,14 @@ pendingLines = []) {
582
668
  msg.id !== null) {
583
669
  inFlight.set(msg.id, msg);
584
670
  }
671
+ // A successful background login swaps credentials and SSE
672
+ // sessions asynchronously. Wait for that swap before sending a
673
+ // new request so it cannot race the stale session URL/key.
674
+ if (reconnectPromise)
675
+ await reconnectPromise;
676
+ if (activeCredentialGeneration !== credentialGeneration) {
677
+ await reconnect("post-credential-generation-mismatch", true);
678
+ }
585
679
  const status = await postMessage(sse.postUrl, msg, creds);
586
680
  if (status === 404) {
587
681
  log.warn("bridge.session_stale", { sessionUrl: sse.postUrl });
@@ -1 +1 @@
1
- {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../src/bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../src/bridge.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mysten-incubation/memwal-mcp",
3
- "version": "0.0.6-rc.0",
3
+ "version": "0.0.7-dev.0",
4
4
  "description": "Walrus Memory MCP client — single-binary stdio MCP server that bridges Cursor / Claude Desktop / Antigravity / Claude Code to the Walrus Memory relayer. Handles browser-based wallet login on first run.",
5
5
  "type": "module",
6
6
  "engines": {
@@ -29,7 +29,6 @@
29
29
  },
30
30
  "files": [
31
31
  "dist",
32
- "plugin",
33
32
  "README.md"
34
33
  ],
35
34
  "keywords": [
@@ -1,12 +0,0 @@
1
- {
2
- "name": "memwal",
3
- "version": "0.0.6",
4
- "description": "Automatic Walrus Memory for Claude Code — proactive recall and durable-fact saving via the MemWal MCP + lifecycle hooks.",
5
- "author": {
6
- "name": "Mysten Labs"
7
- },
8
- "homepage": "https://memory.walrus.xyz",
9
- "repository": "https://github.com/MystenLabs/MemWal",
10
- "license": "Apache-2.0",
11
- "keywords": ["memory", "mcp", "walrus", "sui", "semantic-search"]
12
- }
@@ -1,8 +0,0 @@
1
- {
2
- "mcpServers": {
3
- "memwal": {
4
- "command": "npx",
5
- "args": ["-y", "@mysten-incubation/memwal-mcp"]
6
- }
7
- }
8
- }
@@ -1,29 +0,0 @@
1
- {
2
- "name": "memwal",
3
- "version": "0.0.6",
4
- "description": "Persistent Walrus Memory for Codex. Remembers decisions, preferences, and project context across sessions.",
5
- "author": {
6
- "name": "Mysten Labs",
7
- "url": "https://memory.walrus.xyz"
8
- },
9
- "homepage": "https://memory.walrus.xyz",
10
- "repository": "https://github.com/MystenLabs/MemWal",
11
- "license": "Apache-2.0",
12
- "keywords": ["memory", "personalization", "mcp", "walrus", "semantic-search"],
13
- "mcpServers": "./.codex-mcp.json",
14
- "hooks": "./hooks/codex-hooks.json",
15
- "interface": {
16
- "displayName": "MemWal",
17
- "shortDescription": "Portable, encrypted memory layer for AI coding workflows",
18
- "longDescription": "MemWal adds long-term, user-owned memory to Codex. Store decisions, preferences, and session context; memories are encrypted with SEAL and stored on Walrus, and retrieved via semantic search so Codex always has the right context.",
19
- "developerName": "Mysten Labs",
20
- "category": "Productivity",
21
- "capabilities": ["Read", "Write"],
22
- "websiteURL": "https://memory.walrus.xyz",
23
- "defaultPrompt": [
24
- "Search my memories for recent project decisions",
25
- "Remember that I prefer pnpm and TypeScript strict mode",
26
- "What do you know about my coding preferences?"
27
- ]
28
- }
29
- }
@@ -1,8 +0,0 @@
1
- {
2
- "mcpServers": {
3
- "memwal": {
4
- "command": "npx",
5
- "args": ["-y", "@mysten-incubation/memwal-mcp"]
6
- }
7
- }
8
- }
@@ -1,12 +0,0 @@
1
- {
2
- "name": "memwal",
3
- "version": "0.0.6",
4
- "description": "Automatic Walrus Memory for Cursor — proactive recall and durable-fact saving via the MemWal MCP + lifecycle hooks.",
5
- "author": { "name": "Mysten Labs" },
6
- "homepage": "https://memory.walrus.xyz",
7
- "repository": "https://github.com/MystenLabs/MemWal",
8
- "license": "Apache-2.0",
9
- "keywords": ["memory", "mcp", "walrus", "semantic-search"],
10
- "hooks": "./hooks/cursor-hooks.json",
11
- "mcpServers": ".cursor-mcp.json"
12
- }
package/plugin/.mcp.json DELETED
@@ -1,8 +0,0 @@
1
- {
2
- "mcpServers": {
3
- "memwal": {
4
- "command": "npx",
5
- "args": ["-y", "@mysten-incubation/memwal-mcp"]
6
- }
7
- }
8
- }
@@ -1,41 +0,0 @@
1
- {
2
- "hooks": {
3
- "SessionStart": [
4
- {
5
- "matcher": "startup|resume|compact",
6
- "hooks": [
7
- {
8
- "type": "command",
9
- "command": "node \"${PLUGIN_ROOT}/scripts/on_session_start.mjs\"",
10
- "statusMessage": "Loading Walrus Memory context...",
11
- "timeout": 10
12
- }
13
- ]
14
- }
15
- ],
16
- "UserPromptSubmit": [
17
- {
18
- "hooks": [
19
- {
20
- "type": "command",
21
- "command": "node \"${PLUGIN_ROOT}/scripts/on_user_prompt.mjs\"",
22
- "statusMessage": "Checking memory relevance...",
23
- "timeout": 12
24
- }
25
- ]
26
- }
27
- ],
28
- "PostToolUse": [
29
- {
30
- "matcher": "Bash",
31
- "hooks": [
32
- {
33
- "type": "command",
34
- "command": "node \"${PLUGIN_ROOT}/scripts/on_post_tool.mjs\"",
35
- "timeout": 12
36
- }
37
- ]
38
- }
39
- ]
40
- }
41
- }
@@ -1,24 +0,0 @@
1
- {
2
- "version": 1,
3
- "hooks": {
4
- "sessionStart": [
5
- {
6
- "command": "node \"${CURSOR_PLUGIN_ROOT}/scripts/on_session_start.mjs\"",
7
- "matcher": "startup|resume|compact"
8
- }
9
- ],
10
- "beforeSubmitPrompt": [
11
- {
12
- "command": "node \"${CURSOR_PLUGIN_ROOT}/scripts/on_user_prompt.mjs\"",
13
- "timeout": 8
14
- }
15
- ],
16
- "postToolUse": [
17
- {
18
- "command": "node \"${CURSOR_PLUGIN_ROOT}/scripts/on_post_tool.mjs\"",
19
- "matcher": "Bash",
20
- "timeout": 5
21
- }
22
- ]
23
- }
24
- }
@@ -1,41 +0,0 @@
1
- {
2
- "hooks": {
3
- "SessionStart": [
4
- {
5
- "matcher": "startup|resume|compact",
6
- "hooks": [
7
- {
8
- "type": "command",
9
- "command": "node \"${CLAUDE_PLUGIN_ROOT}/scripts/on_session_start.mjs\"",
10
- "statusMessage": "Loading Walrus Memory context...",
11
- "timeout": 8
12
- }
13
- ]
14
- }
15
- ],
16
- "UserPromptSubmit": [
17
- {
18
- "hooks": [
19
- {
20
- "type": "command",
21
- "command": "node \"${CLAUDE_PLUGIN_ROOT}/scripts/on_user_prompt.mjs\"",
22
- "statusMessage": "Checking memory relevance...",
23
- "timeout": 8
24
- }
25
- ]
26
- }
27
- ],
28
- "PostToolUse": [
29
- {
30
- "matcher": "Bash",
31
- "hooks": [
32
- {
33
- "type": "command",
34
- "command": "node \"${CLAUDE_PLUGIN_ROOT}/scripts/on_post_tool.mjs\"",
35
- "timeout": 5
36
- }
37
- ]
38
- }
39
- ]
40
- }
41
- }
package/plugin/hooks.json DELETED
@@ -1,41 +0,0 @@
1
- {
2
- "hooks": {
3
- "SessionStart": [
4
- {
5
- "matcher": "*",
6
- "hooks": [
7
- {
8
- "name": "memwal-session-start",
9
- "type": "command",
10
- "command": "node \"${extensionPath}/scripts/on_session_start.mjs\" 2>/dev/null || true"
11
- }
12
- ]
13
- }
14
- ],
15
- "UserPromptSubmit": [
16
- {
17
- "hooks": [
18
- {
19
- "name": "memwal-user-prompt",
20
- "type": "command",
21
- "command": "node \"${extensionPath}/scripts/on_user_prompt.mjs\" 2>/dev/null || true",
22
- "timeout": 8
23
- }
24
- ]
25
- }
26
- ],
27
- "PostToolUse": [
28
- {
29
- "matcher": "Bash",
30
- "hooks": [
31
- {
32
- "name": "memwal-post-tool",
33
- "type": "command",
34
- "command": "node \"${extensionPath}/scripts/on_post_tool.mjs\" 2>/dev/null || true",
35
- "timeout": 5
36
- }
37
- ]
38
- }
39
- ]
40
- }
41
- }
@@ -1,12 +0,0 @@
1
- {
2
- "id": "memwal",
3
- "name": "memwal",
4
- "version": "0.0.6",
5
- "description": "Automatic Walrus Memory for Antigravity — proactive recall and durable-fact saving via the MemWal MCP + lifecycle hooks.",
6
- "author": { "name": "Mysten Labs" },
7
- "homepage": "https://memory.walrus.xyz",
8
- "repository": "https://github.com/MystenLabs/MemWal",
9
- "license": "Apache-2.0",
10
- "keywords": ["memory", "mcp", "walrus", "sui", "semantic-search"],
11
- "contextFileName": "AGENTS.md"
12
- }
@@ -1,163 +0,0 @@
1
- #!/usr/bin/env node
2
- /**
3
- * Install MemWal lifecycle hooks into ~/.codex/hooks.json and register the
4
- * MemWal MCP server in ~/.codex/config.toml.
5
- *
6
- * Codex discovers hooks only at ~/.codex/hooks.json (or <repo>/.codex/hooks.json)
7
- * and has no plugin host that auto-wires hooks. This installer reads the
8
- * template at hooks/codex-hooks.json, rewrites the ${PLUGIN_ROOT} placeholder
9
- * to this plugin's absolute path, and merges the entries into ~/.codex/hooks.json.
10
- *
11
- * Re-running is idempotent: entries this installer owns (identified by our
12
- * hook script filenames) are removed before fresh entries are added.
13
- *
14
- * Usage:
15
- * node install_codex_hooks.mjs # install or update
16
- * node install_codex_hooks.mjs --uninstall # remove MemWal hook entries
17
- *
18
- * After installing, enable the Codex hooks feature flag in ~/.codex/config.toml:
19
- *
20
- * [features]
21
- * codex_hooks = true
22
- */
23
- import { readFileSync, writeFileSync, existsSync, mkdirSync } from "node:fs";
24
- import { homedir } from "node:os";
25
- import { join, dirname } from "node:path";
26
- import { fileURLToPath } from "node:url";
27
-
28
- const SCRIPT_DIR = dirname(fileURLToPath(import.meta.url));
29
- const PLUGIN_ROOT = dirname(SCRIPT_DIR);
30
-
31
- const CODEX_DIR = join(homedir(), ".codex");
32
- const HOOKS_FILE = join(CODEX_DIR, "hooks.json");
33
- const CONFIG_FILE = join(CODEX_DIR, "config.toml");
34
- const TEMPLATE_FILE = join(PLUGIN_ROOT, "hooks", "codex-hooks.json");
35
-
36
- // Entries are "ours" when a hook command references one of our scripts.
37
- const OWNER_MARKERS = [
38
- "on_session_start.mjs",
39
- "on_user_prompt.mjs",
40
- "on_post_tool.mjs",
41
- ];
42
-
43
- function loadTemplate() {
44
- const raw = readFileSync(TEMPLATE_FILE, "utf8").replaceAll(
45
- "${PLUGIN_ROOT}",
46
- PLUGIN_ROOT
47
- );
48
- return JSON.parse(raw);
49
- }
50
-
51
- function loadExisting() {
52
- if (!existsSync(HOOKS_FILE)) return { hooks: {} };
53
- try {
54
- return JSON.parse(readFileSync(HOOKS_FILE, "utf8"));
55
- } catch (e) {
56
- console.error(`error: failed to read ${HOOKS_FILE}: ${e.message}`);
57
- process.exit(1);
58
- }
59
- }
60
-
61
- function isOwned(entry) {
62
- for (const hook of entry.hooks || []) {
63
- const cmd = hook.command || "";
64
- if (OWNER_MARKERS.some((m) => cmd.includes(m))) return true;
65
- }
66
- return false;
67
- }
68
-
69
- function stripOwned(config) {
70
- const hooks = config.hooks || {};
71
- for (const event of Object.keys(hooks)) {
72
- hooks[event] = (hooks[event] || []).filter((e) => !isOwned(e));
73
- if (hooks[event].length === 0) delete hooks[event];
74
- }
75
- config.hooks = hooks;
76
- return config;
77
- }
78
-
79
- function mergeTemplate(config, template) {
80
- config.hooks = config.hooks || {};
81
- for (const [event, entries] of Object.entries(template.hooks || {})) {
82
- config.hooks[event] = (config.hooks[event] || []).concat(entries);
83
- }
84
- return config;
85
- }
86
-
87
- function writeHooks(config) {
88
- mkdirSync(CODEX_DIR, { recursive: true });
89
- writeFileSync(HOOKS_FILE, JSON.stringify(config, null, 2) + "\n");
90
- }
91
-
92
- /** Append [mcp_servers.memwal] to config.toml if it isn't registered yet. */
93
- function ensureMcpRegistered() {
94
- mkdirSync(CODEX_DIR, { recursive: true });
95
- let content = existsSync(CONFIG_FILE) ? readFileSync(CONFIG_FILE, "utf8") : "";
96
- if (content.includes("[mcp_servers.memwal]")) return false;
97
- const block =
98
- "\n[mcp_servers.memwal]\n" +
99
- 'command = "npx"\n' +
100
- 'args = ["-y", "@mysten-incubation/memwal-mcp"]\n';
101
- writeFileSync(CONFIG_FILE, (content.trimEnd() + "\n" + block).trimStart());
102
- return true;
103
- }
104
-
105
- function featureFlagEnabled() {
106
- if (!existsSync(CONFIG_FILE)) return false;
107
- return readFileSync(CONFIG_FILE, "utf8")
108
- .split("\n")
109
- .map((l) => l.split("#", 1)[0].replace(/\s/g, ""))
110
- .includes("codex_hooks=true");
111
- }
112
-
113
- function printFeatureFlagHint() {
114
- console.log("");
115
- console.log("Codex hooks feature flag is not enabled.");
116
- console.log(`Add this to ${CONFIG_FILE}:`);
117
- console.log("");
118
- console.log(" [features]");
119
- console.log(" codex_hooks = true");
120
- console.log("");
121
- console.log("Then restart Codex.");
122
- }
123
-
124
- function main() {
125
- const uninstall = process.argv.includes("--uninstall");
126
- let config = loadExisting();
127
-
128
- if (uninstall) {
129
- config = stripOwned(config);
130
- writeHooks(config);
131
- console.log(`Removed MemWal hooks from ${HOOKS_FILE}`);
132
- console.log(
133
- "(The [mcp_servers.memwal] entry in config.toml was left in place — remove it manually if you no longer want the tools.)"
134
- );
135
- return 0;
136
- }
137
-
138
- if (!existsSync(TEMPLATE_FILE)) {
139
- console.error(`error: template not found at ${TEMPLATE_FILE}`);
140
- return 1;
141
- }
142
-
143
- const template = loadTemplate();
144
- config = stripOwned(config);
145
- config = mergeTemplate(config, template);
146
- writeHooks(config);
147
-
148
- const mcpAdded = ensureMcpRegistered();
149
-
150
- console.log(`Installed MemWal hooks into ${HOOKS_FILE}`);
151
- console.log(`Plugin path: ${PLUGIN_ROOT}`);
152
- console.log("Events: SessionStart, UserPromptSubmit, PostToolUse");
153
- console.log(
154
- mcpAdded
155
- ? `Registered [mcp_servers.memwal] in ${CONFIG_FILE}`
156
- : `[mcp_servers.memwal] already present in ${CONFIG_FILE}`
157
- );
158
-
159
- if (!featureFlagEnabled()) printFeatureFlagHint();
160
- return 0;
161
- }
162
-
163
- process.exit(main());
@@ -1,81 +0,0 @@
1
- /**
2
- * Shared I/O + throttle helpers for MemWal Claude Code / Codex hooks.
3
- *
4
- * Pure Node, no dependencies, no network. Every hook reads one JSON object
5
- * from stdin, optionally emits a `hookSpecificOutput` directive on stdout,
6
- * and always exits 0 — a hook must never block the session.
7
- */
8
- import { readFileSync, existsSync, writeFileSync, mkdirSync } from "node:fs";
9
- import { tmpdir } from "node:os";
10
- import { join } from "node:path";
11
-
12
- /** Read + parse the hook input JSON from stdin. Returns {} on any error. */
13
- export function readStdin() {
14
- try {
15
- const raw = readFileSync(0, "utf8");
16
- return raw ? JSON.parse(raw) : {};
17
- } catch {
18
- return {};
19
- }
20
- }
21
-
22
- /** Emit a hook directive. No-op when `additionalContext` is empty. */
23
- export function emitContext(hookEventName, additionalContext) {
24
- if (!additionalContext) return;
25
- process.stdout.write(
26
- JSON.stringify({
27
- hookSpecificOutput: { hookEventName, additionalContext },
28
- })
29
- );
30
- }
31
-
32
- const STATE_DIR = join(process.env.TMPDIR || tmpdir(), "memwal-hooks");
33
-
34
- function ensureDir() {
35
- try {
36
- mkdirSync(STATE_DIR, { recursive: true });
37
- } catch {
38
- /* best effort */
39
- }
40
- }
41
-
42
- function safe(s) {
43
- return String(s || "default")
44
- .replace(/[^a-zA-Z0-9_-]/g, "_")
45
- .slice(0, 64);
46
- }
47
-
48
- /**
49
- * Returns true the FIRST time it is called for a (name, session) pair, then
50
- * false thereafter — used to inject a rubric or banner only once per session.
51
- */
52
- export function firstTime(name, sessionId) {
53
- ensureDir();
54
- const f = join(STATE_DIR, `${safe(name)}_${safe(sessionId)}`);
55
- if (existsSync(f)) return false;
56
- try {
57
- writeFileSync(f, "1");
58
- } catch {
59
- /* best effort */
60
- }
61
- return true;
62
- }
63
-
64
- /** Increment and return a per-(name, session) counter. */
65
- export function bumpCounter(name, sessionId) {
66
- ensureDir();
67
- const f = join(STATE_DIR, `count_${safe(name)}_${safe(sessionId)}`);
68
- let n = 0;
69
- try {
70
- n = parseInt(readFileSync(f, "utf8"), 10) || 0;
71
- } catch {
72
- /* missing -> 0 */
73
- }
74
- n += 1;
75
- try {
76
- writeFileSync(f, String(n));
77
- } catch {
78
- /* best effort */
79
- }
80
- return n;
81
- }
@@ -1,38 +0,0 @@
1
- /**
2
- * Heuristic signal detection over user input / tool output. No network, no
3
- * LLM — cheap regexes only. The agent (guided by the now-agentic tool
4
- * descriptions) makes the final call; these just decide when to *remind* it.
5
- */
6
-
7
- // User is referencing earlier context / asking to resume.
8
- const RECALL_INTENT =
9
- /\b(remember when|last time|previously|earlier|where (did|were) we|pick up where|catch me up|as i (said|mentioned|told you)|like i said|we (already|previously) (did|decided|discussed|set up)|my (usual|preferred|preference|setup|config|stack))\b/i;
10
-
11
- // User is stating a durable fact / preference / correction worth saving.
12
- const REMEMBER_INTENT =
13
- /\b(remember (this|that)|don'?t forget|note that|for future reference|keep in mind|from now on|going forward|i (prefer|like|love|hate|always|never|usually|use|work with|am|m)\b|my name is|call me|i'?m (using|on)|we (use|prefer|standardi[sz]e on))\b/i;
14
-
15
- // Strong error markers in command output.
16
- // No trailing \b: markers ending in `:` (panic:, fatal:) or `]` (error[E0432])
17
- // are followed by a non-word char, so a closing \b would never match them.
18
- const ERROR_STRONG =
19
- /\b(traceback \(most recent|panic:|fatal:|segmentation fault|unhandled (exception|rejection)|error\[[A-Z]?\d+\]|cannot find module|command not found|permission denied|no such file)/i;
20
- const ERROR_PAIR = /(^|\s)(error:|exception:|failed:|fail:|err!)/gi;
21
-
22
- /** True when the user's message references past context worth recalling. */
23
- export function detectRecall(text) {
24
- return !!text && RECALL_INTENT.test(text);
25
- }
26
-
27
- /** True when the user's message states a durable fact worth remembering. */
28
- export function detectRemember(text) {
29
- return !!text && REMEMBER_INTENT.test(text);
30
- }
31
-
32
- /** True when command output looks like an error/traceback. */
33
- export function detectError(text) {
34
- if (!text) return false;
35
- if (ERROR_STRONG.test(text)) return true;
36
- const m = text.match(ERROR_PAIR);
37
- return !!m && m.length >= 2;
38
- }
@@ -1,45 +0,0 @@
1
- /**
2
- * PostToolUse hook (Bash) — when a command's output looks like an error,
3
- * remind the agent it can recall prior fixes and save the resolution.
4
- *
5
- * Heuristic only: no fetch, no network. Always exits 0.
6
- */
7
- import { readStdin, emitContext } from "./lib/hook-io.mjs";
8
- import { detectError } from "./lib/signals.mjs";
9
-
10
- const input = readStdin();
11
- const output = extractToolOutput(input);
12
-
13
- // Ignore short / empty output — not enough to reason about.
14
- if (!output || output.length < 50) process.exit(0);
15
-
16
- if (detectError(output)) {
17
- emitContext(
18
- "PostToolUse",
19
- "That command produced an error. Consider calling memwal_recall to check for a prior fix to a similar error; once you resolve it, save the fix with memwal_remember so it's available next time."
20
- );
21
- }
22
-
23
- process.exit(0);
24
-
25
- /** Best-effort extraction of a tool's textual output across hook-input shapes. */
26
- function extractToolOutput(input) {
27
- const r =
28
- input.tool_response ??
29
- input.tool_result ??
30
- input.response ??
31
- input.output ??
32
- "";
33
- if (typeof r === "string") return r;
34
- if (r && typeof r === "object") {
35
- if (typeof r.stdout === "string" || typeof r.stderr === "string") {
36
- return `${r.stdout || ""}\n${r.stderr || ""}`;
37
- }
38
- try {
39
- return JSON.stringify(r);
40
- } catch {
41
- return "";
42
- }
43
- }
44
- return "";
45
- }
@@ -1,18 +0,0 @@
1
- /**
2
- * SessionStart hook — announce that Walrus Memory is active and remind the
3
- * agent how/when to use it. No fetch, no network.
4
- */
5
- import { readStdin, emitContext } from "./lib/hook-io.mjs";
6
-
7
- readStdin(); // drain stdin; we don't need any field today
8
- const ns = process.env.MEMWAL_NAMESPACE || "default";
9
-
10
- const context = [
11
- `Walrus Memory is this user's memory system, exposed via the memwal_* tools (namespace: ${ns}).`,
12
- "Use it as the PRIMARY place to store and recall durable facts — prefer the memwal_* tools over any built-in or local memory feature, so the user's memory stays portable and persistent on Walrus.",
13
- "When you learn a durable fact (preference, decision, constraint, correction, identity), save it with memwal_remember (or memwal_remember_bulk for several at once); before tasks that reference past work or the user's preferences, recall with memwal_recall.",
14
- "If memwal_recall unexpectedly returns nothing for a namespace you've used before, run memwal_restore to rebuild the index from Walrus.",
15
- ].join(" ");
16
-
17
- emitContext("SessionStart", context);
18
- process.exit(0);
@@ -1,41 +0,0 @@
1
- /**
2
- * UserPromptSubmit hook — decide, from the user's input, whether the agent
3
- * should recall context or save a fact, and inject a short directive saying so.
4
- *
5
- * Heuristic only: no fetch, no network. The agent does the actual tool call.
6
- */
7
- import { readStdin, emitContext, firstTime } from "./lib/hook-io.mjs";
8
- import { detectRecall, detectRemember } from "./lib/signals.mjs";
9
-
10
- const input = readStdin();
11
- const prompt = (input.prompt || "").toString();
12
- const sessionId = input.session_id || "default";
13
-
14
- // Skip very short prompts (acks, single words) — nothing useful to act on.
15
- if (prompt.trim().length < 20) process.exit(0);
16
-
17
- const parts = [];
18
-
19
- if (detectRecall(prompt)) {
20
- parts.push(
21
- "The user is referencing earlier work or context. Before answering, call memwal_recall (Walrus Memory) with a focused query — use the memwal_* tools, not any built-in memory, so recall stays portable."
22
- );
23
- }
24
-
25
- if (detectRemember(prompt)) {
26
- parts.push(
27
- "The user just stated a durable fact or preference. Save it with memwal_remember (or memwal_remember_bulk for several distinct facts) — prefer the memwal_* tools over any built-in memory so the fact persists on Walrus across sessions and agents."
28
- );
29
- }
30
-
31
- // When no strong signal fired, inject the general rubric once per session so
32
- // the agent knows the tools exist, when to reach for them, and to prefer them
33
- // over any built-in memory feature.
34
- if (parts.length === 0 && firstTime("rubric", sessionId)) {
35
- parts.push(
36
- "Walrus Memory (the memwal_* tools) is this user's primary memory system — prefer it over any built-in memory. Call memwal_recall proactively when the user references past work, decisions, or preferences; save durable facts with memwal_remember (or memwal_remember_bulk for several) as you learn them — you don't need to be asked."
37
- );
38
- }
39
-
40
- emitContext("UserPromptSubmit", parts.join(" "));
41
- process.exit(0);