Skip to content

新增 MiniMax Photo:支持 AI 协作的图片编辑 MiniApp - #36

Merged
MyPrototypeWhat merged 54 commits into
MiniMax-AI:mainfrom
WebGuHui:feat/openphotoshop
Oct 20, 2026
Merged

MyPrototypeWhat merged 54 commits into
MiniMax-AI:mainfrom
WebGuHui:feat/openphotoshop

Conversation

@WebGuHui

@WebGuHui WebGuHui commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

改动

新增社区 Mini App MiniMax Photo 0.2.35:在 MiniMax Code 内编辑图片,也可让宿主 Agent 读图、生成图片、语义改图或组合调用编辑工具。基于 PhotoCraft WebAssembly,保留图层、选区、颜色、工程保存及恢复;新增四语言引导、示例图片、可收起的 AI 助手、图片回传和 MCP / QuickJS PTC。

PTC 支持路径曲线、压力、逐笔可视化、撤销、预览和导出。AI 可直接打开指定的 PNG/JPEG/WebP/PSD/pcraft 文件(最多 32 MB),作为新文档导入;不扫描目录或修改原文件。校验无效取色坐标、导出参数和文件头,归一化导入扩展名;通用 Skill 说明工具发现、画布坐标与失败恢复,不绑定参考图题材。

运行 ZIP 14,263,623 字节,98 个文件,不包含 Electron、模型权重、node_modules 或用户录屏。中英文 README、中文用户手册、构建补丁和第三方许可证齐全。MiniMax Photo 是社区作品,不是 Adobe 产品或 MiniMax 官方应用;PhotoCraft、字体、图标和 QuickJS 许可证保留。

验证

  • 当前打包、PTC、逐笔路径与压力检查通过;社区 npm run check 69 项通过。
  • macOS Apple Silicon、真实 MiniMax Code:0.2.35 安装目录 98 个文件与发布 ZIP 逐字节一致。AI 打开真实大写 .PCRAFT 工程,1000×840、五层保留,文档历史仅 Open;原文件字节未变,预览成功。
  • 0.2.33/34 AI 导入分层 PSD,文字与矢量形状保留。无效取色坐标被拒绝,正确数字坐标读色不改变作品。
  • 0.2.31 应用内单次请求约 64 秒完成橘猫文生图、回传和新文档打开;0.2.28 单次请求完成杯子加草莓的语义改图与回传。原作品保留。
  • 0.2.34 M3.1-Flash、真实图片附件和 MiniApp 引用,一条用户消息完成素描并导出 PNG,总耗时 15 分 45 秒。完整窗口录制仅本机交付;轮廓相似,但瞳孔及排线仍有不足,准备约 7 分钟。0.2.35 新 Skill 对速度的改善尚未验证。
  • 对应版本已检查四语言、示例打开、助手收起、草稿保留、Markdown 安全渲染、工程恢复;4000×3000 画布 100 笔、撤销及 PNG 导出完成,单次导出约 1.33 秒。

各项版本、场景和证据边界见 docs/validation.md。上述记录不等于新版全部功能重新验收。

未覆盖与限制

历史首次打开曾失败,重启恢复,原始原因未确认。Windows、稳定客户端、复杂 PSD、全部编辑命令与所有模型配置未全面验证。自然语言任务仍可能误用工具;不保证每次独立完成。底层仍为 PhotoCraft,没有声称完整重写或性能全面超越原项目;绘画耗时包括展示间隔,不能当作渲染基准。语义改图不保证局部之外逐像素不变。

自动备份仅覆盖当前活动作品,重要作品需手动保存工程。宿主 Agent 的文件、Shell、MCP 和模型权限由用户控制,插件不自动批准。内置录像只覆盖编辑器,完整聊天需另录。本包 ENTRY_STDOUT 提示来自独立 worker 中的 QuickJS/Emscripten 默认日志;stdout/stderr 被消费,不写入 Host 入口协议。

poxiao added 2 commits October 19, 2026 20:51
Assisted-by: codex-cli reason:openphotoshop-community-release
Assisted-by: codex-cli reason:user-requested-brand-rename
@WebGuHui WebGuHui changed the title 新增 OpenPhotoShop:支持 AI 协作的图片编辑 MiniApp 新增 MiniMax Photo:支持 AI 协作的图片编辑 MiniApp Oct 19, 2026
poxiao added 27 commits October 19, 2026 21:57
Assisted-by: codex-cli reason:photo-edit-activity
Assisted-by: codex-cli reason:photo-editing-skill

Docs-Impact: document task-dependent editing, PTC return values and recovery.
Assisted-by: codex-cli reason:visible-drawing-workflow
Assisted-by: codex-cli reason:photo-skill-drawing-review
Assisted-by: codex-cli reason:continuous-photo-showcase-recording

