claude-recall 0.20.14 → 0.20.16

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.
@@ -12,10 +12,10 @@ Auto-generated from 5 memories. Last updated: 2026-04-10.
12
12
 
13
13
  ## Rules
14
14
 
15
- - Session test preference 1775821892450
16
- - Test preference 1775821892400-2
17
- - Test preference 1775821892400-1
18
- - Test preference 1775821892400-0
15
+ - Session test preference 1775841028541
16
+ - Test preference 1775841028479-2
17
+ - Test preference 1775841028479-1
18
+ - Test preference 1775841028479-0
19
19
  - Test memory content
20
20
 
21
21
  ---
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "topicId": "preferences",
3
- "sourceHash": "9b2ae714e4bdd82091b4fcc5347c2b1a8a2a10d3be57ca57877e943e380a5457",
3
+ "sourceHash": "ffe036415b05cb18e9c3e65a38a2e7dedbf02dfd5463c14a03184a9c93c75799",
4
4
  "memoryCount": 5,
5
- "generatedAt": "2026-04-10T11:51:32.469Z",
5
+ "generatedAt": "2026-04-10T17:10:28.567Z",
6
6
  "memoryKeys": [
7
- "memory_1775821892451_dzjdxx6ef",
8
- "memory_1775821892427_462vxb2gq",
9
- "memory_1775821892416_8taocju9a",
10
- "memory_1775821892402_3x8ksma5p",
11
- "memory_1775821892372_4khhv0wc2"
7
+ "memory_1775841028543_yc9163qfd",
8
+ "memory_1775841028515_8bjn9exsc",
9
+ "memory_1775841028500_gch5kvqxl",
10
+ "memory_1775841028480_n2evtiegj",
11
+ "memory_1775841028436_w06waet05"
12
12
  ]
13
13
  }
package/README.md CHANGED
@@ -142,17 +142,76 @@ action → outcome event → episode → candidate lesson → promotion → acti
142
142
 
143
143
  ## CLI Reference
144
144
 
145
- ### Common Commands
145
+ ### Health Check (run these first)
146
146
 
147
147
  ```bash
148
- claude-recall stats # Memory statistics
149
- claude-recall search "query" # Search memories
150
- claude-recall failures # View failure memories
151
- claude-recall outcomes # Outcome-aware learning status
152
- claude-recall outcomes --section lessons # Just candidate lessons
153
- claude-recall export backup.json # Export memories to JSON
154
- claude-recall import backup.json # Import memories from JSON
155
- claude-recall --version # Check version
148
+ claude-recall --version # Confirm installed version
149
+ claude-recall status # Installation health: hooks, MCP, DB path, project ID
150
+ claude-recall stats # What's in the DB for this project
151
+ claude-recall stats --global # What's in the DB across ALL projects
152
+ ```
153
+
154
+ ### Inspecting Memories
155
+
156
+ ```bash
157
+ claude-recall search "query" # Search current project's memories
158
+ claude-recall search "query" --global # Search across all projects
159
+ claude-recall search "query" --json # Machine-readable output
160
+ claude-recall search "query" --project <id> # Search a specific project
161
+
162
+ claude-recall failures # View failure memories (current project)
163
+ claude-recall failures --limit 20 # Show more
164
+
165
+ claude-recall outcomes # Outcome-aware learning status
166
+ claude-recall outcomes --section lessons # Just candidate lessons
167
+ claude-recall outcomes --section stats # Retrieval/helpfulness stats per memory
168
+ claude-recall outcomes --limit 20 # More items per section
169
+
170
+ claude-recall monitor # Memory search monitoring stats
171
+ ```
172
+
173
+ ### Managing Memories
174
+
175
+ ```bash
176
+ claude-recall store "content" # Store a memory (default type: preference)
177
+ claude-recall store "content" -t correction # Store with specific type
178
+ claude-recall export backup.json # Export all memories to JSON
179
+ claude-recall import backup.json # Import memories from JSON
180
+ claude-recall clear --force # Delete all memories (irreversible)
181
+ ```
182
+
183
+ ### Troubleshooting
184
+
185
+ ```bash
186
+ # "Are my hooks installed?"
187
+ claude-recall status # Shows hook registration status
188
+ claude-recall hooks check # Verify hook files exist and are valid
189
+
190
+ # "Is the MCP server running?"
191
+ claude-recall mcp status # Current project's server status
192
+ claude-recall mcp ps # List all running servers
193
+
194
+ # "Which project does this directory map to?"
195
+ claude-recall project show # Shows project ID for current directory
196
+ claude-recall project list # All registered projects
197
+
198
+ # "Why do I see memories from other projects?"
199
+ claude-recall search "query" # Scoped to current project (default)
200
+ claude-recall search "query" --global # Explicitly cross-project
201
+
202
+ # "How do I check what the DB actually contains?"
203
+ sqlite3 ~/.claude-recall/claude-recall.db "SELECT type, COUNT(*) FROM memories GROUP BY type"
204
+ sqlite3 ~/.claude-recall/claude-recall.db "SELECT type, COUNT(*) FROM memories WHERE project_id = '<id>' GROUP BY type"
205
+
206
+ # "Hook logs — what did the hooks actually do?"
207
+ tail -20 ~/.claude-recall/hook-logs/tool-outcome-watcher.log
208
+ tail -20 ~/.claude-recall/hook-logs/memory-stop.log
209
+ tail -20 ~/.claude-recall/hook-logs/correction-detector.log
210
+
211
+ # "Something is broken, start fresh"
212
+ claude-recall repair # Clean up old hooks, reinstall skills
213
+ claude-recall setup --install # Reinstall skills + hooks
214
+ claude-recall mcp cleanup --all # Stop all stale MCP servers
156
215
  ```
