mcpField
L
launch-campaign

launch-campaign

github.com/indranilbanerjeeマーケティング・グロース91380 回インストール今日更新
リポジトリ

launch-campaign について

承認済みのキャンペーン計画を、広告、オーガニック投稿、メール、コンテンツ、CRM、PR の公開手順へ進める Digital Marketing Pro のスキルです。事前条件を確認し、操作のプレビューと承認を経て依存順に実行します。チェックポイントを記録するため、中断後に再開できます。

主な機能

  1. 01公開前提条件の検証
  2. 02実行前の操作プレビュー
  3. 03依存順でのチャネル有効化
  4. 04CRM キャンペーン記録の作成
  5. 05チェックポイント記録と中断後の再開
  6. 06内部用とユーザー向けの公開記録

活用シーン

  1. 01承認済みのマルチチャネルキャンペーンの公開
  2. 02有効化前の素材、計測、コネクター確認
  3. 03失敗で中断した公開処理の再開
  4. 04代理店や顧客への引き継ぎ記録の作成

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/indranilbanerjee/digital-marketing-pro --skill launch-campaign

インストール後、Claude Code で/launch-campaignを入力して読み込まれたか確認します。

詳細

翻訳後に原文が更新されています。最新の内容は原文をご確認ください。

/digital-marketing-pro:launch-campaign — マルチチャネルキャンペーンのローンチオーケストレーター

このスキルは、承認済みのキャンペーン計画(/digital-marketing-pro:campaign-plan で作成)を受け取り、ローンチに必要なすべての手順を実行します。事前ローンチのゲート、チャネルごとの有効化、CRM レコードの作成、チームへのキックオフ連絡、初日のモニタリング設定が含まれます。Google/Meta/LinkedIn/TikTok での有料広告の有効化のみを扱う /digital-marketing-pro:launch-ad-campaign を補完し、より広い範囲をカバーします。

キャンペーン計画が承認され、クリエイティブ、ランディングページ、メールシーケンスのすべてが承認された後、キャンペーンごとに一度だけこのスキルを使用してください。有料広告だけを対象とするものではなく、マルチチャネル全体(有料広告+オーガニック+メール+コンテンツ+CRM+PR)のローンチに使用します。

このスキルが必要な理由

キャンペーン計画はドキュメントです。キャンペーンのローンチは、依存関係を踏まえた正しい順序で行う、プラットフォーム上の20個の個別アクションです。オーケストレーターがないと、代理店は手順を見落とします。分析タグを設定せずにランディングページを公開したり、配信元リストの GDPR 対応が済む前にメール自動化を有効にしたり、LP がインデックスされる前に有料広告を有効にしたり、最初のコンバージョン通知が Slack に届いて初めてチームがキャンペーンの開始を知ったりすることがあります。

このスキルは、「ローンチした」と「問題なくローンチした」の違いを生みます。稼働中のシステムに触れる前にすべての前提条件を確認し、依存関係に従った順序で有効化手順を実行して、ローンチを CRM Campaign オブジェクトとして記録します。これにより、初日からアトリビューションを正しく下流に反映できます。

このスキルが行わないこと

  • キャンペーン計画は作成しません。それは /digital-marketing-pro:campaign-plan の役割です。
  • クリエイティブは生成しません。それは /digital-marketing-pro:ad-creative、/digital-marketing-pro:content-engine、/digital-marketing-pro:email-sequence などの役割です。
  • 2日目以降の入札や最適化は行いません。それは /digital-marketing-pro:performance-report、/digital-marketing-pro:budget-optimizer などの役割です。

これは計画や最適化ではなく、一度限りのローンチイベントです。

プロセス

ステップ 0 — 前提条件(ブロッカーゲート)

