Communitygithub.com

alecs5am/ralphy

一個通用化、角色驅動的品牌海報生成技能——專注於單張靜態圖像。提供「海報即著陸頁」的完整佈局架構(頂部橫幅 → 巨大的斜面字標 → 胸部以上英雄照片 → 散落的貼紙拼貼 → 文案區塊 → 薄頁腳),參數化槽位,以及模型層疊,適用於任何品牌與任何美學風格。

ralphy 是什麼?

這個技能提供一個通用化的「工藝覆蓋層」,用於生成單張靜態品牌海報,特別適合「海報即著陸頁」的設計場景。它並非一個成品海報,而是一個告訴 AI 藝術指導者「這類海報如何建構」的佈局框架。技能定義了固定的六層架構:頂部橫幅、巨型斜面字標(使用一個簡短的感嘆詞)、佔據約 60% 高度的胸部以上英雄照片、三張散落的乙烯基貼紙拼貼、文案區塊(包含大寫標題、斜體內文和行動呼籲按鈕),以及薄頁腳。用戶需要填寫的品牌、英雄、產品、色盤、原創 blob 字型和美學風格等參數化槽位。模型首選 `openai/gpt-5.4-image-2`,因其在清晰印刷體和標籤準確性上表現最佳;`google/gemini-3-pro-image-preview` 作為備用,用於快速探索。此技能適用於 Cursor 等平台,且在使用任何真實品牌前,會透過 Playwright 子代理進行網站根因調查,以確保品牌 DNA 和色彩的準確性。已知的失敗模式包括:GPT-Image 的並發限制(序列化)、Gemini 的小字印刷體模糊、原創字型向真實商標偏移,以及貼紙過多的視覺疲勞。

相容平台~Claude Code✓Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/alecs5am/ralphy/tree/HEAD/.agents/skills/poster

在你喜歡的 AI 中提問

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

說明文件

觸發條件

觸發於通用靜態海報需求:"為 <品牌> 製作一張海報"、"發佈海報"、"海報即著陸頁"、"傳單"、"主視覺"、"宣傳圖像"、"專輯封面風格靜態圖"、"商品發佈公告圖"。任何主題、任何美學——本技能與主題和風格無關。

請勿觸發於以下情況:

  • 用戶指向一張特定海報要求重現(@template:<slug>、"重混這張"、指名 slug)→ 那是重混路徑。請參閱 docs/skills-vs-templates.md。
  • 用戶想要移動的影片(字標動畫、英雄說話)→ 匹配影片格式/模板,載入對應影片工藝覆蓋技能(ugc-*),並使用編輯器劇本,而非此技能。
  • 用戶輸入了 @guideline:<slug>,用於指定此海報所屬的規範(寫實人類、反 AI 粗糙內容)→ 先執行 ralphy guideline show <slug> 並將其規則融入英雄照片槽位。

本技能是什麼

一個通用化的佈局覆蓋層,而非成品海報。它不指定品牌、英雄或色盤——它告訴藝術指導者這類海報是如何建構的,以便為用戶推廣的任何內容產出強而有力的成果。它透過 ralphy generate image 執行;不會繞過參考需求閘門或品質閘門。

硬性不變項

  • 所有生成流程都必須經過 ralphy generate image(無原始 API)。在指定任何模型 ID 前,請閱讀 MODELS.md——下方的模型層疊是預設值,而非硬編碼。
  • 如果英雄或產品槽位中出現已命名的真實實體(真人、可辨識的品牌產品、智慧財產權),參考需求閘門仍然會觸發。虛構品牌 + 原創字型 + 通用產品則在無需參考的情況下進行。請在提示中明確標明該品牌字型為「原創」(「並非任何現有品牌」),以免模型偏向已註冊商標。
  • 品質閘門會拒絕而非僅警告——連續兩次 scoreImage 失敗即停止並回報選項。
  • 真實品牌預檢:提示前的網站根因調查。 如果海報針對真實品牌(用户自己的新創公司、客戶的網站、任何提供的 URL),請在起草品牌 DNA 或提示前,派遣一個 Playwright 子代理爬取首頁 + /docs + /pricing + /features + /examples。請閱讀 artifacts/refs/research.md(子代理的摘要),而非僅對首頁執行 WebFetch。每個 {{palette}} 的十六進位色碼都必須追溯到 artifacts/refs/tokens.json;正文文案或程式碼創意槽位中每個命名的 API 符號都必須追溯到 research.md 中的「已記錄 API 表面」。完整的規範和子代理提示模板:.agents/skills/researcher/references/site-grounding.md。跳過此步驟曾導致 sotaocr-fb-001 花費 1.20 美元,並產生 5/32 個幻覺 SDK 創意。

