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.6",
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 MEMEX CALL IN A NEW SESSION, START WITH memex_overview.
878
- It returns a single-page snapshotsources breakdown, totals, date
879
- range, the 10 most recent conversation titles, AND the live status of
880
- the auto-capture daemon. This gives you a mental map of what is and
881
- is not in memory, so subsequent searches are sharper than blind
882
- guessing. One overview call costs ~500 tokens and saves many wasted
883
- memex_search attempts. Skip it only if the user explicitly named a
884
- conversation_id you can fetch directly.
877
+ ON YOUR VERY FIRST INTERACTION IN A NEW SESSION BEFORE responding
878
+ to the user's first messageCALL 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. Let me run a quick discovery before any install actions...
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 in your projects)
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. Drop Telegram exports into `~/.memex/inbox/` manually if you want those too.
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
- > Ready to proceed with Step 1 (`npm install -g memex-mvp`)?
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:** [shows each command, runs npm install, gets `which memex` path, merges into `~/.cursor/mcp.json`, runs `memex-sync install`, runs `memex-sync scan`, prints restart hint]
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 ~2 minutes npm install, MCP config wiring, auto-capture daemon, history backfill. No cloud, no account, verbatim storage. Also indexes Obsidian notes, Telegram chats, and any URL the user wants to save (web pages, Perplexity threads, AI chat shares memex_store_document tool, v0.6+). 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.2.0
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 review. Then:
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 setup` anytime later." Don't push.
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**. You can drop Telegram exports into `~/.memex/inbox/` later if needed.
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**. If you also use Obsidian or want Telegram chats indexed, we can add those after the main install.
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
  >