跳到主要内容
知仓学习社ZHICANG

meme-factory

Generate memes using the memegen.link API. Use when users request memes, want to add humor to content, or need visual aids for social media. Support…

联网执行命令无严重或高危命中softaworks/agent-toolkit

它会碰到什么

扫了多少5 个文本文件,56 KB
它会碰到什么联网执行命令
命中总数3 处
命中统计严重 0 · 高 0 · 中 0 · 低 1

这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。

技能内容

Meme Factory

Create memes using the free memegen.link API and textual meme formats.


Triggers

| Trigger | Description |

|---------|-------------|

| /meme-factory | Manual invocation |

| /meme-factory {template} {top} {bottom} | Direct meme generation |

| meme-factory: create a meme about X | Natural language request |


Quick Reference

| Action | Format |

|--------|--------|

| Basic meme | https://api.memegen.link/images/{template}/{top}/{bottom}.png |

| With sizing | ?width=1200&height=630 |

| Custom background | ?style=https://example.com/image.jpg |

| All templates | https://api.memegen.link/templates/ |

| Interactive docs | https://api.memegen.link/docs/ |

Additional Resources:

  • [Markdown Memes Guide](references/markdown-memes-guide.md) - 15+ textual meme formats
  • [Examples](references/examples.md) - Practical usage examples
  • [meme_generator.py](scripts/meme_generator.py) - Python helper script

Quick Start

Basic Meme Structure

https://api.memegen.link/images/{template}/{top_text}/{bottom_text}.{extension}

Example:

https://api.memegen.link/images/buzz/memes/memes_everywhere.png

Result: Buzz Lightyear meme with "memes" at top and "memes everywhere" at bottom.

Text Formatting

| Character | Encoding |

|-----------|----------|

| Space | _ or - |

| Newline | ~n |

| Question mark | ~q |

| Percent | ~p |

| Slash | ~s |

| Hash | ~h |

| Single quote | '' |

| Double quote | "" |


Popular Templates

| Template | Use Case | Example |

|----------|----------|---------|

| buzz | X, X everywhere | bugs/bugs_everywhere |

| drake | Comparisons | manual_testing/automated_testing |

| success | Victories | deployed/no_errors |

| fine | Things going wrong | server_on_fire/this_is_fine |

| fry | Uncertainty | not_sure_if_bug/or_feature |

| changemind | Hot takes | tabs_are_better_than_spaces |

| distracted | Priorities | my_code/new_framework/current_project |

| mordor | One does not simply | one_does_not_simply/deploy_on_friday |


Template Selection Guide

| Context | Template | Why |

|---------|----------|-----|

| Comparing options | drake | Two-panel reject/approve format |

| Celebrating wins | success | Positive outcome emphasis |

| Problems ignored | fine | Ironic "everything is fine" |

| Uncertainty | fry | "Not sure if X or Y" format |

| Controversial opinion | changemind | Statement + challenge |

| Ubiquitous things | buzz | "X, X everywhere" |

| Bad ideas | mordor | "One does not simply..." |


Validation

After generating a meme:

  • [ ] URL returns valid image (test in browser)
  • [ ] Text is readable (not too long)
  • [ ] Template matches the message context
  • [ ] Special characters properly encoded
  • [ ] Dimensions appropriate for platform

Platform Dimensions

| Platform | Dimensions |

|----------|------------|

| Social media (Open Graph) | 1200x630 |

| Slack/Discord | 800x600 |

| GitHub | Default |


Anti-Patterns

| Avoid | Why | Instead |

|-------|-----|---------|

| Spaces without encoding | URL breaks | Use _ or - |

| Too much text | Unreadable | 2-6 words per line |

| Wrong template | Message mismatch | Match template to context |

| Missing extension | Invalid URL | Always include .png, .jpg, etc. |

| Unencoded special chars | URL breaks | Use ~q, ~s, ~p, etc. |

| Assuming template exists | 404 error | Check templates list first |


Verification

