agentglass

在一块窗口里运行、监控并审批你本机所有编码 agent——实时成本、token、工具调用与危险操作拦截。

Star 数
★ 344
最近更新
今天
License
MIT
主语言
TypeScript

30 秒速览

运行形态
桌面应用自托管服务
可在哪里用
兼容但需适配Codex · Claude CodeOpenAI API · Claude API(部分支持)
费用
软件免费,模型调用费用自付
上手难度
中 · 需要几步配置
开始前需要
gitClaude Code CLIPython 3tmuxGitHub CLIDockerBunShell / 命令行网络访问本地文件系统MCP Server
典型场景
同时开多个 Claude Code / Codex 会话的独立开发者,想把终端、PR、diff 和权限提示合并到一个窗口
不适合
  • 不希望在本机安装 tmux、Python 3 等依赖的用户
  • 需要托管云端、多设备免配置同步的团队
  • 需要签名公证安装包的 macOS 用户

这个 Agent 能做什么,适合哪些场景?

agentglass 是一个运行在你自己机器上的桌面工作区(Electron 外壳 + Bun/SQLite 服务端 + React/Vite 前端),把 Claude Code、Codex、Gemini CLI、OpenCode 等 agent 的终端、拉取请求、差异、浏览器和审批集中到一个窗口。它不代理 agent,而是挂接你已在 tmux 中打开的会话,或新建 worktree、分支并在其中启动同一个 CLI。核心界面「Lantern」按紧急程度列出需要你处理的事项:红色代表卡在权限门的 agent,琥珀色代表已完成、等你输入。被设为门控的工具调用会暂停,直到你从桌面或手机放行,审批队列落盘保存以防崩溃后静默放行。另有一个可编排者(orchestrator)按 Settings 中的策略把任务分派给工作 agent,并有执行级别的锁与不可越界的推送/合并限制。所有数据保存在本机 SQLite 中,无账号、无云、无遥测;默认关闭的两条外发路径是你自建的 webhook 与 Explain 按钮。

从 Releases 安装桌面应用后,内置服务端在本机启动,前端通过 http://localhost:4000 访问。它挂接现有 tmux 会话(tmux 窗口映射为标签页),把任务或 GitHub issue 转成 worktree + 分支并启动对应 CLI;一个遵循 Settings 策略的编排 agent 将工作分配给工作 agent。Lantern 汇总等待你处理的事项,命中门控规则的工具调用进入磁盘持久化的审批队列,等待桌面或 Android 端放行。差异视图按 agent 与 worktree 分组展示词级改动,源代码管理面板支持按 hunk 暂存、提交、建分支、stash 与冲突解决;拉取请求面板展示检查、会话与文件并支持内联评审。内建浏览器可由 agent 通过 CLI 与 MCP 服务器驱动,并使用你已登录的会话;另有 Docker 容器与日志、监听端口、文件浏览器、CPU/内存以及每个会话的成本与耗时统计。Python 钩子转发器(hooks/install_hooks.py)让 Claude Code 向它上报。

  1. 同时开多个 Claude Code / Codex 会话的独立开发者,想把终端、PR、diff 和权限提示合并到一个窗口
  2. 需要下班后从手机批准 agent 危险操作或查看卡住会话的人
  3. 要为每个 GitHub issue 自动切出 worktree 并并行派给多个 agent 的团队
  4. 想看清各 agent 与各次会话实际 token 花费和耗时分布的用户
  5. 希望 agent 能驱动一个已登录的浏览器面板完成 Web 任务的工程师
  6. 需要在本机查看 Docker 容器、端口与资源占用而不另开监控工具的人

如何安装或部署这个 Agent?

从 Releases 页面下载对应平台的安装包:Linux 用 .AppImage / .deb,macOS 用 .dmg(Apple silicon 与 Intel),Android 用签名 .apk。macOS 构建尚未签名,首次启动需执行一次:

xattr -dr com.apple.quarantine /Applications/agentglass.app

从源码运行:

git clone https://github.com/SirAllap/agentglass && cd agentglass
bun install
AGENTGLASS_STATE_DIR=~/.local/state/agentglass-dev bun run dev   # http://localhost:4000, its own database
python3 hooks/install_hooks.py      # so Claude Code reports to it

必需组件:git、Claude Code CLI、Python 3。按功能可选:tmux(实时面板与主题同步)、GitHub CLI(已登录,用于拉取请求面板)、Docker(容器、镜像、卷与日志)。可在 Settings ▸ Requirements 检查依赖。完整说明见 docs/INSTALL.md。

