e0a5f57793
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.
106 lines
5.9 KiB
Markdown
106 lines
5.9 KiB
Markdown
<div align="center">
|
|
|
|
# BoosAPI Desktop
|
|
|
|
**English** | [简体中文](./README.zh-CN.md)
|
|
|
|
A local-first AI desktop client for the Boos ecosystem — multi-provider chat, AI agents, knowledge base, MCP, and a built-in API gateway, in one app.
|
|
|
|
[](https://github.com/Boos4721/boos-chat/releases)
|
|
[](#platform-support)
|
|
|
|
</div>
|
|
|
|
## What is BoosAPI Desktop
|
|
|
|
BoosAPI Desktop is a desktop AI workspace that runs on your own machine. It ships with **BoosAPI** (`https://api.boos.lat`) wired in as the default provider, so you can start chatting immediately, while staying free to connect any other OpenAI-compatible endpoint. Your conversations, keys, and files live locally.
|
|
|
|
## Features
|
|
|
|
### Chat & models
|
|
- **Multi-provider chat** — Connect BoosAPI, OpenAI, Claude, Gemini, DeepSeek, Qwen, and any OpenAI-compatible endpoint, with custom base URL, API path, headers, and proxy rules.
|
|
- **Provider onboarding** — Import provider profiles via `boosapi://` deep links and CC Switch config import, applied after your confirmation.
|
|
- **Model management** — Sync remote model lists, manage groups, test latency, and configure capability tags, context length, sampling defaults, reasoning profiles, and per-model `extra_body`.
|
|
- **Conversation workflow** — Streaming replies, reasoning blocks, message versions, conversation branching, title generation, long-conversation compression, and multi-model parallel answers.
|
|
|
|
### AI agent
|
|
- **Agent mode** — Let models read/edit files, run commands, and analyze code inside a controlled desktop workflow.
|
|
- **Permission control** — Choose standard review, auto-accept edits, or full-access mode, with working-directory sandbox checks.
|
|
- **Approval & cost panel** — Watch tool calls live, remember allow decisions, and track tokens and cost per agent session.
|
|
|
|
### Content rendering
|
|
- **Markdown & math** — Render Markdown, code highlighting, tables, task lists, and LaTeX inline during streaming.
|
|
- **Code, diagrams & artifacts** — Built-in Monaco code blocks, Mermaid, D2 diagrams, and an artifact panel for code, notes, reports, and previews.
|
|
- **HTML fragment rendering** — Safely preview model-generated HTML fragments with streaming-stability fixes.
|
|
|
|
### Search & knowledge
|
|
- **Web search** — Plug in Tavily, Zhipu WebSearch, Bocha, and more, with source citations and search-query generation.
|
|
- **Local knowledge base** — Index private documents with sqlite-vec, configure retrieval/rerank options, and inspect retrieval feedback.
|
|
- **Context management** — Attach files, search results, knowledge snippets, memory, and tool output to conversation context.
|
|
|
|
### Tools & extensions
|
|
- **MCP protocol** — Run Model Context Protocol servers over stdio, SSE, or StreamableHTTP transports.
|
|
- **Built-in tools** — Use built-in MCP tools like fetch and file search without installing separate servers.
|
|
- **Tool-loop limits** — Configure a max tool-call loop count and recover interrupted or stuck tool sessions.
|
|
|
|
### API gateway
|
|
- **Local gateway** — Expose OpenAI Chat Completions, OpenAI Responses, Claude-native, and Gemini-native APIs from the desktop app.
|
|
- **Access & observability** — Manage gateway keys, SSL/TLS certificates, request logs, and usage stats locally.
|
|
- **Client templates** — Ready-made config templates for Claude Code, Codex CLI, OpenCode, Gemini CLI, and custom clients.
|
|
|
|
### Data import & backup
|
|
- **Third-party import** — Import ChatGPT exports, Cherry Studio backups, and Kelivo backups, with preview stats, warnings, and duplicate handling.
|
|
- **Provider & file migration** — Cherry Studio / Kelivo import can optionally migrate linked providers, API keys, and file attachments.
|
|
- **Backup** — Back up and restore via a local directory, WebDAV, or S3-compatible storage.
|
|
|
|
### Desktop experience & security
|
|
- **Local encryption** — App state lives in `~/.boosapi/`, user files in `~/Documents/BoosAPI Desktop/`, and API keys are protected with AES-256 and a local master key.
|
|
- **Desktop integration** — Tray, always-on-top, global shortcuts, autostart, proxy settings, and update checks.
|
|
- **11 UI languages** — Switch between Simplified Chinese, Traditional Chinese, English, Japanese, Korean, French, German, Spanish, Russian, Hindi, and Arabic.
|
|
|
|
## Platform support
|
|
|
|
| Platform | Architecture |
|
|
|----------|--------------|
|
|
| macOS | Apple Silicon (arm64), Intel (x86_64) |
|
|
| Windows 10/11 | x86_64, arm64 |
|
|
| Linux | x86_64 (AppImage/deb/rpm), arm64 (AppImage/deb/rpm) |
|
|
|
|
## Quick start
|
|
|
|
Download the build for your platform from the [Releases](https://github.com/Boos4721/boos-chat/releases) page. On first launch, BoosAPI is preconfigured as the default provider — add your key in Settings and start chatting.
|
|
|
|
## Build from source
|
|
|
|
```bash
|
|
# Frontend deps
|
|
pnpm install
|
|
|
|
# Build the bundled renderer packages (first time only)
|
|
pnpm --dir libs/stream-monaco install && pnpm --dir libs/stream-monaco build
|
|
pnpm --dir libs/markstream-vue install && pnpm --dir libs/markstream-vue run build:parser
|
|
pnpm --dir libs/markstream-vue/packages/markstream-react build
|
|
|
|
# Run in dev / produce a bundle
|
|
pnpm tauri dev
|
|
pnpm tauri build
|
|
```
|
|
|
|
Requires Rust (stable), Node 20+, pnpm, and the Tauri Linux system dependencies (`webkit2gtk-4.1`, `libsoup-3.0`) on Linux.
|
|
|
|
## FAQ
|
|
|
|
### macOS says the app is "damaged" or "from an unidentified developer"
|
|
|
|
The app is not signed by Apple, so macOS may warn you. Remove the quarantine attribute:
|
|
|
|
```bash
|
|
sudo xattr -dr com.apple.quarantine "/Applications/BoosAPI Desktop.app"
|
|
```
|
|
|
|
Then open it from **System Settings → Privacy & Security** and click **Open Anyway** if prompted.
|
|
|
|
## License
|
|
|
|
BoosAPI Desktop is a fork of [AQBot](https://github.com/AQBot-Desktop/AQBot), used and relicensed with the author's permission. It bundles the MIT-licensed open-agent-sdk. See [LICENSE](LICENSE).
|