关于 meme-factory
meme-factory 是一项技能,可通过 memegen.link API 和文字梗图格式创建贴合语境的梗图。它涵盖模板选择、文本编码及图片选项,适用于对话、社交内容和代码相关场景。
主要功能
- 01按模板和文字生成梗图
- 02根据内容选择模板
- 03对 URL 特殊字符编码
- 04设置图片尺寸、格式和布局
- 05使用自定义背景和字体
适用场景
- 01为对话增添幽默
- 02制作社交媒体图片
- 03让代码审查更有趣
- 04庆祝部署成功
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ softaworks/ agent-toolkit --skill meme-factory安装后在 Claude Code 中输入/meme-factory确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
README.mdreferences/examples.mdmarkdown-memes-guide.mdscripts/meme_generator.py详细介绍
表情包工厂
使用免费的 memegen.link API 和文本表情包格式创建表情包。
触发方式
| 触发方式 | 描述 |
|---|---|
/meme-factory | 手动调用 |
/meme-factory {template} {top} {bottom} | 直接生成表情包 |
meme-factory: create a meme about X | 自然语言请求 |
快速参考
| 操作 | 格式 |
|---|---|
| 基础表情包 | https://api.memegen.link/images/{template}/{top}/{bottom}.png |
| 设置尺寸 | ?width=1200&height=630 |
| 自定义背景 | ?style=https://example.com/image.jpg |
| 所有模板 | https://api.memegen.link/templates/ |
| 交互式文档 | https://api.memegen.link/docs/ |
其他资源:
- Markdown 表情包指南 - 15 种以上的文本表情包格式
- 示例 - 实用用法示例
- meme_generator.py - Python 辅助脚本
快速入门
基础表情包结构
https://api.memegen.link/images/{template}/{top_text}/{bottom_text}.{extension}
示例:
https://api.memegen.link/images/buzz/memes/memes_everywhere.png
结果:巴斯光年表情包,上方文字为“memes”,下方文字为“memes everywhere”。
文本格式
| 字符 | 编码 |
|---|---|
| 空格 | _ 或 - |
| 换行 | ~n |
| 问号 | ~q |
| 百分号 | ~p |
| 斜杠 | ~s |
| 井号 | ~h |
| 单引号 | '' |
| 双引号 | "" |
热门模板
| 模板 | 用途 | 示例 |
|---|---|---|
buzz | X,X 无处不在 | bugs/bugs_everywhere |
drake | 比较 | manual_testing/automated_testing |
success | 胜利 | deployed/no_errors |
fine | 事情出错 | server_on_fire/this_is_fine |
fry | 不确定 | not_sure_if_bug/or_feature |
changemind | 犀利观点 | tabs_are_better_than_spaces |
distracted | 优先级 | my_code/new_framework/current_project |
mordor | 不是随随便便就能做到 | one_does_not_simply/deploy_on_friday |
模板选择指南
| 情境 | 模板 | 原因 |
|---|---|---|
| 比较选项 | drake | 双栏拒绝/认可格式 |
| 庆祝成功 | success | 强调积极结果 |
| 对问题视而不见 | fine | 反讽“一切正常” |
| 不确定 | fry | “不确定是 X 还是 Y”格式 |
| 有争议的观点 | changemind | 陈述观点并接受挑战 |
| 无处不在的事物 | buzz | “X,X 无处不在” |
| 糟糕的主意 | mordor | “不是随随便便就能……” |
验证
生成表情包后:
- URL 返回有效图像(在浏览器中测试)
- 文本清晰易读(不要太长)
- 模板符合消息情境
- 特殊字符已正确编码
- 尺寸适合目标平台
平台尺寸
| 平台 | 尺寸 |
|---|---|
| 社交媒体(Open Graph) | 1200x630 |
| Slack/Discord | 800x600 |
| GitHub | 默认 |
反模式
| 避免 | 原因 | 建议 |
|---|---|---|
| 空格未编码 | URL 会出错 | 使用 _ 或 - |
| 文本过多 | 难以阅读 | 每行 2–6 个词 |
| 模板不合适 | 消息不匹配 | 根据情境选择模板 |
| 缺少扩展名 | URL 无效 | 始终包含 .png、.jpg 等 |
| 特殊字符未编码 | URL 会出错 | 使用 ~q、~s、~p 等 |
| 假设模板存在 | 出现 404 错误 | 先检查模板列表 |
验证
满足以下条件时,表情包生成成功:
- URL 有效 - 返回 HTTP 200
- 图像已渲染 - 在 Markdown 中正确显示
- 文本可见 - 在图像上正确排版
- 情境匹配 - 模板符合消息内容
测试命令:
curl -I "https://api.memegen.link/images/buzz/test/test.png"
# Should return: HTTP/2 200
深入了解:高级功能
图像格式
| 扩展名 | 用途 |
|---|---|
.png | 质量最佳,默认格式 |
.jpg | 文件体积较小 |
.webp | 现代格式,压缩效果好 |
.gif | 动态模板 |
尺寸
?width=800
?height=600
?width=800&height=600 (padded to exact)
布局选项
?layout=top # Text at top only
?layout=bottom # Text at bottom only
?layout=default # Standard top/bottom
查看可用字体:https://api.memegen.link/fonts/
?font=impact (default)
自定义图片
使用任意图片作为背景:
https://api.memegen.link/images/custom/hello/world.png?style=https://example.com/image.jpg
深入了解:情境化表情包
代码审查
Template: fry
https://api.memegen.link/images/fry/not_sure_if_feature/or_bug.png
部署
Template: interesting
https://api.memegen.link/images/interesting/i_dont_always_test/but_when_i_do_i_do_it_in_production.png
文档
Template: yodawg
https://api.memegen.link/images/yodawg/yo_dawg_i_heard_you_like_docs/so_i_documented_the_documentation.png
性能问题
Template: fine
https://api.memegen.link/images/fine/memory_usage_at_99~/this_is_fine.png
部署成功
Template: success
https://api.memegen.link/images/success/deployed_to_production/zero_downtime.png
深入了解:工作流集成
在回复中生成表情包
Here's a relevant meme:

动态生成(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"
使用辅助脚本
from meme_generator import MemeGenerator
meme = MemeGenerator()
url = meme.generate("buzz", "features", "features everywhere")
print(url)
深入了解:API 参考
端点
| 端点 | 用途 |
|---|---|
/templates/ | 列出所有模板 |
/templates/{id} | 模板详情 |
/fonts/ | 可用字体 |
/images/{template}/{top}/{bottom}.{ext} | 生成表情包 |
API 特性
- 免费且开源
- 无需 API 密钥
- 无速率限制(正常使用时)
- 无状态(所有信息都在 URL 中)
- 按需生成图片
错误处理
- 检查模板:https://api.memegen.link/templates/
- 确认文本格式(用下划线代替空格)
- 检查特殊字符编码
- 确保扩展名有效
- 在浏览器中测试 URL
参考资料
| 文档 | 内容 |
|---|---|
| markdown-memes-guide.md | 15 种以上的文本表情包格式(greentext、copypasta、ASCII 等) |
| examples.md | 实用示例 |
脚本
| 脚本 | 用途 |
|---|---|
| meme_generator.py | 用于生成表情包的 Python 辅助工具 |
总结
生成情境化表情包,以便:
- 为对话增添幽默
- 创建社交媒体视觉内容
- 让代码审查更有趣
- 庆祝成功
**黄金法则:**文字要简洁,模板要符合情境。
评论
支持 Markdown