Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

1 Commit

Repository files navigation

██████╗ ██████╗ ███████╗███████╗ █████╗ ██╗
██╔══██╗██╔═══██╗██╔════╝██╔════╝██╔══██╗██║
██████╔╝██║ ██║█████╗ █████╗ ███████║██║
██╔══██╗██║ ██║██╔══╝ ██╔══╝ ██╔══██║██║
██║ ██║╚██████╔╝███████╗███████╗██║ ██║██║
╚═╝ ╚═╝ ╚═════╝ ╚══════╝╚══════╝╚═╝ ╚═╝╚═╝

Business Promo

A Claude Code master skill that turns a real business into a social-ready animation, plus the caption that ships with it.

License: MITClaude CodeLanguages

English · עברית


English

What it is

One interview, one finished post. You describe a business, the skill asks eleven questions one at a time, and it produces a rendered animation at the right aspect ratio for the network you chose, with the caption written to match.

It does not reimplement animation or rendering. It owns the brief and the sequencing and delegates every craft decision to the skill that owns it: HyperFrames for composition and motion, Higgsfield for generated imagery, and the motion doctrine skills for seams and choreography.

It is built for client work, which is why its strictest rules are about honesty rather than aesthetics. It never invents a phone number, never fabricates opening hours, and always renders contact details as real text instead of generated pixels.

What you get

Every run produces all four, inside videos/<business-slug>/:

