Repository navigation
Add craft-skills plugin with sprite skills - #4
Merged
Merged
Conversation
Add the craft-skills plugin manifest, an empty skills directory and its marketplace entry. The sprite skill files will be added in a follow-up commit. Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01N6QLSr7Xy6yQNtiWmjghNz
Add the sprite skill (background removal, sprite-sheet cutting, animated stickers and mascot profile pictures) with its cutout, animate and render_svg scripts and reference recipes. Update the plugin and marketplace descriptions and regenerate the README tree. Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01N6QLSr7Xy6yQNtiWmjghNz
There was a problem hiding this comment.
🟡 Changes recommended
Unresolved critical SVG security issue and moderate rendering and cutout issues remain.
3 open findings
What changed in this PR
Adds the craft-skills plugin with the mimi-sprite-studio skill for sprite processing, animation, mascot rendering, documentation, and marketplace registration.
Changes:
- Adds plugin metadata and marketplace registration.
- Adds sprite-processing scripts and workflow documentation.
- Updates the README directory tree.
| File | Summary |
|---|---|
README.md |
Adds the plugin directory tree. |
plugins/craft-skills/skills/mimi-sprite-studio/SKILL.md |
Documents sprite workflows. |
plugins/craft-skills/skills/mimi-sprite-studio/scripts/render_svg.py |
Renders mascot SVGs; critical security issue (4 votes) and two moderate rendering issues (2 and 3 votes). |
plugins/craft-skills/skills/mimi-sprite-studio/scripts/cutout.py |
Removes backgrounds and cuts sprite sheets; moderate edge-halo issue (1 vote). |
plugins/craft-skills/skills/mimi-sprite-studio/scripts/animate.py |
Generates animated sticker formats. |
plugins/craft-skills/skills/mimi-sprite-studio/references/mascot-styles.md |
Provides mascot style recipes. |
plugins/craft-skills/skills/mimi-sprite-studio/references/layered-animation.md |
Documents layered animation guidance. |
plugins/craft-skills/.claude-plugin/plugin.json |
Defines the plugin manifest. |
.claude-plugin/marketplace.json |
Registers the plugin. |
🧠 Review effort: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| with tempfile.TemporaryDirectory() as d: | ||
| html = os.path.join(d, 'p.html') | ||
| open(html, 'w').write(f'<body style="margin:0;background:transparent"><div style="width:{S}px;height:{S}px">{svg}</div></body>') | ||
| subprocess.run([chromium(), '--headless=new', '--no-sandbox', '--disable-gpu', '--hide-scrollbars', |
| svg = open(a.svg).read() | ||
| with tempfile.TemporaryDirectory() as d: | ||
| html = os.path.join(d, 'p.html') | ||
| open(html, 'w').write(f'<body style="margin:0;background:transparent"><div style="width:{S}px;height:{S}px">{svg}</div></body>') |
| if a.circle_preview: | ||
| im = Image.open(a.out).convert('RGBA'); m = Image.new('L', im.size, 0) | ||
| ImageDraw.Draw(m).ellipse((0, 0, S - 1, S - 1), fill=255) | ||
| bg = Image.new('RGBA', im.size, (40, 40, 46, 255)); bg.paste(im, (0, 0), m) |
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
craft-skillsplugin underplugins/craft-skills, with its manifest and marketplace entry.mimi-sprite-studioskill (provided by the Sprite Sniptool session): background removal, sprite-sheet cutting, animated stickers (WebP/GIF/APNG) and Discord-safe mascot profile pictures.scripts/cutout.py,scripts/animate.py,scripts/render_svg.py(Pillow + numpy; Chromium for SVG rendering).references/mascot-styles.md,references/layered-animation.md.The other session proposed a separate
sprite-skillsplugin; per the user's request it lives incraft-skillsinstead. The skill content is unchanged.Verification
claude plugin validatepasses for the marketplace andcraft-skills.cutout.pycut 4 sprites from a generated sheet;animate.pywrote WebP/GIF/APNG;render_svg.pyrendered a PNG and circle preview.🤖 Generated with Claude Code
https://claude.ai/code/session_01N6QLSr7Xy6yQNtiWmjghNz