cc-model-switcher
Version:
A simple CLI tool to switch Claude Code AI models easily
53 lines (44 loc) • 1.42 kB
JavaScript
const { spawn } = require('child_process');
const path = require('path');
/**
* 测试claude命令的spawn调用
* 功能:模拟cc_switch.js中的实际调用方式
* 参数:无
* 返回值:无
* 创建日期:2025-01-14
*/
function testClaudeSpawn() {
const workDir = 'E:\\GIT_CODE\\image-get\\md2xhs';
const normalizedPath = path.resolve(workDir);
console.log('原始路径:', workDir);
console.log('规范化路径:', normalizedPath);
// 模拟环境变量设置
const env = {
...process.env,
"ANTHROPIC_BASE_URL": "https://api.moonshot.cn/anthropic/",
"ANTHROPIC_AUTH_TOKEN": "YOUR_KIMI_API_KEY_HERE",
"API_TIMEOUT_MS": "600000",
"ANTHROPIC_MODEL": "moonshot-v1-8k",
"ANTHROPIC_SMALL_FAST_MODEL": "moonshot-v1-8k"
};
// 完全模拟cc_switch.js中的调用方式
const psCommand = `Set-Location -Path '${normalizedPath}'; claude`;
console.log('PowerShell命令:', psCommand);
const claude = spawn('powershell.exe', ['-Command', psCommand], {
stdio: 'inherit',
env: env,
shell: false
});
claude.on('error', (error) => {
console.error('Claude启动错误:', error.message);
});
claude.on('close', (code) => {
console.log('Claude退出码:', code);
});
// 5秒后强制退出
setTimeout(() => {
console.log('\n强制退出测试...');
claude.kill('SIGTERM');
}, 5000);
}
testClaudeSpawn();