Cue:开源 macOS AI 副驾驶,在屏幕共享中保持隐藏

Cue 是一款免费、自托管的 macOS AI 副驾驶,浮动在屏幕上方,监听会议,并在屏幕共享中保持不可见。它是 Cluely 的替代品,自带密钥。

什么是 Cue?

Cue 是一款开源的 macOS AI 副驾驶,它会在你所有操作之上浮动一个小的玻璃面板。它能看见你的屏幕,听到你的会议(包括你的麦克风和系统音频),并实时使用 AI 帮助你——同时始终在屏幕共享中保持隐藏。可以把它想象成一个私人助理,永远不会出现在你的录制或视频通话中。

它是 Cluely 和 Interview Coder 等工具的免费、自托管替代品。你需要自带 API 密钥(OpenAI、Anthropic 或 Google Gemini),因此没有订阅费用——你只需按使用量向 AI 提供商付费。

为什么这很重要

大多数 AI 副驾驶要么在浏览器标签页中运行,要么需要你切换上下文。Cue 位于你的屏幕之上,始终可用,并且设计为在屏幕录制和视频通话中不可见。这使得它特别适用于:

  • 实时会议:获取下一步该说什么的实时建议。
  • 编码问题:截取 bug 或算法问题的截图,获取完整解决方案。
  • 学习和练习:将其用作学习辅助工具,而不会中断你的工作流程。

工作原理

Cue 是一个 Electron 应用,除了向所选 AI 提供商发送 API 调用外,完全在本地运行。它捕获三种独立的输入:

  • 屏幕:通过 Electron 的 desktopCapturer 按需截取全分辨率截图。
  • 你的麦克风:通过 getUserMedia 捕获,降采样至 16 kHz,并进行转录。
  • 会议音频:通过 getDisplayMedia 回环捕获系统输出音频,保持在独立通道上,以便 Cue 知道谁说了什么。

两个音频流都会被转录(使用 OpenAI Whisper 或 Google Gemini),并与可选的截图一起提供给 AI 模型。响应逐字流式传输到面板中。

主要功能

功能 触发方式 使用内容
协助 ⌘↵(可配置) 屏幕 + 最近对话
我该说什么? 按钮 会议音频 + 你的麦克风
后续问题 按钮 整个对话
总结 按钮 整个对话
询问任何内容 输入 + 屏幕 + 对话
解决编码问题 ⌘H 仅屏幕
智能切换 框内药丸 切换到更智能(更慢)的模型

安装

选项 A:下载应用(最简单)

  1. 前往 Releases 页面 下载 cue-mac.zip
  2. 双击解压,然后将 cue.app 拖入你的应用程序文件夹。
  3. 首次打开:右键点击 → 打开 → 点击打开。如果 macOS 提示它已损坏,请运行:
    xattr -cr /Applications/cue.app
    

选项 B:从源代码运行(开发者)

需要 Node.js 18+。

git clone https://github.com/Blueturboguy07/cue.git
cd cue
npm install
npm start

要构建你自己的 .app

npm run pack

首次启动设置

步骤 1:授予权限

  • 麦克风:系统设置 → 隐私与安全性 → 麦克风 → 启用 Cue。
  • 屏幕录制:系统设置 → 隐私与安全性 → 屏幕录制 → 启用 Cue。

步骤 2:添加你的 AI 密钥

打开设置(⌘,),选择一个提供商,并粘贴你的密钥:

提供商 获取密钥 备注
OpenAI platform.openai.com/api-keys 密钥必须具有 Whisper/音频访问权限才能使用监听功能
Anthropic (Claude) console.anthropic.com 非常适合屏幕和编码帮助;需要第二个密钥进行转录
Google Gemini aistudio.google.com/apikey 一个密钥即可处理聊天和转录

你的密钥本地存储在 cue-data.json 中,仅发送给你的提供商。Cue 没有服务器,也不收集任何遥测数据。

步骤 3:Zoom 设置(仅限 Zoom)

为了在 Zoom 共享中保持 Cue 隐藏:

Zoom → 设置 → 共享屏幕 → 高级 → 屏幕捕获模式 → 选择 “带窗口过滤的高级捕获。”

这会告诉 Zoom 尊重 Cue 的“不要捕获我”标志。“不带窗口过滤”模式会显示 Cue。

隐身原理

Cue 使用一个 macOS 窗口标志:setContentProtection(true),它设置 NSWindowSharingNone。这会要求窗口服务器将 Cue 排除在屏幕捕获流之外。这与 DRM 应用和 Zoom 自己的工具栏使用的机制相同。

重要注意事项:在 macOS 15.4+ 上,Apple 允许某些捕获工具忽略此标志。这是尽力而为,不保证有效。在监考考试、求职面试或录制的会议中使用隐藏助手可能违反平台规则或同意法律。

架构

主进程 ──┬─ 覆盖窗口(无框、透明、始终置顶、内容保护)
               ├─ 截图捕获(desktopCapturer)
               ├─ 语音转文本(Whisper / Gemini)── “你” + “他们”通道
               └─ LLM 流式传输(OpenAI / Anthropic / Gemini)
渲染器 ──────┴─ 玻璃 UI + 麦克风捕获 + 系统音频回环

故障排除

  • “提示授予访问权限,但我已经授予了。” 在系统设置 → 屏幕录制中关闭并重新打开 Cue,或者移除并重新添加它。
  • “403” / “无法访问模型。” 你的 API 密钥受到限制。在密钥上启用音频/Whisper,或添加 Gemini 密钥作为备用。
  • 监听无反应。 检查设置中是否显示具有转录能力的密钥,并且屏幕录制已授予权限。
  • Cue 出现在 Zoom 共享中。 将 Zoom 的捕获模式设置为“带窗口过滤的高级捕获。”
  • “cue 已损坏,无法打开。” 在终端中运行 xattr -cr /Applications/cue.app

隐私

  • 无账户、无服务器、无遥测。
  • API 密钥本地存储在 cue-data.json 中。
  • 截图和音频仅在功能运行时发送给你的 AI 提供商。
  • 转录内容仅保留在当前会话的内存中。

贡献

欢迎提交 Issue 和 PR。代码库有意保持小巧且可读:

  • main.js — 应用 + 捕获 + AI
  • renderer/ — UI
  • src/ — 提供商

源代码无需构建步骤(纯 HTML/CSS/JS)。

平台支持

  • macOS:完全支持
  • Windows:完全支持
  • Linux:未经测试

许可证

GPL-3.0-or-later。

源代码

Blueturboguy07/cue: 开源 macOS AI 副驾驶,浮动在屏幕上方,能看见/听见你的会议,并在屏幕共享中保持隐藏。Cluely 替代品,自带密钥。