artcraft
storytold/artcraft加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
你有过这样的经历吗?对着 Midjourney 连续输入了二十多版 prompt,想让 AI 生成的角色在每一帧里保持同一个人物——但它偏偏每次都"创意发挥",要么发型变了,要么肤色偏了。你删掉重试、调低创意度参数、试了十几种 Seed 值……最终要么妥协,要么放弃。
ArtCraft 想要解决的核心问题就是这个:把 AI 生成从"抽奖"变成"制作"。它不是又一个 Web 界面或 API 聚合器,而是一个完整的桌面 IDE——艺术家可以像在 Photoshop 里那样,真正"构建"画面:放置角色、调整构图、设定相机角度、控制光影关系——然后再让 AI 在这个精确控制的基础上生成最终成品。

2023 到 2024 年间,AI 图像生成从实验室走向大众,Midjourney、DALL-E 3、Stable Diffusion 相继爆火。但对于专业创作者来说,这些工具有一个根本矛盾:prompt 的表达能力是有限的。
当你需要让角色在连续三帧里保持完全一致的发型和服装时,prompt 无能为力。当你需要精确控制角色站在画面的哪个位置、光源从哪个角度打过来时,文字描述的颗粒度永远不够细。更别说那些"我知道我想要什么但不知道怎么描述"的模糊创意了——这类需求在专业创作中占了绝大多数。
ArtCraft 的创始团队(Storyteller AI)意识到这个问题后,决定构建一个工具:让艺术家用视觉方式控制 AI,而不是用文字驯服 AI。2024 年底公司宣布将核心产品开源,2025 年初 GitHub 仓库公开,迅速积累超过 1.2 万 Star。
ArtCraft 最独特的设计理念,是引入了 3D 场景预构建(Scene Pre-construction) 概念。
具体工作流是这样的:用户首先在 ArtCraft 的 3D 编辑器里布置场景——放置角色模型、调整道具位置、设定相机角度和焦距。你可以用"Image to Location"功能将角色放置到一个真实拍摄的场景照片中,然后用"Character Posing"工具调整人物的姿势。这些操作全部在三维空间里完成,精度远高于文字描述。
预构建完成后,ArtCraft 将场景数据作为结构化控制信号传给下游的 AI 模型。这与传统的纯文字 prompt 有本质区别:构图信息(相机角度、物体位置、光照方向)不再需要被"翻译"成模糊的英文描述,而是以精确的参数形式注入生成流程。这就是 ArtCraft 能够在多次生成中保持角色一致性的技术基础。
在 2D 层面,ArtCraft 提供了多层图像合成(Image Compositing)工具,支持背景抠图、图层叠加、手绘遮罩(Canvas Inpainting)。这些功能模拟了 Photoshop 的核心操作,用户不需要 AI"理解"你的意图,而是直接用视觉方式表达。
ArtCraft 不训练自己的生成模型,而是做一个全模型聚合层。目前支持的模型横跨多个类别:
图像生成:FLUX.1(dev/schnell/pro/ultra)、GPT Image 1.5/2/2.5、Nano Banana 2、Seedream 4/5、Midjourney 全系。
视频生成:Seedance、Kling(1.6 到 3.0)、Veo 3、Veo 3.1、Sora 2、Vidu Q3、MiniMax H3 等 25 个视频模型。
3D 建模:Hunyuan3D(全系)、Tripo3D、Meshy、Rodin,覆盖从草图到高精模型的完整流程。
世界生成:World Labs 的 Marble 系列(Gaussian Splatting),可以从单张图像生成可漫游的三维世界。
音乐与声音:Suno 全系、Seed Audio。
这种聚合策略意味着:用户不需要在五六个不同的网站之间切换、注册、充值。ArtCraft 充当统一的创作界面,背后的模型供应商可以自由切换。对于创作者来说,这意味着工作流的连贯性;对于模型提供商来说,这意味着多了一个分发渠道。
ArtCraft 的技术选型非常有意思。它采用 Rust(后端)+ Tauri 2(桌面框架)+ React/Vite(前端)+ TypeScript 构建原生桌面应用。
这是一个典型的"用现代 Web 技术写原生应用"的架构:前端是 React 单页应用,通过 Tauri 的 IPC 机制调用 Rust 后端逻辑。Rust 后端负责与各种 AI 模型提供商的 API 通信、数据持久化(SQLite)、以及系统级操作。
为什么不选 Electron?官方文档提到 Tauri 的二进制体积远小于 Electron(ArtCraft 安装包仅数十 MB),且 Rust 的内存安全性更适合需要长期运行的创作工具。代码质量规范(见 CLAUDE.md)要求使用 log crate 的结构化日志而非 println!,使用 sqlx 的编译时查询检查而非运行时拼接,代码组织要求"自上而下阅读,重要内容在前"。
整个项目采用 monorepo 结构,主要模块包括:
crates/desktop/artcraft:Tauri 桌面应用核心crates/api_clients:各 AI 服务商的 API 客户端封装crates/schema:数据库 schema 和序列化类型定义frontend/apps/artcraft:React 前端frontend/libs:可复用 React 组件库推荐方式:直接下载官方提供的 Windows/macOS 安装包(/api/v1/images/markdown/b528cf196244f12ade07bdb0a5fa72d5.png)。这是体验 ArtCraft 最稳定的方式,开箱即用,不需要配置任何开发环境。
从源码构建(适合 Linux 用户和开发者):
./script/artcraft/unix_dev.sh 启动联合开发模式(自动启动前端 + Rust 编译watch)从源码构建的主要挑战在于 Tauri CLI 版本匹配和环境变量配置。官方文档推荐使用 Node.js v24.13.0 和 Tauri CLI 2.10.0,版本偏差可能导致构建失败。
ArtCraft 的核心价值在于将创作控制权还给艺术家:当你不再需要和 prompt 搏斗,当你可以在三维空间里精确布局场景,当你可以在多个顶级 AI 模型之间无缝切换——AI 生成才真正变成了一种可控的创作媒介,而不仅仅是灵光一现的抽奖机。