@justmpm/memory 0.1.2 → 0.2.2

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