ArtifactWhat it is
BRIEF.mdThe confirmed interview answers. Written once, never re-asked.
renders/*.mp4The animation at the chosen aspect, correct duration, last frame held.
CAPTION.mdPost copy, CTA, and hashtags in the video language, per network.
DELIVERY.mdWhat to post where, and what the client still owes.

A run that ends with only an MP4 is incomplete. The caption is half the deliverable.

Requirements

  • Claude Code
  • Node.js 18 or newer
  • The HyperFrames CLI, pulled on demand with npx hyperframes
  • Optional: a Higgsfield account and CLI, needed only for AI-generated imagery. The default engine uses the client's own photos and needs no account.

Install

For every project (recommended):

git clone https://github.com/roeea2/hyperframes_skill.git ~/.claude/skills/business-promo

For one project only:

git clone https://github.com/roeea2/hyperframes_skill.git .claude/skills/business-promo

The directory must be named business-promo so Claude Code discovers it. Start a new session, then confirm it loaded:

/business-promo

Update:

cd~/.claude/skills/business-promo && git pull

Usage

Invoke it directly, or just describe what you need:

/business-promo
make a promo video for my client's barbershop
I need an Instagram Reel for a pizzeria, in Hebrew

Then answer eleven questions, one per message. Nothing is batched into a wall of questions, and any question your opening message already answered is skipped.

Want it to decide for you? Say "just build it" or "surprise me". Steps 1 to 6 are still asked, because those are facts only you have. Steps 7 to 11 become stated decisions with a one-line reason each.

The interview

#StepAsks for
1BusinessName and what it actually sells
2GoalThe one thing the video must make a viewer do
3PlatformThe network, which derives 1:1, 9:16, or 16:9
4LanguageEnglish, Hebrew, Hebrew with a Latin brand name, or two cuts
5DetailsWhich of hours, phone, address, web to show, then the exact strings
6AssetsLogo, photos, brand colors, website the client already has
7ModelWhich generation engine, with plain-language trade-offs
8LookLook and feel preset
9ShapesShape language
10Sound and lengthVoiceover, music only, or silent, plus duration
11Run shapeStoryboard review first? Collaborative or automated?

Before building, it runs an integration check: it looks for a consequence the combined answers create that no single answer showed, and raises it with a proposed fix. For example, "Bold Street sets headlines in uppercase, and Hebrew has no uppercase, so I will get the same punch from weight and size instead."

Choosing a model

Four engines, explained in outcomes rather than model names. In engines A, B, and C the text layer is always real HyperFrames text, so the phone number is sharp no matter what.

EngineBest forCost and speed
A. Designed motion, the client's photosAny business with real photos. Default.Free, fastest
B. Designed motion, generated backgroundsNo photos, or an abstract serviceCheap, fast
C. Generated video b-rollPremium pieces with a real budgetCosts credits, slowest
D. AI presenter or UGC-style adWhen the offer needs a person to sell itCosts credits, slow

For a local business, engine A usually beats a glossier generated one. Viewers are deciding whether to walk into that room.

Looks

Eight presets, each with a palette, a motion character, and a Hebrew-capable font. The skill offers you the four that fit your business category rather than all eight.

Clean Modern · Bold Street · Warm Artisan · Night Neon · Premium Editorial · Fresh Organic · Tech Grid · Playful Pop

If the client has brand colors, theirs override the preset palette and the preset keeps doing the typography and motion work.

Hebrew and RTL

Hebrew is treated as a gate, not a translation. When the video language is Hebrew or any RTL language, the skill loads the RTL typography rules before writing a single line of HTML, ships the Hebrew font subset, and sets direction per element. It also blocks the two failures that pass every automated check and only show up in the finished render:

  • dir="rtl" on <html>, which renders black frames
  • uppercase and positive letter-spacing on Hebrew, which quietly breaks the letterforms

The rules that make it client-safe

  1. One question per message. No wall of questions.
  2. Never invent a business fact. Hours, phone, address, and claims come from you only. Missing means omitted and logged, never a plausible placeholder.
  3. Contact details are real text, never generated pixels. Image models garble digits and destroy Hebrew glyphs.
  4. No unverifiable claims. "Best in the city" only if you can stand behind it.
  5. Hebrew loads the RTL gate before authoring.
  6. Vertical fills the frame. 9:16 uses the full height, never a square layout centered in a tall frame.
  7. Motion doctrine first. The film is one continuous camera move, not a stack of slides.
  8. Render is user-gated. It always asks before rendering.

Rule 2 is enforced in code, not just in prose. See below.

Validating a brief

The brief validator runs automatically before any build, and you can run it yourself:

node scripts/check-brief.mjs videos/my-client/BRIEF.md
node scripts/check-brief.mjs videos/my-client/BRIEF.md --json

It exits non-zero on a missing required field, a canvas that does not match the aspect, Hebrew copy with the RTL flag off, a generation engine with no model id, and any on-screen detail that looks like a placeholder such as 555-0000 or example.com.

ERROR detail "Phone" looks like a placeholder: "03-555-0000" - never ship an invented fact to a client's feed

Repo layout

SKILL.md the interview and orchestration spine
references/
interview.md the eleven steps, verbatim, English and Hebrew
models.md the four engines and the model catalog
looks.md eight presets, palettes, fonts, shape vocabulary
formats.md aspect, safe zones, per-network caption specs
build.md the five-beat skeleton, assets, quality gates
assets/
BRIEF.template.md the brief written after the interview
CAPTION.template.md the caption deliverable
scripts/
check-brief.mjs brief validator, no dependencies

License

MIT. See LICENSE.


עברית

מה זה

ריאיון אחד, פוסט מוכן אחד. אתה מתאר עסק, הסקיל שואל אחת עשרה שאלות אחת אחרי השנייה, ומייצר אנימציה מרונדרת ביחס הגובה-רוחב הנכון לרשת שבחרת, עם הקאפשן שמתאים לה.

הסקיל לא מממש מחדש אנימציה או רינדור. הוא הבעלים של הבריף ושל סדר הפעולות, ומעביר כל החלטה מקצועית לסקיל שאחראי עליה: HyperFrames לקומפוזיציה ותנועה, Higgsfield לתמונות שנוצרות ב-AI, וסקילי דוקטרינת התנועה לתפרים ולכוריאוגרפיה.

הוא נבנה לעבודה מול לקוחות, ולכן הכללים המחמירים ביותר שלו הם על אמינות ולא על אסתטיקה. הוא אף פעם לא ממציא מספר טלפון, לא בודה שעות פתיחה, ותמיד מרנדר פרטי קשר כטקסט אמיתי ולא כפיקסלים שנוצרו במודל.

מה מקבלים

כל הרצה מייצרת את ארבעת אלה, בתוך videos/<business-slug>/:

קובץמה זה
BRIEF.mdתשובות הריאיון המאושרות. נכתב פעם אחת, לא נשאל שוב.
renders/*.mp4האנימציה ביחס שנבחר, באורך הנכון, עם החזקה של הפריים האחרון.
CAPTION.mdטקסט הפוסט, קריאה לפעולה והאשטגים בשפת הסרטון, לפי הרשת.
DELIVERY.mdמה לפרסם ואיפה, ומה הלקוח עדיין חייב לספק.

הרצה שנגמרת רק ב-MP4 היא הרצה לא גמורה. הקאפשן הוא חצי מהתוצר.

דרישות

  • Claude Code
  • Node.js גרסה 18 ומעלה
  • ה-CLI של HyperFrames, נמשך לפי הצורך עם npx hyperframes
  • אופציונלי: חשבון ו-CLI של Higgsfield, נדרש רק לתמונות שנוצרות ב-AI. מנוע ברירת המחדל עובד עם התמונות של הלקוח ולא דורש חשבון.

התקנה

לכל הפרויקטים (מומלץ):

git clone https://github.com/roeea2/hyperframes_skill.git ~/.claude/skills/business-promo

לפרויקט אחד בלבד:

git clone https://github.com/roeea2/hyperframes_skill.git .claude/skills/business-promo

שם התיקייה חייב להיות business-promo כדי ש-Claude Code יזהה את הסקיל. פתח סשן חדש, ואז ודא שהוא נטען:

/business-promo

עדכון:

cd~/.claude/skills/business-promo && git pull

שימוש

אפשר להפעיל ישירות, או פשוט לתאר מה צריך:

/business-promo
תעשה סרטון פרסומת למספרה של הלקוח שלי
אני צריך ריל לאינסטגרם לפיצריה, בעברית

ואז עונים על אחת עשרה שאלות, שאלה אחת בכל הודעה. שום דבר לא נדחס לקיר של שאלות, וכל שאלה שההודעה הראשונה שלך כבר ענתה עליה מדולגת.

רוצה שיחליט בשבילך? תגיד "פשוט תבנה" או "תפתיע אותי". שלבים 1 עד 6 עדיין ישאלו, כי אלה עובדות שרק לך יש. שלבים 7 עד 11 הופכים להחלטות מוצהרות עם שורת נימוק לכל אחת.

הריאיון

#שלבמה נשאל
1העסקהשם ומה הוא באמת מוכר
2מטרההדבר האחד שהסרטון צריך לגרום לצופה לעשות
3פלטפורמההרשת, שממנה נגזר 1:1, 9:16 או 16:9
4שפהאנגלית, עברית, עברית עם שם מותג לטיני, או שתי גרסאות
5פרטיםאילו פרטים להציג, ואז המחרוזות המדויקות
6חומריםלוגו, תמונות, צבעי מותג ואתר שכבר יש ללקוח
7מודלבאיזה מנוע ייצור, עם היתרונות והחסרונות בשפה פשוטה
8מראהפריסט של מראה ותחושה
9צורותשפה צורנית
10סאונד ואורךקריינות, מוזיקה בלבד או שקט, ומשך
11אופן העבודהמעבר על סטוריבורד קודם? שיתופי או אוטומטי?

לפני הבנייה מורצת בדיקת הצלבה: הסקיל מחפש תוצאה שנוצרת משילוב התשובות ושאף תשובה בודדת לא חשפה, ומעלה אותה עם הצעת פתרון. למשל, "הפריסט Bold Street מגדיר כותרות באותיות גדולות, ובעברית אין אותיות גדולות, אז אשיג את אותה עוצמה ממשקל וגודל במקום."

בחירת מודל

ארבעה מנועים, מוסברים לפי התוצאה ולא לפי שמות מודלים. במנועים A, B ו-C שכבת הטקסט היא תמיד טקסט אמיתי של HyperFrames, כך שמספר הטלפון חד בכל מקרה.

מנועהכי מתאים לעלות ומהירות
A. אנימציה מעוצבת עם התמונות של הלקוחכל עסק עם תמונות אמיתיות. ברירת מחדל.חינם, הכי מהיר
B. אנימציה מעוצבת עם רקעים שנוצרים ב-AIאין תמונות, או שירות מופשטזול, מהיר
C. קטעי וידאו שנוצרים ב-AIעבודות פרימיום עם תקציב אמיתיעולה קרדיטים, הכי איטי
D. פרזנטור AI או פרסומת בסגנון UGCכשצריך אדם שימכור את ההצעהעולה קרדיטים, איטי

לעסק מקומי, מנוע A בדרך כלל מנצח גרסה מבריקה יותר שנוצרה ב-AI. הצופים מחליטים אם להיכנס לחדר הזה.

מראה ותחושה

שמונה פריסטים, לכל אחד פלטה, אופי תנועה ופונט שתומך בעברית. הסקיל מציע לך את הארבעה שמתאימים לקטגוריית העסק, ולא את כל השמונה.

Clean Modern · Bold Street · Warm Artisan · Night Neon · Premium Editorial · Fresh Organic · Tech Grid · Playful Pop

אם ללקוח יש צבעי מותג, הם דורסים את פלטת הפריסט, והפריסט ממשיך לעשות את העבודה של הטיפוגרפיה והתנועה.

עברית ו-RTL

עברית מטופלת כשער, לא כתרגום. כשהשפה של הסרטון היא עברית או כל שפה ימין-לשמאל, הסקיל טוען את כללי הטיפוגרפיה ל-RTL לפני כתיבת שורת HTML אחת, מוריד את תת-הקבוצה העברית של הפונט, ומגדיר כיווניות ברמת האלמנט. הוא גם חוסם את שני הכשלים שעוברים כל בדיקה אוטומטית ומתגלים רק ברינדור הסופי:

  • dir="rtl" על תגית <html>, שמייצר פריימים שחורים
  • אותיות גדולות וריווח אותיות חיובי על עברית, ששוברים בשקט את צורת האותיות

הכללים שהופכים אותו לבטוח לעבודה מול לקוחות

  1. שאלה אחת בכל הודעה. בלי קיר של שאלות.
  2. אף פעם לא להמציא עובדה על העסק. שעות, טלפון, כתובת וטענות מגיעים ממך בלבד. חסר פירושו מושמט ומתועד, לא ממלא מקום סביר.
  3. פרטי קשר הם טקסט אמיתי, לא פיקסלים שנוצרו. מודלים משבשים ספרות והורסים אותיות עבריות.
  4. בלי טענות שאי אפשר לאמת. "הכי טוב בעיר" רק אם אתה יכול לעמוד מאחורי זה.
  5. עברית מפעילה את שער ה-RTL לפני הכתיבה.
  6. וידאו אנכי ממלא את הפריים. 9:16 משתמש בכל הגובה, לא בפריסה ריבועית ממורכזת בתוך פריים גבוה.
  7. דוקטרינת התנועה קודם. הסרט הוא תנועת מצלמה אחת רציפה, לא ערימת שקפים.
  8. הרינדור בשליטת המשתמש. תמיד שואל לפני שהוא מרנדר.

כלל 2 נאכף בקוד, לא רק בטקסט. ראה למטה.

בדיקת בריף

בודק הבריף רץ אוטומטית לפני כל בנייה, ואפשר להריץ אותו גם ידנית:

node scripts/check-brief.mjs videos/my-client/BRIEF.md
node scripts/check-brief.mjs videos/my-client/BRIEF.md --json

הוא מחזיר קוד יציאה שונה מאפס על שדה חובה חסר, קנבס שלא מתאים ליחס, טקסט בעברית עם דגל RTL כבוי, מנוע ייצור בלי מזהה מודל, וכל פרט מסך שנראה כמו ממלא מקום כמו 555-0000 או example.com.

מבנה הריפו

SKILL.md עמוד השדרה של הריאיון והתזמור
references/
interview.md אחת עשרה השאלות, מילה במילה, אנגלית ועברית
models.md ארבעת המנועים וקטלוג המודלים
looks.md שמונה פריסטים, פלטות, פונטים ושפה צורנית
formats.md יחסים, אזורים בטוחים ומפרטי קאפשן לכל רשת
build.md שלד חמשת הפעימות, חומרים ושערי איכות
assets/
BRIEF.template.md הבריף שנכתב אחרי הריאיון
CAPTION.template.md תוצר הקאפשן
scripts/
check-brief.mjs בודק הבריף, בלי תלויות

רישיון

MIT. ראה LICENSE.


Built with Claude Code · Powered by HyperFrames

About

Claude Code master skill: interview a business, generate a social-ready animation plus its caption. English and Hebrew, 1:1 / 9:16 / 16:9.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages