Skills gif-sticker-maker
📦

gif-sticker-maker

Medium Risk ⚙️ External commands📁 Filesystem access🌐 Network access🔑 Env variables

Create animated GIF stickers from photos

Transform any photo into a set of four animated stickers with a distinctive Funko Pop 3D figurine style. This skill handles the complete workflow from image generation through animation to final GIF output, requiring only a source photo and a MiniMax API key.

Supports: Claude Codex Code(CC)
🥉 72 Bronze
1

Download the skill ZIP

2

Upload in Claude

Go to Settings → Capabilities → Skills → Upload skill

3

Toggle on and start using

Test it

Using "gif-sticker-maker". A headshot photo of a smiling person

Expected outcome:

  • 4 GIF stickers generated (sticker_hi.gif, sticker_laugh.gif, sticker_cry.gif, sticker_love.gif)
  • Each sticker shows the person as a Funko Pop style 3D figurine with matching facial features
  • Captions displayed below each figurine in matching language
  • Soft studio lighting with white background on all outputs

Using "gif-sticker-maker". A photo of a dog sitting on grass

Expected outcome:

  • 4 animated GIF stickers with the dog rendered in cute 3D figurine style
  • Each sticker shows a different animated action (waving, laughing, crying, heart gesture)
  • Stylized rendering with Octane-quality lighting effects
  • GIF files ready for sharing in messaging apps

Security Audit

Medium Risk
v1 • 4/16/2026

This skill converts photos into animated GIF stickers using the MiniMax AI API. Static analysis flagged 84 patterns, but most are false positives: argparse.ArgumentParser was misidentified as weak cryptography, and markdown bash code blocks were misidentified as Ruby backtick execution. Confirmed risks include legitimate subprocess calls to ffmpeg for video-to-GIF conversion, HTTP requests to documented MiniMax API endpoints, environment variable access for API keys, and local file read/write operations for image processing. All identified patterns are consistent with the skill documented purpose and pose no malicious intent.

8
Files scanned
683
Lines analyzed
10
findings
1
Total audits

High Risk Issues (1)

External command execution via ffmpeg subprocess
The script scripts/convert_mp4_to_gif.py uses subprocess.run to invoke ffmpeg for MP4 to GIF conversion. Arguments are constructed from CLI input parameters (input file paths). While arguments are not shell-interpolated and use list form (preventing shell injection), user-controlled file paths are passed directly to the external process. This is a legitimate workflow requirement for the skill but represents an external command execution risk.
Medium Risk Issues (3)
File read operations with user-provided paths
Scripts minimax_image.py and minimax_video.py read local image files via open() using paths derived from CLI arguments. The _encode_image function reads arbitrary files and encodes them as base64 data URIs for API submission. While legitimate for the skill purpose, this allows reading any file accessible to the process if a malicious actor controls CLI arguments.
File write operations to user-specified paths
Scripts write output files to paths specified via CLI arguments. The os.makedirs call with exist_ok=True creates directory structures as needed. While standard for a generation tool, this allows writing to any path the process has permission to access.
API key loaded from environment variable at module level
Both minimax_image.py and minimax_video.py read MINIMAX_API_KEY from environment at import time (module-level assignment). This means any script that imports these modules gains access to the API key value. The key is then included in HTTP Authorization headers for API requests.
Low Risk Issues (2)
HTTP requests to external API endpoints
Scripts make HTTP requests to MiniMax API endpoints (api.minimaxi.com and api.minimax.io). Base URLs are configurable via MINIMAX_API_BASE environment variable. All requests include timeouts and use HTTPS. This is expected behavior for an API client skill.
Hardcoded API endpoint URLs in comments
Default API base URLs are documented in comments at scripts/minimax_image.py and scripts/minimax_video.py. These are informational only and do not represent a security risk since the actual URL must be set via environment variable.

Detected Patterns

Subprocess execution with user-controlled input paths
Audited by: claude

Quality Score

77
Architecture
100
Maintainability
87
Content
50
Community
36
Security
91
Spec Compliance

What You Can Build

Social media sticker packs

Create custom animated sticker packs from personal photos or brand mascots for messaging platforms and social media profiles.

Brand avatar animation

Convert company logos or brand characters into consistent sets of animated expressions for marketing campaigns and internal communications.

Personalized gifts and reactions

Turn family photos or pet pictures into fun animated stickers that can be shared in group chats or printed as novelty items.

Try These Prompts

Basic photo to stickers
Convert my photo into 4 animated GIF stickers in Funko Pop style. Use default captions and actions.
Custom caption stickers
Create 4 animated stickers from this photo with custom captions: 'Hello', 'Haha', 'Oops', 'Love it'. Use Funko Pop 3D style with white background.
Pet sticker animation
Turn this photo of my cat into 4 animated GIF stickers in Funko Pop style. The captions should be in Japanese. Preserve the cat distinctive markings in the generated images.
Brand logo animation
Convert this company logo into 4 animated sticker expressions in 3D figurine style. Use English captions. Each sticker should show a different emotion: greeting, laughter, sadness, and affection. Output all as GIF files.

Best Practices

  • Use clear, well-lit photos with the subject centered for best likeness preservation in generated stickers
  • Set MINIMAX_API_BASE to the correct regional endpoint (api.minimaxi.com for China, api.minimax.io for overseas) before running
  • Review generated GIF file sizes and adjust the ffmpeg width and fps parameters if outputs are too large for your use case

Avoid

  • Do not share your MiniMax API key in prompts or commit it to version control; always use environment variables
  • Do not use subject reference with non-person subjects (animals, objects) as the API will not preserve likeness
  • Do not mix languages between captions and the user interface language; keep all output in one consistent language

Frequently Asked Questions

What photo formats work best as input?
Clear JPEG or PNG photos work best. The subject should be well-lit and clearly visible. For person subjects, face-forward photos produce the most accurate likeness in the generated stickers.
Do I need a MiniMax account to use this skill?
Yes. You need a MiniMax account with an active API key. Set MINIMAX_API_KEY and MINIMAX_API_BASE environment variables before running the skill.
Can this skill animate objects or logos?
Yes, but without likeness preservation. The subject reference flag only works for person subjects. For objects and logos, the skill relies on text descriptions in the prompt to generate the figurine style.
Why is ffmpeg required?
ffmpeg is used in the final step to convert the MP4 video files from MiniMax into animated GIF format. It performs a two-pass palette generation for better visual quality.
How long does the full workflow take?
The workflow involves four image generation calls, four video generation calls (which are polled asynchronously), and four GIF conversions. Video generation typically takes the longest, often several minutes per video.
Can I customize the sticker actions and animations?
Yes. You can provide custom captions and the skill will build matching animation prompts. The default actions are waving, laughing, crying, and heart gesture, but you can specify alternatives during the caption collection step.