@reumbra/forge 0.3.6 → 0.3.8
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/dist/commands/install.js +3 -1
- package/dist/commands/install.js.map +1 -1
- package/dist/lib/claude-integration.d.ts +15 -0
- package/dist/lib/claude-integration.js +40 -3
- package/dist/lib/claude-integration.js.map +1 -1
- package/dist/lib/paths.d.ts +4 -0
- package/dist/lib/paths.js +8 -0
- package/dist/lib/paths.js.map +1 -1
- package/package.json +1 -1
package/dist/commands/install.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { cpSync, existsSync, mkdirSync, readdirSync, rmSync } from "node:fs";
|
|
2
2
|
import { join } from "node:path";
|
|
3
3
|
import { ApiError, apiRequest, downloadFile } from "../lib/api.js";
|
|
4
|
-
import { enablePlugin, registerMarketplace } from "../lib/claude-integration.js";
|
|
4
|
+
import { enablePlugin, invalidatePluginCache, registerMarketplace, } from "../lib/claude-integration.js";
|
|
5
5
|
import { loadConfig, saveConfig } from "../lib/config.js";
|
|
6
6
|
import { log } from "../lib/logger.js";
|
|
7
7
|
import { ensureMarketplaceDir, marketplacePluginDir, updateMarketplaceJson, } from "../lib/marketplace.js";
|
|
@@ -64,6 +64,8 @@ export async function install(pluginName, version) {
|
|
|
64
64
|
registerMarketplace();
|
|
65
65
|
// Enable plugin in Claude Code settings
|
|
66
66
|
enablePlugin(fullName);
|
|
67
|
+
// Clear stale Claude Code cache so next restart picks up new version
|
|
68
|
+
invalidatePluginCache(fullName);
|
|
67
69
|
// Update config
|
|
68
70
|
config.installed_plugins[fullName] = {
|
|
69
71
|
version: result.version,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,3 +3,18 @@ export declare function removeMarketplace(): void;
|
|
|
3
3
|
export declare function enablePlugin(pluginName: string): void;
|
|
4
4
|
export declare function disablePlugin(pluginName: string): void;
|
|
5
5
|
export declare function isPluginEnabled(pluginName: string): boolean;
|
|
6
|
+
/**
|
|
7
|
+
* Remove stale plugin data from Claude Code's internal state.
|
|
8
|
+
*
|
|
9
|
+
* After `forge install/update`, the marketplace has the new version, but
|
|
10
|
+
* Claude Code may still load the old version. This function clears all
|
|
11
|
+
* three layers of Claude Code's plugin state:
|
|
12
|
+
* 1. Removes the plugin entry from `installed_plugins.json` so Claude Code
|
|
13
|
+
* treats the plugin as newly enabled on next restart.
|
|
14
|
+
* 2. Deletes cached version directories under `cache/reumbra/<plugin>/`
|
|
15
|
+
* so Claude Code re-copies from the updated marketplace.
|
|
16
|
+
* 3. Deletes the "active copy" at `~/.claude/plugins/<plugin>/` which
|
|
17
|
+
* takes priority over cache — without this, Claude Code loads the
|
|
18
|
+
* stale active copy and never checks cache for newer versions.
|
|
19
|
+
*/
|
|
20
|
+
export declare function invalidatePluginCache(pluginName: string): void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
2
|
-
import { dirname } from "node:path";
|
|
3
|
-
import { claudeKnownMarketplacesPath, claudeSettingsPath, MARKETPLACE_DIR } from "./paths.js";
|
|
1
|
+
import { existsSync, mkdirSync, readFileSync, rmSync, writeFileSync } from "node:fs";
|
|
2
|
+
import { dirname, join } from "node:path";
|
|
3
|
+
import { claudeInstalledPluginsPath, claudeKnownMarketplacesPath, claudePluginCacheDir, claudePluginDir, claudeSettingsPath, MARKETPLACE_DIR, } from "./paths.js";
|
|
4
4
|
const MARKETPLACE_NAME = "reumbra";
|
|
5
5
|
// --- known_marketplaces.json ---
|
|
6
6
|
export function registerMarketplace() {
|
|
@@ -55,6 +55,43 @@ export function isPluginEnabled(pluginName) {
|
|
|
55
55
|
const enabled = data.enabledPlugins;
|
|
56
56
|
return enabled?.[`${pluginName}@${MARKETPLACE_NAME}`] === true;
|
|
57
57
|
}
|
|
58
|
+
// --- cache invalidation ---
|
|
59
|
+
/**
|
|
60
|
+
* Remove stale plugin data from Claude Code's internal state.
|
|
61
|
+
*
|
|
62
|
+
* After `forge install/update`, the marketplace has the new version, but
|
|
63
|
+
* Claude Code may still load the old version. This function clears all
|
|
64
|
+
* three layers of Claude Code's plugin state:
|
|
65
|
+
* 1. Removes the plugin entry from `installed_plugins.json` so Claude Code
|
|
66
|
+
* treats the plugin as newly enabled on next restart.
|
|
67
|
+
* 2. Deletes cached version directories under `cache/reumbra/<plugin>/`
|
|
68
|
+
* so Claude Code re-copies from the updated marketplace.
|
|
69
|
+
* 3. Deletes the "active copy" at `~/.claude/plugins/<plugin>/` which
|
|
70
|
+
* takes priority over cache — without this, Claude Code loads the
|
|
71
|
+
* stale active copy and never checks cache for newer versions.
|
|
72
|
+
*/
|
|
73
|
+
export function invalidatePluginCache(pluginName) {
|
|
74
|
+
// 1. Remove entry from installed_plugins.json
|
|
75
|
+
const installedPath = claudeInstalledPluginsPath();
|
|
76
|
+
if (existsSync(installedPath)) {
|
|
77
|
+
const data = readJsonSafe(installedPath, {});
|
|
78
|
+
const plugins = data.plugins;
|
|
79
|
+
if (plugins) {
|
|
80
|
+
delete plugins[`${pluginName}@${MARKETPLACE_NAME}`];
|
|
81
|
+
writeJsonSafe(installedPath, data);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
// 2. Remove cached version directories
|
|
85
|
+
const cacheDir = join(claudePluginCacheDir(), MARKETPLACE_NAME, pluginName);
|
|
86
|
+
if (existsSync(cacheDir)) {
|
|
87
|
+
rmSync(cacheDir, { recursive: true, force: true });
|
|
88
|
+
}
|
|
89
|
+
// 3. Remove stale "active copy" (highest priority in Claude Code's loading)
|
|
90
|
+
const activeCopy = join(claudePluginDir(), pluginName);
|
|
91
|
+
if (existsSync(activeCopy)) {
|
|
92
|
+
rmSync(activeCopy, { recursive: true, force: true });
|
|
93
|
+
}
|
|
94
|
+
}
|
|
58
95
|
// --- JSON helpers ---
|
|
59
96
|
function readJsonSafe(filePath, fallback) {
|
|
60
97
|
if (!existsSync(filePath))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-integration.js","sourceRoot":"","sources":["../../src/lib/claude-integration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"claude-integration.js","sourceRoot":"","sources":["../../src/lib/claude-integration.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/paths.d.ts
CHANGED
|
@@ -12,3 +12,7 @@ export declare function claudePluginDir(): string;
|
|
|
12
12
|
export declare function claudeSettingsPath(): string;
|
|
13
13
|
/** Claude Code known_marketplaces.json */
|
|
14
14
|
export declare function claudeKnownMarketplacesPath(): string;
|
|
15
|
+
/** Claude Code installed_plugins.json */
|
|
16
|
+
export declare function claudeInstalledPluginsPath(): string;
|
|
17
|
+
/** Claude Code plugin cache directory (~/.claude/plugins/cache/) */
|
|
18
|
+
export declare function claudePluginCacheDir(): string;
|
package/dist/lib/paths.js
CHANGED
|
@@ -20,4 +20,12 @@ export function claudeSettingsPath() {
|
|
|
20
20
|
export function claudeKnownMarketplacesPath() {
|
|
21
21
|
return join(homedir(), ".claude", "plugins", "known_marketplaces.json");
|
|
22
22
|
}
|
|
23
|
+
/** Claude Code installed_plugins.json */
|
|
24
|
+
export function claudeInstalledPluginsPath() {
|
|
25
|
+
return join(homedir(), ".claude", "plugins", "installed_plugins.json");
|
|
26
|
+
}
|
|
27
|
+
/** Claude Code plugin cache directory (~/.claude/plugins/cache/) */
|
|
28
|
+
export function claudePluginCacheDir() {
|
|
29
|
+
return join(homedir(), ".claude", "plugins", "cache");
|
|
30
|
+
}
|
|
23
31
|
//# sourceMappingURL=paths.js.map
|
package/dist/lib/paths.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/lib/paths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,sBAAsB;AACtB,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAC;AAEnD,mCAAmC;AACnC,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;AAE1D,iCAAiC;AACjC,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AAElD,6CAA6C;AAC7C,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;AAE9D,mCAAmC;AACnC,MAAM,UAAU,eAAe;IAC7B,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AAC/C,CAAC;AAED,gCAAgC;AAChC,MAAM,UAAU,kBAAkB;IAChC,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;AACrD,CAAC;AAED,0CAA0C;AAC1C,MAAM,UAAU,2BAA2B;IACzC,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,yBAAyB,CAAC,CAAC;AAC1E,CAAC"}
|
|
1
|
+
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/lib/paths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,sBAAsB;AACtB,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAC;AAEnD,mCAAmC;AACnC,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;AAE1D,iCAAiC;AACjC,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AAElD,6CAA6C;AAC7C,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;AAE9D,mCAAmC;AACnC,MAAM,UAAU,eAAe;IAC7B,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AAC/C,CAAC;AAED,gCAAgC;AAChC,MAAM,UAAU,kBAAkB;IAChC,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;AACrD,CAAC;AAED,0CAA0C;AAC1C,MAAM,UAAU,2BAA2B;IACzC,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,yBAAyB,CAAC,CAAC;AAC1E,CAAC;AAED,yCAAyC;AACzC,MAAM,UAAU,0BAA0B;IACxC,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,wBAAwB,CAAC,CAAC;AACzE,CAAC;AAED,oEAAoE;AACpE,MAAM,UAAU,oBAAoB;IAClC,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AACxD,CAAC"}
|