Community影像github.com

Brclio/技能:微信貼圖包製作

根據使用者提供的一或多張參考照片,規劃並生成一套完整的可發布微信貼圖包:製作 20 張風格統一、表情各異的中文 Q 版貼圖,保留原始檔案與高解析度生成來源,建立符合現行規範的微信橫幅、封面、聊天圖示素材與提交元資料,驗證所有交付成果,並建立僅上傳與完整歸檔兩種壓縮包。當使用者希望從參考圖像建立、重建、打包或準備微信貼圖包時使用。

技能:微信貼圖包製作 是什麼?

這項技能提供端到端的自動化流程,可從使用者提供的一或多張參考照片,生成一套包含 20 張貼圖的完整微信貼圖包。它會先解析參考圖片、建立角色聖經(character bible),並制定一份包含 20 個獨立項目的內容計劃,每個項目都有獨特的意圖、表情、動作、道具與構圖,最終生成 Q 版風格的貼圖。此技能嚴格遵守非妥協合約(non-negotiable contract):必定使用 20 次獨立的影像生成呼叫(`image_gen`)來產生 20 張貼圖(從不採用拼貼或多面板影像),且必須先產生一張不含文字的純角色錨點圖(character anchor)。所有生成的原始高解析度檔案與最終主檔都會被完整保留。該技能支援 Claude Code 與 Cursor 等平台,並內建腳本(`scripts/sticker_pack.py`)來處理圖片匯入、文字合成、驗證、聯絡表(contact sheet)建立與打包工作。它會自動從 `assets/creator-profile.json` 載入創作者偏好設定,並在版權持有者或權利資訊不完整時提示使用者。輸出目錄結構井然有序,包含原始參考檔案、計劃、來源素材、提交用的貼圖與平台素材、品質報告,以及供上傳與完整歸檔用的壓縮包。此技能會參考 `references/` 目錄中的最新規則與平台規範,若檢測到平台規則更新,會禁止後續產生步驟,直到文件更新為止。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Brclio/Skills/tree/HEAD/skills/build-wechat-sticker-pack

Installed? Explore more 影像 skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

構建微信貼圖包

根據參考圖片,執行端到端的 20 張貼圖生產流程。保存原始檔案,獨立生成每一張貼圖,準備微信發布素材,進行驗證,並打包。

必備的配套技能與工具

在生成圖片之前,請完整閱讀並遵循已安裝的 imagegen 技能。預設使用其內建的圖片生成路徑。不要無聲地切換到 CLI/API 備用方案。

使用:

  • 內建 image_gen 生成角色錨點圖、20 張獨立的貼圖作品、橫幅、封面與圖示;
  • view_image 進行參考圖片檢查與視覺品質審查;
  • scripts/sticker_pack.py 進行確定性輸入、文字合成、驗證、聯絡表建立與打包;
  • 官方微信/騰訊來源以更新時效性發布規則。

請將 <skill-dir> 解析為包含此 SKILL.md 的目錄;不要假定工作區的工作目錄即為技能目錄。

非妥協合約

  • 必須產出恰好 20 張最終貼圖,編號為 01.png 至 20.png。
  • 使用 20 次不同的內建 image_gen 呼叫來生成 20 張貼圖作品。嚴禁使用拼貼、多面板影像、聯絡表、一次呼叫 n 張或重複作品來代替。
  • 首先獨立生成一張不含文字的角色錨點圖。該錨點圖不計入 20 張之列。
  • 對每一張提供的參考檔案,必須逐位元組保存其原始檔名、副檔名、EXIF、大小與 SHA-256。嚴禁覆寫、轉碼、裁切或剝離歸檔副本。
  • 保存每一張被接受的已生成高解析度原始作品以及每一張高解析度最終主檔。當有助於稽核時,將被拒絕的重試輸出保留在來源 versions/ 目錄下,但絕不能用它來取代已接受的欄位。
  • 聯絡表僅放在預覽/審查目錄下;切勿將其放入提交套件中。
  • 不得虛構所有權、著作權、肖像權同意、AI 揭露或審批狀態。
  • 僅當全部 20 張貼圖、發布素材、元資料、人工審查關卡及權利關卡均通過時,才將此次運行標記為 ready-to-submit。

輸入合約與個人預設值

對於正常的自用運行,僅需提供一張或多張參考圖片。從 assets/creator-profile.json 載入此使用者的可重複使用預設值。

