@thebushidocollective/han 1.40.0 → 1.41.1

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/bin/han.js CHANGED
@@ -160,6 +160,43 @@ function tryRunBinary() {
160
160
  }
161
161
  }
162
162
 
163
+ // Retry logic for CDN propagation delays
164
+ async function waitForPackageAvailability(packageName, maxRetries = 5) {
165
+ const baseDelay = 2000; // 2 seconds
166
+
167
+ for (let attempt = 1; attempt <= maxRetries; attempt++) {
168
+ try {
169
+ const controller = new AbortController();
170
+ const timeout = setTimeout(() => controller.abort(), 5000);
171
+
172
+ const response = await fetch(
173
+ `https://registry.npmjs.org/${packageName}`,
174
+ { signal: controller.signal },
175
+ );
176
+ clearTimeout(timeout);
177
+
178
+ if (response.ok) {
179
+ const data = await response.json();
180
+ if (data["dist-tags"]?.latest) {
181
+ return true;
182
+ }
183
+ }
184
+ } catch {
185
+ // Network error, continue retrying
186
+ }
187
+
188
+ if (attempt < maxRetries) {
189
+ const delay = baseDelay * Math.pow(2, attempt - 1); // Exponential backoff
190
+ console.error(
191
+ `\x1b[33m⏳ Waiting for package availability (attempt ${attempt}/${maxRetries})...\x1b[0m`,
192
+ );
193
+ await new Promise((resolve) => setTimeout(resolve, delay));
194
+ }
195
+ }
196
+
197
+ return false;
198
+ }
199
+
163
200
  // Run binary - no JS fallback in production
