mindlink 1.1.4 → 1.2.0

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
@@ -12,15 +12,17 @@ Three things break AI-assisted development:
12
12
 
13
13
  MindLink fixes all three. One command per project.
14
14
 
15
+ Git gave every developer a shared version history. MindLink gives your AI team a shared memory — persistent, version-controlled, and not locked inside any one tool.
16
+
15
17
  [![npm version](https://img.shields.io/npm/v/mindlink)](https://www.npmjs.com/package/mindlink)
16
18
  [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
17
19
  [![Platform](https://img.shields.io/badge/platform-macOS%20%7C%20Linux%20%7C%20Windows-lightgrey)](#installation)
18
20
 
19
21
  ---
20
22
 
21
- > ### ◉ Latest — v1.1.4
22
- > **Session memory · Cross-session sync · Cross-agent · 8 AI agents supported · Auto-refresh agent files on every update**
23
- > [→ Full release notes](https://github.com/404-not-found/mindlink/releases/tag/v1.1.4)
23
+ > ### ◉ Latest — v1.2.0
24
+ > **Auto-bootstrap on init · `mindlink diff` · Team onboarding mode · Memory timestamps · Windows hook warning · Propagating update system**
25
+ > [→ Full release notes](https://github.com/404-not-found/mindlink/releases/tag/v1.2.0)
24
26
 
25
27
  ---
26
28
 
@@ -32,7 +34,8 @@ MindLink fixes all three. One command per project.
32
34
  - [Supported Agents](#supported-agents)
33
35
  - [Commands](#commands)
34
36
  - [Can My AI Run These Commands?](#can-my-ai-run-these-commands-itself)
35
- - [The Hook (Claude Code)](#the-hook-claude-code-users)
37
+ - [What's New in v1.2](#whats-new-in-v12)
38
+ - [Best with Claude Code](#best-with-claude-code)
36
39
  - [License](#license)
37
40
  - [Contributing](#contributing)
38
41
 
@@ -90,7 +93,7 @@ Close any AI session whenever you want — Claude Code, Cursor, Codex, whatever
90
93
 
91
94
  **One memory, every agent** — use Claude Code in the morning, switch to Cursor in the afternoon — both read the exact same `.brain/` folder. No syncing. No duplicating context. No "but I told the other AI this already." Every agent you use shares one brain, because the memory lives in your project, not inside any particular tool. This is something no AI vendor can replicate — they each only know their own product.
92
95
 
93
- **Team memory out of the box** — commit `.brain/` to git and your whole team shares the same AI context. New teammate joins, does `git pull`, and their AI agent is already fully briefed on the project. No onboarding session, no copying notes, no "let me catch you up."
96
+ **Team memory, like git** — commit `.brain/` to git and your whole team shares the same AI context, automatically. New developer joins, does `git pull` their AI is already fully briefed. Two developers in the same project? Their agents share context in real time, just like working off the same branch. No onboarding session, no copying notes, no "let me catch you up." This is what git did for code history — MindLink does for AI memory.
94
97
 
95
98
  **Plug in, not lock in** — works with Claude Code, Cursor, Codex, Gemini CLI, GitHub Copilot, Windsurf, Cline, Aider, and more. Because MindLink just writes files that agents read — no APIs, no SDKs, no version dependencies — it works with whatever version you have installed today and every version that comes after.
96
99
 
@@ -116,6 +119,10 @@ MindLink works with any version of:
116
119
  | Windsurf | `.windsurfrules` |
117
120
  | Cline | `.clinerules` |
118
121
  | Aider | `CONVENTIONS.md` |
122
+ | Zed | `.rules` |
123
+ | Kiro | `.kiro/steering/mindlink.md` |
124
+ | Continue.dev | `.continue/rules/mindlink.md` |
125
+ | Trae | `.trae/rules/mindlink.md` |
119
126
 
120
127
  MindLink works by writing instruction files that agents read at startup — no API calls, no SDKs, no version pinning. It works with whatever version you have today and any version released tomorrow. If your agent isn't listed, `mindlink init` lets you add a custom one.
121
128
 
@@ -126,7 +133,7 @@ MindLink works by writing instruction files that agents read at startup — no A
126
133
  **Run once per project — in your terminal, inside the project directory:**
127
134
  ```bash
128
135
  cd my-project
129
- mindlink init # creates .brain/ here — this is where your AI's memory lives
136
+ mindlink init # creates .brain/ here — pre-filled from your project on day 1
130
137
  ```
131
138
 
132
139
  **Ask your AI to run these, or run them yourself in any terminal:**
@@ -134,6 +141,7 @@ mindlink init # creates .brain/ here — this is where your AI's memory l
134
141
  mindlink status # what happened last session, what's next
135
142
  mindlink summary # full briefing — everything your AI knows, in one view
136
143
  mindlink log # complete session history
144
+ mindlink diff # what changed in .brain/ since last session
137
145
  mindlink sync --once # check what other sessions have shared
138
146
  ```
139
147
 
@@ -159,7 +167,7 @@ mindlink import # unzip into this project — merge or overwrite your exist
159
167
  **Run in your terminal only — maintenance tasks:**
160
168
  ```bash
161
169
  mindlink doctor # health check — verify your setup is working correctly
162
- mindlink update # check for a newer version, never installs without asking
170
+ mindlink update # check for a newer version, refreshes agent files in all projects
163
171
  mindlink uninstall # remove MindLink from this project
164
172
  ```
165
173
 
@@ -171,7 +179,7 @@ Every command supports `--help`. Full CLI reference: [commands/](commands/index.
171
179
 
172
180
  Yes — and it should, for the read-only ones. Your AI has a terminal. Tell it to run `mindlink summary` or `mindlink status` and it reads the output directly. This is the cleanest way to brief a mid-session agent without copying files around.
173
181
 
174
- **AI can run:** `status`, `summary`, `log`, `sync --once`
182
+ **AI can run:** `status`, `summary`, `log`, `diff`, `sync --once`
175
183
 
176
184
  **Run yourself:** `init`, `clear`, `reset`, `config`, `export`, `import`, `update`, `uninstall` — these are interactive, change settings, or modify files. Keep human hands on them.
177
185
 
@@ -179,9 +187,42 @@ The one exception: `mindlink sync` in watch mode runs continuously — keep it i
179
187
 
180
188
  ---
181
189
 
182
- ## The Hook (Claude Code users)
190
+ ## Best with Claude Code
191
+
192
+ MindLink works with every agent listed above. But Claude Code users get something the others don't: **a second enforcement layer**.
193
+
194
+ Every other agent reads the instruction file at startup and follows it as best it can. That's the instruction layer — guidance, not guarantees. The agent can skip a step, misread a section, or forget to write after a long session.
195
+
196
+ Claude Code gets both the instruction file **and** an OS-level hook that fires before every single message — outside the AI's control. This hook:
197
+
198
+ - Scans for memory triggers and reminds the agent to write `MEMORY.md` before answering
199
+ - Forces `SESSION.md` to be updated as the last action of every response
200
+ - Runs a shell-level check after every response: if `MEMORY.md` still contains only placeholders, the agent is immediately flagged and must fill it in before continuing
201
+
202
+ **The practical difference:**
203
+
204
+ | | All other agents | Claude Code |
205
+ |---|---|---|
206
+ | Persistent memory | ✓ instruction file | ✓ instruction file + hook |
207
+ | Enforced on every message | ✗ | ✓ OS-level hook |
208
+ | Post-response memory verification | ✗ | ✓ shell check |
209
+ | Context compaction recovery | ✓ instruction | ✓ instruction + hook |
210
+
211
+ If you're choosing an agent specifically to use with MindLink, Claude Code gives you the most reliable memory behavior. Other agents work well — Claude Code works harder.
212
+
213
+ ---
214
+
215
+ ## What's New in v1.2
216
+
217
+ **`mindlink init` now pre-fills your memory on day 1.** It scans your project — `package.json`, `README.md`, recent git commits, top-level directories — and writes a populated Core section into `MEMORY.md` before your first session. No more blank slate.
218
+
219
+ **Team onboarding mode.** When a teammate runs `mindlink init` in a project that already has `.brain/` memory, MindLink detects it and offers "set up agent files only" — writing just the instruction files without touching memory or config. One command, AI fully briefed.
220
+
221
+ **`mindlink diff` — see what your AI learned this session.** Shows which `.brain/` files changed since the session started. If `.brain/` is git-tracked, shows line-level additions and removals.
222
+
223
+ **Memory timestamps.** Agent instruction files now tell the AI to append `<!-- added: YYYY-MM-DD -->` to every new entry — so you can see how old a fact is and spot stale decisions.
183
224
 
184
- Claude Code users get an extra layer: a `UserPromptSubmit` hook in `.claude/settings.json` that fires on every message, reminding your agent to re-read `.brain/` if its context was just compacted. Other agents rely on their instruction files Claude Code gets both because it supports OS-level hooks. Same protection, different delivery.
225
+ **`mindlink update` now propagates everything.** When a new version adds a section to MEMORY.md or changes a template, running `mindlink update` applies those changes to all your initialized projectswithout touching your existing memory content.
185
226
 
186
227
  ---
187
228
 
@@ -0,0 +1,115 @@
1
+ # mindlink diff
2
+
3
+ Show what changed in `.brain/` since the current session started.
4
+
5
+ ---
6
+
7
+ ## Synopsis
8
+
9
+ ```bash
10
+ mindlink diff [--since <ref>] [--json]
11
+ ```
12
+
13
+ ---
14
+
15
+ ## Description
16
+
17
+ Shows a per-file summary of `.brain/` changes since the session began — which files were modified, how many lines they contain, and when they were last touched.
18
+
19
+ If `.brain/` is committed to git, `mindlink diff` also shows line-level additions and removals so you can see exactly what the AI wrote.
20
+
21
+ This command is useful for:
22
+ - Verifying that your AI actually wrote to MEMORY.md during the session (not just claimed to)
23
+ - Reviewing what context was captured before closing a session
24
+ - Debugging why a follow-up session is missing context
25
+
26
+ **Your AI can run this.** Ask it to run `mindlink diff` to check its own work.
27
+
28
+ ---
29
+
30
+ ## Output
31
+
32
+ **Without git tracking:**
33
+ ```
34
+ .brain/ changes
35
+ Session started 12m ago
36
+ .brain/ is not git-tracked — showing modification times only
37
+
38
+ ● MEMORY.md 94 lines · modified 3m ago
39
+ ○ SESSION.md 32 lines · modified 12m ago
40
+ ○ LOG.md 24 lines · modified 12m ago
41
+ ○ SHARED.md 21 lines · modified 12m ago
42
+
43
+ ✓ 1 file updated this session.
44
+ ```
45
+
46
+ `●` = modified this session · `○` = not modified this session
47
+
48
+ **With git tracking (`.brain/` committed):**
49
+ ```
50
+ .brain/ changes
51
+ Session started 12m ago
52
+ Git diff against: HEAD~1
53
+
54
+ ● MEMORY.md 97 lines · modified 3m ago
55
+ + TypeScript + Node.js <!-- added: 2026-04-12 -->
56
+ + Use mtime-based session verification for Stop hook
57
+
58
+ ○ SESSION.md 32 lines · modified 12m ago
59
+ no changes since last commit
60
+ ```
61
+
62
+ ---
63
+
64
+ ## Options
65
+
66
+ | Flag | Description |
67
+ |---|---|
68
+ | `--since <ref>` | Git ref or date to diff against. Default: `HEAD~1`. Examples: `HEAD~3`, `"2026-04-10"` |
69
+ | `--json` | Output as JSON — useful for scripting or AI consumption |
70
+
71
+ ---
72
+
73
+ ## Examples
74
+
75
+ **Check what changed this session:**
76
+ ```bash
77
+ mindlink diff
78
+ ```
79
+
80
+ **Diff against 3 commits ago:**
81
+ ```bash
82
+ mindlink diff --since HEAD~3
83
+ ```
84
+
85
+ **Machine-readable output:**
86
+ ```bash
87
+ mindlink diff --json
88
+ ```
89
+
90
+ ---
91
+
92
+ ## JSON Output
93
+
94
+ ```json
95
+ {
96
+ "MEMORY.md": {
97
+ "exists": true,
98
+ "mtime": 1776041234567,
99
+ "sizeLines": 97,
100
+ "added": ["TypeScript + Node.js"],
101
+ "removed": []
102
+ },
103
+ "SESSION.md": { "exists": true, "mtime": 1776041117345, "sizeLines": 32, "added": [], "removed": [] },
104
+ "LOG.md": { "exists": true, "mtime": 1776041117346, "sizeLines": 24, "added": [], "removed": [] },
105
+ "SHARED.md": { "exists": true, "mtime": 1776041117346, "sizeLines": 21, "added": [], "removed": [] }
106
+ }
107
+ ```
108
+
109
+ ---
110
+
111
+ ## Related Commands
112
+
113
+ - [`mindlink status`](status.md) — high-level view of current session state
114
+ - [`mindlink summary`](summary.md) — full contents of all `.brain/` files in one view
115
+ - [`mindlink clear`](clear.md) — reset SESSION.md for a fresh start
package/commands/index.md CHANGED
@@ -22,6 +22,7 @@ Commands are grouped by when and how you run them.
22
22
  | [status](status.md) | Show last session summary and what's next |
23
23
  | [summary](summary.md) | Full briefing — everything MindLink knows, in one view |
24
24
  | [log](log.md) | View full session history |
25
+ | [diff](diff.md) | Show what changed in `.brain/` since the current session started |
25
26
 
26
27
  ### Keep running in a background terminal tab (while sessions are active)
27
28
 
package/commands/init.md CHANGED
@@ -18,6 +18,8 @@ Creates a `.brain/` folder in the current directory and generates agent instruct
18
18
 
19
19
  **Run this before starting your AI session.** The agent reads the instruction files on startup. If you init after a session has already started, the current session won't see it — the next one will.
20
20
 
21
+ **MEMORY.md is pre-filled on day 1.** `mindlink init` scans your project and auto-populates the Core section with what it finds: project name and description from `package.json`, detected tech stack, top-level directory structure, and recent git commits. Your first AI session starts already briefed — no manual setup required.
22
+
21
23
  ---
22
24
 
23
25
  ## What Gets Created
@@ -56,6 +58,10 @@ Select the agents you use in this project. MindLink generates the right instruct
56
58
  | Windsurf | `.windsurfrules` |
57
59
  | Cline | `.clinerules` |
58
60
  | Aider | `CONVENTIONS.md` |
61
+ | Zed | `.rules` |
62
+ | Kiro | `.kiro/steering/mindlink.md` |
63
+ | Continue.dev | `.continue/rules/mindlink.md` |
64
+ | Trae | `.trae/rules/mindlink.md` |
59
65
  | Add custom agent | file name of your choice |
60
66
 
61
67
  **To change this later:** `mindlink config` → Agent instruction files
@@ -105,7 +111,7 @@ mindlink init --yes
105
111
 
106
112
  ## Already Initialized
107
113
 
108
- If `.brain/` already exists, `mindlink init` shows a recovery menu instead of an error:
114
+ If `.brain/` already exists **and agent files are present**, `mindlink init` shows a recovery menu:
109
115
 
110
116
  ```
111
117
  .brain/ already exists at this path. What would you like to do?
@@ -118,6 +124,25 @@ With `--yes`, exits immediately and tells you to run `mindlink config` to change
118
124
 
119
125
  ---
120
126
 
127
+ ## Team Onboarding Mode
128
+
129
+ If `.brain/` exists with real memory content **but no agent instruction files** — the typical state after `git pull` on a team project — `mindlink init` detects this automatically and offers a lighter flow:
130
+
131
+ ```
132
+ ◉ MindLink memory found in this project.
133
+ MEMORY.md has content — this looks like a team project.
134
+
135
+ ❯ Set up agent files recommended for new team members
136
+ Full re-init recreate everything, reconfigure settings
137
+ Cancel
138
+ ```
139
+
140
+ **"Set up agent files"** skips all configuration prompts and writes only the instruction files (CLAUDE.md, .cursorrules, etc.) for the agents you select. The existing `.brain/` memory, session state, and config are untouched. Your AI is immediately briefed from the team's shared memory.
141
+
142
+ This is the intended workflow for new team members joining a project that already uses MindLink.
143
+
144
+ ---
145
+
121
146
  ## Related Commands
122
147
 
123
148
  - [`mindlink config`](config.md) — change any setting made during init
@@ -1,6 +1,6 @@
1
1
  # mindlink update
2
2
 
3
- Update mindlink to the latest version.
3
+ Update mindlink to the latest version and refresh all project files.
4
4
 
5
5
  **Run in your terminal only** — this downloads and installs software. Always prompts before doing anything.
6
6
 
@@ -16,9 +16,18 @@ mindlink update
16
16
 
17
17
  ## Description
18
18
 
19
- Checks the latest version on [GitHub Releases](https://github.com/404-not-found/mindlink/releases) and prompts before installing. Never updates silently — you are always shown what version you're moving to and can cancel.
19
+ Checks the latest version on npm and prompts before installing. Never updates silently — you are always shown what version you're moving to and can cancel.
20
20
 
21
- Release notes for every version are available at:
21
+ After installing (or if you're already up to date), `mindlink update` automatically refreshes every initialized project on your machine:
22
+
23
+ - **Agent instruction files** (`CLAUDE.md`, `.cursorrules`, etc.) are overwritten with the latest templates in all registered projects. These files are owned by MindLink — any manual edits will be replaced.
24
+ - **Claude Code hooks** (`.claude/settings.json`) are refreshed to the latest hook commands.
25
+ - **MEMORY.md migrations** are applied non-destructively — new sections introduced in this version are injected into existing MEMORY.md files if they are absent. Your existing content is never touched.
26
+ - **Missing brain files** are created if a new version introduced a new `.brain/` file that didn't exist in older projects.
27
+
28
+ This means running `mindlink update` is always safe — your memory is preserved and your projects are brought to current spec automatically.
29
+
30
+ Release notes for every version:
22
31
  ```
23
32
  https://github.com/404-not-found/mindlink/releases
24
33
  ```
@@ -44,10 +53,18 @@ Latest version : x.y.z+1
44
53
  Skip this version
45
54
  Cancel
46
55
 
47
- [████████████████████] 100%
48
-
49
56
  ✓ Updated to x.y.z+1
50
57
  See what's new: github.com/404-not-found/mindlink/releases/tag/vx.y.z+1
58
+
59
+ Refreshing agent files in 3 projects...
60
+
61
+ /Users/you/projects/my-app
62
+ ✓ CLAUDE.md
63
+ ✓ CURSOR.md
64
+ ✓ .claude/settings.json
65
+ ✓ .brain/MEMORY.md
66
+
67
+ All agent files are up to date.
51
68
  ```
52
69
 
53
70
  **Already up to date:**
@@ -59,4 +76,5 @@ Latest version : x.y.z+1
59
76
 
60
77
  ## Related Commands
61
78
 
79
+ - [`mindlink init`](init.md) — set up a new project
62
80
  - [`mindlink help`](index.md) — see all commands