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 +51 -10
- package/commands/diff.md +115 -0
- package/commands/index.md +1 -0
- package/commands/init.md +26 -1
- package/commands/update.md +23 -5
- package/dist/cli.js +446 -57
- package/dist/cli.js.map +1 -1
- package/dist/templates/agents/.clinerules +43 -9
- package/dist/templates/agents/.rules +75 -0
- package/dist/templates/agents/.windsurfrules +43 -9
- package/dist/templates/agents/AGENTS.md +46 -9
- package/dist/templates/agents/CLAUDE.md +75 -13
- package/dist/templates/agents/CONVENTIONS.md +43 -9
- package/dist/templates/agents/CURSOR.md +46 -9
- package/dist/templates/agents/GEMINI.md +46 -9
- package/dist/templates/agents/continue-rules.md +80 -0
- package/dist/templates/agents/copilot-instructions.md +41 -9
- package/dist/templates/agents/kiro-steering.md +79 -0
- package/dist/templates/agents/trae-rules.md +80 -0
- package/dist/templates/brain/MEMORY.md +12 -0
- package/dist/templates/hooks/claude-settings.json +13 -1
- package/package.json +1 -1
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
|
[](https://www.npmjs.com/package/mindlink)
|
|
16
18
|
[](LICENSE)
|
|
17
19
|
[](#installation)
|
|
18
20
|
|
|
19
21
|
---
|
|
20
22
|
|
|
21
|
-
> ### ◉ Latest — v1.
|
|
22
|
-
> **
|
|
23
|
-
> [→ Full release notes](https://github.com/404-not-found/mindlink/releases/tag/v1.
|
|
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
|
-
- [
|
|
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
|
|
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 —
|
|
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,
|
|
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
|
-
##
|
|
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
|
-
|
|
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 projects — without touching your existing memory content.
|
|
185
226
|
|
|
186
227
|
---
|
|
187
228
|
|
package/commands/diff.md
ADDED
|
@@ -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
|
|
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
|
package/commands/update.md
CHANGED
|
@@ -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
|
|
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
|
-
|
|
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
|