diff --git a/README.md b/README.md index 3302a2e5..22653876 100644 --- a/README.md +++ b/README.md @@ -89,7 +89,7 @@ The dashboard provides visual management for all account types: | **Claude** | Subscription | `ccs` | Default, strategic planning | | **Gemini** | OAuth | `ccs gemini` | Zero-config, fast iteration | | **Codex** | OAuth | `ccs codex` | Code generation | -| **Copilot** | OAuth | `ccs copilot` | GitHub Copilot models | +| **Copilot** | OAuth | `ccs copilot` or `ccs ghcp` | GitHub Copilot models | | **Kiro** | OAuth | `ccs kiro` | AWS CodeWhisperer (Claude-powered) | | **Antigravity** | OAuth | `ccs agy` | Alternative routing | | **OpenRouter** | API Key | `ccs openrouter` | 300+ models, unified API | @@ -118,8 +118,11 @@ The dashboard provides visual management for all account types: ```bash ccs # Default Claude session -ccs agy # Antigravity (OAuth) ccs gemini # Gemini (OAuth) +ccs codex # OpenAI Codex (OAuth) +ccs kiro # Kiro/AWS CodeWhisperer (OAuth) +ccs ghcp # GitHub Copilot (OAuth device flow) +ccs agy # Antigravity (OAuth) ccs glm # GLM (API key) ``` diff --git a/docs/codebase-summary.md b/docs/codebase-summary.md index 1f07e61d..f8b4ad44 100644 --- a/docs/codebase-summary.md +++ b/docs/codebase-summary.md @@ -1,8 +1,8 @@ # CCS Codebase Summary -Last Updated: 2025-12-21 +Last Updated: 2025-12-22 -Comprehensive overview of the modularized CCS codebase structure following the Phase 9 modularization effort (Settings, Analytics, Auth Monitor splits + Test Infrastructure) and v7.1 Remote CLIProxy feature. +Comprehensive overview of the modularized CCS codebase structure following the Phase 9 modularization effort (Settings, Analytics, Auth Monitor splits + Test Infrastructure), v7.1 Remote CLIProxy feature, and v7.2 Kiro + GitHub Copilot (ghcp) OAuth providers. ## Repository Structure @@ -163,7 +163,7 @@ src/ | Core | `commands/`, `errors/` | CLI commands, error handling | | Auth | `auth/`, `cliproxy/auth/` | Authentication across providers | | Config | `config/`, `types/` | Configuration & type definitions | -| Providers | `cliproxy/`, `copilot/`, `glmt/` | Provider integrations | +| Providers | `cliproxy/`, `copilot/`, `glmt/` | Provider integrations (7 CLIProxy providers: gemini, codex, agy, qwen, iflow, kiro, ghcp) | | Remote Proxy | `cliproxy/remote-*.ts`, `proxy-config-resolver.ts` | Remote CLIProxy support (v7.1) | | Services | `web-server/`, `api/` | HTTP server, API services | | Utilities | `utils/`, `management/` | Helpers, diagnostics | diff --git a/docs/project-overview-pdr.md b/docs/project-overview-pdr.md index 86e36719..f1f7db05 100644 --- a/docs/project-overview-pdr.md +++ b/docs/project-overview-pdr.md @@ -1,6 +1,6 @@ # CCS Product Development Requirements (PDR) -Last Updated: 2025-12-21 +Last Updated: 2025-12-22 ## Product Overview @@ -10,7 +10,7 @@ Last Updated: 2025-12-21 **Description**: CLI wrapper enabling seamless switching between multiple Claude accounts and alternative AI providers (GLM, Gemini, Codex, OpenRouter) with a React-based dashboard for configuration management. Supports both local and remote CLIProxyAPI instances. -**Current Version**: v7.1.x (Remote CLIProxy routing, OpenRouter integration) +**Current Version**: v7.2.x (Kiro + GitHub Copilot OAuth providers) --- @@ -31,7 +31,7 @@ Developers using Claude Code face these challenges: CCS provides: 1. **Multi-Account Claude**: Isolated instances via `CLAUDE_CONFIG_DIR` -2. **OAuth Providers**: Zero-config Gemini, Codex, Antigravity, Copilot integration +2. **OAuth Providers**: Zero-config Gemini, Codex, Antigravity, Copilot, Kiro (ghcp) integration 3. **API Profiles**: GLM, Kimi, OpenRouter, any Anthropic-compatible API 4. **Visual Dashboard**: React SPA for configuration management 5. **Automatic WebSearch**: MCP fallback for third-party providers @@ -64,8 +64,8 @@ CCS provides: - Share commands, skills, agents across accounts ### FR-003: OAuth Provider Integration -- Support Gemini, Codex, Antigravity, Copilot OAuth flows -- Browser-based authentication +- Support Gemini, Codex, Antigravity, Copilot, Kiro (ghcp) OAuth flows +- Browser-based authentication (Authorization Code flow for most, Device Code for ghcp) - Token caching and refresh ### FR-004: API Profile Management @@ -210,11 +210,16 @@ CCS provides: - [x] Fallback to local when remote unreachable - [x] Protocol-based default ports (HTTPS:443, HTTP:8317) +### v7.2 Release (Complete) +- [x] Kiro (AWS) OAuth provider support via CLIProxyAPIPlus +- [x] GitHub Copilot (ghcp) OAuth provider via Device Code flow +- [x] Authorization Code flow for Kiro (port 9876) +- [x] Device Code flow for ghcp (no local port needed) + ### v8.0 Release (Planned - Q1 2026) - [ ] Multiple CLIProxyAPI instances (load balancing, failover) - [ ] Native git worktree support - [ ] Critical bug fixes (#158, #155, #124) -- [ ] Kiro auth support (#157) ### v9.0 Release (Future - Q2 2026) - [ ] Team collaboration features @@ -230,6 +235,8 @@ CCS provides: - Anthropic Claude API - Google Gemini API - GitHub Codex/Copilot API +- GitHub Copilot (ghcp - Device Code OAuth) +- AWS Kiro (Authorization Code OAuth) - Z.AI GLM API - OpenRouter API diff --git a/docs/project-roadmap.md b/docs/project-roadmap.md index 72f095eb..832a16a3 100644 --- a/docs/project-roadmap.md +++ b/docs/project-roadmap.md @@ -1,6 +1,6 @@ # CCS Project Roadmap -Last Updated: 2025-12-21 +Last Updated: 2025-12-22 Forward-looking roadmap documenting current priorities, GitHub issues, and future feature plans. @@ -22,6 +22,7 @@ All major modularization work is complete. The codebase evolved from monolithic | 8 | Auth Monitor | `monitoring/auth-monitor/` (465->8 files) | | 9 | Test Infrastructure | 99 UI tests + 539 CLI tests, 90% coverage | | 10 | Remote CLIProxy | `proxy-config-resolver.ts`, `remote-proxy-client.ts` | +| 11 | Kiro + ghcp Providers | OAuth support via CLIProxyAPIPlus (v7.2) | **Metrics Achieved**: - Files >500 lines: 12 -> 5 (-58%) @@ -62,7 +63,7 @@ All major modularization work is complete. The codebase evolved from monolithic | Issue | Title | Type | Status | |-------|-------|------|--------| | #142 | Configure with available CLIProxyAPI | enhancement | **COMPLETE** (v7.1) | -| #157 | Support for Kiro auth from CLIProxyAPIPlus | enhancement | - | +| #157 | Support for Kiro auth from CLIProxyAPIPlus | enhancement | **COMPLETE** (v7.2) | | #123 | Add More Models | enhancement | Ongoing | | #114 | OpenCode Zen Free model + Auto Rotation API Key | enhancement | - | @@ -150,7 +151,8 @@ worktrees: ### Priority 5: Authentication Enhancements - **#158**: Fix AGY OAuth flow -- **#157**: Add Kiro auth support from CLIProxyAPIPlus +- **#157**: ~~Add Kiro auth support from CLIProxyAPIPlus~~ **COMPLETE** (v7.2) +- GitHub Copilot (ghcp) Device Code flow **COMPLETE** (v7.2) --- @@ -160,6 +162,7 @@ worktrees: |-----------|--------|--------| | Modularization (Phases 1-9) | COMPLETE | - | | Remote CLIProxy Support (#142) | COMPLETE | v7.1 | +| Kiro + GitHub Copilot OAuth (#157) | COMPLETE | v7.2 | | Critical Bug Fixes (#158, #155, #124) | PLANNED | Q1 2026 | | Multiple CLIProxyAPI Instances | PLANNED | Q1 2026 | | Git Worktree Support | PLANNED | Q1 2026 | diff --git a/docs/system-architecture.md b/docs/system-architecture.md index 91589e57..32d1e091 100644 --- a/docs/system-architecture.md +++ b/docs/system-architecture.md @@ -1,6 +1,6 @@ # CCS System Architecture -Last Updated: 2025-12-21 +Last Updated: 2025-12-22 High-level architecture documentation for the CCS (Claude Code Switch) system. @@ -8,12 +8,12 @@ High-level architecture documentation for the CCS (Claude Code Switch) system. ## System Overview -CCS is a CLI wrapper that enables seamless switching between multiple Claude accounts and alternative AI providers (GLM, Gemini, Codex). It consists of two main components: +CCS is a CLI wrapper that enables seamless switching between multiple Claude accounts and alternative AI providers (GLM, Gemini, Codex, Kiro, GitHub Copilot). It consists of two main components: 1. **CLI Application** (`src/`) - Node.js TypeScript CLI 2. **Dashboard UI** (`ui/`) - React web application served by Express -CCS v7.1 adds support for both **local** and **remote** CLIProxyAPI instances. +CCS v7.2 adds Kiro (AWS) and GitHub Copilot (ghcp) OAuth providers via CLIProxyAPIPlus. ``` +===========================================================================+ @@ -84,8 +84,9 @@ CCS v7.1 adds support for both **local** and **remote** CLIProxyAPI instances. Profile Resolution | v - 1. CLIProxy Hardcoded ----+---> gemini, codex, agy + 1. CLIProxy Hardcoded ----+---> gemini, codex, agy, kiro, ghcp (OAuth-based) | Zero-config OAuth providers + | (kiro: Auth Code, ghcp: Device Code) | 2. CLIProxy Variants -----+---> config.cliproxy section (User-defined) | Custom provider configurations @@ -296,11 +297,21 @@ CCS v7.1 adds support for both **local** and **remote** CLIProxyAPI instances. | ANTHROPIC_BASE_URL = localhost:XXXX v +------------------+ - | CLIProxyAPI | Local proxy binary + | CLIProxyAPI | Local proxy binary (CLIProxyAPIPlus for kiro/ghcp) | (binary) | +------------------+ | - +---> OAuth Authentication (Gemini, Codex, AGY) + +---> OAuth Authentication + | | + | +---> Authorization Code Flow (port-based) + | | - Gemini, Codex, Antigravity, Kiro (port 9876) + | | - Opens browser for user auth + | | - Callback to localhost:PORT + | | + | +---> Device Code Flow (no port needed) + | - GitHub Copilot (ghcp) + | - User enters code at github.com/login/device + | - Polls for token completion | | | v | +------------------+ @@ -317,6 +328,8 @@ CCS v7.1 adds support for both **local** and **remote** CLIProxyAPI instances. +---> Google (Gemini) +---> GitHub (Codex) +---> Antigravity + +---> AWS Kiro (Claude-powered) + +---> GitHub Copilot (ghcp) +---> OpenAI-compatible endpoints ``` @@ -497,10 +510,10 @@ CCS v7.1 adds support for both **local** and **remote** CLIProxyAPI instances. | Authentication Flow | +===========================================================================+ - OAuth Providers (Gemini, Codex, AGY) - ----------------------------------- + OAuth Providers - Authorization Code Flow (Gemini, Codex, AGY, Kiro) + -------------------------------------------------------------------- - 1. User runs: ccs gemini + 1. User runs: ccs gemini (or ccs kiro) | v 2. Check token cache (~/.ccs/cliproxy/auth/) @@ -510,8 +523,8 @@ CCS v7.1 adds support for both **local** and **remote** CLIProxyAPI instances. +---> [No/Expired token] | v - 3. Open browser for OAuth - | + 3. Open browser for OAuth (localhost:PORT callback) + | - Kiro uses port 9876 v 4. Callback with auth code | @@ -522,6 +535,31 @@ CCS v7.1 adds support for both **local** and **remote** CLIProxyAPI instances. 6. Cache token locally + OAuth Providers - Device Code Flow (GitHub Copilot/ghcp) + -------------------------------------------------------- + + 1. User runs: ccs ghcp + | + v + 2. Check token cache (~/.ccs/cliproxy/auth/) + | + +---> [Valid token] ---> Use cached token + | + +---> [No/Expired token] + | + v + 3. Request device code from GitHub + | + v + 4. Display user code + verification URL + | "Enter code XXXX-XXXX at github.com/login/device" + v + 5. Poll for token (user completes auth in browser) + | + v + 6. Receive and cache token locally + + API Key Profiles (GLM, Kimi) ----------------------------