You're staring at a new client brief with zero visual reference, or maybe a deck that tells you nothing about how their brand should move through AI generation. This gets you from URL or slide PDF to a locked brand system file and five distinct visual directions in under an hour. It forces you to capture palette, tone, competitors, and do-nots in a reusable JSON before you burn credits on generations that miss the mark. The five directions (editorial, bold, minimal, playful, cinematic) give the client real choices without decision fatigue, and whichever one wins becomes the locked brand.md that every downstream batch references. Built by Picsart for agency pitch work where you need to show range fast and avoid looking like the competitor three slides later in the deck.
npx -y skills add PicsArt/gen-ai-skills --skill agency-brand-scoping --agent claude-codeInstalls into .claude/skills of the current project.
A fast discovery pass for a new client: gather brand signals (site, deck, competitors, audience, tone), lock them into a reusable brand-system.json file, and produce 5 on-direction visual explorations to validate with the client before any production spend.
URL / deck in → brand-system.json + 5 direction variations out. One hour, under $1 in generation cost, reusable across the rest of the engagement.
Do not use for finished campaign assets — this is discovery only. Lock the system here, then run agency-pitch-mockups or agency-multi-brand-pack for deliverables.
Ask the user (batch in one message):
acme-fintech)If the user gives a URL or deck, read/fetch it first and extract palette, typography impression, imagery style, and tone words. Propose the brand-system.json back for confirmation before generating.
1. INGEST → read URL / deck / Figma, extract signals
2. DRAFT → propose brand-system.json (palette, type-feel, imagery, tone, do-nots)
3. CONFIRM → user locks the system; save to clients/<slug>/brand-system.json
4. ESTIMATE → gen-ai pricing on the 5-direction batch (< $1 target)
5. GENERATE → 5 directions, each with a single-word descriptor tag
6. REVIEW → contact-sheet the 5 outputs, get client pick
7. LOCK → winning direction becomes clients/<slug>/brand.md for all future work
Rules:
brand-system.json, every future generation for this client re-litigates brand from scratch.recraftv4 ≈ 10 credits, but confirm in-session."obvious mockup" language in prompt.clients/<slug>/.{
"client_slug": "acme-fintech",
"brand_system": "clients/acme-fintech/brand-system.json",
"defaults": { "model": "recraftv4", "aspectRatio": "16:9" },
"variants": {
"direction": ["editorial", "bold", "minimal", "playful", "cinematic"]
},
"jobs": [
{ "id": "{direction}", "prompt": "<client descriptor> — {direction} direction" }
]
}
Lock the winning direction back into clients/<slug>/brand.md — a 10-line markdown file Claude + downstream batches can include in prompts.
| Sub-task | Model | Why |
|---|---|---|
| Direction exploration (default) | recraftv4 | Design-forward, honors palette + type feel, cheap |
| Photo-led brands (fashion, hospitality) | flux-2-pro | Photoreal, better lighting, for brands that live in photography |
| Typography-centric directions (editorial posters, quote slides) | ideogram-v3 | Only model that renders readable headlines reliably |
| Quick cheap drafts when testing 10+ directions | gemini-3.1-flash-image or gemini-3.1-flash-image | ~1 credit each; use for throwaway iteration |
Check live IDs with gen-ai models --mode image before committing — names shift.
-i from a different client folder, ever.brand-system.json to the repo, not Drive. It's versioned alongside code and MRs.clients/<slug>/prompts/ — hero, tile, social, OG templates that all reference the locked direction.brand-system.json → 5 gorgeous directions that don't fit the brandbrand.md "because it looked nice" — your competitive moat is per-client rigor, don't blow it--drive-folder "internal-$CLIENT" or a private workspaceRun gen-ai whoami to confirm authentication, then re-run the failed command with --debug.
Pull signals from whatever the client gave you. If it's a URL, fetch it. If it's a deck, read it. Summarize into:
{
"client_slug": "acme-fintech",
"brand": {
"palette": { "primary": "#0B1F3A", "accent": "#00D4A3", "neutral": "#F5F3EE" },
"typography_feel": "geometric sans, tight tracking, editorial weights",
"imagery_direction": "abstract finance, muted photography, no stock clichés",
"tone_words": ["trustworthy", "calm", "precise"],
"do_not": ["cartoon illustration", "neon gradients", "tech-bro stock photos"]
},
"competitors": ["wise.com", "mercury.com"],
"audience": "seed-stage founders, CFO buyers",
"confidentiality": "NDA"
}
Save to clients/<slug>/brand-system.json. This file is the single source of truth referenced by every downstream skill.
Each direction gets a single-word descriptor. Standard starter set: editorial, bold, minimal, playful, cinematic. Swap any that clashes with the brand's tone words (e.g. drop "playful" for a private bank).
CLIENT="acme-fintech"
OUT="clients/$CLIENT/scoping"
mkdir -p "$OUT"
# Check per-call pricing first, then multiply by 5 directions.
gen-ai pricing recraftv4
# Run as 5 discrete jobs so each can get its own direction prompt
cat > /tmp/$CLIENT-scoping.json <<EOF
{
"defaults": { "model": "recraftv4" },
"jobs": [
{ "id": "01-editorial", "prompt": "$CLIENT hero — editorial magazine feel, restrained palette, generous whitespace, confident typography", "aspectRatio": "16:9" },
{ "id": "02-bold", "prompt": "$CLIENT hero — bold graphic, high contrast, oversized type, flat color blocking", "aspectRatio": "16:9" },
{ "id": "03-minimal", "prompt": "$CLIENT hero — minimal composition, single focal element, muted neutrals, precise negative space", "aspectRatio": "16:9" },
{ "id": "04-playful", "prompt": "$CLIENT hero — playful abstract shapes, warm palette, hand-drawn accent, approachable energy", "aspectRatio": "16:9" },
{ "id": "05-cinematic", "prompt": "$CLIENT hero — cinematic photography, shallow depth of field, moody lighting, filmic grain", "aspectRatio": "16:9" }
]
}
EOF
gen-ai batch run /tmp/$CLIENT-scoping.json -c 5 -o "$OUT"
Results land at clients/<slug>/scoping/0X-<direction>.webp + results.json. Present the 5 side-by-side to the client.
| Phase | Typical spend | Typical time |
|---|---|---|
Scoping (this skill, 5 directions, recraftv4) | ~$0.50–$1 | 15-30 min incl. review |
| Production (after direction lock) | $5–$50 per asset set | Per deliverable |
Keep scoping under $1. If a client won't approve a direction after 5, the brief is broken — don't burn credits, push back on the brief.
workflows/agency-pitch-mockups/ — once direction is locked, produce pitch assetsworkflows/agency-multi-brand-pack/ — run scoping-plus-production across many retainer clientsworkflows/agency-client-handoff/ — package final work at engagement endgen-ai-workflows.md — general multi-step patternsgen-ai-batch.md — manifest shapes and concurrency tuningsickn33/antigravity-awesome-skills
moizibnyousaf/ai-agent-skills
github/awesome-copilot