毛毯:在树莓派上用 Hermes Agent 搭一个看得见、能接管的个人 AI 助手

举报
yd_214745497 发表于 2026/11/09 10:02:54 2026/11/09
【摘要】 介绍开源项目「毛毯」(maotan):用 Hermes Agent 做大脑、跑在树莓派/云服务器上的个人 AI 助手,浏览器操作可见可接管,密码与验证码不进模型,支持命名浏览器会话、安全登录保险箱、PWA 推送。附架构与 Debian/Ubuntu 部署要点。

市面上的 AI 助手越来越会“替你干活”,但两个问题一直困扰我:一是它在浏览器里做了什么,我看不见;二是一遇到验证码、扫码、登录,它要么卡死,要么让我把密码直接发给模型。于是我做了一个开源项目「毛毯」(maotan),用 Hermes Agent 当大脑,自己部署在一台小机器上。

项目地址:GitHub 搜索 totoroyuz/maotan (MIT 协议)

一、它能做什么

  • 聊天:流式回复,支持图片和文件上传(最大 100MB),能引用回复,任务跑着的时候也能插话或中途停止。
  • 看得见的浏览器:右侧实时显示浏览器画面(CDP screencast)。可以一键“接管”,自己点、自己打字,交还后助手接着做。手机上是画中画。
  • 命名浏览器会话:按“网站-账号”给每个任务开一个独立的浏览器,cookie 和登录各自隔离。任务结束后保留,下次同名直接复用。互不相关的网页任务可以拆成子任务并行,默认最多 3 个。
  • 安全登录保险箱:遇到登录页会弹出加密表单,密码用 AES-256-GCM 存在你自己的服务器上,模型永远看不到明文。
  • 验证码安全表单:短信、邮箱、两步验证码填在表单里,服务端通过 CDP 直接填进网页,模型只知道“填好了没有”。
  • 需要你处理的卡片:遇到验证码、风控、扫码时统一出一张卡,三个选项:接管处理、完成了继续、换个办法。助手只温和重试一次就交接,不破解、不接打码平台。
  • 定时任务:Hermes cron 的结果自动回流到聊天里。
  • 卡片化输出:表格卡、链接卡、摘要卡、可复制草稿卡;不可逆操作前先出一键确认卡。
  • 自动续做:服务重启或超时打断后自动接着做,最多连续 2 次。
  • PWA 和推送:可以装到桌面或手机主屏,任务完成、需要处理、要验证码时 Web Push 提醒。

二、架构

  • ui/:Node 服务加单页前端,只监听 127.0.0.1:7070。
  • browser/:Xvfb + Chromium(CDP 127.0.0.1:9222)+ 可选 noVNC。
  • hermes/:助手人设 SOUL.md,以及 secure-login、captcha-handoff、send-file、browser-sessions、computer-use 几个技能,外加 maotan_browser 插件实现命名会话。
  • deploy/:systemd 单元和 Cloudflare Tunnel 配置示例。
    模型走任意 OpenAI 兼容接口,可以接自己的 New API 网关,也可以接各家云厂商的模型服务。

三、部署要点(Debian/Ubuntu)

  1. 安装依赖:chromium、xvfb、fluxbox、x11vnc、novnc、websockify,Node.js 20 以上。
  2. 在 ~/.hermes/config.yaml 里开启 API server,并设置 browser.cdp_url 指向 CDP 端口 9222;复制 hermes/ 下的文件,执行 hermes plugins enable maotan_browser。
  3. 进 ui 目录 npm ci,按 secret.env.example 写好 secret.env,装好 systemd 服务。
  4. 公网访问用 Cloudflare Tunnel 指向 ui 服务端口 7070。千万不要把 9222 或任何 CDP 端口暴露到公网。
    一台 2 核 2G 的云服务器(比如华为云 Flexus L 实例)或者树莓派就能跑起来。

四、安全设计

  • 所有 /api/* 接口都要登录 cookie 并校验 Origin;/internal/* 只接受本机请求和内部令牌。
  • 保险箱、会话、上传文件全部留在本机,.gitignore 已排除所有密钥文件。
  • 浏览器不做指纹伪造,只设置中文语言、上海时区等正常环境参数。

五、写在最后

毛毯的目标很简单:让 AI 助手干活时透明、可接管、不碰你的密码。欢迎试用、提 Issue、点个 Star:GitHub 搜索 totoroyuz/maotan

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。