meme-generation
Create meme PNGs from templates with Pillow text overlay.
DeepseekModel
官方收录技能
质量 优秀 · 90
v1.0.0
获取
https://deepseekmodel.com/api/download.php?id=nousresearch-hermes-agent-optional-skills-creative-meme-generation-skill-md&format=skill
下载 .skill
标准格式,含 system_prompt 与 model_config,导入任意 Agent 框架即可使用
.skill 文件中 system_prompt 字段的实际内容。
name meme-generation description Create meme PNGs from templates with Pillow text overlay. version 2.0.0 author adanaleycio license MIT platforms ["linux","macos","windows"] metadata {"hermes":{"tags":["creative","memes","humor","images"],"related_skills":["ascii-art"],"category":"creative"}} Meme Generation Generate actual meme images from a topic. Picks a template, writes captions, and renders a real .png file with text overlay. When to Use User asks you to make or generate a meme User wants a meme about a specific topic, situation, or frustration User says "meme this" or similar Available Templates The script supports any of the ~100 popular imgflip templates by name or ID, plus 10 curated templates with hand-tuned text positioning. Curated Templates (custom text placement) ID Name Fields Best for this-is-fine This is Fine top, bottom chaos, denial drake Drake Hotline Bling reject, approve rejecting/preferring distracted-boyfriend Distracted Boyfriend distraction, current, person temptation, shifting priorities two-buttons Two Buttons left, right, person impossible choice expanding-brain Expanding Brain 4 levels escalating irony change-my-mind Change My Mind statement hot takes woman-yelling-at-cat Woman Yelling at Cat woman, cat arguments one-does-not-simply One Does Not Simply top, bottom deceptively hard things grus-plan Gru's Plan step1-3, realization plans that backfire batman-slapping-robin Batman Slapping Robin robin, batman shutting down bad ideas Dynamic Templates (from imgflip API) Any template not in the curated list can be used by name or imgflip ID. These get smart default text positioning (top/bottom for 2-field, evenly spaced for 3+). Search with: python " $SKILL_DIR /scripts/generate_meme.py" --search "disaster" Procedure Mode 1: Classic Template (default) Read the user's topic and identify the core dynamic (chaos, dilemma, preference, irony, etc.) Pick the template that best matches. Use the "Best for" column, or search with --search . Write short captions for each field (8-12 words max per field, shorter is better). Find the skill's script directory: SKILL_DIR=$(dirname "$(find ~/.hermes/skills -path '*/meme-generation/SKILL.md' 2>/dev/null | head -1)") Run the generator: python " $SKILL_DIR /scripts/generate_meme.py" <template_id> /tmp/meme.png "caption 1" "caption 2" ... Return the image with MEDIA:/tmp/meme.png Mode 2: Custom AI Image (when image_generate is available) Use this when no classic template fits, or when the user wants something original. Write the captions first. Use image_generate to create a scene that matches the meme concept. Do NOT include any text in the image prompt — text will be added by the script. Describe only the visual scene. Find the generated image path from the image_generate result URL. Download it to a local path if needed. Run the script with --image to overlay text, choosing a mode: Overlay (text directly on image, white with black outline): python " $SKILL_DIR /scripts/generate_meme.py" --image /path/to/scene.png /tmp/meme.png "top text" "bottom text" Bars (black bars above/below with white text — cleaner, always readable): python " $SKILL_DIR /scripts/generate_meme.py" --image /path/to/scene.png --bars /tmp/meme.png "top text" "bottom text" Use --bars when the image is busy/detailed and text would be hard to read on top of it. Verify with vision (if vision_analyze is available): Check the result looks good: vision_analyze(image_url="/tmp/meme.png", question="Is the text legible and well-positioned? Does the meme work visually?") If the vision model flags issues (text hard to read, bad placement, etc.), try the other mode (switch between overlay and bars) or regenerate the scene. Return the image with MEDIA:/tmp/meme.png Examples "debugging production at 2 AM": python generate_meme.py this-is-fine /tmp/meme.png "SERVERS ARE ON FIRE" "This is fine" "choosing between sleep and one more episode": python generate_meme.py drake /tmp/meme.png "Getting 8 hours of sleep" "One more episode at 3 AM" "the stages of a Monday morning": python generate_meme.py expanding-brain /tmp/meme.png "Setting an alarm" "Setting 5 alarms" "Sleeping through all alarms" "Working from bed" Listing Templates To see all available templates: python generate_meme.py --list Pitfalls Keep captions SHORT. Memes with long text look terrible. Match the number of text arguments to the template's field count. Pick the template that fits the joke structure, not just the topic. Do not generate hateful, abusive, or personally targeted content. The script caches template images in scripts/.cache/ after first download. Verification The output is correct if: A .png file was created at the output path Text is legible (white with black outline) on the template The joke lands — caption matches the template's intended structure File can be delivered via MEDIA: path
Agent 识别该技能的关键词,点击任意一个即可复制。
该技能未提供触发词。
下载的 .skill 包内含以下字段。
| 字段 | 说明 |
|---|---|
| format | 格式标识(skill/v1) |
| skill_id | 技能唯一 ID |
| name | 技能名称 |
| version | 版本号 |
| description | 技能描述 |
| category | 所属分类(数组) |
| trigger_words | 触发词列表 |
| tags | 标签列表 |
| source | 来源标识 |
| source_url | 来源链接(本页地址) |
| exported_at | 导出时间(每次下载生成) |
| system_prompt | 系统提示词正文 |
| model_config | 模型参数:provider / model / temperature / max_tokens / top_p |
| examples | 示例 |
| install_guide | 各平台导入说明(Coze / Dify / Claude / 自定义框架) |