核心概念,一句話說明

海報即著陸頁成敗的關鍵在於一個巨大的、可讀的字標加上一個與觀眾進行眼神或接近眼神接觸的角色,並透過DIY 貼紙拼貼的能量將其結合。視線應先落在單詞上,然後是臉部,接著在 2-3 個貼紙重點間跳躍,最後閱讀文案。清晰的印刷體是整個遊戲的核心——模糊的字標會瞬間毀掉一切,這就是為何模型選擇以印刷體為優先,而非一致性。

固定架構(請勿重組——僅填寫槽位)

從上到下,此類別中的每張海報都遵循此堆疊:

區帶固定角色待填寫的槽位
1. 頂部橫幅小型、字距較大的大寫介紹行{{tagline}}、強調色
2. 字標巨大的無襯線粗體,3D 斜面陰影,每個字母的鉻黃高光,略微俏皮的傾斜 + 不完美的字尾{{exclamation}}(簡短有力的單詞:BOOM / DANG / YIKES / WOW / OOPS)
3. 英雄照片(約 60% 高度)電影風格的胸部以上肖像,視線向上,休閒酷感,胸前有原創 blob 字型,手持產品置於嘴部高度,柔和邊緣光,影片顆粒感{{hero}}、{{product}}、{{blob_glyph}}
4. 貼紙拼貼3 張乙烯基貼紙(細白邊框 + 柔和投射陰影 + 膠帶角落),以俏皮角度散落帶產品巨集的星星 · 帶 blob 臉的星星 · 帶像素「NEW DROP」類型標籤的小星星
5. 文案區塊壓縮大寫標題 + 4 行斜體無襯線內文 + 填色 CTA 藥丸形按鈕{{headline}}、{{body_copy}}、{{cta}}
6. 頁腳條非常細的全寬字距大寫{{brand}} · EST. YYYY · <流程標語> · WWW.<domain>

最終圖層(總是開啟):柔和影片顆粒感 + 輕微暗角 + 微弱的 CRT 暖色 + 復古網版印刷感。

槽位(海報間唯一會改變的部分)

  • {{brand}} + {{tagline}} + {{domain}}——虛構(或用戶擁有的)標籤。
  • {{exclamation}}——字標單詞。一個簡短可喊叫的標記。
  • {{hero}}——人物 + 服裝 + 表情。可自由變化年齡/性別/造型。
  • {{product}}——手持並置於嘴部的道具(棒棒糖、冰棒、汽水罐、麥克風……)。除非用戶擁有該品牌,否則保持通用/無品牌。
  • {{palette}}——滿版背景漸層(2 個十六進位色碼)+ 強調色(字標/標題)+ 斜面陰影色 + 奶油色內文色 + 線條木炭色 + 產品色。務必明確指定十六進位色碼。
  • {{blob_glyph}}——一個原創的、手繪風格的可愛生物(笑臉 blob、獨眼雲朵、不對稱星星)。內部寫有小寫品牌單詞。標明「並非任何現有品牌」。
  • {{aesthetic}}——風格註冊碼(Y2K 滑板衝浪街頭服飾是經過驗證的預設值;蒸汽波、垃圾搖滾雜誌、簡潔 DTC、90 年代電玩風格在相同架構下均可使用)。

模型層疊(每次執行時請與 MODELS.md 核對)

  • 預設——openai/gpt-5.4-image-2。 頂級印刷體/標籤準確性:斜面字標、小型頁腳條和 4 行內文都能清晰呈現。這正是它在海報生成上勝過以一致性為預設的模型的原因。並發上限為 1——序列化批次(--concurrency 1),切勿在此模型上同時進行多個平行海報生成。
  • 備用——google/gemini-3-pro-image-preview。 約一半的延遲和更低的成本,可承受 ≥4 個並發,但會使內嵌的小字印刷體模糊(flipper 事後分析;在 loud-kids-poster-001 上再次確認——4 行內文變軟)。僅用於快速的色盤/構圖探索,然後在 gpt-image 上最終確定所選變體。

