mindkeeper-openclaw 0.2.8 → 0.2.10

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": "mindkeeper-openclaw",
3
- "version": "0.2.8",
3
+ "version": "0.2.10",
4
4
  "description": "OpenClaw plugin for mindkeeper: auto-snapshot, diff, and rollback for agent context files",
5
5
  "keywords": [
6
6
  "openclaw",
@@ -44,8 +44,11 @@
44
44
  "./dist/index.js"
45
45
  ]
46
46
  },
47
- "dependencies": {},
47
+ "dependencies": {
48
+ "@sinclair/typebox": "^0.34.48"
49
+ },
48
50
  "devDependencies": {
51
+ "@sinclair/typebox": "^0.34.0",
49
52
  "@types/node": "^22.0.0",
50
53
  "esbuild": "^0.27.3",
51
54
  "typescript": "^5.7.0"
@@ -1,41 +1,93 @@
1
1
  ---
2
2
  name: mindkeeper
3
3
  description: Version control for agent context files — view history, compare versions, and rollback changes
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  ---
6
6
 
7
7
  # Mindkeeper — Version Control for Agent Context
8
8
 
9
- Use the vault tools when the user asks about changes, history, or versions of their agent context files (AGENTS.md, SOUL.md, USER.md, IDENTITY.md, TOOLS.md, MEMORY.md, memory/, skills/).
9
+ Use mindkeeper tools when the user asks about changes, history, or versions of their agent context files (AGENTS.md, SOUL.md, USER.md, IDENTITY.md, TOOLS.md, MEMORY.md, memory/, skills/).
10
10
 
11
11
  ## Available Tools
12
12
 
13
- - **mind_history** View change history of context files
14
- - **mind_diff** — Compare two versions of a file
15
- - **mind_rollback** Restore a file to a previous version (always preview first)
16
- - **mind_snapshot** Create a named checkpoint before major changes
17
- - **mind_status** Show current tracking status
13
+ | Tool | Purpose |
14
+ |------|---------|
15
+ | `mind_status` | Show what files are tracked and whether there are unsaved changes |
16
+ | `mind_history` | Browse the change log for one file or all files |
17
+ | `mind_diff` | Compare any two versions of a file side-by-side |
18
+ | `mind_rollback` | Restore a file to a previous version (always preview first) |
19
+ | `mind_snapshot` | Save a named checkpoint before making significant changes |
18
20
 
19
21
  ## When to Use
20
22
 
21
- Use these tools when the user:
22
- - Asks what changed in their agent configuration ("what changed in SOUL.md?")
23
- - Wants to compare versions ("show me the diff from last week")
24
- - Wants to undo a change ("rollback AGENTS.md to yesterday")
25
- - Wants to save a checkpoint ("save a snapshot called stable-v1")
26
- - Asks about the state of their agent context files
23
+ | User says… | Action |
24
+ |-----------|--------|
25
+ | "What changed in SOUL.md?" | `mind_history` with `file: "SOUL.md"` |
26
+ | "Show me the diff from last week" | `mind_history` to find the commit, then `mind_diff` |
27
+ | "Undo that change" / "Roll back AGENTS.md" | Full rollback procedure (see below) |
28
+ | "Save a checkpoint before I experiment" | `mind_snapshot` with a descriptive name |
29
+ | "Is mindkeeper tracking my files?" | `mind_status` |
30
+ | "What does my history look like?" | `mind_history` without a file filter |
27
31
 
28
- ## Rollback Procedure
32
+ ## Tool Usage Guide
29
33
 
30
- Always follow this sequence for rollbacks:
31
- 1. Call `mind_history` to find the target version
32
- 2. Call `mind_rollback` with `preview=true` to show the user what will change
33
- 3. Only after user confirms, call `mind_rollback` with `preview=false`
34
- 4. After successful rollback, tell the user to run `/new` to apply changes
34
+ ### mind_status
35
+ Call this first if you're unsure whether mindkeeper is initialized or what files are being tracked.
36
+ ```
37
+ mind_status { initialized, workDir, pendingChanges, snapshots }
38
+ ```
39
+
40
+ ### mind_history
41
+ Returns a list of commits with short hash, date, and message.
42
+ - `file` (optional): filter to a specific file path, e.g. `"SOUL.md"`
43
+ - `limit` (optional): number of entries to return (default 10, increase for longer searches)
44
+
45
+ ```
46
+ mind_history({ file: "SOUL.md", limit: 20 })
47
+ → { count, entries: [{ oid, date, message }] }
48
+ ```
49
+
50
+ ### mind_diff
51
+ Compares two versions of a file. `from` and `to` are short or full commit hashes from `mind_history`.
52
+ - Omit `to` to compare `from` against the current version (HEAD).
53
+
54
+ ```
55
+ mind_diff({ file: "SOUL.md", from: "a1b2c3d4" })
56
+ → { file, from, to, additions, deletions, unified }
57
+ ```
58
+
59
+ ### mind_snapshot
60
+ Creates a named checkpoint of the current state of all tracked files. Use before risky changes.
61
+ - `name`: short identifier, e.g. `"stable-v2"` or `"before-experiment"`
62
+ - `message` (optional): longer description
63
+
64
+ ```
65
+ mind_snapshot({ name: "stable-v2", message: "Personality tuned, rules finalized" })
66
+ → { success, snapshot, commit: { oid, message } }
67
+ ```
68
+
69
+ ### mind_rollback
70
+ **Always use the two-step procedure.** Never skip the preview.
71
+
72
+ **Step 1 — Preview:**
73
+ ```
74
+ mind_rollback({ file: "SOUL.md", to: "a1b2c3d4", preview: true })
75
+ → { preview: true, diff: { unified, additions, deletions }, instruction }
76
+ ```
77
+ Show the diff to the user and ask for confirmation.
78
+
79
+ **Step 2 — Execute (only after user confirms):**
80
+ ```
81
+ mind_rollback({ file: "SOUL.md", to: "a1b2c3d4", preview: false })
82
+ → { preview: false, success: true, commit: { oid, message } }
83
+ ```
84
+ After success, tell the user: **"Run `/new` to apply the changes to your current session."**
35
85
 
36
86
  ## Important Notes
37
87
 
38
- - Rollback only affects the specified file, not all files
39
- - Every rollback is recorded as a new commit (can be undone)
40
- - Auto-snapshots happen in the background; the user does not need to manually save
41
- - Named snapshots (via mind_snapshot) are useful before significant personality or rule changes
88
+ - **Rollback is per-file** — it only restores the specified file, not all files at once
89
+ - **Rollbacks are non-destructive** every rollback creates a new commit, so it can itself be undone
90
+ - **Auto-snapshots run in the background** the user doesn't need to manually save; mindkeeper captures every change automatically
91
+ - **Named snapshots are the safety net** — encourage users to snapshot before major personality or rule changes
92
+ - **If history is empty** — mindkeeper may not have initialized yet, or no changes have been made since install. Call `mind_status` to check.
93
+ - **Commit hashes** — always use the `oid` field from `mind_history` results. Short 8-character hashes are fine.