chat-recall 0.5.8 → 0.5.9

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
@@ -11,7 +11,7 @@
11
11
 
12
12
  > One memory across every AI coding tool you use. Claude Code, Gemini CLI, Codex, OpenCode, Antigravity and Cursor share a single searchable history — and the agent can search it itself.
13
13
 
14
- Your coding agents each keep their own transcripts, in their own format, in their own directory, and none of them can read another's. `chat-recall` indexes all of them into one place, redacts secrets on the way, and exposes the result to your agent through **53 MCP tools** so it can recall its own past work instead of you re-explaining it.
14
+ Your coding agents each keep their own transcripts, in their own format, in their own directory, and none of them can read another's. `chat-recall` indexes all of them into one place, redacts secrets on the way, and exposes the result to your agent through **55 MCP tools** so it can recall its own past work instead of you re-explaining it.
15
15
 
16
16
  That cross-tool part is the point. A single tool's built-in history stops at its own boundary; this does not.
17
17
 
@@ -70,12 +70,12 @@ chat-recall recent # what was I working on
70
70
 
71
71
  By default this syncs to the hosted server at [chatrecall.dev](https://chatrecall.dev), which starts with a 7-day trial that needs no card and is a paid subscription after that — see [pricing](https://chatrecall.dev/pricing/). To keep everything on your own machine instead, run the server yourself: that is **free for one person, forever**, with every feature and no licence key — the task board and Toolkit included — and a licence only buys collaboration: a second member, shared history, assigning work. See [Self-host](#self-host-the-server-docker-compose) below. Either way the CLI is the same binary and the same commands; only the server URL differs.
72
72
 
73
- No API keys are required. Postgres full-text search is the default backend; vector search and AI summaries are upgrades, not prerequisites.
73
+ No API keys are required. Search is Postgres full-text search. AI summaries are an optional upgrade, not a prerequisite.
74
74
 
75
75
  ## Four things it actually does
76
76
 
77
77
  1. **Cross-tool unified memory.** One index, one search, one UI over Claude Code (`~/.claude/projects/`), Gemini CLI (`~/.gemini/tmp/`), Codex (`~/.codex/`), OpenCode (`~/.local/share/opencode/`), Antigravity and Cursor (`~/.cursor/` for the CLI, `~/.config/Cursor/` for the IDE). Sessions, plans, tasks, CLAUDE.md files, paste cache, shell history and agent diaries all share one pluggable `MemorySource` interface.
78
- 2. **The agent recalls itself.** 53 MCP tools, so Claude Code can `recall_smart_resume`, `recall_search` (with `like_session` to find similar work), `recall_edits_timeline`, `recall_subagent_search` and `recall_redundant_files` rather than asking you what happened last time. It writes back too, via `recall_decision_record`, `recall_kg_add` and `recall_set`.
78
+ 2. **The agent recalls itself.** 55 MCP tools, so Claude Code can `recall_smart_resume`, `recall_search` (with `like_session` to find similar work), `recall_edits_timeline`, `recall_subagent_search` and `recall_redundant_files` rather than asking you what happened last time. It writes back too, via `recall_decision_record`, `recall_kg_add` and `recall_set`.
79
79
  3. **Warns before you redo work.** A `UserPromptSubmit` hook searches for similar past sessions on every prompt and injects a short "you have done this before, in session X" note into the agent's context.
80
80
  4. **Temporal knowledge graph.** Decisions and tool mentions become entity-relationship triples with `valid_from`/`valid_to` windows, so you can ask what was decided in March and whether it still holds.
81
81
 
@@ -83,15 +83,6 @@ No API keys are required. Postgres full-text search is the default backend; vect
83
83
 
84
84
  A new backend is one file and one line — no changes to the engine. See [`docs/ADDING_A_TOOL.md`](docs/ADDING_A_TOOL.md). If a tool you use writes transcripts to disk, it can be indexed here, and a pull request is the fastest way to make that happen.
85
85
 
86
- ### Optional: vector search
87
-
88
- ```bash
89
- ollama pull nomic-embed-text
90
- chat-recall sync --full # re-ships; the server embeds chunks into pgvector
91
- ```
92
-
93
- …or set `EMBEDDING_PROVIDER=gemini` with `GEMINI_API_KEY` if you'd rather use a hosted embedder. Without either, search falls back to Postgres FTS — same results surface, slightly less semantic.
94
-
95
86
  ### Optional: web dashboard
96
87
 
97
88
  The React dashboard is part of the **server** (SaaS or self-host docker
@@ -119,8 +110,7 @@ troubleshooting, is in **[docs/SELF_HOSTING.md](docs/SELF_HOSTING.md)**.
119
110
  Two containers: the server plus a bundled `pgvector/pgvector` Postgres, so a
120
111
  plain `docker compose up` is self-contained. Bring-your-own-Postgres is
121
112
  supported too (it is how the hosted service runs): set `DATABASE_URL` to an
122
- external Postgres 16+. The `pgvector` extension is needed only for semantic
123
- search — everything degrades to full-text without it.
113
+ external Postgres 16+.
124
114
 
125
115
  ### Keep the index live (+ optional server sync)
126
116
 
@@ -208,7 +198,7 @@ codeindex is open source (MIT) at [github.com/munhq/codeindex](https://github.co
208
198
  | **Paste** | `~/.claude/paste-cache/*.txt` | Large pasted blobs |
209
199
  | **Diary** | `~/.chat-recall/index/diary/<agent>/*.json` | What the agent told its future self via `recall_diary_write` |
210
200
 
211
- ## MCP tools (53, including 4 code-intelligence tools that register when the codeindex companion is installed)
201
+ ## MCP tools (55, including 4 code-intelligence tools that register when the companion binary is installed)
212
202
 
213
203
  **Search & retrieve** — `recall_search`, `recall_memory_search`, `recall_recent`, `recall_show`, `recall_context`, `recall_summary`, `recall_smart_resume`, `recall_project_context`, `recall_weekly_digest`, `recall_analytics_summary`, `recall_wake_up`.
214
204
 
@@ -228,12 +218,11 @@ When the codeindex companion is installed, the agent *also* gets 16 code-level t
228
218
 
229
219
  ## Search architecture
230
220
 
231
- Search runs **on the server**. Two backends, Postgres FTS is the default:
232
-
233
- - **Postgres FTS** — zero extra setup. Keyword search with ranking. Always available.
234
- - **Vector (pgvector)** — opt-in, and needs an embedder: Ollama, any OpenAI-compatible embeddings endpoint, or a Gemini API key. The vector width follows the model you point it at, so pick one embedder and keep it — changing it means a full re-index.
221
+ Search runs **on the server**, and it is Postgres full-text search: keyword
222
+ matching with ranking, plus `pg_trgm` typo tolerance. It needs no embedder, no
223
+ API key and no extra service.
235
224
 
236
- The CLI ships redacted chunks to the server, which indexes them. If no embedder is configured, every search tool transparently falls back to FTS.
225
+ The CLI ships redacted chunks to the server, which indexes them.
237
226
 
238
227
  ## Cost tracking
239
228
 
@@ -307,15 +296,13 @@ Two extension points, both registry-driven:
307
296
 
308
297
  That is the whole list. No API key is needed to install, index or search.
309
298
 
310
- Two features are opt-in, and each one needs a back end that you choose:
299
+ One feature is opt-in, and it needs a back end that you choose:
311
300
 
312
301
  | Feature | Back ends you can point it at |
313
302
  |---|---|
314
- | Vector search | Ollama (local, free), any OpenAI-compatible embeddings endpoint, or `GEMINI_API_KEY` |
315
303
  | AI summaries | Ollama, a CLI you are already logged in to (`SUMMARY_CLI_CMD`), an OpenAI-compatible endpoint, or `ANTHROPIC_API_KEY` |
316
304
 
317
- Without either back end, search falls back to Postgres FTS and sessions carry no
318
- generated summary. Everything else works the same.
305
+ Without it, sessions carry no generated summary. Everything else works the same.
319
306
 
320
307
  ## License
321
308