以下の条件がすべて満たされない限り、このスキルは処理を続行しません。失敗した項目を出力し、ローンチを開始しないでください。

  1. /digital-marketing-pro:validate-profile --brand {brand} の結果が passed または passed_with_warnings であること。
  2. キャンペーン計画が ~/.claude-marketing/brands/{slug}/campaigns/{campaign_id}/plan.json に存在すること(またはユーザーが --plan-path を指定すること)。
  3. 計画の status フィールドが approved であること(draft/in_review/rejected は不可)。
  4. 計画で参照されているすべてのアセットが、計画で指定されたパスに存在すること(クリエイティブファイル、HTTP 200 を返すランディングページ URL、メールプラットフォーム上のメールテンプレート)。
  5. 対象チャネルで必要なすべてのコネクターに接続できること。高速プローブを再実行してください:python "${CLAUDE_PLUGIN_ROOT}/scripts/connector-status.py" --brand {slug} --action status --probe-only --connectors {comma-separated channel connectors}。
  6. 対象チャネルすべてでコンバージョントラッキングが検証済みであること。GA4 イベントが設定され、過去7日以内にテスト発火されている必要があります:python "${CLAUDE_PLUGIN_ROOT}/scripts/performance-monitor.py" --brand {slug} --action diagnostic --channel ga4_health。
  7. アセットリストに AI 生成のビジュアル、動画、または音声が含まれ、キャンペーンの対象に EU 市場が含まれる場合、該当するすべてのアセットに C2PA 署名が付与されていること(内部では embed-c2pa.py --ai-disclosure を使用する /digital-marketing-pro:c2pa-metadata ワークフロー)。2026年8月2日以降、EU でのローンチでは第50条への準拠が必須です。

いずれかの条件を満たさない場合は、各項目に対する文字どおりの次のコマンドを記載したタスクリストを出力して終了してください。

ステップ 1 — キャンペーン計画の読み込み

plan.json を読み込みます。次の項目を抽出します:campaign_id、campaign_name、objective、start_date、end_date、channels(チャネルごとの budget、audience、creative_ids、landing_url、kpi_targets を含む)、team_assignments、kickoff_comms、attribution_model。

ステップ 2 — ドライランプレビュー

稼働中のシステムに触れる前に、これから実行するすべてのアクションのドライランプレビューを表示します。続行するには、ユーザーが yes と入力する必要があります。ドライランには次の内容が表示されます。

🚀 Campaign launch preview — {campaign_name}
   Campaign ID: {campaign_id}
   Brand:       {brand}
   Window:      {start_date} → {end_date}
   Objective:   {objective}
   Attribution: {model}

   The following 14 actions will execute in order:

    1. CRM — Create Campaign object {campaign_name} in {HubSpot|Salesforce|...}
    2. Landing page — Verify {url} returns 200, schema markup present, GA4 tag firing
    3. Email — Enable automation {automation_id} in {Klaviyo|HubSpot|...} (sender domain authenticated)
    4. Paid search — Activate {N} Google Ads campaigns ({budget} daily total)
    5. Paid social — Activate {N} Meta + {M} LinkedIn campaigns ({budget} daily total)
    6. Retail media — Activate {N} Amazon Sponsored Products campaigns
    7. Organic social — Schedule {N} posts across {platforms} via {scheduler}
    8. Influencer — Notify {N} contracted creators (briefs already approved per plan)
    9. PR — Send launch announcement to {N} press contacts via {tool}
   10. Internal kickoff — Slack message to {channel}, email to {distribution_list}
   11. Tracking — Wire UTM parameters across every link (cross-check against plan)
   12. Attribution — Confirm {attribution_model} active in GA4 + CRM
   13. Monitoring — Activate day-1 watchdog on {KPIs} via /digital-marketing-pro:performance-check
   14. Documentation — Write launch record to ~/.claude-marketing/brands/{slug}/campaigns/{campaign_id}/launch-record.json
       and publish a user-visible copy to ~/Documents/DigitalMarketingPro/{brand}/campaigns/

   Estimated total wall-clock time: ~{N} minutes.
   Channels that will start spending immediately: {list with daily totals}.

   Type `yes` to proceed, `dry-run-only` to save the preview without launching,
   or any other input to cancel.
ステップ 3 — 依存関係に沿った順序で実行

アクションを順番に実行します。各アクションの後に、 ~/.claude-marketing/brands/{slug}/campaigns/{campaign_id}/launch-state.json に状態チェックポイントを書き込み、中断後に /digital-marketing-pro:resume から再開できるようにします。