若 copyright_holder 為空白,請提出一個入職問題以取得確切的真實提交者/版權姓名,將其儲存至設定檔,然後繼續。切勿以儲存庫維護者的身份代替其他使用者。

套用已儲存的版權持有者與發布選擇。在檢查參考圖片後,明確設定當前運行的權利與肖像權布林值。對於私下提供的自身參考圖片,僅在沒有相反資訊時,將調用視為使用者的證明。若圖片包含公眾人物、第三方作品、下載的藝術作品、可見的品牌 IP,或是一位同意狀況不明確的人物,請在宣告套件可提交之前,提出一個簡潔的權利問題。

若多張圖片明顯顯示同一對象,則將其合併作為身份參考。若它們顯示不同的主要對象且意圖對象不明確,則提出一個對象選擇問題。

輸出佈局

在 output/wechat-sticker-pack/<slug>-<timestamp>/ 下建立新的運行目錄:

00-reference-originals/       未修改的使用者輸入 + 雜湊值
01-plan/                      pack.json,計劃 CSV,角色/風格聖經,提示詞
02-source-assets/
  character-anchor.png
  generated-raw/stickers/     20 張未修改的 imagegen 輸出
  generated-raw/assets/       橫幅,封面,圖示來源
  generated-masters/          20 張高解析度文字合成主檔
03-submission/
  stickers/                   01.png ... 20.png
  assets/                     橫幅,透明封面,透明圖示
  metadata/                   公開副本,含義,權利/AI 聲明
  qa/                         QA JSON/TXT 及雜湊值
04-preview/contact-sheet.png
archives/<slug>-submission.zip
archives/<slug>-full-archive.zip 或 <slug>-draft-full-archive.zip
state.json                    僅限本機的狀態;從壓縮包中排除

工作流程

1. 更新平台規則

閱讀 references/wechat-publish-spec.md。在每次生產運行之前,若可連網,請瀏覽官方微信表情開放平台與當前的官方資源代碼。若某項支援的需求已變更,請記錄 changed-unsupported,在生成前停止,並更新技能與測試後再繼續;切勿僅透過變更運行元資料來聲明相容性。

若無法驗證當前規則,則僅以草稿形式繼續,並使用標明日期的快照,記錄 rules_status: snapshot-unverified 加上實際檢查日期。若偵測到變更,請記錄 rules_change_details;腳本會封鎖生成,直到技能更新為止。

2. 檢查參考圖片並確立權利

使用 view_image 檢查每一張參考圖片。明確標註角色:身份參考、可選服裝參考、可選風格參考。

僅基於可見且非敏感的特徵建立角色聖經。請勿從外表推斷職業、健康狀況、關係、種族或個性。

使用 assets/creator-profile.json 中的個人預設值,除非當前請求覆蓋了它們。遵循 references/rights-and-ai.md。

3. 規劃恰好 20 張貼圖

在撰寫計劃之前,請閱讀 references/content-planning.md。建立一個已凍結的 pack.json,其內容須符合 references/pack-schema.json,並包含:

  • 當前相簿名稱、簡介、版權、平台選擇以及權利/AI 欄位;
  • 恰好 20 個獨特的條目,ID 為 01–20;
  • 獨特意圖、確切文字、含義單詞、表情、姿勢/動作、道具、構圖、文字區域以及藝術提示詞;
  • 角色聖經、風格聖經、共享避免清單、一個錨點提示詞以及發布素材提示詞。

請勿自動重複使用上一個貼圖包的固定片語。首先尊重使用者提供的片語,然後動態填補其餘的溝通角色。

將設定檔範本複製到運行計劃中,並初始化運行:

python <skill-dir>/scripts/sticker_pack.py init \
  --run-dir <run-dir> \
  --spec <prepared-pack.json> \
  --reference <reference-image> [--reference <image> ...]

4. 生成並註冊角色錨點圖

使用原始參考圖片生成一張中性、不含文字的 Q 版角色錨點圖。保留關鍵的可見身份特徵與一套簡化服裝。使用樸素的生產背景,不帶道具、文字、標誌、簽名、邊框或浮水印。

將確切的已凍結錨點提示詞儲存為 UTF-8 文字,然後註冊生成的檔案:

