Enterprise Press Batch
Produce full press-release asset bundles — hero, executive headshots, product shots, event-ready horizontal and vertical crops — with embargo controls, wire-service naming conventions, EXIF rights metadata, and multi-resolution exports. Built for comms / PR teams shipping to Reuters, AP, Getty, and corporate newsrooms under embargo.
When to Use
- Product launch, earnings announcement, exec change, crisis response — assets needed across wire + web + print + social in parallel
- Embargoed announcement requiring strict asset handling until lift
- Multi-publication distribution where each wire has different resolution + EXIF requirements
- Executive headshot refresh across a leadership team (consistent lighting, backgrounds, crops)
- Event kits: pre-event (concept), during-event (placeholder + real), post-event (recap)
Do not use for: social-only launches (use gen-ai-workflows launch-kit), single-asset news posts.
Prerequisites
Before the batch runs:
- Release type + embargo — announcement date/time, embargo lift, distribution list. Embargoed runs must write to a locked Drive folder.
- Asset scope — which of: 1 hero, N exec headshots, M product shots, event horizontal, event vertical, social derivatives. Count per type.
- Distribution targets — wire service specs (AP: 3000px long edge JPEG, Getty: TIFF, Reuters: sRGB embedded). Determines resolution + format per pack.
- Rights metadata — credit line, copyright owner, usage rights, caption, contact. Written to EXIF/IPTC.
- Approval chain — legal, comms lead, exec approval for headshots? Who signs off before embargo pack ships?
- Audit trail — does the archive need the original brief + manifest + results for seven years (SOX-adjacent)?
How to Run
Six steps. Embargo handling is non-negotiable.
- Scope the bundle — write the deliverable matrix: asset × pack (wire / web / print / social) × resolution. Costs scale by cells, not by source images.
- Generate / ingest sources — AI-generated heroes via
gen-ai generate; real executive photography ingested via gen-ai upload. Enhance with topaz-upscale-image if source resolution is below print spec.
- Embargo lock — create a restricted archive location. Everything until lift lands here. Never ship intermediate drafts.
- Batch exports — one manifest per pack (wire / web / print / social), each with the correct resolution, format, and color profile. Watermark drafts; never watermark final approved wire assets.
- Stamp EXIF / IPTC — rights, credit, caption, embargo notice injected on every file. Use
exiftool as a post-batch step.
- Deliver — at embargo lift, promote from the locked folder to the public press-kit URL. Archive the manifest + results.json + checksum manifest for the audit trail.
Quick Reference
Each pack is its own manifest so wire / print / web / social can run in parallel with correct specs.
{
"defaults": {
"model": "topaz-upscale-image"
},
"metadata": {
"release": "2026-04-LAUNCH",
"embargo_lift": "2026-04-22T13:00:00Z",
"brand_system_version": "brand.md@sha:a4f1c9",
"approver": "comms-lead@company.com",
"audit_id": "PRESS-2026-04-LAUNCH",
"distribution": ["AP", "Reuters", "Getty", "corporate-newsroom"],
"rights": {
"credit": "Company Inc.",
"copyright": "(c) 2026 Company Inc.",
"usage": "Editorial use in connection with 2026 launch coverage only."
}
},
"jobs": [
{
"id": "hero-16x9-wire",
"imageUrls": ["./sources/hero-master.png"],
"prompt": "4x upscale, sharpen, retain color profile",
"aspectRatio": "16:9"
},
{
"id": "exec-ceo-headshot-3x4-wire",
"imageUrls": ["./sources/ceo-raw.jpg"],
"prompt": "Editorial portrait enhance, studio light preserved"
}
]
}
Filename convention (wire-service friendly): {release-id}_{asset-type}_{subject}_{aspect}_{resolution}.{ext} → 2026-04-LAUNCH_hero_product_16x9_4k.jpg. Survives rebranding; matches Reuters/Getty ingest patterns.
Quick Reference
| Sub-task |
Model |
Notes |
| Hero concept (AI-generated) |
flux-2-pro / gemini-3-pro-image |
Commercial-safe, editorial fidelity |
| Exec headshot enhance (real photo) |
topaz-upscale-image |
Preserves identity; no hallucination |
| Background cleanup on real photo |
picsart-change-bg |
Studio backdrop substitution |
| Background removal for transparent pack |
picsart-remove-bg |
Social + overlay-ready PNG |
| Product shot from angle library |
flux-kontext-pro |
Edit-mode, product-accuracy preserve |
| Event B-roll from single still |
kling-v3-pro (i2v) |
For broadcast packs only |
Never use fully-generative models on named executives or real products without explicit legal sign-off. Use enhance/edit-only models. Confirm licensing per account with gen-ai models info.
Procedure
- Embargo-first workflow. Locked Drive folder from minute one. No assets leave it until lift.
- Never AI-generate a real executive's face. Enhance / upscale real photography only. Legal + reputational risk otherwise.
- Watermark drafts, never watermark approved finals. Wires reject watermarked assets.
- Wire-service naming convention is the contract.
{release}_{type}_{subject}_{aspect}_{res}. Do not deviate.
- Stamp EXIF/IPTC before delivery. Credit, copyright, caption, embargo notice.
exiftool pass is non-negotiable.
- Resolution matters. Print = 300dpi, 4k long edge min. Web = 2400px long edge, sRGB. Social = per-platform. Export once per spec; don't downscale at publish time.
- Checksum the delivery. SHA256 manifest shipped alongside the pack so newsrooms can verify integrity.
- Multi-resolution from a single master. Render the hero at max quality once, derive downward. Never upscale a JPEG.
- Brand-gate the AI-generated portions with
brand.md (see enterprise-brand-governor).
Pitfalls
- Embargo leak via public Drive folder — assets land in the default
gen-ai-cli folder, which may be broadly accessible. Always --drive-folder to a restricted path.
- AI-generated executive faces — never acceptable. Use real photography + enhance.
- Watermark on approved wire asset — auto-rejected by AP / Reuters ingest. Separate draft vs. final pipelines.
- Missing EXIF rights — Getty will reject; Reuters will strip your credit. Always stamp.
- Wrong color profile — print pack needs CMYK or at least embedded sRGB. Validate with
exiftool -ColorSpace.
- One manifest per pack, not per release — trying to run all 44 deliverables in one batch mixes resolution specs and you get wrong sizes somewhere. Pack per manifest.
Verification
Run gen-ai whoami to confirm authentication, then re-run the failed command with --debug.
Commands
# Generate the hero
gen-ai generate --model flux-2-pro --prompt "$HERO_PROMPT" \
--aspect-ratio 16:9 --resolution 4k \
--save-to-drive --drive-folder "Press-2026-04-LAUNCH"
# Enhance exec headshots to print spec
gen-ai batch run exec-headshots.json \
--concurrency 3 --output ./runs/press-2026-04-execs
# Export the multi-resolution packs
gen-ai batch run press-packs.json \
--concurrency 5 --output ./runs/press-2026-04-packs
# Post-process: stamp rights metadata (exiftool)
exiftool -overwrite_original \
-Credit="Company Inc." \
-Copyright="(c) 2026 Company Inc. All rights reserved." \
-Caption-Abstract="$CAPTION" \
-By-line="Company Inc. Press Office" \
./runs/press-2026-04-packs/*.jpg
Cost & time
Assumes one release: 1 hero + 4 exec headshots + 6 product shots × 4 packs each (wire / print / web / social).
| Component |
Credits |
Wall time |
| 1 hero (flux-2-pro, 4k) |
~10 |
~2 min |
| 4 exec enhances (topaz, 4x) |
~40 |
~5 min |
| 6 product edits (flux-kontext-pro) |
~30 |
~8 min |
| Multi-res derivatives + EXIF + Drive |
0 |
~8 min |
| Total per release |
~80 |
~25 min |
Crisis-response same-asset-set in <60 min is achievable with this pipeline; physical shoots cannot.
See also
1---2name: enterprise-press-batch3description: Press photos into wire, web, print, social packs.4license: MIT5---67# Enterprise Press Batch89Produce full press-release asset bundles — hero, executive headshots, product shots, event-ready horizontal and vertical crops — with embargo controls, wire-service naming conventions, EXIF rights metadata, and multi-resolution exports. Built for comms / PR teams shipping to Reuters, AP, Getty, and corporate newsrooms under embargo.1011---1213## When to Use1415- Product launch, earnings announcement, exec change, crisis response — assets needed across wire + web + print + social in parallel16- Embargoed announcement requiring strict asset handling until lift17- Multi-publication distribution where each wire has different resolution + EXIF requirements18- Executive headshot refresh across a leadership team (consistent lighting, backgrounds, crops)19- Event kits: pre-event (concept), during-event (placeholder + real), post-event (recap)2021Do **not** use for: social-only launches (use `gen-ai-workflows` launch-kit), single-asset news posts.2223---2425## Prerequisites2627Before the batch runs:28291. **Release type + embargo** — announcement date/time, embargo lift, distribution list. Embargoed runs must write to a locked Drive folder.302. **Asset scope** — which of: 1 hero, N exec headshots, M product shots, event horizontal, event vertical, social derivatives. Count per type.313. **Distribution targets** — wire service specs (AP: 3000px long edge JPEG, Getty: TIFF, Reuters: sRGB embedded). Determines resolution + format per pack.324. **Rights metadata** — credit line, copyright owner, usage rights, caption, contact. Written to EXIF/IPTC.335. **Approval chain** — legal, comms lead, exec approval for headshots? Who signs off before embargo pack ships?346. **Audit trail** — does the archive need the original brief + manifest + results for seven years (SOX-adjacent)?3536---3738## How to Run3940Six steps. Embargo handling is non-negotiable.41421. **Scope the bundle** — write the deliverable matrix: asset × pack (wire / web / print / social) × resolution. Costs scale by cells, not by source images.432. **Generate / ingest sources** — AI-generated heroes via `gen-ai generate`; real executive photography ingested via `gen-ai upload`. Enhance with `topaz-upscale-image` if source resolution is below print spec.443. **Embargo lock** — create a restricted archive location. Everything until lift lands here. Never ship intermediate drafts.454. **Batch exports** — one manifest per pack (wire / web / print / social), each with the correct resolution, format, and color profile. Watermark drafts; never watermark final approved wire assets.465. **Stamp EXIF / IPTC** — rights, credit, caption, embargo notice injected on every file. Use `exiftool` as a post-batch step.476. **Deliver** — at embargo lift, promote from the locked folder to the public press-kit URL. Archive the manifest + results.json + checksum manifest for the audit trail.4849## Quick Reference5051Each pack is its own manifest so wire / print / web / social can run in parallel with correct specs.5253```json54{55 "defaults": {56 "model": "topaz-upscale-image"57 },58 "metadata": {59 "release": "2026-04-LAUNCH",60 "embargo_lift": "2026-04-22T13:00:00Z",61 "brand_system_version": "brand.md@sha:a4f1c9",62 "approver": "comms-lead@company.com",63 "audit_id": "PRESS-2026-04-LAUNCH",64 "distribution": ["AP", "Reuters", "Getty", "corporate-newsroom"],65 "rights": {66 "credit": "Company Inc.",67 "copyright": "(c) 2026 Company Inc.",68 "usage": "Editorial use in connection with 2026 launch coverage only."69 }70 },71 "jobs": [72 {73 "id": "hero-16x9-wire",74 "imageUrls": ["./sources/hero-master.png"],75 "prompt": "4x upscale, sharpen, retain color profile",76 "aspectRatio": "16:9"77 },78 {79 "id": "exec-ceo-headshot-3x4-wire",80 "imageUrls": ["./sources/ceo-raw.jpg"],81 "prompt": "Editorial portrait enhance, studio light preserved"82 }83 ]84}85```8687Filename convention (wire-service friendly): `{release-id}_{asset-type}_{subject}_{aspect}_{resolution}.{ext}` → `2026-04-LAUNCH_hero_product_16x9_4k.jpg`. Survives rebranding; matches Reuters/Getty ingest patterns.8889---9091## Quick Reference9293| Sub-task | Model | Notes |94|----------|-------|-------|95| Hero concept (AI-generated) | `flux-2-pro` / `gemini-3-pro-image` | Commercial-safe, editorial fidelity |96| Exec headshot enhance (real photo) | `topaz-upscale-image` | Preserves identity; no hallucination |97| Background cleanup on real photo | `picsart-change-bg` | Studio backdrop substitution |98| Background removal for transparent pack | `picsart-remove-bg` | Social + overlay-ready PNG |99| Product shot from angle library | `flux-kontext-pro` | Edit-mode, product-accuracy preserve |100| Event B-roll from single still | `kling-v3-pro` (i2v) | For broadcast packs only |101102**Never** use fully-generative models on named executives or real products without explicit legal sign-off. Use enhance/edit-only models. Confirm licensing per account with `gen-ai models info`.103104---105106## Procedure107108- **Embargo-first workflow.** Locked Drive folder from minute one. No assets leave it until lift.109- **Never AI-generate a real executive's face.** Enhance / upscale real photography only. Legal + reputational risk otherwise.110- **Watermark drafts, never watermark approved finals.** Wires reject watermarked assets.111- **Wire-service naming convention** is the contract. `{release}_{type}_{subject}_{aspect}_{res}`. Do not deviate.112- **Stamp EXIF/IPTC before delivery.** Credit, copyright, caption, embargo notice. `exiftool` pass is non-negotiable.113- **Resolution matters.** Print = 300dpi, 4k long edge min. Web = 2400px long edge, sRGB. Social = per-platform. Export once per spec; don't downscale at publish time.114- **Checksum the delivery.** SHA256 manifest shipped alongside the pack so newsrooms can verify integrity.115- **Multi-resolution from a single master.** Render the hero at max quality once, derive downward. Never upscale a JPEG.116- **Brand-gate the AI-generated portions** with `brand.md` (see `enterprise-brand-governor`).117118## Pitfalls119120- **Embargo leak via public Drive folder** — assets land in the default `gen-ai-cli` folder, which may be broadly accessible. Always `--drive-folder` to a restricted path.121- **AI-generated executive faces** — never acceptable. Use real photography + enhance.122- **Watermark on approved wire asset** — auto-rejected by AP / Reuters ingest. Separate draft vs. final pipelines.123- **Missing EXIF rights** — Getty will reject; Reuters will strip your credit. Always stamp.124- **Wrong color profile** — print pack needs CMYK or at least embedded sRGB. Validate with `exiftool -ColorSpace`.125- **One manifest per pack, not per release** — trying to run all 44 deliverables in one batch mixes resolution specs and you get wrong sizes somewhere. Pack per manifest.126127---128129## Verification130131Run `gen-ai whoami` to confirm authentication, then re-run the failed command with `--debug`.132133### Commands134135```bash136# Generate the hero137gen-ai generate --model flux-2-pro --prompt "$HERO_PROMPT" \138 --aspect-ratio 16:9 --resolution 4k \139 --save-to-drive --drive-folder "Press-2026-04-LAUNCH"140141# Enhance exec headshots to print spec142gen-ai batch run exec-headshots.json \143 --concurrency 3 --output ./runs/press-2026-04-execs144145# Export the multi-resolution packs146gen-ai batch run press-packs.json \147 --concurrency 5 --output ./runs/press-2026-04-packs148149# Post-process: stamp rights metadata (exiftool)150exiftool -overwrite_original \151 -Credit="Company Inc." \152 -Copyright="(c) 2026 Company Inc. All rights reserved." \153 -Caption-Abstract="$CAPTION" \154 -By-line="Company Inc. Press Office" \155 ./runs/press-2026-04-packs/*.jpg156```157158---159160## Cost & time161162Assumes one release: 1 hero + 4 exec headshots + 6 product shots × 4 packs each (wire / print / web / social).163164| Component | Credits | Wall time |165|-----------|---------|-----------|166| 1 hero (flux-2-pro, 4k) | ~10 | ~2 min |167| 4 exec enhances (topaz, 4x) | ~40 | ~5 min |168| 6 product edits (flux-kontext-pro) | ~30 | ~8 min |169| Multi-res derivatives + EXIF + Drive | 0 | ~8 min |170| **Total per release** | **~80** | **~25 min** |171172Crisis-response same-asset-set in <60 min is achievable with this pipeline; physical shoots cannot.173174---175176## See also177178- [enterprise-brand-governor](../enterprise-brand-governor/SKILL.md) — brand.md gating for AI-generated portions179- [enterprise-pinned-registry](../enterprise-pinned-registry/SKILL.md) — lock models so pre-embargo renders match final180- [product-photo-studio](../product-photo-studio/SKILL.md) — adjacent batch pattern (reshoot mode)181- [multi-channel-bundle](../multi-channel-bundle/SKILL.md) — launch and campaign bundle patterns182- [gen-ai-use](../gen-ai-use/SKILL.md) — CLI reference