如何使用这个 Agent?

  1. 启动桌面应用或 bun run dev,浏览器打开 http://localhost:4000。
  2. 在 Settings ▸ Requirements 确认依赖状态,并配置编排策略(哪个引擎当编排者、哪些做工作、worker 可触碰的范围)。
  3. 在 tmux 中已打开的会话会自动接入;也可从任务或 GitHub issue 创建 worktree、分支并在其中启动 agent。
  4. 在 Lantern 中处理红色(卡在权限门)与琥珀色(等待输入)事项;对门控的工具调用选择允许或拒绝。
  5. 用差异视图与源代码管理面板按 hunk 暂存、提交、建分支、stash;用拉取请求面板查看检查、文件并内联评审。
  6. 若要给 agent 浏览器能力,通过内建浏览器 CLI 或 MCP 服务器驱动。
  7. Android 端通过扫描配对码连接桌面,并按授予的范围(只读、应答、完整)操作。
  8. 如需让 agent 上报,运行 python3 hooks/install_hooks.py。

这个 Agent 有哪些优点和局限?

优点
  • 用一个窗口集中 tmux 终端、PR 评审、差异、浏览器与审批,避免多应用来回切换
  • 门控工具调用会落盘排队,桌面或手机放行,崩溃也不会静默通过
  • 接入现有 tmux 会话与原生 CLI,不代理 agent,关闭应用后 agent 继续运行
  • 数据存本机 SQLite,默认无账号、无云、无遥测,外发路径明确可关
  • 覆盖 Claude Code、Codex、Gemini CLI、OpenCode,并可指向 Kimi、OpenAI、Gemini、Bedrock 等提供方
局限
  • 要求本机具备 git、Claude Code CLI 与 Python 3,tmux、GitHub CLI、Docker 按功能另装,上手成本不低
  • macOS 构建未签名,需手动执行 xattr 命令绕过 Gatekeeper,未做公证
  • Windows 版仅通过 CI 构建,尚未在真实硬件验证
  • 编排与门控是执行级限制而非沙箱,worker 以你本人身份运行
  • 桌面应用内嵌服务端,属于单机使用范式,不支持多机共享的托管场景

这个 Agent 与同类方案有什么区别?

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
agentglass 当前 72 · 存在缺口 桌面应用免费 + 模型费 ★ 344 今天 TypeScript Codex · Claude Code
Munder Difflin – 多智能体办公桌 43 · 缺口较多 桌面应用免费 + 模型费 ★ 9.1k 今天 TypeScript ChatGPT · Codex · Claude Code
PI-Desktop 68 · 存在缺口 桌面应用免费 + 模型费 ★ 7.4k 今天 TypeScript OpenAI API · Claude API
CLI Agent Orchestrator 65 · 存在缺口 命令行工具免费 + 模型费 ★ 1.5k 今天 Python Codex · Claude Code

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
存在缺口
72/ 100 五分制 3.6 / 5
信任安全 19/29
可靠稳定 8/14
适用触发 15/18
规范维护 16/18
有效结果 9/13
证据核验 5/8
查看各维度的扣分理由
信任安全19 / 29 · 3.3/5

证据显示项目对权限面做了大量显式设计:默认绑定 127.0.0.1、桌面端默认铸造 0600 令牌、提供 AGENTGLASS_TERMINAL_DISABLED / GIT_WRITE_DISABLED / DOCKER_WRITE_DISABLED 等逐能力开关、配对设备分 read/answer/full 三级且默认拒绝、自更新路由仅限桌面 shell 源并校验签名标签。但扣分点明确:SECURITY.md 自述令牌不区分用户与其自身 agent、无令牌的手工服务器对任意本机 uid 开放、gate 默认 fail-open、配对后密钥在明文 HTTP 上传输、且承认存在主动中间人风险;这些是文件里写明的弱点,故 least_privilege 与 sensitive_data_handling 只给 2。data_flow_transparency 给 3,因为 CONFIG.md 逐条列出每个出站调用(Anthropic 用量、GitHub releases、githubstatus、gh CLI、Explain、webhook、LiteLLM 定价)及其开关。dependency_security 仅 1:只有 CodeQL/Dependabot 的声明,未见锁文件内容或依赖审计证据。rollback 给 2:有 setup:undo、备份 settings、设备吊销与令牌轮换,但缺少对已写入数据库/已推送变更的回滚说明。source_attribution 给 2:README 与 LICENSE 明确作者与 MIT,NOTICE.md 提及第三方图标,但发布者身份未经 FollowAgents 验证,属未知而非可疑。

可靠稳定8 / 14 · 2.9/5

self_consistency 为 2:文档与代码路径大体一致,但 SECURITY.md 承认的 gate 自释放与令牌不区分用户/agent 等行为与安全承诺存在张力。dependency_availability 为 1:仅见 CodeQL/Dependabot 声明,未见锁文件内容或依赖审计证据,无法确认依赖可用性与完整性。failure_messages 为 2:gate 默认 fail-open 且超时或控制面不可达即放行,失败路径的提示与拒绝语义不够明确。