主な依存関係のルール:

  • CRM キャンペーンオブジェクトは、有料広告キャンペーンより先に作成する必要があります。有料広告プラットフォームでは、アトリビューションのために CRM ID を参照する必要があります。
  • 有料広告を有効化する前に、メール自動化を有効にする必要があります。そうしないと、広告で最初の数分間に獲得したリードに対してナーチャリングが行われません。
  • 有料広告を有効化する前に、ランディングページの検証に合格する必要があります。404 ページにトラフィックを誘導することは、初日に最もよくある失敗です。
  • EU 市場向けに AI コンテンツを投稿するオーガニックソーシャルまたは有料ソーシャルのチャネルでは、その投稿を行う前に AI アセットの C2PA 署名を確認する必要があります。
  • 社内キックオフの前に、トラッキングとアトリビューションを確認する必要があります。社内連絡を送った後で「トラッキングは後で修正する」と言っても、実現することはありません。

各プラットフォームのアクションは、該当するスクリプトを通じてディスパッチされます。

# CRM Campaign object
python "${CLAUDE_PLUGIN_ROOT}/scripts/crm-sync.py" --brand "{brand}" \
    --action create-campaign --plan ~/.claude-marketing/brands/{slug}/campaigns/{campaign_id}/plan.json

# Landing page check
curl -sS -o /dev/null -w "%{http_code}" "{landing_url}"

# Email automation enable (idempotent — skips if already enabled)
python "${CLAUDE_PLUGIN_ROOT}/scripts/execution-tracker.py" --brand "{brand}" \
    --action enable-automation --automation-id "{id}" --platform "{klaviyo|hubspot|...}"

# Paid-ads activation (delegates to launch-ad-campaign for the paid-only subset)
python "${CLAUDE_PLUGIN_ROOT}/scripts/execution-tracker.py" --brand "{brand}" \
    --action launch-ads --plan ~/.claude-marketing/brands/{slug}/campaigns/{campaign_id}/plan.json
# (this internally calls the launch-ad-campaign workflow for Google/Meta/LinkedIn/TikTok)

# Organic social scheduling
python "${CLAUDE_PLUGIN_ROOT}/scripts/execution-tracker.py" --brand "{brand}" \
    --action schedule-posts --plan ~/.claude-marketing/brands/{slug}/campaigns/{campaign_id}/plan.json

# Influencer notification
python "${CLAUDE_PLUGIN_ROOT}/scripts/execution-tracker.py" --brand "{brand}" \
    --action notify-influencers --plan ~/.claude-marketing/brands/{slug}/campaigns/{campaign_id}/plan.json

# PR send
python "${CLAUDE_PLUGIN_ROOT}/scripts/execution-tracker.py" --brand "{brand}" \
    --action pr-send --plan ~/.claude-marketing/brands/{slug}/campaigns/{campaign_id}/plan.json

# Internal kickoff
python "${CLAUDE_PLUGIN_ROOT}/scripts/execution-tracker.py" --brand "{brand}" \
    --action internal-kickoff --plan ~/.claude-marketing/brands/{slug}/campaigns/{campaign_id}/plan.json

# Day-1 monitoring
python "${CLAUDE_PLUGIN_ROOT}/scripts/performance-monitor.py" --brand "{brand}" \
    --action arm-watchdog --campaign-id "{campaign_id}" --kpis "{kpi list}"

いずれかのアクションが失敗した場合:

  1. launch-state.json を更新し、status: paused_at_step_{N} とエラーを記録します。
  2. 後続のステップに進まないでください。後続のステップはこのステップに依存しています。
  3. リテラルな修正コマンドと、正確な再開コマンドを含めて、失敗内容を表示します。 python "${CLAUDE_PLUGIN_ROOT}/scripts/execution-tracker.py" --brand "{brand}" --action resume-launch --data '{"campaign_id":"{campaign_id}","from_step":{N}}'
  4. 自動で再試行しないでください。初日の失敗は設定ミスを意味することが多く、再試行すると問題が拡大するだけです(キャンペーンの重複、メールの二重送信など)。人間による判断が必要です。
ステップ 4 — ローンチ記録を書き込む

すべてのアクションが成功した後、最終的なローンチ記録を 2 か所に書き込みます。

# Internal (system-of-record)
~/.claude-marketing/brands/{slug}/campaigns/{campaign_id}/launch-record.json

# User-visible
~/Documents/DigitalMarketingPro/{brand}/campaigns/{YYYY-MM-DD}-{campaign_name_slug}-launch.json

