mirror of
https://github.com/tiennm99/ccs.git
synced 2026-07-16 10:16:49 +00:00
Complete integration of CLIProxyAPI for zero-config OAuth profiles. New profiles: - ccs gemini: Gemini via OAuth - ccs chatgpt: ChatGPT via OAuth - ccs qwen: Qwen via OAuth Implementation: - Phase 1: Binary infrastructure (download-on-demand) - Phase 2: Proxy executor (spawn/kill pattern) - Phase 3: OAuth integration (browser-based auth) - Phase 4: Profile registration (routing + help text) - Phase 5: Diagnostics (doctor command + errors) Files added: - src/cliproxy/*.ts (binary-manager, platform-detector, executor, auth-handler, config-generator, types, index) Files modified: - src/ccs.ts (CLIProxy routing) - src/auth/profile-detector.ts (cliproxy profile type) - src/commands/help-command.ts (new profiles in help) - src/management/doctor.ts (CLIProxy health checks) - src/utils/error-manager.ts (OAuth/port/download errors) - CHANGELOG.md (v5.0.0 release notes) Tests: 42/42 passed
88 lines
2.3 KiB
JSON
88 lines
2.3 KiB
JSON
{
|
|
"name": "@kaitranntt/ccs",
|
|
"version": "5.0.0",
|
|
"description": "Claude Code Switch - Instant profile switching between Claude Sonnet 4.5 and GLM 4.6",
|
|
"keywords": [
|
|
"cli",
|
|
"claude",
|
|
"glm",
|
|
"ai",
|
|
"profile",
|
|
"switch"
|
|
],
|
|
"homepage": "https://github.com/kaitranntt/ccs",
|
|
"bugs": {
|
|
"url": "https://github.com/kaitranntt/ccs/issues"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://github.com/kaitranntt/ccs.git"
|
|
},
|
|
"license": "MIT",
|
|
"author": {
|
|
"name": "Tam Nhu Tran (Kai)",
|
|
"email": "kaitranntt@users.noreply.github.com"
|
|
},
|
|
"main": "dist/ccs.js",
|
|
"types": "dist/ccs.d.ts",
|
|
"bin": {
|
|
"ccs": "dist/ccs.js"
|
|
},
|
|
"files": [
|
|
"dist/",
|
|
"lib/",
|
|
"scripts/",
|
|
"config/",
|
|
".claude/",
|
|
"VERSION",
|
|
"README.md",
|
|
"LICENSE"
|
|
],
|
|
"engines": {
|
|
"node": ">=14.0.0",
|
|
"bun": ">=1.0.0"
|
|
},
|
|
"packageManager": "bun@1.2.21",
|
|
"os": [
|
|
"darwin",
|
|
"linux",
|
|
"win32"
|
|
],
|
|
"preferGlobal": true,
|
|
"scripts": {
|
|
"build": "tsc && node scripts/add-shebang.js",
|
|
"build:watch": "tsc --watch",
|
|
"prebuild": "rm -rf dist tsconfig.tsbuildinfo",
|
|
"typecheck": "tsc --noEmit",
|
|
"lint": "eslint src/",
|
|
"lint:fix": "eslint src/ --fix",
|
|
"format": "prettier --write src/",
|
|
"format:check": "prettier --check src/",
|
|
"validate": "bun run typecheck && bun run lint && bun run format:check && bun run test",
|
|
"test": "bun run build && bun run test:all",
|
|
"test:all": "bun run test:unit && bun run test:npm",
|
|
"test:unit": "mocha tests/shared/unit/**/*.test.js --timeout 5000",
|
|
"test:npm": "mocha tests/npm/**/*.test.js --timeout 10000",
|
|
"test:native": "bash tests/native/unix/edge-cases.sh",
|
|
"test:edge-cases": "bash tests/edge-cases.sh",
|
|
"prepublishOnly": "npm run validate && node scripts/sync-version.js",
|
|
"prepack": "npm run validate && node scripts/sync-version.js",
|
|
"prepare": "node scripts/check-executables.js",
|
|
"postinstall": "node scripts/postinstall.js"
|
|
},
|
|
"dependencies": {
|
|
"cli-table3": "^0.6.5",
|
|
"ora": "^9.0.0"
|
|
},
|
|
"devDependencies": {
|
|
"@types/node": "^20.19.25",
|
|
"@typescript-eslint/eslint-plugin": "^8.48.0",
|
|
"@typescript-eslint/parser": "^8.48.0",
|
|
"eslint": "^9.39.1",
|
|
"eslint-config-prettier": "^10.1.8",
|
|
"mocha": "^11.7.5",
|
|
"prettier": "^3.6.2",
|
|
"typescript": "5.3"
|
|
}
|
|
}
|