适用触发15 / 18 · 4.2/5

audience_and_scenarios 为 3:README 与 CONFIG.md 覆盖桌面端、手工服务器、配对设备与多种 agent 场景。capability_boundaries 为 3:逐能力开关(AGENTGLASS_TERMINAL_DISABLED / GIT_WRITE_DISABLED / DOCKER_WRITE_DISABLED)与 read/answer/full 三级权限清晰界定能力边界。trigger_precision 为 2:gate 默认 fail-open,超时或控制面不可达即放行,触发与拒绝的精确性不足。environment_fit 为 2:Windows 构建自述未在真机验证,macOS 未签名需手动清除 quarantine,环境适配存在缺口。

规范维护16 / 18 · 4.4/5

information_architecture 为 3:README、CONFIG.md、SECURITY.md、NOTICE.md 等文档分层清晰。install_notes 为 3:安装与 setup:undo 等步骤有明确说明。naming_stability 为 2:命名与版本演进未见稳定承诺。examples_and_faq 为 3:文档提供示例与常见问题说明。known_limitations 为 3:SECURITY.md 明确列出已知弱点与限制。license 为 3:LICENSE 明确 MIT,NOTICE.md 提及第三方图标。versioning_changelog 为 2:未见完整版本与变更日志证据。maintenance_responsibility 为 2:维护责任与发布者身份未经 FollowAgents 验证,属未知。

有效结果9 / 13 · 3.5/5

output_usability 为 2:输出可用性受 gate fail-open 与权限语义影响,需额外配置才能可靠使用。marginal_value 为 2:相对现有方案边际价值有限,需结合具体场景评估。cost_benefit 为 2:自更新会在本机编译代码,且需额外安全配置,成本与收益需权衡。

证据核验5 / 8 · 3.1/5

claim_traceability 为 2:多数声明可追溯到 README、CONFIG.md、SECURITY.md 等文件,但部分行为缺少直接证据。cross_source_corroboration 为 2:跨文档佐证有限,依赖安全仅有 CodeQL/Dependabot 声明。fact_inference_separation 为 2:事实与推断部分混同,如发布者身份属未知而非可疑,需读者自行区分。

风险与缓解建议
  • SECURITY.md 明确承认:持有机器令牌的 agent 进程在历史上可自行释放被挂起的 gate 调用,且令牌无法区分用户与其自身 agent;不要把 gate 当作安全边界。
  • gate 默认 fail-open(超时或控制面不可达即放行),只有设置 AGENTGLASS_GATE_FAILCLOSED=1 才改为拒绝。
  • 手工启动的无令牌服务器对同机任意 uid 开放,且会暴露终端与 shell;共享机器上必须设置 AGENTGLASS_TOKEN。
  • 配对后设备密钥在明文 HTTP 上以 Bearer 传输,且握手未绑定六位码,存在主动中间人风险;应使用 Tailscale 或 https。
  • Windows 构建自述未在真机验证;macOS 未签名需手动清除 quarantine,自更新会在本机编译代码。
  • 依赖安全仅有 CodeQL/Dependabot 的声明,未见锁文件或审计结果,无法静态确认无已知漏洞。
证据充分度:低 评估于 2026年10月27日 审查版本 ad20ebab1ecf
查看完整评分方法 →

常见问题

它会替代我的 Claude Code 或其他 agent 吗?
不会。agentglass 挂接你机器上已在 tmux 中运行的会话,或新建 worktree 并在其中启动同一个 CLI,使用你的登录信息;它不代理 agent,关闭 agentglass 后 tmux 中的 agent 仍然继续运行。
有什么数据会离开我的机器?
默认没有。数据存放在本机 SQLite 文件中,无账号、无云、无遥测。仅两条可选外发路径,且默认关闭:你自己配置的 webhook,以及 Explain 按钮会把所指向的 hunk 发送给模型。具体开关列在 SECURITY.md。
审批队列为什么更安全?
被设为门控的工具调用会暂停等待你允许,队列持久化在磁盘上,即使应用崩溃也不会静默放行;你可以在桌面或配对的 Android 端处理。
手机端如何连接?
Android 应用通过扫描配对码与桌面端配对,可访问终端面板、待处理审批、拉取请求和某个检出的改动,范围由你授予(只读、应答或完整),并走你自己的网络。
新 worktree 缺少 .env 怎么办?
git worktree add 只复制已跟踪文件,因此可在仓库根放置 .worktreeinclude 列出应随每个 worktree 带入的忽略路径。
在 GitHub 查看 ↗ 安装 ↓

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents