AlphaSignal 发布了一份万字级 OpenHuman 深度解读。这个开源桌面 Agent 在 GitHub Trending 连续 7 天 #1,Product Hunt 日/周/月榜三冠,3 个月内从 0 到 20k+ stars。
起源故事
创始人给父亲搭建开源 AI Agent,3 小时折腾 API key、YAML、终端后双双放弃。OpenHuman 由此诞生。
"Every powerful AI agent today is built for the 0.01% who can spin up their own runtime. The other 99.99% are watching the agent revolution from the sidelines."
一句话定位
大多数 Agent 冷启动。OpenHuman 每 20 分钟 walk 你的工具,把记忆写入可打开编辑的 Markdown 文件。
技术栈
- Rust(65.2% 代码库)
- TypeScript + React 19 前端
- Tauri v2 打包为原生桌面应用
- 平台:macOS、Windows、Linux(无移动端)
- 协议:GPL-3.0
开箱即用的五大功能
- 桌面 UI + 吉祥物:可说话、反应、加入 Google Meet 作为真实参与者
- 118+ Composio 工具包:一键 OAuth 集成
- Memory Tree + Obsidian 兼容 Markdown vault:本地知识库
- 原生工具:web search、web-fetch scraper、完整 coder 工具集、原生语音
- TokenJuice:工具结果进入 LLM 前的 token 压缩层
Memory Tree:核心创新
不是向量存储包装器,而是确定性的 bucket-sealed pipeline。
数据流:
- 数据规范化为 Markdown
- 拆分为 ≤3,000 token chunks,带确定性 ID
- 评分后折叠进三棵树:
- Source tree:每个来源一棵(L0→L1→L2 级联)
- Topic tree:每个高热度实体一棵
- Global tree:每个 UTC 日一个节点
存储布局:
~/.openhuman/
├── memory_tree/
│ └── chunks.db # SQLite:chunks、scores、summaries、entity index
└── wiki/ # Obsidian 兼容的 Markdown vault
关键点:vault 可打开、可编辑。你在 Obsidian 里改错一行,下次检索就是正确的。
后台机制:
- 3 个 background workers,semaphore 控制
- 每日 00:00 UTC 调度 global digest 和 stale-flush
- 每 20 分钟全局 tick walk 所有活跃连接
TokenJuice:压缩层
Rust 移植的 vincentkoc/tokenjuice,在工具执行路径中运行。每份工具结果进入 LLM 前经过规则叠加:
- Builtin 规则:git、npm、cargo、docker、kubectl、ls 默认值
- User 规则:
~/.config/tokenjuice/rules/ - Project 规则:
.tokenjuice/rules/
处理:HTML→Markdown、长 URL 缩短、CJK 和 emoji 按 grapheme 保留。
效果:宣称最高 80% 成本/延迟降低,PrimeAIcenter 实测约 70%。
模型路由
一个订阅对接 30+ provider。Agent loop 按任务发 hint,router 解析:
| Hint | 用途 |
|---|---|
hint:reasoning | 强推理模型 |
hint:fast | 快/便宜模型 |
hint:vision | 视觉能力模型 |
hint:summarize | 压缩模型 |
hint:code | 代码调优模型 |
轻量 hint(reaction、classify、sentiment)优先本地模型。重型 hint 走云端。任务选模型,不是用户选。
Local AI 模式
两个 flag 开启:
- 默认 embedding:
all-minilm:latest(~23 MB) - 默认 summary-tree:
gemma3:1b-it-qat(~700 MB)
Heartbeat、learning、subconscious 可本地运行。Chat、vision、STT、TTS、web search 保持云端。
"Local-first" 指记忆层本地,非全栈本地。
Google Meet Agent
吉祥物通过嵌入式 CEF webview 加入 Google Meet 作为真实参与者:
- Listen:入站音频经 STT,按 speaker diarized,实时进入 Memory Tree
- Speak:回复作为出站 mic feed 流入通话
- Animate:吉祥物 canvas 作为出站摄像头,lip-sync 到 TTS 音频
- Use tools:记忆召回、auto-fetch、原生工具、subconscious 输出,会议中随时可用
v0.54.0 新增完全本地 STT/TTS(Whisper + Piper),此前需 ElevenLabs 云端。
Subconscious Loop
后台 tick(默认 5 分钟,最小 5 分钟):
- 加载到期任务
- 从记忆 + workspace 状态构建 situation report
- 返回三种决策之一:
- Skip:当前无相关事项
- Act:执行任务
- Escalate:移交云端 Agent
用户要求的写任务无需审批。主动写操作需 approval card。
v0.54.0 重大更新
- 完全本地语音:Whisper STT + Piper TTS
- AgentMemory 后端桥接:与 Claude Code、Cursor、Codex、OpenCode 共享 durable store
- MCP stdio memory server
- NotebookLM 风格文件夹 ingestion
- Crypto Agent:钱包和市场操作
- Cursor Cloud Agents 并行工作流
- Discord webview transcript ingestion
- WeChat 嵌入式 webview
- LM Studio 本地 provider 支持
- 9 语言 i18n(新增意大利语、印尼语)
三方对比
| OpenHuman | Hermes Agent | OpenClaw | |
|---|---|---|---|
| 定位 | 桌面 Agent,walk 工具写记忆 | 服务端自进化 Agent | 多通道消息网关 |
| 核心 | Memory Tree + Obsidian vault | 自改进学习循环 | 20+ 消息平台 |
| 协议 | GPL-3.0 | MIT | MIT |
| 技术栈 | Rust + Tauri | Python | TypeScript |
| Stars | 20k+ | 157k+ | 373k+ |
| CVE | 0 | 3 | 138+ |
| 适合 | 想快速连接邮件/日历/Slack/Notion 的桌面用户 | 长时自主工作流 | 跨消息平台调度 |
快速启动
curl -fsSL https://openhuman.ai/install | bash
单命令安装 macOS/Linux。
核心 takeaway
OpenHuman 的赌注是结构化本地记忆击败 embedding-bag 检索——当你需要 Agent 导航你的日程、理解你的项目上下文时,Memory Tree 的确定性级联比向量搜索更可靠。它的真正创新不是更多工具或更聪明的规划,而是"在你开口之前就已经了解你"。
对普通用户来说,这是"给 99.99% 的人用的 Agent"——开箱即用、桌面原生、记忆可编辑。对开发者来说,Rust 技术栈和 GPL-3.0 协议是进入门槛。对 OpenClaw/Hermes 用户来说,Memory Tree 的设计哲学值得借鉴——尤其是"walk before prompt"和"Markdown as source of truth"的理念。