可自托管的多平台 AI 助手

Diana 用 Go 编写,编译成单个二进制运行。OneBot v11、Telegram、QQ 官方机器人、 钉钉、飞书、企业微信可以同时在线,内置 WebUI、插件系统与 Agent; 配置、记忆和日志都存在本机的 SQLite 里,不依赖任何托管服务。

curl -fsSL https://raw.githubusercontent.com/SuInk/Diana/main/scripts/install.sh | sudo sh

安装完成后打开 http://127.0.0.1:18080,进行首次配置。

Diana 控制台总览:通道状态、消息统计、系统资源与实时事件流
控制台总览:通道状态、消息统计、系统资源与实时事件流

特性

完全自托管

编译成单个二进制,配置、记忆、日志全部落在本机的 SQLite;不回传任何数据,也不依赖任何托管服务。

多通道同时在线

六个平台并行运行,回复、图片和提醒始终回到来源通道;会话上下文固定按机器人隔离。

模型职责拆分

对话、视觉理解、意图识别、图片生成分别绑定 Provider 与模型,保存前用真实请求验证。

内置联网搜索

无需安装插件,时效性内容先检索再回答;Exa MCP 优先,Tavily 兜底。

图片文字识别

视觉模型与 OCR 并行工作,对话模型不支持看图也能收到识别后的文字;结果按内容哈希落库,同一张图只识别一次。

群级回复策略

每个群独立设置回复时段、黑白名单、触发词、人设、群等级门槛和工具权限。

长期记忆与检索

近期上下文、压缩摘要、结构化事实和超长历史检索分层工作,控制 token 消耗。

内置 Agent

Pi 风格的最小工具循环,可调用文件、命令、浏览器工具,按需装载 Skills 与 MCP 服务。

完整事件审计

每条消息为什么回复、用了哪些工具、花了多少 token,都能在事件中心查到;操作日志区分操作人。

快速开始

安装脚本自动识别系统与架构,下载最新稳定版并核对 SHA256SUMS;升级前备份数据,健康检查失败自动回滚。

Linux / macOS
# 安装与升级用同一条命令
curl -fsSL https://raw.githubusercontent.com/SuInk/Diana/main/scripts/install.sh | sudo sh
Windows PowerShell
# 安装与升级用同一条命令
irm https://raw.githubusercontent.com/SuInk/Diana/main/scripts/install.ps1 | iex
Docker
# 预构建镜像,不必克隆仓库
docker run -d --name diana --restart unless-stopped \
  -p 18080:18080 \
  -v "$PWD/data:/app/data" \
  -v "$PWD/logs:/app/logs" \
  ghcr.io/suink/diana:latest

1执行安装命令

生成的管理员账号和密码会显示在终端,并保存在安装目录的 config.yaml

2打开控制台

访问 127.0.0.1:18080,用终端里显示的管理员账号登录。

3接入通道与模型

在 WebUI 里按平台填写凭据,六个通道可同时启用,并为各职责绑定模型。

4后续升级

控制台可直接升级,也可以重复执行安装命令;失败自动恢复。

通道支持

OneBot v11

对接 NapCat 等 OneBot 实现,支持群聊与私聊,群级策略精细控制回复行为。

Telegram

官方 Bot API 长轮询,出站连接,不需要公网地址。

QQ 官方机器人

QQ 开放平台 WebSocket 网关,出站长连接,不需要公网地址。

钉钉

Stream 模式出站长连接,同样不需要公网地址或 HTTP 回调。

飞书

事件订阅回调,支持加密推送与签名校验;需要一个公网可达的回调地址。

企业微信

自建应用回调,按 WXBizMsgCrypt 验签解密;需要一个公网可达的回调地址。

前四个平台都是本机主动出站连接,家庭或内网部署可以直接用; 飞书和企业微信只能由平台回调,需要把控制台暴露到公网。

文档