@justmpm/memory 0.1.1 → 0.2.1

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 CHANGED
@@ -1,281 +1,292 @@
1
- # @justmpm/memory
2
-
3
- MCP Server (Model Context Protocol) para gerenciar memória persistente de subagents entre sessões.
4
-
5
- ## Descrição
6
-
7
- Este servidor permite que subagents salvem e recuperem aprendizados específicos do projeto entre diferentes sessões de trabalho. Cada agent mantém sua própria memória isolada, armazenada em `.claude/agent-memory/<agent-name>/MEMORY.md`.
8
-
9
- ## Por que usar?
10
-
11
- - **Persistência entre sessões**: Aprendizados salvos não se perdem quando a sessão termina
12
- - **Memória por agent**: Cada subagent tem sua própria memória isolada
13
- - **Específico por projeto**: Cada projeto tem sua própria pasta de memórias
14
- - **Auto-limpeza**: Limite automático de 200 linhas para manter memória gerenciável
15
- - **Busca eficiente**: Encontre informações rapidamente sem ler tudo
16
-
17
- ## Instalação
18
-
19
- ```bash
20
- npm install
21
- npm run build
22
- ```
23
-
24
- ## Uso
25
-
26
- ### Como Servidor MCP
27
-
28
- Para usar este servidor como MCP, adicione ao seu arquivo de configuração do cliente MCP:
29
-
30
- **Opção 1 - Caminho absoluto (desenvolvimento local):**
31
- ```json
32
- {
33
- "mcpServers": {
34
- "memory": {
35
- "command": "node",
36
- "args": ["D:\\Users\\Matheus Pimenta\\Pictures\\Pacotes-Pessoais\\mcps-ai\\memory\\dist\\index.js"]
37
- }
38
- }
39
- }
40
- ```
41
-
42
- **Opção 2 - Após publicar no npm (futuro):**
43
- ```json
44
- {
45
- "mcpServers": {
46
- "memory": {
47
- "command": "npx",
48
- "args": ["@justmpm/memory"]
49
- }
50
- }
51
- }
52
- ```
53
-
54
- **Nota:** O nome do servidor MCP é "memory" para facilitar o uso, enquanto o nome do pacote npm é "@justmpm/memory".
55
-
56
- ### Comandos Disponíveis
57
-
58
- #### `read` - Lê a memória do agent
59
-
60
- **Quando usar:** Ao iniciar uma sessão para carregar contexto anterior.
61
-
62
- ```json
63
- {
64
- "command": "read",
65
- "agent": "sentinel"
66
- }
67
- ```
68
-
69
- **Retorna:** Conteúdo completo do MEMORY.md com contagem de linhas.
70
-
71
- #### `write` - Substitui toda a memória
72
-
73
- **Quando usar:** Para reorganizar, limpar ou reconstruir memória do zero.
74
-
75
- ```json
76
- {
77
- "command": "write",
78
- "agent": "sentinel",
79
- "content": "# Memória do Sentinel\n\n## Padrões\n- Sempre use TypeScript estrito\n\n## Bugs\n- Bug XYZ ocorre quando..."
80
- }
81
- ```
82
-
83
- **Retorna:** Confirmação + contagem de linhas.
84
-
85
- #### `append` - Adiciona uma entrada no final
86
-
87
- **Quando usar:** Ao aprender algo novo e importante.
88
-
89
- ```json
90
- {
91
- "command": "append",
92
- "agent": "sentinel",
93
- "entry": "Padrão descoberto: sempre use Zod para validar inputs do usuário"
94
- }
95
- ```
96
-
97
- **Retorna:** Timestamp + preview da entrada.
98
-
99
- **Nota:** O timestamp é adicionado automaticamente: `## [2026-02-09 12:34:56]`
100
-
101
- #### `search` - Busca texto na memória
102
-
103
- **Quando usar:** Para encontrar informações rápidas sem ler tudo.
104
-
105
- ```json
106
- {
107
- "command": "search",
108
- "agent": "sentinel",
109
- "query": "Zod"
110
- }
111
- ```
112
-
113
- **Retorna:** Máximo 20 ocorrências com número da linha.
114
-
115
- #### `list` - Lista todos os agents com memória
116
-
117
- **Quando usar:** Para descobrir quais agents usaram memória no projeto.
118
-
119
- ```json
120
- {
121
- "command": "list"
122
- }
123
- ```
124
-
125
- **Retorna:** Lista com nome de cada agent + contagem de linhas.
126
-
127
- ## Estrutura de Arquivos
128
-
129
- ```
130
- .claude/
131
- └── agent-memory/
132
- ├── sentinel/
133
- │ └── MEMORY.md
134
- ├── qa-tester/
135
- │ └── MEMORY.md
136
- └── nexus/
137
- └── MEMORY.md
138
- ```
139
-
140
- **Nota:** O nome do agent é normalizado automaticamente:
141
- - "Sentinel" → "sentinel"
142
- - "QA-Tester" → "qa-tester"
143
- - "My Agent" → "my-agent"
144
-
145
- ## Workflow Recomendado
146
-
147
- 1. **Ao iniciar sessão:**
148
- ```json
149
- { "command": "read", "agent": "sentinel" }
150
- ```
151
- Carrega memória anterior para contexto
152
-
153
- 2. **Ao aprender algo importante:**
154
- ```json
155
- { "command": "append", "agent": "sentinel", "entry": "Padrão descoberto: ..." }
156
- ```
157
- → Salva aprendizado incremental
158
-
159
- 3. **Quando memória ficar grande (~200 linhas):**
160
- ```json
161
- { "command": "write", "agent": "sentinel", "content": "# Memória Reorganizada\n\n..." }
162
- ```
163
- → Consolide e remova entradas obsoletas
164
-
165
- 4. **Para buscar informação específica:**
166
- ```json
167
- { "command": "search", "agent": "sentinel", "query": "Zod" }
168
- ```
169
- → Encontre rapidamente sem ler tudo
170
-
171
- ## O Que Salvar
172
-
173
- ### ✅ SEMPRE salve
174
-
175
- - **Padrões de código:** Ex: "Sempre use 2 espaços de indentação em TSX"
176
- - **Decisões arquiteturais:** Ex: "Escolhemos Firestore em vez de PostgreSQL porque..."
177
- - **Bugs recorrentes:** Ex: "Erro X acontece quando..."
178
- - **Soluções específicas:** Ex: "Para resolver problema Y, use..."
179
- - **Configurações importantes:** Ex: "Firebase Auth usa Google Sign-In"
180
- - **Preferências do usuário:** Ex: "Matheus prefere estilos inline para componentes simples"
181
-
182
- ### NÃO salve
183
-
184
- - Coisas triviais: "Hoje está chovendo"
185
- - Informações que mudam frequentemente: "Tem 3 arquivos na pasta"
186
- - Coisas óbvias: "O código precisa compilar"
187
- - Informações duplicadas
188
- - Logs de conversação
189
-
190
- ## Boas Práticas
191
-
192
- ### Formatação recomendada
193
-
194
- Use seções markdown organizadas:
195
-
196
- ```markdown
197
- # Memória do [Nome do Agent]
198
-
199
- ## Padrões
200
- - Sempre use TypeScript estrito
201
- - Use Zod para validação de inputs
202
-
203
- ## Decisões
204
- - Escolhemos Zustand em vez de Redux (mais leve)
205
- - Firestore para banco de dados (escalabilidade)
206
-
207
- ## Bugs
208
- - Bug XYZ: ocorre quando...
209
- - Solução temporária: use workaround...
210
-
211
- ## Configurações
212
- - Firebase Auth com Google Sign-In
213
- - MUI v7 para componentes
214
-
215
- ## Preferências
216
- - Matheus prefere componentes funcionais
217
- - Use 2 espaços de indentação
218
- ```
219
-
220
- ### Dicas
221
-
222
- - **Seja específico:** "Use 2 espaços" > "Formate bem"
223
- - **Adicione contexto:** "No projeto X, use Y..."
224
- - **Use append para entradas cronológicas:** Mantém histórico
225
- - **Use write para reorganizar:** Limpa e estrutura
226
- - **Search antes de salvar:** Evita duplicatas
227
- - **Limpe periodicamente:** Remova entradas obsoletas
228
-
229
- ## Limitações
230
-
231
- - **Máximo 200 linhas:** Quando excedido, mantém as últimas 160 linhas
232
- - **Memória é específica por projeto:** Cada projeto tem sua própria pasta
233
- - **Parâmetro agent é opcional:** Usa "unknown" se não fornecido (mas é recomendável sempre fornecer)
234
-
235
- ## Desenvolvimento
236
-
237
- ```bash
238
- # Desenvolvimento com hot reload
239
- npm run dev
240
-
241
- # Build
242
- npm run build
243
-
244
- # Executar
245
- npm start
246
- ```
247
-
248
- ## Versão
249
-
250
- Para alterar a versão do servidor MCP, basta modificar o campo `version` no arquivo `package.json`. O `index.ts` lê automaticamente a versão do package.json em tempo de execução.
251
-
252
- ## Documentação Adicional
253
-
254
- ### CLAUDE.md
255
-
256
- Documentação completa para IAs sobre como usar corretamente o sistema de memória. Inclui:
257
-
258
- - Workflow recomendado por sessão
259
- - Guia de quando usar cada comando
260
- - O que salvar vs não salvar
261
- - Formato recomendado
262
- - Dicas práticas e exemplos
263
- - Erros comuns e como evitar
264
-
265
- **Para IAs:** Leia CLAUDE.md para entender como usar este sistema eficientemente.
266
-
267
- ### AGENTS.md
268
-
269
- Guia específico para cada tipo de subagent sobre como usar a memória de forma alinhada com sua especialização. Inclui:
270
-
271
- - O que cada tipo de agent deve salvar
272
- - Formato de memória recomendado por agent
273
- - Exemplos práticos por tipo
274
- - Compartilhamento de informações entre agents
275
- - Boas práticas específicas
276
-
277
- **Para Subagents:** Consulte a seção relevante em AGENTS.md para orientações específicas do seu tipo.
278
-
279
- ## Licença
280
-
281
- MIT © Koda AI Studio
1
+ # @justmpm/memory
2
+
3
+ MCP Server (Model Context Protocol) para gerenciar memória persistente de subagents entre sessões.
4
+
5
+ ## Descrição
6
+
7
+ Este servidor permite que subagents salvem e recuperem aprendizados específicos do projeto entre diferentes sessões de trabalho. Cada agent mantém sua própria memória isolada, armazenada em `.claude/agent-memory/<agent-name>/MEMORY.md`.
8
+
9
+ ## Por que usar?
10
+
11
+ - **Persistência entre sessões**: Aprendizados salvos não se perdem quando a sessão termina
12
+ - **Memória por agent**: Cada subagent tem sua própria memória isolada
13
+ - **Específico por projeto**: Cada projeto tem sua própria pasta de memórias
14
+ - **Auto-limpeza**: Limite automático de 200 linhas para manter memória gerenciável
15
+ - **Busca eficiente**: Encontre informações rapidamente sem ler tudo
16
+
17
+ ## Instalação
18
+
19
+ ```bash
20
+ npm install
21
+ npm run build
22
+ ```
23
+
24
+ ## Uso
25
+
26
+ ### Como Servidor MCP
27
+
28
+ Para usar este servidor como MCP, adicione ao seu arquivo de configuração do cliente MCP:
29
+
30
+ **Opção 1 - Caminho absoluto (desenvolvimento local):**
31
+ ```json
32
+ {
33
+ "mcpServers": {
34
+ "memory": {
35
+ "command": "node",
36
+ "args": ["D:\\Users\\Matheus Pimenta\\Pictures\\Pacotes-Pessoais\\mcps-ai\\memory\\dist\\index.js"]
37
+ }
38
+ }
39
+ }
40
+ ```
41
+
42
+ **Opção 2 - Após publicar no npm (futuro):**
43
+ ```json
44
+ {
45
+ "mcpServers": {
46
+ "memory": {
47
+ "command": "npx",
48
+ "args": ["@justmpm/memory"]
49
+ }
50
+ }
51
+ }
52
+ ```
53
+
54
+ **Nota:** O nome do servidor MCP é "memory" para facilitar o uso, enquanto o nome do pacote npm é "@justmpm/memory".
55
+
56
+ ### Comandos Disponíveis
57
+
58
+ #### `read` - Lê a memória do agent
59
+
60
+ **Quando usar:** Ao iniciar uma sessão para carregar contexto anterior.
61
+
62
+ ```json
63
+ {
64
+ "command": "read",
65
+ "agent": "sentinel"
66
+ }
67
+ ```
68
+
69
+ **Retorna:** Conteúdo completo do MEMORY.md com contagem de linhas.
70
+
71
+ #### `write` - Substitui toda a memória
72
+
73
+ **Quando usar:** Para reorganizar, limpar ou reconstruir memória do zero.
74
+
75
+ ```json
76
+ {
77
+ "command": "write",
78
+ "agent": "sentinel",
79
+ "content": "# Memória do Sentinel\n\n## Padrões\n- Sempre use TypeScript estrito\n\n## Bugs\n- Bug XYZ ocorre quando..."
80
+ }
81
+ ```
82
+
83
+ **Retorna:** Confirmação + contagem de linhas.
84
+
85
+ **Backup de segurança:**
86
+ ```json
87
+ {
88
+ "command": "write",
89
+ "agent": "sentinel",
90
+ "content": "# Nova memória...",
91
+ "backup": true
92
+ }
93
+ ```
94
+ Quando `backup: true`, o conteúdo atual é salvo em `MEMORY.md.backup` antes de sobrescrever.
95
+
96
+ #### `append` - Adiciona uma entrada no final
97
+
98
+ **Quando usar:** Ao aprender algo novo e importante.
99
+
100
+ ```json
101
+ {
102
+ "command": "append",
103
+ "agent": "sentinel",
104
+ "entry": "Padrão descoberto: sempre use Zod para validar inputs do usuário"
105
+ }
106
+ ```
107
+
108
+ **Retorna:** Timestamp + preview da entrada.
109
+
110
+ **Nota:** O timestamp é adicionado automaticamente: `## [2026-02-09 12:34:56]`
111
+
112
+ #### `search` - Busca texto na memória
113
+
114
+ **Quando usar:** Para encontrar informações rápidas sem ler tudo.
115
+
116
+ ```json
117
+ {
118
+ "command": "search",
119
+ "agent": "sentinel",
120
+ "query": "Zod"
121
+ }
122
+ ```
123
+
124
+ **Retorna:** Máximo 20 ocorrências com número da linha.
125
+
126
+ #### `list` - Lista todos os agents com memória
127
+
128
+ **Quando usar:** Para descobrir quais agents usaram memória no projeto.
129
+
130
+ ```json
131
+ {
132
+ "command": "list"
133
+ }
134
+ ```
135
+
136
+ **Retorna:** Lista com nome de cada agent + contagem de linhas.
137
+
138
+ ## Estrutura de Arquivos
139
+
140
+ ```
141
+ .claude/
142
+ └── agent-memory/
143
+ ├── sentinel/
144
+ │ └── MEMORY.md
145
+ ├── qa-tester/
146
+ │ └── MEMORY.md
147
+ └── nexus/
148
+ └── MEMORY.md
149
+ ```
150
+
151
+ **Nota:** O nome do agent é normalizado automaticamente:
152
+ - "Sentinel" → "sentinel"
153
+ - "QA-Tester" "qa-tester"
154
+ - "My Agent" → "my-agent"
155
+
156
+ ## Workflow Recomendado
157
+
158
+ 1. **Ao iniciar sessão:**
159
+ ```json
160
+ { "command": "read", "agent": "sentinel" }
161
+ ```
162
+ → Carrega memória anterior para contexto
163
+
164
+ 2. **Ao aprender algo importante:**
165
+ ```json
166
+ { "command": "append", "agent": "sentinel", "entry": "Padrão descoberto: ..." }
167
+ ```
168
+ → Salva aprendizado incremental
169
+
170
+ 3. **Quando memória ficar grande (~200 linhas):**
171
+ ```json
172
+ { "command": "write", "agent": "sentinel", "content": "# Memória Reorganizada\n\n..." }
173
+ ```
174
+ → Consolide e remova entradas obsoletas
175
+
176
+ 4. **Para buscar informação específica:**
177
+ ```json
178
+ { "command": "search", "agent": "sentinel", "query": "Zod" }
179
+ ```
180
+ Encontre rapidamente sem ler tudo
181
+
182
+ ## O Que Salvar
183
+
184
+ ### SEMPRE salve
185
+
186
+ - **Padrões de código:** Ex: "Sempre use 2 espaços de indentação em TSX"
187
+ - **Decisões arquiteturais:** Ex: "Escolhemos Firestore em vez de PostgreSQL porque..."
188
+ - **Bugs recorrentes:** Ex: "Erro X acontece quando..."
189
+ - **Soluções específicas:** Ex: "Para resolver problema Y, use..."
190
+ - **Configurações importantes:** Ex: "Firebase Auth usa Google Sign-In"
191
+ - **Preferências do usuário:** Ex: "Matheus prefere estilos inline para componentes simples"
192
+
193
+ ### ❌ NÃO salve
194
+
195
+ - Coisas triviais: "Hoje está chovendo"
196
+ - Informações que mudam frequentemente: "Tem 3 arquivos na pasta"
197
+ - Coisas óbvias: "O código precisa compilar"
198
+ - Informações duplicadas
199
+ - Logs de conversação
200
+
201
+ ## Boas Práticas
202
+
203
+ ### Formatação recomendada
204
+
205
+ Use seções markdown organizadas:
206
+
207
+ ```markdown
208
+ # Memória do [Nome do Agent]
209
+
210
+ ## Padrões
211
+ - Sempre use TypeScript estrito
212
+ - Use Zod para validação de inputs
213
+
214
+ ## Decisões
215
+ - Escolhemos Zustand em vez de Redux (mais leve)
216
+ - Firestore para banco de dados (escalabilidade)
217
+
218
+ ## Bugs
219
+ - Bug XYZ: ocorre quando...
220
+ - Solução temporária: use workaround...
221
+
222
+ ## Configurações
223
+ - Firebase Auth com Google Sign-In
224
+ - MUI v7 para componentes
225
+
226
+ ## Preferências
227
+ - Matheus prefere componentes funcionais
228
+ - Use 2 espaços de indentação
229
+ ```
230
+
231
+ ### Dicas
232
+
233
+ - **Seja específico:** "Use 2 espaços" > "Formate bem"
234
+ - **Adicione contexto:** "No projeto X, use Y..."
235
+ - **Use append para entradas cronológicas:** Mantém histórico
236
+ - **Use write para reorganizar:** Limpa e estrutura
237
+ - **Search antes de salvar:** Evita duplicatas
238
+ - **Limpe periodicamente:** Remova entradas obsoletas
239
+
240
+ ## Limitações
241
+
242
+ - **Máximo 200 linhas:** Quando excedido, mantém as últimas 160 linhas
243
+ - **Memória é específica por projeto:** Cada projeto tem sua própria pasta
244
+ - **Parâmetro agent é opcional:** Usa "unknown" se não fornecido (mas é recomendável sempre fornecer)
245
+
246
+ ## Desenvolvimento
247
+
248
+ ```bash
249
+ # Desenvolvimento com hot reload
250
+ npm run dev
251
+
252
+ # Build
253
+ npm run build
254
+
255
+ # Executar
256
+ npm start
257
+ ```
258
+
259
+ ## Versão
260
+
261
+ Para alterar a versão do servidor MCP, basta modificar o campo `version` no arquivo `package.json`. O `index.ts` lê automaticamente a versão do package.json em tempo de execução.
262
+
263
+ ## Documentação Adicional
264
+
265
+ ### CLAUDE.md
266
+
267
+ Documentação completa para IAs sobre como usar corretamente o sistema de memória. Inclui:
268
+
269
+ - Workflow recomendado por sessão
270
+ - Guia de quando usar cada comando
271
+ - O que salvar vs não salvar
272
+ - Formato recomendado
273
+ - Dicas práticas e exemplos
274
+ - Erros comuns e como evitar
275
+
276
+ **Para IAs:** Leia CLAUDE.md para entender como usar este sistema eficientemente.
277
+
278
+ ### AGENTS.md
279
+
280
+ Guia específico para cada tipo de subagent sobre como usar a memória de forma alinhada com sua especialização. Inclui:
281
+
282
+ - O que cada tipo de agent deve salvar
283
+ - Formato de memória recomendado por agent
284
+ - Exemplos práticos por tipo
285
+ - Compartilhamento de informações entre agents
286
+ - Boas práticas específicas
287
+
288
+ **Para Subagents:** Consulte a seção relevante em AGENTS.md para orientações específicas do seu tipo.
289
+
290
+ ## Licença
291
+
292
+ MIT © Koda AI Studio