Meme generation is successful when:

  1. URL is valid - Returns HTTP 200
  2. Image renders - Displays correctly in markdown
  3. Text is visible - Properly formatted on image
  4. Context matches - Template fits the message

Test command:

curl -I "https://api.memegen.link/images/buzz/test/test.png"
# Should return: HTTP/2 200

<details>

<summary><strong>Deep Dive: Advanced Features</strong></summary>

Image Formats

| Extension | Use Case |

|-----------|----------|

| .png | Best quality, default |

| .jpg | Smaller file size |

| .webp | Modern, good compression |

| .gif | Animated templates |

Dimensions

?width=800
?height=600
?width=800&height=600  (padded to exact)

Layout Options

?layout=top     # Text at top only
?layout=bottom  # Text at bottom only
?layout=default # Standard top/bottom

Custom Fonts

View available: https://api.memegen.link/fonts/

?font=impact  (default)

Custom Images

Use any image as background:

https://api.memegen.link/images/custom/hello/world.png?style=https://example.com/image.jpg

</details>

<details>

<summary><strong>Deep Dive: Contextual Memes</strong></summary>

Code Reviews

Template: fry
https://api.memegen.link/images/fry/not_sure_if_feature/or_bug.png

Deployments

Template: interesting
https://api.memegen.link/images/interesting/i_dont_always_test/but_when_i_do_i_do_it_in_production.png

Documentation

Template: yodawg
https://api.memegen.link/images/yodawg/yo_dawg_i_heard_you_like_docs/so_i_documented_the_documentation.png

Performance Issues

Template: fine
https://api.memegen.link/images/fine/memory_usage_at_99~/this_is_fine.png

Successful Deploy

Template: success
https://api.memegen.link/images/success/deployed_to_production/zero_downtime.png

</details>

<details>

<summary><strong>Deep Dive: Workflow Integration</strong></summary>

Generating Memes in Response

Here's a relevant meme:

![Meme](https://api.memegen.link/images/buzz/bugs/bugs_everywhere.png)

Dynamic Generation (Python)

def generate_status_meme(status: str, message: str):
    template_map = {
        "success": "success",
        "failure": "fine",
        "review": "fry",
        "deploy": "interesting"
    }

    template = template_map.get(status, "buzz")
    words = message.split()
    top = "_".join(words[0:3])
    bottom = "_".join(words[3:6])

    return f"https://api.memegen.link/images/{template}/{top}/{bottom}.png"

Using the Helper Script

from meme_generator import MemeGenerator

meme = MemeGenerator()
url = meme.generate("buzz", "features", "features everywhere")
print(url)

</details>

<details>

<summary><strong>Deep Dive: API Reference</strong></summary>

Endpoints

| Endpoint | Purpose |

|----------|---------|

| /templates/ | List all templates |

| /templates/{id} | Template details |

| /fonts/ | Available fonts |

| /images/{template}/{top}/{bottom}.{ext} | Generate meme |

API Characteristics

  • Free and open-source
  • No API key required
  • No rate limiting (normal use)
  • Stateless (all info in URL)
  • Images generated on-demand

Error Handling

  1. Check template at https://api.memegen.link/templates/
  2. Verify text formatting (underscores for spaces)
  3. Check special character encoding
  4. Ensure valid extension
  5. Test URL in browser

</details>


References

| Document | Content |

|----------|---------|

| [markdown-memes-guide.md](references/markdown-memes-guide.md) | 15+ textual meme formats (greentext, copypasta, ASCII, etc.) |

| [examples.md](references/examples.md) | Practical usage examples |

Scripts

| Script | Purpose |

|--------|---------|

| [meme_generator.py](scripts/meme_generator.py) | Python helper for meme generation |


Summary

Generate contextual memes to:

  • Add humor to conversations
  • Create social media visuals
  • Make code reviews engaging
  • Celebrate successes

Golden rule: Keep text concise, match template to context.

想直接用这个技能?

本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。