仓库:github.com/tinyhumansa... License:GNU GPL v3 | 技术栈:Rust + TypeScript (Tauri v2) | 平台:Windows / macOS / Linux 官网:tinyhumans.ai/openhuman
这是什么
OpenHuman 是 tinyhumansai 团队做的一个桌面级个人 AI 助手,2026 年 5 月登上 GitHub Trending 第一。它不是聊天框加插件那种常见的 Agent 产品,而是一个完整的"个人 Agent 操作系统":有记忆、有编排、有研究能力、能参加会议、能管理消息渠道、能在 Agent 社交网络里跟别的 Agent 协作。
跟大多数 AI 助手不一样的地方在于,OpenHuman 的核心用 Rust 写的,跑在 Tauri v2 桌面框架上,不是 Electron 那套。数据全部存在本地,SQLite 加密存储,记忆系统还镜像成 Markdown 文件可以用 Obsidian 直接打开编辑。它对自己的定位是"第二大脑",不是"聊天机器人"。
解决什么痛点
痛点一:Agent 没有记忆
大多数 AI 助手每次对话都是全新的,不记得你昨天说了什么。你得反复交代背景,反复解释你是谁、你在做什么项目、你跟谁在合作。
OpenHuman 的解法是 Memory Tree:一个三级层次结构的记忆系统。你的邮件、聊天、文档、会议转写全部被摄取、分块、打分、提取实体,然后组织成一棵摘要树。Agent 回答问题时不只是做向量搜索,它可以在树上导航,从全局摘要一直钻取到原始分块。同样的数据还写成 Markdown 文件放进 wiki/ 目录,你可以用 Obsidian 打开浏览编辑,Agent 会看到你的修改。
痛点二:Agent 不会主动做事
你不开口,Agent 就不动。它不会帮你盯着邮箱,不会帮你跟进待办,不会在你睡觉的时候整理信息。
OpenHuman 的解法是 Subconscious Loop(潜意识循环)。一个后台心跳每 5 分钟跑一次,加载你的任务列表,读取工作区状态,用本地模型(Ollama)做评估,然后决定跳过、执行还是升级。只读任务用本地模型跑,写操作需要你明确要求过才行。如果 Agent 觉得需要做你没吩咐的写操作,会生成一个审批卡片等你确认。
还有一个晨报功能:Agent 每天早上根据你的时区生成一份简报,分 Highlights、Action items、Mentions、FYI 四个桶,安静的日子只显示一行"今天没什么急事"。
痛点三:冷启动问题
新对话的第一个问题,Agent 啥也不知道,得现查。你问"上周跟 Sarah 讨论的那个方案进展怎样了",它得先调一堆工具搜记忆、查日历、翻邮件,来回好几轮才回答。
OpenHuman 的解法是 SuperContext:每个新对话的第一轮,harness 自动派一个只读的 context_scout 子 Agent 去扫你的记忆树、工作区文件和已连接的集成。扫完的结果验证后直接拼在你的消息前面,orchestrator 模型看到的第一轮就已经有上下文了。scout 跑在 burst tier(便宜高吞吐模型)上,不耽误响应速度。
痛点四:隐私
云模型能看到你的所有数据。企业敏感信息、个人隐私通信,全走云端推理不放心。
OpenHuman 的解法是 Privacy Mode。不是 prompt 层面的"请勿泄露",是 Rust 核心代码里的硬门禁。开启 local_only 模式后,inference provider factory 直接拒绝构建任何云端 Provider,连 Claude Code 这类 CLI 代理也不行。只允许 Ollama、LM Studio、MLX、本地 OpenAI-compatible 端点。搭配内置的 Whisper 语音转文字和 Piper TTS,全程不出本机。
痛点五:Agent 之间不能协作
你的 Agent 活在你机器上,别的 Agent 活在别的机器上,互相不认识。
OpenHuman 的解法是 tiny.place:一个 Agent 社交网络和经济系统。你的 Agent 注册一个 @handle 身份,通过 Signal 协议端到端加密跟别的 Agent 通讯,用 x402 微支付 USDC/SOL 结算赏金和交易。Agent 可以接赏金任务、提交作品、获评审通过后收款,也可以发赏金找人干活。
架构设计