164
201
  if (!tryRunBinary()) {
165
202
  const platformKey = getPlatformKey();
@@ -173,6 +210,45 @@ if (!tryRunBinary()) {
173
210
  process.exit(1);
174
211
  }
175
212
 
213
+ // Check if this might be a CDN propagation issue and retry
214
+ const scriptPath = fileURLToPath(import.meta.url);
215
+ if (scriptPath.includes("_npx") && !process.env.HAN_NO_RETRY) {
216
+ console.error(
217
+ `\x1b[33m⚠ Platform binary not found, checking for CDN propagation delay...\x1b[0m`,
218
+ );
219
+
220
+ const isAvailable = await waitForPackageAvailability(packageName);
221
+
222
+ if (isAvailable) {
223
+ // Clear cache and retry once more
224
+ try {
225
+ execSync("npx clear-npx-cache", { stdio: "pipe" });
226
+ } catch {
227
+ const { homedir } = await import("node:os");
228
+ const npxCachePath = join(homedir(), ".npm", "_npx");
229
+ if (existsSync(npxCachePath)) {
230
+ const { rmSync } = await import("node:fs");
231
+ rmSync(npxCachePath, { recursive: true, force: true });
232
+ }
233
+ }
234
+
235
+ console.error(`\x1b[32m✓ Package available, retrying...\x1b[0m`);
236
+
237
+ const args = process.argv.slice(2);
238
+ const result = spawnSync(
239
+ "npx",
240
+ ["-y", "@thebushidocollective/han@latest", ...args],
241
+ {
242
+ stdio: "inherit",
243
+ env: { ...process.env, HAN_NO_RETRY: "1" },
244
+ shell: true,
245
+ },
246
+ );
247
+
248
+ process.exit(result.status ?? 0);
249
+ }
250
+ }
251
+
176
252
  console.error(
177
253
  `\x1b[31mError: Platform binary not found for ${platformKey}\x1b[0m`,
178
254
  );
@@ -1,3 +1,3 @@
1
- export declare const HAN_VERSION = "1.40.0";
1
+ export declare const HAN_VERSION = "1.41.1";
2
2
  export declare const DETECT_PLUGINS_PROMPT = "<!--\nThis prompt template is dynamically enhanced in shared.ts with:\n1. GIT REPOSITORY section - Remote URL to determine hosting platform (GitHub, GitLab, etc.)\n2. CURRENTLY INSTALLED PLUGINS section - List of plugins already installed (if any)\n3. CODEBASE STATISTICS section - File extensions and config file names from codebase-analyzer.ts\n4. AVAILABLE PLUGINS IN MARKETPLACE section - Plugin list from marketplace.json\n\nThese sections are appended to this base prompt at runtime.\n-->\n\n# Han Plugin Installer Assistant\n\nYou are a Han plugin installer assistant. Your goal is to analyze the current codebase and recommend appropriate Claude Code plugins from the Han marketplace.\n\nThe available plugins from the marketplace are provided below. ONLY recommend plugins from this list.\n\n## Plugin Categories\n\n- **jutsu-\\*** (\u6B66\u5668 weapons): Skills for specific technologies and frameworks\n- **do-\\*** (\u9053 disciplines): Specialized agents for development practices and workflows\n- **hashi-\\*** (\u5148\u751F teachers): MCP servers for external integrations\n- **bushido**: Core quality principles (ALWAYS recommend this)\n\n## Your Analysis Process\n\n### STEP 1: Analyze currently installed plugins (if provided)\n\n- Check if CURRENTLY INSTALLED PLUGINS section is provided in the prompt\n- If provided, you should:\n - **Understand why each plugin was likely added**: Look at plugin descriptions and infer original use case\n - Example: `jutsu-typescript` suggests TypeScript development\n - Example: `hashi-github` suggests GitHub integration needs\n - Example: `do-frontend-development` suggests frontend focus\n - **Determine if each plugin is still relevant**:\n - Use the codebase statistics and configuration files to verify if the technology/practice is still in use\n - A plugin is still relevant if its associated technology/practice is actively used in the codebase\n - A plugin may be irrelevant if:\n - The technology was removed (e.g., no more .ts files but jutsu-typescript is installed)\n - The project migrated to a different platform (e.g., moved from GitHub to GitLab)\n - The framework changed (e.g., migrated from React to Vue)\n - **Keep relevant plugins in your recommendations**: If a plugin is still relevant, include it in your final list\n - **Exclude irrelevant plugins**: If a plugin is no longer needed, do not include it in your recommendations\n\n### STEP 2: Check git repository hosting platform (if provided)\n\n- Check if GIT REPOSITORY section is provided in the prompt\n- If provided, examine the remote URL to determine the hosting platform:\n - URLs containing `github.com` \u2192 recommend `hashi-github`\n - URLs containing `gitlab.com` or other GitLab instances \u2192 recommend `hashi-gitlab`\n - This helps integrate Claude Code with the project's issue tracking, PRs/MRs, and CI/CD\n\n### STEP 3: Review pre-computed codebase statistics (if provided)\n\n- Check if CODEBASE STATISTICS section is provided in the prompt\n- If provided, you have:\n - **File extension counts** (e.g., .ts: 456, .py: 123) - interpret these as technologies\n - .ts, .tsx, .jsx = TypeScript/JavaScript\n - .py = Python\n - .rs = Rust\n - .go = Go\n - .rb = Ruby\n - .ex, .exs = Elixir\n - .vue = Vue.js\n - etc.\n - **Config file names** (e.g., package.json, Cargo.toml, go.mod) - these reveal frameworks and tools\n- If statistics are NOT provided, use Glob to discover file types\n - Example: glob(\"\\*_/_.ts\") to find TypeScript files\n - Example: glob(\"\\*_/_.py\") to find Python files\n\n### STEP 4: Examine key configuration files\n\n- Config files are already identified in the statistics (if provided)\n- Use Read tool to examine important config files:\n - package.json - reveals Node.js frameworks, dependencies\n - Cargo.toml - reveals Rust dependencies\n - go.mod - reveals Go dependencies\n - requirements.txt, pyproject.toml - reveals Python dependencies\n - mix.exs - reveals Elixir dependencies\n- Use Grep to search for framework-specific patterns\n - Example: grep(\"import.\\*react\") to confirm React usage\n - Example: grep(\"from django\") to confirm Django usage\n\n### STEP 5: Identify technologies and patterns\n\n- Programming languages (TypeScript, Python, Go, Rust, Ruby, etc.)\n- Frameworks and libraries (React, Vue, Django, Rails, etc.)\n- Testing frameworks (Jest, Pytest, RSpec, etc.)\n- Build tools and infrastructure (Docker, Kubernetes, etc.)\n- Development practices (API development, frontend development, mobile, etc.)\n- Content patterns (blog posts, documentation, CMS usage)\n- CI/CD configurations\n- Accessibility tooling\n\n### STEP 6: Match findings to available plugins\n\n- Look at the plugin descriptions and keywords below\n- Cross-reference detected technologies with available jutsu-\\* plugins\n- Cross-reference development practices with available do-\\* plugins\n- Cross-reference integrations with available hashi-\\* plugins\n- ONLY recommend plugins from the list provided\n- Aim for 3-8 total plugins that best match the codebase\n- Always include \"bushido\" as it's the core plugin\n\n## Output Format\n\nReturn ONLY a JSON array of recommended plugin names from the available plugins list:\n\n```json\n[\"bushido\", \"jutsu-typescript\", \"jutsu-react\", \"do-frontend-development\"]\n```\n\n**CRITICAL**: Only recommend plugins that appear in the AVAILABLE PLUGINS list below. Never recommend plugins not in the list.\n";
3
3
  //# sourceMappingURL=build-info.generated.d.ts.map
@@ -1,4 +1,4 @@
1
1
  // Auto-generated by build-bundle.js - DO NOT EDIT
2
- export const HAN_VERSION = "1.40.0";
2
+ export const HAN_VERSION = "1.41.1";
3
3
  export const DETECT_PLUGINS_PROMPT = "<!--\nThis prompt template is dynamically enhanced in shared.ts with:\n1. GIT REPOSITORY section - Remote URL to determine hosting platform (GitHub, GitLab, etc.)\n2. CURRENTLY INSTALLED PLUGINS section - List of plugins already installed (if any)\n3. CODEBASE STATISTICS section - File extensions and config file names from codebase-analyzer.ts\n4. AVAILABLE PLUGINS IN MARKETPLACE section - Plugin list from marketplace.json\n\nThese sections are appended to this base prompt at runtime.\n-->\n\n# Han Plugin Installer Assistant\n\nYou are a Han plugin installer assistant. Your goal is to analyze the current codebase and recommend appropriate Claude Code plugins from the Han marketplace.\n\nThe available plugins from the marketplace are provided below. ONLY recommend plugins from this list.\n\n## Plugin Categories\n\n- **jutsu-\\*** (武器 weapons): Skills for specific technologies and frameworks\n- **do-\\*** (道 disciplines): Specialized agents for development practices and workflows\n- **hashi-\\*** (先生 teachers): MCP servers for external integrations\n- **bushido**: Core quality principles (ALWAYS recommend this)\n\n## Your Analysis Process\n\n### STEP 1: Analyze currently installed plugins (if provided)\n\n- Check if CURRENTLY INSTALLED PLUGINS section is provided in the prompt\n- If provided, you should:\n - **Understand why each plugin was likely added**: Look at plugin descriptions and infer original use case\n - Example: `jutsu-typescript` suggests TypeScript development\n - Example: `hashi-github` suggests GitHub integration needs\n - Example: `do-frontend-development` suggests frontend focus\n - **Determine if each plugin is still relevant**:\n - Use the codebase statistics and configuration files to verify if the technology/practice is still in use\n - A plugin is still relevant if its associated technology/practice is actively used in the codebase\n - A plugin may be irrelevant if:\n - The technology was removed (e.g., no more .ts files but jutsu-typescript is installed)\n - The project migrated to a different platform (e.g., moved from GitHub to GitLab)\n - The framework changed (e.g., migrated from React to Vue)\n - **Keep relevant plugins in your recommendations**: If a plugin is still relevant, include it in your final list\n - **Exclude irrelevant plugins**: If a plugin is no longer needed, do not include it in your recommendations\n\n### STEP 2: Check git repository hosting platform (if provided)\n\n- Check if GIT REPOSITORY section is provided in the prompt\n- If provided, examine the remote URL to determine the hosting platform:\n - URLs containing `github.com` → recommend `hashi-github`\n - URLs containing `gitlab.com` or other GitLab instances → recommend `hashi-gitlab`\n - This helps integrate Claude Code with the project's issue tracking, PRs/MRs, and CI/CD\n\n### STEP 3: Review pre-computed codebase statistics (if provided)\n\n- Check if CODEBASE STATISTICS section is provided in the prompt\n- If provided, you have:\n - **File extension counts** (e.g., .ts: 456, .py: 123) - interpret these as technologies\n - .ts, .tsx, .jsx = TypeScript/JavaScript\n - .py = Python\n - .rs = Rust\n - .go = Go\n - .rb = Ruby\n - .ex, .exs = Elixir\n - .vue = Vue.js\n - etc.\n - **Config file names** (e.g., package.json, Cargo.toml, go.mod) - these reveal frameworks and tools\n- If statistics are NOT provided, use Glob to discover file types\n - Example: glob(\"\\*_/_.ts\") to find TypeScript files\n - Example: glob(\"\\*_/_.py\") to find Python files\n\n### STEP 4: Examine key configuration files\n\n- Config files are already identified in the statistics (if provided)\n- Use Read tool to examine important config files:\n - package.json - reveals Node.js frameworks, dependencies\n - Cargo.toml - reveals Rust dependencies\n - go.mod - reveals Go dependencies\n - requirements.txt, pyproject.toml - reveals Python dependencies\n - mix.exs - reveals Elixir dependencies\n- Use Grep to search for framework-specific patterns\n - Example: grep(\"import.\\*react\") to confirm React usage\n - Example: grep(\"from django\") to confirm Django usage\n\n### STEP 5: Identify technologies and patterns\n\n- Programming languages (TypeScript, Python, Go, Rust, Ruby, etc.)\n- Frameworks and libraries (React, Vue, Django, Rails, etc.)\n- Testing frameworks (Jest, Pytest, RSpec, etc.)\n- Build tools and infrastructure (Docker, Kubernetes, etc.)\n- Development practices (API development, frontend development, mobile, etc.)\n- Content patterns (blog posts, documentation, CMS usage)\n- CI/CD configurations\n- Accessibility tooling\n\n### STEP 6: Match findings to available plugins\n\n- Look at the plugin descriptions and keywords below\n- Cross-reference detected technologies with available jutsu-\\* plugins\n- Cross-reference development practices with available do-\\* plugins\n- Cross-reference integrations with available hashi-\\* plugins\n- ONLY recommend plugins from the list provided\n- Aim for 3-8 total plugins that best match the codebase\n- Always include \"bushido\" as it's the core plugin\n\n## Output Format\n\nReturn ONLY a JSON array of recommended plugin names from the available plugins list:\n\n```json\n[\"bushido\", \"jutsu-typescript\", \"jutsu-react\", \"do-frontend-development\"]\n```\n\n**CRITICAL**: Only recommend plugins that appear in the AVAILABLE PLUGINS list below. Never recommend plugins not in the list.\n";
4
4
  //# sourceMappingURL=build-info.generated.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../../lib/commands/plugin/install.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,OAAO,GAAG,IAAI,CA0ClE"}
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../../lib/commands/plugin/install.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,OAAO,GAAG,IAAI,CA4ClE"}
@@ -3,12 +3,12 @@ export function registerPluginInstall(pluginCommand) {
3
3
  .command("install [plugin-names...]")
4
4
  .description("Install plugins interactively, or use --auto to auto-detect")
5
5
  .option("--auto", "Auto-detect and install recommended plugins")
6
- .option("--scope <scope>", 'Installation scope: "project" (.claude/settings.json) or "local" (.claude/settings.local.json)', "project")
6
+ .option("--scope <scope>", 'Installation scope: "user" (~/.claude/settings.json), "project" (.claude/settings.json), or "local" (.claude/settings.local.json)', "user")
7
7
  .action(async (pluginNames, options) => {
8
8
  try {
9
- const scope = options.scope || "project";
10
- if (scope !== "project" && scope !== "local") {
11
- console.error('Error: --scope must be either "project" or "local"');
9
+ const scope = options.scope || "user";
10
+ if (scope !== "user" && scope !== "project" && scope !== "local") {
11
+ console.error('Error: --scope must be "user", "project", or "local"');
12
12
  process.exit(1);
13
13
  }
14
14
  if (options.auto) {
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../../lib/commands/plugin/install.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,qBAAqB,CAAC,aAAsB;IAC3D,aAAa;SACX,OAAO,CAAC,2BAA2B,CAAC;SACpC,WAAW,CAAC,6DAA6D,CAAC;SAC1E,MAAM,CAAC,QAAQ,EAAE,6CAA6C,CAAC;SAC/D,MAAM,CACN,iBAAiB,EACjB,gGAAgG,EAChG,SAAS,CACT;SACA,MAAM,CACN,KAAK,EACJ,WAAqB,EACrB,OAA2C,EAC1C,EAAE;QACH,IAAI,CAAC;YACJ,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,SAAS,CAAC;YACzC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;gBAC9C,OAAO,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;gBACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACjB,CAAC;YAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBAClB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;gBACrD,MAAM,OAAO,CAAC,KAA4B,CAAC,CAAC;YAC7C,CAAC;iBAAM,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnC,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;gBACnE,MAAM,cAAc,CAAC,WAAW,EAAE,KAA4B,CAAC,CAAC;YACjE,CAAC;iBAAM,CAAC;gBACP,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;gBAChE,MAAM,kBAAkB,CAAC,KAA4B,CAAC,CAAC;YACxD,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACzB,OAAO,CAAC,KAAK,CACZ,mCAAmC,EACnC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAC9C,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;IACF,CAAC,CACD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../../lib/commands/plugin/install.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,qBAAqB,CAAC,aAAsB;IAC3D,aAAa;SACX,OAAO,CAAC,2BAA2B,CAAC;SACpC,WAAW,CAAC,6DAA6D,CAAC;SAC1E,MAAM,CAAC,QAAQ,EAAE,6CAA6C,CAAC;SAC/D,MAAM,CACN,iBAAiB,EACjB,mIAAmI,EACnI,MAAM,CACN;SACA,MAAM,CACN,KAAK,EACJ,WAAqB,EACrB,OAA2C,EAC1C,EAAE;QACH,IAAI,CAAC;YACJ,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC;YACtC,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;gBAClE,OAAO,CAAC,KAAK,CACZ,sDAAsD,CACtD,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACjB,CAAC;YAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBAClB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;gBACrD,MAAM,OAAO,CAAC,KAAqB,CAAC,CAAC;YACtC,CAAC;iBAAM,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnC,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;gBACnE,MAAM,cAAc,CAAC,WAAW,EAAE,KAAqB,CAAC,CAAC;YAC1D,CAAC;iBAAM,CAAC;gBACP,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;gBAChE,MAAM,kBAAkB,CAAC,KAAqB,CAAC,CAAC;YACjD,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACzB,OAAO,CAAC,KAAK,CACZ,mCAAmC,EACnC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAC9C,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;IACF,CAAC,CACD,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../../../lib/commands/plugin/uninstall.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,wBAAgB,uBAAuB,CAAC,aAAa,EAAE,OAAO,GAAG,IAAI,CA4BpE"}
1
+ {"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../../../lib/commands/plugin/uninstall.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,wBAAgB,uBAAuB,CAAC,aAAa,EAAE,OAAO,GAAG,IAAI,CA4BpE"}
@@ -2,12 +2,12 @@ export function registerPluginUninstall(pluginCommand) {
2
2
  pluginCommand
3
3
  .command("uninstall <plugin-names...>")
4
4
  .description("Uninstall one or more plugins")
5
- .option("--scope <scope>", 'Installation scope: "project" (.claude/settings.json) or "local" (.claude/settings.local.json)', "project")
5
+ .option("--scope <scope>", 'Installation scope: "user" (~/.claude/settings.json), "project" (.claude/settings.json), or "local" (.claude/settings.local.json)', "user")
6
6
  .action(async (pluginNames, options) => {
7
7
  try {
8
- const scope = options.scope || "project";
9
- if (scope !== "project" && scope !== "local") {
10
- console.error('Error: --scope must be either "project" or "local"');
8
+ const scope = options.scope || "user";
9
+ if (scope !== "user" && scope !== "project" && scope !== "local") {
10
+ console.error('Error: --scope must be "user", "project", or "local"');
11
11
  process.exit(1);
12
12
  }
13
13
  const { uninstallPlugins } = await import("../../plugin-uninstall.js");
@@ -1 +1 @@
1
- {"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../../lib/commands/plugin/uninstall.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,uBAAuB,CAAC,aAAsB;IAC7D,aAAa;SACX,OAAO,CAAC,6BAA6B,CAAC;SACtC,WAAW,CAAC,+BAA+B,CAAC;SAC5C,MAAM,CACN,iBAAiB,EACjB,gGAAgG,EAChG,SAAS,CACT;SACA,MAAM,CAAC,KAAK,EAAE,WAAqB,EAAE,OAA2B,EAAE,EAAE;QACpE,IAAI,CAAC;YACJ,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,SAAS,CAAC;YACzC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;gBAC9C,OAAO,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;gBACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACjB,CAAC;YAED,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;YACvE,MAAM,gBAAgB,CAAC,WAAW,EAAE,KAA4B,CAAC,CAAC;YAClE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACzB,OAAO,CAAC,KAAK,CACZ,qCAAqC,EACrC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAC9C,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;IACF,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../../lib/commands/plugin/uninstall.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,uBAAuB,CAAC,aAAsB;IAC7D,aAAa;SACX,OAAO,CAAC,6BAA6B,CAAC;SACtC,WAAW,CAAC,+BAA+B,CAAC;SAC5C,MAAM,CACN,iBAAiB,EACjB,mIAAmI,EACnI,MAAM,CACN;SACA,MAAM,CAAC,KAAK,EAAE,WAAqB,EAAE,OAA2B,EAAE,EAAE;QACpE,IAAI,CAAC;YACJ,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC;YACtC,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;gBAClE,OAAO,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;gBACtE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACjB,CAAC;YAED,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;YACvE,MAAM,gBAAgB,CAAC,WAAW,EAAE,KAAqB,CAAC,CAAC;YAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACzB,OAAO,CAAC,KAAK,CACZ,qCAAqC,EACrC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAC9C,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;IACF,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1,9 +1,10 @@
1
+ import { type InstallScope } from "./shared.js";
1
2
  /**
2
3
  * SDK-based auto-detect install command with Ink UI
3
4
  */
4
- export declare function install(scope?: "project" | "local"): Promise<void>;
5
+ export declare function install(scope?: InstallScope): Promise<void>;
5
6
  /**
6
7
  * Interactive plugin selector (no auto-detect)
7
8
  */
8
- export declare function installInteractive(scope?: "project" | "local"): Promise<void>;
9
+ export declare function installInteractive(scope?: InstallScope): Promise<void>;
9
10
  //# sourceMappingURL=install.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../lib/install.ts"],"names":[],"mappings":"AAyFA;;GAEG;AACH,wBAAsB,OAAO,CAC5B,KAAK,GAAE,SAAS,GAAG,OAAmB,GACpC,OAAO,CAAC,IAAI,CAAC,CAqFf;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACvC,KAAK,GAAE,SAAS,GAAG,OAAmB,GACpC,OAAO,CAAC,IAAI,CAAC,CA2Ef"}
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../lib/install.ts"],"names":[],"mappings":"AAEA,OAAO,EAON,KAAK,YAAY,EAIjB,MAAM,aAAa,CAAC;AAqFrB;;GAEG;AACH,wBAAsB,OAAO,CAAC,KAAK,GAAE,YAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqFzE;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACvC,KAAK,GAAE,YAAqB,GAC1B,OAAO,CAAC,IAAI,CAAC,CA2Ef"}
@@ -1,12 +1,14 @@
1
1
  import { render } from "ink";
2
2
  import React from "react";
3
- import { detectPluginsWithAgent, ensureClaudeDirectory, fetchMarketplace, getInstalledPlugins, HAN_MARKETPLACE_REPO, readOrCreateSettings, writeSettings, } from "./shared.js";
3
+ import { detectPluginsWithAgent, ensureClaudeDirectory, fetchMarketplace, getInstalledPlugins, getSettingsFilename, HAN_MARKETPLACE_REPO, readOrCreateSettings, writeSettings, } from "./shared.js";
4
4
  /**
5
5
  * Sync plugins to Claude settings - adds selected, removes deselected, and cleans invalid
6
6
  * Note: "bushido" is always installed and cannot be removed
7
+ * Note: For user scope, we only add plugins and clean invalid ones (no removal of deselected)
8
+ * because user settings are shared across all projects
7
9
  */
8
- function syncPluginsToSettings(selectedPlugins, validPluginNames, scope = "project") {
9
- ensureClaudeDirectory();
10
+ function syncPluginsToSettings(selectedPlugins, validPluginNames, scope = "user") {
11
+ ensureClaudeDirectory(scope);
10
12
  const settings = readOrCreateSettings(scope);
11
13
  const currentPlugins = getInstalledPlugins(scope);
12
14
  const added = [];
@@ -33,17 +35,20 @@ function syncPluginsToSettings(selectedPlugins, validPluginNames, scope = "proje
33
35
  };
34
36
  }
35
37
  }
36
- // Remove deselected plugins (but never bushido) and invalid plugins
38
+ // For user scope: only clean invalid plugins (plugins might be needed for other projects)
39
+ // For project/local scope: also remove deselected plugins
37
40
  for (const plugin of currentPlugins) {
38
41
  if (!validPluginNames.has(plugin)) {
39
- // Plugin is not in marketplace - remove it
42
+ // Plugin is not in marketplace - remove it (invalid in any scope)
40
43
  invalid.push(plugin);
41
44
  if (settings.enabledPlugins) {
42
45
  delete settings.enabledPlugins[`${plugin}@han`];
43
46
  }
44
47
  }
45
- else if (plugin !== "bushido" && !selectedPlugins.includes(plugin)) {
46
- // Plugin was deselected
48
+ else if (scope !== "user" &&
49
+ plugin !== "bushido" &&
50
+ !selectedPlugins.includes(plugin)) {
51
+ // Plugin was deselected (only for project/local scope)
47
52
  removed.push(plugin);
48
53
  if (settings.enabledPlugins) {
49
54
  delete settings.enabledPlugins[`${plugin}@han`];
@@ -56,15 +61,15 @@ function syncPluginsToSettings(selectedPlugins, validPluginNames, scope = "proje
56
61
  /**
57
62
  * SDK-based auto-detect install command with Ink UI
58
63
  */
59
- export async function install(scope = "project") {
64
+ export async function install(scope = "user") {
60
65
  // Import Ink UI component dynamically to avoid issues with React
61
66
  const { InstallInteractive } = await import("./install-interactive.js");
62
67
  let resolveCompletion;
63
68
  const completionPromise = new Promise((resolve) => {
64
69
  resolveCompletion = resolve;
65
70
  });
66
- const filename = scope === "local" ? "settings.local.json" : "settings.json";
67
- console.log(`Installing to ./.claude/${filename}...\n`);
71
+ const filename = getSettingsFilename(scope);
72
+ console.log(`Installing to ${filename}...\n`);
68
73
  // Show existing plugins
69
74
  const existingPlugins = getInstalledPlugins(scope);
70
75
  const hanPlugins = existingPlugins.filter((p) => p.startsWith("jutsu-") ||
@@ -126,14 +131,14 @@ export async function install(scope = "project") {
126
131
  /**
127
132
  * Interactive plugin selector (no auto-detect)
128
133
  */
129
- export async function installInteractive(scope = "project") {
134
+ export async function installInteractive(scope = "user") {
130
135
  const { PluginSelector } = await import("./plugin-selector.js");
131
136
  let resolveCompletion;
132
137
  const completionPromise = new Promise((resolve) => {
133
138
  resolveCompletion = resolve;
134
139
  });
135
- const filename = scope === "local" ? "settings.local.json" : "settings.json";
136
- console.log(`Installing to ./.claude/${filename}...\n`);
140
+ const filename = getSettingsFilename(scope);
141
+ console.log(`Installing to ${filename}...\n`);
137
142
  // Fetch marketplace plugins
138
143
  const allPlugins = await fetchMarketplace();
139
144
  if (allPlugins.length === 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../lib/install.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACN,sBAAsB,EACtB,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EAEpB,oBAAoB,EACpB,aAAa,GACb,MAAM,aAAa,CAAC;AAQrB;;;GAGG;AACH,SAAS,qBAAqB,CAC7B,eAAyB,EACzB,gBAA6B,EAC7B,QAA6B,SAAS;IAEtC,qBAAqB,EAAE,CAAC;IAExB,MAAM,QAAQ,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,yBAAyB;IACzB,MAAM,gBAAgB,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;IAEvE,2CAA2C;IAC3C,IAAI,CAAC,QAAQ,EAAE,sBAAsB,EAAE,GAAG,EAAE,CAAC;QAC5C,QAAQ,CAAC,sBAAsB,GAAG;YACjC,GAAG,QAAQ,CAAC,sBAAsB;YAClC,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,oBAAoB,EAAE,EAAE;SACjE,CAAC;IACH,CAAC;IAED,6CAA6C;IAC7C,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE,CAAC;QACvC,IAAI,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACpB,CAAC;YACD,QAAQ,CAAC,cAAc,GAAG;gBACzB,GAAG,QAAQ,CAAC,cAAc;gBAC1B,CAAC,GAAG,MAAM,MAAM,CAAC,EAAE,IAAI;aACvB,CAAC;QACH,CAAC;IACF,CAAC;IAED,oEAAoE;IACpE,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE,CAAC;QACrC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACnC,2CAA2C;YAC3C,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACrB,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC;gBAC7B,OAAO,QAAQ,CAAC,cAAc,CAAC,GAAG,MAAM,MAAM,CAAC,CAAC;YACjD,CAAC;QACF,CAAC;aAAM,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACtE,wBAAwB;YACxB,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACrB,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC;gBAC7B,OAAO,QAAQ,CAAC,cAAc,CAAC,GAAG,MAAM,MAAM,CAAC,CAAC;YACjD,CAAC;QACF,CAAC;IACF,CAAC;IAED,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAE/B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;AACpC,CAAC;AASD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC5B,QAA6B,SAAS;IAEtC,iEAAiE;IACjE,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC;IAExE,IAAI,iBAAgE,CAAC;IAErE,MAAM,iBAAiB,GAAG,IAAI,OAAO,CAAgB,CAAC,OAAO,EAAE,EAAE;QAChE,iBAAiB,GAAG,OAAO,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,eAAe,CAAC;IAC7E,OAAO,CAAC,GAAG,CAAC,2BAA2B,QAAQ,OAAO,CAAC,CAAC;IAExD,wBAAwB;IACxB,MAAM,eAAe,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CACxC,CAAC,CAAC,EAAE,EAAE,CACL,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC;QACtB,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;QACnB,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC;QACtB,CAAC,KAAK,SAAS,CAChB,CAAC;IACF,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,wBAAwB,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChE,CAAC;IAED,8DAA8D;IAC9D,IAAI,kBAAkB,GAAwB,EAAE,CAAC;IAEjD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CACzB,KAAK,CAAC,aAAa,CAAC,kBAAkB,EAAE;QACvC,aAAa,EAAE,sBAAsB;QACrC,gBAAgB,EAAE,KAAK,IAAI,EAAE;YAC5B,kBAAkB,GAAG,MAAM,gBAAgB,EAAE,CAAC;YAC9C,OAAO,kBAAkB,CAAC;QAC3B,CAAC;QACD,gBAAgB,EAAE,eAAe;QACjC,iBAAiB,EAAE,CAAC,OAAiB,EAAE,EAAE;YACxC,IAAI,iBAAiB;gBACpB,iBAAiB,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC,CAAC;QACrD,CAAC;QACD,cAAc,EAAE,CAAC,KAAY,EAAE,EAAE;YAChC,IAAI,iBAAiB;gBAAE,iBAAiB,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACrD,CAAC;QACD,QAAQ,EAAE,GAAG,EAAE;YACd,IAAI,iBAAiB;gBAAE,iBAAiB,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/D,CAAC;KACD,CAAC,CACF,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC;IACvC,OAAO,EAAE,CAAC;IAEV,mCAAmC;IACnC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,MAAM,CAAC,KAAK,CAAC;IACpB,CAAC;SAAM,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAC7C,CAAC;SAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QAC3B,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAC/B,CAAC,MAAM,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CACpD,CAAC;QACF,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,qBAAqB,CACxD,MAAM,CAAC,OAAO,EACd,gBAAgB,EAChB,KAAK,CACL,CAAC;QACF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CACV,eAAe,OAAO,CAAC,MAAM,uBAAuB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACxE,CAAC;QACH,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,CAAC,MAAM,eAAe,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CACV,eAAe,OAAO,CAAC,MAAM,eAAe,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAChE,CAAC;QACH,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxE,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;QACpC,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;IACzE,CAAC;AACF,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACvC,QAA6B,SAAS;IAEtC,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAEhE,IAAI,iBAEQ,CAAC;IAEb,MAAM,iBAAiB,GAAG,IAAI,OAAO,CAGlC,CAAC,OAAO,EAAE,EAAE;QACd,iBAAiB,GAAG,OAAO,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,eAAe,CAAC;IAC7E,OAAO,CAAC,GAAG,CAAC,2BAA2B,QAAQ,OAAO,CAAC,CAAC;IAExD,4BAA4B;IAC5B,MAAM,UAAU,GAAG,MAAM,gBAAgB,EAAE,CAAC;IAC5C,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,KAAK,CACZ,qEAAqE,CACrE,CAAC;QACF,OAAO;IACR,CAAC;IAED,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAEhE,kCAAkC;IAClC,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAEpD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CACzB,KAAK,CAAC,aAAa,CAAC,cAAc,EAAE;QACnC,eAAe,EAAE,gBAAgB;QACjC,gBAAgB,EAAE,gBAAgB;QAClC,UAAU;QACV,UAAU,EAAE,CAAC,OAAiB,EAAE,EAAE;YACjC,IAAI,iBAAiB;gBAAE,iBAAiB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,QAAQ,EAAE,GAAG,EAAE;YACd,IAAI,iBAAiB;gBAAE,iBAAiB,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/D,CAAC;KACD,CAAC,CACF,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC;IACvC,OAAO,EAAE,CAAC;IAEV,mCAAmC;IACnC,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAC7C,CAAC;SAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QAC3B,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,qBAAqB,CACxD,MAAM,CAAC,OAAO,EACd,gBAAgB,EAChB,KAAK,CACL,CAAC;QACF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CACV,eAAe,OAAO,CAAC,MAAM,uBAAuB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACxE,CAAC;QACH,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,CAAC,MAAM,eAAe,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CACV,eAAe,OAAO,CAAC,MAAM,eAAe,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAChE,CAAC;QACH,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxE,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;QACpC,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;IACzE,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../lib/install.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
+ import { type InstallScope } from "./shared.js";
1
2
  /**
2
3
  * Install one or more plugins to Claude settings
3
4
  */
4
- export declare function installPlugins(pluginNames: string[], scope?: "project" | "local"): Promise<void>;
5
+ export declare function installPlugins(pluginNames: string[], scope?: InstallScope): Promise<void>;
5
6
  /**
6
7
  * Install a specific plugin to Claude settings (convenience wrapper)
7
8
  */
8
- export declare function installPlugin(pluginName: string, scope?: "project" | "local"): Promise<void>;
9
+ export declare function installPlugin(pluginName: string, scope?: InstallScope): Promise<void>;
9
10
  //# sourceMappingURL=plugin-install.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-install.d.ts","sourceRoot":"","sources":["../../lib/plugin-install.ts"],"names":[],"mappings":"AAoDA;;GAEG;AACH,wBAAsB,cAAc,CACnC,WAAW,EAAE,MAAM,EAAE,EACrB,KAAK,GAAE,SAAS,GAAG,OAAmB,GACpC,OAAO,CAAC,IAAI,CAAC,CAuFf;AAED;;GAEG;AACH,wBAAsB,aAAa,CAClC,UAAU,EAAE,MAAM,EAClB,KAAK,GAAE,SAAS,GAAG,OAAmB,GACpC,OAAO,CAAC,IAAI,CAAC,CAEf"}
1
+ {"version":3,"file":"plugin-install.d.ts","sourceRoot":"","sources":["../../lib/plugin-install.ts"],"names":[],"mappings":"AAAA,OAAO,EAON,KAAK,YAAY,EAKjB,MAAM,aAAa,CAAC;AA0CrB;;GAEG;AACH,wBAAsB,cAAc,CACnC,WAAW,EAAE,MAAM,EAAE,EACrB,KAAK,GAAE,YAAqB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAuFf;AAED;;GAEG;AACH,wBAAsB,aAAa,CAClC,UAAU,EAAE,MAAM,EAClB,KAAK,GAAE,YAAqB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAEf"}
@@ -1,4 +1,4 @@
1
- import { ensureClaudeDirectory, ensureDispatchHooks, fetchMarketplace, getInstalledPlugins, HAN_MARKETPLACE_REPO, readOrCreateSettings, removeInvalidPlugins, writeSettings, } from "./shared.js";
1
+ import { ensureClaudeDirectory, ensureDispatchHooks, fetchMarketplace, getInstalledPlugins, getSettingsFilename, HAN_MARKETPLACE_REPO, readOrCreateSettings, removeInvalidPlugins, writeSettings, } from "./shared.js";
2
2
  /**
3
3
  * Show available plugins grouped by category
4
4
  */
@@ -35,12 +35,12 @@ function showAvailablePlugins(marketplacePlugins) {
35
35
  /**
36
36
  * Install one or more plugins to Claude settings
37
37
  */
38
- export async function installPlugins(pluginNames, scope = "project") {
38
+ export async function installPlugins(pluginNames, scope = "user") {
39
39
  if (pluginNames.length === 0) {
40
40
  console.error("Error: No plugin names provided.");
41
41
  process.exit(1);
42
42
  }
43
- ensureClaudeDirectory();
43
+ ensureClaudeDirectory(scope);
44
44
  // Validate plugins exist in marketplace
45
45
  console.log("Validating plugins against marketplace...\n");
46
46
  const marketplacePlugins = await fetchMarketplace();
@@ -63,8 +63,8 @@ export async function installPlugins(pluginNames, scope = "project") {
63
63
  }
64
64
  const settings = readOrCreateSettings(scope);
65
65
  const currentPlugins = getInstalledPlugins(scope);
66
- const filename = scope === "local" ? "settings.local.json" : "settings.json";
67
- console.log(`Installing to ./.claude/${filename}...\n`);
66
+ const filename = getSettingsFilename(scope);
67
+ console.log(`Installing to ${filename}...\n`);
68
68
  // Add Han marketplace if not already added
69
69
  if (!settings?.extraKnownMarketplaces?.han) {
70
70
  settings.extraKnownMarketplaces = {
@@ -104,7 +104,7 @@ export async function installPlugins(pluginNames, scope = "project") {
104
104
  /**
105
105
  * Install a specific plugin to Claude settings (convenience wrapper)
106
106
  */
107
- export async function installPlugin(pluginName, scope = "project") {
107
+ export async function installPlugin(pluginName, scope = "user") {
108
108
  return installPlugins([pluginName], scope);
109
109
  }
110
110
  //# sourceMappingURL=plugin-install.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-install.js","sourceRoot":"","sources":["../../lib/plugin-install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-install.js","sourceRoot":"","sources":["../../lib/plugin-install.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
+ import { type InstallScope } from "./shared.js";
1
2
  /**
2
3
  * Uninstall one or more plugins from Claude settings
3
4
  */
4
- export declare function uninstallPlugins(pluginNames: string[], scope?: "project" | "local"): Promise<void>;
5
+ export declare function uninstallPlugins(pluginNames: string[], scope?: InstallScope): Promise<void>;
5
6
  /**
6
7
  * Uninstall a specific plugin from Claude settings (convenience wrapper)
7
8
  */
8
- export declare function uninstallPlugin(pluginName: string, scope?: "project" | "local"): Promise<void>;
9
+ export declare function uninstallPlugin(pluginName: string, scope?: InstallScope): Promise<void>;
9
10
  //# sourceMappingURL=plugin-uninstall.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-uninstall.d.ts","sourceRoot":"","sources":["../../lib/plugin-uninstall.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,wBAAsB,gBAAgB,CACrC,WAAW,EAAE,MAAM,EAAE,EACrB,KAAK,GAAE,SAAS,GAAG,OAAmB,GACpC,OAAO,CAAC,IAAI,CAAC,CA8Cf;AAED;;GAEG;AACH,wBAAsB,eAAe,CACpC,UAAU,EAAE,MAAM,EAClB,KAAK,GAAE,SAAS,GAAG,OAAmB,GACpC,OAAO,CAAC,IAAI,CAAC,CAEf"}
1
+ {"version":3,"file":"plugin-uninstall.d.ts","sourceRoot":"","sources":["../../lib/plugin-uninstall.ts"],"names":[],"mappings":"AAAA,OAAO,EAGN,KAAK,YAAY,EAGjB,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,wBAAsB,gBAAgB,CACrC,WAAW,EAAE,MAAM,EAAE,EACrB,KAAK,GAAE,YAAqB,GAC1B,OAAO,CAAC,IAAI,CAAC,CA8Cf;AAED;;GAEG;AACH,wBAAsB,eAAe,CACpC,UAAU,EAAE,MAAM,EAClB,KAAK,GAAE,YAAqB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAEf"}
@@ -1,16 +1,16 @@
1
- import { getInstalledPlugins, readOrCreateSettings, writeSettings, } from "./shared.js";
1
+ import { getInstalledPlugins, getSettingsFilename, readOrCreateSettings, writeSettings, } from "./shared.js";
2
2
  /**
3
3
  * Uninstall one or more plugins from Claude settings
4
4
  */
5
- export async function uninstallPlugins(pluginNames, scope = "project") {
5
+ export async function uninstallPlugins(pluginNames, scope = "user") {
6
6
  if (pluginNames.length === 0) {
7
7
  console.error("Error: No plugin names provided.");
8
8
  process.exit(1);
9
9
  }
10
10
  const settings = readOrCreateSettings(scope);
11
11
  const currentPlugins = getInstalledPlugins(scope);
12
- const filename = scope === "local" ? "settings.local.json" : "settings.json";
13
- console.log(`Uninstalling from ./.claude/${filename}...\n`);
12
+ const filename = getSettingsFilename(scope);
13
+ console.log(`Uninstalling from ${filename}...\n`);
14
14
  const uninstalled = [];
15
15
  const notInstalled = [];
16
16
  for (const pluginName of pluginNames) {
@@ -42,7 +42,7 @@ export async function uninstallPlugins(pluginNames, scope = "project") {
42
42
  /**
43
43
  * Uninstall a specific plugin from Claude settings (convenience wrapper)
44
44
  */
45
- export async function uninstallPlugin(pluginName, scope = "project") {
45
+ export async function uninstallPlugin(pluginName, scope = "user") {
46
46
  return uninstallPlugins([pluginName], scope);
47
47
  }
48
48
  //# sourceMappingURL=plugin-uninstall.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-uninstall.js","sourceRoot":"","sources":["../../lib/plugin-uninstall.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,mBAAmB,EACnB,oBAAoB,EACpB,aAAa,GACb,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACrC,WAAqB,EACrB,QAA6B,SAAS;IAEtC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IAED,MAAM,QAAQ,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAElD,MAAM,QAAQ,GAAG,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,eAAe,CAAC;IAC7E,OAAO,CAAC,GAAG,CAAC,+BAA+B,QAAQ,OAAO,CAAC,CAAC;IAE5D,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,YAAY,GAAa,EAAE,CAAC;IAElC,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACtC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC1C,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/B,CAAC;aAAM,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC;YACpC,MAAM,SAAS,GAAG,GAAG,UAAU,MAAM,CAAC;YACtC,OAAO,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;YAC1C,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9B,CAAC;IACF,CAAC;IAED,gEAAgE;IAChE,IACC,QAAQ,CAAC,cAAc;QACvB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,MAAM,KAAK,CAAC,EAChD,CAAC;QACF,OAAO,QAAQ,CAAC,cAAc,CAAC;IAChC,CAAC;IAED,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAE/B,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CACV,iBAAiB,WAAW,CAAC,MAAM,eAAe,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC1E,CAAC;IACH,CAAC;IACD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,sBAAsB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC9D,CAAC;IACD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;IAClE,CAAC;AACF,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACpC,UAAkB,EAClB,QAA6B,SAAS;IAEtC,OAAO,gBAAgB,CAAC,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;AAC9C,CAAC"}
1
+ {"version":3,"file":"plugin-uninstall.js","sourceRoot":"","sources":["../../lib/plugin-uninstall.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,mBAAmB,EACnB,mBAAmB,EAEnB,oBAAoB,EACpB,aAAa,GACb,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACrC,WAAqB,EACrB,QAAsB,MAAM;IAE5B,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IAED,MAAM,QAAQ,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAElD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC5C,OAAO,CAAC,GAAG,CAAC,qBAAqB,QAAQ,OAAO,CAAC,CAAC;IAElD,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,YAAY,GAAa,EAAE,CAAC;IAElC,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACtC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC1C,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/B,CAAC;aAAM,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC;YACpC,MAAM,SAAS,GAAG,GAAG,UAAU,MAAM,CAAC;YACtC,OAAO,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;YAC1C,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9B,CAAC;IACF,CAAC;IAED,gEAAgE;IAChE,IACC,QAAQ,CAAC,cAAc;QACvB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,MAAM,KAAK,CAAC,EAChD,CAAC;QACF,OAAO,QAAQ,CAAC,cAAc,CAAC;IAChC,CAAC;IAED,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAE/B,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CACV,iBAAiB,WAAW,CAAC,MAAM,eAAe,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC1E,CAAC;IACH,CAAC;IACD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,sBAAsB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC9D,CAAC;IACD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;IAClE,CAAC;AACF,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACpC,UAAkB,EAClB,QAAsB,MAAM;IAE5B,OAAO,gBAAgB,CAAC,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;AAC9C,CAAC"}
@@ -30,7 +30,8 @@ export interface DetectPluginsCallbacks {
30
30
  onComplete: (plugins: string[], fullText: string) => void;
31
31
  onError: (error: Error) => void;
32
32
  }
33
- export declare function getClaudeSettingsPath(scope?: "project" | "local"): string;
33
+ export type InstallScope = "user" | "project" | "local";
34
+ export declare function getClaudeSettingsPath(scope?: InstallScope): string;
34
35
  /**
35
36
  * Get path to global user Claude settings (~/.claude/settings.json)
36
37
  */
@@ -64,23 +65,27 @@ export interface HookGroup {
64
65
  * is not passed to the agent.
65
66
  */
66
67
  export declare function ensureDispatchHooks(): void;
67
- export declare function ensureClaudeDirectory(): void;
68
- export declare function readOrCreateSettings(scope?: "project" | "local"): ClaudeSettings;
69
- export declare function writeSettings(settings: ClaudeSettings, scope?: "project" | "local"): void;
68
+ export declare function ensureClaudeDirectory(scope?: InstallScope): void;
69
+ export declare function readOrCreateSettings(scope?: InstallScope): ClaudeSettings;
70
+ export declare function writeSettings(settings: ClaudeSettings, scope?: InstallScope): void;
71
+ /**
72
+ * Get human-readable filename for a scope
73
+ */
74
+ export declare function getSettingsFilename(scope: InstallScope): string;
70
75
  /**
71
76
  * Detect which scope(s) have Han marketplace configured
72
77
  * Returns array of scopes where Han is installed
73
78
  */
74
- export declare function detectHanScopes(): Array<"project" | "local">;
79
+ export declare function detectHanScopes(): InstallScope[];
75
80
  /**
76
81
  * Get currently installed Han plugins
77
82
  */
78
- export declare function getInstalledPlugins(scope?: "project" | "local"): string[];
83
+ export declare function getInstalledPlugins(scope?: InstallScope): string[];
79
84
  /**
80
85
  * Remove plugins that are not in the marketplace
81
86
  * Returns the list of removed plugin names
82
87
  */
83
- export declare function removeInvalidPlugins(validPluginNames: Set<string>, scope?: "project" | "local"): string[];
88
+ export declare function removeInvalidPlugins(validPluginNames: Set<string>, scope?: InstallScope): string[];
84
89
  /**
85
90
  * Use Claude Agent SDK to intelligently analyze codebase and recommend plugins
86
91
  */
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../lib/shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../lib/shared.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,10 @@ import { analyzeCodebase, formatStatsForPrompt, } from "./codebase-analyzer.js";
8
8
  const __filename = fileURLToPath(import.meta.url);
9
9
  const __dirname = path.dirname(__filename);
10
10
  export const HAN_MARKETPLACE_REPO = "thebushidocollective/han";
11
- export function getClaudeSettingsPath(scope = "project") {
11
+ export function getClaudeSettingsPath(scope = "user") {
12
+ if (scope === "user") {
13
+ return getGlobalClaudeSettingsPath();
14
+ }
12
15
  const filename = scope === "local" ? "settings.local.json" : "settings.json";
13
16
  return join(process.cwd(), ".claude", filename);
14
17
  }
@@ -94,36 +97,55 @@ export function ensureDispatchHooks() {
94
97
  console.log("✓ Configured dispatch hooks in global settings");
95
98
  }
96
99
  }
97
- export function ensureClaudeDirectory() {
98
- const settingsPath = getClaudeSettingsPath();
100
+ export function ensureClaudeDirectory(scope = "user") {
101
+ const settingsPath = getClaudeSettingsPath(scope);
99
102
  const claudeDir = join(settingsPath, "..");
100
103
  if (!existsSync(claudeDir)) {
101
104
  mkdirSync(claudeDir, { recursive: true });
102
105
  }
103
106
  }
104
- export function readOrCreateSettings(scope = "project") {
107
+ export function readOrCreateSettings(scope = "user") {
105
108
  const settingsPath = getClaudeSettingsPath(scope);
106
109
  if (existsSync(settingsPath)) {
107
110
  try {
108
111
  return JSON.parse(readFileSync(settingsPath, "utf8"));
109
112
  }
110
113
  catch (_error) {
111
- console.error(`Error reading ${scope === "local" ? "settings.local.json" : "settings.json"}, creating new one`);
114
+ const filename = getSettingsFilename(scope);
115
+ console.error(`Error reading ${filename}, creating new one`);
112
116
  return {};
113
117
  }
114
118
  }
115
119
  return {};
116
120
  }
117
- export function writeSettings(settings, scope = "project") {
121
+ export function writeSettings(settings, scope = "user") {
118
122
  const settingsPath = getClaudeSettingsPath(scope);
119
123
  writeFileSync(settingsPath, `${JSON.stringify(settings, null, 2)}\n`);
120
124
  }
125
+ /**
126
+ * Get human-readable filename for a scope
127
+ */
128
+ export function getSettingsFilename(scope) {
129
+ switch (scope) {
130
+ case "user":
131
+ return "~/.claude/settings.json";
132
+ case "local":
133
+ return ".claude/settings.local.json";
134
+ case "project":
135
+ return ".claude/settings.json";
136
+ }
137
+ }
121
138
  /**
122
139
  * Detect which scope(s) have Han marketplace configured
123
140
  * Returns array of scopes where Han is installed
124
141
  */
125
142
  export function detectHanScopes() {
126
143
  const scopes = [];
144
+ // Check user scope
145
+ const userSettings = readOrCreateSettings("user");
146
+ if (userSettings.extraKnownMarketplaces?.han) {
147
+ scopes.push("user");
148
+ }
127
149
  // Check project scope
128
150
  const projectSettings = readOrCreateSettings("project");
129
151
  if (projectSettings.extraKnownMarketplaces?.han) {
@@ -139,7 +161,7 @@ export function detectHanScopes() {
139
161
  /**
140
162
  * Get currently installed Han plugins
141
163
  */
142
- export function getInstalledPlugins(scope = "project") {
164
+ export function getInstalledPlugins(scope = "user") {
143
165
  const settings = readOrCreateSettings(scope);
144
166
  const enabledPlugins = settings.enabledPlugins || {};
145
167
  return Object.keys(enabledPlugins)
@@ -150,7 +172,7 @@ export function getInstalledPlugins(scope = "project") {
150
172
  * Remove plugins that are not in the marketplace
151
173
  * Returns the list of removed plugin names
152
174
  */
153
- export function removeInvalidPlugins(validPluginNames, scope = "project") {
175
+ export function removeInvalidPlugins(validPluginNames, scope = "user") {
154
176
  const settings = readOrCreateSettings(scope);
155
177
  const currentPlugins = getInstalledPlugins(scope);
156
178
  const removed = [];
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../lib/shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../lib/shared.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EACN,eAAe,EAEf,oBAAoB,GACpB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAE3C,MAAM,CAAC,MAAM,oBAAoB,GAAG,0BAA0B,CAAC;AA+B/D,MAAM,UAAU,qBAAqB,CAAC,QAAsB,MAAM;IACjE,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;QACtB,OAAO,2BAA2B,EAAE,CAAC;IACtC,CAAC;IACD,MAAM,QAAQ,GAAG,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,eAAe,CAAC;IAC7E,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2BAA2B;IAC1C,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;IAClE,OAAO,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;AAClD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB;IACjC,MAAM,YAAY,GAAG,2BAA2B,EAAE,CAAC;IAEnD,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC;YACJ,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAmB,CAAC;QACzE,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YACjB,OAAO,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;YACtE,OAAO,EAAE,CAAC;QACX,CAAC;IACF,CAAC;IAED,OAAO,EAAE,CAAC;AACX,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAwB;IAC3D,MAAM,YAAY,GAAG,2BAA2B,EAAE,CAAC;IACnD,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IAC3C,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC5B,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;IACD,aAAa,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AACvE,CAAC;AAmBD;;GAEG;AACH,MAAM,qBAAqB,GAAG,gDAAgD,CAAC;AAE/E;;;;GAIG;AACH,MAAM,UAAU,mBAAmB;IAClC,MAAM,QAAQ,GAAG,kBAAkB,EAAE,CAAC;IAEtC,kCAAkC;IAClC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACrB,QAAQ,CAAC,KAAK,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAoC,CAAC;IAC5D,IAAI,QAAQ,GAAG,KAAK,CAAC;IAErB,2DAA2D;IAC3D,MAAM,SAAS,GAAG,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC;IAEvD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QAClC,MAAM,eAAe,GAAG,GAAG,qBAAqB,IAAI,QAAQ,EAAE,CAAC;QAE/D,yCAAyC;QACzC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtB,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;QACtB,CAAC;QAED,wCAAwC;QACxC,MAAM,eAAe,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CACtD,KAAK,CAAC,KAAK,EAAE,IAAI,CAChB,CAAC,IAAI,EAAE,EAAE,CACR,IAAI,CAAC,IAAI,KAAK,SAAS;YACvB,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAC5C,CACD,CAAC;QAEF,IAAI,CAAC,eAAe,EAAE,CAAC;YACtB,qCAAqC;YACrC,KAAK,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;gBACvB,KAAK,EAAE;oBACN;wBACC,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,eAAe;wBACxB,OAAO,EAAE,KAAK;qBACd;iBACD;aACD,CAAC,CAAC;YACH,QAAQ,GAAG,IAAI,CAAC;QACjB,CAAC;IACF,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC;QACd,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;QACvB,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;IAC/D,CAAC;AACF,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,QAAsB,MAAM;IACjE,MAAM,YAAY,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IAC3C,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC5B,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;AACF,CAAC;AAED,MAAM,UAAU,oBAAoB,CACnC,QAAsB,MAAM;IAE5B,MAAM,YAAY,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAElD,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC;YACJ,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAmB,CAAC;QACzE,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YACjB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAC5C,OAAO,CAAC,KAAK,CAAC,iBAAiB,QAAQ,oBAAoB,CAAC,CAAC;YAC7D,OAAO,EAAE,CAAC;QACX,CAAC;IACF,CAAC;IAED,OAAO,EAAE,CAAC;AACX,CAAC;AAED,MAAM,UAAU,aAAa,CAC5B,QAAwB,EACxB,QAAsB,MAAM;IAE5B,MAAM,YAAY,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAClD,aAAa,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AACvE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAmB;IACtD,QAAQ,KAAK,EAAE,CAAC;QACf,KAAK,MAAM;YACV,OAAO,yBAAyB,CAAC;QAClC,KAAK,OAAO;YACX,OAAO,6BAA6B,CAAC;QACtC,KAAK,SAAS;YACb,OAAO,uBAAuB,CAAC;IACjC,CAAC;AACF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe;IAC9B,MAAM,MAAM,GAAmB,EAAE,CAAC;IAElC,mBAAmB;IACnB,MAAM,YAAY,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAClD,IAAI,YAAY,CAAC,sBAAsB,EAAE,GAAG,EAAE,CAAC;QAC9C,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrB,CAAC;IAED,sBAAsB;IACtB,MAAM,eAAe,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACxD,IAAI,eAAe,CAAC,sBAAsB,EAAE,GAAG,EAAE,CAAC;QACjD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxB,CAAC;IAED,oBAAoB;IACpB,MAAM,aAAa,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACpD,IAAI,aAAa,CAAC,sBAAsB,EAAE,GAAG,EAAE,CAAC;QAC/C,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtB,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAsB,MAAM;IAC/D,MAAM,QAAQ,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,cAAc,GAAG,QAAQ,CAAC,cAAc,IAAI,EAAE,CAAC;IAErD,OAAO,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC;SAChC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,cAAc,CAAC,GAAG,CAAC,CAAC;SAC5D,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC;AACzC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CACnC,gBAA6B,EAC7B,QAAsB,MAAM;IAE5B,MAAM,QAAQ,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE,CAAC;QACrC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACnC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACrB,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC;gBAC7B,OAAO,QAAQ,CAAC,cAAc,CAAC,GAAG,MAAM,MAAM,CAAC,CAAC;YACjD,CAAC;QACF,CAAC;IACF,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,OAAO,OAAO,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,aAAa;IACrB,oEAAoE;IACpE,IAAI,qBAAqB,EAAE,CAAC;QAC3B,OAAO,qBAAqB,CAAC;IAC9B,CAAC;IACD,kDAAkD;IAClD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC;IACpE,OAAO,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB;IAC5B,IAAI,CAAC;QACJ,MAAM,UAAU,GAAG,QAAQ,CAAC,cAAc,EAAE;YAC3C,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;SAC/B,CAAC,CAAC,IAAI,EAAE,CAAC;QACV,IAAI,UAAU,EAAE,CAAC;YAChB,OAAO,UAAU,CAAC;QACnB,CAAC;IACF,CAAC;IAAC,MAAM,CAAC;QACR,sBAAsB;IACvB,CAAC;IAED,+BAA+B;IAC/B,MAAM,WAAW,GAAG;QACnB,uBAAuB;QACvB,0BAA0B;QAC1B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,mBAAmB,CAAC;KACjD,CAAC;IAEF,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;QAC7B,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YACnB,OAAO,CAAC,CAAC;QACV,CAAC;IACF,CAAC;IAED,MAAM,IAAI,KAAK,CACd,0EAA0E,CAC1E,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,eAAe;IACvB,IAAI,CAAC;QACJ,MAAM,SAAS,GAAG,QAAQ,CAAC,2BAA2B,EAAE;YACvD,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;YAClB,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;SAC/B,CAAC,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,SAAS,IAAI,IAAI,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACR,yCAAyC;QACzC,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED;;GAEG;AACH,SAAS,0BAA0B,CAClC,OAA4B,EAC5B,aAA6B,EAC7B,gBAA2B;IAE3B,MAAM,UAAU,GAAG,OAAO;SACxB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACV,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9B,IAAI,CAAC,CAAC,WAAW;YAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvB,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,uCAAuC;IACvC,IAAI,MAAM,GAAG,aAAa,EAAE,CAAC;IAE7B,kCAAkC;IAClC,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,IAAI,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,wCAAwC,YAAY,EAAE,CAAC;IAClE,CAAC;IAED,+CAA+C;IAC/C,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrD,MAAM,aAAa,GAAG,gBAAgB;aACpC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACb,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YACpD,IAAI,MAAM,EAAE,CAAC;gBACZ,MAAM,KAAK,GAAG,CAAC,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;gBACnC,IAAI,MAAM,CAAC,WAAW;oBAAE,KAAK,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;gBAC9D,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACvB,CAAC;YACD,OAAO,KAAK,IAAI,EAAE,CAAC;QACpB,CAAC,CAAC;aACD,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,MAAM,IAAI,yCAAyC,aAAa,sJAAsJ,CAAC;IACxN,CAAC;IAED,uCAAuC;IACvC,IAAI,aAAa,IAAI,aAAa,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,gDAAgD,oBAAoB,CAAC,aAAa,CAAC,EAAE,CAAC;IACjG,CAAC;IAED,wBAAwB;IACxB,MAAM,IAAI,8CAA8C,UAAU,EAAE,CAAC;IAErE,MAAM,IAAI,8GAA8G,CAAC;IAEzH,OAAO,MAAM,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC3C,SAAiC;IAEjC,0BAA0B;IAC1B,MAAM,kBAAkB,GAAG,MAAM,gBAAgB,EAAE,CAAC;IACpD,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,SAAS,CAAC,OAAO,CAChB,IAAI,KAAK,CACR,qEAAqE,CACrE,CACD,CAAC;QACF,OAAO;IACR,CAAC;IAED,uEAAuE;IACvE,MAAM,cAAc,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAClD,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAClC,IAAI,GAAG,CAAC,CAAC,GAAG,cAAc,EAAE,GAAG,YAAY,CAAC,CAAC,CAC7C,CAAC;IAEF,kDAAkD;IAClD,IAAI,aAAwC,CAAC;IAC7C,IAAI,CAAC;QACJ,SAAS,CAAC,QAAQ,CAAC;YAClB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,iCAAiC;SAC1C,CAAC,CAAC;QACH,aAAa,GAAG,eAAe,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAChD,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QACjB,OAAO,CAAC,IAAI,CACX,+DAA+D,CAC/D,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,MAAM,MAAM,GAAG,0BAA0B,CACxC,kBAAkB,EAClB,aAAa,EACb,gBAAgB,CAChB,CAAC;IACF,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAExE,yEAAyE;IACzE,MAAM,YAAY,GAAa,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAE7D,IAAI,eAAe,GAAG,EAAE,CAAC;IAEzB,IAAI,CAAC;QACJ,MAAM,UAAU,GAAG,oBAAoB,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,KAAK,CAAC;YACnB,MAAM;YACN,OAAO,EAAE;gBACR,KAAK,EAAE,OAAO;gBACd,sBAAsB,EAAE,IAAI;gBAC5B,YAAY;gBACZ,0BAA0B,EAAE,UAAU;aACtC;SACD,CAAC,CAAC;QAEH,wDAAwD;QACxD,IAAI,KAAK,EAAE,MAAM,UAAU,IAAI,KAAK,EAAE,CAAC;YACtC,IAAI,UAAU,CAAC,IAAI,KAAK,WAAW,IAAI,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACnE,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;oBAChD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;wBAC3B,oBAAoB;wBACpB,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;wBAC1D,eAAe,IAAI,KAAK,CAAC,IAAI,CAAC;oBAC/B,CAAC;yBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;wBACtC,6CAA6C;wBAC7C,SAAS,CAAC,QAAQ,CAAC;4BAClB,IAAI,EAAE,MAAM;4BACZ,OAAO,EAAE,SAAS,KAAK,CAAC,IAAI,EAAE;4BAC9B,QAAQ,EAAE,KAAK,CAAC,IAAI;4BACpB,SAAS,EAAE,KAAK,CAAC,KAAgC;yBACjD,CAAC,CAAC;oBACJ,CAAC;gBACF,CAAC;YACF,CAAC;QACF,CAAC;QAED,qDAAqD;QACrD,MAAM,OAAO,GAAG,0BAA0B,CAAC,eAAe,CAAC,CAAC;QAE5D,uCAAuC;QACvC,MAAM,SAAS,GAAa,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAa,EAAE,CAAC;QAE7B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC9B,IAAI,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACP,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtB,CAAC;QACF,CAAC;QAED,gDAAgD;QAChD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO,CAAC,IAAI,CACX,yBAAyB,OAAO,CAAC,MAAM,uBAAuB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAClF,CAAC;QACH,CAAC;QAED,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAEpE,SAAS,CAAC,UAAU,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;IACrD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,SAAS,CAAC,OAAO,CAAC,KAAc,CAAC,CAAC;IACnC,CAAC;AACF,CAAC;AASD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACrC,IAAI,CAAC;QACJ,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC3B,4GAA4G,CAC5G,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YAClB,OAAO,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;YAC1D,OAAO,EAAE,CAAC;QACX,CAAC;QACD,MAAM,WAAW,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAEzC,CAAC;QACF,OAAO,WAAW,CAAC,OAAO,CAAC;IAC5B,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QACjB,OAAO,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;QAC1D,OAAO,EAAE,CAAC;IACX,CAAC;AACF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,0BAA0B,CAAC,OAAe;IACzD,yCAAyC;IACzC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAChD,IAAI,SAAS,EAAE,CAAC;QACf,IAAI,CAAC;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAY,CAAC;YACpD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC5B,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CACnC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CACzC,CAAC;gBACF,yCAAyC;gBACzC,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC;gBAC7D,OAAO,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAClC,CAAC;QACF,CAAC;QAAC,MAAM,CAAC;YACR,sDAAsD;QACvD,CAAC;IACF,CAAC;IAED,4CAA4C;IAC5C,MAAM,aAAa,GAAG,gDAAgD,CAAC;IACvE,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC7C,IAAI,OAAO,EAAE,CAAC;QACb,6CAA6C;QAC7C,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;QACvD,OAAO,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;IAED,iCAAiC;IACjC,OAAO,CAAC,SAAS,CAAC,CAAC;AACpB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thebushidocollective/han",
3
- "version": "1.40.0",
3
+ "version": "1.41.1",
4
4
  "description": "CLI for installing and managing curated Claude Code plugins from the Han marketplace",
5
5
  "main": "dist/lib/main.js",
6
6
  "types": "dist/lib/main.d.ts",
@@ -51,11 +51,11 @@
51
51
  "README.md"
52
52
  ],
53
53
  "optionalDependencies": {
54
- "@thebushidocollective/han-darwin-arm64": "1.40.0",
55
- "@thebushidocollective/han-darwin-x64": "1.40.0",
56
- "@thebushidocollective/han-linux-arm64": "1.40.0",
57
- "@thebushidocollective/han-linux-x64": "1.40.0",
58
- "@thebushidocollective/han-win32-x64": "1.40.0"
54
+ "@thebushidocollective/han-darwin-arm64": "1.41.1",
55
+ "@thebushidocollective/han-darwin-x64": "1.41.1",
56
+ "@thebushidocollective/han-linux-arm64": "1.41.1",
57
+ "@thebushidocollective/han-linux-x64": "1.41.1",
58
+ "@thebushidocollective/han-win32-x64": "1.41.1"
59
59
  },
60
60
  "devDependencies": {
61
61
  "@anthropic-ai/claude-agent-sdk": "0.1.50",