夜雨聆风学习资料网

ARTICLE · 1314548

又一个开源AI工具火了:小白也能复刻网站、小游戏和桌面应用

又一个开源AI工具火了:小白也能复刻网站、小游戏和桌面应用

最近「让 AI 把现成的软件复刻一遍」的风刮得挺猛。

十月份 REA 刚火过一轮,靠 Claude Code 把 Ghidra 这类逆向工具串起来,没源码也能扒出一个软件大概是怎么实现的,star 数冲到了十几万。这波还没消停,GitHub 上又冒出来一个 Craft Anything,10 月 31 号开的源,我写这篇的时候 star 已经一万出头,fork 一千六。

我翻了一圈仓库,感觉它和 REA 不是一个路子,值得说说。

先简单介绍

Craft Anything 是 ArtCraft 团队开源的,纯 Rust 写的,MIT 和 Apache-2.0 双许可。官方 README 里是这么定位的:看清一个软件是怎么做的,再让 AI 帮你造一个自己的版本。

拆开说:你把目标丢给它,一个网址、一个桌面应用、一个小游戏都行,再说一句自己想要什么。它会先拿自带的检查工具把原作研究一遍,截屏,量布局,读代码,能读到哪一层取决于我们给它开了什么权限。研究完了再让本机的 coding agent 照着建一个新项目,建完它还要拿新项目和原作逐项比对,不像的地方一条条列出来接着改,改到足够像才算完。

功能详情

流程就四步,每步都留证据

整个流程是固定的四步:研究(Study)、构建(Build)、检查(Check)、就绪(Ready)。

研究这一步,它不让大模型凭空猜。网站会在各种宽度下把页面截出来,布局、颜色、字体、间距都是量出来的;桌面软件在深度模式下能看函数列表、字符串、反编译出来的伪 C 代码。所有结论都会存成证据记录,标着置信度,看准了的就是看准了,没搞定的它会标记出来让你知道。

构建交给本机的 coding agent 干,可选的挺多的,Claude、Codex、Kimi等都可以,你本机装了啥,它就用啥。技术栈可以在需求里点名,比如「用 Rust 复刻这个游戏的玩法」。

我自己最看重的是检查这步。拿网站来说,它会在三种屏宽下把新旧两个版本都渲染出来对比,给个相似度百分比,差在哪一条条列出来,再让 agent 对着差异清单修,修到达标才算完。

净室模式和深度模式

默认是净室模式(Clean room)。这个模式下它只看访客能看到的东西:截图、页面上显示的文字、量出来的样式,原作的代码、文件、页面源码一律不碰。想往内部看的工具会被直接拒掉,顺便告诉我们深度模式怎么开。

深度模式(Deep)才是全家桶,读二进制、反编译,机器上装了 Ghidra 也会调起来。官方说法是给你自己私下研究用的。

这么设计其实是冲着版权去的。净室复刻这个说法在软件版权领域有些年头了,重写的人不接触原始代码,只观察外部行为。不过 README 自己也写明了,净室只是工具层面的规则,并不等于系统沙箱,agent 在我们机器上能干什么,还是取决于它自己的权限。

简单模式和进阶模式

简单模式就是上面截图那样,选要复刻的类型,填个地址,说句话,按 Start。右边进度条走着,有拿不准的地方它会弹卡片问我们,碰到越界的操作(比如跑一条 curl)也得等我们点头。

进阶模式就是把整套逆向工作台摆出来,函数列表、伪 C、反汇编、十六进制、调用图、证据台账都在,底下还挂着 agent 的对话框。

两种模式背后是同一个引擎,界面一浅一深而已。

对 agent 友好,CLI 和 MCP 都有

README 现在写的是 320 个工具,每个工具同时是 CLI 子命令和 MCP 工具。我们不开它的界面,也能让别的 agent 直接驱动这套引擎:

craft-anything-cli mcp

一条命令就把整个引擎挂成 MCP 服务。只做研究不做构建的话,连 AI 都不用配。

构建靠谁

干活这步得靠我们本机登录好的 coding agent,官方目前打磨得最多的是 Claude Code,做法是不经手账号,直接调我们机器上装好的那份程序。Codex 的适配器也有,但官方明说还没在真实环境里验证过。

Qwen Code、opencode 这类走 ACP 协议的也能切,官方也注明了,这一串里只有个别真跑通过。问答和分析环节可以接本地 OpenAI 兼容的服务,不依赖外部平台。

这些我都是照官方写的转述,能用程度大家自己掂量,我用 Codex 验证过网站,确认是可以的,其他的大家感兴趣的自己试。

快速开始

想从源码跑的话,Rust 要 1.97 以上,克隆下来编译就行:

git clone https://github.com/storytold/craft-anything && cd craft-anythingcargo run --release -p craft-anything                # 桌面应用cargo install --path apps/craft-anything-cli         # 命令行工具craft-anything-cli doctor                            # 检查环境、agent 和引擎

doctor 会把缺的项一条条列出来,还附上怎么补的提示,照着补齐就行。

懒得编译的话,官方 Releases 页有现成的安装包,Windows 的 msi、macOS 的 dmg(签名和公证都做了)、Linux 的 AppImage、deb、rpm 都有,连 FreeBSD 都给了包。

跑通以后复刻一个网站就是一行命令的事:

craft-anything-cli rebuild https://example.com "Recreate this website"

想接着改不用重来,在原项目上继续聊就行:

craft-anything-cli rebuild https://example.com "Make the header blue" --continue-in "<项目文件夹>"

生成的项目默认放在 Documents/Craft Anything 下面。每个项目文件夹里东西分得挺清楚:craft.json 存请求和状态,capture/ 是从目标抓来的东西,app/ 装生成的项目,checks/ 是每一轮的比对记录。出了问题翻这几个目录,基本都能对上号。

一个跑完的贪吃蛇项目:四步全部完成,直接点 Play the game 就能玩

提醒一句,构建的时候装依赖会在我们机器上跑命令,npm 的安装脚本默认就会执行。它对没见过的命令会逐条问我们要不要放行,别图省事一路 always allow,信不过的项目就算了。

我的看法

先说它和 REA 的差别。REA 本质上是把 Ghidra、IDA 这些现成工具用 MCP 串起来,逆向的核心能力还是别人的。Craft Anything 是自己拿 Rust 写了一套引擎,解码器、反汇编器、反编译器全都自带,不装任何外部程序也能跑。自己写引擎这条路工程量明显大得多,好处是每个环节都握在自己手里。

真正让它和那些「截图复刻网站」的小工具拉开差距的,是检查环节。生成一个长得像的页面谁都会,生成完拿三种屏宽逐项比对、列出差异、修到达标,做到这一步的工具目前没几个。

最后照例提醒,官方 README 写了 responsible use:只在自己拥有或者有权检查的软件上用,它不绕 DRM,不绕登录,不绕反作弊。复刻出来的东西默认不照抄原作的 logo、图片和文案,会换成占位符。拿它学什么、复刻什么,这个度自己把握。

开源地址

https://github.com/storytold/craft-anything

点击下方卡片,关注AI开源无界

这个公众号长期分享实用开源项目。如果你不想逐篇翻阅历史文章,可以直接关注微信公众号“AI开源无界”,通过后台留言与我们互动交流。

回首页,搜索你想要的文档

在首页搜索框输入关键词,快速定位资料

文库首页搜索指引 立即搜索

相关学习资料