【免费下载链接】habblaud
Habblaud 是一款开源的「AI 智能体虚拟办公室」,把每个 Claude Code / Codex 会话变成办公楼里实时行动的像素小人。它的核心卖点不是画面,而是一整套本地优先、只读、密钥掩码的隐私安全设计:服务器默认只监听127.0.0.1,从不读取凭据文件,所有到达浏览器的文本都先经过脱敏,让 API 密钥和密码留在你自己的电脑上。
为什么监控 AI 智能体的工具更需要讲究隐私?
Habblaud 会读取 Claude Code 在本地写下的会话文件,把「谁在敲代码、谁在等你审批、谁已经下班」渲染成一栋楼。它还有一个更敏感的功能:终端视图——可以直接在网页里看到完整会话对话。
数据越敏感,防线越要清晰。Habblaud 的回答是三层结构:
- 本地优先(Local-first):服务只对自己的电脑开放;
- 只读(Read-only):只读会话数据,绝不碰凭据文件,也绝不回写;
- 密钥掩码(Secret Masking):即使文本必须显示,token 和密码也会先被打码。
下面逐层拆解。🏢
本地优先:服务器只对你自己的电脑开门
- 默认绑定回环地址:
HABBLAUD_HOST缺省就是127.0.0.1,局域网里的其他设备根本连不上。见 server/config.ts。 - 零遥测:全程序唯一的对外请求是每 6 小时一次、不带任何 token 的匿名新版本检查(对方只看到你的 IP 和版本号)。介意可用
HABBLAUD_UPDATE_CHECK=0彻底关掉。 - 插件(mod)只跟本地说话:装在 Claude Code 会话里的 mod 只向
127.0.0.1发请求,不读对话内容、不调用模型、不外发任何数据,具体能力清单可用claude plugin validate静态核查。详见 mod/README.md。 - Docker 同样默认锁死:
docker-compose.yml中端口默认只发布到127.0.0.1,并且带「回环校验」——一旦端口暴露到网络,敏感的终端功能会被自动拒之门外。
只读原则:只读会话数据,从不读凭据、从不回写
Habblaud 对 Claude Code 的文件夹从不写入(唯一的例外是你亲手运行的安装脚本,且改配置前会先做备份)。它从每个账号的.claude.json里也只取邮箱、组织名和用量缓存这三样东西。
Docker 模式把「只读」做到了文件系统层面:
- 只挂载
<账号>/projects和<账号>/sessions,绝不挂载整个账号目录——凭据和配置就放在那里; - Codex 侧只挂载
sessions/、archived_sessions/、thread-writer-locks/三个文件夹,且为只读挂载;auth.json、config.toml、shell 环境快照、历史记录等一律不读。生成逻辑见 scripts/docker-up.ts。
容器本身也被加固:根文件系统只读(read_only: true)、cap_drop: ALL丢弃全部特权、no-new-privileges禁止提权、/tmp为 64MB 内存盘。见 docker-compose.yml。
密钥掩码:文本到达浏览器前的最后一道闸
即便要显示,敏感信息也不会「原样出街」。核心是一个统一的脱敏函数maskSecrets(),内置了 20 多条正则规则,覆盖常见密钥形态:
| 场景 | 示例 | 掩码后 |
|---|---|---|
| 认证头 | Authorization: Bearer abc123... | Authorization: Bearer *** |
| URL 内嵌账号密码 | https://user:pass@host | https://user:***@host |
| curl 命令行 | curl -u user:pass | curl -u user:*** |
| 环境变量 / JSON | GITHUB_TOKEN=ghp_abc... | GITHUB_TOKEN=*** |
| 知名密钥前缀 | sk-...、ghp_...、AKIA... | sk-***、gh*_***、AKIA*** |
| JWT 令牌 | eyJhbGci... | eyJ*** |
| PEM 私钥块 | -----BEGIN PRIVATE KEY-----... | [私钥] |
完整规则表见 shared/activity.ts。这条防线在三条最敏感的链路上都被强制执行:
- 活动描述:命令、提示词、工具参数进界面前先掩码,见 shared/activity.ts;
- 终端会话全文:见 server/sources/transcript.ts;
- 权限审批请求:命令与 diff 展示前同样掩码,见 server/permissions/codex.ts。
边缘防护:挡掉恶意网页的三种经典攻击
本地服务最怕的不是外人,而是浏览器里打开的恶意网页。Habblaud 在 HTTP 层做了三道边防护,核心逻辑在 server/http/guard.ts:
- 防 DNS Rebinding:只接受
Host头为 IP 字面量、localhost或显式放行的域名——攻击者无法让自己的域名「解析到 127.0.0.1」后伪装成同源读取数据; - 防 CSRF:所有
POST(审批、发消息等会改变状态的操作)必须携带application/json且Origin为本地同源,恶意表单和跨站 fetch 发不出来; - 防页面嵌入:响应头带
X-Frame-Options: SAMEORIGIN,Habblaud 页面无法被其他网站用 iframe 套壳,见 server/http/app.ts。
更进一步,终端、权限审批、发消息、角色编辑器这类「会作用于会话」的功能,还要求每次请求的Host必须是localhost/127.0.0.1——走代理或隧道的网络 IP 一律拒绝,见 server/config.ts。
可选的远程访问:scrypt 哈希 + 本地 CA 的一整套锁
如果你确实想在手机上审批,Habblaud 提供了默认关闭、显式开启的远程端口(npm run remote:setup之后才存在),并且把每个环节都上锁:
- 密码:只存 scrypt 哈希(自带盐值与参数),磁盘上永远没有明文,且用恒定时间比较校验,见 server/remote/password.ts;
- HTTPS:由一个受限的本地 CA签发证书,CA 只允许给
localhost、.local域名和私网 IP 签发;CA 私钥留在~/.habblaud/remote-tls/ca,即使泄密也无法给别的网站发证,且该密钥从不进入容器,见 server/remote/tls.ts; - 会话 Cookie:
HttpOnly+SameSite=Strict+Secure,并用 HMAC 签名防篡改; - 功能白名单:远程端口能做什么由
HABBLAUD_REMOTE_ALLOW显式声明(默认只允许审批权限请求),与请求头无关,无法被诱导越权。
细节见官方说明:README.md。
落盘的数据:只有「聚合数字」,且会自动过期
即使在本机,Habblaud 写下的东西也尽量少:
- 时间线(timelapse):只记录屏幕上本来就显示的一行摘要(无完整命令、无对话、无邮箱),存于
~/.habblaud/timeline/,7 天后自动删除; - 每日统计:只有时间、计数、token、费用等聚合数字,保留 30 天;
- 消息:投递成功后立刻从服务端消失,不落盘;
- 临时附件:写入权限收紧到目录
700、文件600,见 server/spawn/attachments.ts。
总结:一张表看懂 Habblaud 的安全边界
| 层面 | 机制 | 参考位置 |
|---|---|---|
| 网络 | 默认仅监听127.0.0.1,零遥测,唯一外联可关闭 | server/config.ts |
| 文件系统 | 会话目录只读挂载,凭据文件不读不回写 | docker-compose.yml |
| 内容 | 20+ 条密钥正则,到达浏览器前统一掩码 | shared/activity.ts |
| HTTP 边缘 | 防 DNS Rebinding、CSRF、iframe 嵌入 | server/http/guard.ts |
| 远程访问 | scrypt 哈希、受限本地 CA、HMAC Cookie、功能白名单 | server/remote/tls.ts |
| 落盘数据 | 仅聚合摘要,7/30 天自动清理,附件权限 700/600 | README.md |
💡 一句话总结:Habblaud 用「默认不开放、只读不修改、展示前脱敏」这三层设计,把 AI 智能体办公区完全留在了你自己的电脑上。对想在多台会话之间「一眼看尽」AI 工作状态的开发者来说,这正是可以安心部署的隐私安全底座。
【免费下载链接】habblaud
相关推荐
OhMyGame 如何守护你的隐私?本地优先设计、密钥隔离与遥测边界全景解析
OhMyGame 如何守护你的隐私?本地优先设计、密钥隔离与遥测边界全景解析 OhMyGame 是一款开源的 AI 游戏创作工作室(本地优先设计,自带密钥 BY
人工智能AI 应用AI Agent游戏开发代码智能体媒体生成隐私与数据安全:claude-smart本地优先架构如何守护你的代码、会话与API密钥
隐私与数据安全:claude smart本地优先架构如何守护你的代码、会话与API密钥 claude smart 是一款为 Claude Code、Codex
Floorplan 隐私与安全实战指南:本地服务器、只读提问、密钥掩码与数据出口
Floorplan 隐私与安全实战指南:本地服务器、只读提问、密钥掩码与数据出口 Floorplan 用 Claude Code 或 Codex 读取你的代码,
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考