$npx -y skills add coreyhaines31/marketingskills --skill marketing-loopsWhen the user wants to set up a recurring, self-running marketing workflow — a repeatable loop an AI agent runs on a cadence (weekly, daily, on a trigger) rather than a one-off task. Also use when the user mentions 'marketing loop,' 'recurring marketing workflow,' 'automate my ma
| 1 | # Marketing Loops |
| 2 | |
| 3 | You help set up **marketing loops** — repeatable marketing workflows an AI agent runs on a cadence, each with a defined trigger, a bounded set of steps, a self-check, and an explicit stopping condition. A loop turns a marketing task you'd otherwise do manually (and forget) into an always-on system: the weekly SEO opportunity scan, the ad-fatigue refresh, the churn-signal watch. |
| 4 | |
| 5 | This is the operational cousin of `marketing-ideas`. Ideas tell you *what to try once*. Loops tell you *what to keep doing on a schedule* — and wire the other marketing skills together to do it. |
| 6 | |
| 7 | ## How to Use This Skill |
| 8 | |
| 9 | **Check for product marketing context first:** if `.agents/product-marketing.md` exists (or `.claude/product-marketing.md`, or the legacy `product-marketing-context.md`), read it before asking questions. Use that context and only ask for what's missing. |
| 10 | |
| 11 | Then: |
| 12 | 1. **Clarify the job.** What outcome should this loop protect or grow? (rankings, ad efficiency, activation, retention, revenue, referrals) |
| 13 | 2. **Pick a loop** from the catalog in `references/loop-catalog.md` — or adapt the closest one. |
| 14 | 3. **Tune the cadence** to how fast the underlying signal actually changes (see the cadence rule below). |
| 15 | 4. **Confirm the human checkpoint.** Decide what the loop does autonomously vs. what it stages for human approval before publishing or spending — see `references/loop-guardrails.md`. |
| 16 | 5. **Schedule it** (see "Scheduling a loop" below). |
| 17 | |
| 18 | Building more than one loop, or a whole marketing operating system? See `references/loop-orchestration.md` for how loops compose and the order to adopt them (start with tracking + a weekly review; don't build 43 at once). |
| 19 | |
| 20 | ## Anatomy of a Marketing Loop |
| 21 | |
| 22 | Every loop in the catalog has these nine parts. When you author or adapt one, fill all of them — a loop missing a stop condition, a self-check, or its state handling is a liability, not an asset. |
| 23 | |
| 24 | | Part | What it defines | |
| 25 | |------|-----------------| |
| 26 | | **Check cadence** | How often the loop *looks* (weekly / daily / on-trigger). Match it to signal speed. | |
| 27 | | **Acts when** | The action condition — what must be true to actually *do* something, vs. just check and skip. Most runs of a good loop are "checked, nothing to do." | |
| 28 | | **Purpose** | The one outcome this loop exists to move. | |
| 29 | | **Skills used** | Which marketing skills the loop orchestrates each iteration. | |
| 30 | | **Loop body** | The ordered steps run each iteration. | |
| 31 | | **Self-check** | The verification done *before* acting — so the loop doesn't act on noise, seasonality, or a tracking bug. | |
| 32 | | **State / idempotency** | What the loop remembers between runs: last-run marker, dedupe key, cooldown window, "already handled" set. Without this, loops double-act, re-nag the same people, or re-alert the same thing. Non-negotiable for anything scheduled — see `references/loop-state.md` for where state lives and the idempotency patterns. | |
| 33 | | **Stop / bail-out** | When the loop skips, halts, escalates to a human, or disables itself — plus what it does on error. Every loop needs one, including heartbeat loops (their stop is "manual disable + error-halt," never "n/a"). | |
| 34 | | **Output** | Where results go: a file, a PR, a staged draft, a notification, a report. | |
| 35 | |
| 36 | The **Check cadence / Acts when** split matters: a churn-signal loop might *check* daily but only *act* when an account crosses a risk threshold it hasn't been contacted about inside the cooldown window. Conflating the two produces loops that either miss the window or spam. |
| 37 | |
| 38 | ## The cadence rule |
| 39 | |
| 40 | Match cadence to how fast the signal actually changes — not to how often you'd *like* an update. |
| 41 | |
| 42 | | Signal | Realistic cadence | Why | |
| 43 | |--------|-------------------|-----| |
| 44 | | Rankings, backlinks, domain authority | Weekly | Move slowly; daily checks are noise | |
| 45 | | Ad creative fatigue, CPA drift | Every 2–3 days | Meta/Google feedback loops are days, not hours | |
| 46 | | Activation / onboarding funnel | Weekly | Needs enough signups to be significant | |
| 47 | | Churn signals | Daily or on-trigger | Early intervention window is short | |
| 48 | | Content / copy decay | Monthly | Traffic erosion is gradual | |
| 49 | | Competitor changes | Weekly | Pricing/positioning shifts are infrequent bu |