157
216
 
158
217
  <details>
@@ -164,11 +223,18 @@ claude-recall setup # Show activation instructions
164
223
  claude-recall setup --install # Install skills + hooks
165
224
  claude-recall status # Installation and system status
166
225
  claude-recall repair # Clean up old hooks, install skills
226
+ claude-recall hooks check # Verify hook files exist and are valid
227
+ claude-recall hooks test-enforcement # Test if search enforcer hook works
167
228
 
168
229
  # ── Memory ───────────────────────────────────────────────────────────
169
- claude-recall stats # Memory statistics
170
- claude-recall search "query" # Search memories
230
+ claude-recall stats # Memory statistics (current project)
231
+ claude-recall stats --global # Memory statistics (all projects)
232
+ claude-recall search "query" # Search memories (current project)
233
+ claude-recall search "query" --global # Search memories (all projects)
234
+ claude-recall search "query" --json # Output as JSON
235
+ claude-recall search "query" --project <id> # Search specific project
171
236
  claude-recall store "content" # Store memory directly
237
+ claude-recall store "content" -t <type> # Store with type (preference, correction, failure, devops, project-knowledge)
172
238
  claude-recall export backup.json # Export memories to JSON
173
239
  claude-recall import backup.json # Import memories from JSON
174
240
  claude-recall clear --force # Clear all memories
@@ -176,6 +242,7 @@ claude-recall failures # View failure memories
176
242
  claude-recall failures --limit 20 # Limit results
177
243
  claude-recall outcomes # Outcome-aware learning status
178
244
  claude-recall outcomes --section lessons # Just candidate lessons
245
+ claude-recall outcomes --section stats # Retrieval/helpfulness stats
179
246
  claude-recall outcomes --limit 20 # More items per section
180
247
  claude-recall monitor # Memory search monitoring stats
181
248
 
@@ -199,8 +266,16 @@ claude-recall mcp cleanup --all # Stop all servers
199
266
  claude-recall project show # Current project info
200
267
  claude-recall project list # All registered projects
201
268
  claude-recall project register # Register current project
269
+ claude-recall project unregister [id] # Unregister a project
202
270
  claude-recall project clean # Remove stale registry entries