整体分层
OpenHuman 分五层,从上到下:
入口层:四种方式跟 Agent 交互。桌面 GUI(Tauri + React),17 个消息渠道(Telegram/Discord/Slack/WhatsApp/Signal/iMessage/Email 等),Meeting Agents(加入 Meet/Zoom/Teams/Webex 会议作为真实参与者),tiny.place Agent 经济(@handle 身份 + Signal A2A 通讯 + x402 USDC 支付)。
三大引擎层:
- Brain(记忆):Memory Tree + Obsidian Wiki 镜像
- Orchestrator(编排):tinyagents 图执行 + Sub-agent 三层层级
- Researcher(研究):SuperContext 零冷启动 + Web/Scraper/Browser/Voice 工具
Rust Core 层:Tauri v2 + Tokio 异步运行时,MCP JSON-RPC 工具协议,SQLite AES-256 加密存储,OS Keychain 凭据保护,rustls TLS 安全通信。Model Routing 按 hint 前缀自动选模型。TokenJuice 内容感知压缩对 JSON/Code/Log/Diff/HTML 各有专用压缩器。
子系统层:Workflows(可视化自动化)、Subconscious(后台心跳循环)、Skills(90k+ 技能库)、Approval Gate(写操作审批)、Privacy Mode(本地模式硬门禁)。
集成层:100+ OAuth 集成(Composio 托管),5000+ MCP 服务器,Auto-fetch 20 分钟同步,Local AI(Ollama/Whisper/Piper),Meeting(Recall 日历接入)。
Agent Harness:一个 turn 怎么跑
不管入口是用户消息、webhook 还是 cron tick,每个 turn 走同一条路径:
markdown
inbound(用户消息/频道消息/webhook/cron)
↓
trigger triage(小模型分类:丢弃 / 通知 / 生成反应器 / 生成 orchestrator)
↓
Agent::turn()
1. 恢复会话记录(如 fresh process,从磁盘重载 provider messages)
2. 构建系统 prompt(仅首轮,后续轮复用以保持 KV-cache 前缀有效)
3. 注入记忆上下文(Memory Tree 检索结果 + 引用来源)
4. 进入工具调用循环
5. 派发工具调用(工具执行 / sub-agent 生成)
6. 上下文守卫 / 压缩
7. stop-hook 检查(预算/迭代次数/自定义 kill switch)
8. 最终助手文本
↓
post-turn hooks(后台异步:archivist 记忆蒸馏 / learning / cost log / episodic memory indexing)
工具调用循环最多跑 10 轮(可配),每轮:context guard → stop-hook check → provider call → parse response → if no tool calls return → execute tool calls → summarize oversize → append results → loop。
几个有意思的设计:
系统 prompt 只在首轮构建。后续轮复用,因为任何字节级改动都会让推理后端的 KV-cache 前缀失效,迫使完整重新 prefill。动态上下文(记忆检索结果、新学到的片段)作为用户消息内容追加,不插进系统 prompt。
超大工具结果走 summarizer 捷径 。Composio action 返回 200KB JSON、web scrape 返回 50KB Markdown 这种,不走硬截断(会丢信息),而是路由到一个 summarizer 子 Agent 做提取式压缩,父 Agent 只看到压缩后的摘要。原始数据存在 CCR (Compress-Cache-Retrieve) 里,Agent 可以用 tokenjuice_retrieve 按需取回完整原文。
TokenJuice 按内容类型分压缩器 。JSON 走 SmartCrusher(数组对象变表格,保留错误行和数值异常行),Code 走 tree-sitter 签名保留器(折叠函数体),Log 走 100 条规则引擎(git/cargo/npm 命令输出),Diff 保留变更 hunk 折叠未变更上下文,HTML 去标签转可读文本。每种压缩器有损压缩后原始内容 offload 到 CCR store,Agent 用 ⟦tj:<hash>⟧ 标记按需取回。
Sub-agent 三层层级
OpenHuman 是多 Agent 系统。跟你聊天的是 Orchestrator(策略级),它决定什么时候自己答、什么时候用工具、什么时候派专家子 Agent。
三层层级:
| Tier | 可以 spawn | 不可以 spawn | 典型成员 |
|---|---|---|---|
| chat | reasoning, worker | 另一个 chat | orchestrator |
| reasoning | worker | 另一个 reasoning, 任何 chat | planner |
| worker | 无 | 任何 | researcher, code_executor, critic, archivist, tool_maker, integrations_agent |
为什么这么分:
- chat → chat 没意义:chat tier 存在是为了快速响应 UX,chat 生成 chat 只会翻倍首 token 延迟、白烧 token
- reasoning → reasoning 会爆深度:reasoning tier 贵,链式 reasoning 倾向于重复分解同一问题,造成失控层级
- worker → 任何东西会混淆执行和编排:worker 是叶子节点,父 Agent 只看到一个紧凑结果,不看到嵌套委派的记录
运行时还有 MAX_SPAWN_DEPTH = 3 硬上限,不管 TOML 怎么配,spawn 链深度不超过三层。
Subconscious Loop:后台思考
Subconscious 是 OpenHuman 区别于其他 Agent 产品的核心特性。它不是等用户发消息才工作,而是自己有一个心跳循环:
markdown
Heartbeat(每隔几分钟)
↓
Subconscious Engine
1. 加载到期任务
2. 标记为进行中
3. 构建情况报告(记忆 + 工作区)
4. 用本地模型评估每个任务
5. 执行决策(act / noop / escalate)
6. 写结果到活动日志
三种决策:
- Skip:现在没相关的事
- Act:发现相关的事,执行
- Escalate:需要更深的推理,交给云端 Agent
两种任务类型:系统任务(自动播种,不可删,比如"检查连接的 skills 有没有报错""检查新记忆有没有可执行项"),用户任务(UI 手动加,比如"检查紧急邮件""每天发摘要到 Slack")。
审批逻辑很精细:只有 Agent 想做你没明确要求过的写操作时才需要审批。你说"发摘要到 Slack"(写意图),Agent 发就发,不需要审批。你说"检查紧急邮件"(只读),Agent 检查就检查。但如果 Agent 检查完觉得该转发到团队群(你没要求的写操作),就得生成审批卡片等你确认。
Workflows:可视化自动化
Workflows 受 n8n 和 Zapier 启发,但有个关键区别:你不拖框,Agent 帮你画。
你在聊天里说"每当收到客户邮件就总结发到 Slack",Agent 用 propose_workflow 工具生成一个完整工作流图,聊天里出现一张 Workflow Proposal Card,用大白话写清每一步。你点 Save & enable 就跑起来了。
12 种节点类型:trigger(触发器)、agent(完整 Agent turn)、tool_call(工具调用)、http_request、code(JS/Python)、condition、switch、transform、split_out、merge、output_parser、sub_workflow。
四种触发器:Schedule(cron 定时)、App event(集成事件触发,比如新 Gmail 线程)、Manual(Run 按钮)、Resume(审批通过后继续)。
安全设计两条保证:
propose_workflow只验证和描述候选图,不能自己创建或启用 flow- 从 proposal 到保存的唯一路径是你点 Save & enable,直接调
flows_createRPC,不经过 Agent
Memory Tree 详解
Memory Tree 是 OpenHuman 最核心的差异化能力,值得单独拆开讲。

