{"id":"83b2c4d7-4ab1-4073-b547-773fb6c44134","shortId":"k3eNCP","kind":"skill","title":"anycap-social-meme-workflows","tagline":"Create meme-style images, funny meme drawings, captioned photos, and lightweight social visuals with AnyCap. Use when an agent needs to turn a joke, reaction, campaign hook, quote, or screenshot into a meme image, funny doodle-style meme drawing, captioned image, or short meme-vi","description":"# AnyCap Social Meme Workflows\n\nUse this skill when the output needs to feel like a meme, captioned social post, or reaction visual, but still has to be reproducible.\n\n**Do not rely on image generation alone for exact caption text.**\nUse AnyCap to create or edit the base visual, then render the final caption locally so the text is exact.\n\n## Read First\n\nRead these files before acting:\n\n1. This file for the workflow\n2. [references/workflows.md](references/workflows.md) for pattern selection, prompt formulas, and article mapping\n\nFor detailed CLI syntax, authentication, and capability reference, use the `anycap-cli` skill.\n\n## Best Fit\n\nUse this skill for:\n\n- meme-style hero images with exact top or bottom text\n- funny meme drawings with doodle-style internet humor\n- captioned photos for blog posts or social posts\n- reaction visuals from an existing screenshot or photo\n- short meme-video concepts where the still or base frame comes first\n- use-case demos that need both generated media and a repeatable workflow\n\nDo not use this skill for:\n\n- large meme-template databases\n- highly specific internet meme lore pages\n- exact brand or copyrighted character recreation requests\n- production subtitle pipelines with timing-heavy caption editing\n\n## Core Rule\n\nSplit the task into two layers:\n\n1. **Base visual layer** with AnyCap\n2. **Exact text layer** with deterministic local rendering\n\nWhy:\n\n- image models are good at style, composition, and fast variation\n- image models are not dependable for long exact caption text\n- deterministic overlay keeps the final meme readable and repeatable\n\n## Workflow\n\n```mermaid\ngraph LR\n    A[Classify request] --> B[Choose model]\n    B --> C[Generate or edit base visual with AnyCap]\n    C --> D[Overlay exact text locally]\n    D --> E[QA readability and punchline]\n    E --> F[Deliver locally, via Drive, or via Page]\n```\n\n### 1. Classify the request\n\nChoose one workflow first:\n\n- **Text-first meme**: the joke or caption exists; the visual supports it\n- **Funny meme drawing**: the humor mostly lives in the drawing style, pose, or absurd scene\n- **Reaction remix**: user supplies an image and wants meme treatment\n- **Captioned photo**: exact line of text on top of an image\n- **Meme-video concept**: still image, caption, then optional short video\n\nFor funny meme drawings, default to one of these repeatable presets:\n\n- **Classic doodle**: the strongest default for blob characters, stick-figure-adjacent humor, and easy-to-draw meme pages\n- **Bad drawing**: useful when the joke works because the art is awkward or deliberately clumsy\n- **Rage-comic-adjacent**: only when you want old-web comic energy without relying on canonical rage faces or meme-lore cloning\n\n### 2. Choose the model\n\nDefault mapping:\n\n- **Seedream 5** for stronger first-pass visuals\n- **Nano Banana Pro** when editing an existing image or screenshot\n- **Nano Banana 2** when you need many variants fast, especially for funny meme drawings\n\nAlways inspect the model list or schema if the workflow is unclear:\n\n```bash\nanycap image models\nanycap image models nano-banana-2 schema\n```\n\n### 3. Generate or edit the base visual\n\nText-to-image example:\n\n```bash\nanycap image generate \\\n  --model seedream-5 \\\n  --prompt \"reaction-image style visual, exaggerated expression, blank top and bottom safe space for meme caption, high contrast, clean composition\" \\\n  --param aspect_ratio=1:1 \\\n  --param resolution=2k \\\n  -o meme-base.png\n```\n\nImage-to-image example:\n\n```bash\nanycap image generate \\\n  --model nano-banana-pro \\\n  --mode image-to-image \\\n  --prompt \"turn this into a sharper reaction meme image, preserve the subject, simplify background, leave clear safe space for top and bottom caption\" \\\n  --param images=./source.png \\\n  --param aspect_ratio=1:1 \\\n  --param resolution=2k \\\n  -o meme-remix-base.png\n```\n\nPrompt for negative space explicitly. Ask for \"blank caption-safe area\", \"clean top band\", or \"empty bottom margin\" instead of asking the model to write the exact meme text.\n\nFunny meme drawings example with Nano Banana 2:\n\n```bash\nanycap image generate \\\n  --model nano-banana-2 \\\n  --prompt \"funny meme drawing, crude but charming internet doodle style, exhausted office goblin melting into an office chair while holding a tiny coffee cup, absurd tiny-problem energy, wildly exaggerated defeated expression, messy desk chaos without readable screens, thick sketch lines, off-white paper texture, muted green accents, obvious blank space for optional caption, no words, no letters, no watermark\" \\\n  --param aspect_ratio=4:3 \\\n  --param resolution=2k \\\n  -o funny-meme-drawing.png\n```\n\nFor funny meme drawings, the caption is optional. If the humor already lands through the drawing alone, you can deliver the image as-is. If the joke needs exact wording, add the caption locally afterward.\n\n### 4. Overlay exact text locally\n\nPreferred order:\n\n1. existing local image toolchain already used by the repo or operator\n2. simple SVG or HTML/CSS card rendered locally\n3. ImageMagick if installed\n\nIf no local renderer is available, create a simple SVG with:\n\n- bold uppercase title text\n- stroke or shadow for contrast\n- controlled padding and line breaks\n\n### 5. QA the output\n\nCheck:\n\n- exact caption text matches the requested copy\n- line breaks read well on mobile\n- subject and caption do not compete visually\n- punchline is legible in a thumbnail\n- the output still looks intentional without knowing the prompt\n\nIf needed, use AnyCap image reading to inspect the result:\n\n```bash\nanycap actions image-read \\\n  --file ./final-meme.png \\\n  --instruction \"Read the visible text and describe whether the caption is easy to read at small size.\"\n```\n\n### 6. Deliver\n\n- return the local file path when the human is in the same workspace\n- upload to Drive when they need a share link\n- publish a simple Page when the deliverable is a gallery or mini use-case report\n\n## Use-Case Article Angle\n\nThis skill supports workflow-led articles better than template-library articles.\n\nGood article angles:\n\n- how to make memes online with an AI agent\n- funny meme drawings with an AI agent\n- easy memes to draw with an AI agent\n- how to add text to a photo with an AI agent\n- how to make a meme video with an AI agent\n- how to create memes on Instagram without switching tools\n\nBad article angles:\n\n- obscure meme-name pages\n- \"blank template\" databases\n- trend-chasing pages that need constant pop-culture maintenance\n\n## Output Expectations\n\nA good run should usually produce:\n\n- 1 to 4 base visual variants\n- 1 exact-text final image\n- optional share link or published page\n- a short note explaining model choice and workflow\n\n## Guardrails\n\n- Avoid copyrighted characters or branded logos unless the user provides a clear right to use them.\n- Do not promise exact text rendering from the model itself.\n- Prefer exact text overlay locally when the copy matters.\n- Avoid adult or hateful meme requests.\n- Treat meme style as a delivery format, not an excuse for sloppy output.","tags":["anycap","social","meme","workflows","anycap-ai","agent","agent-skills","claude-code","cli","coding-agent","skills"],"capabilities":["skill","source-anycap-ai","skill-anycap-social-meme-workflows","topic-agent","topic-agent-skills","topic-claude-code","topic-cli","topic-coding-agent","topic-skills"],"categories":["anycap"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/anycap-ai/anycap/anycap-social-meme-workflows","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add anycap-ai/anycap","source_repo":"https://github.com/anycap-ai/anycap","install_from":"skills.sh"}},"qualityScore":"0.466","qualityRationale":"deterministic score 0.47 from registry signals: · indexed on github topic:agent-skills · 32 github stars · SKILL.md body (7,008 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-01T12:57:24.161Z","embedding":null,"createdAt":"2026-04-18T22:22:35.614Z","updatedAt":"2026-05-01T12:57:24.161Z","lastSeenAt":"2026-05-01T12:57:24.161Z","tsv":"'-5':562 '/final-meme.png':917 '/source.png':638 '1':120,260,344,587,588,642,643,811,1080,1086 '2':126,266,482,508,542,686,695,823 '2k':591,646,765 '3':544,762,831 '4':761,804,1082 '5':489,860 '6':935 'absurd':378,720 'accent':745 'act':119 'action':912 'add':799,1022 'adjac':434,461 'adult':1143 'afterward':803 'agent':25,1004,1011,1019,1030,1040 'ai':1003,1010,1018,1029,1039 'alon':88,784 'alreadi':779,816 'alway':520 'angl':979,995,1052 'anycap':2,21,54,94,148,265,322,533,536,557,600,688,903,911 'anycap-c':147 'anycap-social-meme-workflow':1 'area':660 'art':452 'articl':135,978,986,992,994,1051 'as-i':790 'ask':654,670 'aspect':585,640,759 'authent':141 'avail':840 'avoid':1107,1142 'awkward':454 'b':311,314 'background':626 'bad':443,1050 'banana':497,507,541,606,685,694 'band':663 'base':100,202,261,319,549,1083 'bash':532,556,599,687,910 'best':151 'better':987 'blank':571,656,747,1058 'blob':429 'blog':180 'bold':846 'bottom':166,574,634,666 'brand':237,1111 'break':859,873 'c':315,323 'campaign':32 'canon':474 'capabl':143 'caption':14,47,70,91,106,177,250,293,359,390,407,579,635,658,751,773,801,866,880,927 'caption-saf':657 'card':828 'case':208,973,977 'chair':713 'chao':731 'charact':240,430,1109 'charm':702 'chase':1063 'check':864 'choic':1103 'choos':312,348,483 'classic':423 'classifi':309,345 'clean':582,661 'clear':628,1118 'cli':139,149 'clone':481 'clumsi':457 'coffe':718 'come':204 'comic':460,469 'compet':883 'composit':281,583 'concept':197,404 'constant':1067 'contrast':581,854 'control':855 'copi':871,1140 'copyright':239,1108 'core':252 'creat':6,96,841,1043 'crude':700 'cultur':1070 'cup':719 'd':324,329 'databas':229,1060 'default':416,427,486 'defeat':727 'deliber':456 'deliv':337,787,936 'deliver':965 'deliveri':1153 'demo':209 'depend':289 'describ':924 'desk':730 'detail':138 'determinist':271,295 'doodl':43,173,424,704 'doodle-styl':42,172 'draw':13,46,170,367,374,415,440,444,519,681,699,771,783,1007,1015 'drive':340,952 'e':330,335 'easi':438,929,1012 'easy-to-draw':437 'edit':98,251,318,500,547 'empti':665 'energi':470,724 'especi':515 'exact':90,112,163,236,267,292,326,392,676,797,806,865,1088,1126,1134 'exact-text':1087 'exagger':569,726 'exampl':555,598,682 'excus':1157 'exhaust':706 'exist':189,360,502,812 'expect':1073 'explain':1101 'explicit':653 'express':570,728 'f':336 'face':476 'fast':283,514 'feel':66 'figur':433 'file':117,122,916,940 'final':105,299,1090 'first':114,205,351,354,493 'first-pass':492 'fit':152 'format':1154 'formula':133 'frame':203 'funni':11,41,168,365,413,517,679,697,769,1005 'funny-meme-drawing.png':767 'galleri':968 'generat':87,213,316,545,559,602,690 'goblin':708 'good':278,993,1075 'graph':306 'green':744 'guardrail':1106 'hate':1145 'heavi':249 'hero':160 'high':230,580 'hold':715 'hook':33 'html/css':827 'human':944 'humor':176,369,435,778 'imag':10,40,48,86,161,275,285,385,400,406,503,534,537,554,558,566,595,597,601,610,612,621,637,689,789,814,904,914,1091 'image-read':913 'image-to-imag':594,609 'imagemagick':832 'inspect':521,907 'instagram':1046 'instal':834 'instead':668 'instruct':918 'intent':895 'internet':175,232,703 'joke':30,357,448,795 'keep':297 'know':897 'land':780 'larg':225 'layer':259,263,269 'leav':627 'led':985 'legibl':887 'letter':755 'librari':991 'lightweight':17 'like':67 'line':393,737,858,872 'link':958,1094 'list':524 'live':371 'local':107,272,328,338,802,808,813,830,837,939,1137 'logo':1112 'long':291 'look':894 'lore':234,480 'lr':307 'mainten':1071 'make':998,1033 'mani':512 'map':136,487 'margin':667 'match':868 'matter':1141 'media':214 'melt':709 'meme':4,8,12,39,45,52,56,69,158,169,195,227,233,300,355,366,388,402,414,441,479,518,578,620,677,680,698,770,999,1006,1013,1035,1044,1055,1146,1149 'meme-base.png':593 'meme-lor':478 'meme-nam':1054 'meme-remix-base.png':648 'meme-styl':7,157 'meme-templ':226 'meme-vi':51 'meme-video':194,401 'mermaid':305 'messi':729 'mini':970 'mobil':877 'mode':608 'model':276,286,313,485,523,535,538,560,603,672,691,1102,1131 'most':370 'mute':743 'name':1056 'nano':496,506,540,605,684,693 'nano-banana':539,692 'nano-banana-pro':604 'need':26,64,211,511,796,901,955,1066 'negat':651 'note':1100 'o':592,647,766 'obscur':1053 'obvious':746 'off-whit':738 'offic':707,712 'old':467 'old-web':466 'one':349,418 'onlin':1000 'oper':822 'option':409,750,775,1092 'order':810 'output':63,863,892,1072,1160 'overlay':296,325,805,1136 'pad':856 'page':235,343,442,962,1057,1064,1097 'paper':741 'param':584,589,636,639,644,758,763 'pass':494 'path':941 'pattern':130 'photo':15,178,192,391,1026 'pipelin':245 'pop':1069 'pop-cultur':1068 'pose':376 'post':72,181,184 'prefer':809,1133 'preserv':622 'preset':422 'pro':498,607 'problem':723 'produc':1079 'product':243 'promis':1125 'prompt':132,563,613,649,696,899 'provid':1116 'publish':959,1096 'punchlin':334,885 'qa':331,861 'quot':34 'rage':459,475 'rage-comic-adjac':458 'ratio':586,641,760 'reaction':31,74,185,380,565,619 'reaction-imag':564 'read':113,115,874,905,915,919,931 'readabl':301,332,733 'recreat':241 'refer':144 'references/workflows.md':127,128 'reli':84,472 'remix':381 'render':103,273,829,838,1128 'repeat':217,303,421 'repo':820 'report':974 'reproduc':81 'request':242,310,347,870,1147 'resolut':590,645,764 'result':909 'return':937 'right':1119 'rule':253 'run':1076 'safe':575,629,659 'scene':379 'schema':526,543 'screen':734 'screenshot':36,190,505 'seedream':488,561 'select':131 'shadow':852 'share':957,1093 'sharper':618 'short':50,193,410,1099 'simpl':824,843,961 'simplifi':625 'size':934 'sketch':736 'skill':60,150,155,223,981 'skill-anycap-social-meme-workflows' 'sloppi':1159 'small':933 'social':3,18,55,71,183 'source-anycap-ai' 'space':576,630,652,748 'specif':231 'split':254 'stick':432 'stick-figure-adjac':431 'still':77,200,405,893 'stroke':850 'stronger':491 'strongest':426 'style':9,44,159,174,280,375,567,705,1150 'subject':624,878 'subtitl':244 'suppli':383 'support':363,982 'svg':825,844 'switch':1048 'syntax':140 'task':256 'templat':228,990,1059 'template-librari':989 'text':92,110,167,268,294,327,353,395,552,678,807,849,867,922,1023,1089,1127,1135 'text-first':352 'text-to-imag':551 'textur':742 'thick':735 'thumbnail':890 'time':248 'timing-heavi':247 'tini':717,722 'tiny-problem':721 'titl':848 'tool':1049 'toolchain':815 'top':164,397,572,632,662 'topic-agent' 'topic-agent-skills' 'topic-claude-code' 'topic-cli' 'topic-coding-agent' 'topic-skills' 'treat':1148 'treatment':389 'trend':1062 'trend-chas':1061 'turn':28,614 'two':258 'unclear':531 'unless':1113 'upload':950 'uppercas':847 'use':22,58,93,145,153,207,221,445,817,902,972,976,1121 'use-cas':206,971,975 'user':382,1115 'usual':1078 'variant':513,1085 'variat':284 'vi':53 'via':339,342 'video':196,403,411,1036 'visibl':921 'visual':19,75,101,186,262,320,362,495,550,568,884,1084 'want':387,465 'watermark':757 'web':468 'well':875 'whether':925 'white':740 'wild':725 'without':471,732,896,1047 'word':753,798 'work':449 'workflow':5,57,125,218,304,350,529,984,1105 'workflow-l':983 'workspac':949 'write':674","prices":[{"id":"606c15b7-5018-4613-aa88-8f1f3dcd31e1","listingId":"83b2c4d7-4ab1-4073-b547-773fb6c44134","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"anycap-ai","category":"anycap","install_from":"skills.sh"},"createdAt":"2026-04-18T22:22:35.614Z"}],"sources":[{"listingId":"83b2c4d7-4ab1-4073-b547-773fb6c44134","source":"github","sourceId":"anycap-ai/anycap/anycap-social-meme-workflows","sourceUrl":"https://github.com/anycap-ai/anycap/tree/main/skills/anycap-social-meme-workflows","isPrimary":false,"firstSeenAt":"2026-04-18T22:22:35.614Z","lastSeenAt":"2026-05-01T12:57:24.161Z"}],"details":{"listingId":"83b2c4d7-4ab1-4073-b547-773fb6c44134","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"anycap-ai","slug":"anycap-social-meme-workflows","github":{"repo":"anycap-ai/anycap","stars":32,"topics":["agent","agent-skills","claude-code","cli","coding-agent","skills"],"license":"mit","html_url":"https://github.com/anycap-ai/anycap","pushed_at":"2026-04-23T15:05:30Z","description":"The capability harness for AI agents. Skills over SDKs.","skill_md_sha":"4501eb9ec1a3649ed2a02b8dbeb77df9591031e0","skill_md_path":"skills/anycap-social-meme-workflows/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/anycap-ai/anycap/tree/main/skills/anycap-social-meme-workflows"},"layout":"multi","source":"github","category":"anycap","frontmatter":{"name":"anycap-social-meme-workflows","license":"MIT","description":"Create meme-style images, funny meme drawings, captioned photos, and lightweight social visuals with AnyCap. Use when an agent needs to turn a joke, reaction, campaign hook, quote, or screenshot into a meme image, funny doodle-style meme drawing, captioned image, or short meme-video concept. Combines AnyCap image generation and editing with deterministic local text overlay, optional video generation, and Drive or Page delivery.","compatibility":"Requires anycap CLI binary and internet access. Works with agents that can run shell commands and create local files."},"skills_sh_url":"https://skills.sh/anycap-ai/anycap/anycap-social-meme-workflows"},"updatedAt":"2026-05-01T12:57:24.161Z"}}