happycapy-ai/happycapy-skills/azure-host

Claude Code and agent skill by happycapy-ai/happycapy-skills

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Reusable fixed-style PPTX generation skill for the Azure Host Forum visual brand — sky-blue background (#65AEFF), deep green typography (#07461E), olive side-panel accent (#728E03), cream portrait/detail color (#F1F0EA), bold contemporary industry sharing event aesthetic, oversized condensed grotesk titles, strong left-text / right-speaker-column composition, circular portrait frames, widescreen 16:9 editable .pptx output. Use this skill whenever the user mentions Azure Host Forum, asks for a presentation or deck in the Azure Host Forum style, wants a forum or industry-sharing deck, speaker event deck, expert talk slides, panel presentation, creative industry event deck, founder briefing slides, or any event/forum-style PowerPoint. Also trigger when the user says 'azure host forum', 'forum deck', 'speaker event slides', 'industry sharing presentation', 'host forum pptx', 'panel deck', 'workshop deck', or 'creative industry event slides' in any context.

Install

npx vskill@latest install happycapy-ai/happycapy-skills/azure-host

SKILL.md

Azure Host Forum PPTX Skill

A reusable fixed-style PowerPoint generation skill. It builds on the pptx skill's technical capabilities while locking in the Azure Host Forum visual identity: bold, contemporary, design-forward, inspired by industry sharing events, speaker forums, and editorial event posters.

Core principle — style wins over content volume. When the user's topic contains more information than the format can hold, compress and reinterpret. The deck must feel like a bold contemporary industry forum and speaker event — not a generic webinar deck, not a text-heavy conference agenda, not a business report. Every slide is a bold event panel or editorial speaker card.


Step 1: Gather Inputs (Ask First — Max 3 Questions)

Do not start generating immediately. Use the AskUserQuestion tool to present all questions in a single call. Only ask about what the user hasn't already provided.

Question 1 — Topic (skip if already provided):

  • header: "Topic"
  • question: "What is the presentation topic, event title, forum subject, session theme, project, or brand/product name?"
  • options: 2–3 relevant examples plus allow Other

Question 2 — Slide count (skip if already specified):

  • header: "Slides"
  • question: "How many slides should the deck include? (Default is 8 if unsure)"
  • options: 6 slides, 8 slides (Recommended), 10 slides, 12 slides

Question 3 — Images:

  • header: "Images"
  • question: "How should speaker images be handled?"
  • options:
  • Use uploaded speaker images — Insert portraits I upload
  • Generate speaker portraits with gpt-image-2 — AI creates clean editorial headshots
  • Combine uploaded images and gpt-image-2 — Mix uploaded and AI-generated

If the user hasn't provided host names, speaker names, session details, date, time, location, agenda items, or registration details, infer reasonable content from the topic or use neutral placeholder copy. Do not keep asking — only follow up if missing info makes it literally impossible to build the deck.

Once you have the three answers, proceed directly to generation.


Step 2: Topic Translation — Everything Becomes a Forum or Speaker Event

Before writing any slide copy, translate the user's topic into an Azure Host Forum frame. No topic is too technical, too abstract, or too far from UI design or industry sharing to work. Every subject can be reframed as a bold hosted forum, expert talk, live session, design-forward panel, product conversation, founder briefing, workshop, or creative industry event — while preserving the user's actual subject.

User providesAzure Host Forum treatment
UI/UX or design topicIndustry sharing session — hosts, guests, live critique, portfolio review
Tech product or platformFounder briefing or product forum — live demo, expert Q&A
Business or strategy topicExecutive panel or expert roundtable
Scientific or research topicKnowledge forum — expert talk, live discussion
Creative or cultural topicCreative industry exchange — guest portfolio, live session
Any other subjectReframe as a bold hosted live session, expert forum, or workshop event

Decide the event title, the one-line session premise, and the format/location label before writing any slides. These anchor the cover and the visual language of the whole deck.


Step 3: Generate Images (if requested)

Read the generate-image skill at /home/node/.claude/skills/generate-image/SKILL.md for the exact API call pattern. Use openai/gpt-image-2 with response_format: "b64_json".

Cover portrait rule

The cover slide must include exactly two speaker/host headshot images placed in the right olive column, stacked vertically in large circular or softly rounded frames. If the user chose gpt-image-2 or mixed mode and has not uploaded enough portraits, generate two portraits for the cover. Generate additional portraits for individual speaker profile slides as needed.

How many images to generate
  • 8-slide deck → 2–3 portraits (cover pair + 1 speaker slide)
  • 10–12 slide deck → 3–4 portraits
  • 6 slides → 2 portraits minimum (cover pair)
Azure Host Forum portrait prompt formula

Generated portraits are clean editorial headshots — they are supporting image assets, never full-slide screenshots and never images with embedded text.

Clean head-and-shoulders editorial portrait, professional and friendly, white or cream (#F1F0EA) background, soft even studio lighting. [Descriptor: mid-30s person / young professional / senior creative / diverse ethnicity — choose varied diversity across portraits]. No readable text, no logos, no props, no busy environment, no recognizable real person. Suitable for an industry event or speaker forum. High-resolution, editorial photography style.

Save each generated portrait to /tmp/azure-forum-portrait-N.png.


Step 4: Build the PPTX

Read the pptx skill at /home/node/.claude/skills/pptx/SKILL.md and its pptxgenjs.md reference for the full API. Build using PptxGenJS.

Core style constants — do not deviate
javascript
const SKY = "65AEFF"; // dominant background — all sky-blue fields
const GREEN = "07461E"; // primary typography — titles, headlines, body
const OLIVE = "728E03"; // side panel, accent panel, structural anchors
const CREAM = "F1F0EA"; // portrait frames, detail areas, metadata blocks
const LTBLUE = "7BBFFF"; // subtle organic texture color (slightly lighter than SKY)
const SANS = "Arial Black"; // oversized condensed titles (heavy grotesk)
const META = "Arial"; // compact metadata, labels, agenda rows, captions

If Arial Black is unavailable, substitute Impact or Trebuchet MS Bold.

Layout — LAYOUT_16x9 always (10" × 5.625")

All slides use LAYOUT_16x9. Background is SKY on every slide. The olive panel is a structural vertical band on the right side of speaker slides. Cream areas are used for portrait frames and metadata blocks only — never as a full-slide background.

Typography sizing
RoleFontSizeColor
Cover hero titleSANS72–110ptGREEN
Slide headlineSANS40–64ptGREEN
Sub-headline / session premiseMETA24–30ptGREEN
Body / session cue / agenda rowMETA22–28ptGREEN
Speaker name / host labelMETA uppercase16–20ptCREAM or GREEN
Small metadata / location / dateMETA uppercase12–16ptCREAM or GREEN

Forum Visual System Rules — These Override Everything

The most common failure mode is a text-heavy report placed on a sky-blue background. These rules prevent that.

Rule 1: Style wins over content volume

When the topic has more information than the forum format can hold, compress it. Do not add more slides, do not shrink fonts, do not write smaller. Summarise with bold event-language. Pick one idea per slide and discard the rest for that slide. The Azure Host Forum aesthetic takes priority over completeness.

Rule 2: One idea per slide. Under 35 words.

Count visible words before finalising each slide. Most slides must be under 35 words total — title, body, labels, agenda rows, and metadata combined. Body copy should be one short sentence, a compact speaker note, a short session cue, or a concise agenda row. No paragraphs.

Wrong: "This session will explore the fundamental challenges of designing user interfaces for high-stakes enterprise software environments where errors can have serious consequences for end users and organizational outcomes."

Right:

DESIGNING UNDER PRESSURE
When UI mistakes have real stakes.
Host: [Name] · Guest: [Name]
Rule 3: Left text field + right speaker column is the default layout

The Azure Host Forum style is defined by the split composition: a large sky-blue text field on the left, a strong olive vertical panel on the right containing portrait frames, speaker names, and compact metadata. Use this layout as the default for speaker-led slides. The split does not have to be 50/50 — 60/40 or 65/35 works — but the two zones must be clearly separated and non-overlapping.

Rule 4: One dominant title, everything else recedes

Every slide has one typographic dominant. Supporting text must be noticeably smaller. Agenda rows, session metadata, and lower-third captions must feel compact and secondary. The hierarchy must be obvious at a glance.

Rule 5: Write in event language, not report language

Body copy should feel like an event poster, speaker card, or live session notice — short, high-impact, editorial.

Preferred patterns:

  • "Live critique. Real work. Honest feedback."
  • "Session 1 · Intro · 7:00 PM"
  • "Format: Live discussion + open Q&A"
  • "Register at [url] before [date]"

Avoid: "This section will cover the important aspects of...", "The following information provides an overview of..."

Rule 6: Safe layout zones — no collisions

Before placing elements on every slide, define these non-overlapping zones and respect them absolutely:

TITLE ZONE: sky-blue left field, y: 0.7"–2.4"
BODY/SESSION ZONE: below title, at least 0.35" gap from title bottom edge
PORTRAIT ZONE: olive right column (x: 6.5"–9.8"), two stacked frames
SPEAKER NAME ZONE: below or alongside portrait frames, in CREAM metadata block
AGENDA/GRID ZONE: defined grid block, clear top/bottom padding
METADATA ZONE: y: 4.8"–5.4" bottom strip, or top corner tag
DIVIDER ZONE: only above title (y < 0.65") or below body (y > 3.9") — never through text
TEXTURE ZONE: background only — organic line shapes in LTBLUE, never over text

No element may cross through or touch another zone's content. Before pres.writeFile(), verify each slide:

  • No LINE or rule passes through any text box
  • No portrait frame edge clips into a text area
  • No agenda row overlaps title or body copy
  • No metadata label collides with body text
  • No organic texture line crosses any readable element

Conflict resolution order: reduce copy first → simplify agenda → remove decorative rule or texture → simplify layout. Never shrink the title to make room for more words.

Rule 7: Portrait frames are circular or softly rounded — always

Portrait images must be placed with rounding: true (PptxGenJS circles) or inside a softly rounded container shape. Never place raw rectangular portrait images. Frame diameter: 1.6"–2.2" for the cover column, 1.4"–1.8" for inner slides.

For uploaded images: place with rounding: true. For generated images: place with rounding: true.

The olive right panel background rectangle sits behind the portrait frames and labels. The portrait frames sit on top of it with cream fill circle shapes beneath them if a background circle is needed for contrast.

Rule 8: Organic line textures are background decoration only

Subtle organic line shapes in LTBLUE (7BBFFF) may be placed as background texture on the sky-blue field — thin elongated oval shapes, curved lines, or abstract organic forms. They must be behind all text boxes, set to transparency 60–75%, and must not cross, touch, or visually compete with any text, portrait, panel, or metadata element.


Suggested Slide Structure

Use this when the user provides no outline. Adapt freely when they do.

This is the start of the file. Read the full SKILL.md on GitHub.

Security

  • Security scanPassed, 95 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
137
Repository forks
30
7-day trend score
25

Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/happycapy-ai/happycapy-skills/azure-host/badge)](https://verified-skill.com/skills/happycapy-ai/happycapy-skills/azure-host)

Something wrong with this skill or its page? Tell us.