@saleem11kh/repomem 0.2.0 → 0.3.1

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
@@ -54,10 +54,12 @@ repomem runs as an MCP server. Your AI agent gets 4 tools:
54
54
 
55
55
  | Tool | What it does |
56
56
  |---|---|
57
- | `mem_save` | Save a decision, pattern, issue, or session note |
58
- | `mem_search` | Search across all memory files instantly |
59
- | `mem_context` | Get a context packet at session start — no re-explaining |
57
+ | `mem_save` | Save a decision, pattern, issue, or session note (with a one-line summary + `[[links]]`) |
58
+ | `mem_search` | Search across all memory files instantly (BM25 + recency ranked) |
59
+ | `mem_context` | Get a lean context packet at session start — summaries, not full bodies |
60
+ | `mem_get` | Expand a single entry (by file or `[[wikilink]]`) only when you need it |
60
61
  | `mem_handoff` | Write today's session file, ready to commit |
62
+ | `mem_prime` | Bootstrap memory on an existing repo from its CLAUDE.md / docs |
61
63
 
62
64
  At the start of every session, your agent calls `mem_context()` and immediately knows:
63
65
  - What was worked on last session
@@ -66,6 +68,11 @@ At the start of every session, your agent calls `mem_context()` and immediately
66
68
  - Known issues to avoid repeating
67
69
  - What's next
68
70
 
71
+ To keep context small, `mem_context` returns **one-line summaries**; the agent expands
72
+ only what it needs with `mem_get`. Entries can cross-link with `[[wikilinks]]`, so related
73
+ decisions, patterns, and issues travel together. Already have a context-rich repo? Run
74
+ `mem_prime` once to seed memory from your existing `CLAUDE.md` and `docs/`.
75
+
69
76
  ---
70
77
 
71
78
  ## Quick start
@@ -153,17 +160,23 @@ Cross-repository context that actually travels with the code — not locked in a
153
160
  - [x] `repomem sync` — export `.repomem/` to stdout for sharing
154
161
  - [x] Remote linked repos (read `.repomem/` from GitHub without cloning, via `repomem pull`)
155
162
  - [x] `repomem import` — import a sync bundle for airgapped environments
156
- - [x] Smarter search ranking (recency + TF-IDF weighting)
163
+ - [x] Smarter search ranking (BM25 + recency weighting)
164
+ - [x] Progressive disclosure — `mem_context` summaries + `mem_get` to expand
165
+ - [x] `[[wikilink]]` graph between memories (traversed by search + context)
166
+ - [x] `mem_prime` — bootstrap memory from an existing repo's docs
167
+ - [ ] Optional semantic search layer (off by default, local embedding cache)
157
168
 
158
169
  ---
159
170
 
160
171
  ## Status
161
172
 
162
- **v0.1 — working.** `init`, `setup`, `status`, `sync`, `import`, `pull`, and all
163
- four MCP tools (`mem_save`, `mem_search`, `mem_context`, `mem_handoff`) are
164
- implemented and tested. Multi-repo search spans local `linked` paths, remote
165
- GitHub repos (pulled into a local cache), and a shared `workspace`. Search is
166
- ranked by TF-IDF with a recency boost.
173
+ **v0.2 — working.** `init`, `setup`, `status`, `sync`, `import`, `pull`, and six
174
+ MCP tools (`mem_save`, `mem_search`, `mem_context`, `mem_get`, `mem_handoff`,
175
+ `mem_prime`) are implemented and tested. Context is token-lean by default
176
+ (summaries + `mem_get` to expand), memories cross-link with `[[wikilinks]]`, and
177
+ `mem_prime` bootstraps an existing repo from its docs. Multi-repo search spans
178
+ local `linked` paths, remote GitHub repos (pulled into a local cache), and a
179
+ shared `workspace`, ranked by BM25 with a recency boost.
167
180
 
168
181
  If this solves a problem you have, **star the repo** — it helps validate that this is worth building and tells me which features to prioritise first.
169
182
 
package/dist/cli.d.ts CHANGED
@@ -1,3 +1,15 @@
1
1
  #!/usr/bin/env node
2
- export {};
2
+ export interface McpEntry {
3
+ command: string;
4
+ args: string[];
5
+ }
6
+ /**
7
+ * The server entry an agent should spawn, shaped for the host platform.
8
+ *
9
+ * Agents launch MCP servers with a bare spawn() and no shell. On Windows `npx`
10
+ * is `npx.cmd`, which such a spawn cannot resolve — it fails with ENOENT and the
11
+ * server silently shows as disconnected — so the command has to go through
12
+ * cmd.exe there.
13
+ */
14
+ export declare function mcpEntry(platform?: NodeJS.Platform): McpEntry;
3
15
  //# sourceMappingURL=cli.d.ts.map
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AA0CA,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAAG,QAAQ,CAI/E"}
package/dist/cli.js CHANGED
@@ -34,6 +34,7 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  };
35
35
  })();
36
36
  Object.defineProperty(exports, "__esModule", { value: true });
37
+ exports.mcpEntry = mcpEntry;
37
38
  const fs = __importStar(require("fs"));
38
39
  const path = __importStar(require("path"));
39
40
  const config_js_1 = require("./config/config.js");
@@ -48,9 +49,20 @@ const AGENTS = {
48
49
  "gemini-cli": { file: ".gemini/settings.json", label: "Gemini CLI", format: "json" },
49
50
  codex: { file: ".codex/config.toml", label: "Codex", format: "toml" },
50
51
  };
51
- const MCP_COMMAND = "npx";
52
- const MCP_ARGS = ["@saleem11kh/repomem"];
53
- const MCP_ENTRY = { command: MCP_COMMAND, args: MCP_ARGS };
52
+ const NPM_PACKAGE = "@saleem11kh/repomem";
53
+ /**
54
+ * The server entry an agent should spawn, shaped for the host platform.
55
+ *
56
+ * Agents launch MCP servers with a bare spawn() and no shell. On Windows `npx`
57
+ * is `npx.cmd`, which such a spawn cannot resolve — it fails with ENOENT and the
58
+ * server silently shows as disconnected — so the command has to go through
59
+ * cmd.exe there.
60
+ */
61
+ function mcpEntry(platform = process.platform) {
62
+ return platform === "win32"
63
+ ? { command: "cmd", args: ["/c", "npx", NPM_PACKAGE] }
64
+ : { command: "npx", args: [NPM_PACKAGE] };
65
+ }
54
66
  function cwd() {
55
67
  return process.cwd();
56
68
  }