(設定されている場合は $DIGITAL_MARKETING_PRO_PUBLISH_DIR/{slug}/campaigns/{...} にも書き込みます。これは二重コピーの公開ディレクトリパターンです。)

記録には、ローンチ日時、各アクションとその戻り値、チャネルごとの有効化ステータス、CRM キャンペーンオブジェクト ID、社内キックオフの Slack/メールの URL、初日モニタリング用ウォッチドッグ ID、そしてこのローンチの基になったキャンペーン計画の絶対パスが含まれます。

ステップ 5 — ユーザーに確認する

会話内にローンチの概要を表示します。

🚀 Campaign launched — {campaign_name}

   Campaign ID:     {campaign_id}
   CRM record:      {hubspot|salesforce|...} Campaign #{id}
   Window:          {start_date} → {end_date}
   Channels live:   {list with daily totals}
   Day-1 watchdog:  /digital-marketing-pro:performance-check --watchdog {watchdog_id}

   📂 Launch record:
      {published_path}

   First check-in: tomorrow morning. Run /digital-marketing-pro:performance-check
   to see the day-1 numbers.

動作ルール

  1. 前提条件が満たされていない場合は拒否します。 ステップ 0 の BLOCKER はすべて、ローンチ開始前に解消する必要があります。「警告して続行」は認めません。ローンチ当日に大惨事を招きかねません。
  2. 必ず最初にプレビューします。 ドライランプレビューは必須です。ユーザーが yes と入力しなければ、何もローンチされません。
  3. 依存関係に沿った順序は固定です。 CRM → ランディングページの検証 → メール → 有料広告 → オーガニック → インフルエンサー → PR → 社内 → トラッキング → モニタリング → 記録。順序を変えないでください。スキップするチャネルがある場合は、このスキルの実行前に計画に記載しておく必要があります。
  4. 各アクションの後にチェックポイントを記録します。 ローンチを 14 フェーズのパイプラインとして扱います。失敗した場合でも、launch-state.json に再開可能な状態が残るため、作業が「失われる」ことはありません。
  5. 失敗時に自動再試行しません。 ローンチのステップが失敗した場合は、人間による確認が必要です。何も考えずに再試行すると、キャンペーンの重複、メールの二重送信、追跡不能な CRM レコードが発生します。
  6. ローンチ記録を二重にコピーします。 社内用とユーザー向けの両方に残します。代理店がドットフォルダーの場所を説明せずに、ローンチ記録をクライアントに送れるようにするためです。

引数

/digital-marketing-pro:launch-campaign [--brand <slug>] [--campaign-id <id>]
    [--plan-path <path>] [--dry-run] [--resume-from-step <N>] [--skip-internal-kickoff]
  • --brand <slug> — 起動するブランド(指定しない場合はアクティブなブランドを使用します)
  • --campaign-id <id> — 起動するキャンペーン(指定しない場合、ブランドに承認済みプランが1つだけあればそれを使用し、それ以外の場合は確認します)
  • --plan-path <path> — プラン JSON の明示的なパス(デフォルトの ~/.claude-marketing/brands/{slug}/campaigns/{id}/plan.json の場所を上書きします)
  • --dry-run — プレビューを表示して、起動せずに終了します(確認プロンプトで dry-run-only と入力する場合と同じです)
  • --resume-from-step <N> — ステップ N から一時停止中の起動を再開します(launch-state.json を参照します)
  • --skip-internal-kickoff — Slack/メールでのキックオフをスキップします(営業時間外に起動し、連絡は後日行う場合に使用します)

関連スキルとコマンド

  • validate-profile — 前提条件となる BLOCKER チェック
  • campaign-audit — この起動との差分を明らかにする、現状のベースラインを作成します
  • campaign-plan — このスキルが使用するプランを作成します
  • launch-ad-campaign — 有料広告の有効化を行うステップ 3 で、このスキルが委任する有料広告専用のサブセットです
  • performance-check — 成功メッセージで言及される初日のチェックインスキル
  • performance-monitor.py(${CLAUDE_PLUGIN_ROOT}/scripts/performance-monitor.py)— 初日のウォッチドッグを設定します
  • crm-sync — CRM Campaign オブジェクトを作成します
  • c2pa-metadata — EU 向けの起動で AI アセットに署名します(ステップ 0 で必須)

コメント