@pinkpixel/memi 0.1.0 → 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/README.md +299 -0
- package/dist/cli/commands/config.js +38 -0
- package/dist/cli/commands/doctor.js +53 -0
- package/dist/cli/commands/memories.js +146 -0
- package/dist/cli/commands/reindex.js +34 -0
- package/dist/cli/commands/serve.js +9 -0
- package/dist/cli/commands/ui.js +26 -0
- package/dist/cli/index.js +20 -0
- package/dist/cli/util.js +46 -0
- package/dist/core/config.js +89 -0
- package/dist/core/db.js +21 -0
- package/dist/core/format.js +16 -0
- package/dist/core/memories.js +192 -0
- package/dist/core/project.js +53 -0
- package/dist/core/rows.js +38 -0
- package/dist/core/runtime.js +10 -0
- package/dist/core/schema.js +60 -0
- package/dist/core/search.js +86 -0
- package/dist/core/types.js +12 -0
- package/dist/core/vectors.js +102 -0
- package/dist/embed/http.js +20 -0
- package/dist/embed/index.js +9 -0
- package/dist/embed/ollama.js +24 -0
- package/dist/embed/openai.js +22 -0
- package/dist/embed/types.js +2 -0
- package/dist/lib/app-info.js +5 -0
- package/dist/mcp/server.js +24 -0
- package/dist/mcp/tools.js +152 -0
- package/dist/ui/assets.js +38 -0
- package/dist/ui/routes.js +91 -0
- package/dist/ui/security.js +47 -0
- package/dist/ui/server.js +33 -0
- package/package.json +8 -1
- package/skills/memi-setup/SKILL.md +28 -13
|
@@ -26,27 +26,36 @@ Start with `memi doctor`. It checks the database, the embedder, the vector index
|
|
|
26
26
|
|
|
27
27
|
## Install
|
|
28
28
|
|
|
29
|
-
|
|
29
|
+
Either install it globally, which gives you a `memi` command and the fastest MCP start:
|
|
30
30
|
|
|
31
31
|
```bash
|
|
32
|
-
npm install
|
|
33
|
-
|
|
34
|
-
node dist/cli/index.js doctor
|
|
32
|
+
npm install -g @pinkpixel/memi
|
|
33
|
+
memi doctor
|
|
35
34
|
```
|
|
36
35
|
|
|
37
|
-
|
|
36
|
+
or let `npx` fetch it on demand, with no install step:
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
npx -y @pinkpixel/memi doctor
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Everything below says `memi`. If memi is not installed globally, use `npx -y @pinkpixel/memi` in its place.
|
|
43
|
+
|
|
44
|
+
To work on memi itself, build it from source (`npm install`, then `npm run build`) and run `node dist/cli/index.js`.
|
|
38
45
|
|
|
39
46
|
## Connect the MCP server
|
|
40
47
|
|
|
41
48
|
### Claude Code
|
|
42
49
|
|
|
43
50
|
```bash
|
|
44
|
-
claude mcp add memi -s user -e MEMI_AGENT=claude --
|
|
51
|
+
claude mcp add memi -s user -e MEMI_AGENT=claude -- npx -y @pinkpixel/memi serve
|
|
45
52
|
claude mcp list
|
|
46
53
|
```
|
|
47
54
|
|
|
48
55
|
`-s user` makes memi available in every project, which is what you want because memory is shared across them. Drop it to limit memi to the current project. `MEMI_AGENT` is optional, see "Agent name" below.
|
|
49
56
|
|
|
57
|
+
The first start downloads the package, which takes a few seconds. After that npx reuses its cache. The cache can keep an old version, so use `@pinkpixel/memi@latest` if you want the newest one every time. With a global install, use `memi serve` as the command instead.
|
|
58
|
+
|
|
50
59
|
### Other clients
|
|
51
60
|
|
|
52
61
|
Any client that can launch a stdio MCP server needs the same three things: a command, its arguments, and optional environment variables. In the common `mcpServers` JSON format:
|
|
@@ -55,19 +64,25 @@ Any client that can launch a stdio MCP server needs the same three things: a com
|
|
|
55
64
|
{
|
|
56
65
|
"mcpServers": {
|
|
57
66
|
"memi": {
|
|
58
|
-
"command": "
|
|
59
|
-
"args": ["/
|
|
67
|
+
"command": "npx",
|
|
68
|
+
"args": ["-y", "@pinkpixel/memi", "serve"],
|
|
60
69
|
"env": { "MEMI_AGENT": "my-agent" }
|
|
61
70
|
}
|
|
62
71
|
}
|
|
63
72
|
}
|
|
64
73
|
```
|
|
65
74
|
|
|
66
|
-
|
|
75
|
+
Restart the client after editing its config. memi has been tested with Claude Code. Other clients should work but have not been checked.
|
|
67
76
|
|
|
68
77
|
## Install the skills
|
|
69
78
|
|
|
70
|
-
Copy the folders
|
|
79
|
+
The skills ship inside the package. Copy or symlink the folders (`memi-memory`, `memi-curate`, `memi-setup`) into your client's skills directory. For Claude Code that is `~/.claude/skills/`, and with a global install:
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
ln -s "$(npm root -g)/@pinkpixel/memi/skills/"* ~/.claude/skills/
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
Without a global install, take the `skills` folder from the repo. Symlinks mean a package update carries through.
|
|
71
86
|
|
|
72
87
|
## Agent name
|
|
73
88
|
|
|
@@ -138,7 +153,7 @@ If the UI shows a banner about the embedder, it is the same message as `memi doc
|
|
|
138
153
|
|
|
139
154
|
## If the MCP client shows no memi tools
|
|
140
155
|
|
|
141
|
-
1. Run `memi doctor` outside the client to rule out memi itself.
|
|
142
|
-
2. Check the
|
|
143
|
-
3.
|
|
156
|
+
1. Run `memi doctor` (or `npx -y @pinkpixel/memi doctor`) outside the client to rule out memi itself.
|
|
157
|
+
2. Check that the client can find `npx` (or `memi`). A client launched from a desktop icon may not see the same `PATH` as your terminal. Node.js 22 or newer is required.
|
|
158
|
+
3. The first npx start downloads the package. If the client gives up before it finishes, run `npx -y @pinkpixel/memi --version` once in a terminal to fill the cache, or install globally and use `memi serve`.
|
|
144
159
|
4. Restart the client.
|