ArtCraft(實測版本 v0.41.0)是一套 macOS 桌面應用,掌管「AI 生成」——圖像與多模態素材;同一個家族裡的 DesignCraft 則管排版與出版。本文只主張已驗證的事實,拆解它的資料模型、成本,以及它在 agent 工作流裡的正確位置。
定位:桌面 App,不是 CLI
ArtCraft 是桌面 App,不是 CLI。這跟同門的 DesignCraft 相反:DesignCraft 官方已釋出 designcraft-cli(支援 run、script、app、mcp、perf 等頂層子命令),而 ArtCraft 本身實測未見獨立 CLI。
因此自動化的穩定介面是檔案交接:ArtCraft 產出素材、落進資料目錄,再由 CLI 或 agent 接手。誠實邊界很重要——與其把未證實的命令面寫進文章,不如把「用檔案交接」講清楚。
實測資料:App、資料目錄與任務庫
以下全部為實機查證:
| 項目 | 值 |
|---|---|
| App 路徑 | /Applications/ArtCraft.app |
| 內部 binary | Contents/MacOS/artcraft |
| 版本 | 0.41.0(build 2026-09-26;git c3844ac) |
| App 資料目錄 | ~/Artcraft/(assets / credentials / downloads / settings / state / temp) |
| 任務庫 | ~/Artcraft/state/tasks_v7.sqlite(加 -wal / -shm 旁檔) |
| 對外 API | https://api.storyteller.ai/v1/omni_gen/…(例如 cost/image) |
| 家族成員 | DesignCraft(排版出版,附 designcraft-cli) |
資料模型與查詢
ArtCraft 把每個生成任務寫進 tasks_v7.sqlite;產物落 downloads 與 assets。你可以用唯讀方式查任務狀態,避免鎖住 App。
3.1 唯讀查任務庫
用 immutable=1 開 SQLite,讀取時不寫任何 WAL:
sqlite3 -readonly ~/Artcraft/state/tasks_v7.sqlite \
"SELECT name FROM sqlite_master WHERE type='table';"
App 也會寫執行日誌 ~/Artcraft/artcraft_debug.log(版本、session、API 往返、狀態同步),是排障的第一站。
3.2 啟動與版本查詢
想查版本又不阻 GUI,用子 shell 起一下就收:
( "/Applications/ArtCraft.app/Contents/MacOS/artcraft" --version & p=$!; sleep 3; kill $p 2>/dev/null )
成本與帳號
生成走 api.storyteller.ai,是計費動作;有 omni_gen/cost/image 端點可以先問價再生成。幾條底線:
- 憑證存
~/Artcraft/credentials/—— 敏感,勿外傳、勿貼上網、勿截圖; - session token 會出現在 log,同樣不要抄去任何地方;
- 大量生成前先查 cost,把成本控制在前端而不是事後帳單。
工具鏈定位:它與誰配
官方家族已為排版一方釋出正式 CLI(designcraft-cli),支援 app(連 App --control)、script、mcp、perf 等。至於 ArtCraft 本身,重點仍是 GUI,自動化接口屬未知,故以檔案交接為穩定介面:
| 角色 | 工具 | 交接方式 |
|---|---|---|
| AI 生成 | ArtCraft(GUI) | 產出素材 |
| 檔案中轉 | ~/Artcraft/downloads | 素材落地 |
| 排版出版 | DesignCraft(designcraft-cli) | 讀取素材成稿 |
| Office 檔 | OfficeCLI | 文件自動化 |
建議工作流:人機協作
一個最乾淨的四人接力:
- 生成:用 ArtCraft GUI 出素材(先查 cost);
- 落地:素材進
~/Artcraft/downloads; - 排版:交
designcraft-cli或officecli成稿; - 出版:出 PDF/圖,交付。
步驟 2 到 3 的交接示例如下:
cp ~/Artcraft/downloads/*.png ~/Projects/design-work/assets/ 2>/dev/null
designcraft-cli run --sample --cmd file.new='{"preset":"A4"}' --all-pages ./out
下一步
- 排版出版側,直接讀 DesignCraft 深度教學:用 designcraft-cli 做排版與出版 學
designcraft-cli的完整命令面; - Office 檔自動化側,讀 OfficeCLI 深度教學:用命令列讓 AI 直接操控 Word/Excel/PowerPoint 學三層模型與原子 batch;
- 若官方日後釋出 ArtCraft 的 CLI 或 MCP,優先以官方 reference 為準,勿照網路舊文猜命令。