最近在 L 站看到了一些关于 Cherry Studio 划词的反馈,一些情况有些意外,所以想跟大家集中聊聊。
- 很多用户的反馈是好的,而且在 1.4.4 版本之后,支持助手调用了,自由度高了一些。
- 一些用户觉得默认开启,是流氓行为,并类比了一些流氓软件(痛心啊)
- 一些用户甚至还因为有了划词之后,不想更新了(太痛了)
- 一些用户看到 Windows 版本上线之后,来催更 macOS 的。
我们挑了一些关键的问题,尝试统一回复一下:
为什么做划词工具?
因为我们认为 AI 助手与其他工具的协同,拿到上下文,为其他工具提升效率,是极其重要的价值,划词工具是个开始,我们还想做截图问答,甚至更强化的协同机制。
为什么默认开启?
因为做这个功能之前,社区的呼声非常高。这给社区团队造成了一些错觉,大多数人都想要划词助手。在艰难的开发之后,迫不及待地想拿出来给到大家,但确实缺少了更审慎的思考。
流氓吗?
不算流氓吧,我们觉得。流氓的定义是或者动机是为了获取商业利益,拿到用户的信息,或者提升活跃度。Cherry Studio 没这方面的考虑,代码都是开放的,大家有担心可以推举大佬去 review。
下次还敢吗?
不敢了,Windows 版本已经默认关闭了(已经在用的用户,状态不会改)
macOS 什么时候上?
1.5.0,计划是 7 月 1 号发布,默认关闭,有需要的用户可以自己手动大概?
划词工具难开发吗,难在哪儿?
还挺难的。
macOS 难点
许多用户都有印象,大量软件的划词功能依赖 PopClip,而非独立实现。PopClip 深入 macOS 底层的 Accessibility API,对系统进行事件 hook。壁垒在于跨越 Cocoa、Web 及 Electron 等迥异的 UI 框架,实现稳定、无延迟的文本捕获,精确计算浮动 UI 坐标,这是敢卖 25 美金的底气。
Windows 难点
划词实现困难上,Windows 更甚。开发者面对的是"UI 框架的碎片化地狱",一个普适于所有类型窗口、稳定捕获文本选择、且不引起性能和崩溃,其难度与复杂性比在 macOS 上高出一个数量级。以至于在 Windows 巨大份额下,都没有出现一个"PopClip"。
没有现成的开源实现可以用吗?
以前没有,以后有了。
开源社区始终缺少一个成熟、稳定且跨平台的划词捕获框架。希望集成原生划词功能的开发者,都必须从零开始,深入 OS 底层的事件 hook,处理 Accessibility API 的兼容性,解决 Electron、Web 和 native 间巨大且不稳定的行为差异。这导致投入与产出极其不符。
Cherry Studio 中实现的划词工具,是由开发者 @0xfullex 从头开始实现,逐渐完善,并在产品中已经使用的框架。在 Windows 中单写了几千行 C++ hook 才实现正常功能,并在某些场景下表现优于豆包(比如 adobe acrobat)。
Cherry Studio 的划词工具显然还达不到完美,比如安全软件的拦截与误报,一些特殊场景的兼容。好在开源可以让大家信任并参与完善,也希望更多的开发者可以收益于此,低成本在产品中集成划词功能。
再次感谢大家的支持!
