chat-recall 0.6.0 → 0.6.3
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 +49 -14
- package/dist/cli.js +1388 -2308
- package/dist/cli.js.map +1 -1
- package/dist/conformant-server.d.ts +18 -1
- package/dist/conformant-server.d.ts.map +1 -1
- package/dist/conformant-server.js +7 -2
- package/dist/conformant-server.js.map +1 -1
- package/dist/install-skills.d.ts +1 -2
- package/dist/install-skills.d.ts.map +1 -1
- package/dist/install-skills.js +11 -12
- package/dist/install-skills.js.map +1 -1
- package/dist/intent-drain.d.ts +34 -0
- package/dist/intent-drain.d.ts.map +1 -1
- package/dist/intent-drain.js +87 -24
- package/dist/intent-drain.js.map +1 -1
- package/dist/mcp-relay.js +1 -1
- package/dist/mcp.js +840 -1718
- package/dist/scan-worker.js +448 -1039
- package/dist/service-installer.d.ts +17 -0
- package/dist/service-installer.d.ts.map +1 -1
- package/dist/service-installer.js +58 -1
- package/dist/service-installer.js.map +1 -1
- package/dist/sync-client.d.ts.map +1 -1
- package/dist/sync-client.js +30 -5
- package/dist/sync-client.js.map +1 -1
- package/dist/watch.js +1316 -1927
- package/package.json +19 -11
- package/skills/chat-recall/SKILL.md +9 -7
- package/skills/chat-recall-project/SKILL.md +19 -1
- package/skills/chat-recall-security/SKILL.md +91 -0
- package/skills/chat-recall-tasks/SKILL.md +100 -0
package/README.md
CHANGED
|
@@ -12,21 +12,40 @@
|
|
|
12
12
|
|
|
13
13
|
**[chatrecall.dev](https://chatrecall.dev)** · [How it works](https://chatrecall.dev/how-it-works/) · [MCP tools](https://chatrecall.dev/mcp/) · [Pricing](https://chatrecall.dev/pricing/) · [Self-host](https://chatrecall.dev/self-hosting/) · [Security](https://chatrecall.dev/security/)
|
|
14
14
|
|
|
15
|
-
>
|
|
15
|
+
> Turn what your AI coding tools already write into shared team knowledge, leaked-secret alerts, ranked code findings and tracked tasks.
|
|
16
16
|
|
|
17
|
-
Your
|
|
17
|
+
**Your agents wrote it all down. Nobody read it.**
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
Every coding agent you run keeps a full transcript of its work: the decisions, the
|
|
20
|
+
reasoning, the keys somebody pasted, the problems it found and never filed. Each one
|
|
21
|
+
writes to its own directory in its own format, none can read another's, and nothing
|
|
22
|
+
reads any of them. `chat-recall` does, through **61 MCP tools**.
|
|
23
|
+
|
|
24
|
+
| | What it does | Tools |
|
|
25
|
+
|---|---|---|
|
|
26
|
+
| **Shared AI knowledge** | Decisions, conventions and project facts one agent learned, available to every other agent and every teammate. Time-aware, so a superseded decision reads as superseded | 16 |
|
|
27
|
+
| **Security findings** | Credentials pasted into past conversations, flagged per session, checked for whether they still work, and tracked until rotated or dismissed | 4 |
|
|
28
|
+
| **Automated code improvements** | Ranks what is actually worth fixing in a repository, then applies or dismisses each recommendation, with code intelligence over the repo itself | 9 |
|
|
29
|
+
| **Task tracking** | A shared board fed by those findings, with rules per repository, so a finding becomes work instead of a report | 5 |
|
|
30
|
+
|
|
31
|
+
Underneath all four is one index of every session your tools already wrote, and 28
|
|
32
|
+
more tools to search, replay and diff it. That index is the mechanism. It is not
|
|
33
|
+
the pitch, and it is not why anyone buys this.
|
|
34
|
+
|
|
35
|
+
The cross-tool part is what makes it work. A single tool's built-in history stops at
|
|
36
|
+
its own boundary. This does not, and neither does your team.
|
|
20
37
|
|
|
21
38
|
## See it work
|
|
22
39
|
|
|
23
|
-
Every screen below is
|
|
24
|
-
|
|
40
|
+
Every screen below is real output against a real server, captured from the demo
|
|
41
|
+
account. Nothing is mocked, replayed or re-timed.
|
|
25
42
|
|
|
26
|
-
**One
|
|
27
|
-
|
|
43
|
+
**One index, every tool.** Search finds a session by what was *discussed* in it,
|
|
44
|
+
not by its filename, and `memory status` shows every source type in one place —
|
|
45
|
+
sessions beside the skills, MCPs, commands, subagents and hooks that produced
|
|
46
|
+
them.
|
|
28
47
|
|
|
29
|
-

|
|
30
49
|
|
|
31
50
|
**Or just ask in plain English** — no tool names, no session ids. The agent picks
|
|
32
51
|
the call itself:
|
|
@@ -50,7 +69,6 @@ That indexes the transcripts already on your disk, detects which AI tools you ha
|
|
|
50
69
|
|---|---|
|
|
51
70
|
| Claude Code | `~/.mcp.json` |
|
|
52
71
|
| Codex | `~/.codex/config.toml` |
|
|
53
|
-
| Gemini CLI | `~/.gemini/settings.json` |
|
|
54
72
|
| OpenCode | `~/.config/opencode/opencode.json` |
|
|
55
73
|
| Cursor | `~/.cursor/mcp.json` |
|
|
56
74
|
|
|
@@ -61,6 +79,24 @@ It only touches a config whose tool is on this machine, it never overwrites an e
|
|
|
61
79
|
/plugin install chat-recall@chat-recall
|
|
62
80
|
```
|
|
63
81
|
|
|
82
|
+
Any other MCP client (Claude Desktop, Windsurf, Zed, Cline, or a tool `init` does
|
|
83
|
+
not know) takes the same server as a JSON entry. The bin is `chat-recall-mcp`,
|
|
84
|
+
which is why the package name alone is not enough — `npx -y chat-recall` starts
|
|
85
|
+
the CLI, not the server:
|
|
86
|
+
|
|
87
|
+
```json
|
|
88
|
+
{
|
|
89
|
+
"mcpServers": {
|
|
90
|
+
"chat-recall": {
|
|
91
|
+
"command": "npx",
|
|
92
|
+
"args": ["-y", "-p", "chat-recall", "chat-recall-mcp"]
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
The same command as one line, for a `claude mcp add`-style client: `npx -y -p chat-recall chat-recall-mcp`.
|
|
99
|
+
|
|
64
100
|
Then:
|
|
65
101
|
|
|
66
102
|
```bash
|
|
@@ -94,7 +130,7 @@ Exclusions live on the machine that holds the data, so the CLI owns them; they a
|
|
|
94
130
|
|
|
95
131
|
## Four things it actually does
|
|
96
132
|
|
|
97
|
-
1. **Cross-tool unified memory.** One index, one search, one UI over Claude Code (`~/.claude/projects/`),
|
|
133
|
+
1. **Cross-tool unified memory.** One index, one search, one UI over Claude Code (`~/.claude/projects/`), Codex (`~/.codex/`), OpenCode (`~/.local/share/opencode/`), Antigravity (`~/.gemini/antigravity-cli/`) 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.
|
|
98
134
|
2. **The agent recalls itself.** 61 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`.
|
|
99
135
|
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.
|
|
100
136
|
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.
|
|
@@ -225,7 +261,6 @@ codeindex is open source (MIT) at [github.com/munhq/codeindex](https://github.co
|
|
|
225
261
|
| Source | Origin | Notes |
|
|
226
262
|
|--------|--------|-------|
|
|
227
263
|
| **Sessions (Claude)** | `~/.claude/projects/<hash>/<uuid>.jsonl` | Full transcripts, tokens, cost, files touched, models used |
|
|
228
|
-
| **Sessions (Gemini CLI)** | `~/.gemini/tmp/*/chats/*.json` | Tokens and tool usage extracted where present |
|
|
229
264
|
| **Sessions (OpenCode)** | `~/.local/share/opencode/opencode.db` (SQLite) | Cost, tokens, todos |
|
|
230
265
|
| **Subagent transcripts** | `<session-dir>/<id>/subagents/*.jsonl` | Explore, aside, **and `acompact-*`** (orphaned compacted history) |
|
|
231
266
|
| **Plans** | `~/.claude/plans/*.md` | Agent planning docs, split by `##` |
|
|
@@ -302,7 +337,7 @@ No telemetry. Your data lives in **your** server's Postgres — back that up how
|
|
|
302
337
|
packages/
|
|
303
338
|
├── engine/src/
|
|
304
339
|
│ ├── core/
|
|
305
|
-
│ │ ├── backends/ ToolBackend per AI tool (claude,
|
|
340
|
+
│ │ ├── backends/ ToolBackend per AI tool (claude, opencode, codex, agy, cursor)
|
|
306
341
|
│ │ ├── tool-backend.ts Registry interface — single source of truth for tool identity
|
|
307
342
|
│ │ ├── tool-paths.ts Env-overridable default paths for each tool
|
|
308
343
|
│ │ ├── generic-engine.ts Shared turn extraction / edit scan / replay (canonical events)
|
|
@@ -325,13 +360,13 @@ e2e/ Playwright tests for the dashboard
|
|
|
325
360
|
Two extension points, both registry-driven:
|
|
326
361
|
|
|
327
362
|
- **Adding a new content type** (e.g. another file format to index) — implement `MemorySource` (`discover` → `parse` → `extractLinks`) and register it in the `SourceRegistry`.
|
|
328
|
-
- **Adding a new AI tool** (a
|
|
363
|
+
- **Adding a new AI tool** (a sixth backend alongside Claude/OpenCode/Codex/Antigravity/Cursor) — implement `ToolBackend` (paths, ID handling, `readEvents`, `fileToolMap`, `extractEditDelta`) and register it in `packages/engine/src/core/backends/index.ts`. All paths are env-overridable via `CHAT_RECALL_{CLAUDE,CODEX,AGY,CURSOR,CURSOR_IDE}_HOME` / `CHAT_RECALL_OPENCODE_DB`.
|
|
329
364
|
|
|
330
365
|
## Requirements
|
|
331
366
|
|
|
332
367
|
- Node.js 22 or later. The Docker image and CI run 24.
|
|
333
368
|
- Sessions written by a supported tool, in its standard location: `~/.claude/`,
|
|
334
|
-
`~/.codex/`, `~/.local/share/opencode/`, `~/.gemini/`.
|
|
369
|
+
`~/.codex/`, `~/.local/share/opencode/`, `~/.gemini/antigravity-cli/`.
|
|
335
370
|
|
|
336
371
|
That is the whole list. No API key is needed to install, index or search.
|
|
337
372
|
|