@muthuishere/crossmem 0.1.1 → 0.1.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.
Files changed (2) hide show
  1. package/README.md +119 -2
  2. package/package.json +6 -6
package/README.md CHANGED
@@ -1,3 +1,120 @@
1
- # @muthuishere/crossmem
1
+ # crossmem
2
2
 
3
- npm launcher for the native `crossmem` CLI.
3
+ **Portable context memory across local agent tools.**
4
+
5
+ `crossmem` discovers your local Claude Code, Codex, Devin, and Copilot session stores, lists available sessions, and emits a clean context bundle that can be loaded into another agent session — so context follows you across tools and repos.
6
+
7
+ It is primarily a fast, local-first context CLI. It sends no telemetry; everything is local reads.
8
+
9
+ ## Install
10
+
11
+ ```sh
12
+ npm install -g @muthuishere/crossmem
13
+ ```
14
+
15
+ This package is a thin launcher that resolves a prebuilt native binary for your platform (`darwin-arm64`, `darwin-x64`, `linux-arm64`, `linux-x64`, `windows-x64`) via optional dependencies — no compiler or Go toolchain required.
16
+
17
+ Also available via:
18
+
19
+ ```sh
20
+ go install github.com/muthuishere/crossmemcli/cmd/crossmem@latest # Go
21
+ brew install muthuishere/tap/crossmem # Homebrew
22
+ ```
23
+
24
+ ## Resume across tools
25
+
26
+ The core flow: Codex hits its usage limit, you reopen the **same folder** in Claude
27
+ Code, and pick up where you left off.
28
+
29
+ ```sh
30
+ # 1. From the folder, load the latest session for it (summary by default)
31
+ crossmem load . --limit 1
32
+
33
+ # 2. Prefer to choose? List the recent sessions for THIS folder, newest first
34
+ crossmem list . --limit 5
35
+ # 2026-06-29T14:27 codex /Users/you/.codex/sessions/.../rollout-….jsonl
36
+ # 2026-06-29T04:10 devin devin:narrow-action
37
+ # 2026-06-28T21:02 claude /Users/you/.claude/projects/.../<id>.jsonl
38
+
39
+ # 3. Load the one you picked, by the handle in the last column
40
+ crossmem load --session <handle> # e.g. a .jsonl path, or devin:<id>
41
+ crossmem load --session <handle> --full # fuller excerpt instead of the summary
42
+ ```
43
+
44
+ `crossmem` matches a session to a folder by the **real working directory** recorded
45
+ in each transcript — so it works even when the folder name contains a dash, and
46
+ across every tool. The handle from `list` is uniform (`--session` takes a transcript
47
+ path or `devin:<id>`), so loading is the same whether the session lived in a JSONL
48
+ file or a SQLite database.
49
+
50
+ **summary vs full** — by default `load` emits a compact, summary-friendly excerpt per
51
+ session; add `--full` for a larger, more verbatim excerpt.
52
+
53
+ ## Usage
54
+
55
+ ```sh
56
+ crossmem scan # discover known local context stores
57
+ crossmem list . --limit 5 # recent sessions for THIS folder
58
+ crossmem list --provider claude --limit 20 # recent Claude sessions everywhere
59
+ crossmem load . # portable context bundle for this repo
60
+ crossmem load --session <handle> --full # one chosen session, fuller excerpt
61
+ crossmem update . # write durable .crossmem/ context files
62
+ ```
63
+
64
+ Every command has built-in help: `crossmem help load`, `crossmem --version`.
65
+
66
+ ### Commands
67
+
68
+ | Command | What it does |
69
+ | --- | --- |
70
+ | `scan` | Discover known local stores without reading transcript contents. |
71
+ | `list` / `sessions` | List recent sessions; pass a folder to scope to it, or filter with `--provider`. |
72
+ | `load` / `context` | Print a context bundle for a folder, or one session via `--session`; `--full` for more. |
73
+ | `update` | Write durable `<folder>/.crossmem/` files (`context.md`, `guardrails.md`, `sessions.json`, `sources.json`). |
74
+ | `guardrails` | Print the repo instruction files an agent should read first. |
75
+ | `install --skills` | Install the optional global `crossmem-loader` skill that drives this flow. |
76
+
77
+ ## Local stores
78
+
79
+ `crossmem` reads these on-disk stores (read-only):
80
+
81
+ | Tool | Store |
82
+ | --- | --- |
83
+ | Claude Code | `~/.claude/projects/<encoded-workspace>/*.jsonl` (+ per-project `memory/`) |
84
+ | Codex | `~/.codex/sessions/YYYY/MM/DD/*.jsonl`, `~/.codex/history.jsonl` |
85
+ | Copilot (VS Code) | `~/Library/Application Support/Code/User/workspaceStorage/<id>/.../*.jsonl` |
86
+ | Devin CLI | `~/.local/share/devin/cli/sessions.db` (SQLite) |
87
+
88
+ ## Bundles & guardrails
89
+
90
+ `crossmem load` prints a bundle; `crossmem update .` writes it durably under `.crossmem/`. A bundle separates two things on purpose:
91
+
92
+ - **Guardrails** — repo instruction files (`AGENTS.md`, `CLAUDE.md`, `.agents/AGENTS.md`, `.claude/CLAUDE.md`) treated as *authoritative instructions*.
93
+ - **History** — recent session excerpts, treated as *context only*.
94
+
95
+ How much to summarize is left to the consuming agent (or the `crossmem-loader` skill), since different tasks need different amounts of history.
96
+
97
+ ## Safety
98
+
99
+ `crossmem` reads other tools' private stores, so it is deliberately conservative:
100
+
101
+ - It never reads `*.env`, credential files, auth databases, or `vault/` directories (e.g. Devin's `credentials.toml` is skipped).
102
+ - Secret values are never written into generated context.
103
+
104
+ ## Debugging
105
+
106
+ Observability is local and opt-in:
107
+
108
+ ```sh
109
+ CROSSMEM_DEBUG=1 crossmem scan
110
+ CROSSMEM_LOG=/tmp/crossmem.log crossmem load . --limit 5
111
+ ```
112
+
113
+ Debug logs include command flow and local read/query failures — never transcript contents.
114
+
115
+ ## Links
116
+
117
+ - Source & full docs: https://github.com/muthuishere/crossmemcli
118
+ - Issues: https://github.com/muthuishere/crossmemcli/issues
119
+
120
+ MIT © Muthukumaran Navaneethakrishnan
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@muthuishere/crossmem",
3
- "version": "0.1.1",
3
+ "version": "0.1.3",
4
4
  "description": "Portable context memory across local agent tools.",
5
5
  "keywords": [
6
6
  "crossmem",
@@ -33,11 +33,11 @@
33
33
  "README.md"
34
34
  ],
35
35
  "optionalDependencies": {
36
- "@muthuishere/crossmem-darwin-arm64": "0.1.1",
37
- "@muthuishere/crossmem-darwin-x64": "0.1.1",
38
- "@muthuishere/crossmem-linux-arm64": "0.1.1",
39
- "@muthuishere/crossmem-linux-x64": "0.1.1",
40
- "@muthuishere/crossmem-windows-x64": "0.1.1"
36
+ "@muthuishere/crossmem-darwin-arm64": "0.1.3",
37
+ "@muthuishere/crossmem-darwin-x64": "0.1.3",
38
+ "@muthuishere/crossmem-linux-arm64": "0.1.3",
39
+ "@muthuishere/crossmem-linux-x64": "0.1.3",
40
+ "@muthuishere/crossmem-windows-x64": "0.1.3"
41
41
  },
42
42
  "os": [
43
43
  "darwin",