auto-research-public
Autonomous cold email campaign launcher. Takes one target company domain, scrapes their…
The weekly keep/cancel/promote/buy loop for a cold email sending fleet. Decides which domains are burned and should be cancelled, which warmed reserves to promote into campaigns, which capacity to demote, and how many new domains to buy — using measured reply, bounce, age and
$ npx -y skills add growthenginenowoslawski/coldoutboundskills --skill inbox-lifecycle-manager --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/inbox-lifecycle-managerContext preview
The summary Claude sees to decide when to auto-load this skill.
The weekly keep/cancel/promote/buy loop for a cold email sending fleet. Decides which domains are burned and should be cancelled, which warmed reserves to promote into campaigns, which capacity to demote, and how many new domains to buy — using measured reply, bounce, age and
name: inbox-lifecycle-manager description: The weekly keep/cancel/promote/buy loop for a cold email sending fleet. Decides which domains are burned and should be cancelled, which warmed reserves to promote into campaigns, which capacity to demote, and how many new domains to buy — using measured reply, bounce, age and send-volume floors instead of gut feel. Use when asked "which inboxes should I cancel", "what should I replace this week", "my fleet costs too much", "I'm under my send goal", or as the Friday hygiene routine.
**Diagnosis tells you a domain is sick. This skill decides whether it dies.**
Every cold email fleet leaks money in two directions at once: you keep paying for burned domains that will never reply again, and you run under your send goal because nobody promoted the warmed reserves sitting idle. This is the weekly loop that fixes both, with an approval gate in the middle so nothing gets cancelled on a hunch.
**Read-only by default.** The plan step writes nothing, anywhere. Only the apply step, run after an explicit human "yes", changes a tag, a campaign, or a provider subscription.
`SENDER_BURNED` verdict and you need to act on it
**Not this skill:** *why* a domain is bad (`/email-deliverability-audit`), fixing DNS (`/zapmail-domain-setup-public`), an acute incident (`/deliverability-incident-response`), warmup settings and signatures (`/smartlead-inbox-manager`).
---
Four statuses, and they apply to a **whole domain**, never to one inbox inside it.
| Status | Meaning | Warmup | In campaigns | |---|---|---|---| | **Warmup** | Newly provisioned, under 14 days of warmup | ON | no | | **Insurance** | Warmed, healthy, idle — the reserve pool | ON | no | | **Active** | Sending in live campaigns | OFF or minimal | yes | | **Cancel** | Condemned; stop sending, cancel the subscription | OFF | no |
⛔ **Never split a domain's inboxes across statuses.** Mailbox providers judge reputation at the domain level. Half a domain "Active" and half "Cancel" means you are still sending from a domain you have declared burned, and the healthy half inherits the reputation of the dead half. Every decision below is computed per domain and applied to every inbox on it.
⛔ **Warmup domains are untouchable.** Not counted as capacity, not promotable, not demotable, not cancellable. If your tool has no `Warmup` tag, the domain's age is your only protection — see the age guard below, and keep a list of domains provisioned in the last 30 days.
In Smartlead these statuses are tags. See `/smartlead-inbox-manager` for the tagging mechanics.
---
A domain is only judged once there is enough data to judge it. Below the floor the answer is **"we don't know yet"**, and that is a legitimate output, not a failure.
| Judgment | Floor | Why | |---|---|---| | Reply rate | **200 sends** in the window | At a 1% line, 200 sends is ~2 expected replies. Below 200, a 0% reply rate cannot distinguish a burned domain from an unlucky week. | | Bounce rate | **50 sends** | Below that, one dead address reads as 2% and two read as 4% — straight through a 3% threshold. | | Bounce *composition* | **30 classified bounces for that domain** | A domain with no sampled bounces has a 0% sender-originated share by construction, which looks identical to a rotten list. | | Domain age | **30 days** | A domain that has not finished ramping has not earned a verdict. | | Placement test | 100-300 senders per test | Smaller samples swing double digits run to run. |
⛔ **Unresolvable age counts as young.** If you cannot date a domain, it is `TOO_YOUNG` and it is not cancelled. Fail closed: you can always cancel it next week.
---
Run top to bottom per domain, over a **7-day window** (fall back to 14 days if 7 days is under the 200-send floor). The first gate that matches wins.
G0. Status is Warmup, or any inbox on the domain is in Warmup?
-> EXCLUDED. Not judged. Stop.
G1. Domain age < 30 days, or age unknown?
-> TOO_YOUNG. Never a cancel candidate at any reply rate. Stop.
G2. sent < 200 in the window?
-> INSUFFICIENT_DATA. Do not judge the reply rate. Re-check next week. Stop.
G3. sent >= 50 AND bounce_rate > 3%?
-> BOUNCE_FORK. This is not a cancel decision yet — a high bounce rate is usually the
LIST, not the domain. Hand to /email-deliverability-audit to classify the bounce
codes before you condemn anything. A domain is only cancelled out of this fork when
the bounces are majority sender-originated AND the DNS auth is already clean.
(>20% of classified bounces in the blocklist codes 5.7.606-5.7.614, or DSN text
naming a blocklist, means burned regardless of the bounce rate.)
G4. reply_rate >= 1.0%?
-> KEEP. Healthy enough to stay Active. Stop.
G5. reply_rate < 1.0% (or 0 replies on >= 150 sends), age >= 30d, bounce not the story?
-> CANCEL CANDIDATE. The domain has had a fair sample and did not reply. It is burned.
Then one of three:
still at/above goal without it -> CANCEL, no swap needed
an Insurance domain can replace it -> CANCEL + PROMOTE the oldest eligible reserve
neither -> KEEP_BELOW_THRESHOLD: buy first, cancel next week.
Cancelling into a shortfall trades a bad reply rate for no sends at all.| Threshold | Value | Note | |---
Open-source Claude Code skills for cold email infrastructure, lead sourcing, copywriting, and operations. Built by GrowthEngineX from patterns across 1,000+ real B2B campaigns. 31 skills that work together.
Repo: growthenginenowoslawski/coldoutboundskills
Autonomous cold email campaign launcher. Takes one target company domain, scrapes their…
Use the Blitz API to find decision-makers at specific companies when you already have a list…
Creates cold email copy through a stepwise confirmation process. Use when writing email…
Generates 15-25+ cold outbound campaign ideas with targeting strategies, AI personalization…
Single "start here" orchestrator for new cold email operators. Asks infrastructure-status…
Complete beginner-friendly cold email toolkit. Walks from zero to launched campaign — domain…