开源AGPL-3.0每一行代码,都可以读。
完整的 iOS、Android 和网页版客户端,以 AGPL-3.0-or-later 授权。不用注册、不用订阅,也没有任何数据回传给我们。代码随你读、随你改,也可以自己部署。
$ git clone https://github.com/oriveo/oriveo.git $ cd oriveo
# Web · Node 22.22+ $ cd web && npm install $ npm run dev:app # localhost:3001
# iOS · Xcode 26, iOS 18+ $ open ios/Oriveo/Oriveo.xcodeproj
# Android · JDK 21 + Android SDK $ cd android && ./gradlew :app:assembleDebug
仓库不提供任何预编译产物——没有 APK,也没有 .ipa。社区版是源码,需要你自己构建。
仓库里有什么
iOS · SwiftUI
界面用 SwiftUI,聊天记录列表用 UIKit,本地存储用 GRDB。用 Xcode 26 打开工程,Signing 选自己的 Team 就能跑在自己手机上。
Android · Compose
Jetpack Compose、Room、Koin、Ktor / OkHttp。JDK 21 加 Android SDK,一条 assembleDebug 出包。
Web · Next.js
Next.js App Router、React、Zustand、TypeScript。它是整个项目里唯一带服务端的部分,既不存 API Key,也不存消息。
macOS · 开发中
原生 macOS 客户端正在开发中,代码会放在这个目录。它依赖的 Swift 通信层已经写完,正在测试。
三个客户端各自实现“怎么调用供应商”,迟早会走样。shared/ 把这套行为写成数据:capabilityrecipe 规定请求怎么构造,model-contracts 规定客户端能做什么,test-fixtures 是录下来的真实响应,OriveoProviderKit 是 Swift 6.1 写的通信内核。三端测试都对着同一批 JSON 来验证。
同一份代码,两种运行方式
三端客户端代码同源,区别只在账号、云同步,以及由我们付费的模型。
| 能力 | 社区版 | 官方版 Oriveo |
|---|---|---|
| 源码 | AGPL-3.0-or-later | 商业版 |
| 用自己的供应商 API Key 聊天 | 支持 | 支持 |
| Relay 与本地模型服务器 | 支持 | 支持 |
| 笔记、文件夹、Skills、附件 | 支持 | 支持 |
| 本机花费统计 | 支持 | 支持 |
| 账号 | Oriveo 账号 | |
| 存储 | 存在本机,手动导出与恢复 | 默认存本机,可选跨设备云同步 |
| Usage Insights 与预算提醒 | 支持 | |
| 由 Oriveo 付费的模型(Oriveo AI / Oriveo Free) | 支持 | |
| 数据分析与崩溃上报 | 支持 |
社区版使用 ai.oriveo.community 标识前缀,可以和商店版装在同一台设备上,互不共享钥匙串和本地数据。
从手边的事做起
挑一个 issue
比修 bug 更大的改动,请先开 issue。在 issue 里争论方案,比在 diff 里争论省事得多。
私下报告漏洞
安全问题不要开公开 issue。走 GitHub 的私有漏洞报告,或写信到 [email protected] 并在标题里写上 SECURITY,几天内会回复你。
补一种语言
界面支持 16 种语言,README 也有 16 份。觉得哪里译得别扭,或者想加一种语言,都欢迎提 PR。
请完整 clone 仓库:三端都要从仓库根目录读取 shared/ 里的接口约定和测试数据,只拉最新一层(浅 clone)的话,测试跑不过。