memgrid 0.5.1 → 0.5.2

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/CHANGELOG.md CHANGED
@@ -2,6 +2,17 @@
2
2
 
3
3
  All notable changes to MemGrid.
4
4
 
5
+ ## v0.5.2 — Auto-Sync Hooks (unreleased)
6
+
7
+ ### Added
8
+ - `memgrid init` auto-configures memory sync hooks:
9
+ - **Claude Code PostCompletion** → runs `memgrid sync` after each task
10
+ - **Git post-commit** → runs `memgrid sync` after each commit
11
+ - All injections are non-destructive (merges with existing config)
12
+
13
+ ### Changed
14
+ - README: added Auto-Sync Hooks section + CLAUDE.md integration template
15
+
5
16
  ## v0.5.1 — Search Bug Fix (2026-06-28)
6
17
 
7
18
  ### Fixed
package/README.md CHANGED
@@ -246,6 +246,39 @@ MemGrid outputs **standardized Markdown context** consumable by any AI coding to
246
246
  memgrid serve
247
247
  ```
248
248
 
249
+ ## 🔄 Auto-Sync Hooks
250
+
251
+ `memgrid init` automatically configures hooks so your memory grid stays up to date without manual effort:
252
+
253
+ | Hook | Trigger | What it does |
254
+ |------|---------|--------------|
255
+ | **PostCompletion** | Claude Code finishes a task | Runs `memgrid sync` automatically |
256
+ | **post-commit** | `git commit` | Runs `memgrid sync` (covers non-Claude changes) |
257
+
258
+ All injections are **non-destructive** — existing config is merged, never overwritten.
259
+
260
+ ## 📝 CLAUDE.md Integration (optional)
261
+
262
+ To make your AI agent proactive about memory, add these sections to your CLAUDE.md:
263
+
264
+ ```markdown
265
+ ## MemGrid
266
+
267
+ Before any task, search the memory grid for relevant context:
268
+
269
+ ```bash
270
+ npx memgrid search "<what you're about to do>" --max 10
271
+ ```
272
+
273
+ After completing code changes, sync the grid back:
274
+
275
+ ```bash
276
+ npx memgrid sync
277
+ ```
278
+ ```
279
+
280
+ > ⚠️ MemGrid won't touch your CLAUDE.md. The hooks above handle automatic sync. This snippet is just a recommendation — add it if you want your AI agent to actively *search* the grid before starting.
281
+
249
282
  ## License
250
283
 
251
284
  MIT
@@ -0,0 +1,4 @@
1
+ export declare function injectMemGridFlow(projectRoot: string): {
2
+ action: 'created' | 'injected' | 'skipped';
3
+ };
4
+ //# sourceMappingURL=claude-md.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-md.d.ts","sourceRoot":"","sources":["../src/claude-md.ts"],"names":[],"mappings":"AA4BA,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,MAAM,GAClB;IAAE,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAA;CAAE,CAqChD"}
@@ -0,0 +1,58 @@
1
+ import * as fs from 'fs';
2
+ import * as path from 'path';
3
+ const STARTUP_SECTION = `## 启动流程
4
+
5
+ **每次任务开始时,必须先执行:**
6
+
7
+ \`\`\`bash
8
+ npx memgrid search "<任务关键词>" --max 10
9
+ \`\`\`
10
+
11
+ 这会从项目的记忆网格中检索最相关的上下文:
12
+
13
+ - 方法签名与实现
14
+ - 设计模式与规则
15
+ - 代码哲学与决策
16
+ - 项目结构与配置`;
17
+ const END_SECTION = `## 结束流程
18
+
19
+ **每次代码变更完成后,必须执行:**
20
+
21
+ \`\`\`bash
22
+ npx memgrid sync
23
+ \`\`\`
24
+
25
+ 这不是可选的——是任务结束的强制步骤。MemGrid 会增量分析代码变更,将新的方法签名、设计模式、决策等写入记忆网格,确保下一次任务启动时知识是最新的。`;
26
+ export function injectMemGridFlow(projectRoot) {
27
+ const claudeMdPath = path.join(projectRoot, 'CLAUDE.md');
28
+ if (!fs.existsSync(claudeMdPath)) {
29
+ const content = `# Project\n\n${STARTUP_SECTION}\n\n${END_SECTION}\n`;
30
+ fs.writeFileSync(claudeMdPath, content, 'utf-8');
31
+ return { action: 'created' };
32
+ }
33
+ const existing = fs.readFileSync(claudeMdPath, 'utf-8');
34
+ const hasSearch = existing.includes('memgrid search');
35
+ const hasSync = existing.includes('memgrid sync');
36
+ if (hasSearch && hasSync) {
37
+ return { action: 'skipped' };
38
+ }
39
+ let modified = existing;
40
+ // Inject startup section after the first # heading line
41
+ if (!hasSearch) {
42
+ const headingMatch = modified.match(/^# .+$/m);
43
+ if (headingMatch && headingMatch.index !== undefined) {
44
+ const insertAt = headingMatch.index + headingMatch[0].length;
45
+ modified = modified.slice(0, insertAt) + '\n\n' + STARTUP_SECTION + '\n' + modified.slice(insertAt);
46
+ }
47
+ else {
48
+ modified = STARTUP_SECTION + '\n\n' + modified;
49
+ }
50
+ }
51
+ // Append end section
52
+ if (!hasSync) {
53
+ modified = modified.trimEnd() + '\n\n' + END_SECTION + '\n';
54
+ }
55
+ fs.writeFileSync(claudeMdPath, modified, 'utf-8');
56
+ return { action: 'injected' };
57
+ }
58
+ //# sourceMappingURL=claude-md.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-md.js","sourceRoot":"","sources":["../src/claude-md.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,MAAM,eAAe,GAAG;;;;;;;;;;;;;UAad,CAAC;AAEX,MAAM,WAAW,GAAG;;;;;;;;8EAQ0D,CAAC;AAE/E,MAAM,UAAU,iBAAiB,CAC/B,WAAmB;IAEnB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAEzD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,gBAAgB,eAAe,OAAO,WAAW,IAAI,CAAC;QACtE,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACjD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAC/B,CAAC;IAED,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IAElD,IAAI,SAAS,IAAI,OAAO,EAAE,CAAC;QACzB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAC/B,CAAC;IAED,IAAI,QAAQ,GAAG,QAAQ,CAAC;IAExB,wDAAwD;IACxD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,YAAY,IAAI,YAAY,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YACrD,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAC7D,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,MAAM,GAAG,eAAe,GAAG,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACtG,CAAC;aAAM,CAAC;YACN,QAAQ,GAAG,eAAe,GAAG,MAAM,GAAG,QAAQ,CAAC;QACjD,CAAC;IACH,CAAC;IAED,qBAAqB;IACrB,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,QAAQ,GAAG,QAAQ,CAAC,OAAO,EAAE,GAAG,MAAM,GAAG,WAAW,GAAG,IAAI,CAAC;IAC9D,CAAC;IAED,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAClD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;AAChC,CAAC"}
@@ -0,0 +1,18 @@
1
+ export interface InjectResult {
2
+ /** Which hooks were configured */
3
+ actions: string[];
4
+ /** Per-hook status */
5
+ details: {
6
+ claudeSettings?: 'created' | 'merged' | 'already_exists';
7
+ postCommit?: 'created' | 'already_exists' | 'not_hooky_project';
8
+ };
9
+ }
10
+ /**
11
+ * Inject MemGrid sync hooks into the project.
12
+ *
13
+ * Two hooks:
14
+ * 1. .claude/settings.json → PostCompletion: auto-sync after Claude finishes a task
15
+ * 2. .git/hooks/post-commit → auto-sync after git commit (covers non-Claude changes)
16
+ */
17
+ export declare function injectHooks(projectRoot: string): InjectResult;
18
+ //# sourceMappingURL=hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"AAwBA,MAAM,WAAW,YAAY;IAC3B,kCAAkC;IAClC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,sBAAsB;IACtB,OAAO,EAAE;QACP,cAAc,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,gBAAgB,CAAC;QACzD,UAAU,CAAC,EAAE,SAAS,GAAG,gBAAgB,GAAG,mBAAmB,CAAC;KACjE,CAAC;CACH;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,YAAY,CAqB7D"}
package/dist/hooks.js ADDED
@@ -0,0 +1,138 @@
1
+ import * as fs from 'fs';
2
+ import * as path from 'path';
3
+ /**
4
+ * Inject MemGrid sync hooks into the project.
5
+ *
6
+ * Two hooks:
7
+ * 1. .claude/settings.json → PostCompletion: auto-sync after Claude finishes a task
8
+ * 2. .git/hooks/post-commit → auto-sync after git commit (covers non-Claude changes)
9
+ */
10
+ export function injectHooks(projectRoot) {
11
+ const result = {
12
+ actions: [],
13
+ details: {},
14
+ };
15
+ // 1. Claude PostCompletion hook
16
+ const claudeResult = injectClaudeHook(projectRoot);
17
+ result.details.claudeSettings = claudeResult;
18
+ if (claudeResult !== 'already_exists') {
19
+ result.actions.push('claude-post-completion');
20
+ }
21
+ // 2. Git post-commit hook
22
+ const gitResult = injectGitHook(projectRoot);
23
+ result.details.postCommit = gitResult;
24
+ if (gitResult === 'created') {
25
+ result.actions.push('git-post-commit');
26
+ }
27
+ return result;
28
+ }
29
+ /**
30
+ * Inject PostCompletion hook into .claude/settings.json.
31
+ * Non-destructive: merges with existing config.
32
+ */
33
+ function injectClaudeHook(projectRoot) {
34
+ const settingsPath = path.join(projectRoot, '.claude', 'settings.json');
35
+ // Existing settings?
36
+ if (fs.existsSync(settingsPath)) {
37
+ try {
38
+ const existing = JSON.parse(fs.readFileSync(settingsPath, 'utf-8'));
39
+ // Already has PostCompletion with memgrid sync?
40
+ if (existing.hooks?.PostCompletion?.some((h) => h.hooks.some((hook) => hook.command.includes('memgrid sync')))) {
41
+ return 'already_exists';
42
+ }
43
+ // Merge: add PostCompletion hook
44
+ if (!existing.hooks)
45
+ existing.hooks = {};
46
+ if (!existing.hooks.PostCompletion)
47
+ existing.hooks.PostCompletion = [];
48
+ existing.hooks.PostCompletion.push({
49
+ hooks: [
50
+ {
51
+ type: 'command',
52
+ command: 'npx memgrid sync --quiet 2>/dev/null || echo "memgrid sync skipped (memgrid not installed)"',
53
+ },
54
+ ],
55
+ });
56
+ fs.writeFileSync(settingsPath, JSON.stringify(existing, null, 2) + '\n', 'utf-8');
57
+ return 'merged';
58
+ }
59
+ catch {
60
+ // Invalid JSON — skip
61
+ return 'already_exists';
62
+ }
63
+ }
64
+ // Create fresh .claude/settings.json
65
+ const dir = path.dirname(settingsPath);
66
+ if (!fs.existsSync(dir))
67
+ fs.mkdirSync(dir, { recursive: true });
68
+ const settings = {
69
+ $schema: 'https://json.schemastore.org/claude-code-settings.json',
70
+ hooks: {
71
+ PostCompletion: [
72
+ {
73
+ hooks: [
74
+ {
75
+ type: 'command',
76
+ command: 'npx memgrid sync 2>/dev/null || echo "⚠️ memgrid sync failed — run memgrid init to set up"',
77
+ },
78
+ ],
79
+ },
80
+ ],
81
+ },
82
+ };
83
+ fs.writeFileSync(settingsPath, JSON.stringify(settings, null, 2) + '\n', 'utf-8');
84
+ return 'created';
85
+ }
86
+ /**
87
+ * Inject post-commit hook for non-Claude changes (git commit by human or other tools).
88
+ *
89
+ * Creates .git/hooks/post-commit if it doesn't exist.
90
+ * If husky is detected, creates .husky/post-commit instead.
91
+ */
92
+ function injectGitHook(projectRoot) {
93
+ const huskyDir = path.join(projectRoot, '.husky');
94
+ const gitHookPath = path.join(projectRoot, '.git', 'hooks', 'post-commit');
95
+ // Check husky first
96
+ if (fs.existsSync(huskyDir)) {
97
+ const huskyHookPath = path.join(huskyDir, 'post-commit');
98
+ if (fs.existsSync(huskyHookPath)) {
99
+ return 'already_exists';
100
+ }
101
+ try {
102
+ const hookContent = [
103
+ '#!/usr/bin/env sh',
104
+ '',
105
+ '# MemGrid: auto-sync memory grid after commit',
106
+ 'npx memgrid sync --quiet 2>/dev/null || true',
107
+ '',
108
+ ].join('\n');
109
+ fs.writeFileSync(huskyHookPath, hookContent, { mode: 0o755 });
110
+ return 'created';
111
+ }
112
+ catch {
113
+ return 'not_hooky_project';
114
+ }
115
+ }
116
+ // Fallback: native git hook
117
+ const hooksDir = path.dirname(gitHookPath);
118
+ if (!fs.existsSync(hooksDir))
119
+ return 'not_hooky_project';
120
+ if (fs.existsSync(gitHookPath)) {
121
+ return 'already_exists';
122
+ }
123
+ try {
124
+ const hookContent = [
125
+ '#!/bin/sh',
126
+ '',
127
+ '# MemGrid: auto-sync memory grid after commit',
128
+ 'npx memgrid sync --quiet 2>/dev/null || true',
129
+ '',
130
+ ].join('\n');
131
+ fs.writeFileSync(gitHookPath, hookContent, { mode: 0o755 });
132
+ return 'created';
133
+ }
134
+ catch {
135
+ return 'not_hooky_project';
136
+ }
137
+ }
138
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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"}
package/dist/serve/cli.js CHANGED
@@ -3,11 +3,12 @@ import { Command } from 'commander';
3
3
  import { MemGrid } from '../memgrid.js';
4
4
  import { TypeScriptScanner, JavaScriptScanner, PythonScanner, GoScanner, RustScanner, MarkdownScanner, RulesScanner, ConfigScanner, } from '../scanner/index.js';
5
5
  import { startMCPServer } from './mcp-server.js';
6
+ import { injectHooks } from '../hooks.js';
6
7
  const program = new Command();
7
8
  program
8
9
  .name('memgrid')
9
10
  .description('Project-level semantic memory for AI coding agents')
10
- .version('0.5.1');
11
+ .version('0.5.2');
11
12
  program
12
13
  .command('init')
13
14
  .description('Scan project and generate initial memory grid')
@@ -52,6 +53,19 @@ program
52
53
  }
53
54
  console.log(`\nTotal: ${stats.totalUnits} units`);
54
55
  console.log(`Storage: .claude/memory-grid/`);
56
+ // Auto-configure memory sync hooks
57
+ const hookResult = injectHooks(root);
58
+ if (hookResult.actions.length > 0) {
59
+ console.log('\n🔗 Auto-sync hooks:');
60
+ if (hookResult.actions.includes('claude-post-completion')) {
61
+ const status = hookResult.details.claudeSettings === 'created' ? 'created' : 'merged';
62
+ console.log(` .claude/settings.json: ${status} PostCompletion hook`);
63
+ }
64
+ if (hookResult.actions.includes('git-post-commit')) {
65
+ console.log(' post-commit hook: created');
66
+ }
67
+ console.log('\n ✅ Memory grid will auto-sync on task completion & git commit');
68
+ }
55
69
  });
56
70
  program
57
71
  .command('sync')
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/serve/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/serve/cli.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "memgrid",
3
- "version": "0.5.1",
3
+ "version": "0.5.2",
4
4
  "description": "Project-level semantic memory system for AI coding agents. Replaces full-codebase context loading with a self-evolving knowledge-mesh.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",