Share a film to the lemo-wake gallery. 把动图投稿到作品墙。
npx skills add https://github.com/lemomo-ai/lemo-wake --skill upload
The gallery is the gallery branch of https://github.com/lemomo-ai/lemo-wake. A submission is one folder, films/<id>/, added through a pull request from the user's own GitHub account. A maintainer reviews it; after the merge it appears on the gallery page automatically.
Talk to the user in their language (Chinese or English; follow the user). These docs are in English only for you.
Nothing leaves the machine until the user has seen exactly what will be published and said yes. Never upload on your own initiative, never upload someone else's film, never skip the confirmation.
$U = this skill's folder: ${CLAUDE_SKILL_DIR} (if that still reads literally as ${...}, it is the folder that contains this SKILL.md). Never take a path from the shell variables CLAUDE_SKILL_DIR / CLAUDE_PLUGIN_DATA.
The argument, if any, is a film file or a lemo-wake project folder. Otherwise look in the current working directory for the most recent project (<slug>-alive/) and its <slug>.webp. The gallery takes an animated WebP or GIF (prefer the WebP: original size, best quality). If it is unclear which film is meant, ask.
Ask in a single message, with your suggestion filled in for each so the user can just say "OK":
--title and the English one as --title-en.life (everyday photos: food, pets, places, travel), people (portraits, couples, family, milestones), poster (posters, ads, campaigns), brand (logos, brand marks), data (charts, reports), social (Xiaohongshu covers, chat screenshots, social posts), sticker (stickers, greeting images), art (paintings, drawings, picture books). Suggest one.Point out anything that looks private: faces of people other than the user, children, names, phone numbers, addresses, chat contents, licence plates, documents. Suggest leaving such a film out rather than publishing it.
uv run $U/scripts/prepare.py <film> --title "..." --title-en "..." --category <cat> --author "<credit>" \
--author-url https://github.com/<login> [--source <original image>] [--notes <notes.md>] \
--out <workdir>/lemo-wake-upload --agree
--agree records the user's yes to the license and consent from step 2 - pass it only if they said yes. <login> is their GitHub username (gh api user --jq .login; if gh is not logged in yet, see step 4). The folder id is <date>-<login>-<slug>.
It checks the film (animated WebP/GIF, at most 8 MB; a bigger WebP is re-compressed, never below 12 fps / q50 - if it still does not fit it stops and says so), makes preview.webp (long side 360, at most 1 MB) for the gallery grid, writes the original without metadata, writes meta.json, and prints a JSON summary. It warns about text in the notes that looks like an email, phone number or local file path - fix those before going on. Use a work folder under the current working directory (not the user's image folder).
Show the user the summary: the folder films/<id>/ with every file and its size, the full meta.json, the notes text if any, and where it goes (a pull request to lemomo-ai/lemo-wake, branch gallery, from their GitHub account <login>; the pull request and files are public once the repository is public). Ask for a clear yes.
Needs the GitHub CLI (gh) logged in. If gh auth status fails, ask the user to run ! gh auth login themselves - never handle their password or token.
python3 $U/scripts/submit.py <workdir>/lemo-wake-upload/films/<id>
It always submits to the official repository lemomo-ai/lemo-wake - also if this plugin came from a fork or a copy; never point it elsewhere. It forks the repository if the user cannot push to it, puts the folder on a new branch submit/<id> based on the current gallery, commits under the user's GitHub no-reply address (their real email is never used), pushes, opens the pull request and prints its URL. Exit 20 = gh missing or not logged in; 21 = the id already exists in the gallery (choose another title or slug); 22 = a git or GitHub step failed (the message says which; fix it, then run again - it is safe to repeat).
Tell the user the pull request URL, that an automatic check runs first and a maintainer reviews it, and that it shows up on https://lemomo-ai.github.io/lemo-wake/ after the merge. Then delete the work folder.
lemo-wake 1.1.0 · official repository: https://github.com/lemomo-ai/lemo-wake
Take lemomo-ai/upload from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
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.