@jcyamacho/agent-memory 0.0.1 → 0.0.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 +102 -113
- package/dist/index.js +1 -1
- package/package.json +5 -2
package/README.md
CHANGED
|
@@ -2,34 +2,81 @@
|
|
|
2
2
|
|
|
3
3
|
Persistent memory for MCP-powered coding agents.
|
|
4
4
|
|
|
5
|
-
`agent-memory` gives your LLM
|
|
6
|
-
|
|
5
|
+
`agent-memory` is a stdio MCP server that gives your LLM durable memory backed
|
|
6
|
+
by SQLite. It exposes two tools:
|
|
7
7
|
|
|
8
8
|
- `remember` -> save facts, decisions, preferences, and project context
|
|
9
9
|
- `recall` -> retrieve the most relevant memories later
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
Use it when your agent should remember preferences, project facts, and prior
|
|
12
|
+
decisions across sessions.
|
|
13
13
|
|
|
14
|
-
##
|
|
14
|
+
## Quick Start
|
|
15
15
|
|
|
16
|
-
|
|
17
|
-
that actually matter:
|
|
16
|
+
Example MCP server config:
|
|
18
17
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
18
|
+
```json
|
|
19
|
+
{
|
|
20
|
+
"mcpServers": {
|
|
21
|
+
"memory": {
|
|
22
|
+
"command": "npx",
|
|
23
|
+
"args": [
|
|
24
|
+
"-y",
|
|
25
|
+
"@jcyamacho/agent-memory"
|
|
26
|
+
]
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
With a custom database path:
|
|
33
|
+
|
|
34
|
+
```json
|
|
35
|
+
{
|
|
36
|
+
"mcpServers": {
|
|
37
|
+
"memory": {
|
|
38
|
+
"command": "npx",
|
|
39
|
+
"args": [
|
|
40
|
+
"-y",
|
|
41
|
+
"@jcyamacho/agent-memory"
|
|
42
|
+
],
|
|
43
|
+
"env": {
|
|
44
|
+
"AGENT_MEMORY_DB_PATH": "/absolute/path/to/memory.db"
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Recommended LLM instructions to pair with this MCP:
|
|
52
|
+
|
|
53
|
+
```text
|
|
54
|
+
Use `memory_recall` at the start of a task, when the user refers to previous
|
|
55
|
+
context, or whenever prior preferences, project facts, or decisions may help.
|
|
56
|
+
|
|
57
|
+
Use `memory_remember` to save durable context that will matter later, such as
|
|
58
|
+
user preferences, project conventions, architecture decisions, constraints, and
|
|
59
|
+
stable workflow habits.
|
|
60
|
+
|
|
61
|
+
Store concise, self-contained facts or short notes. Include `source`,
|
|
62
|
+
`workspace`, and `session` when available so future retrieval is better scoped.
|
|
63
|
+
|
|
64
|
+
Do not store secrets, credentials, API keys, tokens, or temporary noise.
|
|
65
|
+
|
|
66
|
+
When recalling, use short factual queries and keep `limit` small unless you
|
|
67
|
+
need broader recall. Use `preferred_workspace` or `preferred_source` to bias
|
|
68
|
+
ranking, and `filter_workspace` or `filter_source` only when exact scoping is
|
|
69
|
+
required.
|
|
70
|
+
```
|
|
23
71
|
|
|
24
|
-
|
|
72
|
+
## What It Stores
|
|
25
73
|
|
|
26
|
-
|
|
74
|
+
This MCP is useful for context that should survive across turns and sessions:
|
|
27
75
|
|
|
28
|
-
-
|
|
29
|
-
-
|
|
30
|
-
-
|
|
31
|
-
-
|
|
32
|
-
- MCP-native tool descriptions optimized for LLM use
|
|
76
|
+
- User preferences like response style, formatting, and workflow habits
|
|
77
|
+
- Project facts like paths, architecture choices, and conventions
|
|
78
|
+
- Important decisions and constraints that should not be rediscovered
|
|
79
|
+
- Session-linked notes that still matter later
|
|
33
80
|
|
|
34
81
|
## Tools
|
|
35
82
|
|
|
@@ -39,9 +86,9 @@ Save durable context for later recall.
|
|
|
39
86
|
|
|
40
87
|
Inputs:
|
|
41
88
|
|
|
42
|
-
- `content` ->
|
|
43
|
-
- `source` ->
|
|
44
|
-
- `workspace` -> repository or workspace path
|
|
89
|
+
- `content` -> fact, preference, decision, or context to store
|
|
90
|
+
- `source` -> client, tool, or agent name
|
|
91
|
+
- `workspace` -> repository or workspace path
|
|
45
92
|
- `session` -> conversation or execution session identifier
|
|
46
93
|
|
|
47
94
|
Output:
|
|
@@ -58,12 +105,12 @@ Retrieve relevant memories for the current task.
|
|
|
58
105
|
|
|
59
106
|
Inputs:
|
|
60
107
|
|
|
61
|
-
- `query` -> keywords,
|
|
62
|
-
- `limit` ->
|
|
63
|
-
- `preferred_source` ->
|
|
64
|
-
- `preferred_workspace` ->
|
|
65
|
-
- `filter_source` ->
|
|
66
|
-
- `filter_workspace` ->
|
|
108
|
+
- `query` -> keywords, names, facts, or phrases to search for
|
|
109
|
+
- `limit` -> maximum results to return
|
|
110
|
+
- `preferred_source` -> ranking hint for a source
|
|
111
|
+
- `preferred_workspace` -> ranking hint for a workspace
|
|
112
|
+
- `filter_source` -> exact source filter
|
|
113
|
+
- `filter_workspace` -> exact workspace filter
|
|
67
114
|
- `created_after` -> ISO 8601 lower bound
|
|
68
115
|
- `created_before` -> ISO 8601 upper bound
|
|
69
116
|
|
|
@@ -72,36 +119,18 @@ Output:
|
|
|
72
119
|
- `results[]` with `id`, `content`, `score`, `source`, `workspace`, `session`,
|
|
73
120
|
and `created_at`
|
|
74
121
|
|
|
75
|
-
##
|
|
76
|
-
|
|
77
|
-
### From npm
|
|
78
|
-
|
|
79
|
-
```bash
|
|
80
|
-
npm install -g @jcyamacho/agent-memory
|
|
81
|
-
```
|
|
82
|
-
|
|
83
|
-
### From source
|
|
122
|
+
## Setup
|
|
84
123
|
|
|
85
|
-
|
|
86
|
-
bun install
|
|
87
|
-
bun run build
|
|
88
|
-
```
|
|
124
|
+
For normal usage:
|
|
89
125
|
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
```bash
|
|
93
|
-
agent-memory
|
|
94
|
-
```
|
|
126
|
+
- Node.js
|
|
95
127
|
|
|
96
|
-
|
|
128
|
+
For local development or running from source:
|
|
97
129
|
|
|
130
|
+
- Bun
|
|
98
131
|
- Node.js
|
|
99
|
-
- A normal package install with `node_modules`
|
|
100
|
-
|
|
101
|
-
Important: the build keeps `better-sqlite3` external on purpose. That is
|
|
102
|
-
required for its native binding to load correctly at runtime.
|
|
103
132
|
|
|
104
|
-
|
|
133
|
+
### Database location
|
|
105
134
|
|
|
106
135
|
By default, the SQLite database is created at:
|
|
107
136
|
|
|
@@ -115,48 +144,15 @@ Override it with:
|
|
|
115
144
|
AGENT_MEMORY_DB_PATH=/absolute/path/to/memory.db
|
|
116
145
|
```
|
|
117
146
|
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
```bash
|
|
121
|
-
AGENT_MEMORY_DB_PATH="$HOME/.local/share/agent-memory/memory.db" agent-memory
|
|
122
|
-
```
|
|
123
|
-
|
|
124
|
-
## Running It
|
|
125
|
-
|
|
126
|
-
### Development
|
|
127
|
-
|
|
128
|
-
```bash
|
|
129
|
-
bun install
|
|
130
|
-
bun run build
|
|
131
|
-
node dist/index.js
|
|
132
|
-
```
|
|
133
|
-
|
|
134
|
-
### Local validation
|
|
147
|
+
Set `AGENT_MEMORY_DB_PATH` when you want to:
|
|
135
148
|
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
bun run build
|
|
140
|
-
```
|
|
149
|
+
- keep memory in a project-specific location
|
|
150
|
+
- share a memory DB across multiple clients
|
|
151
|
+
- store the DB somewhere easier to back up or inspect
|
|
141
152
|
|
|
142
|
-
##
|
|
153
|
+
## Run from source
|
|
143
154
|
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
```json
|
|
147
|
-
{
|
|
148
|
-
"mcpServers": {
|
|
149
|
-
"memory": {
|
|
150
|
-
"command": "agent-memory",
|
|
151
|
-
"env": {
|
|
152
|
-
"AGENT_MEMORY_DB_PATH": "/absolute/path/to/memory.db"
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
```
|
|
158
|
-
|
|
159
|
-
If you are running from source instead of a global install, use:
|
|
155
|
+
If you are developing locally instead of using the published package:
|
|
160
156
|
|
|
161
157
|
```json
|
|
162
158
|
{
|
|
@@ -174,36 +170,29 @@ If you are running from source instead of a global install, use:
|
|
|
174
170
|
}
|
|
175
171
|
```
|
|
176
172
|
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
Copy and paste this into your system prompt, `AGENTS.md`, `CLAUDE.md`, or
|
|
180
|
-
similar instruction file.
|
|
181
|
-
|
|
182
|
-
```text
|
|
183
|
-
Use `memory_recall` at the start of a task, when the user refers to previous
|
|
184
|
-
context, or whenever prior preferences, project facts, or decisions may help.
|
|
173
|
+
Build first:
|
|
185
174
|
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
175
|
+
```bash
|
|
176
|
+
bun install
|
|
177
|
+
bun run build
|
|
178
|
+
```
|
|
189
179
|
|
|
190
|
-
|
|
191
|
-
`workspace`, and `session` when available so future retrieval is better scoped.
|
|
180
|
+
## Local Development
|
|
192
181
|
|
|
193
|
-
|
|
182
|
+
Only needed if you want to work on the project itself.
|
|
194
183
|
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
184
|
+
```bash
|
|
185
|
+
bun install
|
|
186
|
+
bun lint
|
|
187
|
+
bun test
|
|
188
|
+
bun run build
|
|
199
189
|
```
|
|
200
190
|
|
|
201
|
-
##
|
|
191
|
+
## Notes
|
|
202
192
|
|
|
203
|
-
-
|
|
204
|
-
|
|
205
|
-
-
|
|
206
|
-
- Runtime code avoids Bun-only APIs
|
|
193
|
+
- `better-sqlite3` stays external in the build so its native binding loads
|
|
194
|
+
correctly at runtime.
|
|
195
|
+
- Runtime output is Node-compatible and built to `dist/index.js`.
|
|
207
196
|
|
|
208
197
|
## License
|
|
209
198
|
|
package/dist/index.js
CHANGED
|
@@ -12464,7 +12464,7 @@ class StdioServerTransport {
|
|
|
12464
12464
|
}
|
|
12465
12465
|
}
|
|
12466
12466
|
// package.json
|
|
12467
|
-
var version2 = "0.0.
|
|
12467
|
+
var version2 = "0.0.2";
|
|
12468
12468
|
|
|
12469
12469
|
// src/config.ts
|
|
12470
12470
|
import { homedir } from "node:os";
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jcyamacho/agent-memory",
|
|
3
3
|
"main": "dist/index.js",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.2",
|
|
5
5
|
"bin": {
|
|
6
6
|
"agent-memory": "dist/index.js"
|
|
7
7
|
},
|
|
@@ -23,7 +23,10 @@
|
|
|
23
23
|
"build": "bun build src/index.ts --target=node --external better-sqlite3 --outfile dist/index.js --banner \"#!/usr/bin/env node\"",
|
|
24
24
|
"start": "node dist/index.js",
|
|
25
25
|
"test": "bun test",
|
|
26
|
-
"lint": "biome check --write"
|
|
26
|
+
"lint": "biome check --write",
|
|
27
|
+
"release:patch": "npm version patch && git push origin main --follow-tags",
|
|
28
|
+
"release:minor": "npm version minor && git push origin main --follow-tags",
|
|
29
|
+
"release:major": "npm version major && git push origin main --follow-tags"
|
|
27
30
|
},
|
|
28
31
|
"devDependencies": {
|
|
29
32
|
"@biomejs/biome": "2.4.6",
|