← 返回信息流
Agent SkillLINUX DO · AI·2 小时前

Shotcache开源:Chrome扩展配Windows程序实现截图直投AI

原标题:Shotcache:Chrome 扩展 + Windows 伴生程序,截图直送 AI 输入框

速览

Shotcache是一款开源工具,旨在优化AI工作流中的截图输入体验。它利用Windows伴生程序提供类似微信截图的热键框选与标注功能,并通过Chrome扩展将截图、链接或代码一键注入Claude、ChatGPT等AI平台的输入框。该项目采用WXT+TS+C#技术栈,代码完全开源可审计,解决了传统截图中转繁琐、剪贴板覆盖及记录缺失的痛点。

AI 深度解读

背景

在当前的 AI 交互工作流中,向大语言模型(LLM)输入视觉素材(如截图、代码片段、文档图片)是一个高频但体验割裂的场景。传统的操作流程往往涉及“截图 -> 切换应用 -> 粘贴 -> 切换回原应用”的循环,这种碎片化的操作不仅效率低下,还受限于剪贴板只能保留单条数据的特性,导致多张素材难以一次性整理发送。

虽然微信等桌面应用提供的截图工具(如 Alt+W)提供了优秀的“热键唤起、屏上框选、即时标注”体验,但其缺点在于截图后不留存记录,且无法直接集成到 AI 对话流中。另一方面,纯 Chrome 扩展受限于 Manifest V3 (MV3) 的安全策略,无法在浏览器外部触发全局热键,也无法在系统层面进行全屏覆盖层的框选,导致浏览器内的截图体验远不如原生桌面应用流畅。

为了解决这一痛点,开发者 Robinxplorer 开源了 Shotcache 项目,旨在通过“Chrome 扩展 + Windows 伴生程序”的混合架构,结合两者的优势,打造一种接近微信截图体验、同时能无缝服务于 AI 工作流的截图工具。

核心内容

Shotcache(中文名:截存)是一个开源项目,其核心设计理念是将“截图与标注”的交互体验下沉至 Windows 原生程序,而将“存储与注入”的逻辑保留在 Chrome 扩展中,从而服务于 AI Agent 的上下文构建。

工作流体验

Shotcache 试图还原甚至超越微信截图的操作流畅度:

  1. 热键唤起:用户可在任意应用状态下按下 Ctrl+Alt+A(支持自定义)触发截图。
  2. 零干扰框选:系统出现全屏覆盖层,用户可直接在屏幕上框选区域。
  3. 即时标注:框选区域旁出现工具条,支持矩形、椭圆、箭头、文字、马赛克、表情等标注,提供 8 种颜色和 3 档粗细选择。标注完成后按回车确认。
  4. 焦点恢复:整个过程中零弹窗、零标签页切换,操作完成后焦点自动回到用户原本的应用程序。

数据存储与注入

截图完成后,数据会同时进入两个通道:

  • 剪贴板:立即可用,支持直接粘贴。
  • 托盘暂存:截图及备注信息会保存在系统托盘中,保留期为 7 天。

在托盘界面,用户可以勾选多个条目(包括截图、链接、备注、代码片段),然后一键注入到 ClaudeChatGPTGemini 的输入框中。对于代码片段,系统会自动将其包裹在 Markdown 代码块(```)中,确保格式正确。

高级功能

  • 滚动长截图:支持在框选后手动滚动页面,系统通过图像匹配去重算法自动拼接长图,完成后进入编辑器进行标注。
  • 编辑能力:编辑器具备“选择”工具,允许用户选中已绘制的标注进行修改,而非仅支持新建。

技术架构与安全性

  • 双端架构
    • Windows 伴生程序:使用 C# WinForms 开发,利用 Windows 原生 API 实现全局热键和屏幕覆盖层。
    • Chrome 扩展:基于 WXT + TypeScript 开发,遵循 MV3 规范,零 UI 框架。
  • 通信机制:两者通过一条常驻的 native messaging 端口通信,并内置了断线指数退避重连机制。
  • 开源与审计:伴生程序使用 Windows 自带的 csc.exe 编译,仓库中不包含任何二进制文件,用户需 clone 代码后自行编译,确保代码完全可审计。
  • 权限最小化
    • 注册表操作仅限 HKCU(当前用户),无需管理员权限,无开机自启(随 Chrome 启停)。
    • 扩展权限极小,不包含 <all_urls>activeTabscripting 权限,仅拥有三个特定 AI 站点(Claude/ChatGPT/Gemini)的 host 权限。
  • 降级方案:如果不安装 Windows 伴生程序,扩展仍可运行,但会降级使用 Chrome 自带的屏幕选择器,体验略逊于原生方案。

目前该项目仅支持 Windows 伴生程序,macOS 和 Linux 用户仅能使用扩展的降级功能。项目采用 LGPL-2.1 开源协议,尚未上架应用商店,需通过 npm run build 手动加载未打包的扩展。

关键要点

  • 痛点解决:解决了 AI 交互中截图素材管理碎片化、多素材难以批量发送、以及浏览器扩展无法提供全局截图体验的问题。
  • 混合架构:采用“Windows 原生程序(负责交互)+ Chrome 扩展(负责存储与注入)”的模式,兼顾了桌面级的流畅体验和 Web 端的自动化能力。
  • 无缝集成:支持一键将多张截图、代码、备注注入到 Claude、ChatGPT、Gemini 等主流 AI 工具的输入框,并自动处理代码格式化。
  • 安全透明
    • 伴生程序源码开放,需用户自行编译,无预编译二进制,杜绝后门风险。
    • 扩展权限严格控制,仅针对特定 AI 站点,无广泛浏览权限。
    • 无管理员权限需求,无开机自启,隐私侵入性极低。
  • 功能丰富:支持全局热键、屏上框选、多种标注工具、滚动长截图拼接、以及标注的二次编辑。
  • 局限性:目前仅支持 Windows 平台的完整体验(macOS/Linux 仅支持扩展降级功能);站点选择器需随 AI 平台改版而手动维护;长截图拼接算法仍有优化空间。

意义与影响

Shotcache 的出现标志着 AI 辅助工作流工具正从“单一功能插件”向“系统化上下文管理层”演进。

  1. 重新定义人机交互边界:它打破了浏览器沙箱的限制,证明了通过合法的 Native Messaging 机制,Web 应用可以安全地调用原生系统能力,从而提供媲美原生应用的交互体验。这对于需要深度集成系统功能的 Web 扩展开发具有参考价值。
  2. 提升 AI 数据摄入效率:对于开发者、研究人员和内容创作者而言,快速、结构化地摄入视觉和代码上下文是提升 AI 使用效率的关键。Shotcache 提供的“截-存-注-投”一体化流程,显著降低了上下文构建的认知负荷和操作成本。
  3. 开源社区的实践典范:该项目在安全性(权限最小化、代码可审计)和用户体验(微信级流畅度)之间取得了良好的平衡,并主动寻求社区反馈以优化站点适配和长截图算法,体现了开源协作的价值。
  4. 对 AI Agent 生态的补充:随着 AI Agent 的发展,对多模态输入的需求日益增长。Shotcache 作为一个轻量级的“上下文输入层”,为构建更智能、更高效的 AI 工作流提供了基础设施层面的支持。
查看原文 →linux.do