一句話結論
PhotoCraft 是一套用 100% Rust 從零重寫、MIT/Apache-2.0 雙授權的開源影像編輯器,支援圖層、遮色片、真實 PSD 往返,還能把同一套編輯引擎用命令列或 MCP 交給 AI Agent 驅動;它在 2026 年 9 月 30 日上線後 10 天內累積約 3.4 萬顆星,但目前仍是 early alpha,還不能當成專業日常工作的 Photoshop 替代品。
為什麼會有人想「重寫一套 Photoshop」?
這件事聽起來很像開玩笑,但過去兩年開源社群在做的其實是一整套「把商用創作軟體拆掉重蓋」的運動:PDF 有自架的 Stirling PDF、遠端桌面有 RustDesk、編輯器有 Zed,現在輪到了影像編輯。
PhotoCraft 的動機說得很直白:它的位置是「離線、開源、屬於你自己」的影像編輯器。沒有訂閱、沒有雲端帳號、沒有把作品上傳到別人伺服器的必要。它由 ArtCraft 團隊維護,屬於一系列被稱為 Crafting Apps 的姊妹專案,全部遵守同一套原則:clean-room(只根據公開規格與實際行為實作,不含任何專有程式碼、shader 或素材)、純 Rust、原生跨平台、可在瀏覽器以 WebAssembly 執行、而且全部都能被 Agent 驅動。
基本資料(2026-10-09 實查)
| 項目 | 內容 |
|---|---|
| 專案 | storytold/photocraft |
| 授權 | MIT 或 Apache-2.0(雙授權) |
| 語言 | Rust(100%),GPU 合成用 wgpu |
| Stars | 約 34,089 |
| Forks | 約 4,849 |
| 建立時間 | 2026-09-30(非常新) |
| 官網/下載 | getartcraft.com/apps/photocraft |
| 平台 | macOS、Windows、Linux、FreeBSD、Web(WASM) |
| 狀態 | Early alpha(作者自己標的) |
核心功能:不只是「能開圖」
PhotoCraft 的功能表不是「小畫家等級」,而是照著 Photoshop 的操作習慣一路抄齊:
| 類別 | 具體內容 |
|---|---|
| 工具數 | 52 種工具:選取(矩形、套索、磁性套索、魔術棒、物件選取、快速選取)、修補(污點修復、修補、內容感知移動)、筆刷、仿製印章、漸層、塗抹、加亮/加深/海綿、鋼筆與各種形狀工具等 |
| 調整圖層 | 16 種:Curves(支援單通道)、Levels(含即時直方圖)、Vibrance、Hue/Saturation、黑白、色版混合器、漸層對應、相片濾鏡、選色、Color Lookup(.cube/.3dl/.look) |
| 圖層與遮色片 | 群組、剪裁遮色片、像素與向量遮色片、填色圖層、智慧型物件(含智慧型濾鏡與無損變形)、27 種混合模式、Alpha 通道與快速遮色片 |
| 圖層樣式 | 陰影、內陰影、內外光暈、斜角和浮雕、緞面、筆畫、顏色/漸層/圖樣覆蓋,可貼到任何圖層(含文字圖層) |
| 選取智慧化 | 快速選取、物件選取、選取主體、選取並遮住(修飾髮絲邊緣);全部在本機執行,不上雲端、不需帳號 |
| 濾鏡 | 模糊家族(高斯、動態、放射、鏡頭、形狀、模糊 gallery)、銳利化、減少雜訊、扭曲(扭轉、波浪、漣漪、置換、剪裁…)、像素化、風格化、演算圖(雲、鏡頭光暈、光源效果)——每個濾鏡對話框都在畫布上即時預覽,並且只作用在選取範圍內 |
| 筆刷引擎 | 形狀動態、散佈、紋理、雙筆刷、顏色動態、轉移、潮濕邊緣、平滑(含 Pulled String),支援筆壓、傾斜、旋轉 |
| 色彩 | RGB/灰階/CMYK/Lab,8/16/32 位元;純 Rust 實作 ICC 色彩管理(指定/轉換描述檔、四種渲染意圖、黑點補償、軟打樣、溢色警告) |
| 格式 | PSD/PSB、分層 TIFF、SVG、原生 .pcraft;輸出 PNG、JPEG、TIFF、WebP、GIF、BMP、TGA、ICO、QOI、PNM、OpenEXR、HDR、AVIF;HEIC 可讀;Affinity 的 .afphoto/.afdesign/.afpub 可開啟(唯讀) |
值得一提的細節:Dark/Studio/Classic 三種介面主題、命令面板(⌘F)、動作錄製與重播(Actions)、歷史記錄面板與歷史筆刷(可以只復原單筆筆刷)。
最硬的一塊:真實 PSD 往返
多數開源修圖軟體死在同一個地方——別人的 PSD 打開來圖層全毀。PhotoCraft 把 PSD 支援當成獨立 crate 來做(照 Adobe 公開規格實作),並用真實檔案庫驗證,官方公佈的數字是:
| 驗證項目 | 結果 |
|---|---|
| psd-tools 測試集往返 | 309 檔中 307 檔重存後渲染一致 |
| ag-psd/psd-tools 混合集 | 170 檔中 169 檔一致 |
| 形狀圖層像素比對 | 116/116 與 Photoshop 輸出一致 |
| 無法建模的區塊 | 原樣保留(不丟棄),包含未支援的原始區塊與描述子 |
| 測試規模 | 超過 1,700 個測試(PSD 往返、合成器 oracle、多位元深度檢查) |
作者也講得很誠實:重存後不是位元組完全相同(會重寫影像資源、圖層記錄與合成圖),唯一能做到逐位元組重現的是獨立的 photocraft-psd crate(只解析與寫入、不經文件模型)。
安裝:五種平台,最短三步
原始碼編譯(任何平台都能跑)
git clone https://github.com/storytold/photocraft
cd photocraft
cargo run --release -p photocraft -- image.psd # 開啟桌面版並載入檔案
cargo test --workspace # 跑完整測試套件
介面與文字工具要用的日文字型來自 craft-fonts(可選建置輸入):
git clone https://github.com/storytold/craft-fonts ../craft-fonts
CRAFT_FONTS_DIR="$PWD/../craft-fonts" cargo run --release -p photocraft
各平台官方建置
| 平台 | 取得方式 |
|---|---|
| Linux | AppImage(免安裝)/Flatpak/.deb/.rpm/tarball |
| Windows | .msi 安裝檔或 portable zip(x64/arm64/x86,皆有程式碼簽章) |
| macOS | 通用版 .dmg(已簽章與公證);CLI 另有 universal zip |
| FreeBSD 14 | x86_64 tarball,解到 /usr/local |
| Web | photocraft-web-<ver>.zip 靜態站,丟到任何靜態伺服器;也可用 Docker 自架 |
Flatpak 安裝範例:
flatpak install --user photocraft-<version>-linux-x86_64.flatpak # 或 aarch64
flatpak run ai.storyteller.photocraft
Linux 使用者注意兩個坑:
- Wayland 下拖放檔案不會開圖(上游 winit 0.30 尚未支援)。替代做法:用「檔案 › 開啟」,或在檔案管理員複製後按 Ctrl+V;要拖放就改用 XWayland 啟動:
WAYLAND_DISPLAY= ./photocraft-<version>-linux-x86_64.AppImage。 - AppImage 第一次執行會在
~/.local/share註冊啟動圖示與選單項目(Wayland 下 dock 才會顯示圖示);不想被動就設PHOTOCRAFT_NO_DESKTOP_INTEGRATION=1。
讓命令列與 AI Agent 動手:同一套引擎的三種入口
這是 PhotoCraft 與傳統修圖軟體最大的架構差異:每一個選單項目、工具與對話框,背後都是同一份 500+ 指令註冊表中的一個命令。UI、CLI、JSON 控制通道與 MCP 伺服器呼叫的是同一批命令——你能點得到的,腳本與 AI Agent 就能做。
情境一:無介面批次修圖(可寫進 Makefile/cron)
# 開檔 → 智慧型銳利化 → 新增曲線調整圖層 → 輸出 PNG
photocraft-cli run wave.psd \
--cmd filter.sharpen.smartSharpen --params '{"amount":80}' \
--cmd layer.newAdjustmentLayer.curves --params '{"points":[[0,0],[64,48],[192,212],[255,255]]}' \
--out wave-final.png
# 把同一組動作套用到整個資料夾
photocraft-cli batch --actions grade.json --in ./raw --out ./graded
# 每個子命令都會自我說明
photocraft-cli batch --help
情境二:讓 AI Agent 透過 MCP 操作
photocraft-cli mcp # 以 MCP 伺服器模式啟動(無介面,或橋接到執行中的 App)
把這行掛進 Claude Code、Codex CLI 或任何支援 MCP 的 Agent,Agent 就能直接對 PSD 執行「調色 → 加字 → 匯出」的流程;桌面版另提供僅限 loopback、需認證的控制通道(photocraft --control),可讀取 UI 狀態、用指標事件驅動工具、並截取離屏畫面——README 裡所有示範圖都是這樣產生的。控制協定細節在 docs/control-protocol.md。
情境三:瀏覽器版(WASM)
整個引擎與 UI 都編譯成 WebAssembly,官方提供靜態站 zip,也能用 Docker 自架(packaging/web/README.md)——適合放進內網當「不裝軟體也能改圖」的公用入口。
架構與效能:為什麼它跑得快
| 設計 | 說明 |
|---|---|
| 引擎優先 | 純資料的文件模型 + 命令引擎,介面只是薄薄一層 egui;24 個 crate 的層次在編譯期就被強制檢查 |
| 雙合成器互為對照 | CPU 合成器當作參考 oracle,wgpu 合成器負責 GPU 畫布,兩者互相對測 |
| 寫入時複製分頁 | 256² 稀疏分頁讓復原變便宜、大畫布也輕盈;每個圖層狀態的效果圖會快取 |
| 多執行緒濾鏡 | 大半径模糊用 running-sum box 掃描跨核心運算——3.6MP 影像的 radius-180 高斯模糊不到一秒 |
| Clean-room | 只依公開規格與觀察到的行為實作,不含任何專有程式碼 |
| 安全與模糊測試 | 解析器強化、fuzzing、威脅模型與漏洞通報流程都在 book/src/security/ 與 SECURITY.md |
誠實的限制:現階段還不能拿來當飯吃
作者在 README 放了一段相當罕見的自我揭露,值得原文照抄重點:
PhotoCraft 處於 early alpha。Photoshop 的功能面「大部分以某種形式存在」,但它還不是能應付專業日常工作的 Photoshop 替代品。最大的缺口是 AI/生成式功能、大約二十個尚未實作的工具、排版與專業工作流程的深度,以及外掛相容性。每個 Photoshop 選單項目都已接上命令(見
docs/parity.md),但那衡量的是「有沒有接線」,不是「行為是否等價」。
換句話說:功能表看起來很像,行為深度還差得遠。實際導入前建議先做三件事:①用你自己的 PSD 檔跑一輪往返比對;②確認你要用的濾鏡與輸出色域;③先當成「批次處理與自動化工具」而不是「取代 Photoshop 的主力」。
與 Photoshop/GIMP/Krita 怎麼選?
以公開資料做一個高層次對照(價格與授權以官方公告為準):
| 比較項目 | PhotoCraft | Adobe Photoshop | GIMP | Krita |
|---|---|---|---|---|
| 授權 | MIT/Apache-2.0 開源 | 商業訂閱制 | GPL 開源 | GPL 開源 |
| 費用結構 | 免費 | 月/年訂閱 | 免費 | 免費 |
| 原生 PSD 往返 | 有(307/309 測試集一致) | 原生格式 | 讀取為主,往返常有落差 | 可讀,複雜圖層易走樣 |
| 執行方式 | 原生(Rust)+WebAssembly | 原生+雲端功能 | 原生 | 原生 |
| 主要強項 | 自動化、CLI/MCP、隱私、跨平台 | 完整專業工作流與生態系 | 免費修圖、外掛生態 | 數位繪畫、筆刷手感 |
| AI 生成式功能 | 幾乎沒有(最大缺口) | 內建(部分在雲端) | 依外掛 | 部分 AI 外掛 |
| 適合誰 | 要批次自動化、要隱私、要 Agent 驅動的人 | 專業設計與印刷流程 | 預算有限的一般修圖 | 插畫與繪畫創作者 |
選擇邏輯可以簡化成一句話:要「畫得好」找 Krita,要「免費修圖」看 GIMP,要「專業生態」還得是 Photoshop;而 PhotoCraft 目前最強的場景,是把它塞進自動化流程裡——尤其是讓 Agent 或 CLI 幫你處理一整批圖。
同場加映:Crafting Apps 全家桶
PhotoCraft 不是孤軍奮戰,ArtCraft 團隊同時在重寫整條創作產線(全部 Rust、全部開源、全部可被 Agent 驅動):
| App | 用途 | 對應商用軟體概念 |
|---|---|---|
| PhotoCraft | 影像編輯(圖層/遮色片/PSD) | Photoshop |
| VectorCraft | 向量插畫 | Illustrator |
| FilmCraft | 影片剪輯、調色與聲音 | Premiere Pro |
| LightCraft | 相片庫與 RAW 顯影 | Lightroom |
| PdfCraft | PDF 閱讀、整理與保護 | Acrobat |
| EffectCraft | 動態圖像與視覺特效 | After Effects |
| DesignCraft | 版面編排與出版 | InDesign |
要貢獻或讓 Agent 接手開發,官方建議的入口是 AGENTS.md,再進 docs/ 與文件書 book/;社群在 Discord(discord.gg/artcraft)。
站內延伸閱讀
- Stirling PDF 完整教學 2026:92K 星開源 PDF 工具箱,60+ 工具自架取代 iLovePDF、Smallpdf
- Zed 編輯器完整教學 2026:9.1 萬星 Rust 極速開源編輯器
- RustDesk 完整教學 2026:12.5 萬星開源遠端桌面,自架 hbbs/hbbr 取代 TeamViewer
- MCP 完整教學 2026:什麼是 Model Context Protocol?從架構、三大原語到實作
- Immich:開源自託管照片和影片管理器
資料來源
- GitHub:
storytold/photocraftREADME、docs/parity.md、docs/roadmap.md(誠實功能對照評估 2026-10-05)、docs/control-protocol.md - 官方網站:getartcraft.com/apps/photocraft
- 專案數據:GitHub API
repos/storytold/photocraft(查詢時間 2026-10-09,stars 34,089/forks 4,849) - 測試語料:photocraft-corpus、psd-tools、ag-psd、PngSuite
- 品牌與商標聲明:Adobe、Photoshop、Illustrator、Premiere Pro、Lightroom、Acrobat、After Effects、InDesign 為 Adobe Inc. 商標;PhotoCraft 為獨立開源專案,與 Adobe 無隸屬關係
