claude-pangu 2.1.7 → 2.1.9

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,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://code.claude.com/plugin-schema.json",
3
3
  "name": "oh-my-claude",
4
- "version": "2.1.7",
4
+ "version": "2.1.9",
5
5
  "hooks": "./hooks/hooks.json",
6
6
  "description": "基于中国传统文化的 Claude Code 智能编排插件 - A Claude Code plugin inspired by Chinese traditional culture",
7
7
  "author": "ZDragon17",
@@ -54,7 +54,22 @@ if (configManager.get('advanced').enableTracing) {
54
54
  configManager.enableHotReload();
55
55
  }
56
56
  // ==================== 主入口 ====================
57
- const isMainModule = process.argv[1] === __filename || process.argv[1]?.endsWith('cli.js');
57
+ // 检查是否为主模块(支持 npx、直接运行、符号链接等场景)
58
+ const isMainModule = (() => {
59
+ const scriptPath = process.argv[1];
60
+ if (!scriptPath)
61
+ return false;
62
+ // 直接匹配
63
+ if (scriptPath === __filename)
64
+ return true;
65
+ // 文件名匹配(处理 npx 符号链接场景)
66
+ if (scriptPath.endsWith('cli.js'))
67
+ return true;
68
+ // bin 名称匹配(处理 npm 全局安装场景)
69
+ if (scriptPath.endsWith('claude-pangu') || scriptPath.endsWith('oh-my-claude'))
70
+ return true;
71
+ return false;
72
+ })();
58
73
  if (isMainModule) {
59
74
  (async () => {
60
75
  const args = process.argv.slice(2);
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../scripts/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../scripts/cli.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-pangu",
3
- "version": "2.1.7",
3
+ "version": "2.1.9",
4
4
  "description": "基于中国传统文化的 Claude Code 智能编排插件 - A Claude Code plugin inspired by Chinese traditional culture (原名 oh-my-claude)",
5
5
  "keywords": [
6
6
  "claude-code",
package/scripts/cli.js CHANGED
@@ -424,12 +424,25 @@ function installCommands(packageDir) {
424
424
  try {
425
425
  fs.rmSync(legacyZcfDir, { recursive: true, force: true });
426
426
  stats.cleaned = true;
427
- info('已清理旧版本 zcf 子目录');
427
+ info('已清理全局 zcf 子目录');
428
428
  } catch (err) {
429
429
  warn(`清理旧版本目录失败: ${err.message}`);
430
430
  }
431
431
  }
432
432
 
433
+ // 清理当前工作目录的项目本地 zcf 残留(如果存在)
434
+ const cwd = process.cwd();
435
+ const projectZcfDir = path.join(cwd, '.claude', 'commands', 'zcf');
436
+ if (fs.existsSync(projectZcfDir)) {
437
+ try {
438
+ fs.rmSync(projectZcfDir, { recursive: true, force: true });
439
+ stats.cleaned = true;
440
+ info('已清理项目本地 zcf 子目录');
441
+ } catch (err) {
442
+ warn(`清理项目本地旧版本目录失败: ${err.message}`);
443
+ }
444
+ }
445
+
433
446
  // 创建 commands 目录
434
447
  if (!fs.existsSync(commandsDir)) {
435
448
  fs.mkdirSync(commandsDir, { recursive: true });
@@ -880,7 +893,8 @@ function install() {
880
893
  info(' 1. 确保完全退出 Claude Code(不只是关闭窗口)');
881
894
  info(' 2. 检查文件是否存在: ls ~/.claude/commands/');
882
895
  info(' 3. 清除缓存: rm ~/.claude.json && 重启');
883
- log('');
896
+ info(' 4. 如果看到 /zcf:yishan (project) 等旧命令:');
897
+ info(' rm -rf .claude/commands/zcf # 在项目目录中执行');
884
898
  }
885
899
 
886
900
  // 执行卸载操作
@@ -1039,6 +1053,8 @@ function update() {
1039
1053
  info(' 1. 确保完全退出 Claude Code(不只是关闭窗口)');
1040
1054
  info(' 2. 检查文件是否存在: ls ~/.claude/commands/');
1041
1055
  info(' 3. 清除缓存: rm ~/.claude.json && 重启');
1056
+ info(' 4. 如果看到 /zcf:yishan (project) 等旧命令:');
1057
+ info(' rm -rf .claude/commands/zcf # 在项目目录中执行');
1042
1058
  log('');
1043
1059
  }
1044
1060
 
package/scripts/cli.ts CHANGED
@@ -73,7 +73,22 @@ if (configManager.get('advanced').enableTracing) {
73
73
 
74
74
  // ==================== 主入口 ====================
75
75
 
76
- const isMainModule = process.argv[1] === __filename || process.argv[1]?.endsWith('cli.js');
76
+ // 检查是否为主模块(支持 npx、直接运行、符号链接等场景)
77
+ const isMainModule = (() => {
78
+ const scriptPath = process.argv[1];
79
+ if (!scriptPath) return false;
80
+
81
+ // 直接匹配
82
+ if (scriptPath === __filename) return true;
83
+
84
+ // 文件名匹配(处理 npx 符号链接场景)
85
+ if (scriptPath.endsWith('cli.js')) return true;
86
+
87
+ // bin 名称匹配(处理 npm 全局安装场景)
88
+ if (scriptPath.endsWith('claude-pangu') || scriptPath.endsWith('oh-my-claude')) return true;
89
+
90
+ return false;
91
+ })();
77
92
 
78
93
  if (isMainModule) {
79
94
  (async () => {