feat(desktop): embed BoosAPI Desktop client as a subproject
Vendor the rebranded BoosAPI Desktop client (Tauri + Vue) into metapi as a monorepo subdirectory under desktop/. Source only — node_modules, dist, Cargo target and the upstream .git history are excluded. desktop/ keeps its own independent Cargo workspace (desktop/src-tauri with crates/*); it is not part of the backend boosapi crate, so a `cargo check` at the metapi root still compiles only the backend. Build the desktop app from desktop/src-tauri per desktop/README.md. Note: app icons are still placeholder assets pending the final BoosAPI logo. The updater signing keys live outside the repo and are not included.
This commit is contained in:
@@ -0,0 +1,171 @@
|
||||
# API 게이트웨이
|
||||
|
||||
## API 게이트웨이란?
|
||||
|
||||
BoosApi에는 구성된 제공업체를 **OpenAI 호환**, **Claude 네이티브**, **Gemini 네이티브** 엔드포인트로 노출하는 내장 로컬 API 서버가 포함되어 있습니다. 이러한 프로토콜 중 하나를 사용하는 모든 도구나 클라이언트는 BoosApi을 백엔드로 사용할 수 있습니다 — 별도의 API 키나 릴레이 서비스가 필요 없습니다.
|
||||
|
||||
사용 사례:
|
||||
|
||||
- **Claude Code CLI**, **OpenAI Codex CLI**, **Gemini CLI**, **OpenCode**를 BoosApi을 통해 실행.
|
||||
- IDE 확장 프로그램을 단일 로컬 관리 엔드포인트에 연결.
|
||||
- 키당 속도 제한으로 하나의 제공업체 키 세트를 여러 도구에서 공유.
|
||||
|
||||
---
|
||||
|
||||
## 시작하기
|
||||
|
||||
1. **설정 → API 게이트웨이**를 엽니다(또는 <kbd>Cmd/Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>G</kbd>를 누릅니다).
|
||||
2. **시작**을 클릭하여 게이트웨이 서버를 시작합니다.
|
||||
3. 기본적으로 서버는 `127.0.0.1:8080`(HTTP)에서 수신합니다. **설정** 탭에서 수신 주소와 포트를 변경할 수 있습니다.
|
||||
|
||||
::: tip
|
||||
게이트웨이 설정에서 **자동 시작**을 활성화하면 BoosApi이 시작될 때 서버가 자동으로 시작됩니다.
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
## API 키 관리
|
||||
|
||||
게이트웨이는 제공업체 키와는 별도로 자체 API 키로 수신 요청을 인증합니다.
|
||||
|
||||
1. **API 키** 탭으로 이동합니다.
|
||||
2. **새 키 생성**을 클릭합니다.
|
||||
3. 각 키를 식별하기 위해 선택적으로 **설명**을 추가합니다(예: *Claude Code*, *VS Code*).
|
||||
4. 키를 복사합니다 — 한 번만 표시됩니다.
|
||||
|
||||
각 키에는 **접두사**, **생성 날짜**, **마지막 사용** 타임스탬프가 표시됩니다. 키는 언제든지 **활성화/비활성화** 또는 **삭제**할 수 있습니다.
|
||||
|
||||
::: warning
|
||||
게이트웨이 키를 다른 API 키처럼 취급하세요. 키를 가진 사람은 게이트웨이가 실행 중일 때 로컬 게이트웨이에 요청을 보낼 수 있습니다.
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
## SSL/TLS
|
||||
|
||||
게이트웨이는 HTTP 외에 HTTPS를 제공할 수 있습니다.
|
||||
|
||||
### 자동 생성 인증서
|
||||
|
||||
1. **설정** 탭을 엽니다.
|
||||
2. **SSL/TLS**를 활성화하고 **생성** 모드를 선택합니다.
|
||||
3. BoosApi이 다음에 자가 서명 인증서와 개인 키를 만듭니다:
|
||||
|
||||
```
|
||||
~/.boosapi/ssl/cert.pem
|
||||
~/.boosapi/ssl/key.pem
|
||||
```
|
||||
|
||||
4. **HTTPS 포트**를 설정합니다(기본값 `8443`).
|
||||
5. 선택적으로 **SSL 강제**를 활성화하여 모든 HTTP 요청을 HTTPS로 리디렉션합니다.
|
||||
|
||||
### 사용자 지정 인증서
|
||||
|
||||
**업로드** 모드를 선택하고 자체 인증서와 개인 키 파일의 경로를 제공합니다.
|
||||
|
||||
::: info
|
||||
개인 키는 Unix 시스템에서 파일 모드 `0600`으로 저장되어 다른 사용자가 읽을 수 없도록 합니다.
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
## 사용량 분석
|
||||
|
||||
**메트릭** 탭에는 게이트웨이 활동을 모니터링하는 대시보드가 제공됩니다:
|
||||
|
||||
| 보기 | 설명 |
|
||||
|------|------|
|
||||
| **API 키별** | 각 게이트웨이 키별 요청 볼륨 및 토큰 사용량 |
|
||||
| **제공업체별** | 각 업스트림 AI 제공업체로 라우팅된 요청 및 토큰 |
|
||||
| **일별** | 시간 경과에 따른 일별 사용 트렌드 |
|
||||
|
||||
이러한 대시보드를 사용하여 비용을 추적하고 이상을 발견하고 제공업체 간에 부하를 분산합니다.
|
||||
|
||||
---
|
||||
|
||||
## 요청 로그
|
||||
|
||||
**개요** 탭에는 다음 세부 정보가 포함된 최근 요청 로그가 표시됩니다:
|
||||
|
||||
- **타임스탬프**, **HTTP 메서드**, **경로**
|
||||
- **상태 코드** 및 **응답 시간**
|
||||
- 사용된 **제공업체** 및 **모델**
|
||||
- **토큰 수** (프롬프트 + 완성)
|
||||
|
||||
임의의 로그 항목을 클릭하여 전체 요청과 응답을 검사합니다. **로그 지우기** 버튼으로 로그 기록을 재설정합니다.
|
||||
|
||||
---
|
||||
|
||||
## 구성 템플릿
|
||||
|
||||
BoosApi에는 인기 있는 CLI 도구를 위한 기성 구성 스니펫이 제공됩니다. **템플릿** 탭으로 이동하여 도구를 선택하고 **복사**를 클릭하여 필요한 구성을 가져옵니다.
|
||||
|
||||
### Claude Code CLI
|
||||
|
||||
```bash
|
||||
claude config set --global apiUrl http://127.0.0.1:8080
|
||||
claude config set --global apiKey boosapi-xxxx
|
||||
```
|
||||
|
||||
### OpenAI Codex CLI
|
||||
|
||||
```bash
|
||||
export OPENAI_BASE_URL=http://127.0.0.1:8080/v1
|
||||
export OPENAI_API_KEY=boosapi-xxxx
|
||||
codex
|
||||
```
|
||||
|
||||
### OpenCode
|
||||
|
||||
OpenCode 구성에 추가합니다:
|
||||
|
||||
```json
|
||||
{
|
||||
"provider": "openai",
|
||||
"baseURL": "http://127.0.0.1:8080/v1",
|
||||
"apiKey": "boosapi-xxxx"
|
||||
}
|
||||
```
|
||||
|
||||
### Gemini CLI
|
||||
|
||||
```bash
|
||||
export GEMINI_API_BASE=http://127.0.0.1:8080
|
||||
export GEMINI_API_KEY=boosapi-xxxx
|
||||
gemini
|
||||
```
|
||||
|
||||
### 사용자 지정 클라이언트
|
||||
|
||||
OpenAI 호환 Base URL을 허용하는 모든 도구는 게이트웨이에 연결할 수 있습니다:
|
||||
|
||||
```
|
||||
Base URL: http://127.0.0.1:8080/v1
|
||||
API Key: boosapi-xxxx
|
||||
```
|
||||
|
||||
`boosapi-xxxx`를 **API 키** 탭에서 생성한 키로 교체합니다. SSL이 활성화된 경우 `https://`와 포트 `8443`(또는 구성된 HTTPS 포트)을 사용합니다.
|
||||
|
||||
---
|
||||
|
||||
## 외부 도구 연결
|
||||
|
||||
다음은 OpenAI 호환 클라이언트를 연결하기 위한 일반적인 패턴입니다:
|
||||
|
||||
1. BoosApi에서 **게이트웨이 API 키를 생성**합니다.
|
||||
2. 도구의 구성에서 **Base URL**을 `http://127.0.0.1:8080/v1`(또는 HTTPS 등가)로 설정합니다.
|
||||
3. **API 키**를 생성한 게이트웨이 키로 설정합니다.
|
||||
4. BoosApi 제공업체 중 하나에 구성한 **모델을 선택**합니다.
|
||||
5. 도구를 사용하기 시작합니다 — 모든 요청은 BoosApi을 통해 업스트림 제공업체로 라우팅됩니다.
|
||||
|
||||
::: tip
|
||||
도구가 특정 API 형식(예: Claude 또는 Gemini 네이티브)을 필요로 하는 경우 BoosApi은 요청 형식을 자동으로 감지하여 올바른 제공업체로 라우팅합니다. 형식별로 별도의 엔드포인트를 구성할 필요가 없습니다.
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
## 다음 단계
|
||||
|
||||
- [빠른 시작](./getting-started) — 빠른 시작 가이드로 돌아가기
|
||||
- [제공업체 설정](./providers) — 게이트웨이가 라우팅하는 업스트림 제공업체 추가
|
||||
- [MCP 서버](./mcp) — AI 도구 호출을 위한 외부 도구 연결
|
||||
Reference in New Issue
Block a user