python <skill-dir>/scripts/sticker_pack.py import-art \
  --run-dir <run-dir> --kind anchor --source <anchor.png> \
  --generator builtin-imagegen --prompt-file <anchor-prompt.txt>

5. 生成 20 張獨立的不含文字的貼圖作品

閱讀 references/prompt-templates.md。對於每一個已凍結的計劃項目:

  1. 使用內建 image_gen 呼叫一次,帶入原始參考圖片以及相同的角色錨點圖。
  2. 重複共享的身份與風格不變量。
  3. 僅變更計劃中的表情、姿勢/動作、道具、構圖以及預留的文字區域。
  4. 生成一張獨立的方形作品,不含文字或類似文字標記。
  5. 檢查身份、動作、裁切、背景、多餘文字、浮水印以及單一圖片合規性。
  6. 匯入已接受的原始圖片:
python <skill-dir>/scripts/sticker_pack.py import-art \
  --run-dir <run-dir> --kind sticker --slot <01..20> --source <generated.png> \
  --generator builtin-imagegen --prompt-file <slot-prompt.txt>

重試策略:

  • 對工具失敗使用相同提示詞重試一次;
  • 針對身份漂移、錯誤動作、裁切、多餘文字或多面板輸出進行一次有針對性的提示詞修正;
  • 使用參考圖片 + 錨點圖 + 最佳嘗試進行第三次有針對性的嘗試;
  • 對於同一個欄位,三次嘗試失敗後即停止,完成其餘安全的可完成工作,並將運行標記為草稿/未就緒。嚴禁使用重複圖片填補空缺。

6. 合成確切文字並製作發布用貼圖檔案

使用確定性渲染器,而不依賴於生成的漢字字樣:

python <skill-dir>/scripts/sticker_pack.py render-stickers --run-dir <run-dir>

渲染器會保留原始 imagegen 檔案,建立帶有確切計劃文字的高解析度主檔,產生 240×240 的上傳 PNG,移除衍生的 EXIF,並寫入包含文字、碼位、字型、來源雜湊、輸出雜湊與版面配置的收據。

若渲染器無法清晰容納確切文字,請在渲染前僅修改該計劃項目的文字或版面配置;切勿無聲地截斷或縮小至低於最小尺寸。

7. 生成發布素材

使用三個不同的內建呼叫生成三種不同的素材:

  • 詳細橫幅:彩色不透明場景故事,無文字/數字,無白色或透明背景;
  • 相簿封面:可辨識的半身/全身主體,置於完美平坦的色鍵背景上,無文字或白色輪廓;
  • 聊天圖示:僅正面頭部,置於相同的平坦色鍵背景上,無手部、文字、裝飾、白色輪廓或邊框。

選擇一種主體上不存在的關鍵色:預設為 #00ff00,若主體/服裝包含綠色則使用 #ff00ff。將該選擇凍結在兩個素材提示詞以及移除命令中。

使用 imagegen 技能要求的輔助工具移除封面/圖示的色鍵。驗證 Alpha 結果;若殘留邊緣,則使用 --edge-contract 1 重試一次。

在移除前匯入未修改的色鍵輸出,然後匯入已接受的橫幅與已去背的封面/圖示:

python <skill-dir>/scripts/sticker_pack.py import-art --run-dir <run-dir> --kind cover-chroma --source <cover-chroma.png> --generator builtin-imagegen --prompt-file <cover-prompt.txt>
python <skill-dir>/scripts/sticker_pack.py import-art --run-dir <run-dir> --kind icon-chroma --source <icon-chroma.png> --generator builtin-imagegen --prompt-file <icon-prompt.txt>
python <skill-dir>/scripts/sticker_pack.py import-art --run-dir <run-dir> --kind banner --source <banner> --generator builtin-imagegen --prompt-file <banner-prompt.txt>
python <skill-dir>/scripts/sticker_pack.py import-art --run-dir <run-dir> --kind cover --source <cover-alpha.png> --generator local-chroma-removal --chroma-key <#RRGGBB> --edge-contract <0..3>
python <skill-dir>/scripts/sticker_pack.py import-art --run-dir <run-dir> --kind icon --source <icon-alpha.png> --generator local-chroma-removal --chroma-key <#RRGGBB> --edge-contract <0..3>
python <skill-dir>/scripts/sticker_pack.py prepare-assets --run-dir <run-dir>

8. 視覺品質審查與人工關卡

建立內部聯絡表:

