核心问题: 一个早期 Beta、GPL-3.0 的桌面运行时,是否适合承载你人生的全部记忆?
RepoDaily 采用评分
RepoDaily 将该项目的采用分评为 87/100(强):分数来自文章来源、安装路径、生产风险、差异化、许可证清晰度以及 AI/Agent 适配度。
包含 6 个来源、覆盖 3 类来源;如有 RepoDaily 独有模块,会进一步提高证据分。
检测到 5 个工作流步骤、5 个下一步动作,以及 5 个命令/安装信号。
趋势热度为 +515 stars;如内容中有 release、issue 或维护信号,会提高维护可信度。
采纳风险标记为 high,并包含 5 条安全说明与 4 条跳过条件。
3 个机会视角、5 个替代方案,以及 4 个类型化模块支撑差异化判断。
文章中包含许可证来源或许可证表述。
文章正文和元数据中检测到 7 个 AI/Agent 相关信号。
项目概览
2026-08-25,tinyhumansai/openhuman 以 515 颗星排在 GitHub 趋势榜第 11 位,口号相当直白:“你的个人 AI 超级智能:一个记得一切的头脑、一个出色的编排器、一个深度研究者。本地优先、简单、强大。”仓库描述把它拆成三大支柱——本地优先的人生记忆、Agent 舰队与工作流的编排器、深度研究者。
这个仓库支撑口号的不是一层提示词封装,而是一个真实的桌面运行时。主语言是 Rust;应用是 Tauri 桌面外壳,前端 TypeScript 位于 openhuman-app 工作区,Rust 后端在 app/src-tauri 下,crate 名就叫 openhuman——这一点从 rust:clippy 脚本里的 cargo clippy -p openhuman 可以直接看出。根 package.json 的 resolutions 把 @tauri-apps/api 钉在 2.11.1,并通过 packageManager 字段(含 sha512 哈希)强制使用 pnpm 10.10.0。
许可证是任何想在其上构建的人必须先看清的事实:LICENSE 文件是完整的 GNU GPL v3 全文。对个人使用和向上游贡献没有障碍,但要把代码嵌进闭源产品就会受限,这直接决定了谁会采用它。
项目对成熟度很坦诚。README 状态徽章写着 early beta;SECURITY.md 的支持版本表只覆盖 Latest 和 Previous minor——旧版本可能不再收到补丁。漏洞报告走私密邮件(而非公开 issue),通常 5 个工作日内确认;披露范围明确覆盖前端、Tauri/Rust 后端或 skills 运行时的远程代码执行,以及 npm 与 Cargo 依赖链。
这波热度是有组织推进的结果:README 挂着 Trendshift 徽章(仓库 23680)和四个 Product Hunt 徽章(帖子 1136902 的日榜、周榜及两个话题周榜),并提供了简体中文、日语、韩语、德语、乌尔都语五种翻译。真正的问题是:515 个点星的人里,有多少能扛过 CONTRIBUTING.md 里那份工具链安装清单。
为什么现在变热
- 2026-08-25 趋势窗口内 515 颗星,排名第 11。
- “本地优先的人生记忆”而非云端聊天记录的定位,正中当前助手市场的隐私焦虑。
- Rust 加 Tauri 意味着原生桌面运行时,吸引了本就排斥 Electron 套壳的那批开发者。
- 分发动作直接写在 README 里:Trendshift 徽章 23680,Product Hunt 帖子 1136902 的日榜与周榜徽章。
- 五种 README 翻译(zh-CN、ja-JP、ko、de、ur-pk)加上 Discord、Reddit、X、GitHub Discussions,入口远多于纯英文仓库。
解决什么问题
- 聊天助手会话之间即失忆,而它保留的上下文存在别人的服务器上。
- 跑多个 Agent 或一条多步研究线程,通常要自己拼接模型 API、向量存储和编排库。
- 一个人的记忆——消息、笔记、文档——值得一个把数据留在本机、绝不用于训练的桌面运行时。
- OpenHuman 给出的答案是同一个“大脑”:记得一切、会编排、会研究,并把本地优先当作设计约束。
工作原理
- 启动 Tauri 桌面应用:openhuman-app 前端(Node ≥24,TypeScript)负责界面,app/src-tauri 下的 Rust 内核承担重活。仓库甚至以 git 子模块形式内嵌了打过补丁的 Tauri 源码,用于支持 CEF 的 CLI 与通知插件修复。
- 内核从你的资料构建本地优先的记忆。SECURITY.md 声明消息内容按请求处理,不为训练或长期存储而保留。
- 你派出 Agent 舰队与研究任务;skills 在有明确边界的沙箱环境中执行,维护者会尽可能审查 skills 行为及其依赖。
- 密钥绝不落明文——桌面应用把凭据存入系统级存储,例如 macOS Keychain 或 Windows 凭据管理器。
- 界面与 README 的三张图对应:工作流画布对应编排、记忆图对应上下文构建、编排图对应舰队调度;头图被标注为 The Tet。
产品演示与界面预览




