297 lines
14 KiB
Markdown
297 lines
14 KiB
Markdown

|
||
|
||
<div align="center">
|
||
|
||
<a href="https://github.com/AstrBotDevs/AstrBot/blob/master/README.md">English</a> |
|
||
<a href="https://github.com/AstrBotDevs/AstrBot/blob/master/README_zh.md">简体中文</a> |
|
||
<a href="https://github.com/AstrBotDevs/AstrBot/blob/master/README_ja.md">日本語</a> |
|
||
<a href="https://github.com/AstrBotDevs/AstrBot/blob/master/README_fr.md">Français</a> |
|
||
<a href="https://github.com/AstrBotDevs/AstrBot/blob/master/README_ru.md">Русский</a>
|
||
|
||
<div>
|
||
<a href="https://trendshift.io/repositories/12875" target="_blank"><img src="https://trendshift.io/api/badge/repositories/12875" alt="Soulter%2FAstrBot | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a>
|
||
<a href="https://hellogithub.com/repository/AstrBotDevs/AstrBot" target="_blank"><img src="https://api.hellogithub.com/v1/widgets/recommend.svg?rid=d127d50cd5e54c5382328acc3bb25483&claim_uid=ZO9by7qCXgSd6Lp&t=2" alt="Featured|HelloGitHub" style="width: 250px; height: 54px;" width="250" height="54" /></a>
|
||
</div>
|
||
|
||
<br>
|
||
|
||
<div>
|
||
<img src="https://img.shields.io/github/v/release/AstrBotDevs/AstrBot?color=76bad9" href="https://github.com/AstrBotDevs/AstrBot/releases/latest">
|
||
<img src="https://img.shields.io/badge/python-3.10+-blue.svg" alt="python">
|
||
<img src="https://deepwiki.com/badge.svg" href="https://deepwiki.com/AstrBotDevs/AstrBot">
|
||
<a href="https://zread.ai/AstrBotDevs/AstrBot" target="_blank"><img src="https://img.shields.io/badge/Ask_Zread-_.svg?style=flat&color=00b0aa&labelColor=000000&logo=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTQuOTYxNTYgMS42MDAxSDIuMjQxNTZDMS44ODgxIDEuNjAwMSAxLjYwMTU2IDEuODg2NjQgMS42MDE1NiAyLjI0MDFWNC45NjAxQzEuNjAxNTYgNS4zMTM1NiAxLjg4ODEgNS42MDAxIDIuMjQxNTYgNS42MDAxSDQuOTYxNTZDNS4zMTUwMiA1LjYwMDEgNS42MDE1NiA1LjMxMzU2IDUuNjAxNTYgNC45NjAxVjIuMjQwMUM1LjYwMTU2IDEuODg2NjQgNS4zMTUwMiAxLjYwMDEgNC45NjE1NiAxLjYwMDFaIiBmaWxsPSIjZmZmIi8%2BCjxwYXRoIGQ9Ik00Ljk2MTU2IDEwLjM5OTlIMi4yNDE1NkMxLjg4ODEgMTAuMzk5OSAxLjYwMTU2IDEwLjY4NjQgMS42MDE1NiAxMS4wMzk5VjEzLjc1OTlDMS42MDE1NiAxNC4xMTM0IDEuODg4MSAxNC4zOTk5IDIuMjQxNTYgMTQuMzk5OUg0Ljk2MTU2QzUuMzE1MDIgMTQuMzk5OSA1LjYwMTU2IDE0LjExMzQgNS42MDE1NiAxMy43NTk5VjExLjAzOTlDNS42MDE1NiAxMC42ODY0IDUuMzE1MDIgMTAuMzk5OSA0Ljk2MTU2IDEwLjM5OTlaIiBmaWxsPSIjZmZmIi8%2BCjxwYXRoIGQ9Ik0xMy43NTg0IDEuNjAwMUgxMS4wMzg0QzEwLjY4NSAxLjYwMDEgMTAuMzk4NCAxLjg4NjY0IDEwLjM5ODQgMi4yNDAxVjQuOTYwMUMxMC4zOTg0IDUuMzEzNTYgMTAuNjg1IDUuNjAwMSAxMS4wMzg0IDUuNjAwMUgxMy43NTg0QzE0LjExMTkgNS42MDAxIDE0LjM5ODQgNS4zMTM1NiAxNC4zOTg0IDQuOTYwMVYyLjI0MDFDMTQuMzk4NCAxLjg4NjY0IDE0LjExMTkgMS42MDAxIDEzLjc1ODQgMS42MDAxWiIgZmlsbD0iI2ZmZiIvPgo8cGF0aCBkPSJNNCAxMkwxMiA0TDQgMTJaIiBmaWxsPSIjZmZmIi8%2BCjxwYXRoIGQ9Ik00IDEyTDEyIDQiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPgo8L3N2Zz4K&logoColor=ffffff" alt="zread"/></a>
|
||
<a href="https://hub.docker.com/r/soulter/astrbot"><img alt="Docker pull" src="https://img.shields.io/docker/pulls/soulter/astrbot.svg?color=76bad9"/></a>
|
||
<img src="https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fapi.soulter.top%2Fastrbot%2Fplugin-num&query=%24.result&suffix=%E5%80%8B&label=%E6%8F%92%E4%BB%B6%E5%B8%82%E5%A0%B4&cacheSeconds=3600">
|
||
<img src="https://gitcode.com/Soulter/AstrBot/star/badge.svg" href="https://gitcode.com/Soulter/AstrBot">
|
||
</div>
|
||
|
||
<br>
|
||
|
||
<a href="https://astrbot.app/">首頁</a> |
|
||
<a href="https://astrbot.app/">文檔</a> |
|
||
<a href="https://blog.astrbot.app/">博客</a> |
|
||
<a href="https://astrbot.featurebase.app/roadmap">路線圖</a> |
|
||
<a href="https://github.com/AstrBotDevs/AstrBot/issues">問題提交</a>
|
||
<a href="mailto:community@astrbot.app">Email</a>
|
||
|
||
</div>
|
||
|
||
AstrBot 是一個開源的一站式 Agentic 個人和群聊助手,可在 QQ、Telegram、企業微信、飛書、釘钉、Slack 等數十款主流即時通訊軟件上部署,此外還內置類似 OpenWebUI 的輕量化 ChatUI,為個人、開發者和團隊打造可靠、可擴展的對話式智能基礎設施。無論是個人 AI 夥伴、智能客服、自動化助手,還是企業知識庫,AstrBot 都能在你的即時通訊軟件平台的工作流中快速構建 AI 應用。
|
||
|
||

