ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

OpenHuman 技术全景:基于 Rust + Tauri 的本地优先个人 AI 智能体架构实战指南

OpenHuman 技术全景:基于 Rust + Tauri 的本地优先个人 AI 智能体架构实战指南 OpenHuman 技术全景基于 Rust Tauri 的本地优先个人 AI 智能体架构实战指南【免费下载链接】openhumanOpenHuman is an open source personal AI for Mac, Windows and Linux — local-first memory, agent orchestration, and deep research.项目地址: https://gitcode.com/GitHub_Trending/op/openhuman导读本文以 gitbooks/README.md 的官方导览为骨架系统拆解 OpenHuman——一个面向 macOS / Windows / Linux 的开源个人 AIGPL-3.0——的完整技术架构。它同时是大脑持久、本地、可读的记忆、编排器持久化 agent 图、可视化工作流、子代理舰队与深度研究员在你问完问题之前就完成对个人数据与互联网的扫描。读完本文你将掌握 OpenHuman 的记忆流水线、智能体编排、Token 压缩、模型路由、工作流引擎、隐私强制机制与原生工具链的底层原理并能在 gitbooks 文档体系中按图索骥继续深入。为什么 OpenHuman 不是又一个聊天机器人文档开篇指出一个根本性问题世界上 200 模型共享同一个根本缺陷——无状态。你输入提示词、得到回复上下文随即蒸发即便带记忆的模型也只存几个要点而几个要点是便利贴不是智能。OpenHuman 的回应是刻意不同的一整套技术栈围绕三个定位构建A brain大脑一个持久、本地、可读的你的世界记忆A fantastic orchestrator编排器持久化 agent 图、可视化工作流、子代理舰队以及端到端加密的 agent-to-agent 会话A deep researcher深度研究员在你问完问题之前就完成数据与网络扫描。文档同时给出了一个冷静的边界声明OpenHuman 不是 AGI但在记忆、编排与工具化上它是向 AGI 迈出的有意义的架构性一步。这一声明对应 Cargo.toml 中license GPL-3.0-only的开源承诺——整个核心以 GNU GPL v3 授权。技术栈与工程形态Rust 核心 Tauri 外壳从仓库顶层结构看OpenHuman 是典型的Rust 核心 Web/Tauri 前端分层Rust 核心src/openhuman/下组织着 29 个领域模块agent、channels、config、cron、desktop、flows、hooks、inference、integrations、mcp、media、medulla、memory、modules、platform、runtime、sandbox、search、security、skills、threads、tools、util、voice、web3、web_chat等业务逻辑与 RPC 服务全部在此桌面外壳app/src-tauri/桌面与app/src-tauri-mobile/移动伴随端均为 Tauri 工程前端位于app/src/React TypeScript。Cargo.toml 的依赖声明揭示了架构的地基tinyflows 0.8可选宿主无关的工作流引擎类型化节点图 → 校验 → 编译 → 在 tinyagents 上运行支撑Workflows功能tinyflows-catalog/tinyflows-sqlite/tinyflows-copilot工作流模型flows / revisions / runs / drafts与 SQLite 存储后端、检查点、构建助手tinyagents-harness/tinyagents-graph均启用sqliteagent 主循环、工具、中间件与持久化状态图tinyagents-language.rag、tinyagents-registry能力/模型注册表、tinyagents-session持久化会话历史 运行台账tinyinference、tinytools推理与工具基元。主二进制openhuman-coreCargo.toml承载全部核心逻辑另有一个openhuman-fleet多实例管理二进制需要http-server特性。注释中明确写到26 domains 消费 tinyagents——图引擎是整个编排层的地基。本地优先记忆Memory Tree 流水线Memory Tree记忆树是 OpenHuman 的知识库文档强调它不是加了薄记忆层的向量数据库而是一条确定性、桶式封装的流水线把一天的混乱数据流聊天、邮件、文档、集成同步结果转化为结构化的、可查询的、摘要托底的 Markdown且全部留在本机。流水线各阶段source adapters (chat / email / document) ↓ canonicalize 规范化 Markdown 来源元数据 ↓ chunker 确定性 ID、≤3k-token 有界分段 ↓ content_store 磁盘上的原子 .md 文件正文 标签 ↓ store 持久化chunks、scores、summaries、jobs ↓ score 信号 embeddings 实体抽取 ↓ source / topic / global trees 按作用域构建摘要树 ↓ retrieval search / drill_down / topic / global / fetch热路径canonicalize → chunk → fast-score → persist → 入队后续任务很快因为这条路径上没有任何 LLM 调用只有廉价启发式重活embeddings、实体抽取、摘要桶封口、每日摘要全部交给后台 workerUI 永不阻塞。embeddings 与摘要树构建可经 Ollama完全在设备本地运行见 Local AI否则走 OpenHuman 后端。三棵树三种作用域Source trees来源树每个来源一个滚动缓冲L0满了就封口成 L1 → L2 → …。每个 Gmail 标签、每个 Slack 频道、每份上传文档各一棵Topic trees主题树按实体热度hotness惰性物化。一个人/项目/股票/仓库出现得越频繁其主题树被构建与刷新得越积极Global tree全局树跨当天所有摄入内容的一棵每日全局摘要。检索可指向任意作用域搜单个来源、下钻某个主题、拉全局摘要。磁盘布局在工作区默认~/.openhuman或OPENHUMAN_WORKSPACE指向的位置下路径内容memory_tree/chunks.dbchunks、scores、summaries、实体索引、jobs、热热度wiki/Markdown vaultObsidian Wiki一切都在本地除非你显式发送包含原始数据的聊天消息否则没有任何原始数据离开你的机器。队列、worker 与调度器摄入路径之后是持久化任务队列与 chunks 同库每种 job 携带 kind、payload、去重键、重试簿记与调度窗口Job Kind作用extract_chunk深度打分 实体抽取决定admittedvsdroppedappend_buffer把 admitted 叶子追加进 source/topic 树的 L0 缓冲可能触发封口seal把 L0 缓冲压缩成 L1 摘要父缓冲满则级联向上topic_route按热度门控把叶子路由进各实体主题树digest_daily构建全局每日摘要节点flush_stale强制封口滞留过久的缓冲后台默认3 个 worker取队列任务执行摄入路径会立即唤醒池子同时保留短轮询兜底避免错过唤醒导致任务搁浅。共享信号量限制并发 LLM 调用防止新来源爆发时扇出几十个并发 embeddings。启动时租约过期的 job 会退回队列——崩溃不会丢失已 admitted 但未封口的工作。调度器独立于摄入路径运行每天 00:00 UTC 入队昨日全局摘要与今日 stale-flush。它自己不跑摘要器一切经由队列让重试、去重、陈旧锁恢复集中化。每个 chunk 沿一个小型状态机推进pending_extraction -- admitted -- buffered -- sealed \ -- droppeddropped叶子停在原地其 chunk 行保留作 provenance但无任何缓冲或摘要引用它——这正是检索能展示 provenance 而无须重跑流水线的原因。触发摄入的三种方式自动每个活跃集成每 20 分钟自动抓取见 Auto-fetch手动桌面端 Intelligence 标签页提供每个来源的 Run ingestRPCopenhuman.memory_tree_ingest供高级工作流调用。桌面端 Intelligence 标签页底部导航栏进入。顶部是系统状态idle / ingesting / summarizing与 Run ingest 按钮下方是内存指标Storage、Sources、Chunks、Topics、First/latest memory、实体关系力导向图、可直接经obsidian://open?path...深链打开的 Obsidian vault、类似 GitHub 贡献图的摄入热力图以及支持 source/topic/global 作用域并回链到 vault 文件的搜索栏。此外还展示每个任务正在使用的模型路由信息。后端可替换流水线chunker → score → seal → summarise是默认后端。自托管 [agentmemory] 的多 agent 运维方可通过MemoryConfig.backend agentmemory接入外部持久化存储详见 agentmemory backend配置键、字段映射、端点表、安全与失败模式。可读记忆Obsidian 风格 Wiki与向量汤黑箱不同OpenHuman 把 agent 推理所用的同一批 chunk 以.md文件落到一个 vault 里你可以用 Obsidian 打开、浏览、手工编辑与链接。设计动机是文档中的一句话你不能信任一份你读不了记忆。该方案受 Karpathy 的 obsidian-wiki 工作流启发相关实现在src/openhuman/memory模块与wiki/目录。118 第三方集成与 Auto-fetchREADME 宣称 118 第三方集成Gmail、GitHub、Slack、Notion、Stripe、Calendar、Drive、Linear、Jira 等全部一键 OAuth 接入——无需手工接线 API key无需插件市场。这一能力由src/openhuman/integrations/领域支撑从源码结构看包含各连接的认证、同步与 trigger 适配层。Auto-fetch 机制每 20 分钟从每个活跃连接拉取新数据并折叠进 Memory Tree无需你开口agent 在清晨就已经拥有了明天的上下文。注意它与 TokenJuice 的分工下文auto-fetch 走自己的 canonicalization/chunking不经过 Token 压缩路由。智能体编排Agent Harness 与 OrchestratorThe Orchestrator 一文明确大多数 harness 在一个循环里跑一个 agent而 OpenHuman 是编排器——跨长周期、跨机器协调许多 agent 的栈且做到持久、可观测、受控。四个层次使其落地1. 图而非循环每一次 agent 回合都跑在 tinyagents 图引擎上。多步工作编译为带条件路由的状态机图委派用plan → execute ⇄ review → finalize多 agent 工作流用阶段 DAG并行 worker 用 map-reduce 扇出。所有图都有持久化检查点图可在运行中暂停等你的答复、等审批、等重启并精确恢复。这正是 Cargo.toml 中tinyagents-harnessagent 循环、工具、中间件与tinyagents-graph持久化状态图均启用sqlite特性的职责。2. 不会走丢的子代理舰队编排器可孵化专业子代理最深 3 层复用兼容的空闲 worker 而非重新孵化并把每个代理路由到合适的模型层核心用重推理低上下文 worker 用快速burst tier。可靠性是结构性的无进展断路器拦截相同调用循环交回根因摘要而不是无限重试卡住的孩子交回一个question暂停 等你答复后恢复或Incomplete根因摘要绝不以沉默结束分类的工具失败渲染为可操作的时间线卡片可重放的运行日志带每次调用的 token 与成本核算。开发者深潜见 Agent Harness。3. 看得见的工作流Workflows 把编排从聊天中抬出来agent 提出一个类型化图触发器、agent、工具、条件你在画布上审阅并保存。运行持久、可审批、逐步可检查由开源 tinyflows 引擎驱动详见下文 Workflows 一节。4. 常开的分裂大脑Split Brain入站流量先命中快速反射 agent秒级分流把简明简报交给深度推理核心做多步工作并委派给 worker潜意识循环subconscious loop审查压缩后的会话历史并注入方向性指令让常开层与你的目标对齐20:1 压缩让持续一周的会话保持有界。编排器的下一步方向是 Rhai-backed 语言工作流RLM把编排表达为沙箱 REPL 里的小程序让控制流本身成为模型可写、可查、可修的对象。TokenJuice智能 Token 压缩LLM token 昂贵而冗长的工具输出是最大黑洞繁忙仓库里的git status、cargo build日志、600 封邮件的线程、真实集群上的docker ps -a。TokenJuice 是一个接在 agent 工具执行路径上的压缩路由器任何工具结果进入模型之前先被分类、路由到专用压缩器、必要时把完整原文卸载到可恢复缓存并记录节省的 token与美元。它源自 vincentkoc/tokenjuice 的移植其 JSON 规则层仍作为 log/command 压缩器保留但已长成多阶段、内容感知的流水线。七步流水线raw tool result ↓ 1. Size gate router 启用? 输入 ≥ min_bytes_to_compress (2 KB)? ↓ 2. Detect kind Json · Diff · Html · Search · Code · Log · PlainText ↓ 3. Select compressor 每类一个专用压缩器 按类开关 ↓ 4. Compress 运行若拒绝或输出变大则回退 / 直通 ↓ 5. CCR eligibility lossy 且 ≥ ccr_min_tokens(≈500)? → 原文卸载到缓存 ↓ 6. Append marker 追加 ⟦tj:hash⟧ 页脚供 agent 取回完整原文 ↓ 7. Record savings 按模型、按压缩器记录 token 与成本节省 ↓ compact text → LLM context各步要点Size gate默认min_bytes_to_compress 2048字节低于则直通小输出不值得压缩内容检测分类为七种ContentKind优先级为 显式 hint → MIME/扩展名 → 每工具先验如grep→Search、git_operations→Diff、run_tests→Log→ 廉价结构启发式JSON → Diff → HTML → Search → Code → Log → PlainText热路径上无正则压缩器选择按类路由尊重按类开关search_enabled、code_enabled、html_enabled、ml_compression_enabled压缩若压缩器拒绝或输出不小于输入回退到通用压缩器或直通绝不让内容变大CCR 卸载有损压缩且原文够大ccr_min_tokens默认约 500 token时完整原文存入 Compress-Cache-Retrieve 存储恢复标记页脚携带⟦tj:hash⟧告知 agent 这是部分视图以及如何取回其余部分节省核算按模型与压缩器归因记录 token 与估算成本节省。压缩器全家桶压缩器类型行为SmartCrusherJSON把对象数组重渲染为紧凑表格超过约 40 行保留 head tail 错误行 数值离群点CodeCode保留签名与 import深度函数体折叠为{ … N lines … }有 tree-sitter 用 tree-sitter否则花括号深度启发式保留TODO/FIXME/error/panic/unsafe标记LogLog命令输出委托给 JSON 规则引擎其他日志保留错误/警告/栈/摘要丢弃噪声SearchSearch把 grep/ripgrep 的path:line:body命中按文件分组按查询词密度排序每文件保留顶部命中并统计[N more]DiffDiff保留变更行与 hunk 头折叠长不变区段lockfile hunk 收缩为一行A/-B摘要HtmlHTML剥标记为可读文本带合理块边界换行与实体解码低分配、无 DOMMlTextPlainText可选 ML 显著性压缩Generic兜底无规则命中的命令输出的 head/tail 摘要器结构化 blob 直接拒绝以保真多字节文本CJK、emoji、组合符号全程按 grapheme 处理绝不从字符中间截断。有损但不丢失CCR 缓存与检索有损压缩通常意味着丢数据。TokenJuice 改为把完整原文卸载到 CCR 存储并留下面包屑内存层常开进程级存储按 SHA-256 哈希键控受条目数max_cache_entries默认 256与总字节max_cache_bytes默认 64 MiB约束FIFO 淘汰磁盘层可选workspace/.tokenjuice/ccr/用ccr_disk_enabled开启可经受内存淘汰可选 TTLccr_ttl_secs检索工具agent 调用只读的tokenjuice_retrieve工具携带该 token可选 byte/linerange取回完整原文或切片token 是不可猜测的 SHA-256 摘要。于是 agent 默认拿到廉价压缩视图只在真正需要时透明地放大全文。ML 压缩可选超出确定性压缩器TokenJuice 可把纯文本路由给ModernBERTtoken 显著性模型给低信息 span 打分并丢弃。实现桥接在src/openhuman/inference/tokenjuice/ml/作为共享 Python 运行时 sidecar 的kompress后端本地运行数据不出机器。默认关闭ml_compression_enabled true开启可调参数包括ml_model_id默认answerdotai/ModernBERT-base、ml_target_ratio默认 0.5、ml_max_input_chars默认 200000、ml_devicecpu/auto、ml_sidecar_idle_timeout_secssidecar 不可用或输入超限时优雅降级到原生压缩器绝不挂掉 agent 循环。节省追踪与规则覆盖每个压缩事件都由 OpenHuman 节省回调计量src/openhuman/inference/tokenjuice/savings.rs应用每模型输入定价聚合total、by_model、by_compressor持久化到workspace/state/tokenjuice_savings.json经 RPCopenhuman.tokenjuice_savings_stats读取、openhuman.tokenjuice_savings_reset清零。命令与日志压缩仍由最初的三层 JSON 规则覆盖驱动规则按序合并、后者覆盖前者层路径用途Builtin随二进制内置约 96 条 vendored 规则git、npm、cargo、docker、kubectl、ls…User~/.config/tokenjuice/rules/个人覆盖全局生效Project.tokenjuice/rules/仓库级覆盖可签入与团队共享每条规则命名一个命令/工具模式与一种缩减策略skip/keep 过滤器、strip-ANSI 与去重等变换、head/tail 摘要、命名计数器、预置消息。规则是 JSON加一条即生效无需重新编译。配置与调试一切归于[tokenjuice]配置块src/openhuman/config/schema/tokenjuice.rs且可热更新主开关router_enabled默认 true阈值min_bytes_to_compress、ccr_min_tokensCCR 相关ccr_enabled、ccr_disk_enabled、max_cache_entries、max_cache_bytes、ccr_ttl_secs按类search_enabled、code_enabled、html_enabled及ml_*键。RPC 面为openhuman.tokenjuice_*detect、compress试运行整条流水线、settings_get/settings_update实时局部补丁、cache_stats、retrieve、savings_stats、savings_reset。调试时用RUST_LOGopenhuman_core::openhuman::inference::tokenjuicedebug启动核心观察检测、匹配与每次裁剪量。范围说明TokenJuice 作用于 agent 的工具结果不作用于后台 auto-fetch 摄入流水线20 分钟同步有自己的 canonicalization 与 chunking。自动模型路由让任务选择模型不同环节需要不同模型长推理要前沿模型改个错字要快而便宜视觉要视觉模型。OpenHuman 内置路由器 provider任何聊天调用的 model 参数可有两种形态具体模型名如anthropic/claude-sonnet-4路由到默认 provider 的该精确模型Hint 前缀如hint:reasoning在路由表查表解析为(provider, model)对。路由器的解析逻辑src/openhuman/providers/router.rs本质是剥掉hint:前缀查表命中返回对应(provider, model)否则回落到默认索引 原模型名。路由器包住若干预建 providerAnthropic、OpenAI、Google、Groq 等并按请求挑选hint 映射可在运行期重映射无需重启核心。常用 HintHint典型目标用途hint:reasoning强推理模型多步规划、数学、代码密集回合hint:fast快/便宜模型UI 助手、自动补全、小分类调用hint:vision视觉模型截图、图片附件、OCRhint:summarize擅长压缩的模型记忆树摘要构建hint:code代码调优模型原生 coder 回合hint:burst高吞吐低成本模型高扇出 agent 的廉价、延迟容忍工作映射可配置默认给出合理的按 provider 路由。一个订阅 vs 自带 Key默认所有路由发生在一个 OpenHuman 订阅之后你不必分别持有 Anthropic、OpenAI、Google 等的 API key后端代理接入路由器按任务挑选。但订阅只是默认而非必须同一路由器同样服务于你自己的 provider key或完全本地模型且三种方式可按负载混用详见 Local models bring your own key。覆盖路由与每-agent 模型钉住全局启动时在配置 TOMLConfig结构src/openhuman/config/schema/types.rs提供自定义路由表每次调用传具体模型名不带hint:前缀路由器落到默认 providerSkillskill 清单可钉住 hint 或模型。子代理也可钉住精确模型而不关闭全局自动路由一次性委派用内联字段{ agent_id: researcher, model: anthropic/claude-sonnet-4, prompt: ... }持久默认写入config.toml[orchestrator] model anthropic/claude-sonnet-4 [teams.research] lead_model openai/gpt-5.1 agent_model groq/llama-3.1-8b-instant [teams.code] agent_model qwen/qwen3-coder解析顺序① 委派调用上的内联model→ ②[orchestrator].model或[teams.team]/内置别名 → ③ archetype 自身模型 hint 与常规路由表。[teams.*]中lead_model用于可委派的 agentagent_model用于叶子 worker只设一个则两种角色都回退到它。关键点路由不是 UI 下拉框而是agent 循环自身根据即将执行的动作发出 hint。不是多模型而是智能路由——模型由任务选择。Workflows可视化、持久化的自动化聊天适合一次性请求Workflows 处理每次都要做的事分流每封新支持邮件、归档每个提到你团队的 Linear ticket、每周一 9 点发摘要。一个 workflow 是保存的、类型化的步骤图在画布上可见、无需你在场即可运行由开源 tinyflows 引擎与全套信任/审批机制背书。与 n8n、Zapier 的区别图不是你来拖的是 agent 搭的。Agent 构建你审批在聊天中描述自动化如每当有新客户邮件总结并贴到我的 Slackagent 用propose_workflow工具起草完整工作流图以Workflow Proposal Card形式给出每步的平实英文摘要。两条设计保证使其安全propose_workflow只校验与描述候选图它自己永远不能创建或启用flow从提案到新保存 flow 的唯一路径是你点击卡片上的Save enable它直接从 app 调用flows_createRPC而非从 agent 发出。一个刻意保留的例外当你发起构建Workflows 页的提示栏先建 flow 再打开 copilot构建 agent 可用save_workflow工具在沙箱试运行后把图写到那个已存在的 flow 上——它仍不能自建 flow、不能启用/禁用、不能改审批门且真实测试运行永远需要你先显式确认。图的构成一个 workflow 图由15 种节点类型组成恰好一个trigger加任意组合的agent带工具的完整 agent 回合、tool_call、http_request、codeJavaScript 或 Python、condition、switch、transform、split_out、merge、output_parser、sub_workflow、memory、dedup、loop。图通常是直线或扇出但也可含有界循环loop节点经body端口发射直到max_iterations上限或可选condition叫停再从done发射用 body 末节点接回loop节点闭合循环。上限永远有限on_exceeded决定触顶意义error让运行失败并点名该循环continue停止循环并把最后一轮条目经done带出。当前在线的触发器类型Schedulecron 支撑按计划触发每次 app 启动时重新注册自身App event来自已连接集成的实时 trigger新 Gmail 线程、Notion 变更、Linear ticket按 toolkit trigger slug 匹配ManualWorkflows 页的 Run 按钮或flows_runRPCResume继续在审批门暂停的运行。每个 flow 有派发锁保证调度突发绝不同时跑同一 flow 两次。信任、审批与人机协同每次 flow 运行都在专用信任源TrustedAutomation → Workflow下执行flow 的动作调用哪些工具、命中哪些 URL是你保存时审批过的静态图配置运行时 trigger payloadwebhook 体、入站事件保持不可信——它能向预声明动作喂参数但永远不能引入新动作。每个 flow 还有Require approval for outbound actions开关开启后运行中每个外部副作用工具或 HTTP 调用都会停在 审批门 等待真实决策运行信任根不自动放行任何东西。运行暂停时你会在通知中收到Flow Approval Card点名 flow 与待决步骤批准后经flows_resume精确恢复。运行是持久且带检查点的晚点再说完全可行。观察与开发者 RPC/flowsWorkflows 中心显示每个 flow 的启用开关、上次运行状态completed/pending approval/failed与 Run 按钮/flows/:id只读画布视图节点 边让你看到自己审批过的确切内容Run Inspector抽屉式逐步回放节点标签、输出、最终状态每 2 秒轮询直至运行结束每个 flow 持久化完整运行历史状态、起止时间、待决审批、错误、逐步重构输出。开发者侧flows域src/openhuman/flows/暴露十个控制器openhuman.flows_create、get、list、update、delete、set_enabled、run、resume、list_runs、get_run。flow 运行与 tinyagents 执行栈共享见 Agent Harness。开箱即用的原生工具链README 强调Batteries included完整的 agent 工具带默认接线无装插件才能读文件的摩擦对应src/openhuman/tools/域Web Search原生网络搜索见 web-searchWeb-fetch / Scraper抓取并结构化网页web-scraperCoder 工具集文件系统、git、lint、test、grep 的完整开发工具coder浏览器与电脑控制见 browser-and-computerCron 与调度一次性与周期性 agent 任务cronMemory 工具直接读写记忆memory-toolsAgent 协调孵化子代理的 spawn/delegate 表面agent-coordination原生语音src/openhuman/voice/STT 进、TTS 出、mascot 口型同步以及可加入 Google Meet 会议、把会议转写进 Memory Tree、还能开口说话的实时 agent。完整目录见 native-tools。Privacy Mode在 Rust 核心强制执行的隐私大多数助手的隐私故事只是 system prompt 里的一段话。OpenHuman 的隐私是Rust 核心里的一个强制咽喉点。[privacy]配置块定义三种模式模式含义standard默认常规操作托管云路由、BYO provider、本地模型均可用local_only推理不出设备每个外部聊天 provider托管云、BYO 云 key乃至 Claude Code 等 CLI 委托在构造时即被拒绝只有本地运行时通过Ollama、LM Studio、MLX、本地 OpenAI 兼容端点sensitive面向即将到来的 PII 感知层检测、脱敏、目的地披露的基础目前行为等同standard强制之所以重要是因为检查点在推理 provider 工厂src/openhuman/inference/provider/factory.rslocal_only下核心拒绝构建任何外部 provider错误信息点名被拦截的 provider 并给出修复指引换本地模型或在设置中改模式。这使保证独立于提示词、agent、工具或上游 bug——本地模式下任何代码路径想触达云模型结构上都拿不到 client。隐私模式管辖数据出站与自治层级readonly / supervised / full见 privacy-and-security正交——你可以运行一个完全自主、却一字节推理都不出设备的 agent。配合本地 AI 栈local-ai经Ollama / LM Studio / MLX的聊天与推理设置里下载模型进程内 Whisper语音转文字tiny → large-v3-turbo一键安装无外部二进制、无云 STTPiper文本转语音同样一键安装记忆树检索的本地 embeddings。完整本地化设置见 local-model 指南更广的隐私演练见 privacy-sensitive-data。凭据存放于 OS Keyring 与秘密存储os-keyring-and-secret-storage。UI-first 桌面体验与 MascotSimple, UI-first干净的桌面体验与短 onboarding 路径从安装到可用的 agent 只需几次点击——无配置优先、无需终端。文档特别提到 agent 有一张脸Mascot一个会说话、对环境作出反应、以真实参与者身份加入会议、跨周记住你、即使你停止打字也在后台继续思考的桌面吉祥物。对应实现位于app/src/mascot/与 Rust 侧src/openhuman/media/含 tiny_mascot.riv 动画资产及语音链路。开发与延伸阅读对开发者gitbooks/developing 提供从环境搭建getting-set-up、Rust 核心构建building-rust-core、测试策略testing-strategy与 E2Ee2e-testing到发布策略release-policy的完整路径architecture 一章则按 Agent Harness、Flows on TinyAgents、Memory Tree、MCP Registry对应src/openhuman/mcp/与 MCP 生态、Security对应src/openhuman/security/、Frontend 与 Tauri Shell 逐模块深潜。仓库根目录的tests/与scripts/下另有大量 E2E 与工具脚本可供验证上述行为。总结把 README 的诸条线索收拢起来OpenHuman 的技术画像是一套罕见的组合确定性的本地记忆流水线Memory Tree Obsidian vault消解了大模型的无状态缺陷tinyagents 图引擎 tinyflows 工作流让长周期、多代理、可审批的编排结构性地可靠TokenJuice 压缩 自动模型路由让大规模个人数据处理成本可控Rust 核心强制隐私模式让本地优先从口号变成不可绕过的实现约束。这套架构的价值不在于任何单一组件而在于它们共享同一本地优先、可读、可审计的地基——这正是个人 AI 超级智能定位的工程支撑。【免费下载链接】openhumanOpenHuman is an open source personal AI for Mac, Windows and Linux — local-first memory, agent orchestration, and deep research.项目地址: https://gitcode.com/GitHub_Trending/op/openhuman创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表