@deeplake/hivemind 0.7.68 → 0.7.69
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/.claude-plugin/marketplace.json +3 -3
- package/.claude-plugin/plugin.json +1 -1
- package/README.md +14 -0
- package/bundle/cli.js +17 -2
- package/openclaw/dist/index.js +1 -1
- package/openclaw/openclaw.plugin.json +1 -1
- package/openclaw/package.json +1 -1
- package/package.json +1 -1
|
@@ -6,18 +6,18 @@
|
|
|
6
6
|
},
|
|
7
7
|
"metadata": {
|
|
8
8
|
"description": "Cloud-backed persistent shared memory for AI agents powered by Deeplake",
|
|
9
|
-
"version": "0.7.
|
|
9
|
+
"version": "0.7.69"
|
|
10
10
|
},
|
|
11
11
|
"plugins": [
|
|
12
12
|
{
|
|
13
13
|
"name": "hivemind",
|
|
14
14
|
"description": "Persistent shared memory powered by Deeplake — captures all session activity and provides cross-session, cross-agent memory search",
|
|
15
|
-
"version": "0.7.
|
|
15
|
+
"version": "0.7.69",
|
|
16
16
|
"source": {
|
|
17
17
|
"source": "git-subdir",
|
|
18
18
|
"url": "https://github.com/activeloopai/hivemind.git",
|
|
19
19
|
"path": "claude-code",
|
|
20
|
-
"sha": "
|
|
20
|
+
"sha": "fcce30444cbb853f2f6748aaf7422abbcf3e774a"
|
|
21
21
|
},
|
|
22
22
|
"homepage": "https://github.com/activeloopai/hivemind"
|
|
23
23
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hivemind",
|
|
3
3
|
"description": "Cloud-backed persistent memory powered by Deeplake — read, write, and share memory across Claude Code sessions and agents",
|
|
4
|
-
"version": "0.7.
|
|
4
|
+
"version": "0.7.69",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Activeloop",
|
|
7
7
|
"url": "https://deeplake.ai"
|
package/README.md
CHANGED
|
@@ -173,6 +173,20 @@ git clone https://github.com/activeloopai/hivemind.git ~/.codex/hivemind
|
|
|
173
173
|
```
|
|
174
174
|
|
|
175
175
|
Restart Codex to activate.
|
|
176
|
+
|
|
177
|
+
**First launch — trust the hooks.** Codex shows a **"Hooks need review"** prompt before it will run hivemind's hooks:
|
|
178
|
+
|
|
179
|
+
```text
|
|
180
|
+
Hooks need review
|
|
181
|
+
2 hooks are new or changed.
|
|
182
|
+
Hooks can run outside the sandbox after you trust them.
|
|
183
|
+
|
|
184
|
+
1. Review hooks
|
|
185
|
+
› 2. Trust all and continue
|
|
186
|
+
3. Continue without trusting (hooks won't run)
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
Choose **`2. Trust all and continue`** — otherwise the hooks won't run and hivemind stays inactive.
|
|
176
190
|
</details>
|
|
177
191
|
|
|
178
192
|
<details>
|
package/bundle/cli.js
CHANGED
|
@@ -114,6 +114,19 @@ function writeJson(path, obj) {
|
|
|
114
114
|
ensureDir(dirname(path));
|
|
115
115
|
writeFileSync(path, JSON.stringify(obj, null, 2) + "\n");
|
|
116
116
|
}
|
|
117
|
+
function writeJsonIfChanged(path, obj) {
|
|
118
|
+
const next = JSON.stringify(obj, null, 2) + "\n";
|
|
119
|
+
if (existsSync(path)) {
|
|
120
|
+
try {
|
|
121
|
+
if (readFileSync(path, "utf-8") === next)
|
|
122
|
+
return false;
|
|
123
|
+
} catch {
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
ensureDir(dirname(path));
|
|
127
|
+
writeFileSync(path, next);
|
|
128
|
+
return true;
|
|
129
|
+
}
|
|
117
130
|
function writeVersionStamp(dir, version) {
|
|
118
131
|
ensureDir(dir);
|
|
119
132
|
writeFileSync(join(dir, ".hivemind_version"), version);
|
|
@@ -486,7 +499,9 @@ function installCodex() {
|
|
|
486
499
|
if (existsSync3(srcSkills))
|
|
487
500
|
copyDir(srcSkills, join4(PLUGIN_DIR, "skills"));
|
|
488
501
|
tryEnableCodexHooks();
|
|
489
|
-
|
|
502
|
+
if (!writeJsonIfChanged(HOOKS_PATH, mergeHooksJson(buildHooksJson()))) {
|
|
503
|
+
log(` Codex hooks.json unchanged \u2014 skipped rewrite (no re-trust prompt)`);
|
|
504
|
+
}
|
|
490
505
|
ensureDir(AGENTS_SKILLS_DIR);
|
|
491
506
|
const skillTarget = join4(PLUGIN_DIR, "skills", "deeplake-memory");
|
|
492
507
|
if (existsSync3(skillTarget)) {
|
|
@@ -753,7 +768,7 @@ function installCursor() {
|
|
|
753
768
|
copyDir(srcBundle, join7(PLUGIN_DIR3, "bundle"));
|
|
754
769
|
const existing = readJson(HOOKS_PATH2);
|
|
755
770
|
const merged = mergeHooks2(existing);
|
|
756
|
-
|
|
771
|
+
writeJsonIfChanged(HOOKS_PATH2, merged);
|
|
757
772
|
writeVersionStamp(PLUGIN_DIR3, getVersion());
|
|
758
773
|
log(` Cursor installed -> ${PLUGIN_DIR3}`);
|
|
759
774
|
}
|
package/openclaw/dist/index.js
CHANGED
|
@@ -1799,7 +1799,7 @@ function extractLatestVersion(body) {
|
|
|
1799
1799
|
return typeof v === "string" && v.length > 0 ? v : null;
|
|
1800
1800
|
}
|
|
1801
1801
|
function getInstalledVersion() {
|
|
1802
|
-
return "0.7.
|
|
1802
|
+
return "0.7.69".length > 0 ? "0.7.69" : null;
|
|
1803
1803
|
}
|
|
1804
1804
|
function isNewer(latest, current) {
|
|
1805
1805
|
const parse = (v) => v.replace(/-.*$/, "").split(".").map(Number);
|
package/openclaw/package.json
CHANGED