mirror of
https://github.com/catlog22/Claude-Code-Workflow.git
synced 2026-02-28 09:23:08 +08:00
feat: 更新工具列表,支持 .ccw 目录的安装和升级,调整相关路径
This commit is contained in:
@@ -26,7 +26,7 @@ const __filename = fileURLToPath(import.meta.url);
|
||||
const __dirname = dirname(__filename);
|
||||
|
||||
// Source directories to install (includes .codex with prompts folder)
|
||||
const SOURCE_DIRS = ['.claude', '.codex', '.gemini', '.qwen'];
|
||||
const SOURCE_DIRS = ['.claude', '.codex', '.gemini', '.qwen', '.ccw'];
|
||||
|
||||
// Subdirectories that should always be installed to global (~/.claude/)
|
||||
const GLOBAL_SUBDIRS = ['workflows', 'scripts', 'templates'];
|
||||
@@ -380,7 +380,10 @@ export async function installCommand(options: InstallOptions): Promise<void> {
|
||||
|
||||
for (const dir of availableDirs) {
|
||||
const srcPath = join(sourceDir, dir);
|
||||
const destPath = join(installPath, dir);
|
||||
|
||||
// .ccw always installs to global ~/.ccw/ regardless of mode
|
||||
const destBase = (mode === 'Path' && dir === '.ccw') ? homedir() : installPath;
|
||||
const destPath = join(destBase, dir);
|
||||
|
||||
spinner.text = `Installing ${dir}...`;
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ const __filename = fileURLToPath(import.meta.url);
|
||||
const __dirname = dirname(__filename);
|
||||
|
||||
// Source directories to install
|
||||
const SOURCE_DIRS = ['.claude', '.codex', '.gemini', '.qwen'];
|
||||
const SOURCE_DIRS = ['.claude', '.codex', '.gemini', '.qwen', '.ccw'];
|
||||
|
||||
// Subdirectories that should always be installed to global (~/.claude/)
|
||||
const GLOBAL_SUBDIRS = ['workflows', 'scripts', 'templates'];
|
||||
@@ -268,7 +268,10 @@ async function performUpgrade(manifest: any, sourceDir: string, version: string)
|
||||
// Copy each directory
|
||||
for (const dir of availableDirs) {
|
||||
const srcPath = join(sourceDir, dir);
|
||||
const destPath = join(installPath, dir);
|
||||
|
||||
// .ccw always upgrades to global ~/.ccw/ regardless of mode
|
||||
const destBase = (mode === 'Path' && dir === '.ccw') ? homedir() : installPath;
|
||||
const destPath = join(destBase, dir);
|
||||
|
||||
// For Path mode on .claude, exclude global subdirs (they're already installed to global)
|
||||
const excludeDirs = (mode === 'Path' && dir === '.claude') ? GLOBAL_SUBDIRS : [];
|
||||
|
||||
Reference in New Issue
Block a user