@@ -108,6 +120,10 @@ function cmdSetup(agentArg) {
108
120
  if (!wired)
109
121
  return;
110
122
  console.log(`✔ Wired repomem into ${agent.label} (${agent.file})`);
123
+ if (process.platform === "win32") {
124
+ console.log(" Windows: the command is wrapped in `cmd /c` so agents can spawn it.");
125
+ console.log(" Teammates on macOS/Linux should re-run this to rewrite the entry.");
126
+ }
111
127
  if (agent.format === "toml") {
112
128
  console.log(" Codex only loads project config for trusted projects —");
113
129
  console.log(" run it from this dir and approve the trust prompt.");
@@ -128,7 +144,7 @@ function setupJson(target, agent) {
128
144
  }
129
145
  }
130
146
  const servers = existing.mcpServers ?? {};
131
- servers.repomem = MCP_ENTRY;
147
+ servers.repomem = mcpEntry();
132
148
  existing.mcpServers = servers;
133
149
  fs.writeFileSync(target, JSON.stringify(existing, null, 2) + "\n", "utf8");
134
150
  return true;
@@ -140,10 +156,11 @@ function setupToml(target, agent) {
140
156
  console.log(`• repomem already configured in ${agent.label} (${agent.file})`);
141
157
  return false;
142
158
  }
159
+ const entry = mcpEntry();
143
160
  const block = [
144
161
  "[mcp_servers.repomem]",
145
- `command = ${JSON.stringify(MCP_COMMAND)}`,
146
- `args = [${MCP_ARGS.map((a) => JSON.stringify(a)).join(", ")}]`,
162
+ `command = ${JSON.stringify(entry.command)}`,
163
+ `args = [${entry.args.map((a) => JSON.stringify(a)).join(", ")}]`,
147
164
  "",
148
165
  ].join("\n");
149
166
  const prefix = content.trim() ? content.replace(/\s*$/, "") + "\n\n" : "";
@@ -154,7 +171,7 @@ function setupToml(target, agent) {
154
171
  function cmdStatus() {
155
172
  const root = cwd();
156
173
  if (!(0, file_store_js_1.isInitialized)(root)) {
157
- console.log("✖ .repomem/ not found here. Run `repomem init` first.");
174
+ console.error("✖ .repomem/ not found here. Run `repomem init` first.");
158
175
  process.exitCode = 1;
159
176
  return;
160
177
  }
@@ -328,8 +345,11 @@ async function main() {
328
345
  process.exitCode = 1;
329
346
  }
330
347
  }
331
- main().catch((err) => {
332
- console.error("repomem error:", err);
333
- process.exit(1);
334
- });
348
+ // Run the CLI only when invoked as a script, so tests can import mcpEntry().
349
+ if (require.main === module) {
350
+ main().catch((err) => {
351
+ console.error("repomem error:", err);
352
+ process.exit(1);
353
+ });
354
+ }
335
355
  //# sourceMappingURL=cli.js.map
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,uCAAyB;AACzB,2CAA6B;AAE7B,kDAK4B;AAC5B,yDAW+B;AAC/B,iDAA+E;AAQ/E,8EAA8E;AAC9E,gFAAgF;AAChF,MAAM,MAAM,GAA8B;IACxC,aAAa,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE;IAC1E,MAAM,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;IACrE,MAAM,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE;IAC9E,YAAY,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE;IACpF,KAAK,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE;CACtE,CAAC;AAEF,MAAM,WAAW,GAAG,KAAK,CAAC;AAC1B,MAAM,QAAQ,GAAG,CAAC,qBAAqB,CAAC,CAAC;AACzC,MAAM,SAAS,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAE3D,SAAS,GAAG;IACV,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC;AACvB,CAAC;AAED,iEAAiE;AACjE,SAAS,OAAO;IACd,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC;IACnB,MAAM,OAAO,GAAG,IAAA,8BAAc,EAAC,IAAI,CAAC,CAAC;IAErC,KAAK,MAAM,IAAI,IAAI,4BAAY,EAAE,CAAC;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACrC,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACvC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QACxC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,2BAAe,CAAC,CAAC;IACpD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAkB;YAC5B,OAAO,EAAE,IAAA,6BAAiB,EAAC,IAAI,CAAC;YAChC,MAAM,EAAE,EAAE;SACX,CAAC;QACF,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7E,OAAO,CAAC,GAAG,CAAC,aAAa,2BAAe,cAAc,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC;IAC3E,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,KAAK,2BAAe,kCAAkC,CAAC,CAAC;IACtE,CAAC;IAED,IAAA,6BAAa,EAAC,IAAI,CAAC,CAAC;IACpB,OAAO,CAAC,GAAG,CAAC,gCAAgC,4BAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvE,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAC3C,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;IAClE,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;AACvE,CAAC;AAED,wEAAwE;AACxE,SAAS,QAAQ,CAAC,QAAiB;IACjC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,CAAC,KAAK,CAAC,2BAA2B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3E,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IAC7C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CACX,oBAAoB,QAAQ,iBAAiB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC9E,CAAC;QACF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC;IACnB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACjC,IAAI,GAAG,KAAK,IAAI;QAAE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEzD,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,KAAK,MAAM;QACnC,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC;QAC1B,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC7B,IAAI,CAAC,KAAK;QAAE,OAAO;IAEnB,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;IACnE,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;QACxE,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;AACpE,CAAC;AAED,oFAAoF;AACpF,SAAS,SAAS,CAAC,MAAc,EAAE,KAAgB;IACjD,IAAI,QAAQ,GAA4B,EAAE,CAAC;IAC3C,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,IAAI,CAAC;YACH,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,IAAI,2CAA2C,CAAC,CAAC;YAC1E,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GACV,QAAQ,CAAC,UAAsC,IAAK,EAA8B,CAAC;IACtF,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;IAC5B,QAAQ,CAAC,UAAU,GAAG,OAAO,CAAC;IAE9B,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;IAC3E,OAAO,IAAI,CAAC;AACd,CAAC;AAED,kFAAkF;AAClF,SAAS,SAAS,CAAC,MAAc,EAAE,KAAgB;IACjD,MAAM,OAAO,GAAG,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7E,IAAI,+BAA+B,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAClD,OAAO,CAAC,GAAG,CAAC,mCAAmC,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;QAC9E,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,KAAK,GAAG;QACZ,uBAAuB;QACvB,aAAa,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE;QAC1C,WAAW,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;QAC/D,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACb,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1E,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,EAAE,MAAM,CAAC,CAAC;IACjD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,+CAA+C;AAC/C,SAAS,SAAS;IAChB,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC;IACnB,IAAI,CAAC,IAAA,6BAAa,EAAC,IAAI,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;QACrE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IACD,MAAM,MAAM,GAAG,IAAA,sBAAU,EAAC,IAAI,CAAC,CAAC;IAChC,MAAM,CAAC,GAAG,IAAA,sBAAM,EAAC,IAAI,CAAC,CAAC;IAEvB,OAAO,CAAC,GAAG,CAAC,oBAAoB,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,KAAK,MAAM,IAAI,IAAI,4BAAY,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;SAC5C,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;SACzD,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC3B,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACpD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,gBAAgB,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACjG,OAAO,CAAC,GAAG,CACT,gBACE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MACvE,EAAE,CACH,CAAC;IACF,IAAI,MAAM,CAAC,SAAS;QAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;AACxE,CAAC;AAED,6EAA6E;AAC7E,SAAS,OAAO;IACd,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC;IACnB,IAAI,CAAC,IAAA,6BAAa,EAAC,IAAI,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;QACvE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IACD,MAAM,MAAM,GAAG,IAAA,sBAAU,EAAC,IAAI,CAAC,CAAC;IAChC,MAAM,GAAG,GAAa,CAAC,sBAAsB,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;IACnE,KAAK,MAAM,IAAI,IAAI,4BAAY,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,IAAA,yBAAS,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACpC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QACjC,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAC3B,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;YAC7B,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;YACxC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAA,wBAAQ,EAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;AAC9C,CAAC;AAED,wEAAwE;AACxE,SAAS,oBAAoB,CAAC,IAAY;IACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAA,8BAAc,EAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC3D,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5C,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IAC7C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC;QACvB,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,6DAA6D,EAAE,MAAM,CAAC,CAAC;IAC9F,CAAC;AACH,CAAC;AAED,gFAAgF;AAChF,KAAK,UAAU,OAAO;IACpB,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC;IACnB,IAAI,CAAC,IAAA,6BAAa,EAAC,IAAI,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;QACvE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IACD,MAAM,MAAM,GAAG,IAAA,sBAAU,EAAC,IAAI,CAAC,CAAC;IAChC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM;SAC1B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,uBAAW,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SAC/B,MAAM,CAAC,CAAC,CAAC,EAAkB,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IAE7C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,wEAAwE,CAAC,CAAC;QACtF,OAAO;IACT,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IAC/D,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAE3B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAA,+BAAe,EAAC,IAAI,EAAE,CAAC,CAAC,EAAE,2BAAW,CAAC,CAAC;QACrE,IAAI,CAAC;YACH,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC/C,MAAM,KAAK,GAAG,MAAM,IAAA,8BAAkB,EAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;YAC9D,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,iBAAiB,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QAC9E,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC7F,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAC;AAClF,CAAC;AAED,iFAAiF;AACjF,SAAS,SAAS,CAAC,OAAgB;IACjC,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC;IACnB,IAAI,CAAC,IAAA,6BAAa,EAAC,IAAI,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;QACvE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,IAAI,IAAY,CAAC;IACjB,IAAI,OAAO,EAAE,CAAC;QACZ,IAAI,CAAC;YACH,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;QAC9D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,iBAAiB,OAAO,EAAE,CAAC,CAAC;YAC1C,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;IACH,CAAC;SAAM,CAAC;QACN,IAAI,CAAC;YACH,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ;QAC7C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,kEAAkE,CAAC,CAAC;YAClF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,IAAA,4BAAY,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACzC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC;QAC1E,OAAO;IACT,CAAC;IACD,IAAA,6BAAa,EAAC,IAAI,CAAC,CAAC;IACpB,OAAO,CAAC,GAAG,CAAC,cAAc,OAAO,CAAC,MAAM,WAAW,CAAC,CAAC;IACrD,KAAK,MAAM,CAAC,IAAI,OAAO;QAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AACjD,CAAC;AAED,SAAS,OAAO;IACd,OAAO,CAAC,GAAG,CAAC;;;;;;kCAMoB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;8CAKlB,CAAC,CAAC;AAChD,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAE7C,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,SAAS;YACZ,6EAA6E;YAC7E,MAAM,CAAC,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YACjD,OAAO;QACT,KAAK,MAAM;YACT,OAAO,EAAE,CAAC;YACV,OAAO;QACT,KAAK,OAAO;YACV,QAAQ,CAAC,GAAG,CAAC,CAAC;YACd,OAAO;QACT,KAAK,QAAQ;YACX,SAAS,EAAE,CAAC;YACZ,OAAO;QACT,KAAK,MAAM;YACT,OAAO,EAAE,CAAC;YACV,OAAO;QACT,KAAK,MAAM;YACT,MAAM,OAAO,EAAE,CAAC;YAChB,OAAO;QACT,KAAK,QAAQ;YACX,SAAS,CAAC,GAAG,CAAC,CAAC;YACf,OAAO;QACT,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ,CAAC;QACd,KAAK,IAAI;YACP,OAAO,EAAE,CAAC;YACV,OAAO;QACT;YACE,OAAO,CAAC,KAAK,CAAC,sBAAsB,OAAO,MAAM,CAAC,CAAC;YACnD,OAAO,EAAE,CAAC;YACV,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACzB,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAmBA,yDAAyD;AACzD,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CA8CjD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA4BA,yDAAyD;AACzD,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAgDjD"}
package/dist/index.js CHANGED
@@ -9,17 +9,28 @@ const mem_save_js_1 = require("./tools/mem-save.js");
9
9
  const mem_search_js_1 = require("./tools/mem-search.js");
10
10
  const mem_context_js_1 = require("./tools/mem-context.js");
11
11
  const mem_handoff_js_1 = require("./tools/mem-handoff.js");
12
- const TOOLS = [mem_save_js_1.memSave, mem_search_js_1.memSearch, mem_context_js_1.memContext, mem_handoff_js_1.memHandoff];
12
+ const mem_get_js_1 = require("./tools/mem-get.js");
13
+ const mem_prime_js_1 = require("./tools/mem-prime.js");
14
+ const TOOLS = [
15
+ mem_save_js_1.memSave,
16
+ mem_search_js_1.memSearch,
17
+ mem_context_js_1.memContext,
18
+ mem_handoff_js_1.memHandoff,
19
+ mem_get_js_1.memGet,
20
+ mem_prime_js_1.memPrime,
21
+ ];
13
22
  const TOOL_MAP = new Map(TOOLS.map((t) => [t.name, t]));
14
- const VERSION = "0.2.0";
23
+ const VERSION = "0.3.1";
15
24
  /** Build and start the repomem MCP server over stdio. */
16
25
  async function startServer() {
17
26
  const server = new index_js_1.Server({ name: "repomem", version: VERSION }, {
18
27
  capabilities: { tools: {} },
19
28
  instructions: "Git-native memory for AI coding agents. Memory lives in .repomem/ in the " +
20
29
  "repo, commits with the code, and travels to teammates. Call mem_context at " +
21
- "the start of a session, mem_save to capture decisions/patterns/issues, " +
22
- "mem_search to recall, and mem_handoff to close out a session.",
30
+ "the start of a session (it returns summaries expand any entry with " +
31
+ "mem_get), mem_save to capture decisions/patterns/issues, mem_search to " +
32
+ "recall, and mem_handoff to close out a session. On a project new to " +
33
+ "repomem, call mem_prime once to bootstrap memory from existing docs.",
23
34
  });
24
35
  server.setRequestHandler(types_js_1.ListToolsRequestSchema, async () => ({
25
36
  tools: TOOLS.map((t) => ({
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ export interface SearchResult {
10
10
  title: string;
11
11
  excerpt: string;
12
12
  score: number;
13
+ related: string[];
13
14
  }
14
15
  /** Absolute path to the .repomem/ dir for a given project root. */
15
16
  export declare function getRepomemRoot(projectRoot?: string): string;
@@ -29,6 +30,35 @@ export declare function readFile(type: MemoryType, filename: string, projectRoot
29
30
  export declare function writeFile(type: MemoryType, filename: string, content: string, opts?: {
30
31
  append?: boolean;
31
32
  }, projectRoot?: string): string;
33
+ /**
34
+ * A one-line summary for an entry: the `summary:` front-matter field, else the
35
+ * first prose line of the body, else the title. Used by mem_context and
36
+ * mem_search to surface entries cheaply (progressive disclosure).
37
+ */
38
+ export declare function summaryOf(raw: string, filename: string): string;
39
+ /** Extract `[[wikilink]]` targets from a memory's raw text (order-preserving, deduped). */
40
+ export declare function parseLinks(raw: string): string[];
41
+ export interface ResolvedLink {
42
+ type: MemoryType;
43
+ filename: string;
44
+ title: string;
45
+ }
46
+ /**
47
+ * Resolve a `[[target]]` to a memory file. Matches an exact filename, an exact
48
+ * slug (date-stripped), or a unique slug substring. Returns null when unresolved.
49
+ */
50
+ export declare function resolveLink(target: string, projectRoot?: string): ResolvedLink | null;
51
+ /** Resolve all `[[wikilinks]]` in a file to their target entries (unresolved dropped). */
52
+ export declare function relatedOf(raw: string, projectRoot?: string): ResolvedLink[];
53
+ /**
54
+ * Gather existing project docs (CLAUDE.md, AGENTS.md, README, docs/**.md) so an
55
+ * agent can bootstrap memory for a project that already has lots of context.
56
+ * Each doc is capped to keep the priming payload bounded.
57
+ */
58
+ export declare function readProjectDocs(projectRoot?: string, perFileCap?: number, maxFiles?: number): {
59
+ rel: string;
60
+ text: string;
61
+ }[];
32
62
  /**
33
63
  * Search the current repo and, when `includeLinked`, all linked repos and the
34
64
  * workspace declared in repomem.config.json. Returns max 10 results, ranked.
@@ -1 +1 @@
1
- {"version":3,"file":"file-store.d.ts","sourceRoot":"","sources":["../../src/store/file-store.ts"],"names":[],"mappings":"AAEA,OAAO,EAA+B,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAA2B,SAAS,EAAE,MAAM,aAAa,CAAC;AAEjE,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE1E,eAAO,MAAM,YAAY,EAAE,UAAU,EAKpC,CAAC;AAEF,eAAO,MAAM,WAAW,aAAa,CAAC;AACtC,eAAO,MAAM,cAAc,eAAe,CAAC;AAE3C,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,mEAAmE;AACnE,wBAAgB,cAAc,CAAC,WAAW,GAAE,MAA0B,GAAG,MAAM,CAE9E;AAED,oDAAoD;AACpD,wBAAgB,aAAa,CAAC,WAAW,GAAE,MAA0B,GAAG,OAAO,CAE9E;AAED;;;GAGG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,UAAU,EAChB,WAAW,GAAE,MAA0B,GACtC,MAAM,EAAE,CAWV;AAED,wEAAwE;AACxE,wBAAgB,QAAQ,CACtB,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,MAAM,EAChB,WAAW,GAAE,MAA0B,GACtC,MAAM,GAAG,IAAI,CAOf;AAED;;;GAGG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,IAAI,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,EAC/B,WAAW,GAAE,MAA0B,GACtC,MAAM,CAUR;AAiKD;;;GAGG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,MAAM,EACb,WAAW,GAAE,MAA0B,GACtC,YAAY,EAAE,CAIhB;AAED,8FAA8F;AAC9F,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,GAAG,MAAM,CAEzE;AAED,wBAAgB,cAAc,CAC5B,KAAK,EAAE,MAAM,EACb,WAAW,GAAE,MAA0B,EACvC,MAAM,GAAE,aAAuC,GAC9C,YAAY,EAAE,CA6BhB;AAID;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,EACZ,WAAW,GAAE,MAA0B,GACtC,MAAM,EAAE,CA2BV;AAED,mEAAmE;AACnE,wBAAgB,MAAM,CACpB,WAAW,GAAE,MAA0B,GACtC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAI5B;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,WAAW,GAAE,MAA0B,GACtC,MAAM,GAAG,IAAI,CA2Bf"}
1
+ {"version":3,"file":"file-store.d.ts","sourceRoot":"","sources":["../../src/store/file-store.ts"],"names":[],"mappings":"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"}
@@ -39,6 +39,11 @@ exports.isInitialized = isInitialized;
39
39
  exports.listFiles = listFiles;
40
40
  exports.readFile = readFile;
41
41
  exports.writeFile = writeFile;
42
+ exports.summaryOf = summaryOf;
43
+ exports.parseLinks = parseLinks;
44
+ exports.resolveLink = resolveLink;
45
+ exports.relatedOf = relatedOf;
46
+ exports.readProjectDocs = readProjectDocs;
42
47
  exports.searchFiles = searchFiles;
43
48
  exports.remoteCacheRoot = remoteCacheRoot;
44
49
  exports.searchAllRepos = searchAllRepos;
@@ -124,12 +129,146 @@ function titleOf(raw, filename) {
124
129
  const m = raw.match(/^#\s+(.+)$/m);
125
130
  return m ? m[1].trim() : filename.replace(/\.md$/, "");
126
131
  }
132
+ /** Return the raw YAML front-matter block (between the --- fences), or "". */
133
+ function frontMatter(raw) {
134
+ if (raw.startsWith("---")) {
135
+ const end = raw.indexOf("\n---", 3);
136
+ if (end !== -1)
137
+ return raw.slice(3, end);
138
+ }
139
+ return "";
140
+ }
141
+ /** Read a single scalar front-matter field, or null. */
142
+ function fmField(raw, key) {
143
+ const m = frontMatter(raw).match(new RegExp(`^\\s*${key}:\\s*(.+)$`, "m"));
144
+ return m ? m[1].trim() : null;
145
+ }
146
+ /**
147
+ * A one-line summary for an entry: the `summary:` front-matter field, else the
148
+ * first prose line of the body, else the title. Used by mem_context and
149
+ * mem_search to surface entries cheaply (progressive disclosure).
150
+ */
151
+ function summaryOf(raw, filename) {
152
+ const explicit = fmField(raw, "summary");
153
+ if (explicit)
154
+ return explicit.replace(/^["']|["']$/g, "");
155
+ const { body } = splitFrontMatter(raw);
156
+ const line = body
157
+ .split("\n")
158
+ .map((l) => l.trim())
159
+ .find((l) => l.length > 0 && !l.startsWith("#"));
160
+ const base = line || titleOf(raw, filename);
161
+ return base.length > 140 ? base.slice(0, 137).trimEnd() + "…" : base;
162
+ }
163
+ /** Extract `[[wikilink]]` targets from a memory's raw text (order-preserving, deduped). */
164
+ function parseLinks(raw) {
165
+ const out = new Set();
166
+ const re = /\[\[([^\]|]+)(?:\|[^\]]*)?\]\]/g;
167
+ let m;
168
+ while ((m = re.exec(raw)) !== null)
169
+ out.add(m[1].trim());
170
+ return [...out];
171
+ }
172
+ /** Strip the date prefix and extension from a memory filename to get its slug. */
173
+ function fileSlug(filename) {
174
+ return filename.replace(/\.md$/i, "").replace(/^\d{4}-\d{2}-\d{2}-?/, "").toLowerCase();
175
+ }
176
+ /**
177
+ * Resolve a `[[target]]` to a memory file. Matches an exact filename, an exact
178
+ * slug (date-stripped), or a unique slug substring. Returns null when unresolved.
179
+ */
180
+ function resolveLink(target, projectRoot = (0, config_js_1.findProjectRoot)()) {
181
+ const t = target.replace(/\.md$/i, "").toLowerCase().trim();
182
+ let partial = null;
183
+ let partialCount = 0;
184
+ for (const type of exports.MEMORY_TYPES) {
185
+ for (const filename of listFiles(type, projectRoot)) {
186
+ const nameNoExt = filename.replace(/\.md$/i, "").toLowerCase();
187
+ const slug = fileSlug(filename);
188
+ if (nameNoExt === t || slug === t) {
189
+ const raw = readFile(type, filename, projectRoot) ?? "";
190
+ return { type, filename, title: titleOf(raw, filename) };
191
+ }
192
+ if (slug.includes(t) || nameNoExt.includes(t)) {
193
+ const raw = readFile(type, filename, projectRoot) ?? "";
194
+ partial = { type, filename, title: titleOf(raw, filename) };
195
+ partialCount++;
196
+ }
197
+ }
198
+ }
199
+ return partialCount === 1 ? partial : null;
200
+ }
201
+ /** Resolve all `[[wikilinks]]` in a file to their target entries (unresolved dropped). */
202
+ function relatedOf(raw, projectRoot = (0, config_js_1.findProjectRoot)()) {
203
+ const out = [];
204
+ const seen = new Set();
205
+ for (const target of parseLinks(raw)) {
206
+ const hit = resolveLink(target, projectRoot);
207
+ if (hit && !seen.has(hit.filename)) {
208
+ seen.add(hit.filename);
209
+ out.push(hit);
210
+ }
211
+ }
212
+ return out;
213
+ }
214
+ /**
215
+ * Gather existing project docs (CLAUDE.md, AGENTS.md, README, docs/**.md) so an
216
+ * agent can bootstrap memory for a project that already has lots of context.
217
+ * Each doc is capped to keep the priming payload bounded.
218
+ */
219
+ function readProjectDocs(projectRoot = (0, config_js_1.findProjectRoot)(), perFileCap = 6000, maxFiles = 12) {
220
+ const found = [];
221
+ const push = (abs) => {
222
+ try {
223
+ const text = fs.readFileSync(abs, "utf8");
224
+ if (text.trim()) {
225
+ found.push({ rel: path.relative(projectRoot, abs), text: text.slice(0, perFileCap) });
226
+ }
227
+ }
228
+ catch {
229
+ /* skip unreadable */
230
+ }
231
+ };
232
+ for (const name of ["CLAUDE.md", "AGENTS.md", "GEMINI.md", "README.md"]) {
233
+ const abs = path.join(projectRoot, name);
234
+ if (fs.existsSync(abs))
235
+ push(abs);
236
+ }
237
+ // Shallow-ish walk of docs/ for markdown (ADRs, design notes).
238
+ const docsDir = path.join(projectRoot, "docs");
239
+ const walk = (dir, depth) => {
240
+ if (depth > 2 || found.length >= maxFiles)
241
+ return;
242
+ let entries;
243
+ try {
244
+ entries = fs.readdirSync(dir, { withFileTypes: true });
245
+ }
246
+ catch {
247
+ return;
248
+ }
249
+ for (const e of entries) {
250
+ if (found.length >= maxFiles)
251
+ return;
252
+ const abs = path.join(dir, e.name);
253
+ if (e.isDirectory())
254
+ walk(abs, depth + 1);
255
+ else if (e.isFile() && e.name.toLowerCase().endsWith(".md"))
256
+ push(abs);
257
+ }
258
+ };
259
+ if (fs.existsSync(docsDir))
260
+ walk(docsDir, 0);
261
+ return found.slice(0, maxFiles);
262
+ }
127
263
  // Recency boost: a fresh doc can score up to (1 + RECENCY_WEIGHT)× a stale one,
128
264
  // decaying with a ~RECENCY_HALFLIFE_DAYS half-life. Keeps yesterday's session
129
265
  // ahead of a year-old note when both match equally well.
130
266
  const RECENCY_WEIGHT = 0.5;
131
267
  const RECENCY_HALFLIFE_DAYS = 30;
132
268
  const DAY_MS = 24 * 60 * 60 * 1000;
269
+ // BM25 tuning: k1 controls term-frequency saturation, b the length penalty.
270
+ const BM25_K1 = 1.5;
271
+ const BM25_B = 0.75;
133
272
  /** Best-effort timestamp for a memory: leading YYYY-MM-DD in the name, else mtime. */
134
273
  function docDateMs(type, filename, projectRoot) {
135
274
  const m = filename.match(/^(\d{4})-(\d{2})-(\d{2})/);
@@ -208,17 +347,19 @@ function searchInRoot(query, scope, projectRoot) {
208
347
  }
209
348
  const n = docs.length;
210
349
  const now = Date.now();
211
- // Pass 3: score = Σ (sublinear-tf × idf), length-normalised, × recency boost.
212
- // Sublinear tf (1 + ln tf) stops a doc that merely repeats a common term from
213
- // outranking one that actually contains the rare, discriminating term.
350
+ // Pass 3: BM25 relevance × recency boost. BM25's saturating tf (k1) and length
351
+ // normalisation (b) keep a doc that merely repeats a common term from
352
+ // outranking one containing the rare, discriminating term.
353
+ const avgdl = docs.reduce((s, d) => s + d.length, 0) / docs.length;
214
354
  const results = [];
215
355
  for (const doc of docs) {
216
356
  let score = 0;
217
357
  for (const [term, tf] of doc.counts) {
218
- const idf = Math.log(1 + n / (1 + (df.get(term) ?? 0)));
219
- score += (1 + Math.log(tf)) * idf;
358
+ const dfv = df.get(term) ?? 0;
359
+ const idf = Math.log(1 + (n - dfv + 0.5) / (dfv + 0.5));
360
+ const denom = tf + BM25_K1 * (1 - BM25_B + (BM25_B * doc.length) / avgdl);
361
+ score += idf * ((tf * (BM25_K1 + 1)) / denom);
220
362
  }
221
- score /= 1 + Math.log(1 + doc.length); // dampen long documents
222
363
  const ageDays = doc.dateMs > 0 ? Math.max(0, (now - doc.dateMs) / DAY_MS) : Infinity;
223
364
  const recency = 1 + RECENCY_WEIGHT * Math.exp(-ageDays / RECENCY_HALFLIFE_DAYS);
224
365
  score *= recency;
@@ -231,6 +372,7 @@ function searchInRoot(query, scope, projectRoot) {
231
372
  title: titleOf(doc.raw, doc.filename),
232
373
  excerpt: makeExcerpt(body, terms),
233
374
  score,
375
+ related: relatedOf(doc.raw, projectRoot).map((r) => r.title),
234
376
  });
235
377
  }
236
378
  return results;
@@ -1 +1 @@
1
- {"version":3,"file":"file-store.js","sourceRoot":"","sources":["../../src/store/file-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-store.js","sourceRoot":"","sources":["../../src/store/file-store.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mem-context.d.ts","sourceRoot":"","sources":["../../src/tools/mem-context.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA6BpC,eAAO,MAAM,UAAU,EAAE,OAqFxB,CAAC"}
1
+ {"version":3,"file":"mem-context.d.ts","sourceRoot":"","sources":["../../src/tools/mem-context.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA6BpC,eAAO,MAAM,UAAU,EAAE,OA2ExB,CAAC"}
@@ -52,45 +52,33 @@ exports.memContext = {
52
52
  return (`${config.project}: ${c.decisions} decisions, ${c.patterns} patterns, ` +
53
53
  `${c.issues} issues, ${c.sessions} sessions. Last session: ${last}.`);
54
54
  }
55
+ // Full packet, but token-lean: the latest session is inlined (it holds the
56
+ // "what's next"); everything else is a one-line summary the agent can expand
57
+ // on demand with mem_get. This keeps session-start context small.
55
58
  const out = [];
56
59
  out.push(`# Context for ${config.project}`, "");
57
- // Latest session.
60
+ // Latest session — inlined in full.
58
61
  const session = readNewest("sessions", projectRoot, 1)[0];
59
62
  out.push("## Last session");
60
63
  out.push(session ? `### ${session.filename}\n\n${body(session.raw)}` : "_none yet_");
61
64
  out.push("");
62
- // Recent decisions (max 5).
63
- out.push("## Recent decisions");
64
- const decisions = readNewest("decisions", projectRoot, 5);
65
- if (decisions.length === 0)
66
- out.push("_none yet_");
67
- for (const d of decisions) {
68
- out.push(`### ${firstHeading(d.raw, d.filename)} (${d.filename})`);
69
- out.push(body(d.raw));
70
- out.push("");
71
- }
72
- // All patterns.
73
- out.push("## Patterns");
74
- const patterns = readNewest("patterns", projectRoot, 100);
75
- if (patterns.length === 0)
76
- out.push("_none yet_");
77
- for (const p of patterns) {
78
- out.push(`### ${firstHeading(p.raw, p.filename)}`);
79
- out.push(body(p.raw));
80
- out.push("");
81
- }
82
- // Open issues.
83
- out.push("## Known issues");
84
- const issues = readNewest("issues", projectRoot, 100);
85
- if (issues.length === 0)
86
- out.push("_none yet_");
87
- for (const i of issues) {
88
- out.push(`### ${firstHeading(i.raw, i.filename)}`);
89
- out.push(body(i.raw));
65
+ const summaryList = (type, heading, limit) => {
66
+ out.push(`## ${heading}`);
67
+ const entries = readNewest(type, projectRoot, limit);
68
+ if (entries.length === 0)
69
+ out.push("_none yet_");
70
+ for (const e of entries) {
71
+ out.push(`- ${firstHeading(e.raw, e.filename)} — ${(0, file_store_js_1.summaryOf)(e.raw, e.filename)} (${type}/${e.filename})`);
72
+ }
90
73
  out.push("");
91
- }
74
+ };
75
+ summaryList("decisions", "Recent decisions", 5);
76
+ summaryList("patterns", "Patterns", 100);
77
+ summaryList("issues", "Known issues", 100);
78
+ out.push("_Expand any entry with mem_get(\"type/filename\"). Search with mem_search._");
92
79
  // Workspace pointer.
93
80
  if (config.workspace || config.linked.length) {
81
+ out.push("");
94
82
  out.push("## Linked context");
95
83
  if (config.workspace)
96
84
  out.push(`- workspace: ${config.workspace}`);
@@ -1 +1 @@
1
- {"version":3,"file":"mem-context.js","sourceRoot":"","sources":["../../src/tools/mem-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mem-context.js","sourceRoot":"","sources":["../../src/tools/mem-context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { ToolDef } from "./util.js";
2
+ export declare const memGet: ToolDef;
3
+ //# sourceMappingURL=mem-get.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mem-get.d.ts","sourceRoot":"","sources":["../../src/tools/mem-get.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,OAAO,EAAO,MAAM,WAAW,CAAC;AAkBzC,eAAO,MAAM,MAAM,EAAE,OAsCpB,CAAC"}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.memGet = void 0;
4
+ const file_store_js_1 = require("../store/file-store.js");
5
+ const util_js_1 = require("./util.js");
6
+ /** Resolve a "type/filename", bare filename, or [[slug]] to a concrete entry. */
7
+ function resolve(ref, projectRoot) {
8
+ const cleaned = ref.replace(/^\[\[|\]\]$/g, "").trim();
9
+ if (cleaned.includes("/")) {
10
+ const [type, filename] = cleaned.split("/", 2);
11
+ if (file_store_js_1.MEMORY_TYPES.includes(type) && filename) {
12
+ return { type: type, filename };
13
+ }
14
+ }
15
+ const hit = (0, file_store_js_1.resolveLink)(cleaned, projectRoot);
16
+ return hit ? { type: hit.type, filename: hit.filename } : null;
17
+ }
18
+ exports.memGet = {
19
+ name: "mem_get",
20
+ description: "Fetch the full text of a single memory entry by its file (e.g. " +
21
+ "'decisions/2026-06-01-use-postgres.md'), bare filename, or [[wikilink]] slug. " +
22
+ "Use after mem_context or mem_search to expand only the entries you actually " +
23
+ "need — this keeps context small.",
24
+ inputSchema: {
25
+ type: "object",
26
+ properties: {
27
+ file: {
28
+ type: "string",
29
+ description: "type/filename, a bare filename, or a [[wikilink]] slug.",
30
+ },
31
+ },
32
+ required: ["file"],
33
+ },
34
+ handler(args, projectRoot) {
35
+ if (!(0, file_store_js_1.isInitialized)(projectRoot)) {
36
+ return "✖ .repomem/ not found. Run `repomem init` in your project first.";
37
+ }
38
+ const ref = (0, util_js_1.str)(args.file);
39
+ if (!ref)
40
+ return "✖ A file reference is required.";
41
+ const target = resolve(ref, projectRoot);
42
+ if (!target)
43
+ return `✖ No memory entry matches "${ref}".`;
44
+ const raw = (0, file_store_js_1.readFile)(target.type, target.filename, projectRoot);
45
+ if (raw == null)
46
+ return `✖ Could not read ${target.type}/${target.filename}.`;
47
+ const related = (0, file_store_js_1.relatedOf)(raw, projectRoot);
48
+ const out = [`# ${target.type}/${target.filename}`, "", raw.trim()];
49
+ if (related.length) {
50
+ out.push("", "---", "Related entries (fetch with mem_get):");
51
+ for (const r of related)
52
+ out.push(`- ${r.title} · ${r.type}/${r.filename}`);
53
+ }
54
+ return out.join("\n");
55
+ },
56
+ };
57
+ //# sourceMappingURL=mem-get.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mem-get.js","sourceRoot":"","sources":["../../src/tools/mem-get.ts"],"names":[],"mappings":";;;AAAA,0DAOgC;AAChC,uCAAyC;AAEzC,iFAAiF;AACjF,SAAS,OAAO,CACd,GAAW,EACX,WAAmB;IAEnB,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACvD,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAC/C,IAAK,4BAAyB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC;YAC1D,OAAO,EAAE,IAAI,EAAE,IAAkB,EAAE,QAAQ,EAAE,CAAC;QAChD,CAAC;IACH,CAAC;IACD,MAAM,GAAG,GAAG,IAAA,2BAAW,EAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC9C,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACjE,CAAC;AAEY,QAAA,MAAM,GAAY;IAC7B,IAAI,EAAE,SAAS;IACf,WAAW,EACT,iEAAiE;QACjE,gFAAgF;QAChF,8EAA8E;QAC9E,kCAAkC;IACpC,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,yDAAyD;aACvE;SACF;QACD,QAAQ,EAAE,CAAC,MAAM,CAAC;KACnB;IACD,OAAO,CAAC,IAAI,EAAE,WAAW;QACvB,IAAI,CAAC,IAAA,6BAAa,EAAC,WAAW,CAAC,EAAE,CAAC;YAChC,OAAO,kEAAkE,CAAC;QAC5E,CAAC;QACD,MAAM,GAAG,GAAG,IAAA,aAAG,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,GAAG;YAAE,OAAO,iCAAiC,CAAC;QAEnD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM;YAAE,OAAO,8BAA8B,GAAG,IAAI,CAAC;QAE1D,MAAM,GAAG,GAAG,IAAA,wBAAQ,EAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAChE,IAAI,GAAG,IAAI,IAAI;YAAE,OAAO,oBAAoB,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,QAAQ,GAAG,CAAC;QAE9E,MAAM,OAAO,GAAG,IAAA,yBAAS,EAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAC5C,MAAM,GAAG,GAAG,CAAC,KAAK,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QACpE,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,uCAAuC,CAAC,CAAC;YAC7D,KAAK,MAAM,CAAC,IAAI,OAAO;gBAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { ToolDef } from "./util.js";
2
+ export declare const memPrime: ToolDef;
3
+ //# sourceMappingURL=mem-prime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mem-prime.d.ts","sourceRoot":"","sources":["../../src/tools/mem-prime.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,eAAO,MAAM,QAAQ,EAAE,OAsDtB,CAAC"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.memPrime = void 0;
4
+ const file_store_js_1 = require("../store/file-store.js");
5
+ exports.memPrime = {
6
+ name: "mem_prime",
7
+ description: "Bootstrap memory for a project that already has lots of context. Gathers " +
8
+ "existing docs (CLAUDE.md, AGENTS.md, README, docs/**) and returns them with " +
9
+ "instructions to distil durable decisions, patterns, and issues into memory " +
10
+ "via mem_save. Run once when adopting repomem on an existing repo.",
11
+ inputSchema: { type: "object", properties: {} },
12
+ handler(_args, projectRoot) {
13
+ if (!(0, file_store_js_1.isInitialized)(projectRoot)) {
14
+ return "✖ .repomem/ not found. Run `repomem init` in your project first.";
15
+ }
16
+ const existing = (0, file_store_js_1.counts)(projectRoot);
17
+ const total = existing.decisions + existing.patterns + existing.issues + existing.sessions;
18
+ const docs = (0, file_store_js_1.readProjectDocs)(projectRoot);
19
+ if (docs.length === 0) {
20
+ return ("No source docs found to prime from (looked for CLAUDE.md, AGENTS.md, " +
21
+ "GEMINI.md, README.md, docs/**.md).\n\n" +
22
+ "Nothing to bootstrap automatically — save memories as you work with mem_save.");
23
+ }
24
+ const out = [];
25
+ out.push("# repomem priming packet");
26
+ out.push("");
27
+ out.push(total > 0
28
+ ? `This project already has ${total} memory ${total === 1 ? "entry" : "entries"}. Only add what is missing — do not duplicate.`
29
+ : "This project has no memory yet. Seed it from the sources below.");
30
+ out.push("");
31
+ out.push("## Instructions");
32
+ out.push("Read the sources below and extract DURABLE, reusable project knowledge. " +
33
+ "For each item, call mem_save with the right type:");
34
+ out.push("- decision — an architectural choice and *why* (include a `supersedes` if it replaces one)");
35
+ out.push("- pattern — a convention/idiom to follow in this codebase");
36
+ out.push("- issue — a known gotcha or do-not-repeat mistake");
37
+ out.push("");
38
+ out.push("Keep each entry short and add a one-line `summary`. Link related entries with " +
39
+ "`links`. Skip transient details, changelog noise, and anything obvious from the code.");
40
+ out.push("");
41
+ out.push("## Sources");
42
+ for (const doc of docs) {
43
+ out.push("", `### ${doc.rel}`, "", "```", doc.text.trimEnd(), "```");
44
+ }
45
+ return out.join("\n");
46
+ },
47
+ };
48
+ //# sourceMappingURL=mem-prime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mem-prime.js","sourceRoot":"","sources":["../../src/tools/mem-prime.ts"],"names":[],"mappings":";;;AAAA,0DAAgF;AAGnE,QAAA,QAAQ,GAAY;IAC/B,IAAI,EAAE,WAAW;IACjB,WAAW,EACT,2EAA2E;QAC3E,8EAA8E;QAC9E,6EAA6E;QAC7E,mEAAmE;IACrE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;IAC/C,OAAO,CAAC,KAAK,EAAE,WAAW;QACxB,IAAI,CAAC,IAAA,6BAAa,EAAC,WAAW,CAAC,EAAE,CAAC;YAChC,OAAO,kEAAkE,CAAC;QAC5E,CAAC;QAED,MAAM,QAAQ,GAAG,IAAA,sBAAM,EAAC,WAAW,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,GAAG,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAC3F,MAAM,IAAI,GAAG,IAAA,+BAAe,EAAC,WAAW,CAAC,CAAC;QAE1C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,CACL,uEAAuE;gBACvE,wCAAwC;gBACxC,+EAA+E,CAChF,CAAC;QACJ,CAAC;QAED,MAAM,GAAG,GAAa,EAAE,CAAC;QACzB,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACrC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACb,GAAG,CAAC,IAAI,CACN,KAAK,GAAG,CAAC;YACP,CAAC,CAAC,4BAA4B,KAAK,WAAW,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,gDAAgD;YAC/H,CAAC,CAAC,iEAAiE,CACtE,CAAC;QACF,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC5B,GAAG,CAAC,IAAI,CACN,0EAA0E;YACxE,mDAAmD,CACtD,CAAC;QACF,GAAG,CAAC,IAAI,CAAC,4FAA4F,CAAC,CAAC;QACvG,GAAG,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;QACtE,GAAG,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QAC9D,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACb,GAAG,CAAC,IAAI,CACN,gFAAgF;YAC9E,uFAAuF,CAC1F,CAAC;QACF,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACvB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,GAAG,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;QACvE,CAAC;QACD,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"mem-save.d.ts","sourceRoot":"","sources":["../../src/tools/mem-save.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,YAAY,EAIb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,OAAO,EAA4C,MAAM,WAAW,CAAC;AAa9E,eAAO,MAAM,OAAO,EAAE,OAyErB,CAAC;AAGF,OAAO,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"mem-save.d.ts","sourceRoot":"","sources":["../../src/tools/mem-save.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,YAAY,EAIb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,OAAO,EAA4C,MAAM,WAAW,CAAC;AAa9E,eAAO,MAAM,OAAO,EAAE,OA4FrB,CAAC;AAGF,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -29,11 +29,22 @@ exports.memSave = {
29
29
  },
30
30
  title: { type: "string", description: "Short title for this memory." },
31
31
  content: { type: "string", description: "The memory body, in markdown." },
32
+ summary: {
33
+ type: "string",
34
+ description: "Optional one-line summary. Surfaced by mem_context/mem_search so agents " +
35
+ "can scan without loading the full body. Auto-derived when omitted.",
36
+ },
32
37
  tags: {
33
38
  type: "array",
34
39
  items: { type: "string" },
35
40
  description: "Optional tags for retrieval.",
36
41
  },
42
+ links: {
43
+ type: "array",
44
+ items: { type: "string" },
45
+ description: "Optional slugs of related memories to link (e.g. 'use-postgres'). " +
46
+ "Renders as [[wikilinks]] so context can traverse related entries.",
47
+ },
37
48
  supersedes: {
38
49
  type: "string",
39
50
  description: "Optional filename of a prior decision this one replaces (decisions only).",
@@ -58,24 +69,31 @@ exports.memSave = {
58
69
  return "✖ Content is required.";
59
70
  const tags = (0, util_js_1.strArray)(args.tags);
60
71
  const supersedes = (0, util_js_1.str)(args.supersedes);
72
+ const summary = (0, util_js_1.str)(args.summary);
73
+ const links = (0, util_js_1.strArray)(args.links);
74
+ const linkLine = links.length
75
+ ? `\nRelated: ${links.map((l) => `[[${(0, util_js_1.slugify)(l)}]]`).join(" ")}\n`
76
+ : "";
61
77
  // Sessions are date-keyed and appended to across a single day.
62
78
  if (type === "sessions") {
63
79
  const filename = `${(0, util_js_1.today)()}.md`;
64
80
  const block = `\n## ${(0, util_js_1.timestamp)()} — ${title}\n\n` +
65
81
  (tags.length ? `_tags: ${tags.join(", ")}_\n\n` : "") +
66
- `${content}\n`;
82
+ `${content}\n${linkLine}`;
67
83
  (0, file_store_js_1.writeFile)(type, filename, block, { append: true }, projectRoot);
68
84
  (0, file_store_js_1.generateIndex)(projectRoot);
69
85
  return `✔ Appended to sessions/${filename}\n\nRemember to: git add .repomem/ && git commit`;
70
86
  }
71
87
  const filename = `${(0, util_js_1.today)()}-${(0, util_js_1.slugify)(title)}.md`;
72
88
  const fm = ["---", `date: ${(0, util_js_1.today)()}`];
89
+ if (summary)
90
+ fm.push(`summary: ${summary.replace(/\n+/g, " ").trim()}`);
73
91
  if (tags.length)
74
92
  fm.push(`tags: [${tags.join(", ")}]`);
75
93
  if (supersedes)
76
94
  fm.push(`supersedes: ${supersedes}`);
77
95
  fm.push("---", "");
78
- const body = `# ${title}\n\n${content}\n`;
96
+ const body = `# ${title}\n\n${content}\n${linkLine}`;
79
97
  (0, file_store_js_1.writeFile)(type, filename, fm.join("\n") + body, {}, projectRoot);
80
98
  (0, file_store_js_1.generateIndex)(projectRoot);
81
99
  const note = supersedes ? ` (supersedes ${supersedes})` : "";
@@ -1 +1 @@
1
- {"version":3,"file":"mem-save.js","sourceRoot":"","sources":["../../src/tools/mem-save.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mem-save.js","sourceRoot":"","sources":["../../src/tools/mem-save.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mem-search.d.ts","sourceRoot":"","sources":["../../src/tools/mem-search.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAO,MAAM,WAAW,CAAC;AAEzC,eAAO,MAAM,SAAS,EAAE,OA2CvB,CAAC"}
1
+ {"version":3,"file":"mem-search.d.ts","sourceRoot":"","sources":["../../src/tools/mem-search.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAO,MAAM,WAAW,CAAC;AAEzC,eAAO,MAAM,SAAS,EAAE,OA6CvB,CAAC"}
@@ -39,8 +39,11 @@ exports.memSearch = {
39
39
  for (const r of results) {
40
40
  lines.push(`${r.scope} ${r.title} · ${r.file}`);
41
41
  lines.push(` ${r.excerpt}`);
42
+ if (r.related.length)
43
+ lines.push(` → related: ${r.related.join(", ")}`);
42
44
  lines.push("");
43
45
  }
46
+ lines.push('_Expand any entry with mem_get("type/filename")._');
44
47
  return lines.join("\n").trimEnd();
45
48
  },
46
49
  };
@@ -1 +1 @@
1
- {"version":3,"file":"mem-search.js","sourceRoot":"","sources":["../../src/tools/mem-search.ts"],"names":[],"mappings":";;;AAAA,0DAAoF;AACpF,uCAAyC;AAE5B,QAAA,SAAS,GAAY;IAChC,IAAI,EAAE,YAAY;IAClB,WAAW,EACT,0EAA0E;QAC1E,2EAA2E;QAC3E,+EAA+E;QAC/E,6EAA6E;QAC7E,sDAAsD;IACxD,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE;YACvD,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,wDAAwD;aACtE;SACF;QACD,QAAQ,EAAE,CAAC,OAAO,CAAC;KACpB;IACD,OAAO,CAAC,IAAI,EAAE,WAAW;QACvB,IAAI,CAAC,IAAA,6BAAa,EAAC,WAAW,CAAC,EAAE,CAAC;YAChC,OAAO,kEAAkE,CAAC;QAC5E,CAAC;QACD,MAAM,KAAK,GAAG,IAAA,aAAG,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,CAAC,KAAK;YAAE,OAAO,+BAA+B,CAAC;QAEnD,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC;QAC3C,MAAM,OAAO,GAAG,aAAa;YAC3B,CAAC,CAAC,IAAA,8BAAc,EAAC,KAAK,EAAE,WAAW,CAAC;YACpC,CAAC,CAAC,IAAA,2BAAW,EAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAEpC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,wBAAwB,KAAK,IAAI,CAAC;QAC3C,CAAC;QAED,MAAM,KAAK,GAAG,CAAC,SAAS,OAAO,CAAC,MAAM,mBAAmB,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC;QACxE,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAClD,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;IACpC,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"mem-search.js","sourceRoot":"","sources":["../../src/tools/mem-search.ts"],"names":[],"mappings":";;;AAAA,0DAAoF;AACpF,uCAAyC;AAE5B,QAAA,SAAS,GAAY;IAChC,IAAI,EAAE,YAAY;IAClB,WAAW,EACT,0EAA0E;QAC1E,2EAA2E;QAC3E,+EAA+E;QAC/E,6EAA6E;QAC7E,sDAAsD;IACxD,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE;YACvD,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,wDAAwD;aACtE;SACF;QACD,QAAQ,EAAE,CAAC,OAAO,CAAC;KACpB;IACD,OAAO,CAAC,IAAI,EAAE,WAAW;QACvB,IAAI,CAAC,IAAA,6BAAa,EAAC,WAAW,CAAC,EAAE,CAAC;YAChC,OAAO,kEAAkE,CAAC;QAC5E,CAAC;QACD,MAAM,KAAK,GAAG,IAAA,aAAG,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,CAAC,KAAK;YAAE,OAAO,+BAA+B,CAAC;QAEnD,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC;QAC3C,MAAM,OAAO,GAAG,aAAa;YAC3B,CAAC,CAAC,IAAA,8BAAc,EAAC,KAAK,EAAE,WAAW,CAAC;YACpC,CAAC,CAAC,IAAA,2BAAW,EAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAEpC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,wBAAwB,KAAK,IAAI,CAAC;QAC3C,CAAC;QAED,MAAM,KAAK,GAAG,CAAC,SAAS,OAAO,CAAC,MAAM,mBAAmB,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC;QACxE,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAClD,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9B,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM;gBAAE,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC1E,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QAChE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;IACpC,CAAC;CACF,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@saleem11kh/repomem",
3
- "version": "0.2.0",
3
+ "version": "0.3.1",
4
4
  "description": "Git-native memory for AI coding agents. .repomem/ commits with your code, clones with your team, works with Claude Code, Cursor, Gemini CLI and more.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",