smartlead-inbox-manager について
Smartlead APIを使ってメールボックスのウォームアップ、署名、タグ、状態確認を管理するスキルです。バッチ操作スクリプトと、稼働用・予備用メールボックスを切り替える手順を含みます。
主な機能
- 01ウォームアップの有効化・停止
- 02ウォームアップ量と増加幅の設定
- 03署名テンプレートの一括適用
- 04メールボックスタグの追加・更新
- 05状態レポートの出力
活用シーン
- 01新規作成したメールボックスの準備
- 02予備メールボックスをキャンペーンに切り替え
- 03評判と送信状況の確認
- 04承認済みドメイン退役計画の実行
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ growthenginenowoslawski/ coldoutboundskills --skill smartlead-inbox-managerインストール後、Claude Code で/smartlead-inbox-managerを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
scripts/_lib.tslist-health.tsset-signatures.tsset-warmup.tstag-inboxes.ts詳細
Smartlead 受信トレイマネージャー
Zapmail から新しい受信トレイが何百件も提供されます。Smartlead では、それらを設定する必要があります。適切なランプアップでウォームアップを有効にし、メールがそっけなく見えないように署名を設定し、稼働中か予備用かを把握できるようタグを付け、健全性を監視して、使えなくなった受信トレイを入れ替えます。
このスキルは、Smartlead API を介してこれらすべてを実行します。
主な操作
| 操作 | 内容 | スクリプト |
|---|---|---|
| ウォームアップを有効化 | 適切なランプアップ(1日目は1通、以降は1日あたり5通ずつ増やし、最大40通)でウォームアップを有効にします | set-warmup.ts --mode=enable |
| ウォームアップを無効化 | ウォームアップを無効にします(予備用の受信トレイで使用) | set-warmup.ts --mode=disable |
| 署名を設定 | 署名テンプレートを受信トレイに一括適用します | set-signatures.ts |
| 稼働中としてタグ付け | 「active」タグを追加します | tag-inboxes.ts --tag=active |
| 予備用としてタグ付け | 「insurance」タグを追加します | tag-inboxes.ts --tag=insurance |
| 健全性ダッシュボード | ウォームアップ状況、レピュテーション、1日の送信数を含むすべての受信トレイを一覧表示します | list-health.ts |
稼働中と予備用(タグ付けのルール)
すべての受信トレイで常に送信する必要はありません。よくある運用パターンは次のとおりです。
- 稼働中の受信トレイ — 現在、実際のキャンペーンで送信しています。実際の送信を優先するため、ウォームアップはオフ(または最小限)にします。
- 予備用の受信トレイ — ウォームアップ済みですがアイドル状態で、予備として保持します。レピュテーションを維持するため、ウォームアップはオンにします。稼働中の受信トレイが使えなくなったら入れ替えます。
大規模に管理する際は、タグを使って受信トレイを追跡します。Smartlead の UI または API でタグ別に絞り込めます。
入力
各スクリプトは次を読み込みます。
SMARTLEAD_API_KEY(環境変数)- 受信トレイのセレクター:
--ids=1,2,3または--domain=example.comまたは--tag=insuranceまたは--all - 操作固有のフラグ(各スクリプトを参照)
ウォームアップのランプアップ設定
新しい受信トレイのデフォルトのウォームアップ設定(ウォームアップ期間の1〜4週目):
{
"warmup_enabled": "true",
"total_warmup_per_day": 40,
"daily_rampup": 5,
"reply_rate_percentage": "20"
}
total_warmup_per_day:ウォームアップネットワーク内で受信トレイが送信する1日の最大メール数(ピーク時)daily_rampup:1日あたりの増加数(1日目は1通、2日目は6通、3日目は11通など、上限に達するまで増加)reply_rate_percentage:ウォームアップ相手が返信する頻度(20%が現実的です)
予備用の受信トレイの場合(長期的なレピュテーションの維持):
{
"warmup_enabled": "true",
"total_warmup_per_day": 15,
"daily_rampup": 0,
"reply_rate_percentage": "20"
}
送信量を抑え、ランプアップは行いません。受信トレイを温かい状態に保つだけです。
稼働中の受信トレイの場合(現在、実際のキャンペーンで使用中):
{
"warmup_enabled": "false"
}
ウォームアップをオフにして、1日の送信枠を実際の見込み客への送信に充てます。
署名テンプレート
デフォルトのテンプレートは、set-signatures.ts で一括適用します。
{from_name}
{title}
{company}
{address}
表示例:
Jane Smith
Founder
Acme
123 Main St, Suite 400, Austin, TX 78701
各値の取得元:
{from_name}— 設定されている場合は受信トレイ独自のfrom_nameフィールド(受信トレイごとに異なるペルソナを設定できます)、それ以外の場合は.envのSENDER_FIRST_NAME + SENDER_LAST_NAME{title}—SENDER_TITLE環境変数{company}—SENDER_COMPANY_NAME環境変数{address}—SENDER_PHYSICAL_ADDRESS環境変数(推奨 — フッターに実際の郵送先住所を記載すると、CAN-SPAM などの規則を遵守しやすくなります)
デフォルトテンプレートに必要な .env のエントリ:
SENDER_FIRST_NAME=Jane
SENDER_LAST_NAME=Smith
SENDER_TITLE=Founder
SENDER_COMPANY_NAME=Acme
SENDER_PHYSICAL_ADDRESS=123 Main St, Suite 400, Austin, TX 78701
カスタムテンプレートでの上書き:
# Pass inline (use \n for newlines)
npx tsx scripts/set-signatures.ts --all --template="Cheers,\n{from_name}\n{title}\n{company}\n{address}"
# Or from a file
npx tsx scripts/set-signatures.ts --all --template-file=./my-signature.txt
使用できるプレースホルダー:{from_name}、{from_email}、{domain}、{title}、{company}、{address}。
キャンペーンでのメール本文の順序:
Smartlead のシーケンスでは、本文の末尾に必ず %signature% を付けます。Smartlead はそこに受信トレイの署名を挿入します。順序:
<body content>
<PS unsubscribe line>
%signature%
この設定では、%signature%(名前、役職、会社名、住所を含む)が末尾に配置されるため、すべての受信トレイからフッターに実際の郵送先住所を記載したメールが送信されます。
健全性ダッシュボードの出力
list-health.ts は CSV と概要を出力します。
email warmup reputation sent_today health_status
[email protected] on good 18 healthy
[email protected] on fair 5 warming
[email protected] off n/a 28 active
[email protected] on bad 0 blocked
概要:
Total inboxes: 80
Warmup on: 50
Active (warmup off): 28
Blocked/failed: 2
Reputation:
Good: 65
Fair: 10
Bad: 3
Unknown: 2
Action items:
- 2 inboxes blocked — run /email-deliverability-audit
- 3 inboxes with "bad" reputation — consider pausing
よくあるワークフロー
Zapmail によるプロビジョニング後の1日目
# 1. Enable warmup on all newly created inboxes
npx tsx scripts/set-warmup.ts --mode=enable --tag=new --warmup-per-day=40 --ramp=5
# 2. Set signatures
npx tsx scripts/set-signatures.ts --tag=new --template="Best,\n{from_name}"
# 3. Tag them as insurance (they aren't active yet — warmup for 2 weeks first)
npx tsx scripts/tag-inboxes.ts --tag=new --add-tag=insurance
npx tsx scripts/tag-inboxes.ts --tag=new --remove-tag=new
予備用の受信トレイを実際のキャンペーンで稼働させる
# 1. Identify warm insurance inboxes with good reputation
npx tsx scripts/list-health.ts --tag=insurance --filter=reputation:good --out=activate-candidates.csv
# 2. Flip them to active
npx tsx scripts/tag-inboxes.ts --ids-from-csv=activate-candidates.csv --add-tag=active --remove-tag=insurance
# 3. Disable warmup (they're sending for real now)
npx tsx scripts/set-warmup.ts --mode=disable --tag=active
毎週の健全性チェック
npx tsx scripts/list-health.ts --all --out=health-$(date +%Y-%m-%d).csv
対応項目を確認してください。ブロックされた受信トレイを入れ替えます。
受信トレイをいつ廃止するか
このスキルは、受信トレイを廃止する手順を説明します。判断は
/inbox-lifecycle-manager が行います。年齢のガード、送信数の下限、バウンスの分岐、
そしてキャパシティを減らす前に差し替え用の十分にウォームアップ済みの予備を確保しているかの確認を含む、全ステップを適用します。
廃止の基準は1%ルールです。ドメインの使用開始から30日以上経過しており、200件以上送信して返信率が1%未満(または150件以上送信して返信がゼロ)の場合です。保護の役割を果たすのは送信数の下限であり、より緩い基準ではありません。
このスキルを使う際に、誤った対象を廃止しやすいため、重要なルールを3つ示します。
- ⛔ 廃止するのはドメイン全体であり、個々の受信トレイではありません。 メールボックスプロバイダーはドメイン単位でレピュテーションを評価します。使用不可と判断したドメインに「良好な」受信トレイを2つ残すと、その受信トレイにも不良なもののレピュテーションが引き継がれ、廃止対象と判断したドメインからの送信を続けることになります。
- ⛔ 返信率にかかわらず、使用開始から30日未満のドメインは決して廃止しないでください。 まだウォームアップが完了していません。
- ⛔ 送信数が200件未満のドメインは決して廃止しないでください。 この下限に達していない場合、返信率0%でも、受信トレイが使用不可なのか、たまたま返信のない週だったのかを判別できません。
/inbox-lifecycle-manager が承認済みの計画を作成したら、ここで実行します。
# actions.csv comes from /inbox-lifecycle-manager — reviewed and explicitly approved
npx tsx scripts/tag-inboxes.ts --domain=burned-domain.co --add-tag=retired --remove-tag=active
npx tsx scripts/set-warmup.ts --mode=disable --domain=burned-domain.co
開始前に現在のタグをスナップショットしてください。ここでは以前の状態が記録されないため、スナップショットがなければ確実に元に戻せません。作業後にタグを読み戻してください。200 は成功の証明にはなりません。
よくある注意点
- ウォームアップ設定は受信トレイごとです。 グローバル設定はありません。スクリプトはループ処理で各受信トレイに個別に適用します。
- レート制限。 Smartlead は約33 req/secを許可しています。スクリプトの同時実行数はデフォルトで5です。テストせずにこれを増やさないでください。
- ウォームアップがブロックされている。
is_warmup_blocked: trueの場合、その受信トレイにはフラグが付いています(通常はウォームアップ中のスパムのような動作が原因です)。手動での調査が必要です。 - 一部のSmartleadバージョンにはタグを削除するエンドポイントがありません。 タグを追加することしかできません。タグを「削除」するには、そのタグを除いた新しいタグリストで全体を置き換えます。スクリプトがこれを自動で処理します。
- 署名の書式。 HTML署名はGmail/Outlook/Apple Mailで表示が崩れることがあります。プレーンテキストにするか、最小限の
<br>タグを使ってください。設定後、Gmail/Outlookでテストしてください。 - ウォームアップのランプアップは累積します。
daily_rampup: 5に設定すると、受信トレイは1日目に1件、2日目に6件、3日目に11件送信し、その後total_warmup_per_dayまで増加します。リセットするには(休止後など)、いったん無効にしてから再度有効にします。
次に行うこと
新しい受信トレイを作成したばかりの場合: ウォームアップを有効にし(set-warmup.ts --mode=enable)、署名を適用して(set-signatures.ts)、insurance のタグを付けた後、ウォームアップのために2週間待ちます。2週間後、insurance → active に変更します。
受信トレイがすでにウォームアップ済みの場合: active タグが付いた受信トレイを使って、リストの作成(/prospeo-full-export、/disco-like など)に進みます。
または、待機します: ヘルスダッシュボードにレピュテーションの低い受信トレイが表示された場合は、新しいキャンペーンを開始する前に /inbox-lifecycle-manager
を実行し、どの受信トレイを実際に廃止すべきか(およびそのキャパシティを何で補うか)を判断してください。
関連スキル
/zapmail-domain-setup-public— このスキルで設定する受信トレイを作成します/email-deliverability-audit— ヘルスダッシュボードに問題が表示された場合に使用します/inbox-lifecycle-manager— 廃止、昇格、購入する受信トレイを判断します。このスキルはその判断を実行します/smartlead-api— 基盤となるAPIのリファレンス
スクリプト
scripts/set-warmup.ts— ウォームアップの有効化/無効化、ランプアップの設定scripts/set-signatures.ts— 署名の一括設定scripts/tag-inboxes.ts— タグの追加/削除scripts/list-health.ts— ヘルスダッシュボードのCSV+概要scripts/_lib.ts— 共通機能:APIクライアント、受信トレイセレクターのパーサー、同時実行制御