長寬比——已解決,使用 --size

gpt-5.4-image-2 過去無論 --size 設定為何,都會回傳 1024² 的圖片。自 loud-kids-poster-001 工作階段起,ralphy generate image 會將 image_config.aspect_ratio(從 --size 衍生)轉發給 OpenRouter,且 gpt-image 會遵循它:--size 1080x1920 → 真正的 9:16 肖像(720×1280 原生桶)。傳遞 --size 1080x1920 以獲得垂直著陸頁海報,--size 1080x1080 以獲得方形社交貼文。輸出會落在模型最近的原始桶上,而非像素精確——如需精確畫格,請在後續流程中進行填補/縮放。

失敗模式

  • 平行 gpt-image 生成 → 403 "Key limit exceeded"。 序列化(1 個並發上限)。每次生成也需時約 2.5-4 分鐘。
  • Gemini 模糊了內文和頁腳條。 請勿在 Gemini 上最終確定印刷體密集的海報。
  • 字型偏移到真實商標(微笑品牌等),如果您未加上「原創,並非任何現有品牌」——始終包含該條款。
  • 貼紙太多 → 視線無處安放。上限為 3 張,並將它們置於英雄的邊緣。
  • 字標 + 標題與繁忙背景顏色相同 → 可讀性歸零。字標強調色必須與漸層形成強烈對比。

實作範例(已於 2026-05-27 驗證)

.ralphy/workspaces/<ws>/projects/loud-kids-poster-001/ 目錄中包含了根據此精確架構建構的三個色盤/英雄/產品變體(BOOM/皇家藍+棒棒糖、DANG/珊瑚李+冰棒、YIKES/萊姆森林+蘇打水),以及一個 9:16 A/B 比較(gpt-image 對比 gemini)。三個提示檔案(prompt-v1-boom.txt …)是標準的已填滿槽位參考——在起草新的海報提示前,請先閱讀其中一個。

CLI 操作手冊

# 預設海報,垂直 9:16,清晰印刷體
ralphy generate image --project <id> --slot poster-01 \
  --model openai/gpt-5.4-image-2 --size 1080x1920 --prompt "<已填寫的架構>"

# 快速色盤/構圖探索(之後在 gpt-image 上最終確定優勝者)
ralphy generate image --project <id> --slot poster-explore --variants 3 \
  --model google/gemini-3-pro-image-preview --size 1080x1920 --prompt "<...>"

# 同一海報的方形社交貼文版本
ralphy generate image --project <id> --slot poster-01-sq \
  --model openai/gpt-5.4-image-2 --size 1080x1080 --prompt "<已填寫的架構>"

長提示:將已填寫的架構寫入專案目錄中的 .txt 檔案,並傳遞 --prompt "$(cat file.txt)"——內文中的撇號會破壞內聯的單引號 shell 字串。

Individual skills in this repo

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

alecs5am/ralphy

>- Composition and render craft — assembles scenario.json plus asset-manifest.json into a HyperFrames HTML composition and renders the mp4. Owns timing, transitions, captions, audio mix and ducking, the green zone, the render pipeline, and VO sync. Generates no media of its own. USE WHEN the user asks to "compose the video", "render", "preview", "fix the captions", "mix the audio", "tighten the transitions", "final cut", or edits HyperFrames composition code. TRIGGER (EN): "render it", "compose the video", "captions", "audio mix", "transitions", "final cut", "preview the composition".

alecs5am/ralphy

HyperFrames CLI dev loop — `npx hyperframes` for scaffolding (init), validation (lint, inspect), preview, render, and environment troubleshooting (doctor, browser, info, upgrade). Use when running any of these commands or troubleshooting the HyperFrames build/render environment. For asset preprocessing commands (`tts`, `transcribe`, `remove-background`), invoke the `hyperframes-media` skill instead.

alecs5am/ralphy

