@thebushidocollective/han 1.30.0 → 1.30.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.
@@ -1,3 +1,3 @@
1
- export declare const HAN_VERSION = "1.30.0";
1
+ export declare const HAN_VERSION = "1.30.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- **buki-\\*** (\u6B66\u5668 weapons): Skills for specific technologies and frameworks\n- **do-\\*** (\u9053 disciplines): Specialized agents for development practices and workflows\n- **sensei-\\*** (\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: `buki-typescript` suggests TypeScript development\n - Example: `sensei-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 buki-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 `sensei-github`\n - URLs containing `gitlab.com` or other GitLab instances \u2192 recommend `sensei-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 buki-\\* plugins\n- Cross-reference development practices with available do-\\* plugins\n- Cross-reference integrations with available sensei-\\* 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\", \"buki-typescript\", \"buki-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.30.0";
2
+ export const HAN_VERSION = "1.30.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- **buki-\\*** (武器 weapons): Skills for specific technologies and frameworks\n- **do-\\*** (道 disciplines): Specialized agents for development practices and workflows\n- **sensei-\\*** (先生 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: `buki-typescript` suggests TypeScript development\n - Example: `sensei-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 buki-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 `sensei-github`\n - URLs containing `gitlab.com` or other GitLab instances → recommend `sensei-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 buki-\\* plugins\n- Cross-reference development practices with available do-\\* plugins\n- Cross-reference integrations with available sensei-\\* 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\", \"buki-typescript\", \"buki-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":"run.d.ts","sourceRoot":"","sources":["../../../../lib/commands/hook/run.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoEzC,wBAAgB,eAAe,CAAC,WAAW,EAAE,OAAO,GAAG,IAAI,CAuH1D"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../../lib/commands/hook/run.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,wBAAgB,eAAe,CAAC,WAAW,EAAE,OAAO,GAAG,IAAI,CAwG1D"}
@@ -1,62 +1,3 @@
1
- /**
2
- * Check if stdin has data available without blocking
3
- * Returns the stdin data if available, null otherwise
4
- */
5
- async function tryReadStdin() {
6
- // Check if stdin is a TTY (interactive terminal) - if so, no data to read
7
- if (process.stdin.isTTY) {
8
- return null;
9
- }
10
- // Set a short timeout to check for available data
11
- return new Promise((resolve) => {
12
- let data = "";
13
- let resolved = false;
14
- const timeout = setTimeout(() => {
15
- if (!resolved) {
16
- resolved = true;
17
- process.stdin.removeAllListeners();
18
- process.stdin.pause();
19
- resolve(data || null);
20
- }
21
- }, 100); // 100ms timeout
22
- process.stdin.setEncoding("utf8");
23
- process.stdin.on("data", (chunk) => {
24
- data += chunk;
25
- });
26
- process.stdin.on("end", () => {
27
- if (!resolved) {
28
- resolved = true;
29
- clearTimeout(timeout);
30
- resolve(data || null);
31
- }
32
- });
33
- process.stdin.on("error", () => {
34
- if (!resolved) {
35
- resolved = true;
36
- clearTimeout(timeout);
37
- resolve(null);
38
- }
39
- });
40
- // Resume stdin to start reading
41
- process.stdin.resume();
42
- });
43
- }
44
- /**
45
- * Check if we're in a nested stop hook scenario
46
- * Claude Code sets stop_hook_active: true in stdin when a stop hook is already running
47
- */
48
- function isStopHookActive(stdinData) {
49
- if (!stdinData)
50
- return false;
51
- try {
52
- const parsed = JSON.parse(stdinData);
53
- return parsed.stop_hook_active === true;
54
- }
55
- catch {
56
- // Not JSON or invalid JSON - that's fine, just means it's not a Claude hook context
57
- return false;
58
- }
59
- }
60
1
  export function registerHookRun(hookCommand) {
61
2
  // Supports two formats:
62
3
  // 1. New format: han hook run <hookName> [--fail-fast] [--stdin] [--cache]
@@ -71,22 +12,13 @@ export function registerHookRun(hookCommand) {
71
12
  .option("--fail-fast", "Stop on first failure")
72
13
  .option("--dirs-with <file>", "(Legacy) Only run in directories containing the specified file")
73
14
  .option("--test-dir <command>", "(Legacy) Only include directories where this command exits 0")
74
- .option("--stdin", "Read stdin and pass it to each subcommand")
75
15
  .option("--cache", "Only run if files matching ifChanged patterns have changed since last successful run")
76
16
  .option("--verbose", "Show full command output (also settable via HAN_HOOK_RUN_VERBOSE=1)")
77
17
  .allowUnknownOption()
78
18
  .action(async (hookNameOrArgs, options) => {
79
- // Always try to read stdin to check for stop_hook_active
80
- const stdinData = await tryReadStdin();
81
- // Check if we're in a nested stop hook - if so, exit immediately to prevent loops
82
- if (isStopHookActive(stdinData)) {
83
- process.exit(0);
84
- }
85
19
  const hookName = hookNameOrArgs.length > 0 ? hookNameOrArgs[0] : undefined;
86
20
  const separatorIndex = process.argv.indexOf("--");
87
21
  const isLegacyFormat = separatorIndex !== -1;
88
- // If --stdin was specified but we already read the data, use it
89
- // Otherwise, stdinData will be passed to subcommands if available
90
22
  // Determine verbose mode from option or environment variable
91
23
  const verbose = options.verbose ||
92
24
  process.env.HAN_HOOK_RUN_VERBOSE === "1" ||
@@ -112,7 +44,6 @@ export function registerHookRun(hookCommand) {
112
44
  dirsWith: options.dirsWith || null,
113
45
  testDir: options.testDir || null,
114
46
  command: quotedArgs.join(" "),
115
- stdinData,
116
47
  verbose,
117
48
  });
118
49
  }
@@ -128,7 +59,6 @@ export function registerHookRun(hookCommand) {
128
59
  await runConfiguredHook({
129
60
  hookName,
130
61
  failFast: options.failFast || false,
131
- stdinData,
132
62
  cache: options.cache || false,
133
63
  verbose,
134
64
  });
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../../lib/commands/hook/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../../lib/commands/hook/run.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,6 @@ interface ValidateOptions {
3
3
  dirsWith: string | null;
4
4
  testDir?: string | null;
5
5
  command: string;
6
- stdinData?: string | null;
7
6
  verbose?: boolean;
8
7
  }
9
8
  export declare function validate(options: ValidateOptions): void;
@@ -13,7 +12,6 @@ export declare function validate(options: ValidateOptions): void;
13
12
  export interface RunConfiguredHookOptions {
14
13
  hookName: string;
15
14
  failFast: boolean;
16
- stdinData?: string | null;
17
15
  /**
18
16
  * When true, check if files have changed before running hooks.
19
17
  * If no changes detected, skip the hook and exit 0.
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../lib/validate.ts"],"names":[],"mappings":"AAcA,UAAU,eAAe;IACxB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAmED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAwFvD;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAgBD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,IAAI,CAwJzE"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../lib/validate.ts"],"names":[],"mappings":"AAcA,UAAU,eAAe;IACxB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AA0DD,wBAAgB,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAkFvD;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAgBD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,IAAI,CAmJzE"}
@@ -10,14 +10,13 @@ function findDirectoriesWithMarker(rootDir, markerPatterns) {
10
10
  // Run command in directory
11
11
  // When verbose=false, suppresses output and we'll tell the agent how to reproduce
12
12
  // When verbose=true, inherits stdio to show full output
13
- function runCommand(dir, cmd, stdinData, verbose) {
13
+ function runCommand(dir, cmd, verbose) {
14
14
  try {
15
15
  if (verbose) {
16
16
  // Verbose mode: show full output
17
17
  execSync(cmd, {
18
18
  cwd: dir,
19
- stdio: stdinData ? ["pipe", "inherit", "inherit"] : "inherit",
20
- input: stdinData || undefined,
19
+ stdio: "inherit",
21
20
  encoding: "utf8",
22
21
  shell: "/bin/sh",
23
22
  env: process.env,
@@ -27,10 +26,7 @@ function runCommand(dir, cmd, stdinData, verbose) {
27
26
  // Quiet mode: suppress output, we give the agent a concise instruction instead
28
27
  execSync(cmd, {
29
28
  cwd: dir,
30
- stdio: stdinData
31
- ? ["pipe", "pipe", "pipe"]
32
- : ["ignore", "pipe", "pipe"],
33
- input: stdinData || undefined,
29
+ stdio: ["ignore", "pipe", "pipe"],
34
30
  encoding: "utf8",
35
31
  shell: "/bin/sh",
36
32
  env: process.env,
@@ -59,11 +55,11 @@ function testDirCommand(dir, cmd) {
59
55
  }
60
56
  }
61
57
  export function validate(options) {
62
- const { failFast, dirsWith, testDir, command: commandToRun, stdinData, verbose, } = options;
58
+ const { failFast, dirsWith, testDir, command: commandToRun, verbose } = options;
63
59
  const rootDir = process.env.CLAUDE_PROJECT_DIR || process.cwd();
64
60
  // No dirsWith specified - run in current directory only
65
61
  if (!dirsWith) {
66
- const success = runCommand(rootDir, commandToRun, stdinData, verbose);
62
+ const success = runCommand(rootDir, commandToRun, verbose);
67
63
  if (!success) {
68
64
  console.error(`\n❌ The command \`${commandToRun}\` failed.\n\n` +
69
65
  `Spawn a subagent to run the command, review the output, and fix all issues.\n`);
@@ -84,7 +80,7 @@ export function validate(options) {
84
80
  continue;
85
81
  }
86
82
  processedCount++;
87
- const success = runCommand(dir, commandToRun, stdinData, verbose);
83
+ const success = runCommand(dir, commandToRun, verbose);
88
84
  if (!success) {
89
85
  const relativePath = dir === rootDir ? "." : dir.replace(`${rootDir}/`, "");
90
86
  failures.push(relativePath);
@@ -128,7 +124,7 @@ function getCacheKeyForDirectory(hookName, directory, projectRoot) {
128
124
  * This is the new format: `han hook run <hookName> [--fail-fast] [--cache]`
129
125
  */
130
126
  export function runConfiguredHook(options) {
131
- const { hookName, failFast, stdinData, cache, verbose } = options;
127
+ const { hookName, failFast, cache, verbose } = options;
132
128
  const pluginRoot = process.env.CLAUDE_PLUGIN_ROOT;
133
129
  const projectRoot = process.env.CLAUDE_PROJECT_DIR || process.cwd();
134
130
  if (!pluginRoot) {
@@ -164,7 +160,7 @@ export function runConfiguredHook(options) {
164
160
  const relativePath = config.directory === projectRoot
165
161
  ? "."
166
162
  : config.directory.replace(`${projectRoot}/`, "");
167
- const success = runCommand(config.directory, config.command, stdinData, verbose);
163
+ const success = runCommand(config.directory, config.command, verbose);
168
164
  if (!success) {
169
165
  failures.push({ dir: relativePath, command: config.command });
170
166
  if (failFast) {
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../lib/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../lib/validate.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thebushidocollective/han",
3
- "version": "1.30.0",
3
+ "version": "1.30.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",
@@ -50,11 +50,11 @@
50
50
  "README.md"
51
51
  ],
52
52
  "optionalDependencies": {
53
- "@thebushidocollective/han-darwin-arm64": "1.30.0",
54
- "@thebushidocollective/han-darwin-x64": "1.30.0",
55
- "@thebushidocollective/han-linux-arm64": "1.30.0",
56
- "@thebushidocollective/han-linux-x64": "1.30.0",
57
- "@thebushidocollective/han-win32-x64": "1.30.0"
53
+ "@thebushidocollective/han-darwin-arm64": "1.30.1",
54
+ "@thebushidocollective/han-darwin-x64": "1.30.1",
55
+ "@thebushidocollective/han-linux-arm64": "1.30.1",
56
+ "@thebushidocollective/han-linux-x64": "1.30.1",
57
+ "@thebushidocollective/han-win32-x64": "1.30.1"
58
58
  },
59
59
  "devDependencies": {
60
60
  "@anthropic-ai/claude-agent-sdk": "0.1.50",