核心问题: 一份可读可改的共享记忆,是否值得让你把 Claude Code 和 Codex 搬进同一个桌面工作区?
RepoDaily 采用评分
RepoDaily 将该项目的采用分评为 92/100(强):分数来自文章来源、安装路径、生产风险、差异化、许可证清晰度以及 AI/Agent 适配度。
包含 6 个来源、覆盖 4 类来源;如有 RepoDaily 独有模块,会进一步提高证据分。
检测到 6 个工作流步骤、6 个下一步动作,以及 2 个命令/安装信号。
趋势热度为 +769 stars;如内容中有 release、issue 或维护信号,会提高维护可信度。
采纳风险标记为 medium,并包含 7 条安全说明与 4 条跳过条件。
3 个机会视角、4 个替代方案,以及 5 个类型化模块支撑差异化判断。
文章中包含许可证来源或许可证表述。
文章正文和元数据中检测到 9 个 AI/Agent 相关信号。
项目概览
holaOS 把自己定位为『给你和你的 agent 用的电脑』:一个本地优先的 Electron 桌面工作区,Claude Code、Codex 和内置的 holaOS agent 在同一界面并行运行,共享同一套工具、文件和一份共享记忆。核心卖点是 agent 可替换——无论哪个 agent 驱动会话,都继承同样的记忆、工具、技能和应用,切换运行时不需要重搭环境。模型可选用内置前沿模型,也可以自带 key。平台覆盖 macOS(Apple Silicon 与 Intel)、Windows 和 Linux。
2026-08-15 当天它以 769 颗星排在 GitHub 趋势榜第 7,README 里挂着 Trendshift 日榜徽章和 ci.yml 的 CI 徽章。与聊天式桌面应用的区别在记忆模型:上下文、偏好和项目历史存放在一份共享记忆里,以本地明文文件保存,可直接阅读和编辑——README 的说法是『Never start from zero』。仓库描述还标注了 100+ 集成与 MCP 支持,覆盖工具、应用、浏览器和文件。
真正的取舍写在 LICENSE 和仓库结构里,而不是功能清单上。holaOS 采用修改版 Apache 2.0:单个组织内部使用(包括多个工作区)不需要商业授权,但把它作为托管服务提供、或嵌入对外销售的产品,除非 Holaboss 书面授权,必须取得商业许可。代码是 Bun + Turborepo 的 monorepo(包名 hola-boss-oss,锁定 [email protected],private:true),运行时层拆成四个命名包——是一套真实架构,而非某家厂商 API 的壳。
为什么现在变热
- 2026-08-15 单日 769 星、GitHub 趋势榜第 7,README 内嵌 Trendshift 日榜徽章。
- Agent 中立定位:README 开篇即是 Claude Code、Codex、holaOS 同处一个工作区,『no lock-in』是头条卖点。
- 共享记忆以本地明文文件存储,可读、可改、跨重启与换 agent 持久,正中可迁移性痛点。
- 仓库描述标注 100+ 集成加 MCP,一个桌面应用承载全部 agent 的连接层。
- TypeScript + Electron 正是 agent 工具开发者的主战场;ci.yml 的 CI 徽章说明每次推送都有自动检查。
解决什么问题
- 每个 agent 各自维护上下文,从 Claude Code 换到 Codex 就要重新解释项目、重新授权工具。
- 存在厂商云端的记忆无法审计、无法手工修改,换 agent 时也带不走。
- MCP 服务器、文件访问、浏览器工具通常按 agent 各配一遍,同一集成要接两次。
- 终端 agent 缺少应用与文件的共享界面,桌面聊天应用缺少 agent 运行时,两个世界一直没打通。
工作原理
- 在 macOS(Apple Silicon 或 Intel)、Windows、Linux 上安装 Electron 桌面应用,或用 Bun 从源码构建。
- 选择模型来源:内置前沿模型,或自带 API key(BYOK)。
- 在工作区内启动 agent——Claude Code、Codex 或内置 holaOS agent,共用同一记忆、工具、技能和应用。
- 上下文、偏好与项目历史写入一份共享记忆,以本地明文文件保存,可打开编辑。
- 关闭应用或切换 agent,共享记忆延续状态,不必从零开始。
- 通过 100+ 集成与 MCP 服务器扩展能力,它们挂在共享工具层,而不是各自的 agent 上。
产品演示与界面预览


