@rembr/vscode 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +91 -0
- package/LICENSE +21 -0
- package/README.md +248 -0
- package/cli.js +56 -0
- package/package.json +62 -0
- package/postinstall.js +30 -0
- package/setup.js +303 -0
- package/templates/aider.conf.yml +52 -0
- package/templates/copilot-instructions.md +49 -0
- package/templates/cursorrules +141 -0
- package/templates/recursive-analyst.agent.md +285 -0
- package/templates/rlm-benchmarks.md +172 -0
- package/templates/rlm-getting-started.md +297 -0
- package/templates/rlm-helper.js +267 -0
- package/templates/vscode-mcp-settings.json +14 -0
- package/templates/windsurfrules +141 -0
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
# REMBR - Recursive Language Model with Semantic Memory
|
|
2
|
+
|
|
3
|
+
You have access to REMBR, a semantic memory system via MCP tools. Use it to implement the Recursive Language Model (RLM) pattern for complex tasks.
|
|
4
|
+
|
|
5
|
+
## Core Principles
|
|
6
|
+
|
|
7
|
+
1. **Never work with more context than necessary** - Query REMBR for only relevant prior knowledge
|
|
8
|
+
2. **Break down complex tasks** - Spawn focused subtasks with targeted context
|
|
9
|
+
3. **Store findings persistently** - Save discoveries to REMBR for future sessions
|
|
10
|
+
4. **Coordinate through structured returns** - Each subtask returns a standard result format
|
|
11
|
+
|
|
12
|
+
## Available REMBR Tools (via MCP)
|
|
13
|
+
|
|
14
|
+
### Memory Management
|
|
15
|
+
- `store_memory` - Store insights, facts, preferences, project info
|
|
16
|
+
- `search_memory` - Hybrid semantic + text search across memories
|
|
17
|
+
- `list_memories` - Browse recent memories by category
|
|
18
|
+
- `get_memory` - Retrieve specific memory by ID
|
|
19
|
+
- `delete_memory` - Remove outdated memories
|
|
20
|
+
|
|
21
|
+
### Context Workspaces
|
|
22
|
+
- `create_context` - Create workspace for related memories
|
|
23
|
+
- `add_memory_to_context` - Link memories to contexts
|
|
24
|
+
- `search_context` - Scoped search within a workspace
|
|
25
|
+
- `list_contexts` - View available workspaces
|
|
26
|
+
|
|
27
|
+
### Snapshots (for subtask handoffs)
|
|
28
|
+
- `create_snapshot` - Immutable memory bundle with TTL
|
|
29
|
+
- `get_snapshot` - Retrieve snapshot by ID
|
|
30
|
+
- `list_snapshots` - View available snapshots
|
|
31
|
+
|
|
32
|
+
### Insights
|
|
33
|
+
- `get_stats` - Usage and limits
|
|
34
|
+
- `get_context_insights` - Category distribution, patterns
|
|
35
|
+
- `get_memory_graph` - Memory relationships
|
|
36
|
+
- `detect_contradictions` - Find conflicting information
|
|
37
|
+
|
|
38
|
+
## Memory Categories
|
|
39
|
+
|
|
40
|
+
Organize memories semantically:
|
|
41
|
+
- **facts** - Concrete information and data
|
|
42
|
+
- **preferences** - User settings and choices
|
|
43
|
+
- **conversations** - Conversation context
|
|
44
|
+
- **projects** - Project-specific information
|
|
45
|
+
- **learning** - Knowledge and insights
|
|
46
|
+
- **goals** - Objectives and targets
|
|
47
|
+
- **context** - Situational context
|
|
48
|
+
- **reminders** - Future actions
|
|
49
|
+
|
|
50
|
+
## RLM Pattern: Parent-Subtask Protocol
|
|
51
|
+
|
|
52
|
+
### Before Decomposing
|
|
53
|
+
|
|
54
|
+
1. Generate unique `taskId` (e.g., `implement-auth-20240106`)
|
|
55
|
+
2. Query REMBR for relevant prior context:
|
|
56
|
+
```
|
|
57
|
+
search_memory({ query: "authentication patterns OAuth JWT", limit: 10 })
|
|
58
|
+
```
|
|
59
|
+
3. Identify subtasks and what context each needs
|
|
60
|
+
|
|
61
|
+
### When Creating Flows/Cascades
|
|
62
|
+
|
|
63
|
+
Provide each flow with:
|
|
64
|
+
```
|
|
65
|
+
## Objective
|
|
66
|
+
[Specific focused objective]
|
|
67
|
+
|
|
68
|
+
## Context from REMBR
|
|
69
|
+
[Relevant memories retrieved for this flow]
|
|
70
|
+
|
|
71
|
+
## Storage Instructions
|
|
72
|
+
Store findings with:
|
|
73
|
+
- Category: "facts"
|
|
74
|
+
- Metadata: { "taskId": "implement-auth-20240106", "area": "oauth-flow" }
|
|
75
|
+
|
|
76
|
+
## Return Format
|
|
77
|
+
- Summary: [What you found/did]
|
|
78
|
+
- Findings stored: [Search query to retrieve details]
|
|
79
|
+
- Key points: [Most important items]
|
|
80
|
+
- Status: [complete/partial/blocked]
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
### After Flows Complete
|
|
84
|
+
|
|
85
|
+
1. Read each flow's summary and key points
|
|
86
|
+
2. If full details needed, query REMBR:
|
|
87
|
+
```
|
|
88
|
+
search_memory({ query: "implement-auth-20240106 oauth-flow", category: "facts" })
|
|
89
|
+
```
|
|
90
|
+
3. Synthesize findings and store to REMBR for future sessions
|
|
91
|
+
|
|
92
|
+
## Example Usage
|
|
93
|
+
|
|
94
|
+
### Storing a Discovery
|
|
95
|
+
```
|
|
96
|
+
store_memory({
|
|
97
|
+
category: "facts",
|
|
98
|
+
content: "API uses rate limiting: 100 req/min per user via express-rate-limit + Redis",
|
|
99
|
+
metadata: {
|
|
100
|
+
taskId: "rate-limit-analysis",
|
|
101
|
+
area: "api-middleware",
|
|
102
|
+
file: "src/middleware/rateLimit.ts"
|
|
103
|
+
}
|
|
104
|
+
})
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
### Retrieving Context
|
|
108
|
+
```
|
|
109
|
+
search_memory({
|
|
110
|
+
query: "rate limiting middleware patterns",
|
|
111
|
+
category: "facts",
|
|
112
|
+
limit: 5
|
|
113
|
+
})
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
### Creating a Workspace
|
|
117
|
+
```
|
|
118
|
+
create_context({
|
|
119
|
+
name: "payment-service-refactor",
|
|
120
|
+
description: "Refactoring payment service to microservices",
|
|
121
|
+
category: "projects"
|
|
122
|
+
})
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
## When to Use REMBR
|
|
126
|
+
|
|
127
|
+
✅ **Do use** for:
|
|
128
|
+
- Storing architectural decisions
|
|
129
|
+
- Remembering project patterns and conventions
|
|
130
|
+
- Building knowledge across sessions
|
|
131
|
+
- Coordinating complex multi-step tasks (Cascade flows)
|
|
132
|
+
- Sharing context between flows
|
|
133
|
+
|
|
134
|
+
❌ **Don't use** for:
|
|
135
|
+
- Temporary variables or transient data
|
|
136
|
+
- Information already in the codebase
|
|
137
|
+
- Simple single-step tasks
|
|
138
|
+
|
|
139
|
+
## API Key Setup
|
|
140
|
+
|
|
141
|
+
Ensure `REMBR_API_KEY` is set in your Windsurf environment settings.
|