Orb:主动发起对话的自托管AI助手
Orb是一个开源的自托管AI助手后端,它不会等待被询问,而是主动监控你的项目、维护情境模型,并在真正值得注意时向你发送消息。支持多模型路由、语音交互、后台任务委托等功能,数据本地存储。
Orb 是一个开源的自托管 AI 助手后端,它与配套的 iOS 应用协同工作,但最大的特点是:它不会等待你主动询问,而是率先向你发送消息。它会在后台持续监控你的项目,维护一个不断更新的情境模型,预测未来需求,并在真正值得你注意时才打扰你。
Orb 的核心能力包括:
- 语音服务器:通过 WebSocket 实现语音交互,无需唤醒词即可进行自然对话。语音输入使用本地 Whisper 模型,输出采用神经 TTS,实现流畅的对话体验。
- 代理中枢:一个轻量级循环,让模型自行决定何时说话、何时行动,内置约 60 个工具,涵盖天气、邮件、文件、股票、屏幕、会话、任务、提醒、通知等。
- 多脑路由器:可在 Claude(通过你自己的 Claude Code CLI)、Grok、Codex 或本地模型之间无缝切换,保持统一人格。你可以在对话中途切换模型,而人格保持不变。
- 思维:在对话之间运行的一个进程,维护你生活和项目的情境模型,感知变化,做出预测,提出实际工作建议,并监督你批准的任务。
- 会话:将长时间运行的任务(如构建、研究、训练)委托给后台代理,你可以通过手机随时监控、发送消息或停止任务。
- 推送通知:使用 APNs 实现去重、硬限速、完整消息负载和投递回执,确保通知不会丢失。
运行方式
目前主要支持 Windows(macOS 后端正在开发中),需要 Python 3.11+。克隆仓库后创建虚拟环境,安装依赖,运行 setup.py 进行引导配置,然后启动 supervisor.py。你需要为手机提供一个可访问的地址(例如通过 Tailscale),然后在 iOS 应用中配对。项目提供了详细的自行托管指南,你也可以使用 Claude Code 自动完成设置。
自带一切
Orb 采用“自带一切”的模式:你自带模型访问(默认使用 Claude Code CLI),自带 APNs 推送密钥,自带 Gmail 应用密码。后端从不内置或存储任何凭据。所有变量都在 .env.example 和 SELF_HOSTING.md 中记录。
架构
项目架构清晰:server_win.py 负责服务器、语音循环和通知;agent.py 是代理循环;brain.py 负责模型路由;tool_registry.py 和 otools/ 包含所有工具;mcp_http.py 和 orb_mcp.py 提供 MCP 接口;proactive_engine.py 驱动主动引擎;mind.py 管理会话间的自主行为;supervisor.py 保持后端运行并支持热重载。
iOS 应用
iOS 应用已在 App Store 免费上架。应用本身是闭源的,但后端是开源的。应用通过 WebSocket 和 HTTP API 与后端通信,你也可以构建自己的客户端。
设计理念
- 本地优先:所有数据收集在你的机器上并保留在那里。
- 自带密钥:后端从不提供凭据。
- 结构安全:自主表面无法访问破坏性工具,任何影响世界的操作都需要你的明确批准,且每一步都记录在日志中。
- 沉默是金:主动层将“无话可说”视为正确的、一流的结果。
未来计划
- 完全离线的本地模型层(Ollama / Qwen)作为一流默认选项。
- macOS 后端。
- 应用内二维码配对。
许可
后端采用 MIT 许可证。Orb iOS 应用及品牌不在该许可范围内。
项目由 ninjahawk 开发。