refactor(branding): rename app to EasyCLIProxyAPI
This commit is contained in:
1 parent
cd9432fa73
commit
8b687f5fe0
16 files changed
+32
-37
No files matched your search
@@ -137,7 +137,7 @@ jobs:
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "stem=Easy_CLIProxyAPI-${version}-${{ matrix.display_os }}-${{ matrix.arch }}" >> "$GITHUB_OUTPUT"
|
||||
echo "stem=EasyCLIProxyAPI-${version}-${{ matrix.display_os }}-${{ matrix.arch }}" >> "$GITHUB_OUTPUT"
|
||||
- name: Install Linux dependencies
|
||||
if: matrix.os == 'linux'
|
||||
run: |
|
||||
@@ -223,7 +223,7 @@ jobs:
|
||||
fi
|
||||
|
||||
prerelease="$MANUAL_PRERELEASE"
|
||||
release_args=(--title "Easy_CLIProxyAPI $RELEASE_TAG" --generate-notes)
|
||||
release_args=(--title "EasyCLIProxyAPI $RELEASE_TAG" --generate-notes)
|
||||
if [[ "$GITHUB_REF_TYPE" == "tag" ]]; then
|
||||
release_args+=(--verify-tag)
|
||||
if [[ "$RELEASE_TAG" == *-* ]]; then
|
||||
|
||||
+3
-5
@@ -5,21 +5,19 @@
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<img src="src/assets/logo.jpg" width="112" alt="Easy_CLIProxyAPI Logo">
|
||||
<img src="src/assets/logo.jpg" width="112" alt="EasyCLIProxyAPI Logo">
|
||||
</p>
|
||||
|
||||
<h1 align="center">Easy_CLIProxyAPI</h1>
|
||||
<h1 align="center">EasyCLIProxyAPI</h1>
|
||||
|
||||
<p align="center">
|
||||
私たちの目標は、トークンを free(無料ではなく、自由という意味)にすることです。<br>
|
||||
</p>
|
||||
|
||||
> [!IMPORTANT]
|
||||
> このリポジトリは正式版です。より先進的で実験的な機能については、[lzt404/Easy_CLIProxyAPI](https://github.com/lzt404/Easy_CLIProxyAPI) をご覧ください。
|
||||
|
||||
## 概要
|
||||
|
||||
Easy_CLIProxyAPI は、[CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI) をベースにしたポータブルツールです。コア、OAuth アカウント、API 接続、モデルルーティング、認証ファイル、クォータ情報、使用履歴、エージェントクライアント設定をグラフィカルなインターフェースから管理できます。
|
||||
EasyCLIProxyAPI は、[CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI) をベースにしたポータブルツールです。コア、OAuth アカウント、API 接続、モデルルーティング、認証ファイル、クォータ情報、使用履歴、エージェントクライアント設定をグラフィカルなインターフェースから管理できます。
|
||||
|
||||
本アプリケーションは Tauri、React、Rust で構築されています。
|
||||
|
||||
|
||||
@@ -5,21 +5,19 @@
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<img src="src/assets/logo.jpg" width="112" alt="Easy_CLIProxyAPI Logo">
|
||||
<img src="src/assets/logo.jpg" width="112" alt="EasyCLIProxyAPI Logo">
|
||||
</p>
|
||||
|
||||
<h1 align="center">Easy_CLIProxyAPI</h1>
|
||||
<h1 align="center">EasyCLIProxyAPI</h1>
|
||||
|
||||
<p align="center">
|
||||
Our goal is to make tokens free—as in freedom.<br>
|
||||
</p>
|
||||
|
||||
> [!IMPORTANT]
|
||||
> This repository contains the official release. For more aggressive experimental features, visit [lzt404/Easy_CLIProxyAPI](https://github.com/lzt404/Easy_CLIProxyAPI).
|
||||
|
||||
## Overview
|
||||
|
||||
Easy_CLIProxyAPI is a portable tool built on [CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI). It provides a graphical interface for managing the core, OAuth accounts, API providers, model routing, authentication files, quota information, usage records, and agent client configurations.
|
||||
EasyCLIProxyAPI is a portable tool built on [CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI). It provides a graphical interface for managing the core, OAuth accounts, API providers, model routing, authentication files, quota information, usage records, and agent client configurations.
|
||||
|
||||
The application is built with Tauri, React, and Rust.
|
||||
|
||||
|
||||
+3
-5
@@ -5,21 +5,19 @@
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<img src="src/assets/logo.jpg" width="112" alt="Easy_CLIProxyAPI Logo">
|
||||
<img src="src/assets/logo.jpg" width="112" alt="EasyCLIProxyAPI Logo">
|
||||
</p>
|
||||
|
||||
<h1 align="center">Easy_CLIProxyAPI</h1>
|
||||
<h1 align="center">EasyCLIProxyAPI</h1>
|
||||
|
||||
<p align="center">
|
||||
我们的目标是实现 token free(free 在这里的意思是自由)。<br>
|
||||
</p>
|
||||
|
||||
> [!IMPORTANT]
|
||||
> 当前仓库为正式版本,如需更为激进的实验性功能,请前往 [lzt404/Easy_CLIProxyAPI](https://github.com/lzt404/Easy_CLIProxyAPI)。
|
||||
|
||||
## 项目简介
|
||||
|
||||
Easy_CLIProxyAPI 是基于 [CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI) 的便携工具,提供图形化界面管理内核、OAuth 账号、API 接入、模型路由、认证文件、配额查询、使用记录和智能体客户端配置。
|
||||
EasyCLIProxyAPI 是基于 [CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI) 的便携工具,提供图形化界面管理内核、OAuth 账号、API 接入、模型路由、认证文件、配额查询、使用记录和智能体客户端配置。
|
||||
|
||||
软件基于 Tauri、React 和 Rust 构建。
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ $ErrorActionPreference = 'Stop'
|
||||
$RootDir = $PSScriptRoot
|
||||
$AppBin = Join-Path $RootDir 'src-tauri\target\release\cpa-gui.exe'
|
||||
$BinDir = Join-Path $RootDir 'bin-work'
|
||||
$BinOut = Join-Path $BinDir 'Easy_CLIProxyAPI.exe'
|
||||
$BinOut = Join-Path $BinDir 'EasyCLIProxyAPI.exe'
|
||||
$PreparePortable = Join-Path $RootDir 'scripts\prepare-portable.mjs'
|
||||
|
||||
Set-Location -LiteralPath $RootDir
|
||||
|
||||
@@ -7,7 +7,7 @@ cd "$ROOT_DIR"
|
||||
BUILD_JOBS="${CARGO_BUILD_JOBS:-20}"
|
||||
APP_BIN="$ROOT_DIR/src-tauri/target/release/cpa-gui"
|
||||
BIN_DIR="$ROOT_DIR/bin-work"
|
||||
BIN_OUT="$BIN_DIR/Easy_CLIProxyAPI"
|
||||
BIN_OUT="$BIN_DIR/EasyCLIProxyAPI"
|
||||
|
||||
if ! command -v bun >/dev/null 2>&1; then
|
||||
echo "bun is not installed or not in PATH."
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Easy_CLIProxyAPI</title>
|
||||
<title>EasyCLIProxyAPI</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="root"></div>
|
||||
|
||||
@@ -6,7 +6,7 @@ $ErrorActionPreference = 'Stop'
|
||||
|
||||
$RootDir = $PSScriptRoot
|
||||
$BinDir = Join-Path $RootDir 'bin-work'
|
||||
$AppBin = Join-Path $BinDir 'Easy_CLIProxyAPI.exe'
|
||||
$AppBin = Join-Path $BinDir 'EasyCLIProxyAPI.exe'
|
||||
|
||||
if (-not (Test-Path -LiteralPath $AppBin -PathType Leaf)) {
|
||||
Write-Host "Executable not found: $AppBin"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
set -euo pipefail
|
||||
|
||||
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
APP_BIN="$ROOT_DIR/bin-work/Easy_CLIProxyAPI"
|
||||
APP_BIN="$ROOT_DIR/bin-work/EasyCLIProxyAPI"
|
||||
|
||||
if [ ! -x "$APP_BIN" ]; then
|
||||
echo "Executable not found: $APP_BIN"
|
||||
|
||||
@@ -53,7 +53,7 @@ if (existsSync(checksumsPath)) {
|
||||
}
|
||||
|
||||
await mkdir(output, { recursive: true });
|
||||
const outputBinary = join(output, targetOS === 'windows' ? 'Easy_CLIProxyAPI.exe' : 'Easy_CLIProxyAPI');
|
||||
const outputBinary = join(output, targetOS === 'windows' ? 'EasyCLIProxyAPI.exe' : 'EasyCLIProxyAPI');
|
||||
const legacyOutputBinary = join(output, targetOS === 'windows' ? 'cpa-gui.exe' : 'cpa-gui');
|
||||
await rm(legacyOutputBinary, { force: true });
|
||||
await copyFile(binary, outputBinary);
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"$schema": "../gen/schemas/desktop-schema.json",
|
||||
"identifier": "default",
|
||||
"description": "Default permissions for the main Easy_CLIProxyAPI window.",
|
||||
"description": "Default permissions for the main EasyCLIProxyAPI window.",
|
||||
"windows": ["main"],
|
||||
"permissions": ["core:event:allow-listen", "core:event:allow-unlisten"]
|
||||
}
|
||||
@@ -26,7 +26,8 @@ const RELEASE_PAGE_URL: &str = "https://github.com/router-for-me/CLIProxyAPI/rel
|
||||
const RELEASE_ATOM_URL: &str = "https://github.com/router-for-me/CLIProxyAPI/releases.atom";
|
||||
const RELEASE_DOWNLOAD_PREFIX: &str =
|
||||
"https://github.com/router-for-me/CLIProxyAPI/releases/download/";
|
||||
const APP_RELEASE_PAGE_URL: &str = "https://github.com/lzt404/Easy_CLIProxyAPI/releases/latest";
|
||||
const APP_RELEASE_PAGE_URL: &str =
|
||||
"https://github.com/router-for-me/EasyCLIProxyAPI/releases/latest";
|
||||
const CORE_INSTALL_PROGRESS_EVENT: &str = "core-install-progress";
|
||||
const CORE_STATUS_EVENT: &str = "core-status-changed";
|
||||
const CORE_METADATA_FILE: &str = "cpa-gui-meta.json";
|
||||
@@ -56,9 +57,9 @@ const USER_AGENT: &str = concat!(
|
||||
" (+https://github.com/router-for-me/CLIProxyAPI)"
|
||||
);
|
||||
const APP_USER_AGENT: &str = concat!(
|
||||
"Easy_CLIProxyAPI/",
|
||||
"EasyCLIProxyAPI/",
|
||||
env!("CARGO_PKG_VERSION"),
|
||||
" (+https://github.com/lzt404/Easy_CLIProxyAPI)"
|
||||
" (+https://github.com/router-for-me/EasyCLIProxyAPI)"
|
||||
);
|
||||
static CORE_CONFIG_FILE_LOCK: Mutex<()> = Mutex::new(());
|
||||
static AGENT_CONFIG_FILE_LOCK: Mutex<()> = Mutex::new(());
|
||||
@@ -823,7 +824,7 @@ struct GithubAsset {
|
||||
|
||||
#[tauri::command]
|
||||
fn health_check() -> &'static str {
|
||||
"Easy_CLIProxyAPI Rust backend is ready"
|
||||
"EasyCLIProxyAPI Rust backend is ready"
|
||||
}
|
||||
|
||||
#[tauri::command]
|
||||
@@ -2932,7 +2933,7 @@ fn build_claude_desktop_meta(existing: Option<&str>) -> Result<String, String> {
|
||||
});
|
||||
entries.push(serde_json::json!({
|
||||
"id": CLAUDE_DESKTOP_PROFILE_ID,
|
||||
"name": "Easy CLIProxyAPI"
|
||||
"name": "EasyCLIProxyAPI"
|
||||
}));
|
||||
root.insert(
|
||||
"appliedId".to_string(),
|
||||
@@ -2969,7 +2970,7 @@ fn build_codex_agent_config(
|
||||
.and_then(Item::as_table)
|
||||
.cloned()
|
||||
.unwrap_or_default();
|
||||
provider["name"] = value("Easy CLIProxyAPI");
|
||||
provider["name"] = value("EasyCLIProxyAPI");
|
||||
provider["base_url"] = value(base_url);
|
||||
provider["wire_api"] = value("responses");
|
||||
provider["experimental_bearer_token"] = value(api_key);
|
||||
@@ -3088,7 +3089,7 @@ fn build_opencode_agent_config(
|
||||
MANAGED_AGENT_PROVIDER_ID.to_string(),
|
||||
serde_json::json!({
|
||||
"npm": "@ai-sdk/openai-compatible",
|
||||
"name": "Easy CLIProxyAPI",
|
||||
"name": "EasyCLIProxyAPI",
|
||||
"options": {
|
||||
"baseURL": base_url,
|
||||
"apiKey": api_key
|
||||
@@ -5444,7 +5445,7 @@ fn configure_child_lifetime(command: &mut Command) {
|
||||
|
||||
if libc::getppid() != parent_process_id {
|
||||
return Err(io::Error::other(
|
||||
"Easy_CLIProxyAPI exited before the core process started",
|
||||
"EasyCLIProxyAPI exited before the core process started",
|
||||
));
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"$schema": "https://schema.tauri.app/config/2",
|
||||
"productName": "Easy_CLIProxyAPI",
|
||||
"productName": "EasyCLIProxyAPI",
|
||||
"version": "0.2.0",
|
||||
"identifier": "com.cpa.gui",
|
||||
"build": {
|
||||
@@ -13,7 +13,7 @@
|
||||
"windows": [
|
||||
{
|
||||
"label": "main",
|
||||
"title": "Easy_CLIProxyAPI",
|
||||
"title": "EasyCLIProxyAPI",
|
||||
"width": 1200,
|
||||
"height": 810,
|
||||
"minWidth": 900,
|
||||
|
||||
+1
-1
@@ -128,7 +128,7 @@ function AppContent() {
|
||||
<div className="sidebar-brand" title="CLI Proxy API GUI">
|
||||
<img src={appLogo} alt="" className="brand-mark brand-logo" />
|
||||
<div>
|
||||
<strong>Easy CLIProxyAPI</strong>
|
||||
<strong>EasyCLIProxyAPI</strong>
|
||||
<span>Desktop Console</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -11,7 +11,7 @@ export class AppErrorBoundary extends Component<Props, State> {
|
||||
}
|
||||
|
||||
componentDidCatch(error: Error, info: ErrorInfo) {
|
||||
console.error('Easy_CLIProxyAPI 渲染异常', error, info.componentStack);
|
||||
console.error('EasyCLIProxyAPI 渲染异常', error, info.componentStack);
|
||||
}
|
||||
|
||||
render() {
|
||||
|
||||
@@ -63,7 +63,7 @@ type AppUpdateInfo = {
|
||||
releaseUrl: string;
|
||||
};
|
||||
|
||||
const APP_RELEASE_URL = 'https://github.com/lzt404/Easy_CLIProxyAPI/releases/latest';
|
||||
const APP_RELEASE_URL = 'https://github.com/router-for-me/EasyCLIProxyAPI/releases/latest';
|
||||
|
||||
let latestAutoCheckStarted = false;
|
||||
let cachedLatest: CoreLatest | null = null;
|
||||
|
||||
Reference in new issue
Block a user