架构解读:一个桌面壳,四件套运行时
package.json 将工作区命名为 hola-boss-oss,锁定 [email protected],由 Turborepo(^2.9.18)统一调度 build、test、typecheck、lint。运行时拆分为 @holaboss/runtime-harness-host、@holaboss/runtime-harnesses、@holaboss/runtime-state-store 与 @holaboss/runtime-api-server——harness(即各 agent)由 host 进程承载,状态独立成 store,再由 API server 对外。SECURITY.md 把支持范围写作『the OSS desktop workspace and runtime stack』,印证了这种两层设计。
桌面应用位于 apps/desktop,@holaboss/app-sdk 用于构建工作区内应用。构建链路里有原生代码:trustedDependencies 列出 @electron/rebuild、@parcel/watcher、better-sqlite3,runtime:rebuild-sqlite 会执行 scripts/ensure-native-sqlite.mjs 在工具链不匹配时重建 SQLite 原生模块。
命令面:脚本透露了什么
- `bun run dev` 调用 desktop:dev,以 `--elide-lines=0` 运行 holaboss-local 应用。
- `desktop:dev:isolated` 与 `desktop:e2e` 覆盖隔离运行与端到端测试。
- `memory:cleanup` 与 `memory:eval` 分别执行 scripts/memory-cleanup.mjs、scripts/memory-eval.mjs,清理并度量共享记忆。
- `runtime:start:isolated` 隔离启动运行时;`runtime:start:evals` 追加 `--namespace evals --default-name memory-evals`。
- `runtime:test` 串联 runtime-state-store、runtime-harnesses、runtime-harness-host、runtime-api-server 四个包的测试。
- `runtime:logs`(scripts/runtime-logs.sh)查看运行时日志;`sdk:app-sdk:codegen` 生成 SDK 代码。
- `desktop:dist:mac:local` 与 `desktop:dist:win:local` 构建本地分发,资料包中未见 Linux 分发脚本。
集成面
- 首日即支持三类 agent:Claude Code、Codex、内置 holaOS agent,共享同一记忆、工具集与工作区。
- 仓库描述标注 100+ 集成加 MCP,工具连接挂在工作区上,而非各个 agent。
- 文件、应用、浏览器访问统一走同一个 Electron 外壳(见 README 徽章与描述)。
- 共享记忆以本地明文文件存储,可在应用外阅读和编辑。
- @holaboss/app-sdk(由 desktop:prepare 构建)是工作区内应用的挂载点,`sdk:app-sdk:codegen` 生成其类型。
上手路径
- 从 README 导航栏指向的文档开始:holaos.ai/docs/getting-started。
- 源码路径:`bun install`(desktop:install),先 `bun run desktop:prepare` 构建 @holaboss/app-sdk,再 `bun run dev`。
- 首启时配置模型——内置前沿模型或 BYOK,README 均有说明。
- 把同一条提示词分别交给 Claude Code 与内置 agent,观察共享记忆的累积。
- 退出再打开应用,确认两个 agent 仍记得之前的进度,并顺手查看磁盘上的明文记忆文件。
- 桌面路径预留一小时;若 better-sqlite3 在你的工具链上编译失败,再留出原生重建时间(`runtime:rebuild-sqlite`)。
维护与许可风险
修改版 Apache 2.0 有三条直接影响落地的附加条件。其一,托管或嵌入式服务——SaaS、托管服务、或把 holaOS 打进对外销售的产品——除非 Holaboss 书面授权,必须取得商业许可;单个组织内部使用(含多个工作区)则不需要。其二,前端(源码运行时的 desktop/ 目录,或打包后的桌面应用)必须保留 logo 与版权信息。其三,贡献者需同意生产方可将协议调严或放宽,并可将贡献代码用于商业用途(含云业务)。
仓库层面的信号同样需要留意:package.json 为 private:true,没有 npm 发布路径;Bun 锁定 1.3.6;资料包中没有 release notes 或 changelog 可供锁版本。版权标注为 2026 Holaboss——项目很年轻,版本纪律目前要靠自己。
谁适合关注
适合关注
- 在 Claude Code 与 Codex 之间来回切换、每次都要重新交代背景的开发者。
- 希望 agent 记忆是可审计的本地文件而非厂商云端状态的人。
- 在单个组织内部跨 macOS、Windows、Linux 统一部署一个 agent 桌面的场景。
- 构建 MCP 服务器、希望一个客户端界面服务多个 agent 的开发者。
- 倾向 BYOK 而非内置模型访问的隐私优先用户。
可以先跳过
- 打算把 holaOS 作为付费服务托管、或嵌入对外销售产品却未取得 Holaboss 商业许可的团队。
- 当下就需要无头、服务器端 agent 运行时的项目——这是 Electron 桌面应用。
- 无法运行锁定版 Bun 1.3.6 工具链或 better-sqlite3 等原生模块的环境。
- 需要已发布安装包、semver 版本或 changelog 的人——资料包中一概没有。
风险与注意事项
内部使用许可明确宽松、记忆模型透明,但修改版许可限制托管商用、允许生产方更改条款,且资料包中没有 release 或 changelog。
- LICENSE 条款 1a 规定:无书面商业许可不得向第三方提供托管或嵌入式服务。
- 贡献条款允许 Holaboss 日后收紧或放宽协议,并将贡献代码用于商业用途。
- 资料包中无 release、changelog 或版本标签,版权自 2026 起算。
- 前端再分发必须保留 desktop/ 目录或打包应用中的 logo 与版权信息。
- [email protected] 锁定与原生 trustedDependencies 增加了构建环境约束。
- SECURITY.md 将安全支持范围限定为『the OSS desktop workspace and runtime stack』。
- 列为安全敏感的问题类型:凭据/令牌/密钥泄露、远程代码执行、沙箱逃逸或提权、认证绕过、暴露本地运行时或用户数据的不安全默认配置。
- 漏洞需私下报告至 [email protected]——明确不要提公开 issue,需附受影响 commit 或 release、复现步骤与影响评估。
- 维护方希望获得合理时间验证修复后再公开披露。
- 技术栈在本地运行 API server(@holaboss/runtime-api-server)与状态存储;『不安全默认配置』条款说明维护方盯住了这个面。
- 记忆是本地明文文件,便于审计,但任何有文件系统权限的进程都能读取。
- trustedDependencies 含会执行构建脚本的原生包(@electron/rebuild、@parcel/watcher、better-sqlite3),升级时应锁定并审查。
替代方案比较
| 方案 | 适用场景 | 代价 |
|---|---|---|
| 只想要单一开源终端编码 agent,不需要承载多个 agent 的桌面 harness | 开源;自付 OpenAI API 用量 | |
Claude Code | 已锁定单一厂商的 agent,且不需要跨 agent 共享记忆 | 厂商订阅或 API 用量计费 |
Jan | 想要本地优先、隐私运行模型的桌面应用,不需要多 agent 运行时 | 免费开源;本地模型或自带 key |
AnythingLLM | 主要是按工作区做文档问答,而非 agent 运行时 | 免费开源;本地或云端模型 |
这个趋势说明了什么
把 agent 无关的 harness 做成一层
@holaboss/runtime-harness-host 与 @holaboss/runtime-harnesses 这两个包名表明 harness 是独立一层,Claude Code 和 Codex 是共享状态之上的可替换租户。
在同一工作区用两个 agent 跑同一任务,把结果与记忆写入同你现有分开部署的表现做对比。
文件化记忆作为可移植格式
README 明确记忆以本地明文文件存储、可读可编辑,仓库还提供 memory:eval 与带 `--namespace evals` 的 runtime:start:evals 来度量它。
在两次会话之间查看记忆文件、手工编辑一条,确认下一次运行 agent 行为随之变化。
无需商业许可的内部部署
LICENSE 条款 1a 明确豁免:单个组织内部使用(包括多个工作区)不触发商业许可要求。
团队铺开前先读 LICENSE;若 agent 会服务外部用户,与法务确认内外边界。
RepoDaily 判断
holaOS 押注『agent 可替换,工作区不可替换』:一个本地桌面、一份文件化记忆、上面跑任意 agent。对单个组织的内部使用,修改版 Apache 2.0 完全可行;想做成托管产品的人,决定因素是许可而非技术。第 7 名、769 颗星说明这个押注正在生效。