python <skill-dir>/scripts/sticker_pack.py contact-sheet --run-dir <run-dir>

單獨並在聯絡表中檢查 20 張最終貼圖。驗證角色一致性、確切的可見文字、獨特的動作/剪影、240×240 尺寸下的可讀性、無浮水印/標誌/亂碼以及無意外面板。

檢查最終尺寸下的橫幅、封面與圖示。然後將 01-plan/pack.json 中每個適用的 manual_review 欄位設為 true。不要確認你未實際審查的欄位。

9. 驗證與打包

python <skill-dir>/scripts/sticker_pack.py validate --run-dir <run-dir> --strict
python <skill-dir>/scripts/sticker_pack.py package --run-dir <run-dir>

僅上傳的壓縮包必須使用腳本的固定允許清單,並排除原始檔案、原始作品、主檔、提示詞、聯絡表、狀態、額外檔案以及本機絕對路徑。完整壓縮包必須包含逐位元組相同的原始檔案、來源、計劃、已凍結的提示詞、已清理的生成記錄、提交檔案、品質審查與來源出處,但須排除僅限本機的狀態與壓縮包遞迴。警告:完整壓縮包可能保留原始 EXIF/GPS,不應作為公開上傳套件分享。

若權利或其他提交關卡仍未解決,僅建立一個標記明確的歸檔草稿:

python <skill-dir>/scripts/sticker_pack.py package --run-dir <run-dir> --full-only

這會產生 <slug>-draft-full-archive.zip 並隔離任何過時的提交 ZIP,以免被誤認為當前的就緒套件。

完成關卡

僅當驗證與壓縮包完整性通過時才報告成功:

  • 20/20 貼圖通過
  • 發布素材通過
  • 原始參考圖片已保留
  • 權利設定已確認
  • AI 聲明已準備
  • 狀態:ready-to-submit

否則報告 draft/not-ready 以及確切失敗的欄位或關卡。始終提供兩個壓縮包、提交目錄、副本/含義檔案以及品質審查報告的絕對路徑。

參考資料路由

  • 每個新貼圖包都請閱讀 references/content-planning.md。
  • 影像生成前請閱讀 references/prompt-templates.md。
  • 平台素材規劃或驗證前請閱讀 references/wechat-publish-spec.md。
  • 若涉及真人、第三方圖片、版權、肖像權或 AI 揭露,請閱讀 references/rights-and-ai.md。
  • 建立或修復 pack.json 時請使用 references/pack-schema.json。

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

Brclio/Skills

>- Create a reusable content-illustration character and simple IP Standard Pack for a person, creator account, or brand. Use for personal IP, account mascots, brand characters, blind-box or designer-toy characters, “把我变成一个角色”, “做一个账号形象”, or when someone needs consistent character images, values, turnaround views, and reusable prompts.

Brclio/Skills

生成 Bornforthis 个人 IP 风格的中文正文配图。用于用户要求为中文文章、帖子、博客、Notion 文档、知识讲解、工作流、方法论、流程、结构、状态、隐喻或观点制作“Bornforthis”“个人 IP”“蜡笔手绘”“正文配图”“文章插图”“配图建议”“shot list”“去标题”或“改图”时;默认使用 Bornforthis 青年男性角色、纯白背景、蜡笔或马克笔斜线纹理、深蓝粗描边、少量蓝红中文批注和温暖而略荒诞的绘本风格。

Brclio/Skills

Generate and deliver long-form Chinese narration through ListenHub using the Xiaoman and Cola female voices. Use when the user asks to read a full text, split a long script into audio parts, provide both segmented and merged MP3 files, compare or preserve Xiaoman/晓曼 and Cola voices, or asks for the same audio in both voices. This skill is Cola/ListenHub-specific and requires the ListenHub TTS capability plus local file download and audio concatenation.

Brclio/Skills

Design a gender-adaptive personal-IP cartoon system from one portrait for users with no art background. Provides classic, random, guaranteed light-palette, industry full-body, and official brand or university VI theme modules plus action designs, front full-body characters, eight-angle turnarounds, 24-emotion packs, collages, and an offline HTML selection gallery. When the user gives no explicit feature-control instruction, every applicable feature defaults on. Use for personal IP, professional or industry avatars, campus-color characters, character sheets, expression packs, avatar blind boxes, interactive image shortlisting, or expansion of an approved set.

相關技能