|
||
|
||
## 主要功能
|
||
|
||
1. 💯 免費 & 開源。
|
||
2. ✨ AI 大模型對話,多模態,Agent,MCP,Skills,知識庫,人格設定,自動壓縮對話。
|
||
3. 🤖 支持接入 Dify、阿里雲百煉、Coze 等智能體平台。
|
||
4. 🌐 多平台,支持 QQ、企業微信、飛書、釘釘、微信公眾號、Telegram、Slack 以及[更多](#支持的消息平台)。
|
||
5. 📦 插件擴展,已有 1000+ 個插件可一鍵安裝。
|
||
6. 🛡️ [Agent Sandbox](https://docs.astrbot.app/use/astrbot-agent-sandbox.html) 隔離化環境,安全地執行任何代碼、調用 Shell、會話級資源複用。
|
||
7. 💻 WebUI 支持。
|
||
8. 🌈 Web ChatUI 支持,ChatUI 內置代理沙盒、網頁搜索等。
|
||
9. 🌐 國際化(i18n)支持。
|
||
|
||
<br>
|
||
|
||
<table align="center">
|
||
<tr align="center">
|
||
<th>💙 角色扮演 & 情感陪伴</th>
|
||
<th>✨ 主動式 Agent</th>
|
||
<th>🚀 通用 Agentic 能力</th>
|
||
<th>🧩 1000+ 社區插件</th>
|
||
</tr>
|
||
<tr>
|
||
<td align="center"><p align="center"><img width="984" height="1746" alt="99b587c5d35eea09d84f33e6cf6cfd4f" src="https://github.com/user-attachments/assets/89196061-3290-458d-b51f-afa178049f84" /></p></td>
|
||
<td align="center"><p align="center"><img width="976" height="1612" alt="c449acd838c41d0915cc08a3824025b1" src="https://github.com/user-attachments/assets/f75368b4-e022-41dc-a9e0-131c3e73e32e" /></p></td>
|
||
<td align="center"><p align="center"><img width="974" height="1732" alt="image" src="https://github.com/user-attachments/assets/e22a3968-87d7-4708-a7cd-e7f198c7c32e" /></p></td>
|
||
<td align="center"><p align="center"><img width="976" height="1734" alt="image" src="https://github.com/user-attachments/assets/0952b395-6b4a-432a-8a50-c294b7f89750" /></p></td>
|
||
</tr>
|
||
</table>
|
||
|
||
## 快速開始
|
||
|
||
### 一鍵部署
|
||
|
||
對於想快速體驗 AstrBot、且熟悉命令行並能夠自行安裝 `uv` 環境的用戶,我們推薦使用 `uv` 一鍵部署方式 ⚡️。
|
||
|
||
```bash
|
||
uv tool install astrbot
|
||
astrbot init # 僅首次執行此命令以初始化環境
|
||
astrbot run # astrbot run --backend-only 僅啟動後端服務
|
||
|
||
# 安裝開發版本(更多修復,新功能,但不夠穩定,適合開發者)
|
||
uv tool install git+https://github.com/AstrBotDevs/AstrBot@dev
|
||
```
|
||
|
||
> 需要安裝 [uv](https://docs.astral.sh/uv/)。
|
||
|
||
> [!NOTE]
|
||
> 對於 macOS 用戶:由於 macOS 安全檢查,首次運行 `astrbot` 命令可能需要較長時間(約 10-20 秒)。
|
||
|
||
更新 `astrbot`:
|
||
|
||
```bash
|
||
uv tool upgrade astrbot
|
||
```
|
||
|
||
### Docker 部署
|
||
|
||
對於熟悉容器、希望獲得更穩定且更適合生產環境部署方式的用戶,我們推薦使用 Docker / Docker Compose 部署 AstrBot。
|
||
|
||
請參考官方文檔 [使用 Docker 部署 AstrBot](https://astrbot.app/deploy/astrbot/docker.html#%E4%BD%BF%E7%94%A8-docker-%E9%83%A8%E7%BD%B2-astrbot)。
|
||
|
||
### 在 雨雲 上部署
|
||
|
||
對於希望一鍵部署 AstrBot 且不想自行管理服務器的用戶,我們推薦使用雨雲的一鍵雲部署服務 ☁️:
|
||
|
||
[](https://app.rainyun.com/apps/rca/store/5994?ref=NjU1ODg0)
|
||
|
||
### 桌面客戶端部署
|
||
|
||
對於希望在桌面端使用 AstrBot、並以 ChatUI 為主要入口的用戶,我們推薦使用 AstrBot App。
|
||
|
||
前往 [AstrBot-desktop](https://github.com/AstrBotDevs/AstrBot-desktop) 下載並安裝;該方式面向桌面使用,不推薦服務器場景。
|
||
|
||
### 啟動器部署
|
||
|
||
同樣在桌面端,希望快速部署並實現環境隔離多開的用戶,我們推薦使用 AstrBot Launcher。
|
||
|
||
前往 [AstrBot Launcher](https://github.com/Raven95676/astrbot-launcher) 下載並安裝。
|
||
|
||
### 在 Replit 上部署
|
||
|
||
Replit 部署由社區維護,適合在線演示和輕量試用場景。
|
||
|
||
[](https://repl.it/github/AstrBotDevs/AstrBot)
|
||
|
||
### AUR
|
||
|
||
AUR 方式面向 Arch Linux 用戶,適合希望通過系統包管理器安裝 AstrBot 的場景。
|
||
|
||
在終端執行下方命令安裝 `astrbot-git` 包,安裝完成後即可啟動使用。
|
||
|
||
```bash
|
||
yay -S astrbot-git
|
||
```
|
||
|
||
**更多部署方式**
|
||
|
||
若你需要面板化或更高自定義部署,可參考 [寶塔面板](https://astrbot.app/deploy/astrbot/btpanel.html)(BT Panel 應用商店安裝)、[1Panel](https://astrbot.app/deploy/astrbot/1panel.html)(1Panel 應用商店安裝)、[CasaOS](https://astrbot.app/deploy/astrbot/casaos.html)(NAS / 家庭服務器可視化部署)和 [手動部署](https://astrbot.app/deploy/astrbot/cli.html)(基於源碼與 `uv` 的完整自定義安裝)。
|
||
|
||
## 支持的消息平台
|
||
|
||
將 AstrBot 連接到你常用的聊天平台。
|
||
|
||
| 平台 | 維護方 |
|
||
|---------|---------------|
|
||
| **QQ** | 官方維護 |
|
||
| **OneBot v11** | 官方維護 |
|
||
| **Telegram** | 官方維護 |
|
||
| **企微應用 & 企微智能機器人** | 官方維護 |
|
||
| **微信客服 & 微信公眾號** | 官方維護 |
|
||
| **飛書** | 官方維護 |
|
||
| **釘釘** | 官方維護 |
|
||
| **Slack** | 官方維護 |
|
||
| **Discord** | 官方維護 |
|
||
| **LINE** | 官方維護 |
|
||
| **Satori** | 官方維護 |
|
||
| **Misskey** | 官方維護 |
|
||
| **Whatsapp (將支持)** | 官方維護 |
|
||
| [**Matrix**](https://github.com/stevessr/astrbot_plugin_matrix_adapter) | 社區維護 |
|
||
| [**KOOK**](https://github.com/wuyan1003/astrbot_plugin_kook_adapter) | 社區維護 |
|
||
| [**VoceChat**](https://github.com/HikariFroya/astrbot_plugin_vocechat) | 社區維護 |
|
||
|
||
## 支持的模型提供商
|
||
|
||
| 提供商 | 類型 |
|
||
|---------|---------------|
|
||
| 自定義 | 任何 OpenAI API 兼容的服務 |
|
||
| OpenAI | LLM |
|
||
| Anthropic | LLM |
|
||
| Google Gemini | LLM |
|
||
| Moonshot AI | LLM |
|
||
| 智譜 AI | LLM |
|
||
| DeepSeek | LLM |
|
||
| Ollama (本地部署) | LLM |
|
||
| LM Studio (本地部署) | LLM |
|
||
| [AIHubMix](https://aihubmix.com/?aff=4bfH) | LLM (API 網關, 支持所有模型) |
|
||
| [優雲智算](https://www.compshare.cn/?ytag=GPU_YY-gh_astrbot&referral_code=FV7DcGowN4hB5UuXKgpE74) | LLM (API 網關, 支持所有模型) |
|
||
| [硅基流動](https://docs.siliconflow.cn/cn/usercases/use-siliconcloud-in-astrbot) | LLM (API 網關, 支持所有模型) |
|
||
| [PPIO 派歐雲](https://ppio.com/user/register?invited_by=AIOONE) | LLM (API 網關, 支持所有模型) |
|
||
| [302.AI](https://share.302.ai/rr1M3l) | LLM (API 網關, 支持所有模型)|
|
||
| [小馬算力](https://www.tokenpony.cn/3YPyf) | LLM (API 網關, 支持所有模型)|
|
||
| ModelScope | LLM |
|
||
| OneAPI | LLM |
|
||
| Dify | LLMOps 平台 |
|
||
| 阿里雲百煉應用 | LLMOps 平台 |
|
||
| Coze | LLMOps 平台 |
|
||
| OpenAI Whisper | 語音轉文本 |
|
||
| SenseVoice | 語音轉文本 |
|
||
| OpenAI TTS | 文本轉語音 |
|
||
| Gemini TTS | 文本轉語音 |
|
||
| GPT-Sovits-Inference | 文本轉語音 |
|
||
| GPT-Sovits | 文本轉語音 |
|
||
| FishAudio | 文本轉語音 |
|
||
| Edge TTS | 文本轉語音 |
|
||
| 阿里雲百煉 TTS | 文本轉語音 |
|
||
| Azure TTS | 文本轉語音 |
|
||
| Minimax TTS | 文本轉語音 |
|
||
| 火山引擎 TTS | 文本轉語音 |
|
||
|
||
## ❤️ 貢獻
|
||
|
||
歡迎任何 Issues/Pull Requests!只需要將你的更改提交到此項目 :)
|
||
|
||
### 如何貢獻
|
||
|
||
你可以通過查看問題或幫助審核 PR(拉取請求)來貢獻。任何問題或 PR 都歡迎參與,以促進社區貢獻。當然,這些只是建議,你可以以任何方式進行貢獻。對於新功能的添加,請先通過 Issue 討論。
|
||
建議將功能性PR合併至dev分支,將在測試修改後合併到主分支並發布新版本。
|
||
為了減少衝突,建議如下:
|
||
1. 工作分支最好基於 `dev` 分支創建,避免直接在 `main` 分支上工作。
|
||
2. 提交 PR 時,選擇 `dev` 分支作為目標分支。
|
||
3. 定期同步 `dev` 分支到本地,多使用git pull。
|
||
|
||
### 開發環境
|
||
|
||
AstrBot 使用 `ruff` 進行代碼格式化和檢查。
|
||
|
||
```bash
|
||
git clone https://github.com/AstrBotDevs/AstrBot
|
||
git switch dev # 切換到開發分支
|
||
pip install pre-commit # 或者uv tool install pre-commit
|
||
pre-commit install
|
||
```
|
||
推薦使用uv本地安裝,進行測試
|
||
```bash
|
||
uv tool install -e . --force
|
||
astrbot init
|
||
astrbot run
|
||
```
|
||
調試前端
|
||
```bash
|
||
astrbot run --backend-only
|
||
cd dashboard
|
||
bun install # 或者pnpm 等
|
||
bun dev
|
||
```
|
||
|
||
### QQ 群組
|
||
|
||
- 9 群: 1076659624 (新)
|
||
- 10 群: 1078079676 (新)
|
||
- 1 群:322154837
|
||
- 3 群:630166526
|
||
- 5 群:822130018
|
||
- 6 群:753075035
|
||
- 7 群:743746109
|
||
- 8 群:1030353265
|
||
- 開發者群(偏閒聊吹水):975206796
|
||
- 開發者群(正式):1039761811
|
||
|
||
### Discord 頻道
|
||
|
||
- [Discord](https://discord.gg/hAVk6tgV36)
|
||
|
||
## ❤️ Special Thanks
|
||
|
||
特別感謝所有 Contributors 和插件開發者對 AstrBot 的貢獻 ❤️
|
||
|
||
<a href="https://github.com/AstrBotDevs/AstrBot/graphs/contributors">
|
||
<img src="https://contrib.rocks/image?repo=AstrBotDevs/AstrBot&max=200&columns=14" />
|
||
</a>
|
||
|
||
此外,本項目的誕生離不開以下開源項目的幫助:
|
||
|
||
- [NapNeko/NapCatQQ](https://github.com/NapNeko/NapCatQQ) - 偉大的貓貓框架
|
||
|
||
開源項目友情鏈接:
|
||
|
||
- [NoneBot2](https://github.com/nonebot/nonebot2) - 優秀的 Python 異步 ChatBot 框架
|
||
- [Koishi](https://github.com/koishijs/koishi) - 優秀的 Node.js ChatBot 框架
|
||
- [MaiBot](https://github.com/Mai-with-u/MaiBot) - 優秀的擬人化 AI ChatBot
|
||
- [nekro-agent](https://github.com/KroMiose/nekro-agent) - 優秀的 Agent ChatBot
|
||
- [LangBot](https://github.com/langbot-app/LangBot) - 優秀的多平台 AI ChatBot
|
||
- [ChatLuna](https://github.com/ChatLunaLab/chatluna) - 優秀的多平台 AI ChatBot Koishi 插件
|
||
- [Operit AI](https://github.com/AAswordman/Operit) - 優秀的 AI 智能助手 Android APP
|
||
|
||
## ⭐ Star History
|
||
|
||
> [!TIP]
|
||
> 如果本項目對您的生活 / 工作產生了幫助,或者您關注本項目的未來發展,請給項目 Star,這是我們維護這個開源項目的動力 <3
|
||
|
||
<div align="center">
|
||
|
||
[](https://star-history.com/#astrbotdevs/astrbot&Date)
|
||
|
||
</div>
|
||
|
||
<div align="center">
|
||
|
||
_陪伴與能力從來不應該是對立面。我們希望創造的是一個既能理解情緒、給予陪伴,也能可靠完成工作的機器人。_
|
||
|
||
_私は、高性能ですから!_
|
||
|
||
<img src="https://files.astrbot.app/watashiwa-koseino-desukara.gif" width="100"/>
|
||
|
||
</div> |