Asset preprocessing for HyperFrames compositions — text-to-speech narration (Kokoro), audio/video transcription (Whisper), and background removal for transparent overlays (u2net). Use when generating voiceover from text, transcribing speech for captions, removing the background from a video or image to use as a transparent overlay, choosing a TTS voice or whisper model, or chaining these (TTS → transcribe → captions). Each command downloads its own model on first run.

alecs5am/ralphy

Install and wire registry blocks and components into HyperFrames compositions. Use when running hyperframes add, installing a block or component, wiring an installed item into index.html, or working with hyperframes.json. Covers the add command, install locations, block sub-composition wiring, component snippet merging, and registry discovery.

alecs5am/ralphy

Create video compositions, animations, title cards, overlays, captions, voiceovers, audio-reactive visuals, and scene transitions in HyperFrames HTML. Use when asked to build any HTML-based video content, add captions or subtitles synced to audio, generate text-to-speech narration, create audio-reactive animation (beat sync, glow, pulse driven by music), add animated text highlighting (marker sweeps, hand-drawn circles, burst lines, scribble, sketchout), or add transitions between scenes (crossfades, wipes, reveals, shader transitions). Covers composition authoring, timing, media, and the full video production workflow. For dev-loop CLI commands (init, lint, inspect, preview, render) see the hyperframes-cli skill; for asset preprocessing commands (tts, transcribe, remove-background) see the hyperframes-media skill.

alecs5am/ralphy

>- Compatibility shim for the legacy `/ralphy-remotion` skill name. Use when a saved Claude Code command, old project note, or user request still mentions Ralphy Remotion; redirect the task to HyperFrames and the current Ralphy render playbooks instead of authoring new Remotion code.

alecs5am/ralphy

>- Compatibility shim for the legacy `/remotion-to-hyperframes` skill name. Use when an old project, note, or user request asks to migrate Ralphy Remotion work; translate the intent into the current HyperFrames composition model and follow the editor and HyperFrames playbooks.

alecs5am/ralphy

The full extract → classify → blueprint → de-dup → publish pipeline for a finished `.ralphy/workspaces/<ws>/projects/<id>/`. Reads its `units/*/unit.json` (#069) as the Unit source of truth, then factors the project into ALL FIVE entities — Unit + the four typed blocks Template (structure), Style (look), Recipe (effect/treatment), Asset (reusable media). Applies the recipe-vs-tag split (#082/#083): a candidate is a Recipe only if it carries an extractable artifact (ffmpeg filtergraph / HyperFram

alecs5am/ralphy

>- How to make a realistic AI UGC ad for a product — generalized niche know-how that looks real and doesn't feel AI. A domain overlay on the standard pipeline: supplies the shooting-script shape (timestamp | VO | shot | mannerism), the creator-persona build, the problem-mirror hook, the trust-through-mannerisms rule, and the 9:16 ~15s UGC format defaults. Works for ANY product the user names — their skincare line, a no-name app, a gadget. The skill supplies the know-how; the user supplies the product. USE WHEN the user asks for a UGC ad / creator-style product ad / "make an ad that looks like a real person reviewing my product" / testimonial-style or problem-solution short for TikTok / Reels / Shorts, with no specific existing video to reproduce. This is a niche SKILL (generalized), not a remix TEMPLATE. For "remix this exact ad but swap the product/person", use the remix path (docs/skills-vs-templates.md). For swapping the creator in an existing clip, see /ugc-model-swap.

alecs5am/ralphy

When the user needs marketing ideas, inspiration, or strategies for their SaaS or software product. Also use when the user asks for 'marketing ideas,' 'growth ideas,' 'how to market,' 'marketing strategies,' 'marketing tactics,' 'ways to promote,' 'ideas to grow,' 'what else can I try,' 'I don't know how to market this,' 'brainstorm marketing,' or 'what marketing should I do.' Use this as a starting point whenever someone is stuck or looking for inspiration on how to grow. For specific channel execution, see the relevant skill (paid-ads, social-content, email-sequence, etc.).

alecs5am/ralphy

Full end-to-end workflow for generating a realistic AI UGC ad for a product. 15-second format. Looks real. Doesn't feel AI.

相關技能