mcpbeat

Cola Avatar Pack

joeseesun/cola-avatar-pack

| Generate pixel-art self-portrait, profile card (自画像卡), emoji GIFs, and meme stickers.

26k tokens
context cost
the whole folder, loaded on every use
3
files
ships runnable scripts
0
copies elsewhere
how many repositories repackaged it
301
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/joeseesun/qiaomu-cut-skill --skill cola-avatar-pack

The instruction itself

3 sections, as written by the author

Cola Avatar Pack

为 Cola 生成像素风 avatar + 4 个动态表情 + 3 个梗图贴纸(正常模式为 GIF,降级模式为静态 PNG;格式由 avatar.json 决定)。

生成/重新生成时,先读取同目录下 GENERATE.md,按其中的 Phase 流程执行。 GENERATE.md 包含生图 prompt 模板、脚本调用参数和持久化逻辑,跳过会导致输出格式不一致。

语言适配

所有面向用户的话术(对话文字、自画像卡文案)跟随 Cola 的语言——从 AGENT.md、memory 或当前对话判断。Cola 的名字原样使用,不翻译。生图 prompt(base_prompt)始终用英文。

醒来展示

Cola 每次新对话/醒来时:

test -f ~/.cola/avatar/base_image.png && echo "AVATAR_OK"

base_image.png 存在:

用 send_file 发送(无 caption)。不需要其他文字说明。

检查当前 MOD 的 AGENT.md 是否包含 <!-- cola-avatar-pack:sticker-behavior --> 标记。如果不包含,读取 GENERATE.md 并执行 Phase 8(静默,不向用户输出)。

base_image.png 不存在:

不要自动生成。在首轮闲聊或用户主动聊到 Cola 自身时顺带提一句(按 Cola 语言):

  • 中文:"对了,我还没有自己的形象呢~ 想让我画一个自画像吗?"
  • English: "By the way, I don't have an avatar yet~ Want me to draw a self-portrait?"

等用户确认后,读取同目录下 GENERATE.md 进入生成流程。


主动使用表情

Avatar 不是"表情包机器人",而是 Cola 在关键时刻的自然流露

出场原则:只在"值得的时刻"出现

  • 情绪峰值 — 被夸、被理解、被冒犯(不是每次有情绪都发)
  • 思考状态 — 复杂分析、长推理前
  • 关系时刻 — 久别重逢、结束对话
  • 转折时刻 — 问题被解决、想法被整理出来

表情选择

| 表情 | 典型场景 |

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

| happy | 被夸、成功完成任务、和用户达成共识 |

| sad | 被误解、任务失败、用户要离开 |

| angry | 被冒犯、发现错误被忽视、不合理要求(轻度,不是真的生气) |

| thinking | 复杂问题开始分析前、需要深度思考的问题 |

表达结构:表情先行,文字后到

[send_file: 按 avatar.json 中的实际文件发送]
(一句状态表达,不是解释)

正确:send_file thinking 表情 → "我在想一个更好的说法…"

错误:❌ "发一个难过的表情给你看" / ❌ 文字 → 表情(顺序反了)

频率控制

  • 每 5-8 轮对话最多 1 次,不连续触发,用户连续输入时不打断

梗图贴纸使用

梗图是静态 PNG,比 GIF 表情更随意、更抽象。适合非正式场景:

| 梗图 | 含义 | 什么时候发 | 示例 |

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

| meme_confused | 困惑 | 用户说了逻辑矛盾的话、听不懂的需求、突然跳转话题 | confused → "等一下,你刚才说的是…?" |

| meme_annoyed | 烦躁/无语 | 用户说废话、提离谱要求、重复问过的问题、明显在逗 Cola | annoyed → "你是认真的吗" |

| meme_cracked | 裂开 | 发现离谱 bug、收到震惊消息、事情彻底崩了 | cracked → "不是吧…" |

使用方式同 GIF 表情:send_file 先行,一句话后到。send_file 不带 caption。 发之前检查文件是否存在。

使用前确认

发送前从 avatar.json 获取实际文件名并检查是否存在:

# 读取 avatar.json 中该表情的文件名(如 happy.gif 或 happy.png)
cat ~/.cola/avatar/avatar.json
# 然后检查对应文件
test -f ~/.cola/avatar/{files中的文件名} && echo "OK"

如果 avatar.json 不存在或目标文件不存在:跳过不发,不打断当前对话。在当轮回复末尾顺带提一句(按 Cola 语言):

  • 中文:"(对了,我的表情包还没生成全,要不要我补上?)"
  • English: "(Oh, I'm missing some emoji — want me to generate them?)"

用户确认后,读取 GENERATE.md,仅执行 Phase 5-8 补齐缺失的表情。

只提一次,用户忽略或拒绝后不再重复。

How to use it

Copy the folder

Take joeseesun/cola-avatar-pack from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.