ad-policy-check
Checks paid ads against the ad platform's rules (Meta, TikTok, Google, LinkedIn and others) and the brand's category rules: the…
Campaign planner: turns a product, offer, goal, budget and date into a plan the marketer can approve and a designer can start from today, with every channel kept or dropped for a reason. Zero paid is a valid answer; it never spends. Use when: I have this budget and a launch date
$ npx -y skills add gooseworks-ai/goose-skills --skill plan-campaign --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/plan-campaignContext preview
The summary Claude sees to decide when to auto-load this skill.
Campaign planner: turns a product, offer, goal, budget and date into a plan the marketer can approve and a designer can start from today, with every channel kept or dropped for a reason. Zero paid is a valid answer; it never spends. Use when: I have this budget and a launch date
name: plan-campaign description: >- Campaign planner: turns a product, offer, goal, budget and date into a plan the marketer can approve and a designer can start from today, with every channel kept or dropped for a reason. Zero paid is a valid answer; it never spends. Use when: I have this budget and a launch date — what do I run, where?; plan my launch, drop or Black Friday push; plan a campaign; should we even run ads, and where?; how should I split $5k; plan next month; our CAC blew up — replan. Not for pausing ads on a sold-out product — use run-paid-campaigns; not for an email-only send plan — use email-lifecycle; not for reading this week's numbers — use analyze-performance. version: 0.1.1
A **campaign plan** the marketer reads in 30 seconds and a designer can start from today, written and delivered through the `write-report` skill (`../write-report/SKILL.md`): a clickable file, a copy saved to the brand, and the same text on the GooseWorks campaign record (local mode: a copy in this folder, no campaign record). It opens with **In short** (what the plan rests on; the goal and whether the money gets there; which channels the plan covers and why; where we run and where we don't; the split; the first test; then "do this first, because of …" — what's needed this week), then Decisions for you, the story, What to do (at most six moves) and What we're not doing — with the long working tables in an appendix (`references/brief-template.md`): who it's for and what we say, the money math and forecast, channel decisions, budget split, paid structure, tests, angles per channel, offer, backwards calendar, asset list, how we'll measure it, hand-offs, replan triggers, what we couldn't check.
1. **Setup first:** do the `marketing-guide` skill (`../marketing-guide/SKILL.md`) §1–2 (connect, brand, brain read) before anything else; the job line is "plan your campaign". This playbook offers **local mode** (marketing-guide §5): plan from the live site, the marketer's answers and their connectors (read-only), and save the plan in the local `plans/<slug>/` in place of the campaign record; it skips every `gooseworks:` call from the look-first pass (`references/intake.md` § 1, local mode) through write-back (`references/brief-template.md` § Write-back, local mode). With GooseWorks, load the campaigns, meta, social and files groups in one `gooseworks:tools_load`. 2. **Look first — ask nothing yet.** Do `references/intake.md` §1 in full before the first message: the brain chapters a plan needs, what's connected, what's already planned or measured, the research, the last plan and how its bets did (run-memory's Start steps, job `campaign plan`, subject the campaign slug — `references/run-memory.md`), the claims contract and the live site (required every run). 3. **Then one short message, like a person would ask** — `references/intake.md` §2 is the single source for its shape and wording: what you found in two or three lines, then at most four plain questions, product and offer first. Only the product, audience, goal, budget and date block planning; everything else becomes a labelled assumption (`references/intake.md` §3). 4. **A goal that isn't a number** ("make it big", "as many installs as possible"): offer 2–3 concrete options built from the brand's own numbers and the budget (metric + target + date), steering vanity metrics to the one the business needs. The marketer picks; you never set it. 5. **Research missing?** If the customer-words bank or the angle bank is missing, say so in one line and offer to do that research first; if the marketer wants to go ahead, angles are labelled "starting point". Public benchmarks for the money math may be looked up with web search and are labelled as such.
1. **Frame the job.** If a matching plan already exists (same product or occasion, overlapping dates), say so in one line and treat this run as a **refresh**: re-check every number in it against today's look-first facts (the live prices first) and how its bets did (`references/run-memory.md`), re-run the money math, the channel check, the frequency check and the tests, and write a fresh plan in the current shape with a short "What changed since the last plan" line in In short. Never paste a stored plan as the report. **"Start from scratch"** (or "ignore earlier work") makes this a first run: don't read or carry earlier plans, notes or run records, and say so in one line ("Starting fresh: I won't use earlier plans or notes."); the brand's rules and approved claims still apply. A new number that contradicts what the marketer said earlier in this conversation is flagged before planning on it ("100 sign-ups a day" is ~3,000 a month, against "over 1,000 free users" in total). Mode — *launch*, *goal push to a date*, *always-on month*, *monthly replan*, *trigger replan* (replans: `references/replan.md`; a "CAC blew up" replan with no performance read from the last ~7 days recommends reading the numbers first). Launch tier T1/T2/T3 with the reason (`references/launch-and-calendar.md`; "n/a" outside launches). Note promo dates and other live campaigns, and the **buyer's** busy season in the window, not only the seller's dates (`references/launch-and-calendar.md` § The buyer's calendar). Read `references/company-types.md` for the brand's type. Name the business result the plan is judged on (signups or paid accounts for SaaS, orders for DTC, bookings for local) — every leg says how it moves that number. 2. **Money math and the top-down check** — atom the `plan-campaign-goal-chain` skill (`../plan-campaign-goal-chain/SKILL.md`) part 1, `references/unit-economics.md`. What a customer may cost, with a source on every number; subtract the baseline; budget ÷ incremental goal against history or labelled base rates. If it already needs a miracle, say so in one line and continue — the full case comes at step 5. 3. **The live picture.** Competitors'
Put your AI agent on the growth team. Research customers and competitors, analyze what is working, create the next campaign, and learn from the result.
Checks paid ads against the ad platform's rules (Meta, TikTok, Google, LinkedIn and others) and the brand's category rules: the…
Step of the analyze-performance playbook: calls ended tests, scores last week's calls, writes this week's kill/scale/hold calls…
Step of the analyze-performance playbook: flags tracking breaks with fixes and explains each big metric move with evidence,…
Step of the analyze-performance playbook: gathers the week's numbers from tools, exports and pastes, cleans them, and writes the…
Step of the analyze-performance playbook: ranks creative by angle, hook and format with spend gates, writes short per-channel…
Step of the analyze-performance playbook: joins cleaned store or CRM numbers with ad spend to build the business-truth table,…