LinJun

LinJun

๐Ÿ–ฅ๏ธ ่ทจๅนณๅฐGUI็ฎก็†AI็ผ–็ ไปฃ็†๏ผˆClaudeใ€Geminiใ€Codexใ€Copilotใ€Kiro็ญ‰๏ผ‰

Stars: 154

Visit
 screenshot

LinJun is a native desktop application for managing CLIProxyAPIPlus, a local proxy server that powers AI coding agents. It helps manage multiple AI accounts, track quotas, and configure CLI tools across macOS, Windows, and Linux. The tool offers features like expanded provider support, quota and model visibility, provider-aware model filtering, large log performance, one-click agent configuration, live dashboard monitoring, smart routing, API key management, system tray integration, and multilingual support. It supports various AI providers and compatible CLI agents, and provides installation instructions, usage guidelines, screenshots, settings customization, architecture overview, tech stack details, token storage information, FAQs, contribution guidelines, and license details.

README:

้œ–ๅ›

LinJun Banner

Platform macOS Platform Windows Platform Linux Language TypeScript License MIT

ไธญๆ–‡ๆ–‡ๆกฃ

Cross-platform AI proxy management for Claude, Gemini, Codex, Copilot, Qwen, iFlow, Kiro, and more.

LinJun is a native desktop application for managing CLIProxyAPIPlus - a local proxy server that powers your AI coding agents. It helps you manage multiple AI accounts, track quotas, and configure CLI tools in one place across macOS, Windows, and Linux.

โœจ Features

  • ๐Ÿ”Œ Expanded Provider Support: Connect Claude, Gemini, Codex, Qwen, Antigravity, iFlow, GitHub Copilot, Kiro, Custom Provider, and AmpCode
  • ๐Ÿ“Š Quota + Model Visibility: Track account usage and open View All Models to see provider-scoped models from /v1/models?is_webui=true
  • ๐Ÿง  Provider-Aware Model Filtering: Quota model list is filtered by provider context (for example Codex/Copilot/Kiro-specific views)
  • โšก Large Log Performance: Virtualized log table and incremental polling keep the Logs page responsive for large datasets
  • ๐Ÿš€ One-Click Agent Configuration: Auto-detect and configure Claude Code, OpenCode, Gemini CLI, and more
  • ๐Ÿ“ˆ Live Dashboard: Monitor request traffic, token usage, and success rates
  • ๐Ÿ”€ Smart Routing: Round Robin and Fill First failover strategies
  • ๐Ÿ”‘ API Key Management: Generate and manage keys for your local proxy
  • ๐Ÿ–ฅ๏ธ System Tray Integration: Quick access to status from menu bar
  • ๐ŸŒ Multilingual: English and Simplified Chinese support

๐Ÿค– Supported Ecosystem

AI Providers

Provider Auth Method
Claude Code OAuth
Gemini CLI OAuth
OpenAI Codex OAuth
Qwen Code OAuth
Antigravity OAuth (Google)
iFlow OAuth
GitHub Copilot OAuth
Kiro OAuth
Custom Provider API Key
AmpCode API Key

Compatible CLI Agents

LinJun can automatically configure these tools to use your centralized proxy:

  • Claude Code
  • Codex CLI
  • Gemini CLI
  • OpenCode
  • Amp CLI
  • Droid CLI
  • iFlow CLI

๐Ÿ“ฅ Installation

Download

Download the latest release from GitHub Releases:

Platform Download
macOS (Apple Silicon) LinJun-x.x.x-arm64.dmg
macOS (Intel) LinJun-x.x.x-x64.dmg
Windows LinJun-x.x.x-x64.exe
Linux LinJun-x.x.x-x64.AppImage or .deb

Build from Source

Requirements:

  • Node.js 18+
  • Bun (recommended) or npm
  • Git
# Clone the repository
git clone https://github.com/wangdabaoqq/LinJun.git
cd LinJun

# Install dependencies
bun install

# Download CLIProxyAPIPlus binary
bun run download:binary

# Start development server
bun dev

Build for Production

bun run build:mac      # macOS (dmg, zip)
bun run build:win      # Windows (nsis)
bun run build:linux    # Linux (AppImage, deb)
bun run build:all      # All platforms

๐Ÿ“– Usage

1. Start the Server

Launch LinJun and click Start to initialize the local proxy server.

2. Connect Accounts

Go to Providers tab โ†’ Select a provider โ†’ Authenticate via OAuth or enter API key.

3. Configure Agents

Go to Agents tab โ†’ Select detected agent โ†’ Configure to use local proxy.

4. Monitor Usage

  • Dashboard: Overall health and traffic
  • Quota: Per-account usage breakdown and provider-scoped model catalog via View All Models
  • Logs: Raw request logs for debugging

๐Ÿ“ธ Screenshots

Dashboard Providers
Dashboard Providers
Quota Monitoring Settings
Quota Settings
Agents API Key
Agents API Key
Guide Logs
Guide Logs

โš™๏ธ Settings

  • Port: Change the proxy listening port (default: 8310)
  • Routing Strategy: Round Robin or Fill First
  • Auto-start: Launch proxy automatically on app startup
  • Notifications: Toggle alerts for quota warnings

๐Ÿ—๏ธ Architecture

LinJun/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ main/                    # Electron main process
โ”‚   โ”‚   โ”œโ”€โ”€ index.ts            # App entry point
โ”‚   โ”‚   โ”œโ”€โ”€ tray.ts             # System tray integration
โ”‚   โ”‚   โ”œโ”€โ”€ proxy/              # CLIProxyAPIPlus management
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ manager.ts      # Process lifecycle
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ api.ts          # Management API client
โ”‚   โ”‚   โ”œโ”€โ”€ ipc/                # IPC handlers
โ”‚   โ”‚   โ”œโ”€โ”€ quota/              # Provider quota services
โ”‚   โ”‚   โ”œโ”€โ”€ logging/            # Request logging
โ”‚   โ”‚   โ””โ”€โ”€ utils/              # CLI detection, storage
โ”‚   โ”œโ”€โ”€ preload/                # Context bridge
โ”‚   โ””โ”€โ”€ renderer/               # React frontend
โ”‚       โ”œโ”€โ”€ components/         # UI components
โ”‚       โ”œโ”€โ”€ stores/             # Zustand state
โ”‚       โ””โ”€โ”€ hooks/              # Custom hooks
โ”œโ”€โ”€ resources/                  # Static assets
โ””โ”€โ”€ scripts/                    # Build scripts

๐Ÿ”ง Tech Stack

Component Technology
Framework Electron 33+
Frontend React 18 + TypeScript
Styling Tailwind CSS
State Zustand
Build Vite + electron-vite
Packaging electron-builder

๐Ÿ“ Token Storage

Authentication tokens are stored in ~/.cli-proxy-api/ directory as JSON files:

  • codex-{email}-Plus.json
  • antigravity-{email}.json
  • kiro-google-{id}.json
  • etc.

โ“ FAQ

macOS: "App is damaged and can't be opened"

Due to macOS security mechanisms, apps downloaded outside the App Store may trigger this warning. Run the following command to fix it:

sudo xattr -rd com.apple.quarantine "/Applications/้œ–ๅ›.app"

๐Ÿค Contributing

  1. Fork the project
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit changes (git commit -m 'Add amazing feature')
  4. Push to branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

๐Ÿ“„ License

MIT License. See LICENSE for details.

๐Ÿ™ Acknowledgments


Star History Chart

For Tasks:

Click tags to check more tools for each tasks

For Jobs:

Alternative AI tools for LinJun

Similar Open Source Tools

For similar tasks

For similar jobs