context-mode 0.9.13 → 0.9.15

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.
@@ -13,7 +13,7 @@
13
13
  "name": "context-mode",
14
14
  "source": "./",
15
15
  "description": "Claude Code MCP plugin that saves 98% of your context window. Sandboxed code execution in 11 languages, FTS5 knowledge base with BM25 ranking, and intent-driven search.",
16
- "version": "0.9.13",
16
+ "version": "0.9.15",
17
17
  "author": {
18
18
  "name": "Mert Koseoğlu"
19
19
  },
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "context-mode",
3
- "version": "0.9.13",
3
+ "version": "0.9.15",
4
4
  "description": "Claude Code MCP plugin that saves 98% of your context window. Sandboxed code execution in 11 languages, FTS5 knowledge base with BM25 ranking, and intent-driven search.",
5
5
  "author": {
6
6
  "name": "Mert Koseoğlu",
package/build/cli.js CHANGED
@@ -424,6 +424,23 @@ async function upgrade() {
424
424
  catch { /* some files may not exist in source */ }
425
425
  }
426
426
  s.stop(color.green(`Updated in-place to v${newVersion}`));
427
+ // Fix registry to point back to this pluginRoot (self-heal may have changed it)
428
+ try {
429
+ const ipPath = resolve(homedir(), ".claude", "plugins", "installed_plugins.json");
430
+ const ipRaw = JSON.parse(readFileSync(ipPath, "utf-8"));
431
+ for (const [key, entries] of Object.entries(ipRaw.plugins || {})) {
432
+ if (!key.toLowerCase().includes("context-mode"))
433
+ continue;
434
+ for (const entry of entries) {
435
+ entry.installPath = pluginRoot;
436
+ entry.version = newVersion;
437
+ entry.lastUpdated = new Date().toISOString();
438
+ }
439
+ }
440
+ writeFileSync(ipPath, JSON.stringify(ipRaw, null, 2) + "\n", "utf-8");
441
+ p.log.info(color.dim(" Registry synced to " + pluginRoot));
442
+ }
443
+ catch { /* best effort */ }
427
444
  // Install production deps (rebuild native modules if needed)
428
445
  s.start("Installing production dependencies");
429
446
  execSync("npm install --production --no-audit --no-fund", {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "context-mode",
3
- "version": "0.9.13",
3
+ "version": "0.9.15",
4
4
  "type": "module",
5
5
  "description": "Claude Code MCP plugin that saves 98% of your context window. Sandboxed code execution, FTS5 knowledge base, and intent-driven search.",
6
6
  "author": "Mert Koseoğlu",
@@ -18,28 +18,14 @@ Pull latest from GitHub and reinstall the plugin.
18
18
  ```
19
19
  node "<PLUGIN_ROOT>/build/cli.js" upgrade
20
20
  ```
21
- 3. **Registry verification** (CRITICAL do this even if upgrade reported success):
22
- Run a Bash command that does ALL of the following in a single `node -e` script:
23
- - Read `~/.claude/plugins/installed_plugins.json`
24
- - Find the `context-mode@claude-context-mode` entry (or any key containing `context-mode`)
25
- - List directories in `~/.claude/plugins/cache/claude-context-mode/context-mode/`
26
- - Find the newest semver directory (e.g., `0.9.9` > `0.7.0`)
27
- - If `installPath` does NOT already point to the newest directory, update:
28
- - `installPath` → full path to newest version dir
29
- - `version` → the newest version string
30
- - `lastUpdated` → `new Date().toISOString()`
31
- - Write updated JSON back to the file
32
- - Print what was changed (or "already correct")
33
-
34
- 4. **IMPORTANT**: After the Bash tool completes, re-display the key results as markdown text directly in the conversation so the user sees them without expanding the tool output. Format as:
21
+ 3. **IMPORTANT**: After the Bash tool completes, re-display the key results as markdown text directly in the conversation so the user sees them without expanding the tool output. Format as:
35
22
  ```
36
23
  ## context-mode upgrade
37
24
  - [x] Pulled latest from GitHub
38
- - [x] Built and installed v0.9.9
25
+ - [x] Built and installed v0.9.13
39
26
  - [x] npm global updated
40
27
  - [x] Hooks configured
41
28
  - [x] Permissions set
42
- - [x] Registry verified
43
29
  - [x] Doctor: all checks PASS
44
30
  ```
45
31
  Use `[x]` for success, `[ ]` for failure. Show the actual version numbers and any warnings.