写入路径
每个连接的数据源走同一条流水线:
第 1 步:Ingest(摄取) 。新消息/邮件/文档到达后,热路径把它规范化成 Markdown,切成不超过 3000 token 的分块(确定性 ID,重跑不会产生重复),跑一次快速打分,原子写入 SQLite,标记为 pending_extraction,排入后台队列。这一步不做 LLM 调用,只跑便宜启发式。
第 2 步:Job Queue(后台队列) 。持久化在同一个 SQLite 里,每种 job 有自己的类型:extract_chunk(深度打分 + 实体提取,决定 admit 还是 drop)、append_buffer(加入 L0 缓冲区,可能触发密封)、seal(压缩 L0 成 L1 摘要,级联向上)、topic_route(路由到 per-entity topic 树)、digest_daily(构建全局每日摘要)、flush_stale(强制密封超时缓冲区)。3 个后台 worker 并发处理,共享信号量限制并发 LLM 调用。
第 3 步:Tree State(树状态) 。同一批叶子流构建三棵独立树:Source Tree(每个来源一棵,L0 缓冲区满后密封成 L1 摘要,级联向上)、Entity Index(实体提取后建 co-occurrence graph,不新建表,纯 SELF-JOIN)、Global Tree(每天一个节点,按层级聚合)。
第 4 步:Obsidian Wiki 镜像 。同样的数据写成 Markdown 文件放进 wiki/ 目录。你可以用 Obsidian 打开浏览编辑加链接,Agent 会看到你的编辑。这是受 Karpathy 的 obsidian-wiki 工作流启发。如果你哪天不用 OpenHuman 了,这个文件夹就是个完整的个人 wiki。
读取路径
Agent 通过一个叫 memory_tree 的多模式工具检索记忆,7 种模式:
| 模式 | 用途 |
|---|---|
search_entities |
模糊查找实体索引,把"Alice"解析成 person:alice |
query_source |
按来源 + 时间窗口检索摘要 |
drill_down |
从摘要节点 BFS 往下钻 |
cover_window |
找覆盖某时间段的最小节点集合("过去 24 小时发生了什么") |
fetch_leaves |
按 ID 批量取原始叶子块(最多 20 个) |
ingest_document |
写入文档到树里(唯一的写模式) |
walk / smart_walk |
确定性 E2GraphRAG 检索,不用 LLM,提取查询实体后在 co-occurrence graph 上路由 |
walk 模式值得一提:它不用 LLM,纯靠 spaCy NLP 提取查询实体,在 co-occurrence graph 上算跳数距离,然后做密集重排。一个自然语言问题进去,直接返回排序后的证据出来,不需要 Agent 多轮工具调用。
为什么用树不用向量数据库
向量数据库只能回答"跟这个 query 相似的是什么"。记忆需要回答更多:
- "今天发生了什么?"(全局摘要)
- "这个人最近怎样?"(topic 树,hotness 驱动)
- "上周二下午 3 点 Stripe webhook 说了什么?"(source 树 + 来源追踪)
树给你压缩和导航两个能力。embedding 藏在树里面做语义搜索,但上面的结构让记忆用起来像大脑,不像一堆碎片。
Auto-fetch
每 20 分钟同步一次已连接的服务。Agent 的记忆始终保持新鲜,你睡觉的时候它也在消化你的新邮件和新消息。触发方式:自动(定时调度器)、手动(Memory tab 里点 Run ingest)、RPC(openhuman.memory_tree_ingest)。
安装部署
系统要求
Windows / macOS / Linux 桌面。4GB+ 内存,如果要处理大邮箱或大仓库,或者跑本地模型,建议 16GB+。
macOS 安装
bash
brew tap tinyhumansai/core
brew install openhuman
Linux 安装(Debian/Ubuntu)
csharp
# 从 GitHub Releases 下载 .deb 包
# OpenHuman_<version>_amd64.deb 或 _arm64.deb
sudo apt-get install -y --no-install-recommends ./OpenHuman_<version>_amd64.deb
Windows 安装
从 GitHub Releases 下载 MSI 安装包双击运行。或者用 PowerShell 脚本:
ruby
irm https://raw.githubusercontent.com/tinyhumansai/openhuman/main/scripts/install.ps1 | iex
脚本安装(macOS / Linux)
ruby
curl -fsSL https://raw.githubusercontent.com/tinyhumansai/openhuman/main/scripts/install.sh | bash
在 Debian/Ubuntu 上这个脚本会优先找 .deb 包用 apt-get 装,自动处理依赖。设 OPENHUMAN_INSTALLER_LINUX_PACKAGE=appimage 强制走 AppImage。
权限
首次启动时 OS 会弹权限请求:macOS 要 Accessibility(无障碍)和 Input Monitoring(输入监控,用于语音热键),如果要开 Meeting Agent 还要 Camera/Microphone。可以在 Settings 里随时调整。
首次配置
- 下载安装后打开 App
- 登录(社交登录或 Advanced 面板指向自定义 core RPC URL,自建后端的用户用)
- 连接 Gmail(OAuth 授权,第一个 auto-fetch tick 会在 20 分钟内跑)
- 等 Gmail 摄取完成后试第一条消息:"过去 12 小时有什么我需要知道的?"
- 打开 Obsidian Vault:Memory tab 有 View vault in Obsidian 按钮,点击打开
<workspace>/wiki/目录
工作区路径
默认 ~/.openhuman,可以用 OPENHUMAN_WORKSPACE 环境变量改。里面有:
| 路径 | 内容 |
|---|---|
memory_tree/chunks.db |
分块、打分、摘要、实体索引、jobs、hotness |
wiki/ |
Obsidian 兼容的 Markdown vault |
agents/*.toml |
自定义 Agent archetype |
config.toml |
配置文件 |
.env |
环境变量 |
使用方法
对话模式
打开桌面 GUI,直接跟 Agent 聊。Agent 背后是 Memory Tree + SuperContext,你发消息之前它已经扫过你的记忆和文件了。
几个典型 prompt:
- "过去 12 小时有什么我需要知道的?"
- "有什么在等我的?"
- "总结一下我今天错过了什么。"
- "这周的关键决策有哪些?"
- "从邮件和聊天里提取行动项。"
- "Sarah 在邮件和聊天里分别说了什么关于这个项目的事?"
Workflows
聊天里说一句"每当收到客户邮件就总结发到 Slack",Agent 生成一个完整工作流图。你在画布上审核每一步,点 Save & enable 跑起来。
Workflows 页面 /flows 看所有 flow,每个有 enabled 开关、上次运行状态、Run 按钮。点进 /flows/:id 看只读画布视图。Run Inspector 抽屉展示每次运行的每一步:节点标签、输出、最终状态,每 2 秒刷新。
消息渠道
在 Connections -> Channels 里连接。17 个平台可选:
| 平台 | 凭据模式 | 特色 |
|---|---|---|
| Telegram | 托管或 BotFather token | 最全功能:打字指示器、草稿更新、内联审批 |
| Discord | 托管或 bot token / OAuth | 原生线程回复 |
| Web | 内置无需配置 | 本地富文本 |
| iMessage | 无需凭据(macOS) | AppleScript 桥接,需 Full Disk Access |
| Slack | bot token | 通过 OAuth 连接 |
| Meta Cloud webhook | access token | |
| IMAP IDLE + SMTP | 原生自建,无第三方代理 |
Email 渠道有个安全注意:allowed_senders 是入站安全门。config.toml 里空列表表示拒绝所有,但 Connections UI 里空白字段默认 ["*"] 允许所有发件人。如果你不想让陌生人通过邮件触发你的 Agent,别留空。
Meeting Agents
Intelligence -> Meetings 页面。粘一个 Meet/Zoom/Teams/Webex 链接,Agent 作为真实参与者加入:有名字、有脸(mascot 动画作为摄像头画面)、有声音(TTS 直接注入会议音频流)。
它能做的:
- 听到所有人说话(实时流式 STT,按说话人分轨,折叠进 Memory Tree)
- 被点名时回答("Ghosty,拉一下上季度的数据")
- 主动补充(如果觉得有有用信息可以加)
- 会议中调用工具(查记忆、翻 Slack、搜网页、读文件)
- 会后生成摘要和待办
日历自动加入:连一次 Google Calendar(只读 scope),Agent 看到你的日程可以自动加入会议。加入策略可配:每次问 / 总是 / 从不,可以按平台分(Zoom standup 自动加入,Teams 手动)。
唤醒词安全设计:只有配置的 call owner(或白名单里的人)能唤醒 Agent 进工具调用模式。非 owner 只能收到问候或礼貌拒绝。没配 owner 就永远不唤醒。
Subconscious 配置
Intelligence -> Subconscious 页面:
- Enable / disable:开关后台循环
- Tick interval:心跳间隔,默认 5 分钟(也是最小值)
- Inference:是否每 tick 用本地模型评估任务
- Context budget:情况报告的上下文预算
- Active Tasks:系统任务(只读,带 default 徽章)+ 你的任务(可开关删除)
- Approval Needed:待审批的琥珀色卡片
- Activity Log:每次评估的彩色点 + 结果
- Run Now:手动触发一次 tick
Skills 系统
90k+ 技能库,每个 skill 有 SKILL.md 元数据文件。跟 Hermes Agent 的 Skills 系统兼容。
/learn 命令让 Agent 自己生成 skill:粘一段笔记、给一个 URL、或口述一个流程,Agent 用标准 prompt 生成 skill 文件存到 ~/.hermes/skills/(或 OpenHuman 对应目录)。生成走的是 skill_manage 工具,如果开了 write-approval gate 还需要你确认。
Privacy Mode
Settings 里切换。三种模式:
| 模式 | 含义 |
|---|---|
| standard(默认) | 正常运行:云路由 + 自带 Provider + 本地模型都可用 |
| local_only | 不出一个字节推理到云端。Rust 核心拒绝构建任何外部 Provider。只允许 Ollama / LM Studio / MLX / 本地 OpenAI-compatible |
| sensitive | 为即将到来的 PII 感知层做准备(检测、脱敏、目标披露)。当前行为同 standard |
local_only 的检查在 src/openhuman/inference/provider/factory.rs,不在 prompt 层。代码里任何路径想访问云模型,在 local_only 模式下结构性地拿不到 client。
Model Routing
一个 OpenHuman 订阅,多个模型。不用单独配 Anthropic / OpenAI / Google 的 API key,后端代理访问,路由器按任务挑模型。
Hint 前缀路由:
| Hint | 典型目标 | 用途 |
|---|---|---|
hint:reasoning |
强推理模型 | 多步规划、数学、代码密集 turn |
hint:fast |
快速便宜模型 | UI 辅助、自动补全、小分类 |
hint:vision |
视觉模型 | 截图、图片附件、OCR |
hint:summarize |
压缩擅长模型 | Memory Tree 摘要构建 |
hint:code |
代码模型 | 编码 turn |
hint:burst |
高吞吐低成本模型 | SuperContext scout 预扫描 |
路由不是 UI 下拉菜单。Agent 循环本身根据要做什么发 hint。你不用选模型,任务自己选。
tiny.place:Agent 经济
Agent 不只活在你机器上,它还是 tiny.place 这个 Agent 社交网络的公民。
- 注册
@handle身份(付费、链上、可买卖可竞价) - 通过 Signal 协议 E2E 加密跟别的 Agent 通讯(身份密钥从钱包种子内存派生,不写磁盘)
- x402 微支付 USDC/SOL 结算赏金和交易(每笔支付带签名用途,可审计)
- 接赏金任务、提交作品、评审通过后收款
- 发赏金找人干活,支持 model-council 评审模式
- 身份和市场交易:浏览、购买、竞价、出价
Agent 间协作走 orchestration 层:paired Agent 之间通过 Signal DM 通讯,入站 session 走 split-brain wake graph(快速反射 Agent 秒级分类 + 深度推理核心做多步工作)。长 session 靠 20:1 历史压缩和 rolling world-state diff 保持有界。Subconscious 定期审查压缩历史和 world diff,注入 steering directive 保持对齐你的目标。
运用场景
场景一:个人助理
连接 Gmail + Slack + 日历 + Notion。每天早上 Agent 推晨报。你在桌面跟它聊"今天有什么会、跟谁、上次跟这人聊了什么"。Agent 从 Memory Tree 里捞记忆,SuperContext 已经预扫过了,第一轮就有答案。
场景二:会议参与者
Agent 加入你的 Google Meet standup。听所有人说话,被点名时回答"上周我们决定了什么"。会后自动生成摘要和行动项存进 Memory Tree。下次同一个项目的会议,它记得上次的承诺。
场景三:自动化工作流
"每当有客户邮件就总结发到 Slack #support 频道,紧急的标红色。"Agent 生成 Workflow 图,你审核后启用。每天 9 点 Agent 还会发一份摘要到你的 Telegram。如果 Agent 觉得某封邮件需要你回复(你没要求的写操作),会生成审批卡片。
场景四:隐私敏感场景
律师、医生、财务顾问。开 Privacy Mode local_only,用 Ollama 跑本地模型。所有推理不出本机。客户通信走 Email 渠道(IMAP IDLE + SMTP),不经过第三方代理。Memory Tree 加密存储在本地 SQLite。
场景五:Agent 间协作
你在做一个项目,需要一个研究 Agent 帮你查资料,但你的 OpenHuman Agent 擅长的是记忆和编排不擅长深度研究。你通过 tiny.place 发一个赏金任务,别的 OpenHuman 用户的 Agent 接单,完成后通过 Signal E2E 加密把结果传回来,x402 自动结算 USDC。
场景六:团队知识管理
团队每个人的 OpenHuman 连接相同的 Slack workspace 和 Notion space。各自的 Memory Tree 独立但有重叠。某天有人问"这个功能上次谁说要做来着",Agent 从 Memory Tree 搜到三条相关记忆(分别来自三个人的邮件/聊天/会议转写),带来源引用拼出完整答案。
跟 OpenClaw / Hermes 的对比
OpenHuman 被称为跟 OpenClaw、Hermes Agent 并行的利器。三者都是"个人 Agent"赛道的产品,但设计重心差别很大。
先说清楚三个项目的定位:
- OpenHuman:桌面级个人 Agent 操作系统,Rust 核心,强调 Memory Tree 和本地优先
- Hermes Agent(NousResearch):自我进化的个人 Agent,Python,强调 learning loop 和 Skills 自动生成
- OpenClaw(OpenClaw Foundation):个人 AI 助手,TypeScript,强调多渠道接入和插件生态。383k Star 的超热门项目
| 维度 | OpenHuman | Hermes Agent | OpenClaw |
|---|---|---|---|
| 核心定位 | 桌面级 Agent OS,记忆优先 | 自我进化的 Agent,learning loop 优先 | 多渠道个人助手,接入优先 |
| 技术栈 | Rust + TypeScript (Tauri v2) | Python | TypeScript (Node.js) |
| 协议 | GNU GPL v3 | MIT | MIT |
| 记忆系统 | Memory Tree 三级摘要树 + Obsidian Wiki 镜像 + 实体图 + 混合检索 | MEMORY.md 文件 + Skills 自动沉淀 + 跨会话搜索 | Memory 文件 + Builtin/QMD/Honcho 多引擎可插拔 + Dreaming 压缩 |
| 多 Agent | tinyagents 图执行 + Sub-agent 三层层级 + Workflows | Kanban 多 Profile 协作 + 任务板调度 | Multi-agent routing + Parallel specialist lanes + Delegate architecture |
| 消息渠道 | 17 个(Telegram/Discord/Slack/WhatsApp/Signal/iMessage/Email 等) | 5 个(Telegram/Discord/WhatsApp/Signal/Email) | 23+ 个(含 LINE/WeChat/QQ/Feishu/Matrix/IRC/Nostr 等区域和长尾平台,最全) |
| 会议能力 | Meet/Zoom/Teams/Webex 全平台,有脸有声音参与 | 无 | Google Meet 插件,可加入会议转写 |
| 工作流自动化 | tinyflows 可视化画布,12 种节点类型,Agent 生成 + 人类审批 | Cron + Automation Blueprints 模板 | Cron 定时 + Background Tasks + Task Flow 多步编排 + Hooks 事件钩子 + Standing Orders |
| 语音能力 | 原生 push-to-talk + TTS + 进程内 Whisper STT | 无原生语音 | Talk Mode(STT + TTS),14 种语音 |
| Agent 间通讯 | tiny.place 社交网络,Signal E2E 加密 A2A | Kanban 任务板(同机多 Profile) | agent-send + 社区 A2A 插件(win4r 等),协议层仍在完善 |
| Agent 经济 | tiny.place @handle 身份 + x402 USDC 赏金/交易 | 无 | 无 |
| 隐私模式 | Rust 核心硬门禁 local_only,拒绝所有云 Provider | 无硬门禁 | 无硬门禁 |
| 后台思考 | Subconscious Loop 心跳循环 + 晨报 | 无 | Heartbeat 灵活调度 + Inferred Commitments |
| 插件/技能生态 | 90k+ Skills + 5000+ MCP 服务器 | 72 内置 + 101 bundled + 85 社区 Skills | ClawHub 插件市场 + npm 插件 + Skills Workshop + Self-learning |
| 桌面体验 | Tauri 原生桌面 GUI + 吉祥物动画 | CLI 为主,Dashboard 可选 | Gateway 控制面板 + WebChat UI |
| GitHub Stars | ~12k | ~35k | ~383k |
各自的差异化
OpenHuman 胜在"全"和"深":Memory Tree 是三者里最结构化的记忆系统,不是简单的文件或向量搜索,是三级摘要树 + 实体图 + 混合检索。Meeting Agents 是独一份的,别的产品做不到有脸有声音参与会议。Rust 核心的 Privacy Mode 硬门禁也是独有的。短板是 GPL v3 限制融合,移动端缺失,项目年轻生态还在建设。
Hermes Agent 胜在"进化":learning loop 是真正的差异化。Agent 完成困难任务后自动生成 Skill,下次遇到类似任务直接用。Kanban 多 Profile 协作比较成熟。短板是没有会议能力,消息渠道少,没有可视化工作流,记忆系统是文件级不如 OpenHuman 结构化。
OpenClaw 胜在"接入"和"生态":23+ 个消息渠道是三者最全的,覆盖 LINE/WeChat/QQ/Feishu 这些亚洲市场。ClawHub 插件市场 + npm 生态让社区贡献很活跃,383k Star 不是白来的。Memory 系统走多引擎可插拔路线(Builtin/QMD/Honcho),Dreaming 压缩机制也独特。短板是没有 Agent 经济,Agent 间通讯还在社区插件阶段,没有 OpenHuman 那种结构化的 Memory Tree。
三者可以互补吗
协议层面:OpenClaw(MIT)和 Hermes(MIT)可以双向融合。OpenHuman(GPL v3)可以吸收 MIT 项目的代码,但反过来不行。
Skills 层面:Hermes 和 OpenHuman 的 Skills 系统兼容(都遵循 agentskills.io 标准),OpenClaw 的 Skills Workshop 也是类似格式,三方 Skills 理论上可以互转。
实际组合建议:
- 想要最强的记忆系统 + 会议能力:用 OpenHuman
- 想要最强的 learning loop + Kanban 调度:用 Hermes
- 想要最全的消息渠道 + 插件生态:用 OpenClaw
- 想要协议安全(Apache 2.0 项目融合):用 OpenClaw 或 Hermes,OpenHuman 不行
- 想要桌面体验 + 隐私硬门禁:用 OpenHuman
局限
- GPL v3 协议传染性:不能融入 Apache 2.0 / MIT 项目。
- 资源占用:Rust 核心内存控制还行,但跑本地模型(Ollama + Whisper + Piper)吃显存吃内存,16GB 是底线
- 移动端缺失:官方文档说 Android/iOS/Web 不支持当前版本,只有桌面
- 托管依赖:sign-in、model routing、managed OAuth、web search proxying 还是需要 OpenHuman 后端。想完全自建需要走 custom setup paths
- 学习曲线:Workflows 画布、Subconscious 任务配置、Skills 系统这些功能要花时间摸索
- 数据量敏感:大邮箱首次摄取很慢(几万封邮件),Memory Tree 摘要构建要时间
总结
OpenHuman 是目前个人 Agent 领域功能最全的产品之一。Rust 核心保证了性能和安全,Tauri 桌面框架避开了 Electron 的臃肿,Memory Tree + Obsidian Wiki 的组合让"Agent 的记忆"不再是黑箱。
它不是给开发者用的 CLI 工具,是给普通人用的桌面 Agent。你不需要懂编程就能用:装上、连 Gmail、跟它聊天、让它帮你开会、设几个 Workflow、开 Subconscious 让它盯着你的事。
如果你要在 Hermes 和 OpenHuman 之间选:Hermes 更轻、更开发者友好、learning loop 更成熟、MIT 协议更友好。OpenHuman 更全、更重、桌面体验更好、Memory Tree 更结构化、有 Agent 经济。两个都想要?Skills 系统兼容意味着可以部分混用,但完整融合受 GPL v3 限制。
如果用一句话总结:OpenHuman 想做你电脑上的 Agent 操作系统,不只是助手。