claude-recall 0.3.3 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,8 @@
1
1
  {
2
2
  "permissions": {
3
3
  "allow": [
4
- "Bash(npm view:*)"
4
+ "Bash(npm view:*)",
5
+ "mcp__perplexity-mcp__search"
5
6
  ],
6
7
  "deny": [],
7
8
  "ask": []
@@ -0,0 +1,208 @@
1
+ ---
2
+ name: "claude-recall-memory-management"
3
+ description: "Automatic memory capture and retrieval for Claude Recall MCP - ensures you never repeat yourself"
4
+ allowed-tools: "mcp__claude-recall__*"
5
+ version: "0.5.0"
6
+ priority: "highest"
7
+ license: "MIT"
8
+ ---
9
+
10
+ # Claude Recall Memory Management
11
+
12
+ This Skill teaches Claude Code how to use Claude Recall's persistent memory system effectively. It ensures automatic capture of project context, devops workflows, and user preferences.
13
+
14
+ ## Core Principle: Never Repeat Yourself
15
+
16
+ **The user should NEVER have to repeat preferences or explain what worked/didn't work.**
17
+
18
+ ## Memory Types (Priority Order)
19
+
20
+ 1. **DevOps** (Priority 0 - HIGHEST) - Project-specific workflows
21
+ - Git conventions, testing approaches, build processes
22
+ - Development environment setup
23
+ - Architecture decisions, tech stack choices
24
+
25
+ 2. **Corrections** (Priority 1) - User explicitly fixed mistakes
26
+ - "No, do this instead" statements
27
+ - Overrides previous approaches
28
+
29
+ 3. **Preferences** (Priority 2) - User coding style, tool choices
30
+ - Code style, framework preferences
31
+ - File organization, naming conventions
32
+
33
+ 4. **Success/Failure** (Priority 3) - What worked and what didn't
34
+ - Successful implementations to repeat
35
+ - Failed approaches to avoid
36
+
37
+ ## When to Search Memories (BEFORE ANY TASK)
38
+
39
+ **CRITICAL**: Before file operations, decisions, or implementations, ALWAYS search memories:
40
+
41
+ ```
42
+ mcp__claude-recall__search("[task keywords] devops preferences success failure correction")
43
+ ```
44
+
45
+ ### Search Examples:
46
+
47
+ **Before creating authentication:**
48
+ ```
49
+ mcp__claude-recall__search("authentication devops testing git")
50
+ ```
51
+
52
+ **Before writing tests:**
53
+ ```
54
+ mcp__claude-recall__search("testing tdd location framework")
55
+ ```
56
+
57
+ **Before deployment tasks:**
58
+ ```
59
+ mcp__claude-recall__search("deploy build docker git workflow")
60
+ ```
61
+
62
+ ### What Search Finds Automatically:
63
+
64
+ - **DevOps workflows**: Git branching, testing rules, deployment steps
65
+ - **Preferences**: User's stated coding style, tool choices
66
+ - **Successes**: Past approaches that worked well
67
+ - **Failures**: Past approaches that failed (avoid these!)
68
+ - **Corrections**: User fixes (HIGHEST PRIORITY - user explicitly said "no, do this")
69
+
70
+ ## When to Store Memories
71
+
72
+ ### Automatic Capture (v0.5.0+)
73
+
74
+ Claude Recall now **automatically captures** these patterns:
75
+
76
+ **DevOps Patterns** (Priority 0 - captured automatically):
77
+ - ✅ "This is a [project type]" → Project purpose
78
+ - ✅ "Built with [tech stack]" → Tech stack
79
+ - ✅ "We develop on [environment]" → Dev environment
80
+ - ✅ "Always [X] before [Y]" → Workflow rules
81
+ - ✅ "Use [X] for [Y]" → Tool choices
82
+ - ✅ "Tests go in [location]" → Testing conventions
83
+ - ✅ "Follow TDD" → Development approach
84
+
85
+ **Project Info** (captured automatically):
86
+ - ✅ "Tenant ID is X" → Configuration
87
+ - ✅ "API endpoint: X" → Endpoints
88
+ - ✅ "Our database is X" → Infrastructure
89
+
90
+ **Preferences** (captured automatically):
91
+ - ✅ "I prefer TypeScript" → Language preference
92
+ - ✅ "Always use Jest" → Tool preference
93
+ - ✅ "Never use semicolons" → Code style
94
+
95
+ ### Manual Storage Required For:
96
+
97
+ Use `mcp__claude-recall__store_memory` for:
98
+
99
+ **Complex multi-step workflows:**
100
+ ```
101
+ mcp__claude-recall__store_memory({
102
+ content: "Deployment process: 1) Run tests 2) Build Docker 3) Push to ECR 4) Update k8s",
103
+ metadata: { type: "devops", category: "deployment" }
104
+ })
105
+ ```
106
+
107
+ **Lessons learned from failures:**
108
+ ```
109
+ mcp__claude-recall__store_memory({
110
+ content: "Session-based auth failed in production due to distributed sessions - use JWT instead",
111
+ metadata: { type: "failure", lesson: "use_stateless_auth" }
112
+ })
113
+ ```
114
+
115
+ **User corrections to your work:**
116
+ ```
117
+ mcp__claude-recall__store_memory({
118
+ content: "CORRECTION: Tests go in __tests__/ not tests/",
119
+ metadata: { type: "correction", priority: "highest" }
120
+ })
121
+ ```
122
+
123
+ ## Check What's Captured
124
+
125
+ To see what memories have been automatically captured:
126
+
127
+ ```
128
+ mcp__claude-recall__get_recent_captures({ limit: 10 })
129
+ ```
130
+
131
+ This helps you verify that important project context was stored.
132
+
133
+ ## Example Workflow
134
+
135
+ ### First Time (User States Preference)
136
+
137
+ ```
138
+ User: "I prefer Python for scripts"
139
+ [Auto-captured as preference]
140
+
141
+ User: "We use TDD for all new features"
142
+ [Auto-captured as devops workflow_rule, priority 0]
143
+
144
+ User: "This is a teleprompter tool for interviews"
145
+ [Auto-captured as devops project_purpose, priority 0]
146
+ ```
147
+
148
+ ### Second Time (First Use)
149
+
150
+ ```
151
+ User: "Create a test script"
152
+
153
+ Step 1: Search memories
154
+ mcp__claude-recall__search("script test python")
155
+ Finds: "I prefer Python for scripts" + "We use TDD"
156
+
157
+ Step 2: Create test_script.py with TDD approach
158
+
159
+ Step 3: User approves → Store success
160
+ mcp__claude-recall__store_memory({
161
+ content: "Created test script with Python + TDD - SUCCESS",
162
+ metadata: { type: "success", task: "test_script" }
163
+ })
164
+ ```
165
+
166
+ ### Third Time (Automatic Application)
167
+
168
+ ```
169
+ User: "Create a build script"
170
+
171
+ Step 1: Search memories
172
+ mcp__claude-recall__search("script build python tdd")
173
+ Finds:
174
+ - "I prefer Python for scripts" (preference)
175
+ - "We use TDD" (devops)
176
+ - "Created test script with Python + TDD - SUCCESS" (validates approach)
177
+
178
+ Step 2: Create build.py with tests automatically
179
+ User doesn't have to repeat preferences! ✓
180
+ ```
181
+
182
+ ## Best Practices
183
+
184
+ 1. **Search broadly** - Include task type + language + workflow keywords
185
+ 2. **Trust the learning loop** - Automatic capture handles most cases
186
+ 3. **Store manually** for complex multi-step processes
187
+ 4. **Check captures** periodically with `get_recent_captures`
188
+ 5. **Correct immediately** - If output is wrong, tell me and it gets highest priority
189
+
190
+ ## Troubleshooting
191
+
192
+ **If memories aren't being found:**
193
+ 1. Check search query keywords - be broad
194
+ 2. Verify memory exists: `mcp__claude-recall__get_recent_captures`
195
+ 3. Search without type filters to see all results
196
+
197
+ **If automatic capture missed something:**
198
+ 1. Use manual storage for that specific item
199
+ 2. The pattern may not have matched - broader trigger words help
200
+
201
+ **For more examples:**
202
+ - Load `references/devops-patterns.md` for DevOps memory examples
203
+ - Load `references/capture-examples.md` for manual storage templates
204
+ - Load `references/troubleshooting.md` for common issues
205
+
206
+ ---
207
+
208
+ **Remember**: This Skill ensures the learning loop works automatically. Your job is to search memories BEFORE tasks and trust the automatic capture for most cases.
@@ -0,0 +1,305 @@
1
+ # Manual Memory Capture Examples
2
+
3
+ This document provides templates for manually storing memories when automatic capture isn't sufficient.
4
+
5
+ ## When to Use Manual Storage
6
+
7
+ Use `mcp__claude-recall__store_memory` when:
8
+ - Complex multi-step workflows need to be documented
9
+ - Lessons learned from failures
10
+ - User corrects your work
11
+ - Nuanced context that patterns might miss
12
+
13
+ ## Success Examples
14
+
15
+ ### Basic Success
16
+ ```javascript
17
+ mcp__claude-recall__store_memory({
18
+ content: "Created authentication with JWT tokens - SUCCESS",
19
+ metadata: { type: "success", task: "authentication" }
20
+ })
21
+ ```
22
+
23
+ ### Success with Context
24
+ ```javascript
25
+ mcp__claude-recall__store_memory({
26
+ content: "Implemented push-to-talk with pyaudio instead of continuous VAD - SUCCESS. Much better performance and user control.",
27
+ metadata: {
28
+ type: "success",
29
+ task: "audio_capture",
30
+ improvement: "performance + ux"
31
+ }
32
+ })
33
+ ```
34
+
35
+ ### Success with Technical Details
36
+ ```javascript
37
+ mcp__claude-recall__store_memory({
38
+ content: "Fixed memory leak by moving PyAudio initialization outside the loop - SUCCESS. Memory usage dropped from 500MB to 50MB.",
39
+ metadata: {
40
+ type: "success",
41
+ task: "performance",
42
+ metric: "10x memory reduction"
43
+ }
44
+ })
45
+ ```
46
+
47
+ ## Failure Examples
48
+
49
+ ### Basic Failure
50
+ ```javascript
51
+ mcp__claude-recall__store_memory({
52
+ content: "Session-based authentication failed in distributed environment - use stateless JWT instead",
53
+ metadata: { type: "failure", avoid: "session_auth_distributed" }
54
+ })
55
+ ```
56
+
57
+ ### Failure with Root Cause
58
+ ```javascript
59
+ mcp__claude-recall__store_memory({
60
+ content: "Continuous VAD approach failed - too CPU intensive, poor UX. Root cause: processing audio every frame. Solution: Use push-to-talk instead.",
61
+ metadata: {
62
+ type: "failure",
63
+ root_cause: "continuous_processing",
64
+ solution: "push_to_talk"
65
+ }
66
+ })
67
+ ```
68
+
69
+ ### Failure with Lesson Learned
70
+ ```javascript
71
+ mcp__claude-recall__store_memory({
72
+ content: "Tried mock audio files for testing but they don't match real mic behavior. Lesson: Need actual microphone for audio tests, can't fully mock.",
73
+ metadata: {
74
+ type: "failure",
75
+ lesson: "use_real_hardware_for_audio_tests"
76
+ }
77
+ })
78
+ ```
79
+
80
+ ## Correction Examples
81
+
82
+ ### Basic Correction
83
+ ```javascript
84
+ mcp__claude-recall__store_memory({
85
+ content: "CORRECTION: Tests go in __tests__/ directory, not tests/",
86
+ metadata: { type: "correction", priority: "highest" }
87
+ })
88
+ ```
89
+
90
+ ### Correction with Rationale
91
+ ```javascript
92
+ mcp__claude-recall__store_memory({
93
+ content: "CORRECTION: Use 4 spaces for indentation, not tabs. Reason: Project convention for Python files.",
94
+ metadata: {
95
+ type: "correction",
96
+ priority: "highest",
97
+ language: "python"
98
+ }
99
+ })
100
+ ```
101
+
102
+ ### Correction Overriding Previous Approach
103
+ ```javascript
104
+ mcp__claude-recall__store_memory({
105
+ content: "CORRECTION: Don't use Docker for local development, use virtual environment instead. Docker adds unnecessary complexity for this project.",
106
+ metadata: {
107
+ type: "correction",
108
+ priority: "highest",
109
+ overrides: "docker_local_dev"
110
+ }
111
+ })
112
+ ```
113
+
114
+ ## DevOps Workflow Examples
115
+
116
+ ### Deployment Process
117
+ ```javascript
118
+ mcp__claude-recall__store_memory({
119
+ content: `Deployment workflow:
120
+ 1. Create feature branch from main
121
+ 2. Run tests locally: npm test
122
+ 3. Create PR with conventional commit message
123
+ 4. Wait for CI (lint + test + build)
124
+ 5. Get 2 code review approvals
125
+ 6. Squash merge to main
126
+ 7. GitHub Actions auto-deploys to staging
127
+ 8. QA approval required for production
128
+ 9. Promote to prod: kubectl apply -f k8s/prod/`,
129
+ metadata: {
130
+ type: "devops",
131
+ category: "deployment",
132
+ steps: 9,
133
+ tools: ["github-actions", "kubernetes"]
134
+ }
135
+ })
136
+ ```
137
+
138
+ ### Testing Strategy
139
+ ```javascript
140
+ mcp__claude-recall__store_memory({
141
+ content: `Testing strategy:
142
+ - Unit tests: Jest, 80% coverage minimum
143
+ - Integration tests: Supertest for API
144
+ - E2E tests: Playwright for UI
145
+ - Run order: unit → integration → e2e
146
+ - CI runs all, but devs can run unit tests locally`,
147
+ metadata: {
148
+ type: "devops",
149
+ category: "testing_strategy",
150
+ tools: ["jest", "supertest", "playwright"]
151
+ }
152
+ })
153
+ ```
154
+
155
+ ### Git Branching Strategy
156
+ ```javascript
157
+ mcp__claude-recall__store_memory({
158
+ content: `Git workflow (GitFlow variant):
159
+ - main: production-ready code
160
+ - develop: integration branch
161
+ - feature/*: new features (from develop)
162
+ - bugfix/*: bug fixes (from develop)
163
+ - hotfix/*: emergency production fixes (from main)
164
+ - Merge: feature → develop → main
165
+ - Release: tag main with semver`,
166
+ metadata: {
167
+ type: "devops",
168
+ category: "git_workflow",
169
+ strategy: "gitflow"
170
+ }
171
+ })
172
+ ```
173
+
174
+ ## Project Knowledge Examples
175
+
176
+ ### API Configuration
177
+ ```javascript
178
+ mcp__claude-recall__store_memory({
179
+ content: "API configuration: Base URL https://api.example.com/v1, Auth header: Bearer token, Rate limit: 100 req/min",
180
+ metadata: {
181
+ type: "project-knowledge",
182
+ category: "api_config"
183
+ }
184
+ })
185
+ ```
186
+
187
+ ### Database Setup
188
+ ```javascript
189
+ mcp__claude-recall__store_memory({
190
+ content: "Database: PostgreSQL 15 on RDS. Connection pooling: 20 connections. Migrations: Alembic. Backup: Daily at 2 AM UTC.",
191
+ metadata: {
192
+ type: "project-knowledge",
193
+ category: "database"
194
+ }
195
+ })
196
+ ```
197
+
198
+ ### Environment Variables
199
+ ```javascript
200
+ mcp__claude-recall__store_memory({
201
+ content: `Required environment variables:
202
+ - DATABASE_URL: postgres connection string
203
+ - REDIS_URL: redis://localhost:6379
204
+ - JWT_SECRET: from 1Password
205
+ - AWS_REGION: us-east-1
206
+ - LOG_LEVEL: info (prod) or debug (dev)`,
207
+ metadata: {
208
+ type: "project-knowledge",
209
+ category: "env_vars"
210
+ }
211
+ })
212
+ ```
213
+
214
+ ## Complex Decision Examples
215
+
216
+ ### Architecture Decision
217
+ ```javascript
218
+ mcp__claude-recall__store_memory({
219
+ content: `Decided on microservices architecture:
220
+ - User Service: authentication, profiles
221
+ - Product Service: catalog, inventory
222
+ - Order Service: cart, checkout, payments
223
+ - Communication: Event bus (RabbitMQ)
224
+ - API Gateway: Kong
225
+ - Reason: Team scaling, independent deployment`,
226
+ metadata: {
227
+ type: "devops",
228
+ category: "architecture",
229
+ pattern: "microservices",
230
+ decision_date: "2025-01-15"
231
+ }
232
+ })
233
+ ```
234
+
235
+ ### Technology Choice
236
+ ```javascript
237
+ mcp__claude-recall__store_memory({
238
+ content: `Chose TypeScript over JavaScript:
239
+ - Type safety reduces runtime errors
240
+ - Better IDE support
241
+ - Easier refactoring
242
+ - Team already familiar
243
+ - Strict mode enabled for all files`,
244
+ metadata: {
245
+ type: "devops",
246
+ category: "tech_choice",
247
+ language: "typescript"
248
+ }
249
+ })
250
+ ```
251
+
252
+ ## Preference Override Examples
253
+
254
+ ### Updating Previous Preference
255
+ ```javascript
256
+ mcp__claude-recall__store_memory({
257
+ content: "FROM NOW ON: Use Vitest instead of Jest for new projects. Vitest is faster and has better ESM support.",
258
+ metadata: {
259
+ type: "preference",
260
+ category: "testing_framework",
261
+ overrides: "jest",
262
+ reason: "performance"
263
+ }
264
+ })
265
+ ```
266
+
267
+ ### Changing Workflow
268
+ ```javascript
269
+ mcp__claude-recall__store_memory({
270
+ content: "UPDATED WORKFLOW: Now we're using trunk-based development instead of GitFlow. Feature flags for incomplete features. Direct commits to main allowed with CI passing.",
271
+ metadata: {
272
+ type: "devops",
273
+ category: "git_workflow",
274
+ overrides: "gitflow",
275
+ change_date: "2025-01-15"
276
+ }
277
+ })
278
+ ```
279
+
280
+ ## Template for Any Memory
281
+
282
+ ```javascript
283
+ mcp__claude-recall__store_memory({
284
+ content: "[Clear, concise description of what you learned/decided]",
285
+ metadata: {
286
+ type: "[devops|preference|success|failure|correction|project-knowledge]",
287
+ category: "[specific category]",
288
+ // Optional fields:
289
+ priority: "[highest|high|medium|low]",
290
+ overrides: "[what this replaces]",
291
+ tools: ["tool1", "tool2"],
292
+ confidence: 0.85,
293
+ // Any other relevant context
294
+ }
295
+ })
296
+ ```
297
+
298
+ ## Best Practices
299
+
300
+ 1. **Be specific** - "Created auth with JWT" is better than "Made login work"
301
+ 2. **Include context** - Why did it work? What was the problem?
302
+ 3. **Add metadata** - Helps future searches find relevant memories
303
+ 4. **Use consistent types** - Stick to the standard types (devops, preference, etc.)
304
+ 5. **Override explicitly** - If changing previous decision, note what it overrides
305
+ 6. **Include tools/versions** - Helps when debugging version-specific issues