Skip to content

Commit b3bb2da

Browse files
committed
docs: add README with screenshots
1 parent 244c534 commit b3bb2da

5 files changed

Lines changed: 184 additions & 0 deletions

README.md

Lines changed: 184 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,184 @@
1+
<div align="center">
2+
3+
# ProxyCast 🚀
4+
5+
**一款强大的桌面应用,将各种大模型客户端 API(Kiro Claude、Gemini CLI、通义千问等)统一转换为本地 OpenAI 兼容接口。**
6+
7+
[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
8+
[![Tauri](https://img.shields.io/badge/Tauri-2.0-blue.svg)](https://tauri.app/)
9+
[![React](https://img.shields.io/badge/React-18-61dafb.svg)](https://react.dev/)
10+
[![Rust](https://img.shields.io/badge/Rust-1.70+-orange.svg)](https://www.rust-lang.org/)
11+
12+
</div>
13+
14+
---
15+
16+
ProxyCast 是一款基于 Tauri 2.0 + React 18 + Rust 构建的跨平台桌面应用,能够将原本仅限客户端使用的免费大模型(如 Kiro Claude、Gemini CLI、通义千问)转换为标准 OpenAI 兼容接口,让 Cherry-Studio、NextChat、Cline 等工具可以自由调用 Claude Sonnet 4.5、Gemini 2.5 Flash、Qwen3 Coder Plus 等高级模型。
17+
18+
> **💡 与 AIClient-2-API 的区别**
19+
>
20+
> ProxyCast 是 [AIClient-2-API](https://github.com/justlovemaki/AIClient-2-API) 的桌面版本,提供更友好的图形界面和一键操作体验,无需命令行配置。
21+
22+
---
23+
24+
## ✨ 核心特性
25+
26+
### 🎯 多 Provider 统一管理
27+
- **Kiro Claude** - 通过 OAuth 免费使用 Claude Sonnet 4.5
28+
- **Gemini CLI** - 通过 OAuth 突破 Gemini 免费限制
29+
- **通义千问** - 通过 OAuth 使用 Qwen3 Coder Plus
30+
- **OpenAI 自定义** - 配置自定义 OpenAI 兼容 API
31+
- **Claude 自定义** - 配置自定义 Claude API
32+
33+
### 🖥️ 友好的图形界面
34+
- **Dashboard** - 服务状态监控、API 测试面板
35+
- **Provider 管理** - 一键加载凭证、Token 刷新、默认 Provider 切换
36+
- **设置页面** - 服务器配置、端口设置、API Key 管理
37+
- **日志查看** - 实时日志记录、操作追踪
38+
39+
### 🔄 智能凭证管理
40+
- 自动检测凭证文件变化(每 5 秒)
41+
- 一键读取本地 OAuth 凭证
42+
- Token 过期自动刷新
43+
- 环境变量导出(.env 格式)
44+
45+
### 🌐 完整 API 兼容
46+
- `/v1/chat/completions` - OpenAI Chat API
47+
- `/v1/models` - 模型列表
48+
- `/v1/messages` - Anthropic Messages API
49+
- `/v1/messages/count_tokens` - Token 计数
50+
51+
---
52+
53+
## 📸 界面截图
54+
55+
### Dashboard - 服务控制与 API 测试
56+
![Dashboard](docs/images/289cfb0d-63bb-4d8a-b1bf-a2f10bbaacdb.png)
57+
58+
### Provider 管理 - 凭证配置与切换
59+
![Providers](docs/images/80084116-b822-4aa3-821a-bcfb8864189a.png)
60+
61+
### 设置页面 - 服务器配置
62+
![Settings](docs/images/98e9b6a0-3c48-430e-9c88-220f11e9b94d.png)
63+
64+
### 日志查看 - 实时操作记录
65+
![Logs](docs/images/a60f1f5d-7196-4967-a334-274013dcd47c.png)
66+
67+
---
68+
69+
## 🚀 快速开始
70+
71+
### 下载安装
72+
73+
[Releases](https://github.com/aiclientproxy/proxycast/releases) 页面下载对应平台的安装包:
74+
75+
- **macOS (Apple Silicon)**: `ProxyCast_x.x.x_aarch64.dmg`
76+
- **Windows (x64)**: `ProxyCast_x.x.x_x64-setup.exe`
77+
78+
### 凭证文件位置
79+
80+
| Provider | 默认路径 | 说明 |
81+
|----------|---------|------|
82+
| **Kiro** | `~/.aws/sso/cache/kiro-auth-token.json` | Kiro OAuth Token |
83+
| **Gemini** | `~/.gemini/oauth_creds.json` | Gemini CLI OAuth |
84+
| **Qwen** | `~/.qwen/oauth_creds.json` | 通义千问 OAuth |
85+
86+
> **提示**: `~` 表示用户主目录(macOS: `/Users/用户名`,Windows: `C:\Users\用户名`
87+
88+
### 使用步骤
89+
90+
1. **启动应用** - 打开 ProxyCast
91+
2. **加载凭证** - 进入 Provider 管理页面,点击"一键读取凭证"
92+
3. **启动服务** - 在 Dashboard 点击"启动服务器"
93+
4. **配置客户端** - 在 Cherry-Studio、Cline 等工具中配置:
94+
```
95+
API Base URL: http://localhost:3001/v1
96+
API Key: proxycast-key
97+
```
98+
99+
---
100+
101+
## 🔧 API 使用示例
102+
103+
### OpenAI Chat Completions
104+
105+
```bash
106+
curl http://localhost:3001/v1/chat/completions \
107+
-H "Content-Type: application/json" \
108+
-H "Authorization: Bearer proxycast-key" \
109+
-d '{
110+
"model": "claude-sonnet-4-5-20250514",
111+
"messages": [
112+
{"role": "user", "content": "Hello!"}
113+
],
114+
"stream": true
115+
}'
116+
```
117+
118+
### Anthropic Messages API
119+
120+
```bash
121+
curl http://localhost:3001/v1/messages \
122+
-H "Content-Type: application/json" \
123+
-H "x-api-key: proxycast-key" \
124+
-H "anthropic-version: 2023-06-01" \
125+
-d '{
126+
"model": "claude-sonnet-4-5-20250514",
127+
"max_tokens": 1024,
128+
"messages": [
129+
{"role": "user", "content": "Hello!"}
130+
]
131+
}'
132+
```
133+
134+
---
135+
136+
## 🛠️ 开发构建
137+
138+
### 环境要求
139+
140+
- Node.js >= 20.0.0
141+
- Rust >= 1.70
142+
- pnpm 或 npm
143+
144+
### 本地开发
145+
146+
```bash
147+
# 安装依赖
148+
npm install
149+
150+
# 启动开发服务器
151+
npm run tauri dev
152+
```
153+
154+
### 构建发布
155+
156+
```bash
157+
# 构建生产版本
158+
npm run tauri build
159+
```
160+
161+
---
162+
163+
## 📄 开源协议
164+
165+
本项目采用 [GNU General Public License v3 (GPLv3)](https://www.gnu.org/licenses/gpl-3.0) 协议开源。
166+
167+
## 🙏 致谢
168+
169+
- [AIClient-2-API](https://github.com/justlovemaki/AIClient-2-API) - 核心逻辑参考
170+
- [Tauri](https://tauri.app/) - 跨平台桌面框架
171+
- [shadcn/ui](https://ui.shadcn.com/) - UI 组件库
172+
173+
---
174+
175+
## ⚠️ 免责声明
176+
177+
### 使用风险提示
178+
本项目(ProxyCast)仅供学习和研究使用。用户在使用本项目时需自行承担所有风险。作者不对因使用本项目而导致的任何直接、间接或后果性损失负责。
179+
180+
### 第三方服务责任声明
181+
本项目是一个 API 代理工具,不提供任何 AI 模型服务。所有 AI 模型服务均由各自的第三方提供商(如 Google、Anthropic、阿里云等)提供。用户在通过本项目访问这些服务时,应遵守各第三方服务的使用条款和政策。
182+
183+
### 数据隐私声明
184+
本项目在本地运行,不收集或上传任何用户数据。但用户在使用本项目时应保护好自己的 API 密钥和其他敏感信息。
113 KB
Loading
86.6 KB
Loading
47.5 KB
Loading
62.1 KB
Loading

0 commit comments

Comments
 (0)