A modern, cross-platform proxy debugging tool for developers.
Capture, inspect, and manipulate HTTP / HTTPS / WebSocket traffic with a polished Material Design desktop experience.
The three-pane session workspace — domain-grouped traffic explorer on the left, request/response inspector with JSON syntax highlighting on the right.
The same three-pane session workspace in the light theme — request/response inspector with query parameters and JSON syntax highlighting.
Aggregate analytics dashboard with overview cards, per-host breakdown table, and status code / method distributions.
- 🔍 Full protocol support — HTTP, HTTPS (MITM decryption), and WebSocket
- 📱 Mobile debugging — capture traffic from iOS, Android, and HarmonyOS devices over Wi-Fi
- 🌐 System proxy takeover — automatic system proxy configuration on all platforms
- 📋 Rich session view — headers, body, timing, transfer stats, and JSON highlighting
- ✏️ Rewrite Rules — modify requests and responses on the fly
- 🗺️ Map Local / Map Remote — redirect traffic to local files or different servers
- 🌐 DNS Mapping — override DNS resolution for testing
- 📜 Script Rules — JavaScript-powered request/response interception (QuickJS runtime)
- ⏸️ Breakpoints — intercept, inspect, modify, mock, or drop requests at request/response stage
- 🐌 Throttling — simulate slow networks with configurable profiles and per-rule targeting
- 📬 Compose & Repeat — craft and resend requests with full editing
- 📂 Collections — save, organize, and batch-execute requests with environments
- 🔀 Session Compare — diff two sessions to spot behavioral changes
- 📊 Insights — aggregate traffic analytics
- 🔐 Certificate Center — root CA generation, trust management, and QR-code mobile setup
- 🎨 Material Design — clean, modern UI with light / dark / system themes
- 🌍 Bilingual — English & 简体中文, follows your system language
- ⚡ Fast & Native — Rust core with Tauri 2 shell, not another Electron app
| Platform | Status |
|---|---|
| 🪟 Windows | ✅ Supported |
| 🍎 macOS | ✅ Supported |
| 🐧 Linux | ✅ Supported |
Pre-built binaries are available on the GitHub Releases page.
Note: Builds are currently unsigned. On macOS, a browser-downloaded app is flagged by Gatekeeper as "damaged and can't be opened" — and on recent macOS the usual right-click → Open shortcut does not bypass this. After dragging
AIProxy.appto/Applications, clear the quarantine attribute, then open normally:xattr -cr /Applications/AIProxy.app(Adjust the path if the app lives elsewhere, e.g.
~/Downloads/AIProxy.app.) On Windows, SmartScreen may show a warning — click "More info" → "Run anyway".
# Clone the repository
git clone https://github.com/small-dream/AIProxy.git
cd AIProxy
# Install dependencies
pnpm install
# One-time system setup (installs Tauri prerequisites):
# macOS: bash scripts/setup/setup-macos.sh
# Linux: bash scripts/setup/setup-linux.sh
# Windows: powershell -ExecutionPolicy Bypass -File .\scripts\setup\setup-windows.ps1# Start the desktop app in development mode
pnpm desktop:run # auto-detects platform
# Or explicitly:
pnpm desktop:run:macos
pnpm desktop:run:windows
pnpm desktop:run:linux# Build the frontend
pnpm build
# Create a distributable bundle (.dmg / .msi / .AppImage, etc.)
pnpm desktop:bundle:macos
pnpm desktop:bundle:windows
pnpm desktop:bundle:linuxapps/desktop/ Tauri 2 + React 19 desktop application
src/ Frontend source (pages, features, components, i18n)
src-tauri/ Rust Tauri shell + proxy integration
crates/ Rust core modules
proxy-core/ Proxy engine (HTTP/HTTPS/WS capture, MITM)
rule-engine/ Rewrite / Map / Script rule execution
tls-manager/ Certificate authority & TLS management
db/ SQLite persistence layer
packages/ Shared TypeScript packages
shared-types/ Frontend ↔ backend contracts
ui-tokens/ Design tokens
docs/ Architecture & design documents
scripts/ Setup, build, and release scripts
pnpm lint # ESLint across the workspace
pnpm typecheck # TypeScript type checking
pnpm test # Frontend tests (Vitest)
cargo fmt --all # Format Rust code
cargo clippy --workspace -- -D warnings # Lint Rust code
cargo test --workspace # Rust tests- Product Requirements (PRD)
- Architecture
- API Specification
- UI Guidelines
- Engineering Guidelines
- Build, Run & Package Guide
- Release Guide
- Architecture Decision Records (ADRs)
Bilingual guides are available within the app's Docs page, covering DNS mapping, throttling, WebSocket inspection, script rules, and collections.
AIProxy ships with full bilingual support:
- English and 简体中文
- Automatically follows your system language
- Manually switchable in Settings → Appearance
The frontend uses a custom type-safe i18n system (no external library) with compile-time key validation. The Rust layer uses rust-i18n for native menu strings. See ADR-001 for the design rationale.
Contributions are welcome! 🎉
Please read our Contributing Guide to get started. By participating, you are expected to uphold our Code of Conduct.
Check out issues labeled good first issue for beginner-friendly tasks.
Found a security vulnerability? Please see our Security Policy for responsible disclosure instructions. Do not open a public issue for security vulnerabilities.
See the 6-month roadmap for planned features and direction.
| Layer | Technology |
|---|---|
| Shell | Tauri 2 |
| Frontend | React 19, TypeScript, Vite 8 |
| UI | MUI 9 (Material UI), Emotion |
| State | Zustand, TanStack Query |
| Routing | React Router 7 |
| Core | Rust 2021 |
| i18n | Custom type-safe (frontend), rust-i18n (Rust) |
MIT © 2024-2026 small-dream
Built with these outstanding open-source projects: Tauri, React, Rust, MUI, and many more.


