# Agency Multi Brand Pack

> Per-client asset templates scoped by workspace.

- **Type:** Skill
- **Install:** `agentstack add skill-picsart-gen-ai-skills-agency-multi-brand-pack`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [PicsArt](https://agentstack.voostack.com/s/picsart)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [PicsArt](https://github.com/PicsArt)
- **Source:** https://github.com/PicsArt/gen-ai-skills/tree/main/skills/agency-multi-brand-pack

## Install

```sh
agentstack add skill-picsart-gen-ai-skills-agency-multi-brand-pack
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Agency multi-brand pack

Run generations for N retainer clients in one coordinated pass — each client's output strictly namespaced, each job gated by that client's brand rules, every run audit-ready for legal and billing.

**N clients × M templates per client → one batch, zero cross-contamination.** For agencies running weekly/monthly creative cycles across a client portfolio.

## When to Use

- Weekly/monthly retainer refresh across multiple retainer clients
- Portfolio-wide seasonal re-skin (e.g. holiday refresh for all 8 retainer brands in one batch)
- Multi-client pitch week where each pitch needs its own branded mockup set
- Audit-ready production runs where finance/legal need a per-client spend breakdown
- Any agency workflow where "run the same pipeline for every client, with their rules" is the task

**Do not use for** single-client deep-production work — drop to `agency-pitch-mockups` or a client-specific workflow. Multi-brand is for portfolio parallelism.

## Prerequisites

Ask the user (one message):

1. **Client list** — slugs of clients in scope (e.g. `acme-fintech`, `zest-retail`, `nova-travel`). Each must have a locked `brand-system.json`.
2. **Template set per client** — same across all clients (hero + 3 social + OG) or does each client have a different deliverable?
3. **This week's theme / brief** — one brief that gets re-expressed per client (e.g. "Q2 product refresh") or fully independent briefs per client?
4. **Output destination** — Drive folder per client? Dropbox / S3? Internal repo path?
5. **Billing scope** — tag each job with `client:` so per-client spend can be pulled from `gen-ai history`
6. **Concurrency ceiling** — default 4, raise to 8 if clients all have premium rate limits

If any client in the list lacks `brand-system.json` or `brand.md`, stop and run `agency-brand-scoping` for that client first — do not batch-generate without locked brand files.

## How to Run

```
1. VERIFY BRANDS  → every client in scope has clients//brand.md + brand-system.json
2. SCAFFOLD       → build per-client manifest fragments, merge into one master manifest
3. ESTIMATE       → gen-ai batch run  --dry-run + estimate; break into smaller batches if > $20
4. RUN            → `gen-ai batch run ` with client names in job IDs and a resume-ready output dir
5. VERIFY         → per-client output folders populated; cross-check any NULLs in results.json
6. AUDIT          → export per-client spend + asset list for billing
7. DELIVER        → folder per client, approved files uploaded or linked in the retainer channel
```

**Rules:**

- **One folder per client.** `out//...` — never a shared output folder where filenames can collide.
- **One brand context per job, not per batch** — each job prompt should include the relevant client `brand.md` constraints. Batch-level generic prompts are the biggest source of cross-contamination.
- **Use stable job IDs.** Put client or campaign names in each `id` so downloaded files and `results.json` remain easy to group.
- **Resume with `gen-ai batch resume ` by default.** `gen-ai batch resume ` so mid-run failures don't cost the completed half.

## Quick Reference

```json
{
  "batch_kind": "multi-brand-pack",
  "week": "2026-04-22",
  "defaults": { "model": "recraftv4", "aspectRatio": "1:1" },
  "clients": [
    { "slug": "acme-fintech", "templates": ["hero", "social-1", "og"] },
    { "slug": "zest-retail",  "templates": ["hero", "social-1", "og"] }
  ]
}
```

A scaffolding script expands this into the flat `jobs[]` manifest the CLI expects. Keep the expanded manifest checked in under `out/retainer-/manifest.json` for reproducibility.

## Quick Reference

| Sub-task | Model | Notes |
|---|---|---|
| Per-client hero (default) | `recraftv4` | Design-forward, respects brand palette |
| Per-client hero (photo-led brands) | `flux-2-pro` | Override at the job level for photo-heavy clients |
| Social tiles (1:1, 9:16) | `recraftv4` | Same brand rules, cheaper |
| OG / readable-headline slides | `ideogram-v3` | Only reliable text rendering |
| Background replacement on product shots | `recraftv3-replace-bg` | For ecomm retainers |
| Video cuts per brand | `kling-v3-standard` (draft) / `kling-v3-pro` (final) | Per-client concurrency 2 |

## Procedure

- **One brand file per client, no shared "agency-style" rules.** Each client pays for their own brand rigor.
- **Namespace every output by slug** — `out//`, `drive:retainer-//`, `results.json` job IDs. Redundant is good.
- **Script the manifest.** For > 3 clients, a Node/Python scaffold that iterates `clients[]` × `templates[]` beats copy-paste errors.
- **Estimate before every run.** Multi-brand batches cross the $20 threshold easily — pause and confirm.
- **Persist `results.json` to the repo.** Audit trail for legal, billing input, and reproducibility.
- **Keep a per-client prompt library** at `clients//prompts/` — manifest references these, edits propagate.
- **review brand-sensitive output.** `` — better a missing asset than a mis-branded one.
- **Weekly cadence deserves a cron** + Slack webhook on completion; see `gen-ai-batch.md` §CI recipes.

## Pitfalls

- **Brand cross-contamination** — missing `rules` on a single job, entire batch suspect. Fix: per-job `rules`, not batch-level.
- **Filename collisions** without slug prefixes — client B's `hero.webp` overwrites client A's.
- **Running without `gen-ai batch resume `** on a 100-job batch — one provider hiccup costs the whole run.
- **Shared Drive folder** — client A sees client B's folder, NDA breach.
- **Tagless jobs** — can't produce per-client billing; finance asks, you can't answer.
- **Flagship models applied everywhere** — $40 weekly batch instead of $15. Draft-then-upgrade selectively.

## Verification

Run `gen-ai whoami` to confirm authentication, then re-run the failed command with `--debug`.

## Step 1: Verify brands + build manifest

```bash
CLIENTS=("acme-fintech" "zest-retail" "nova-travel")
WEEK=$(date +%Y-%m-%d)

# Sanity check: every client has a brand file
for c in "${CLIENTS[@]}"; do
  test -f "clients/$c/brand.md" || { echo "Missing brand.md for $c"; exit 1; }
done
```

## Step 2: Per-client manifest fragments, merged

```bash
cat > /tmp/multi-brand-$WEEK.json //.webp` plus `results.json`.

## Step 3: Per-client audit + delivery

```bash
# Per-client completion breakdown from results.json
node -e '
  const r = require("./out/retainer-2026-04-22/results.json");
  const by = {};
  for (const j of r.jobs) {
    const c = j.id.split("/")[0];
    by[c] ||= { completed: 0, failed: 0 };
    by[c][j.status] = (by[c][j.status] || 0) + 1;
  }
  console.table(by);
'
```

Create an archive sub-folder `retainer-$WEEK//` per client, drop a summary with asset list + estimated spend from `gen-ai pricing`. Share only the per-client folder link — never the master folder.

## Cost & time

| Phase | Typical spend | Typical time |
|---|---|---|
| Scoping (per new client, one-time) | ~$1 | 30 min |
| Production (weekly retainer, 8 clients × 4 assets) | $15-30 | 20-40 min batch + review |
| Flagship-model upgrade pass (2-3 hero upgrades) | $5-10 | 10-15 min |

Per-client weekly spend should be trackable from `results.json` — if it isn't, the tagging is broken.

## See also

- `workflows/agency-brand-scoping/` — required prerequisite per client
- `workflows/agency-pitch-mockups/` — per-client pitch variant
- `workflows/agency-client-handoff/` — package retainer history at engagement end
- `gen-ai-batch.md` — concurrency, `gen-ai batch resume `, audit recipes

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [PicsArt](https://github.com/PicsArt)
- **Source:** [PicsArt/gen-ai-skills](https://github.com/PicsArt/gen-ai-skills)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-picsart-gen-ai-skills-agency-multi-brand-pack
- Seller: https://agentstack.voostack.com/s/picsart
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
