recallmem 0.1.3 → 0.1.5
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 +15 -10
- package/bin/commands/start.js +3 -3
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -6,11 +6,15 @@
|
|
|
6
6
|
</p>
|
|
7
7
|
|
|
8
8
|
<p align="center">
|
|
9
|
-
<strong>Persistent
|
|
9
|
+
<strong>Your Persistent Private AI that actually remembers you.</strong>
|
|
10
10
|
</p>
|
|
11
11
|
|
|
12
12
|
<p align="center">
|
|
13
|
-
|
|
13
|
+
<code>npx recallmem</code>
|
|
14
|
+
</p>
|
|
15
|
+
|
|
16
|
+
<p align="center">
|
|
17
|
+
Chatbots like ChatGPT, Claude, and Gemini tend to forget you the moment you end your session. RecallMEM doesn't. It builds a profile of who you are, extracts facts after every conversation, and runs vector search across your entire history to find relevant context. By the time you've used it for a week, it knows you better than any AI ever will.
|
|
14
18
|
</p>
|
|
15
19
|
|
|
16
20
|
<p align="center">
|
|
@@ -29,14 +33,14 @@
|
|
|
29
33
|
|
|
30
34
|
## What is this
|
|
31
35
|
|
|
32
|
-
A personal AI chatbot with REAL memory. Plug in any LLM you want and RecallMEM gives it persistent memory of who you are, what you've talked about, and what's currently true vs historical.
|
|
36
|
+
A personal AI chatbot with REAL memory. Plug in any LLM you want and RecallMEM gives it persistent memory of who you are, what you've talked about, and what's currently true vs historical. All your memory is stored in a local Postgres database on your machine, with pgvector powering the semantic search across your past conversations.
|
|
33
37
|
|
|
34
|
-
The best part is that the LLM
|
|
38
|
+
The best part is that **the LLM proposes, TypeScript decides.** Retrieval is deterministic SQL + cosine similarity, built by TypeScript before the model ever sees it. On the write side, an LLM proposes candidate facts and contradictions, but a 6-step TypeScript validator decides what actually gets stored. Facts have timestamps and get auto-retired when the truth changes ("works at Acme" → "left Acme"). [Deep dive on the architecture →](./docs/ARCHITECTURE.md)
|
|
35
39
|
|
|
36
40
|
You can run it three ways:
|
|
37
41
|
|
|
38
42
|
- **Cloud LLMs (recommended for most people).** Add a Claude or OpenAI API key in Settings. Fast, smart, works on any computer. Your memory still stays local in your own Postgres database. Only the chat messages go to the provider.
|
|
39
|
-
- **Local LLMs (recommended for privacy).** Run Gemma 4 via Ollama. Nothing leaves your machine, ever. Slower setup (~
|
|
43
|
+
- **Local LLMs (recommended for privacy).** Run Gemma 4 via Ollama. Nothing leaves your machine, ever. Slower setup (~7-20 GB model download) and slower responses, but truly air-gappable.
|
|
40
44
|
- **Both.** Use cloud for daily chat, switch to local for the sensitive stuff. The model dropdown lets you pick per-conversation.
|
|
41
45
|
|
|
42
46
|
## Features
|
|
@@ -58,13 +62,13 @@ Two options. Pick whichever fits your priority.
|
|
|
58
62
|
|
|
59
63
|
### Option A: Cloud LLM (Claude or OpenAI) — fastest, ~5 minutes
|
|
60
64
|
|
|
61
|
-
You need Node.js 20+ and [Homebrew](https://brew.sh). Then:
|
|
65
|
+
You need Node.js 20+ and [Homebrew](https://brew.sh). The installer uses Homebrew to set up Postgres + pgvector (where your memory and vector search live) and Ollama (for local AI models). Then:
|
|
62
66
|
|
|
63
67
|
```bash
|
|
64
68
|
npx recallmem
|
|
65
69
|
```
|
|
66
70
|
|
|
67
|
-
The installer sets up Postgres, pgvector, and Ollama (for the embedding model that powers memory). When the browser opens to `localhost:
|
|
71
|
+
The installer sets up Postgres, pgvector, and Ollama (for the embedding model that powers memory). When the browser opens to `localhost:1337`:
|
|
68
72
|
|
|
69
73
|
1. Click **Settings** in the top right
|
|
70
74
|
2. Click **Providers**
|
|
@@ -78,9 +82,10 @@ The installer sets up Postgres, pgvector, and Ollama (for the embedding model th
|
|
|
78
82
|
|
|
79
83
|
Same `npx recallmem` command. When the app opens, click **Settings → Manage models** and download one of these:
|
|
80
84
|
|
|
81
|
-
- **Gemma 4
|
|
82
|
-
- **Gemma 4
|
|
83
|
-
- **Gemma 4
|
|
85
|
+
- **Gemma 4 E2B** (~7 GB, fastest download) — good for a quick test or older laptops
|
|
86
|
+
- **Gemma 4 E4B** (~10 GB) — good for most laptops
|
|
87
|
+
- **Gemma 4 26B** (~18 GB, ~20-30 minute download) — recommended for daily use
|
|
88
|
+
- **Gemma 4 31B** (~20 GB, slower, best quality)
|
|
84
89
|
|
|
85
90
|
Then pick that model from the dropdown and chat. Nothing leaves your machine.
|
|
86
91
|
|
package/bin/commands/start.js
CHANGED
|
@@ -33,15 +33,15 @@ async function startCommand(opts = {}) {
|
|
|
33
33
|
const command = hasBuild ? "start" : "dev";
|
|
34
34
|
|
|
35
35
|
info(hasBuild ? "Production build detected, running next start" : "No build found, running next dev");
|
|
36
|
-
info("Opening http://localhost:
|
|
36
|
+
info("Opening http://localhost:1337 in your browser...");
|
|
37
37
|
console.log("");
|
|
38
38
|
console.log(color.dim(" (Press Ctrl+C to stop)"));
|
|
39
39
|
console.log("");
|
|
40
40
|
|
|
41
41
|
// Open the browser shortly after starting (give Next a moment to be ready)
|
|
42
|
-
setTimeout(() => openBrowser("http://localhost:
|
|
42
|
+
setTimeout(() => openBrowser("http://localhost:1337"), 2000);
|
|
43
43
|
|
|
44
|
-
const child = spawn("npx", ["next", command], {
|
|
44
|
+
const child = spawn("npx", ["next", command, "-p", "1337"], {
|
|
45
45
|
cwd: installPath,
|
|
46
46
|
stdio: "inherit",
|
|
47
47
|
env: process.env,
|