Manual-Test: Browser recording saved and decoded; blank canvas and two strokes appear sequentially. Host validation pending.
Assisted-by: codex-cli reason:photo-ptc-console
Assisted-by: codex-cli reason:photo-showcase-tool-guidance
Assisted-by: codex-cli reason:photo-skill-wording
Assisted-by: codex-cli reason:reference-fidelity
Assisted-by: codex-cli reason:photo-skill-reference-workflow

Docs-Impact: Clarifies when attachment viewing is sufficient.
Assisted-by: codex-cli reason:photo-reference-workflow
Assisted-by: codex-cli reason:photo-delivery-audit
Assisted-by: codex-cli reason:photo-help-completeness
Assisted-by: codex-cli reason:photo-native-acceptance
Assisted-by: codex-cli

Docs-Impact: document per-stroke pressure defaults and point overrides
Assisted-by: codex-cli reason:photo-native-validation
Assisted-by: codex-cli reason:photo-package-optimization
Assisted-by: codex-cli reason:photo-native-validation
Assisted-by: codex-cli reason:photo-generation-routing
Assisted-by: codex-cli reason:photo-generation-acceptance
Assisted-by: codex-cli reason:photo-image-edit-validation
poxiao added 25 commits October 20, 2026 06:43
Assisted-by: codex-cli reason:photo-assistant-readability
Assisted-by: codex-cli reason:miniapp-native-verification
Assisted-by: codex-cli reason:miniapp-project-verification
Assisted-by: codex-cli reason:miniapp-performance-evidence
Assisted-by: codex-cli reason:miniapp-tool-guidance
Assisted-by: codex-cli reason:miniapp-native-verification
Assisted-by: codex-cli reason:miniapp-export-validation
Assisted-by: codex-cli reason:miniapp-native-export-verification
Assisted-by: codex-cli reason:miniapp-generation-verification
Assisted-by: codex-cli reason:miniapp-release-documentation
Assisted-by: codex-cli reason:reduce-reference-preparation
Assisted-by: codex-cli reason:miniapp-delivery
Assisted-by: codex-cli reason:native-package-verification
Assisted-by: codex-cli reason:native-edit-validation
Assisted-by: codex-cli reason:agent-file-import
Assisted-by: codex-cli reason:verified-file-import
Assisted-by: codex-cli reason:prevent-silent-pixel-fallback
Assisted-by: codex-cli reason:native-pixel-validation
Assisted-by: codex-cli reason:delivery-documentation
Assisted-by: codex-cli reason:photo-skill-refinement
Assisted-by: codex-cli reason:photo-import-compatibility
Assisted-by: codex-cli reason:photo-release
Assisted-by: codex-cli reason:delivery-documentation
Assisted-by: codex-cli reason:native-photo-validation
Assisted-by: codex-cli reason:native-inapp-validation

@MyPrototypeWhat MyPrototypeWhat left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

感谢贡献,功能很完整!npm run check 本地通过(validate 0 错误、69/69)。我重点看了 Node 端全部代码(miniapp/node/*.mjs,约 1.6k 行)、Agent 交互的源码(ui-src/photo-assistant.tsx)、manifest 和 README / licenses;miniapp/client 里的打包产物和 PhotoCraft WASM 只做了抽查。

  • 权限请求只在用户点击「允许本次」/拒绝后才回复,没有自动批准。
  • 导出路径固定在插件数据目录内(export 拒绝自定义路径),写文件使用 0600。
  • PTC 跑在 QuickJS 沙箱 worker 里,有内存、栈和超时限制,没有文件系统和网络 API。
  • README「Data & access」写得很清楚;PhotoCraft(MIT OR Apache-2.0)、字体、图标的许可证都在 licenses/ 里。

建议(不阻塞):

  1. submit_image_result 会读取 Agent 提供的任意本机 PNG 路径。虽然会校验 PNG 头、只读不写,仍建议限制在会话工作目录或插件数据目录内,或者在 README 里更明确地写出"Agent 可以让插件读取任意本机 PNG"。
  2. miniapp/client/photocraft/photocraft_bg.wasm.gz 约 12 MB。docs/build.md 已写了上游版本和补丁,建议再写出预期的 sha256,方便别人复现构建并核对。
  3. validate 对 ptc-worker.mjs 报了 ENTRY_STDOUT 警告,来自打包进去的 quickjs-emscripten 调试日志(默认关闭),可以忽略,也可以在打包时把 console.log 替换掉。
  4. ## Tested environment 可以写明 MiniMax Code 3.1.2 或更高版本,消除 README_MIN_VERSION_MISSING 警告。

if (name === 'get_image_request') {
result = await service.get(args.requestId);
if (result.mode === 'edit') result = await service.reference(args.requestId);
} else if (name === 'submit_image_result')

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

建议:这里读取的路径来自 Agent,建议限制在工作目录 / 数据目录内,或在 README 中说明。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants