用 AI 拆软件,怎么不算给文科生准备的“抄袭大法”?
(来源:果壳)
假如你在别人开发的 App 里看到一个很好用的功能,想在自己的产品里也做一个,过去大概只有两条路。要么自己边琢磨边从头写,要么找一个懂逆向的工程师,花上几天把这个功能拆开来研究。
本周,在开发者圈爆火刷屏的开源项目 REA,给出了第三条路,也就是把“逆向”这件事交给 AI 去做。
REA 是“Reverse Engineer Anything”的缩写,意思是“逆向一切”。它的 GitHub 主页的介绍写着:
"See a feature in an app that you want in your own product? Ask your agent to investigate it with REA."
“在某个 App 里看到想加进自己产品的功能?让你的智能体用 REA 去查一查。”
据 Star History 统计,10 月 4 日到 10 日这一周,REA 新增了 7.88 万星,在当周所有 GitHub 项目里排第一。到我写这篇稿子的时候,它的总星数已经接近 10 万。(GitHub 上的“星”,相当于开发者的收藏和点赞。)
同一周,还有一位开发者宣布,他用 Claude Opus 5.5“复刻”了 Adobe 全家桶的七款软件。
AI“逆向一切”,你不行也能上
先说说什么是逆向工程。
我们平时用的软件,是程序员先写好源代码,再“编译”成电脑能直接执行的机器码。源代码人能读懂,机器码基本就是一长串数字。逆向工程,就是手里没有源代码,只拿着编译好的程序,往回推它是怎么写出来的。
这有点像拿到一只没有图纸的机械表,想知道它的计时功能怎么实现,只能打开表盖,一个齿轮一个齿轮地看它们怎么咬合。过去这是安全研究员和破解者才具备的手艺,要在反编译器、调试器这些专业工具之间来回切换,拆一个功能花上几天是常事。
REA 做的事,是把这些专业工具接到 Claude Code、Codex、Cursor 这类 AI 编程智能体上,用 MCP 接口调用(一种让智能体调用外部工具的通用协议)。
智能体负责提问,REA 负责取证丨REA
安装完成之后,你只要对智能体说一句“弄清楚某个 App 的搜索功能是怎么做的,给我看证据,再在我的项目里做一个类似的”,它就会自己调用 Ghidra、IDA、Hopper 这些反汇编工具去翻机器码,最后把结论和证据一起交回来。
其实让 AI 接上逆向工具这件事,GhidraMCP、IDA Pro MCP 等开源项目去年就在做了,REA 的新意在于把门槛降到了普通开发者也能上手的程度。
逆向工程教材《Practical Reverse Engineering》的合著者 Elias Bachaalany 在 X 上转发 REA 的推介时,给的评价只有一个词,“炒作”。有点看不上但又忍不住凑热闹的意思。
REA 主页上放了几个案例。其中一个是经典打砖块游戏 DX-Ball,智能体从一次播放音效的调用,一路追到根据球的位置计算左右声道的函数,再把它还原成 C 代码。还原出的代码通过了 3205 组测试,编译出来的 63 个字节和原版完全相同。
REA 主页展示的逆向案例丨REA
AI 过硬的逆向能力,早些时候就有表现。4 月 30 日,英国 AI 安全研究所(AISI)公布了对 OpenAI GPT-5.5 网络安全能力的评测。其中有一道逆向题,专业测试员用了大约 12 小时才解出来。但 GPT-5.5 在没有任何人帮忙的情况下,用 10 分 22 秒解出了这道题,花掉的 API 费用是 1.73 美元。
这项评测和 REA 没有关系,用的是 AISI 自己搭的测试环境。但它说明,让 AI 读懂并拆解一个别人写的程序,成本正在快速变低。
AI 博主 Matthew Berman 在 X 上转发 REA 时只写了一句:
"Reverse Engineer Anything Software is done."
“逆向一切 软件完蛋了。”
“软件这门生意结束了”
当然,觉得软件要完的人,不止他一个。
10 月初,开发者 Brandon Thomas 在 Reddit 上发布了 ArtCraft 旗下的七款开源软件,分别对标 Adobe 的 Photoshop、Illustrator、Premiere、Lightroom、After Effects、InDesign 和 Acrobat Pro。
按他的说法,这些软件是借助 Claude Opus 5.5 用 Rust 语言写成的,完全免费,能在 Mac、Windows 和 Linux 上运行。
长得很像 Photoshop 的 PhotoCraft丨ArtCraft
在同一周的 Star History 榜单上,排在 REA 后面的第二名就是 ArtCraft 里对标 Photoshop 的 PhotoCraft,一周新增 4.29 万星。
Thomas 说,他做这件事的起因,是被 Adobe 的退订费坑了好几次。在 Hacker News 的一条评论里,他写道:
"Software is over."
“软件这门生意结束了。”
他在同一条评论里还说,自己“一次就成功生成了整个 Photoshop”。
ArtCraft 和 REA 是两个独立的项目,没有技术上的关联。Thomas 把自己的软件称为“净室重写”(clean-room),意思是没有照抄 Adobe 的代码和素材,只照着功能重新写了一遍。
左:PhotoCraft 界面截图;右:FilmCraft 界面截图
但真正用起来,问题不少。
据 PetaPixel 的报道介绍,PhotoCraft(对标 Photoshop)和 FilmCraft(对标 Premiere)的界面和原版几乎一模一样。但有媒体汇总的用户反馈显示,带智能对象(Smart Object,一种特殊图层,保留图像的原始数据和特性,可对图层进行非破坏性编辑)的 PSD 文件打开后会出问题。FilmCraft 导入较多视频片段时会崩溃。PhotoCraft 仓库自带的测试里,要它重新算出 Photoshop 滤镜效果的 30 个案例,只有 5 个能对上,说明 PhotoCraft 能读写这类文件,但还算不对里面的结果。
Thomas 最初在 Reddit 上承诺“一个月内做到 100% 功能对等”。几天后他在 Hacker News 上改了口,说做到 99% 需要一段时间,但肯定是以月来算,不会以年来算。
显然 AI 编程(vibe coding)让一个软件第一次就做到“能打开、能点、能导出”的时间大大提前了,可成熟软件最难的部分,常常是那些需求清单之外发生的特殊情况。
这句话,我在开发自己的 App 上深有体会。
想到用它拯救卡壳的产品
我自己是一个非技术出身的独立开发者,手上正好有一个做了一半、暂时搁置的 App。看到这两件事,我觉得挺兴奋的,接着就想起了开发那个 App 卡住的地方。
我一直想要一个带提词器的拍摄 App。拍口播视频的时候,台词就显示在画面上,眼睛不用离开镜头。
我自己做的提词相机丨作者供图
正巧 iPhone 17 系列给前置换上了一块全新的正方形传感器,苹果官方叫它 Center Stage 前置摄像头,1800 万像素。因为传感器是方的,拍竖屏、横屏还是方形视频,都不用转手机,从同一块传感器上按比例裁出来就行。用它做一个提词相机,再合适不过。
苹果 iPhone 17 上更新的 center stage 摄像头,采用方形传感器设计,不用转手机就能实现横竖屏比例的画面切换| Apple
我不是技术出身,就用 Codex 一点一点做。界面 UI 参考了 Blackmagic Camera 和飓风相机,这两款专业拍摄 App 的前置拍摄都做得特别好,还自带 Lut 滤镜,我想把其中一些功能也搬过来。
但是按照我现有的能力,做出来的东西只是“勉强够用”。比如,它能做到前置 4K 录制,但需要按一个单独的 tab 切换进去,而且 preview 很卡顿,完全没有原生相机的流畅度,也做不到像 Blackmagic Camera 那样点一下就自动按比例裁切。
左:飓风相机(影视飓风开发)开机界面;右:Blackmagic Camera 开机界面
于是,这个项目被我搁置了一段时间。后来,我看到了 QCam。它几乎就是我想象中题词拍摄类产品应该有的样子。
按照官网的介绍,它支持 4K 前置录制,能从 iPhone 17 的正方形传感器直接录出 1:1、16:9、9:16 三种画幅。QCam 把这种录法叫作 Open Gate,这是电影摄影机里的说法,意思是“片门全开”,画面用满整块传感器,后期想怎么裁都有余量。
它的提词器会听着你的声音滚动,你读快了它跟上,你停下来喘口气它就等着,语音识别全在手机本地完成。用后置摄像头拍的时候,它也能提词。它的 UI 做得很漂亮,调用 iPhone 前置摄像头的体验也非常原生。价格是一次性 49 美元,买断,不订阅。
独立开发者 yihui 做的灵感提词器,也比我的版本更接近我当初的设想。
左:灵感提词器开机界面;右:QCam 开机界面
(大概是中了 Vibe Coding 的毒了),我用 Codex 和 Claude 接着改。
我用 Claude Design 重新设计了 UI,也借鉴了 QCam 的一些设计理念和功能设计,尽量往原生 iOS 体验上靠。
但要一比一复刻是做不到的,因为我不知道人家底层的相机链路是怎么连起来的。到现在,我的 App 还没有语音跟随提词,台词只能自动匀速滚动,用后置摄像头拍时提词的功能也还没加。
看到 REA 的时候,我冒出来的第一个念头是,有了它,也许能把这一环打通(也许之后我会试一试)。
但是让 AI 拆解软件,想法还重要吗?
“逆向工程”让人有些上头。尤其对我这样,光有技术梦的人来说。那些成熟的大产品,功能是怎么一层层搭起来的,过去我们只能猜,现在有机会看看人家的思路。然后,通过 AI 编程实现。
但这里有一条底线,必须守住。
REA 主页底部的免责声明写着,它为“合法的逆向工程研究、分析和重建”提供工具,取得授权、遵守法律的责任在使用者自己。
“重建”也被写进了合法用途丨REA
法律怎么划这条线,各地并不一样。中国的《计算机软件保护条例》第十七条,允许为了学习和研究软件的设计思想和原理去使用软件。可大多数商业软件的用户协议里,都写着禁止反编译的条款。
软件行业传统的“净室开发”,要求拆软件的人和写代码的人分成两组、互相隔开,为的就是日后能提供新代码是独立写出来的证据。REA 让同一个智能体既读反编译结果、又写新代码,这道保护著作权的墙就不存在了。
我给自己定的规矩是,拿它来学习,不拿它去侵权,也不把它做出来的东西拿去商用。
做得出来和用得下去,是两码事
再者,我们为什么为一款软件付费?
拿我自己的开发经历举例,在开发过程中我踩了很多坑,视频保存、稳定录制,每个看起来简单的环节都会出问题。
一个成熟产品卖给用户的,是“你不用操心”。它稳定,长期有人维护。用它,你能实实在在提高工作效率,做出更好的作品。
PetaPixel 在评价 ArtCraft 时,也说过类似的话:
“An app is more than just its codebase; it is also its stability, performance, functionality, and ability to handle the extreme edge cases that make or break professional success.”
“一个 App 不只是一堆代码,还包括它的稳定性、性能和功能,以及它能不能扛住那些决定专业工作成败的极端情况。”
很多人说,有了 vibe coding,谁都能做产品。但只要你认真做过一个项目,就会知道这里面有多少坑。AI 帮你做出来的,很多时候只是一个架子,离真正投入稳定使用还有很长一段路。
REA 的出现也改变不了这一点,成熟的产品和开发者,并不会认为它会是一个多大的威胁。
我会继续打磨我的题词相机,REA 不会替我把它变成 QCam。但它让我这样的文科生多了一个机会,去看看那些做得好的产品,到底好在哪里。
参考文献
[1] https://security.feishu.cn/link/safety?target=https%3A%2F%2Fgithub.com%2Fmorluto%2Frea&scene=ccm&logParams=%7B%22location%22%3A%22ccm_docs%22%7D&lang=zh-CN
[2] https://security.feishu.cn/link/safety?target=https%3A%2F%2Fwww.aisi.gov.uk%2Fblog%2Four-evaluation-of-openais-gpt-5-5-cyber-capabilities&scene=ccm&logParams=%7B%22location%22%3A%22ccm_docs%22%7D&lang=zh-CN
[3] https://security.feishu.cn/link/safety?target=https%3A%2F%2Farstechnica.com%2Fai%2F2026%2F10%2Fsoftware-is-over-bold-ai-developer-takes-aim-at-adobe-with-open-source-clones%2F&scene=ccm&logParams=%7B%22location%22%3A%22ccm_docs%22%7D&lang=zh-CN
[4] https://petapixel.com/2026/10/07/someone-rebuilt-free-open-source-versions-of-photoshop-premiere-and-lightroom-using-ai/
[5] https://www.star-history.com/?repos=morluto%2Frea&type=date
[6] https://x.com/gkxspace/status/2109268529589457326
作者:本一
编辑:马文