[BUG]: Desktop Assistant causes spacebar to stop responding system-wide + spontaneous UI element selection (macOS)

用户运行 AnythingLLM Desktop 应用并启用 Desktop Assistant(桌面助手)功能。该工具利用 macOS 的辅助功能(Accessibility)和屏幕录制权限,实现跨应用上下文读取与全局快捷键支持。在长期使用过程中间歇性出现全局空格键失效,以及非交互触发情况下其他应

[BUG]: Desktop Assistant causes spacebar to stop responding system-wide + spontaneous UI element selection (macOS)

[BUG]: Desktop Assistant causes spacebar to stop responding system-wide + spontaneous UI element selection (macOS)

快速结论:该问题在 macOS 上表现为:启用 Desktop Assistant 后,空格键全局失效、其他应用窗口出现随机蓝色选中边框。退出 AnythingLLM 即可恢复。优先尝试关闭“Magic Tab”和“Magic Beacon”功能,这两个功能的原生钩子(Native Hook)可能比 Desktop Assistant 本身更容易引发问题。

问题场景

用户运行 AnythingLLM Desktop 应用并启用 Desktop Assistant(桌面助手)功能。该工具利用 macOS 的辅助功能(Accessibility)和屏幕录制权限,实现跨应用上下文读取与全局快捷键支持。在长期使用过程中间歇性出现全局空格键失效,以及非交互触发情况下其他应用窗口出现蓝色选中边框。退出 AnythingLLM 可立刻恢复正常。

报错原文

[BUG]: Desktop Assistant causes spacebar to stop responding system-wide + spontaneous UI element selection (macOS)

While Desktop Assistant is enabled, the spacebar stops responding system-wide — not just inside AnythingLLM, but across other applications as well. Simultaneously, parts of other application windows show a blue highlighted selection border appearing spontaneously, without any user interaction triggering it. Both symptoms resolve immediately upon fully quitting AnythingLLM; no other troubleshooting step was needed.

原因分析

根据代码库审查结果,导致空格键失效的最可能原因是 Magic Tab 功能:它在原生层安装了一个 CGEvent 键盘钩子,并提供了 setConsumeKeys(true) 模式。当建议提示可见时,该模式会在操作系统级别吞掉按键事件;如果在消费/取消消费生命周期中存在竞态条件(Race Condition),钩子可能卡在“消费”状态,导致包括空格键在内的按键被全局吞掉。

导致其他应用窗口出现蓝色选中边框的最可能原因是 Magic Tab 或 Magic Beacon 功能:它们使用 macOS 的 Accessibility API(AXUIElement)来全局监控所有应用的文本选区状态。AX 客户端轮询选区状态时,在某些应用中会引起可见的副作用(如高亮选中边框)。

这两个功能都在 AnythingLLM 后台静默运行,因此退出应用后原生钩子随进程销毁,问题即告解决。注意:问题可能并非 Desktop Assistant 本身直接导致,而是与其同启的 Magic Tab / Magic Beacon 更相关。当前 Issue 因追踪中标签而未给出最终结论,下述为已知的排查方向。

环境排查

  • AnythingLLM 版本:Desktop v1.15.0
  • 操作系统版本:macOS Tahoe 26.5.2
  • 硬件:MacBook Pro M5 Max (128GB 统一内存)
  • 问题与 LLM Provider、Embedder、RAG 活动无关
  • 确认是否开启了 Magic Tab 中的 “on focus suggestions” 选项
  • 确认是否开启了 Magic Tab 中的 “Animated borders” 选项
  • 确认是否保留了 macOS 辅助功能和屏幕录制权限

解决步骤

  1. 在 AnythingLLM 设置中关闭 Magic Tab 功能:检查空格键失效问题是否消失。如果消失,可确认问题源自 Magic Tab 的原生键盘钩子。
  2. 关闭 Magic Beacon 功能:检查其他应用窗口的蓝色选中边框是否消失。如果消失,可确认问题源自其 Accessibility API 的轮询机制。
  3. 仅保留 Desktop Assistant 开启(关闭 Magic Tab 和 Magic Beacon):观察上述两个问题是否还会同时出现或任一个出现。如果不再出现,则根因更倾向于这些辅助功能而非 Desktop Assistant 自身。
  4. 关闭所有与提案、动画边框相关的 Magic Tab 子选项:即使功能开启,禁用具体子选项也可能避免钩子激活。

说明:以上步骤基于项目维护者的建议,并非最终结论。由于 Issue 目前标签为 “needs info / can’t replicate” 和 “investigating”,尚未给出确定修复方案或补丁版本。可优先尝试前两步以缩小范围。

验证方法

重启 AnythingLLM 后,在所有其他应用(如浏览器、文本编辑器、终端)中正常按下空格键,确认按键可被正确输入且无延迟;打开任意第三方应用窗口,观察是否有随机出现的蓝色选中边框或选区高亮。如果两个症状均不再出现,说明已临时规避问题。如果需要精确确认根因,请按上述解决步骤逐一启停子功能并记录结果,反馈到原始 Issue。

参考来源

Mintplex-Labs/anything-llm #5940

GamsGo AI

AI 工具推荐

想把多个 AI 模型放在一个入口?

GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。

了解 GamsGo AI

推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。

celebrityanime
celebrityanime
文章: 11458

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注