@grec0/memory-bank-mcp 0.0.6 → 0.1.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/README.md +387 -197
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Memory Bank MCP - Semantic Code Indexing
|
|
2
2
|
|
|
3
|
-
Servidor MCP (Model Context Protocol) para indexación semántica de código. Permite a agentes de IA como Claude mantener
|
|
3
|
+
Servidor MCP (Model Context Protocol) para indexación semántica de código. Permite a agentes de IA como Claude, Copilot, Cursor y otros mantener una "memoria persistente" de bases de código completas mediante embeddings vectoriales y búsqueda semántica.
|
|
4
4
|
|
|
5
5
|
## 🧠 ¿Qué es Memory Bank?
|
|
6
6
|
|
|
@@ -11,6 +11,7 @@ Servidor MCP (Model Context Protocol) para indexación semántica de código. Pe
|
|
|
11
11
|
- **Almacena** vectores en LanceDB para búsquedas ultrarrápidas
|
|
12
12
|
- **Busca** semánticamente: pregunta en lenguaje natural, obtén código relevante
|
|
13
13
|
- **Actualiza** incrementalmente: solo reindexa archivos modificados
|
|
14
|
+
- **Multi-proyecto**: consulta código de cualquier proyecto indexado desde cualquier workspace
|
|
14
15
|
|
|
15
16
|
### ¿Por qué lo necesitas?
|
|
16
17
|
|
|
@@ -25,6 +26,7 @@ Con Memory Bank, las IAs:
|
|
|
25
26
|
- ✅ Entienden arquitectura y patrones
|
|
26
27
|
- ✅ Responden con código real del proyecto
|
|
27
28
|
- ✅ Generan código consistente con tu estilo
|
|
29
|
+
- ✅ **Consultan múltiples proyectos** indexados simultáneamente
|
|
28
30
|
|
|
29
31
|
## 🚀 Características
|
|
30
32
|
|
|
@@ -36,6 +38,7 @@ Con Memory Bank, las IAs:
|
|
|
36
38
|
- **🎯 Filtros Avanzados**: Por archivo, lenguaje, tipo de chunk
|
|
37
39
|
- **📊 Estadísticas Detalladas**: Conoce el estado de tu índice en todo momento
|
|
38
40
|
- **🔒 Privacidad**: Vector store local, respeta .gitignore y .memoryignore
|
|
41
|
+
- **🔀 Multi-Proyecto**: Consulta cualquier proyecto indexado usando su `projectId`
|
|
39
42
|
|
|
40
43
|
### Project Knowledge Layer (Conocimiento Global) 🆕
|
|
41
44
|
- **📄 Documentación Automática**: Genera 6 documentos markdown estructurados del proyecto
|
|
@@ -43,16 +46,6 @@ Con Memory Bank, las IAs:
|
|
|
43
46
|
- **🔄 Actualización Inteligente**: Solo regenera documentos afectados por cambios
|
|
44
47
|
- **📚 Contexto Global**: Complementa búsqueda precisa con visión de alto nivel
|
|
45
48
|
|
|
46
|
-
Los documentos generados incluyen:
|
|
47
|
-
| Documento | Propósito |
|
|
48
|
-
|-----------|-----------|
|
|
49
|
-
| `projectBrief.md` | Descripción general del proyecto |
|
|
50
|
-
| `productContext.md` | Perspectiva de negocio y usuarios |
|
|
51
|
-
| `systemPatterns.md` | Patrones de arquitectura y diseño |
|
|
52
|
-
| `techContext.md` | Stack tecnológico y dependencias |
|
|
53
|
-
| `activeContext.md` | Estado actual de desarrollo |
|
|
54
|
-
| `progress.md` | Seguimiento de cambios |
|
|
55
|
-
|
|
56
49
|
## 📋 Requisitos
|
|
57
50
|
|
|
58
51
|
- **Node.js** >= 18.0.0
|
|
@@ -75,7 +68,7 @@ Para desarrollo o contribución:
|
|
|
75
68
|
|
|
76
69
|
```bash
|
|
77
70
|
# Clonar repositorio
|
|
78
|
-
git clone https://github.com/
|
|
71
|
+
git clone https://github.com/gcorroto/memory-bank-mcp.git
|
|
79
72
|
cd memory-bank-mcp
|
|
80
73
|
|
|
81
74
|
# Instalar dependencias
|
|
@@ -88,33 +81,85 @@ npm run build
|
|
|
88
81
|
npm run start
|
|
89
82
|
```
|
|
90
83
|
|
|
91
|
-
## ⚙️ Configuración
|
|
84
|
+
## ⚙️ Configuración Completa
|
|
92
85
|
|
|
93
86
|
### Variables de Entorno
|
|
94
87
|
|
|
95
|
-
|
|
88
|
+
Memory Bank se configura mediante variables de entorno. Puedes configurarlas en tu cliente MCP o en un archivo `.env`:
|
|
96
89
|
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
90
|
+
#### Variables Requeridas
|
|
91
|
+
|
|
92
|
+
| Variable | Descripción |
|
|
93
|
+
|----------|-------------|
|
|
94
|
+
| `OPENAI_API_KEY` | **REQUERIDO**. Tu API key de OpenAI |
|
|
95
|
+
|
|
96
|
+
#### Variables de Indexación
|
|
97
|
+
|
|
98
|
+
| Variable | Default | Descripción |
|
|
99
|
+
|----------|---------|-------------|
|
|
100
|
+
| `MEMORYBANK_STORAGE_PATH` | `.memorybank` | Directorio donde se almacena el índice vectorial |
|
|
101
|
+
| `MEMORYBANK_WORKSPACE_ROOT` | `process.cwd()` | Raíz del workspace (se auto-detecta normalmente) |
|
|
102
|
+
| `MEMORYBANK_EMBEDDING_MODEL` | `text-embedding-3-small` | Modelo de embeddings de OpenAI |
|
|
103
|
+
| `MEMORYBANK_EMBEDDING_DIMENSIONS` | `1536` | Dimensiones del vector (1536 o 512) |
|
|
104
|
+
| `MEMORYBANK_MAX_TOKENS` | `7500` | Tokens máximos por chunk (límite: 8192) |
|
|
105
|
+
| `MEMORYBANK_CHUNK_OVERLAP_TOKENS` | `200` | Solapamiento entre chunks para mantener contexto |
|
|
106
|
+
|
|
107
|
+
#### Variables del Project Knowledge Layer
|
|
108
|
+
|
|
109
|
+
| Variable | Default | Descripción |
|
|
110
|
+
|----------|---------|-------------|
|
|
111
|
+
| `MEMORYBANK_REASONING_MODEL` | `gpt-5-mini` | Modelo para generar documentación (soporta reasoning) |
|
|
112
|
+
| `MEMORYBANK_REASONING_EFFORT` | `medium` | Nivel de razonamiento: `low`, `medium`, `high` |
|
|
113
|
+
| `MEMORYBANK_AUTO_UPDATE_DOCS` | `false` | Auto-regenerar docs cuando se indexa código |
|
|
114
|
+
|
|
115
|
+
### Configuración en Cursor IDE
|
|
100
116
|
|
|
101
|
-
|
|
102
|
-
MEMORYBANK_STORAGE_PATH=.memorybank # Dónde almacenar el índice
|
|
103
|
-
MEMORYBANK_EMBEDDING_MODEL=text-embedding-3-small # Modelo de OpenAI
|
|
104
|
-
MEMORYBANK_EMBEDDING_DIMENSIONS=1536 # Dimensiones (1536 o 512)
|
|
105
|
-
MEMORYBANK_MAX_TOKENS=7500 # Tokens máx por chunk (límite: 8192)
|
|
106
|
-
MEMORYBANK_CHUNK_OVERLAP_TOKENS=200 # Overlap en tokens entre chunks
|
|
107
|
-
MEMORYBANK_WORKSPACE_ROOT=/path/to/project # Raíz del workspace
|
|
117
|
+
Edita tu archivo de configuración de MCP:
|
|
108
118
|
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
119
|
+
**Windows**: `%APPDATA%\Cursor\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json`
|
|
120
|
+
|
|
121
|
+
#### Configuración Mínima
|
|
122
|
+
|
|
123
|
+
```json
|
|
124
|
+
{
|
|
125
|
+
"mcpServers": {
|
|
126
|
+
"memory-bank-mcp": {
|
|
127
|
+
"type": "stdio",
|
|
128
|
+
"command": "npx",
|
|
129
|
+
"args": ["@grec0/memory-bank-mcp@latest"],
|
|
130
|
+
"env": {
|
|
131
|
+
"OPENAI_API_KEY": "sk-your-api-key-here"
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
}
|
|
113
136
|
```
|
|
114
137
|
|
|
115
|
-
|
|
138
|
+
#### Configuración Completa (Recomendada)
|
|
139
|
+
|
|
140
|
+
```json
|
|
141
|
+
{
|
|
142
|
+
"mcpServers": {
|
|
143
|
+
"memory-bank-mcp": {
|
|
144
|
+
"type": "stdio",
|
|
145
|
+
"command": "npx",
|
|
146
|
+
"args": ["@grec0/memory-bank-mcp@latest"],
|
|
147
|
+
"env": {
|
|
148
|
+
"OPENAI_API_KEY": "sk-your-api-key-here",
|
|
149
|
+
"MEMORYBANK_REASONING_MODEL": "gpt-5-mini",
|
|
150
|
+
"MEMORYBANK_REASONING_EFFORT": "medium",
|
|
151
|
+
"MEMORYBANK_AUTO_UPDATE_DOCS": "false",
|
|
152
|
+
"MEMORYBANK_MAX_TOKENS": "7500",
|
|
153
|
+
"MEMORYBANK_CHUNK_OVERLAP_TOKENS": "200",
|
|
154
|
+
"MEMORYBANK_EMBEDDING_MODEL": "text-embedding-3-small",
|
|
155
|
+
"MEMORYBANK_EMBEDDING_DIMENSIONS": "1536"
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
```
|
|
116
161
|
|
|
117
|
-
|
|
162
|
+
### Configuración en Claude Desktop
|
|
118
163
|
|
|
119
164
|
**Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
|
|
120
165
|
**macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
|
|
@@ -127,7 +172,9 @@ Edita tu archivo de configuración de Claude Desktop:
|
|
|
127
172
|
"command": "npx",
|
|
128
173
|
"args": ["@grec0/memory-bank-mcp@latest"],
|
|
129
174
|
"env": {
|
|
130
|
-
"OPENAI_API_KEY": "sk-your-api-key-here"
|
|
175
|
+
"OPENAI_API_KEY": "sk-your-api-key-here",
|
|
176
|
+
"MEMORYBANK_REASONING_MODEL": "gpt-5-mini",
|
|
177
|
+
"MEMORYBANK_REASONING_EFFORT": "medium"
|
|
131
178
|
}
|
|
132
179
|
}
|
|
133
180
|
}
|
|
@@ -151,6 +198,151 @@ Edita tu archivo de configuración de Claude Desktop:
|
|
|
151
198
|
}
|
|
152
199
|
```
|
|
153
200
|
|
|
201
|
+
---
|
|
202
|
+
|
|
203
|
+
## 📄 Sistema de Documentación del Proyecto (Project Knowledge Layer)
|
|
204
|
+
|
|
205
|
+
Memory Bank incluye un sistema inteligente de documentación que genera y mantiene conocimiento estructurado sobre tu proyecto usando IA con capacidades de razonamiento.
|
|
206
|
+
|
|
207
|
+
### ¿Cómo Funciona?
|
|
208
|
+
|
|
209
|
+
1. **Análisis del Código**: El sistema analiza el código indexado usando búsqueda semántica
|
|
210
|
+
2. **Generación con IA**: Usa modelos con razonamiento (gpt-5-mini) para generar documentación estructurada
|
|
211
|
+
3. **Actualización Incremental**: Solo regenera documentos afectados cuando hay cambios significativos
|
|
212
|
+
4. **Almacenamiento Persistente**: Los documentos se guardan en `.memorybank/projects/{projectId}/docs/`
|
|
213
|
+
|
|
214
|
+
### Documentos Generados
|
|
215
|
+
|
|
216
|
+
El sistema genera **6 documentos markdown** que proporcionan diferentes perspectivas del proyecto:
|
|
217
|
+
|
|
218
|
+
| Documento | Propósito | Contenido |
|
|
219
|
+
|-----------|-----------|-----------|
|
|
220
|
+
| `projectBrief.md` | **Descripción General** | Qué es el proyecto, su propósito principal, funcionalidades clave |
|
|
221
|
+
| `productContext.md` | **Perspectiva de Negocio** | Por qué existe, problemas que resuelve, usuarios objetivo, UX |
|
|
222
|
+
| `systemPatterns.md` | **Arquitectura y Patrones** | Estructura del código, patrones de diseño, decisiones técnicas |
|
|
223
|
+
| `techContext.md` | **Stack Tecnológico** | Tecnologías, dependencias, configuraciones, integraciones |
|
|
224
|
+
| `activeContext.md` | **Estado Actual** | En qué se está trabajando, cambios recientes, próximos pasos |
|
|
225
|
+
| `progress.md` | **Seguimiento** | Historial de cambios, qué funciona, qué falta, problemas conocidos |
|
|
226
|
+
|
|
227
|
+
### Herramientas de Documentación
|
|
228
|
+
|
|
229
|
+
#### `memorybank_generate_project_docs`
|
|
230
|
+
|
|
231
|
+
Genera o regenera la documentación del proyecto.
|
|
232
|
+
|
|
233
|
+
```json
|
|
234
|
+
{
|
|
235
|
+
"projectId": "my-project",
|
|
236
|
+
"force": false
|
|
237
|
+
}
|
|
238
|
+
```
|
|
239
|
+
|
|
240
|
+
- `projectId` **(REQUERIDO)**: ID del proyecto
|
|
241
|
+
- `force` (opcional): `true` para regenerar todo, `false` para actualizar incrementalmente
|
|
242
|
+
|
|
243
|
+
#### `memorybank_get_project_docs`
|
|
244
|
+
|
|
245
|
+
Lee la documentación generada.
|
|
246
|
+
|
|
247
|
+
```json
|
|
248
|
+
// Obtener resumen de todos los documentos
|
|
249
|
+
{
|
|
250
|
+
"projectId": "my-project",
|
|
251
|
+
"document": "summary"
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
// Obtener documento específico
|
|
255
|
+
{
|
|
256
|
+
"projectId": "my-project",
|
|
257
|
+
"document": "systemPatterns"
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
// Obtener todos los documentos completos
|
|
261
|
+
{
|
|
262
|
+
"projectId": "my-project",
|
|
263
|
+
"document": "all",
|
|
264
|
+
"format": "full"
|
|
265
|
+
}
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
### Flujo de Trabajo con Documentación
|
|
269
|
+
|
|
270
|
+
```
|
|
271
|
+
1. Indexar código
|
|
272
|
+
memorybank_index_code({ projectId: "my-project" })
|
|
273
|
+
|
|
274
|
+
2. Generar documentación
|
|
275
|
+
memorybank_generate_project_docs({ projectId: "my-project" })
|
|
276
|
+
|
|
277
|
+
3. Consultar documentación al inicio de cada sesión
|
|
278
|
+
memorybank_get_project_docs({ projectId: "my-project", document: "activeContext" })
|
|
279
|
+
|
|
280
|
+
4. Buscar código específico
|
|
281
|
+
memorybank_search({ projectId: "my-project", query: "..." })
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
### Auto-Actualización de Documentación
|
|
285
|
+
|
|
286
|
+
Si configuras `MEMORYBANK_AUTO_UPDATE_DOCS=true`, los documentos se regenerarán automáticamente después de cada indexación. Esto es útil para mantener la documentación siempre actualizada pero consume más tokens de API.
|
|
287
|
+
|
|
288
|
+
---
|
|
289
|
+
|
|
290
|
+
## 🔀 Multi-Proyecto: Consultas Entre Proyectos
|
|
291
|
+
|
|
292
|
+
Una característica poderosa de Memory Bank es la capacidad de **consultar cualquier proyecto indexado desde cualquier workspace**.
|
|
293
|
+
|
|
294
|
+
### ¿Cómo Funciona?
|
|
295
|
+
|
|
296
|
+
Todos los proyectos indexados se almacenan en un vector store compartido, identificados por su `projectId`. Esto significa que:
|
|
297
|
+
|
|
298
|
+
1. **Puedes trabajar en el Proyecto A** y consultar código del Proyecto B
|
|
299
|
+
2. **Los agentes pueden aprender** de proyectos similares ya indexados
|
|
300
|
+
3. **Reutiliza patrones** de otros proyectos de tu organización
|
|
301
|
+
|
|
302
|
+
### Ejemplo de Uso
|
|
303
|
+
|
|
304
|
+
```
|
|
305
|
+
# Estás trabajando en "frontend-app" pero necesitas ver cómo se hizo algo en "backend-api"
|
|
306
|
+
|
|
307
|
+
Usuario: ¿Cómo se implementó la autenticación en el proyecto backend-api?
|
|
308
|
+
|
|
309
|
+
Agente: [ejecuta memorybank_search({
|
|
310
|
+
projectId: "backend-api", // Otro proyecto
|
|
311
|
+
query: "autenticación JWT middleware"
|
|
312
|
+
})]
|
|
313
|
+
|
|
314
|
+
Encontré la implementación en backend-api:
|
|
315
|
+
- El middleware de auth está en src/middleware/auth.ts
|
|
316
|
+
- Usa JWT con refresh tokens
|
|
317
|
+
- La validación se hace con jsonwebtoken...
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
### Requisitos para Multi-Proyecto
|
|
321
|
+
|
|
322
|
+
1. **El proyecto debe estar indexado** previamente con su `projectId`
|
|
323
|
+
2. **Usa el projectId correcto** al hacer consultas
|
|
324
|
+
3. **La documentación es independiente** por proyecto
|
|
325
|
+
|
|
326
|
+
### Ejemplo Real: Dos Proyectos Relacionados
|
|
327
|
+
|
|
328
|
+
```json
|
|
329
|
+
// Proyecto 1: a2a_gateway (ya indexado)
|
|
330
|
+
memorybank_search({
|
|
331
|
+
"projectId": "a2a_gateway",
|
|
332
|
+
"query": "cómo se registran los agentes"
|
|
333
|
+
})
|
|
334
|
+
|
|
335
|
+
// Proyecto 2: GREC0AI (workspace actual)
|
|
336
|
+
memorybank_search({
|
|
337
|
+
"projectId": "GREC0AI",
|
|
338
|
+
"query": "implementación de AgentEntity"
|
|
339
|
+
})
|
|
340
|
+
|
|
341
|
+
// Puedes consultar ambos en la misma sesión!
|
|
342
|
+
```
|
|
343
|
+
|
|
344
|
+
---
|
|
345
|
+
|
|
154
346
|
## 📚 Herramientas Disponibles
|
|
155
347
|
|
|
156
348
|
> **⚠️ IMPORTANTE**: Todas las herramientas requieren `projectId` obligatorio. Este ID debe coincidir con el definido en tu archivo `AGENTS.md`.
|
|
@@ -205,11 +397,6 @@ Lee contenido de un archivo.
|
|
|
205
397
|
- `startLine` (opcional): Línea inicial
|
|
206
398
|
- `endLine` (opcional): Línea final
|
|
207
399
|
|
|
208
|
-
**Ejemplo:**
|
|
209
|
-
```
|
|
210
|
-
memorybank_read_file({ path: "src/auth/service.ts", startLine: 50, endLine: 100 })
|
|
211
|
-
```
|
|
212
|
-
|
|
213
400
|
### `memorybank_write_file`
|
|
214
401
|
|
|
215
402
|
Escribe un archivo y lo reindexa automáticamente.
|
|
@@ -220,132 +407,61 @@ Escribe un archivo y lo reindexa automáticamente.
|
|
|
220
407
|
- `content` (requerido): Contenido del archivo
|
|
221
408
|
- `autoReindex` (opcional): Auto-reindexar (default: true)
|
|
222
409
|
|
|
223
|
-
**Ejemplo:**
|
|
224
|
-
```json
|
|
225
|
-
{
|
|
226
|
-
"projectId": "my-project",
|
|
227
|
-
"path": "src/utils/validator.ts",
|
|
228
|
-
"content": "export function validateEmail(email: string) { ... }"
|
|
229
|
-
}
|
|
230
|
-
```
|
|
231
|
-
|
|
232
410
|
### `memorybank_get_stats`
|
|
233
411
|
|
|
234
412
|
Obtiene estadísticas del Memory Bank.
|
|
235
413
|
|
|
236
|
-
**Ejemplo:**
|
|
237
|
-
```
|
|
238
|
-
memorybank_get_stats({})
|
|
239
|
-
```
|
|
240
|
-
|
|
241
414
|
### `memorybank_analyze_coverage`
|
|
242
415
|
|
|
243
416
|
Analiza la cobertura de indexación del proyecto.
|
|
244
417
|
|
|
245
418
|
**Parámetros:**
|
|
246
419
|
- `projectId` **(REQUERIDO)**: Identificador del proyecto a analizar
|
|
247
|
-
- `path` (
|
|
420
|
+
- `path` **(REQUERIDO)**: Ruta absoluta del workspace a analizar
|
|
248
421
|
|
|
249
422
|
**Ejemplo:**
|
|
250
423
|
```json
|
|
251
424
|
{
|
|
252
|
-
"projectId": "my-project"
|
|
425
|
+
"projectId": "my-project",
|
|
426
|
+
"path": "C:/workspaces/my-project"
|
|
253
427
|
}
|
|
254
428
|
```
|
|
255
429
|
|
|
256
|
-
### `memorybank_generate_project_docs`
|
|
430
|
+
### `memorybank_generate_project_docs`
|
|
257
431
|
|
|
258
|
-
Genera documentación estructurada del proyecto usando IA con razonamiento
|
|
432
|
+
Genera documentación estructurada del proyecto usando IA con razonamiento.
|
|
259
433
|
|
|
260
434
|
**Parámetros:**
|
|
261
435
|
- `projectId` **(REQUERIDO)**: Identificador del proyecto
|
|
262
436
|
- `force` (opcional): Forzar regeneración (default: false)
|
|
263
437
|
|
|
264
|
-
|
|
265
|
-
```json
|
|
266
|
-
{
|
|
267
|
-
"projectId": "my-project",
|
|
268
|
-
"force": true
|
|
269
|
-
}
|
|
270
|
-
```
|
|
271
|
-
|
|
272
|
-
Genera 6 documentos markdown:
|
|
273
|
-
- `projectBrief.md`: Descripción general
|
|
274
|
-
- `productContext.md`: Perspectiva de negocio
|
|
275
|
-
- `systemPatterns.md`: Patrones de arquitectura
|
|
276
|
-
- `techContext.md`: Stack tecnológico
|
|
277
|
-
- `activeContext.md`: Estado actual
|
|
278
|
-
- `progress.md`: Seguimiento
|
|
279
|
-
|
|
280
|
-
### `memorybank_get_project_docs` 🆕
|
|
438
|
+
### `memorybank_get_project_docs`
|
|
281
439
|
|
|
282
440
|
Lee la documentación del proyecto generada por IA.
|
|
283
441
|
|
|
284
442
|
**Parámetros:**
|
|
285
443
|
- `projectId` **(REQUERIDO)**: Identificador del proyecto
|
|
286
|
-
- `document` (opcional):
|
|
287
|
-
- `format` (opcional): "full" o "summary" (default: "full")
|
|
288
|
-
|
|
289
|
-
**Ejemplo:**
|
|
290
|
-
```json
|
|
291
|
-
// Obtener resumen de todos los docs
|
|
292
|
-
{
|
|
293
|
-
"projectId": "my-project",
|
|
294
|
-
"document": "summary"
|
|
295
|
-
}
|
|
444
|
+
- `document` (opcional): `"summary"`, `"all"`, o nombre específico (`projectBrief`, `systemPatterns`, etc.)
|
|
445
|
+
- `format` (opcional): `"full"` o `"summary"` (default: "full")
|
|
296
446
|
|
|
297
|
-
|
|
298
|
-
{
|
|
299
|
-
"projectId": "my-project",
|
|
300
|
-
"document": "systemPatterns"
|
|
301
|
-
}
|
|
302
|
-
```
|
|
447
|
+
---
|
|
303
448
|
|
|
304
449
|
## 📋 Plantillas de Instrucciones para Agentes
|
|
305
450
|
|
|
306
|
-
Memory Bank incluye plantillas de instrucciones en dos formatos:
|
|
307
|
-
- **AGENTS.md** - Estándar [agents.md](https://agents.md/) (compatible con múltiples agentes)
|
|
308
|
-
- **VSCode/Copilot** - Formato `.github/copilot-instructions.md` para VS Code
|
|
309
|
-
|
|
310
|
-
### Instalación - Formato AGENTS.md
|
|
311
|
-
|
|
312
|
-
Copia la plantilla que prefieras a la raíz de tu proyecto:
|
|
313
|
-
|
|
314
|
-
```bash
|
|
315
|
-
# Elegir una plantilla
|
|
316
|
-
cp node_modules/@grec0/memory-bank-mcp/templates/AGENTS.basic.md ./AGENTS.md
|
|
317
|
-
|
|
318
|
-
# Editar los placeholders
|
|
319
|
-
# Reemplaza {{PROJECT_ID}} con tu ID de proyecto
|
|
320
|
-
# Reemplaza {{WORKSPACE_PATH}} con la ruta del workspace
|
|
321
|
-
```
|
|
322
|
-
|
|
323
|
-
### Instalación - Formato VS Code
|
|
451
|
+
Memory Bank incluye plantillas de instrucciones en dos formatos para configurar el comportamiento del agente:
|
|
324
452
|
|
|
325
|
-
|
|
453
|
+
- **AGENTS.md** - Estándar [agents.md](https://agents.md/) (compatible con Claude, Cursor, múltiples agentes)
|
|
454
|
+
- **VSCode/Copilot** - Formato `.github/copilot-instructions.md` para GitHub Copilot en VS Code
|
|
326
455
|
|
|
327
|
-
|
|
328
|
-
# Crear carpeta .github si no existe
|
|
329
|
-
mkdir -p .github
|
|
456
|
+
### Modos Disponibles
|
|
330
457
|
|
|
331
|
-
|
|
332
|
-
|
|
458
|
+
| Modo | Archivo | Uso Ideal |
|
|
459
|
+
|------|---------|-----------|
|
|
460
|
+
| **Basic** | `AGENTS.basic.md` | Control total, indexación manual |
|
|
461
|
+
| **Auto-Index** | `AGENTS.auto-index.md` | Desarrollo activo, sincronización automática |
|
|
462
|
+
| **Sandboxed** | `AGENTS.sandboxed.md` | Entornos sin acceso directo a archivos |
|
|
333
463
|
|
|
334
|
-
|
|
335
|
-
# "github.copilot.chat.codeGeneration.useInstructionFiles": true
|
|
336
|
-
```
|
|
337
|
-
|
|
338
|
-
También puedes usar el archivo `.instructions.md` con aplicación condicional:
|
|
339
|
-
|
|
340
|
-
```bash
|
|
341
|
-
# Crear carpeta de instrucciones
|
|
342
|
-
mkdir -p .github/instructions
|
|
343
|
-
|
|
344
|
-
# Copiar instrucciones base
|
|
345
|
-
cp node_modules/@grec0/memory-bank-mcp/templates/vscode/memory-bank.instructions.md ./.github/instructions/
|
|
346
|
-
```
|
|
347
|
-
|
|
348
|
-
### 1. Basic Mode (`AGENTS.basic.md`)
|
|
464
|
+
### 1. Basic Mode
|
|
349
465
|
|
|
350
466
|
**Para proyectos donde quieres control total.**
|
|
351
467
|
|
|
@@ -356,7 +472,7 @@ cp node_modules/@grec0/memory-bank-mcp/templates/vscode/memory-bank.instructions
|
|
|
356
472
|
|
|
357
473
|
**Ideal para**: Proyectos críticos, revisión de código, onboarding.
|
|
358
474
|
|
|
359
|
-
### 2. Auto-Index Mode
|
|
475
|
+
### 2. Auto-Index Mode
|
|
360
476
|
|
|
361
477
|
**Para desarrollo activo con sincronización automática.**
|
|
362
478
|
|
|
@@ -367,7 +483,7 @@ cp node_modules/@grec0/memory-bank-mcp/templates/vscode/memory-bank.instructions
|
|
|
367
483
|
|
|
368
484
|
**Ideal para**: Desarrollo activo, iteración rápida, equipos.
|
|
369
485
|
|
|
370
|
-
### 3. Sandboxed Mode
|
|
486
|
+
### 3. Sandboxed Mode
|
|
371
487
|
|
|
372
488
|
**Para entornos sin acceso directo al sistema de archivos.**
|
|
373
489
|
|
|
@@ -378,14 +494,81 @@ cp node_modules/@grec0/memory-bank-mcp/templates/vscode/memory-bank.instructions
|
|
|
378
494
|
|
|
379
495
|
**Ideal para**: Entornos restringidos, desarrollo remoto, seguridad.
|
|
380
496
|
|
|
381
|
-
###
|
|
497
|
+
### Plantillas Disponibles
|
|
498
|
+
|
|
499
|
+
Todas las plantillas están disponibles en el repositorio de GitHub:
|
|
500
|
+
|
|
501
|
+
#### Formato AGENTS.md (Cursor, Claude, Multi-agente)
|
|
502
|
+
|
|
503
|
+
| Modo | URL |
|
|
504
|
+
|------|-----|
|
|
505
|
+
| **Basic** | [AGENTS.basic.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/AGENTS.basic.md) |
|
|
506
|
+
| **Auto-Index** | [AGENTS.auto-index.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/AGENTS.auto-index.md) |
|
|
507
|
+
| **Sandboxed** | [AGENTS.sandboxed.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/AGENTS.sandboxed.md) |
|
|
508
|
+
|
|
509
|
+
**Instalación:**
|
|
510
|
+
|
|
511
|
+
```bash
|
|
512
|
+
# Descargar plantilla (elige una)
|
|
513
|
+
curl -o AGENTS.md https://raw.githubusercontent.com/gcorroto/memory-bank-mcp/main/templates/AGENTS.basic.md
|
|
514
|
+
# O
|
|
515
|
+
curl -o AGENTS.md https://raw.githubusercontent.com/gcorroto/memory-bank-mcp/main/templates/AGENTS.auto-index.md
|
|
516
|
+
# O
|
|
517
|
+
curl -o AGENTS.md https://raw.githubusercontent.com/gcorroto/memory-bank-mcp/main/templates/AGENTS.sandboxed.md
|
|
518
|
+
|
|
519
|
+
# Editar los placeholders:
|
|
520
|
+
# - Reemplaza {{PROJECT_ID}} con tu ID de proyecto único
|
|
521
|
+
# - Reemplaza {{WORKSPACE_PATH}} con la ruta absoluta del workspace
|
|
522
|
+
```
|
|
523
|
+
|
|
524
|
+
#### Formato VS Code / GitHub Copilot
|
|
525
|
+
|
|
526
|
+
| Modo | URL |
|
|
527
|
+
|------|-----|
|
|
528
|
+
| **Basic** | [copilot-instructions.basic.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/vscode/copilot-instructions.basic.md) |
|
|
529
|
+
| **Auto-Index** | [copilot-instructions.auto-index.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/vscode/copilot-instructions.auto-index.md) |
|
|
530
|
+
| **Sandboxed** | [copilot-instructions.sandboxed.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/vscode/copilot-instructions.sandboxed.md) |
|
|
531
|
+
| **Instructions** | [memory-bank.instructions.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/vscode/memory-bank.instructions.md) |
|
|
532
|
+
|
|
533
|
+
**Instalación:**
|
|
534
|
+
|
|
535
|
+
```bash
|
|
536
|
+
# Crear carpeta .github si no existe
|
|
537
|
+
mkdir -p .github
|
|
538
|
+
|
|
539
|
+
# Descargar plantilla (elige una)
|
|
540
|
+
curl -o .github/copilot-instructions.md https://raw.githubusercontent.com/gcorroto/memory-bank-mcp/main/templates/vscode/copilot-instructions.basic.md
|
|
541
|
+
# O
|
|
542
|
+
curl -o .github/copilot-instructions.md https://raw.githubusercontent.com/gcorroto/memory-bank-mcp/main/templates/vscode/copilot-instructions.auto-index.md
|
|
543
|
+
# O
|
|
544
|
+
curl -o .github/copilot-instructions.md https://raw.githubusercontent.com/gcorroto/memory-bank-mcp/main/templates/vscode/copilot-instructions.sandboxed.md
|
|
545
|
+
|
|
546
|
+
# Habilitar en VS Code settings.json:
|
|
547
|
+
# "github.copilot.chat.codeGeneration.useInstructionFiles": true
|
|
548
|
+
```
|
|
549
|
+
|
|
550
|
+
#### Instrucciones con Aplicación Condicional (VS Code)
|
|
551
|
+
|
|
552
|
+
Para usar el archivo `.instructions.md` que aplica solo a ciertos archivos:
|
|
553
|
+
|
|
554
|
+
```bash
|
|
555
|
+
# Crear carpeta de instrucciones
|
|
556
|
+
mkdir -p .github/instructions
|
|
557
|
+
|
|
558
|
+
# Descargar instrucciones base
|
|
559
|
+
curl -o .github/instructions/memory-bank.instructions.md https://raw.githubusercontent.com/gcorroto/memory-bank-mcp/main/templates/vscode/memory-bank.instructions.md
|
|
560
|
+
```
|
|
561
|
+
|
|
562
|
+
Este archivo incluye `applyTo: "**/*"` que aplica a todos los archivos, pero puedes modificarlo.
|
|
563
|
+
|
|
564
|
+
### Ejemplo de AGENTS.md Configurado
|
|
382
565
|
|
|
383
566
|
```markdown
|
|
384
567
|
# AGENTS.md
|
|
385
568
|
|
|
386
569
|
## Project Configuration
|
|
387
570
|
- **Project ID**: `my-awesome-app`
|
|
388
|
-
- **Workspace**:
|
|
571
|
+
- **Workspace**: `C:/workspaces/my-awesome-app`
|
|
389
572
|
|
|
390
573
|
## Memory Bank Instructions
|
|
391
574
|
|
|
@@ -395,8 +578,14 @@ Before any action, call `memorybank_search` with projectId="my-awesome-app"
|
|
|
395
578
|
### Auto-Indexing Policy
|
|
396
579
|
AFTER every file modification:
|
|
397
580
|
memorybank_index_code({ projectId: "my-awesome-app", path: "<modified_file>" })
|
|
581
|
+
|
|
582
|
+
### Session Start
|
|
583
|
+
At the beginning of each session, get context:
|
|
584
|
+
memorybank_get_project_docs({ projectId: "my-awesome-app", document: "activeContext" })
|
|
398
585
|
```
|
|
399
586
|
|
|
587
|
+
---
|
|
588
|
+
|
|
400
589
|
## 🎯 Casos de Uso
|
|
401
590
|
|
|
402
591
|
### 1. Primera Indexación
|
|
@@ -427,21 +616,40 @@ Claude: [ejecuta memorybank_search({ projectId: "my-app", query: "autenticación
|
|
|
427
616
|
La validación se hace en el middleware src/middleware/auth.ts.
|
|
428
617
|
```
|
|
429
618
|
|
|
430
|
-
### 3.
|
|
619
|
+
### 3. Consulta Entre Proyectos
|
|
620
|
+
|
|
621
|
+
```
|
|
622
|
+
Usuario: Estoy trabajando en "frontend-v2" pero quiero ver cómo se hizo la
|
|
623
|
+
paginación en el proyecto "admin-dashboard"
|
|
624
|
+
|
|
625
|
+
Claude: [ejecuta memorybank_search({
|
|
626
|
+
projectId: "admin-dashboard",
|
|
627
|
+
query: "paginación tabla listado"
|
|
628
|
+
})]
|
|
629
|
+
|
|
630
|
+
En admin-dashboard, la paginación se implementó así...
|
|
631
|
+
[Muestra código del otro proyecto]
|
|
632
|
+
|
|
633
|
+
¿Quieres que implemente algo similar en frontend-v2?
|
|
634
|
+
```
|
|
635
|
+
|
|
636
|
+
### 4. Generación de Documentación
|
|
431
637
|
|
|
432
638
|
```
|
|
433
|
-
Usuario:
|
|
434
|
-
Claude: [
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
639
|
+
Usuario: Genera documentación del proyecto para nuevos desarrolladores
|
|
640
|
+
Claude: [ejecuta memorybank_generate_project_docs({ projectId: "my-app" })]
|
|
641
|
+
|
|
642
|
+
He generado 6 documentos de conocimiento del proyecto:
|
|
643
|
+
- projectBrief.md: Descripción general
|
|
644
|
+
- systemPatterns.md: Arquitectura y patrones
|
|
645
|
+
- techContext.md: Stack tecnológico
|
|
646
|
+
...
|
|
439
647
|
|
|
440
|
-
|
|
441
|
-
Usa el validador existente de emailValidator.ts para mantener consistencia.
|
|
442
|
-
El archivo ha sido reindexado automáticamente.
|
|
648
|
+
Puedes consultarlos en cualquier momento con memorybank_get_project_docs
|
|
443
649
|
```
|
|
444
650
|
|
|
651
|
+
---
|
|
652
|
+
|
|
445
653
|
## 🔧 Archivos de Configuración
|
|
446
654
|
|
|
447
655
|
### `.memoryignore`
|
|
@@ -474,26 +682,27 @@ build/
|
|
|
474
682
|
*.mp4
|
|
475
683
|
```
|
|
476
684
|
|
|
477
|
-
**Copia el ejemplo**:
|
|
478
|
-
```bash
|
|
479
|
-
cp .memoryignore.example .memoryignore
|
|
480
|
-
```
|
|
481
|
-
|
|
482
685
|
### Respeto de `.gitignore`
|
|
483
686
|
|
|
484
687
|
Memory Bank **respeta automáticamente** los patrones de `.gitignore` en tu proyecto, además de los de `.memoryignore`.
|
|
485
688
|
|
|
689
|
+
---
|
|
690
|
+
|
|
486
691
|
## 💰 Costos de OpenAI
|
|
487
692
|
|
|
488
693
|
Memory Bank usa `text-embedding-3-small` que es muy económico:
|
|
489
694
|
|
|
490
|
-
- **Precio**: ~$0.00002 por 1K tokens
|
|
695
|
+
- **Precio embeddings**: ~$0.00002 por 1K tokens
|
|
491
696
|
- **Ejemplo**: 10,000 archivos × 1,000 tokens promedio = **~$0.20**
|
|
492
697
|
- **Cache**: Los embeddings se cachean, solo se regeneran si el código cambia
|
|
493
698
|
- **Incremental**: Solo se reindexan archivos modificados
|
|
494
699
|
|
|
495
700
|
**Búsquedas son extremadamente baratas** (solo 1 embedding por query).
|
|
496
701
|
|
|
702
|
+
**Documentación con IA** usa modelos de razonamiento que son más costosos pero se ejecutan solo cuando se solicita explícitamente.
|
|
703
|
+
|
|
704
|
+
---
|
|
705
|
+
|
|
497
706
|
## 🧪 Testing
|
|
498
707
|
|
|
499
708
|
```bash
|
|
@@ -504,6 +713,8 @@ npm test
|
|
|
504
713
|
npm test -- --coverage
|
|
505
714
|
```
|
|
506
715
|
|
|
716
|
+
---
|
|
717
|
+
|
|
507
718
|
## 🔐 Seguridad y Privacidad
|
|
508
719
|
|
|
509
720
|
- ✅ **Vector store local**: LanceDB corre en tu máquina
|
|
@@ -519,18 +730,13 @@ npm test -- --coverage
|
|
|
519
730
|
3. **API keys en variables de entorno**, nunca en código
|
|
520
731
|
4. **Revisa que `.env` esté en .gitignore**
|
|
521
732
|
|
|
733
|
+
---
|
|
734
|
+
|
|
522
735
|
## 🐛 Solución de Problemas
|
|
523
736
|
|
|
524
737
|
### Error: "OPENAI_API_KEY is required"
|
|
525
738
|
|
|
526
|
-
**Solución**: Configura tu API key en las variables de entorno.
|
|
527
|
-
|
|
528
|
-
```bash
|
|
529
|
-
# En .env
|
|
530
|
-
OPENAI_API_KEY=sk-your-key-here
|
|
531
|
-
|
|
532
|
-
# O en la configuración de Claude Desktop (ver arriba)
|
|
533
|
-
```
|
|
739
|
+
**Solución**: Configura tu API key en las variables de entorno del MCP.
|
|
534
740
|
|
|
535
741
|
### Error: "No files found to index"
|
|
536
742
|
|
|
@@ -539,27 +745,17 @@ OPENAI_API_KEY=sk-your-key-here
|
|
|
539
745
|
2. Todos los archivos están en .gitignore/.memoryignore
|
|
540
746
|
3. No hay archivos de código reconocidos
|
|
541
747
|
|
|
542
|
-
**Solución**: Verifica que haya archivos .ts, .js, .py, etc. en el directorio.
|
|
543
|
-
|
|
544
748
|
### Búsquedas retornan resultados irrelevantes
|
|
545
749
|
|
|
546
750
|
**Soluciones**:
|
|
547
751
|
1. **Aumenta `minScore`**: Usa 0.8 o 0.9 para resultados más precisos
|
|
548
752
|
2. **Usa filtros**: `filterByFile` o `filterByLanguage`
|
|
549
753
|
3. **Reformula la query**: Sé más específico y descriptivo
|
|
550
|
-
4. **Reindexa**:
|
|
551
|
-
|
|
552
|
-
```
|
|
553
|
-
memorybank_index_code({ forceReindex: true })
|
|
554
|
-
```
|
|
754
|
+
4. **Reindexa**: `memorybank_index_code({ forceReindex: true })`
|
|
555
755
|
|
|
556
|
-
###
|
|
557
|
-
|
|
558
|
-
El sistema maneja automáticamente rate limits con exponential backoff, pero si tienes proyectos muy grandes:
|
|
756
|
+
### Error: "projectId is required"
|
|
559
757
|
|
|
560
|
-
|
|
561
|
-
2. **Aumenta límites**: Usa una API key con tier más alto
|
|
562
|
-
3. **Reduce batch size**: Ajusta en código (default: 100)
|
|
758
|
+
**Solución**: Todas las herramientas requieren `projectId`. Define el `projectId` en tu archivo `AGENTS.md` para que el agente lo use consistentemente.
|
|
563
759
|
|
|
564
760
|
### Índice desactualizado
|
|
565
761
|
|
|
@@ -576,18 +772,24 @@ Si `pendingFiles` muestra archivos pendientes:
|
|
|
576
772
|
}
|
|
577
773
|
```
|
|
578
774
|
|
|
579
|
-
|
|
775
|
+
---
|
|
580
776
|
|
|
581
|
-
|
|
777
|
+
## 📖 Documentación Adicional
|
|
582
778
|
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
779
|
+
### Plantillas de Instrucciones
|
|
780
|
+
|
|
781
|
+
**Formato AGENTS.md** (estándar multi-agente):
|
|
782
|
+
- [AGENTS.basic.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/AGENTS.basic.md) - Modo básico (indexación manual)
|
|
783
|
+
- [AGENTS.auto-index.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/AGENTS.auto-index.md) - Modo auto-indexación
|
|
784
|
+
- [AGENTS.sandboxed.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/AGENTS.sandboxed.md) - Modo sin acceso directo a archivos
|
|
785
|
+
|
|
786
|
+
**Formato VS Code / Copilot**:
|
|
787
|
+
- [copilot-instructions.basic.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/vscode/copilot-instructions.basic.md) - Modo básico
|
|
788
|
+
- [copilot-instructions.auto-index.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/vscode/copilot-instructions.auto-index.md) - Modo auto-indexación
|
|
789
|
+
- [copilot-instructions.sandboxed.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/vscode/copilot-instructions.sandboxed.md) - Modo sandboxed
|
|
790
|
+
- [memory-bank.instructions.md](https://github.com/gcorroto/memory-bank-mcp/blob/main/templates/vscode/memory-bank.instructions.md) - Instrucciones condicionales
|
|
589
791
|
|
|
590
|
-
|
|
792
|
+
---
|
|
591
793
|
|
|
592
794
|
## 🤝 Contribución
|
|
593
795
|
|
|
@@ -599,20 +801,7 @@ Tip: Define el `projectId` en tu archivo `AGENTS.md` para que el agente lo use c
|
|
|
599
801
|
4. Push al branch (`git push origin feature/AmazingFeature`)
|
|
600
802
|
5. Abre un Pull Request
|
|
601
803
|
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
- [templates/](templates/): Plantillas de instrucciones para agentes
|
|
605
|
-
- **Formato AGENTS.md** (estándar multi-agente):
|
|
606
|
-
- `AGENTS.basic.md`: Modo básico (indexación manual)
|
|
607
|
-
- `AGENTS.auto-index.md`: Modo auto-indexación
|
|
608
|
-
- `AGENTS.sandboxed.md`: Modo sin acceso directo a archivos
|
|
609
|
-
- **Formato VS Code** (`templates/vscode/`):
|
|
610
|
-
- `copilot-instructions.basic.md`: Modo básico para Copilot
|
|
611
|
-
- `copilot-instructions.auto-index.md`: Modo auto-indexación para Copilot
|
|
612
|
-
- `copilot-instructions.sandboxed.md`: Modo sandboxed para Copilot
|
|
613
|
-
- `memory-bank.instructions.md`: Instrucciones con aplicación condicional
|
|
614
|
-
- [wiki/Developer-Guide.md](wiki/Developer-Guide.md): Guía para desarrolladores
|
|
615
|
-
- [wiki/API-Reference.md](wiki/API-Reference.md): Referencia completa de API
|
|
804
|
+
---
|
|
616
805
|
|
|
617
806
|
## 🎓 Inspiración
|
|
618
807
|
|
|
@@ -620,23 +809,24 @@ Este proyecto está inspirado en el sistema de Memory Bank de Cursor IDE, tal co
|
|
|
620
809
|
|
|
621
810
|
- [Advanced Cursor: Use the Memory Bank](https://medium.com/codetodeploy/advanced-cursor-use-the-memory-bank-to-eliminate-hallucination-affd3fbeefa3)
|
|
622
811
|
- [How Cursor Indexes Codebases Fast](https://read.engineerscodex.com/p/how-cursor-indexes-codebases-fast)
|
|
623
|
-
|
|
812
|
+
|
|
813
|
+
---
|
|
624
814
|
|
|
625
815
|
## 📜 Licencia
|
|
626
816
|
|
|
627
817
|
Este proyecto está licenciado bajo la Licencia MIT - ver el archivo [LICENSE](LICENSE) para detalles.
|
|
628
818
|
|
|
819
|
+
---
|
|
820
|
+
|
|
629
821
|
## 🆘 Soporte
|
|
630
822
|
|
|
631
|
-
- **Issues**: [GitHub Issues](https://github.com/
|
|
632
|
-
- **Documentación**: [Wiki del Proyecto](https://github.com/
|
|
823
|
+
- **Issues**: [GitHub Issues](https://github.com/gcorroto/memory-bank-mcp/issues)
|
|
824
|
+
- **Documentación**: [Wiki del Proyecto](https://github.com/gcorroto/memory-bank-mcp/wiki)
|
|
633
825
|
- **OpenAI API**: [Documentación Oficial](https://platform.openai.com/docs)
|
|
634
826
|
- **LanceDB**: [Documentación](https://lancedb.github.io/lancedb/)
|
|
635
827
|
|
|
636
|
-
## ⭐ Star History
|
|
637
|
-
|
|
638
|
-
Si este proyecto te resulta útil, ¡considera darle una estrella! ⭐
|
|
639
|
-
|
|
640
828
|
---
|
|
641
829
|
|
|
830
|
+
⭐ Si este proyecto te resulta útil, ¡considera darle una estrella!
|
|
831
|
+
|
|
642
832
|
**Hecho con ❤️ para la comunidad de AI coding assistants**
|