203
271
 
272
+ # ── Database Migration ──────────────────────────────────────────────
273
+ claude-recall migrate check # Check if migration needed
274
+ claude-recall migrate schema # Show current schema version
275
+ claude-recall migrate export # Export pre-migration backup
276
+ claude-recall migrate import # Import from backup
277
+ claude-recall migrate complete # Run pending migrations
278
+
204
279
  # ── Auto-Capture Hooks (run automatically, registered via setup --install) ──
205
280
  claude-recall hook run correction-detector # UserPromptSubmit hook
206
281
  claude-recall hook run memory-stop # Stop hook
@@ -40,6 +40,7 @@ const logging_1 = require("../services/logging");
40
40
  const commander_1 = require("commander");
41
41
  const fs = __importStar(require("fs"));
42
42
  const path = __importStar(require("path"));
43
+ const os = __importStar(require("os"));
43
44
  const pattern_service_1 = require("../services/pattern-service");
44
45
  const migrate_1 = require("./commands/migrate");
45
46
  const server_1 = require("../mcp/server");
@@ -504,11 +505,51 @@ class ClaudeRecallCLI {
504
505
  */
505
506
  async status() {
506
507
  console.log('\n🔍 Claude Recall Status\n');
507
- // MCP Server status
508
- console.log('MCP Server:');
509
- console.log(' Mode: Model Context Protocol (MCP)');
510
- console.log(' Status: Ready for integration');
511
- console.log(' Command: claude mcp add claude-recall claude-recall mcp start');
508
+ // Detect integration context
509
+ const hasPi = fs.existsSync(path.join(os.homedir(), '.pi'));
510
+ const claudeJsonPath = path.join(os.homedir(), '.claude.json');
511
+ let hasMcpRegistered = false;
512
+ if (fs.existsSync(claudeJsonPath)) {
513
+ try {
514
+ const claudeJson = JSON.parse(fs.readFileSync(claudeJsonPath, 'utf-8'));
515
+ const servers = claudeJson.mcpServers || {};
516
+ hasMcpRegistered = Object.keys(servers).some(k => k.includes('claude-recall') || k.includes('claude_recall'));
517
+ }
518
+ catch { /* ignore parse errors */ }
519
+ }
520
+ // Show integration status per agent
521
+ if (hasPi) {
522
+ console.log('Pi Extension:');
523
+ try {
524
+ const { execSync } = require('child_process');
525
+ const piList = execSync('pi list 2>/dev/null', { encoding: 'utf-8' });
526
+ if (piList.includes('claude-recall')) {
527
+ console.log(' Status: Installed ✅');
528
+ }
529
+ else {
530
+ console.log(' Status: Not installed');
531
+ console.log(' Install: pi install npm:claude-recall');
532
+ }
533
+ }
534
+ catch {
535
+ console.log(' Status: Pi detected but could not verify installation');
536
+ console.log(' Install: pi install npm:claude-recall');
537
+ }
538
+ }
539
+ if (hasMcpRegistered) {
540
+ console.log('Claude Code MCP:');
541
+ console.log(' Status: Registered ✅');
542
+ }
543
+ else if (!hasPi) {
544
+ console.log('Claude Code MCP:');
545
+ console.log(' Status: Not registered');
546
+ console.log(' Command: claude mcp add claude-recall claude-recall mcp start');
547
+ }
548
+ else {
549
+ // Pi is present; show Claude Code MCP as optional
550
+ console.log('Claude Code MCP:');
551
+ console.log(' Status: Not registered (optional — Pi extension handles integration)');
552
+ }
512
553
  // Database status
513
554
  const configService = config_1.ConfigService.getInstance();
514
555
  const dbPath = configService.getDatabasePath();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-recall",
3
- "version": "0.20.14",
3
+ "version": "0.20.16",
4
4
  "description": "Persistent memory for Claude Code and Pi with native Skills integration, automatic capture, failure learning, and project scoping",
5
5
  "main": "dist/index.js",
6
6
  "bin": {