somora
在自己的机器上运行可共享长期记忆、自由切换模型的个人 AI 团队。
- Star 数
- ★ 29
- 最近更新
- 1 天前
- License
- MIT
- 主语言
- TypeScript
- FA 评分
- 69/100 · 存在缺口
30 秒速览
- 运行形态
- 可在哪里用
- 通用 · 跨平台ChatGPT · Codex · Claude Code
- 费用
- 免费,无需付费服务
- 上手难度
- 低 · 几分钟可跑通
- 开始前需要
- 典型场景
- 希望在个人电脑上同时管理研究、协调和执行角色,并让它们互相委派任务的个人用户。
- 不适合
- 需要原生 Windows 安装路径的用户
- 不愿运行本地后台服务的团队
- 要求生产稳定版而非活跃开发项目的组织
- 源码审查
- 69/100 · 存在缺口
这个 Agent 能做什么,适合哪些场景?
somora 是一个运行在用户机器上的多智能体服务器,提供终端 TUI、浏览器桌面和移动 PWA 三种客户端。每个聊天智能体拥有独立角色、私有记忆、模型偏好和工具权限,同时可通过 Obsidian wiki 共享经过 dream 周期整理的长期知识。系统可在同一会话中切换 Claude、ChatGPT、Grok 和 OpenAI-compatible 后端,并让历史记录及工具继续沿用。它还提供专门面向代码仓库的 builder 智能体,以及文件、shell、tmux、网页、附件、子智能体、定时触发器、浏览器和外部 MCP 等工具。配置、会话、附件和智能体记忆默认位于 `~/.somora/`,共享 wiki 位于用户指定的 Obsidian vault,因此部署边界由用户自己的机器和所配置的外部服务决定。
用户从 somora tui、Web 客户端或移动 PWA 发起请求后,somora-server 将其放入对应会话的单一队列;来自其他智能体、子智能体、Sentinel 定时器或语音通话的任务也走同一调度路径。执行层可调用 claude-cli、codex-cli、grok-cli 或 openai-compatible 引擎,并通过统一工具注册表访问 memory、dream、wiki、file、exec、tmux、web、agents、skills、sentinel、browser、media、projects 和外部 MCP 工具。聊天过程中发现的事实可写入智能体私有 Markdown 记忆;REM、Deep 和 Lucid 三阶段 dream 流程分别把会话整理为记忆、把稳定记忆提升到共享 wiki,并复核 wiki。检索使用 SQLite、sqlite-vec 与 FTS5,为私有记忆、共享 wiki 和只读 vault 内容维护独立索引。对于软件开发,kind: builder 的智能体在固定项目目录中规划、编辑、运行和测试代码;它可读取记忆,但不会写入记忆或参与 dream。
- 希望在个人电脑上同时管理研究、协调和执行角色,并让它们互相委派任务的个人用户。
- 已经使用 Claude、ChatGPT、Grok 或本地模型,希望在同一会话中切换后端而不丢失历史和工具上下文的用户。
- 使用 Obsidian 管理知识,希望把聊天中反复出现的稳定信息沉淀为共享 wiki 的知识工作者。
- 需要把定时任务、浏览器操作、文件处理、shell 和 tmux 会话统一交给一组智能体的高级用户。
- 希望为代码仓库配置长期运行的 builder,同时保留普通聊天智能体负责沟通和任务交接的开发者。
- 希望从终端、桌面浏览器和手机访问同一套本地智能体、会话与记忆的用户。
如何安装或部署这个 Agent?
支持 Linux 或 macOS,并要求至少一个可用的 LLM 后端。推荐以普通用户身份运行安装器;它会检查所需工具、安装缺失或过旧的 Node.js、安装 somora、注册后台服务并启动设置向导。
curl -fsSL https://somora.ai/install.sh | bash如果已经安装 Node.js ≥22.13,可通过 npm 安装并运行设置向导:
npm install -g somora && somora setup设置过程中需连接至少一个后端:Claude 订阅可使用 Claude Code 登录,ChatGPT 订阅可使用随 somora 提供的 Codex 登录;本地 Ollama、LM Studio、vLLM、oMLX 或其他 OpenAI-compatible 服务则需在初始化后写入 ~/.somora/config.yaml。
curl -fsSL https://claude.ai/install.sh | bash && claude auth loginsomora codex login硬性依赖还包括 tmux;Node.js 最低版本为 22.13。安装器可能在征得同意后使用管理员权限补齐系统依赖。
如何使用这个 Agent?
完成设置后,启动终端客户端即可向默认智能体发送第一条消息:
somora tui手动安装流程可先初始化配置并注册服务,然后启动服务器:
somora init
somora server start
somora tui创建多个智能体后,可初始化团队关系,使每个智能体知道成员及汇报结构:
somora team init --principal "<your name>"Web 客户端位于 https://<host>.<tailnet>.ts.net:18737/web/,移动 PWA 位于同一主机的 /mobile/。这些客户端连接同一台本地服务器,并共享智能体、会话队列和记忆。远程 Web 与移动访问使用 Tailscale HTTPS;README 说明该 Web 界面采用局域网信任模式,没有独立身份验证。
这个 Agent 有哪些优点和局限?
- 同一会话可在 Claude、ChatGPT、Grok 与 OpenAI-compatible 后端之间切换,历史和统一工具注册表能够延续。
- 私有记忆、共享 Obsidian wiki 与 REM、Deep、Lucid 三阶段 dream 流程形成明确的长期知识沉淀机制。
- TUI、浏览器桌面和移动 PWA 连接同一服务器、会话队列、智能体与记忆。
- 聊天智能体与 builder 分工明确;builder 为仓库工作提供长回合、计划、任务列表、编译器反馈和受限工作目录。
- 配置、会话、附件和记忆保存在用户机器上,并可使用 Ollama、LM Studio、vLLM 等本地模型服务。
- 仅文档化 Linux 和 macOS 安装路径,并硬性要求 Node.js ≥22.13、tmux 以及至少一个模型后端。
- 项目仍处于活跃开发和早期测试阶段,不等同于成熟的稳定版本。
- Web 与移动端的 HTTPS、麦克风、屏幕共享和剪贴板能力依赖 Tailscale 配置,且 Web 客户端采用无独立认证的局域网信任模式。
- Grok CLI 不能充当 dream 或 compaction worker,需要为这些任务配置另一个引擎。
- 托管图片和视频提供商虽按公开接口实现,但尚未使用真实账户完成端到端验证。
这个 Agent 与同类方案有什么区别?
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| somora 当前 | 69 · 存在缺口 | 命令行工具免费 | ★ 29 | 1 天前 | TypeScript | ChatGPT · Codex · Claude Code |
| NextClaw | 58 · 缺口较多 | 桌面应用免费 + 模型费 | ★ 260 | 2 天前 | TypeScript | Codex · Claude Code |
| OpenHuman | 51 · 缺口较多 | 桌面应用免费版 + 付费版 | ★ 41k | 1 天前 | Rust | — |
| Orkas | 43 · 缺口较多 | 桌面应用免费版 + 付费版 | ★ 2.2k | 2 天前 | JavaScript | Codex · Claude Code · OpenAI API · Claude API |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
README 明确说明本地数据位置、外部模型与服务由用户配置、每日更新检查所发送的信息及退出方式;工具可按代理设门、builder 限定在项目目录,安装器以普通用户运行并在需要管理员权限前询问。它也描述了计划确认、停止和接管机制。但产品仍包含 shell、tmux、浏览器、SSH、定时任务和外部 MCP 等高影响能力,网页端被描述为“局域网信任、无认证”,而审批覆盖范围、秘密的静态存储与日志脱敏策略未由所给文件完整说明。依赖虽有版本约束和 Node 下限,却没有给出锁文件、漏洞扫描、SBOM 或供应链校验依据,且推荐 curl 管道安装。停止/接管不等于数据或系统变更回滚,未见卸载、快照或恢复流程。仓库、包、主页和 MIT 归属清楚,但 LICENSE 的版权主体仅写为“suspect”,且发布者身份未知,因此来源归属未获满分。
README、package.json 和 LICENSE 在产品名、MIT 许可、Node 要求、仓库位置及主要定位上基本一致,并列出多种模型后端、必需与可选依赖以及部分后端限制。扣分在于大量功能与“端到端验证”陈述主要来自 README,所给材料没有实现代码或测试内容可交叉检查;依赖可用性也会受外部 CLI、模型服务、tmux、浏览器和原生模块影响。失败处理仅具体提到旧 Node 会停止并给出升级步骤,以及 setup 的启动测试,未展示常见网络、认证、工具或后台服务故障的错误信息质量。
材料对聊天、团队协作、软件构建、记忆、语音、移动端、定时任务和自托管模型等受众与场景进行了细分,并清楚区分 chat agent 与 builder 的提示、工具、记忆、工作目录和生命周期;可选能力、后端差异及环境要求也描述充分。扣分主要在触发精度:定时触发、代理委派、梦境周期和技能激活有概念说明,但所给文件未提供其完整匹配规则、冲突处理或误触发防护实现。
README 具有清晰的安装、需求、快速入门、架构、客户端、状态和文档导航,且提供交互式、手工及源码开发入口;MIT 文本与 package 元数据一致,许可处理完整。产品和命令命名总体一致,但日历式版本号没有解释稳定性承诺。示例丰富,却没有独立 FAQ,故未满分。已披露活跃开发状态、Grok 限制、部分托管媒体提供商未经真实账户测试及网页端无认证等限制,但缺少更系统的已知问题清单。存在包版本、更新命令和 issue 地址,却未见 changelog、发布策略、支持周期、明确维护者或安全联系渠道;LICENSE 中的“suspect”也削弱维护责任归属。
三种客户端、统一队列、共享记忆、生成文件位置、任务面板和可接管操作为输出使用方式提供了较具体的说明;统一多模型工具面、团队委派和本地共享知识相较普通单代理工具具有可辨识的增量价值。扣分在于这些效果主要是产品陈述和截图引用,所给材料没有实际输出样例或实现证据。材料披露了 Node、tmux、模型后端及若干可选服务成本,但没有量化模型费用、资源占用、维护负担或复杂部署的收益边界,因此成本效益只能评为适中。
README 将多数主题指向具体文档章节,并明确区分已完成、可选、受限和尚未对真实账户测试的能力;package.json 对名称、版本、入口、Node 版本、依赖、脚本和仓库信息提供了部分独立佐证,LICENSE 也与许可元数据一致。扣分在于被引用的文档、实现代码、测试结果和锁文件未包含在本次材料中,许多安全与功能主张只能追溯到同一份 README。营销性表述与事实通常可区分,但“feature-complete”“used daily”及兼容矩阵缺少所给来源内的验证记录。
- 网页客户端被明确描述为依赖局域网信任且无认证;不要将其直接暴露到不受信任网络。
- 推荐安装方式会将远程脚本直接交给 shell;安装前应固定版本并审查脚本及其下载链。
- 代理可使用 shell、tmux、浏览器、SSH、定时任务和外部 MCP;应逐代理收紧工具权限,并在低权限隔离环境中运行。
- 本次材料未证明秘密的静态加密、日志脱敏、依赖漏洞扫描或变更回滚;处理真实凭据和重要工作区前需单独核实。
- 托管图片和视频提供商路径被作者明确标注为尚未用真实账户测试。
常见问题
必须购买云端模型订阅或 API 吗?
数据默认保存在哪里?
~/.somora/;工作区文件和生成媒体位于配置的 workspace;共享 wiki 位于用户选择的 Obsidian vault。外部模型和服务能接触哪些数据取决于用户配置。所有功能安装后都会自动启用吗?
imageGen 或 videoGen 前保持关闭。