README
ยถ
ccNexus (Claude Code Nexus)
โจ Features
- ๐ Automatic Endpoint Rotation - Seamlessly switches between endpoints on errors
- ๐ Multi-Provider Support - Use official Claude API and third-party providers
- ๐ Smart Retry - Retries on any non-200 response
- ๐ Real-time Statistics - Monitor requests, errors, and endpoint usage
- ๐ฐ Token Usage Tracking - Track input/output tokens for each endpoint
- ๐ฏ Endpoint Management - Enable/disable endpoints with toggle switches
- ๐ Secure API Key Display - Shows only last 4 characters of API keys
- ๐ฆ Smart Load Balancing - Distributes requests only to enabled endpoints
- ๐ฅ๏ธ Desktop GUI - Beautiful cross-platform interface built with Wails
- ๐ Single Binary - No dependencies, just download and run
- ๐ง Easy Configuration - Manage endpoints through GUI or config file
- ๐พ Persistent Config - Automatically saves configuration
- ๐ Local First - All data stays on your machine
๐ Quick Start
Download
Download the latest release for your platform:
- Windows:
ccNexus-windows-amd64.zip - macOS (Intel):
ccNexus-darwin-amd64.zip - macOS (Apple Silicon):
ccNexus-darwin-arm64.zip - Linux:
ccNexus-linux-amd64.tar.gz
Installation
Windows
- Extract the ZIP file
- Double-click
ccNexus.exe - The application will start with a default configuration
macOS
- Extract the ZIP file
- Move
ccNexus.appto Applications folder - Right-click and select "Open" (first time only)
- The application will start with a default configuration
Linux
tar -xzf ccNexus-linux-amd64.tar.gz
chmod +x ccNexus
./ccNexus
Configuration
- Add Endpoints: Click "Add Endpoint" button
- Fill in Details:
- Name: A friendly name (e.g., "Claude Official")
- API URL: The API server address (e.g.,
api.anthropic.com) - API Key: Your API key
- Save: Click "Save" to add the endpoint
Configure Claude Code
In Claude Code settings:
- API Base URL:
http://localhost:3000 - API Key: Any value (will be replaced by proxy)
๐ How It Works
Claude Code โ Proxy (localhost:3000) โ Endpoint #1 (non-200 response)
โ Endpoint #2 (success) โ
- Request Interception: Proxy receives all API requests
- Endpoint Selection: Uses current available endpoint
- Error Detection: Monitors response status codes
- Auto Retry: Switches endpoint and retries on non-200 responses
- Round Robin: Cycles through all endpoints
๐ What's New in v0.2.0
๐ Enhanced Security
- Masked API Keys: API keys now show only the last 4 characters (e.g.,
****ABCD) - Better protection when sharing screenshots or during presentations
๐ Advanced Statistics
- Per-Endpoint Request Tracking: See request count and error rate for each endpoint
- Token Usage Monitoring: Track input and output tokens consumed by each endpoint
- Real-time Updates: Statistics refresh every 5 seconds automatically
๐ฏ Endpoint Control
- Toggle Switches: Enable/disable endpoints with a single click
- Visual Status Indicators: Quickly identify active (โ ) and disabled (โ) endpoints
- Zero Downtime: Disable problematic endpoints without stopping the proxy
๐ก Usage Example
View detailed statistics for each endpoint:
๐ Requests: 1,234 | Errors: 5
๐ฏ Tokens: 45,678 (In: 12,345, Out: 33,333)
Disable expensive or rate-limited endpoints temporarily while keeping others active.
๐ง Configuration File
Configuration is stored at:
- Windows:
%USERPROFILE%\.ccNexus\config.json - macOS/Linux:
~/.ccNexus/config.json
Example:
{
"port": 3000,
"endpoints": [
{
"name": "Claude Official 1",
"apiUrl": "api.anthropic.com",
"apiKey": "sk-ant-api03-your-key-1",
"enabled": true
},
{
"name": "Third Party Provider",
"apiUrl": "api.example.com",
"apiKey": "your-key-2",
"enabled": true
}
]
}
๐ ๏ธ Development
Prerequisites
- Go 1.22+
- Node.js 18+
- Wails CLI v2
Setup
# Clone repository
git clone https://github.com/lich0821/ccNexus.git
cd ccNexus
# Install Wails
go install github.com/wailsapp/wails/v2/cmd/wails@latest
# Install dependencies
go mod download
cd frontend && npm install && cd ..
# Run in development mode
wails dev
Build
# Build for current platform
wails build
# Build for specific platform
wails build -platform windows/amd64
wails build -platform darwin/amd64
wails build -platform darwin/arm64
wails build -platform linux/amd64
๐ Project Structure
ccNexus/
โโโ main.go # Application entry point
โโโ app.go # Wails app logic
โโโ internal/
โ โโโ proxy/ # Proxy core logic
โ โ โโโ proxy.go # HTTP proxy with retry
โ โ โโโ stats.go # Statistics tracking
โ โโโ config/ # Configuration management
โ โโโ config.go # Config structure
โโโ frontend/ # Frontend UI
โ โโโ index.html
โ โโโ src/
โ โโโ main.js # UI logic
โ โโโ style.css # Styles
โโโ .github/workflows/
โโโ build.yml # CI/CD pipeline
โ FAQ
Q: Proxy won't start?
A: Check if port is in use:
# macOS/Linux
lsof -i :3000
# Windows
netstat -ano | findstr :3000
Q: Claude Code can't connect?
A: Verify:
- Proxy application is running
- Claude Code Base URL is
http://localhost:3000 - Firewall isn't blocking the connection
Q: Endpoint switching not working?
A: Check:
- Multiple endpoints are configured
- API keys are valid
- View application logs for switching behavior
Q: How to view detailed logs?
A:
- macOS: Run app from terminal to see logs
- Windows: Check log files in app directory
- Linux: Use
./ccNexus 2>&1 | tee ccNexus.log
๐ค Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Acknowledgments
๐ Support
- ๐ Report Bug
- ๐ก Request Feature
- ๐ฌ Discussions
Made with โค๏ธ by Chuck
Documentation
ยถ
There is no documentation for this package.
Click to show internal directories.
Click to hide internal directories.