design-campaignlisted
Install: claude install-skill XuHo-IT/Content-Agent-Kit
# Campaign visuals via Canva
The kit can already put an image on a post and inside a video frame. What it could not do
is *make* one — stock search finds photographs, screenshots capture a page, and neither
produces a branded campaign visual.
This does that in Canva and hands back **a file on disk**, because everything downstream —
`make-post.mjs`, `video/render.mjs` — takes a path or a URL, not a Canva design link.
## Before you start
The `canva` server in `.mcp.json` must be connected (`/mcp` in Claude Code). If it is not,
say so and stop — do not silently fall back to a stock photo and call it a campaign visual.
**Know the plan limits before designing around them:**
| Capability | Plan |
|---|---|
| Generate, edit, search, upload, comment, export | any, including free |
| Resize a design to another aspect | Pro and above |
| Autofill a template from data | Enterprise |
Autofill is an accelerator, never a required step. If it is unavailable, generate and edit
directly — the output is the same, it just takes more turns. **Design the workflow for the
free plan** and use the rest when it is there.
## 1. Decide the sizes before opening Canva
Resizing is a paid feature, so producing the wrong canvas costs a redo. Ask what the asset
is for, then create at the final size:
| Use | Canvas | Where it goes |
|---|---|---|
| Post image | 1080 × 1080 | `make-post.mjs --image` |
| Story / Reel cover | 1080 × 1920 | `make-post.mjs --thumbnail` |
| Video frame asset | 1080 × 1920