1作者: Directshell3 个月前原帖
我构建了一个 Rust 二进制文件(约 700KB,包含两个依赖项),它可以与任何 Windows 应用程序连接,持续将其 UI 自动化可访问性树读取到 SQLite 数据库中,并允许外部进程通过 SQL INSERT 控制该应用程序。 核心见解:每个 GUI 应用程序通过可访问性层(自 1997 年以来为屏幕阅读器构建)已经以结构化文本的形式描述了自己。每个主要的 AI 实验室都在截取这些屏幕截图并对其运行视觉模型。DirectShell 直接读取文本。 它的功能: - 将每个按钮、字段、菜单项读取到可查询的 SQLite 数据库中(每 500 毫秒刷新一次) - 生成多种输出格式:完整数据库、交互元素列表、针对大型语言模型优化的快照(50-200 个标记,相比之下,屏幕截图为 1,200-5,000 个标记) - 通过 5 种操作类型控制应用程序:按元素名称点击、通过 UIA ValuePattern 设置文本、逐字符输入、发送组合键、滚动 - 包含一个 MCP 服务器,以便 Claude/GPT 可以直接使用 第一天演示:在 90 秒内填充了 360 个 Google Sheets 单元格,跨应用读取并回复了 Claude.ai 的对话,瞬间写入了记事本。没有屏幕截图,没有视觉模型,没有坐标猜测。 局限性(诚实):在 8.5 小时内构建,单一应用范围,Chromium 应用需要 4 阶段激活黑客以暴露其树,应用的可访问性质量各不相同。AGPL-3.0。 演示: [https://youtu.be/nvZobyt0KBg](https://youtu.be/nvZobyt0KBg) 完整技术论文:在仓库的 Dokumentation/ 下,以及 [https://dev.to/tlrag/i-built-a-new-software-primitive-in-85-hours-it-replaces-the-eyes-of-every-ai-agent-on-earth-55ia](https://dev.to/tlrag/i-built-a-new-software-primitive-in-85-hours-it-replaces-the-eyes-of-every-ai-agent-on-earth-55ia)