memex-mvp 0.10.6 → 0.10.7
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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "memex-mvp",
|
|
3
|
-
"version": "0.10.
|
|
3
|
+
"version": "0.10.7",
|
|
4
4
|
"description": "Local-first MCP server for cross-agent AI memory. One SQLite + FTS5 corpus across Claude Code, Cowork, Cursor, Continue, Zed, Obsidian, and Telegram — passively captured, verbatim, searchable from any MCP-compatible client.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "server.js",
|
package/server.js
CHANGED
|
@@ -874,14 +874,46 @@ without context the user spent months building is much larger.
|
|
|
874
874
|
|
|
875
875
|
══ FIRST CONTACT IN A SESSION ══
|
|
876
876
|
|
|
877
|
-
ON YOUR FIRST
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
877
|
+
ON YOUR VERY FIRST INTERACTION IN A NEW SESSION — BEFORE responding
|
|
878
|
+
to the user's first message — CALL memex_overview. This is not
|
|
879
|
+
optional. It is your equivalent of a SessionStart hook for clients
|
|
880
|
+
that don't have one (Cursor, Cline, Continue, Zed, Claude Desktop —
|
|
881
|
+
i.e. everyone except Claude Code CLI).
|
|
882
|
+
|
|
883
|
+
Why this first, automatically:
|
|
884
|
+
|
|
885
|
+
1. memex_overview returns the corpus snapshot in one call (~500
|
|
886
|
+
tokens) — sources, counts, date range, 10 most recent
|
|
887
|
+
conversation titles, AND the live status of the auto-capture
|
|
888
|
+
daemon. You build a mental map; subsequent memex_search queries
|
|
889
|
+
are sharper than blind guesses.
|
|
890
|
+
|
|
891
|
+
2. The response includes a telegram_pending field — a list of
|
|
892
|
+
Telegram exports the user has staged but not yet imported. If
|
|
893
|
+
count > 0, MENTION THIS to the user PROACTIVELY in your first
|
|
894
|
+
reply, before answering whatever they asked. Example:
|
|
895
|
+
"Before I help with X — I noticed you have 3 Telegram chats
|
|
896
|
+
ready to import to memex (Family, Work team, Mom). Want me
|
|
897
|
+
to handle that now? Or remember it for later?"
|
|
898
|
+
Then call memex_telegram_pending for the full list when they
|
|
899
|
+
say yes, and memex_telegram_import for the selected chats.
|
|
900
|
+
|
|
901
|
+
3. The response includes a sync-status banner. If the daemon is
|
|
902
|
+
down (🔴) or not installed (⚪), surface this too — the user
|
|
903
|
+
may not realize their memory has stopped capturing.
|
|
904
|
+
|
|
905
|
+
When to SKIP memex_overview on first contact:
|
|
906
|
+
• The user explicitly named a conversation_id — fetch directly
|
|
907
|
+
• The conversation is clearly not memory-related (e.g. user asked
|
|
908
|
+
you to debug their code in a non-memex repo, no recall implied)
|
|
909
|
+
• You're already running INSIDE Claude Code CLI AND its SessionStart
|
|
910
|
+
hook has already injected memex context (you'll see "memex auto-
|
|
911
|
+
context for ..." in your system message). In that case the hook
|
|
912
|
+
did this work — don't double-call.
|
|
913
|
+
|
|
914
|
+
Otherwise: call memex_overview first. Always. The cost is small; the
|
|
915
|
+
benefit (proactive Brian Chesky moment for Telegram imports + map of
|
|
916
|
+
the corpus) is large.
|
|
885
917
|
|
|
886
918
|
══ AUTO-CAPTURE DAEMON (memex-sync) ══
|
|
887
919
|
|
|
@@ -47,21 +47,25 @@ The skill description is written so Claude / OpenClaw auto-invoke it from any ph
|
|
|
47
47
|
|
|
48
48
|
> **User:** install memex
|
|
49
49
|
>
|
|
50
|
-
> **Agent:** 👋 You're running inside Cursor.
|
|
50
|
+
> **Agent:** 👋 You're running inside Cursor. Quick discovery before any install actions...
|
|
51
51
|
>
|
|
52
52
|
> ✓ Found Claude Code data at `~/.claude/projects/` (8 sessions)
|
|
53
|
-
> ✓ Found Cowork sessions (3 subagent transcripts
|
|
53
|
+
> ✓ Found Cowork sessions (3 subagent transcripts)
|
|
54
54
|
> ✗ Continue not installed
|
|
55
55
|
> ✗ Zed not installed
|
|
56
56
|
> ✓ Cursor data found (this is where I'll write the MCP config)
|
|
57
57
|
>
|
|
58
|
-
> After install, memex will auto-index conversations from: Claude Code, Cowork, Cursor.
|
|
58
|
+
> After install, memex will auto-index conversations from: **Claude Code, Cowork, Cursor**. v0.10+ also auto-detects Telegram Desktop exports — when you export a chat, memex stages it and I'll ask which to import (privacy-first per-chat consent).
|
|
59
59
|
>
|
|
60
|
-
>
|
|
60
|
+
> Best path is the curl one-liner — does npm install (auto-fixes EACCES), daemon, auto-context hook, and history backfill in ~60 seconds. Want me to run:
|
|
61
|
+
>
|
|
62
|
+
> ```
|
|
63
|
+
> curl -fsSL https://memex.parallelclaw.ai/install.sh | bash
|
|
64
|
+
> ```
|
|
61
65
|
>
|
|
62
66
|
> **User:** yes
|
|
63
67
|
>
|
|
64
|
-
> **Agent:** [
|
|
68
|
+
> **Agent:** [streams curl output, then edits `~/.cursor/mcp.json` to add `memex` MCP entry, prints restart hint, and offers Telegram capture setup]
|
|
65
69
|
|
|
66
70
|
See [examples.md](examples.md) for more sample dialogues, including EACCES recovery and partial-install scenarios.
|
|
67
71
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: install-memex
|
|
3
|
-
description: Make Claude, Cursor, Cline, Continue, and Zed remember every AI conversation forever — one local SQLite corpus shared across all of them. Installs memex (local-first MCP server) in ~
|
|
4
|
-
version: 1.
|
|
3
|
+
description: Make Claude, Cursor, Cline, Continue, and Zed remember every AI conversation forever — one local SQLite corpus shared across all of them. Installs memex (local-first MCP server) in ~60 seconds via curl one-liner. Includes auto-capture daemon for Claude Code / Cowork / Cursor / Obsidian; v0.10 Telegram auto-detect (export from Desktop → memex stages it → AI proactively asks which to import, privacy-first per-chat consent); v0.8 SessionStart hook for the Brian Chesky moment ("Claude already knows what you were doing"); URL / Perplexity / AI chat share capture via memex_store_document. 18 MCP tools, no cloud, no account, verbatim storage. Use when the user says "install memex", "set up memex", "add memory to my AI", "make my agent remember across sessions", "сохрани мои чаты", or similar.
|
|
4
|
+
version: 1.3.0
|
|
5
5
|
metadata:
|
|
6
6
|
openclaw:
|
|
7
7
|
emoji: "📚"
|
|
@@ -225,16 +225,35 @@ If yes, run `memex_telegram_check` (MCP tool) or `memex telegram check` (CLI). T
|
|
|
225
225
|
- **Logged in <24h ago?** → Tell them: "Telegram blocks export for the first 24h. Wait ~X hours, then come back."
|
|
226
226
|
- **Ready to export?** → Show the click-path: open chat → ⋮ menu (top-right) → "Export chat history" → format HTML or JSON → Export.
|
|
227
227
|
|
|
228
|
-
After the user exports, memex's daemon **auto-detects** the file in ~/Downloads/Telegram Desktop/ and stages it in pending
|
|
228
|
+
After the user exports, memex's daemon **auto-detects** the file in ~/Downloads/Telegram Desktop/ within ~7 seconds and stages it in `~/.memex/pending/`. Then:
|
|
229
229
|
|
|
230
230
|
- Call `memex_telegram_pending` to list staged exports (chat name, msg count, date range).
|
|
231
|
-
- **Present as a numbered list**, ask which to import. Accept indices, titles, or natural language.
|
|
232
|
-
- Call `memex_telegram_import` with selected indices/titles. The chat is added to the allow-list — future re-exports auto-merge.
|
|
231
|
+
- **Present as a numbered list**, ask which to import. Accept indices, titles, or natural language ("import family and work, skip bank").
|
|
232
|
+
- Call `memex_telegram_import` with selected indices/titles. The chat is added to the allow-list — future re-exports auto-merge via UNIQUE(msg_id).
|
|
233
233
|
- For sensitive chats user doesn't want (Bank, Therapist, etc.), call `memex_telegram_skip`.
|
|
234
234
|
|
|
235
|
+
**Optional — clickable native macOS banner (v0.10.4+):** memex can fire a macOS notification the moment an export is staged. Default OFF for privacy. If the user wants this:
|
|
236
|
+
|
|
237
|
+
```sh
|
|
238
|
+
brew install terminal-notifier # required for clickable banner
|
|
239
|
+
memex telegram notifications on # enable; default: titles hidden
|
|
240
|
+
memex telegram notifications on --show-titles # include chat names in banner
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
When enabled with `terminal-notifier`, clicking the banner opens (auto-detect priority): Claude Code CLI in a fresh Terminal tab → Claude Desktop → Terminal with `memex telegram pending`. The CLI launch path triggers the SessionStart hook → Brian Chesky moment. Override target: `memex telegram notifications target <auto|claude-cli|claude-desktop|terminal|none>`.
|
|
244
|
+
|
|
245
|
+
**Other useful Telegram commands** (no MCP-tool wiring needed):
|
|
246
|
+
|
|
247
|
+
```sh
|
|
248
|
+
memex telegram check # diagnostic: Desktop? login age (24h)? watcher?
|
|
249
|
+
memex telegram open-pending # one-shot: open pending list in best client
|
|
250
|
+
memex telegram mode auto # auto-import allow-listed chats on re-export
|
|
251
|
+
memex telegram status # decisions counts (allowed/skipped/blocked)
|
|
252
|
+
```
|
|
253
|
+
|
|
235
254
|
**Privacy is the core promise. Never auto-import. Always get explicit per-chat consent on the first round.**
|
|
236
255
|
|
|
237
|
-
If the user declines Telegram setup ("not now" / "skip"): say "OK, I'll skip Telegram. You can run `memex telegram
|
|
256
|
+
If the user declines Telegram setup ("not now" / "skip"): say "OK, I'll skip Telegram. You can run `memex telegram check` anytime later to start." Don't push.
|
|
238
257
|
|
|
239
258
|
### 6. Tell the user what to do next
|
|
240
259
|
|
|
@@ -247,8 +266,12 @@ After restart, suggest they try any of:
|
|
|
247
266
|
- "save https://en.wikipedia.org/wiki/As_We_May_Think to memex" → triggers `memex_store_document` and teaches the user that URL-saving exists (v0.6+)
|
|
248
267
|
- **Open Claude Code in any project the user worked on recently** — the SessionStart auto-context (v0.8+) should kick in and Claude will mention prior work _before_ the user types anything. This is the "Brian Chesky moment" — the magical-first-impression of memex.
|
|
249
268
|
|
|
269
|
+
- **(if Telegram was set up)** `memex telegram check` — confirms daemon's Telegram-Downloads watcher is active and shows the user's full capture pipeline state.
|
|
270
|
+
|
|
250
271
|
These confirm everything works end-to-end.
|
|
251
272
|
|
|
273
|
+
**Brian Chesky moment beyond Claude Code (v0.10.7+):** the SessionStart hook works only in Claude Code CLI. But starting v0.10.7, the same proactive behaviour is taught to agents in Cursor / Cline / Continue / Zed / Claude Desktop via SERVER_INSTRUCTIONS — these agents call `memex_overview` automatically on first interaction, read its `telegram_pending` field, and surface pending exports in their first reply. Slightly higher latency (one MCP roundtrip vs hook's instant inject), but same UX.
|
|
274
|
+
|
|
252
275
|
**CLI fallback (v0.7+):** if the MCP integration doesn't pick up in the user's client for any reason, tell them they can verify memex from the terminal directly — same binary, no MCP needed:
|
|
253
276
|
|
|
254
277
|
```sh
|
|
@@ -19,7 +19,7 @@ Sample interactions when the user invokes this skill. These show typical happy p
|
|
|
19
19
|
> ✗ Continue / Zed not found
|
|
20
20
|
> ```
|
|
21
21
|
>
|
|
22
|
-
> After install, memex will auto-index conversations from: **Claude Code, Cowork**.
|
|
22
|
+
> After install, memex will auto-index conversations from: **Claude Code, Cowork**. v0.10+ also auto-detects Telegram Desktop exports — when you export a chat, I'll ask which to import.
|
|
23
23
|
>
|
|
24
24
|
> The fast path is a single hosted bash script that does **npm install (with EACCES auto-fix), daemon setup, Brian Chesky auto-context hook, history backfill, and `claude mcp add memex`** all in one go. Idempotent. Want me to run:
|
|
25
25
|
>
|
|
@@ -64,7 +64,7 @@ Sample interactions when the user invokes this skill. These show typical happy p
|
|
|
64
64
|
> ✗ Zed config not found
|
|
65
65
|
> ```
|
|
66
66
|
>
|
|
67
|
-
> After install, memex will auto-index conversations from: **Claude Code, Cowork, Cursor**.
|
|
67
|
+
> After install, memex will auto-index conversations from: **Claude Code, Cowork, Cursor**. v0.10+ Telegram capture also kicks in automatically — when you export a chat from Telegram Desktop, I'll ask which to import. If you also use Obsidian, we can wire that vault in after.
|
|
68
68
|
>
|
|
69
69
|
> Ready to proceed with Step 1?
|
|
70
70
|
>
|