目录结构读出的架构:Tauri 外壳、Rust 内核、CEF 助手
根 package.json 把仓库命名为 openhuman-repo,所有命令经 pnpm 10.10.0 过滤进 openhuman-app 工作区。桌面外壳是 Tauri:app/src-tauri 托管 crate 名为 openhuman 的 Rust 后端,仓库还在 app/src-tauri/vendor/ 下以 git 子模块内嵌打过补丁的 Tauri 源码——包括支持 CEF 的 Tauri CLI 与通知插件补丁。根目录 resolutions 把 @tauri-apps/api 钉在 2.11.1。
原生依赖解释了构建的重量:语音用的 Whisper 绑定需要 CMake;内嵌的 CEF 助手在 macOS 和 Windows 上需要 Ninja——CONTRIBUTING.md 明确警告缺了它 cef-dll-sys 构建脚本会直接中止。这套栈沉重但清晰:TypeScript 前端、Rust 内核、需要时的内嵌 Chromium。
架构文档靠代码而非自觉来保鲜。package.json 提供 docs:generate 与 docs:check(scripts/generate-architecture-docs.mjs),gitbooks/developing/architecture.md 可在 CI 中重新生成并校验,而不是慢慢腐烂;CONTRIBUTING.md 还把贡献者指向 AGENTS.md 与 CLAUDE.md 的仓库级编码规则。
贡献者真正会敲的命令
- pnpm dev:app——以开发模式启动桌面应用(Windows 用 dev:app:win);dev:cef 针对 CEF 构建,dev:staging 运行 scripts/dev-staging.sh。
- pnpm rust:clippy——先跑 cargo clippy -p openhuman -- -D warnings,再跑应用工作区自己的 clippy;警告即错误。
- pnpm test:rust 与 bash scripts/test-rust-e2e.sh——Rust 单测与端到端套件;test:rust:e2e:coverage(check-domain-e2e-coverage.mjs)把关领域覆盖。
- pnpm mock:api——node scripts/mock-api-server.mjs,在前端开发时代替后端服务。
- pnpm agent-batch——node scripts/agent-batch/cli.mjs,一个批量运行 Agent 的 CLI,在 scripts/agent-batch/__tests__ 下有配套测试。
- pnpm release:notes——scripts/release/generate-release-notes.mjs;变更日志由脚本生成,预览模式会从最新 release 到 main 写出 CHANGELOG.preview.md。
- pnpm i18n:check——tsx scripts/i18n-coverage.ts 校验五种 README 翻译背后的多语言覆盖。
- pre-push 钩子(lint:commands-tokens)用 ripgrep 扫描 app/src/components/commands/;没装 rg 的话 git push 会以 rg: command not found 失败。
- 移动端与性能目标也在:tauri:ios:init、tauri:android:init 分别调用 scripts/ios-init.sh 和 scripts/android-init.sh;profile:tauri 运行 app/src-tauri/profiling/Cargo.toml 里的 Rust 性能分析程序。
系统要求:比一般桌面应用重得多
- 钉死的工具链:rust-toolchain.toml 中的 Rust 1.96.1(rustfmt 与 clippy 为必需组件)、app/package.json 的 Node ≥24.0.0、根 package.json 的 pnpm 10.10.0。
- CMake 为 Whisper 绑定等原生 Rust 依赖所需;Ninja 在 macOS 和 Windows 上构建内嵌 CEF 助手时必需。
- pre-push 检查需要 ripgrep;macOS 需要 Xcode 命令行工具;Linux 需要各发行版要求的 GTK/WebKit/AppIndicator 构建包。
- Windows 还要装 Visual Studio C++ Build Tools——约 5.4 GB 装在 C 盘,含 MSVC v143 与 Windows 11 SDK;CONTRIBUTING.md 要求按顺序安装并在每步后重启终端。
- app/src-tauri/vendor/ 下的 Tauri 子模块必须就位,否则支持 CEF 的 Tauri CLI 与通知插件补丁无法构建。
值得掂量的 Beta 信号
- README 状态徽章写着 early beta,Latest Release 徽章指向 GitHub releases——版本频繁变动应当被预期。
- SECURITY.md 支持版本表:Latest 与 Previous minor 有补丁,Older 没有。日常使用者必须紧跟每个版本。
- 对一个 Beta 项目而言流程纪律罕见地高:脚本生成的 release notes、由 docs:check 校验的架构文档、领域级 e2e 覆盖门禁、PR 检查清单脚本、把 main 合入开放 PR 的助手,甚至给 Windows 安装脚本配了 Pester 测试(OpenHumanWindowsInstall.Tests.ps1)。
- 社区渠道有五个(Discussions、Discord、Reddit、X、Product Hunt),但 README 把单一创作者 @senamakel 放在最前面——巴士因子是长期风险。
谁适合关注
适合关注
- 熟悉 pnpm 与 Rust、想通读一个 GPL-3.0 下成型 Tauri + Rust Agent 运行时的开发者。
- 坚持隐私优先、希望助手的记忆留在自己磁盘而不是厂商云端的个人用户。
- 任何水平的贡献者:CONTRIBUTING-BEGINNERS.md、按类别引导提问的 SUPPORT.md、以及成文的 Discussions 分流文档都降低了上手门槛。
- 正在研究 skills 沙箱与系统钥匙串凭据存储如何在已发布桌面应用中落地的人。
可以先跳过
- 需要长期稳定支持版本来承载不可替代个人数据的人——只有 Latest 与 Previous minor 收到安全更新。
- 打算把 OpenHuman 嵌入闭源产品的团队;GPL-3.0 的著佐权约束衍生分发。
- C 盘拿不出约 5.4 GB 装 Visual Studio C++ Build Tools 的 Windows 用户。
- 不愿为了从源码运行而装齐 Rust 1.96.1、Node 24、pnpm 10.10.0、CMake、Ninja、ripgrep 的用户。
风险与注意事项
早期 Beta、仅两个版本窗口的安全补丁、单一 foregrounded 创作者、沉重的构建栈,决定了它更适合研究与共建,而不是承载关键个人数据的日常主力。
- README 状态徽章为 early beta。
- SECURITY.md 仅支持 Latest 与 Previous minor;旧版本可能不收补丁。
- README 突出单一创作者 @senamakel,即便有五个社区渠道,巴士因子仍然存在。
- 构建需要 Rust 1.96.1、Node ≥24、pnpm 10.10.0、CMake、Ninja、ripgrep、内嵌 Tauri 子模块,Windows 上还要约 5.4 GB 的 Visual Studio 工具。
- GPL-3.0 限制了公司在其产品中复用这些代码的方式。
- 凭据存入系统级存储(如 macOS Keychain、Windows 凭据管理器);SECURITY.md 明确否认明文存储密钥。
- 消息内容按请求处理,不为训练或长期存储而保留。
- skills 在有明确边界的沙箱中运行;维护者尽可能审查 skills 行为与依赖。
- 漏洞披露范围点名认证/授权绕过、数据外泄,以及前端、Tauri/Rust 后端、skills 运行时的远程代码执行,外加 npm 与 Cargo 依赖链。
- 报告走私密邮件、不开公开 issue;通常 5 个工作日内确认;对善意研究者声明了安全港。
替代方案比较
| 方案 | 适用场景 | 代价 |
|---|---|---|
Letta | 想要一个可自托管、可扩展的持久 Agent 记忆框架。 | 开源,自托管免费。 |
mem0 | 只需要一个可挂进自有 Agent 栈的专用记忆层,而非完整桌面大脑。 | 开源核心加付费云服务。 |
Khoj | 想要一个自托管个人助手,对你的笔记和文件建索引做搜索与对话。 | 开源,自托管免费。 |
AnythingLLM | 只想要更简单的本地文档桌面问答,不需要 Agent 舰队。 | 开源桌面应用。 |
云端助手(ChatGPT、Claude) | 接受服务端记忆,以换取零安装和打磨过的交互。 | 按月订阅。 |
这个趋势说明了什么
能跨越重启的本地记忆
差异化主张是“人生记忆存在你的机器上”,与 README 记忆图相呼应。若持久化与召回真能兑现,它就占据了云端助手因隐私而让出的位置。
构建应用,喂入一周的笔记,重启桌面进程,检查大脑还记得多少。
少见的学生贡献者通道
CONTRIBUTING-BEGINNERS.md、SUPPORT.md 分流、Discussions 处理文档、脚本生成的 release notes、覆盖五种语言的 i18n:check,都表明维护者要的是外部贡献而不只是星标。
从 README 里选一个语言(zh-CN、ja-JP、ko、de、ur-pk),运行 tsx scripts/i18n-coverage.ts,修掉最大的覆盖缺口。
skills 沙箱即信任边界
一切取决于第三方 skills 是否真被限制在沙箱内;SECURITY.md 的披露范围表明维护者把 skills 运行时的 RCE 视为灾难性失效模式。
阅读 app/src-tauri 下的沙箱实现,再运行一个尝试越界写文件系统的 skill,观察拒绝行为。
RepoDaily 判断
一个文档罕见完善的 Beta:GPL-3.0 的 Rust 桌面运行时,本地优先记忆、沙箱 skills、系统钥匙串存凭据,发布工程水平超过多数早期项目——但只有最新版与上一级次要版本收安全补丁,所以先把它当作可以研读与共建的机器,还不要当作人生数据的保险库。