Repository navigation
feat(minimax-pet): bundle the MMX octopus girl pet (0.5.11) - #115
Merged
MyPrototypeWhat merged 4 commits intoNov 9, 2026
Merged
Conversation
Adds an optional bundled pet to MiniMax Pet: MMX 章鱼娘 (mmx-octopus), the original chibi octopus girl of 绿川椒餐饮 (the MMX brand).
New atlas: miniapp/client/pets/mmx-octopus/{pet.json,spritesheet.png}, v1, 1536 x 1872 with the nine animation rows and 57 cells. No look directions, because the character is not produced from layered art; the packaged specification allows a nine-row v1 atlas and the player already handles a v1 pet.
The atlas was generated from locally hosted diffusion model clips: extract frames, cut the subject out, scale every frame to one shared standing height and foot baseline, assemble the exact grid. Generation is not deterministic, so the PNG itself is the source.
Docs describe how the atlas was made and its license. Character and artwork contributed by antianqi (绿川椒餐饮 / MMX) under the MIT License.
… semantics The first atlas reused footage that did not perform the requested action: the running-left row was a near-static arms-open pose, the failed row read as celebration, and the waiting row lost the legs in the source video. Rows are now selected per state from the 360-degree run clip, a clean bounce clip, a sulking clip and a thinking clip, and every row keeps one shared foot baseline. Validator: ok, version 1, 1536x1872, 57 frames, no warnings. Linux node --test 257/257, smoke 70/70.
…acter scale The working row had been cut from a close-up of the source clip, which made the head about 19% wider than every other row. It now uses the full-body standing window of the same clip, whose head width matches the idle row within 1%. Validator: ok, version 1, 1536x1872, 57 frames, no warnings.
The pet metadata and the artwork, provenance and Chinese README notes now credit the individual contributor only. No brand name is shipped.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds an optional bundled pet to MiniMax Pet: MMX 章鱼娘 (
mmx-octopus), an original chibi octopus girl — orange hair, a white vest, a brown plaid skirt, eight tentacles. Bumps the plugin to 0.5.11.miniapp/client/pets/mmx-octopus/{pet.json,spritesheet.png}, v1, 1536 × 1872, with the nine animation rows (idle, running right/left, waving, jumping, failed, waiting, working, review) and 57 cells.supportsLookis false for it).miniapp/client/pets/. The idmmx-octopussorts afterminimax-originalandminimax-takoand beforeoctopus-girl-v2, so the mint robot stays the default pet for fresh profiles.npm run packageand copied intoplugins/minimax-ai/minimax-pet.npm run check:packagereports an exact byte match (40 files).ARTWORK.md,PROVENANCE.md,README.mdandREADME.zh-CN.mddescribe how the atlas was made and its license.How the artwork was made
The character sheets and the action clips were produced in 2026-11 with a locally hosted open-weight image and video diffusion model driven from ComfyUI. Each clip was rendered at 736 × 1280. A local pipeline extracted the frames, cut the subject out of the background with a local segmentation model, and assembled the exact 1536 × 1872 v1 grid: 6/8/8/4/5/8/6/6/6 frames per row, with the unused trailing cells of the shorter rows left fully transparent. Generation is not deterministic, so the PNG itself is the source — there is no
generate:artequivalent.Every frame is scaled to one shared standing height. The foot baseline of a row is the lowest foot among that row's selected frames, so grounded frames sit on one baseline while airborne frames keep their relative lift.
Row mapping
Each row was checked against the bundled
minimax-originalatlas, which is the reference for what these nine states look like in this player: a mirrored pair of running rows, one arm raised forwaving, arms up forjumping, an unhappy face forfailed, and near-still poses forwaiting,runningandreview. The rows map as follows.idleidle-01running-rightmove-03running-leftmove-03wavingclick-01jumpingdrag-01failedclick-03waitingthink-01runningwork-01reviewcele-01Both running rows come from one continuous 360-degree run clip: the right-facing and the left-facing profile halves of that turn. The
waiting,runningandreviewrows are near-still poses, like the bundled default pet's rows, which carry the meaning in the pose rather than in large movement. Thefailedrow is a sulking reaction; the source footage contains no literal failure gesture. The working row keeps a full-body standing pose: the footage that types on a keyboard also contains the keyboard, and the footage that bends over the desk is a close-up that breaks the shared scale.Tests
dev/pet-art-validation.test.mjs: the shippedmmx-octopusatlas passes the packaged Skill validator —ok: true, v1, 1536 × 1872, 57 frames, no warnings.dev/smoke-api.mjs:/api/petslists all four bundled pets in id order withminimax-originalfirst, each with its own declared atlas version (the robot and the two v2 octopus girls are v2;mmx-octopusis v1). Every bundledpet.jsonand spritesheet is served as a PNG in its declared version, and the MMX octopus files are served with their exact packaged bytes.Verification
node --test dev/*.test.mjs(source, Node v24.18.0, Linux): 257/257 pass.node dev/smoke-api.mjs: 70/70 pass.npm run check:package: exact byte match, 40 files.npm run check: 87/87 tests pass.minimax-petplugin and selected in its own UI on Windows, where it lists as "MMX 章鱼娘 v1 内置 使用中". That is a local plugin install, not a released client build.On Windows these two suites cannot run at all, before or after this change:
dev/smoke-api.mjsimportsresolve(packageRoot, …)as a filesystem path (Node rejects ac:URL scheme on Windows), anddev/pet-art-validation.test.mjsspawns the CLI withscript.pathname, which carries a leading/on Windows and therefore resolves toC:\C:\…. Both failures were reproduced identically on cleanorigin/main, so they are pre-existing and unrelated to this change; the numbers above come from Linux, where the repository CI runs.Not verified
License and provenance
The character and artwork are contributed by antianqi under the MIT License; see ARTWORK.md. No third-party pet spritesheet was copied, and the source videos are not shipped.