LINE Harnessの複数アカウント・Pool設定|IG連携までのE2E確認
Cloudflare環境を確認し、複数LINEアカウントとPoolを作成して、IG Harnessから正しいLINEへ接続するE2E運用手順です。 アカウント、Worker、Pages、D1、R2、Cron、Secrets名、ログを変更せずに確認します。 MCPを接続し、一覧取得→下書き→人間承認→変更→再取得の順で操作します。 LINEアカウントを登録し、Poolへ所属させ、リファラルURLからランダム振り分けを確認します。
この記事はHarness Academyの教材データを基に、各Harnessの公式リポジトリにある実装箇所と照合して構成しています。秘密情報や本番データを記事・AIチャットへ貼らず、外部送信は必ず検証対象を限定してください。
この記事の目次
最初に確認すること
- Wranglerで現在のCloudflare環境を確認する: Wranglerが何を操作する道具か理解し、別アカウント・別環境への誤デプロイを防げる
- CodexからLINE・IG Harnessを操作する: 管理画面を探し回らず、Codexへ日本語で依頼して安全に設定できる
- 複数LINEアカウントとPoolをゼロから作る: 複数のLINE公式アカウントを一つの入口へまとめ、停止アカウントを除外できる
- IG HarnessからL Harnessへ接続する: Instagramの反応者がLINE登録したとき、IGSIDとLINE friend UUIDを安全に相互リンクできる
- IG→Pool→LINEをE2E運用確認する: 実際の顧客導線を公開する前に、どこで失敗したか自分で切り分けられる
Wranglerで現在のCloudflare環境を確認する
アカウント、Worker、Pages、D1、R2、Cron、Secrets名、ログを変更せずに確認します。
この工程のゴール: Wranglerが何を操作する道具か理解し、別アカウント・別環境への誤デプロイを防げる
WranglerはCloudflare Workers、D1、R2、Secrets、Cronなどをターミナルから確認・操作する公式CLIです。Harnessの画面操作とは役割が異なります。
最初にwhoamiとリポジトリのwrangler設定を照合します。複数のCloudflareアカウントを使う場合、Worker名だけで判断せずaccount ID、database ID、bucket名、公開URLまで表にします。
手順
1. ログイン先を確認
Wranglerのバージョン、ログイン中ユーザー、利用可能アカウントをread-onlyで確認します。
2. 設定を読む
LINE/IGのwrangler設定からWorker名、D1、R2、vars、Cron、環境を抽出します。
3. 実物と照合
Cloudflare上のdeployment、D1、R2、Pagesを設定ファイルと突き合わせます。
4. ログを見る
検証イベント一件だけを発生させ、対象Workerのログとrequest IDを確認します。
完了条件
- Wranglerのログイン先を確認
- LINE/IGのbindingsを環境別に一覧化
- 本番と検証が混在していない
- secret値を表示していない
注意: Cloudflareアカウントや環境が特定できない状態ではdeployしません。
wrangler secret putやD1 migrationは確認後の別操作です。
Academy教材: Codex・Google・Harnessで実務運用する / Lesson 14-1
CodexからLINE・IG Harnessを操作する
MCPを接続し、一覧取得→下書き→人間承認→変更→再取得の順で操作します。
この工程のゴール: 管理画面を探し回らず、Codexへ日本語で依頼して安全に設定できる
CodexはHarness MCPを通じて、友だち、タグ、配信、Pool、Instagramキャンペーン、LINE接続などを操作できます。コードをコピーするのではなく、教材の完成プロンプトをCodexのチャット欄へ貼ります。
複数LINEアカウントとPoolはLINE側のmanage_traffic_pools、IGからL Harnessへの接続はIG側のmanage_line_connectionsを使います。ツール名が見えない場合は、変更を始めずMCP接続とserver buildを先に確認します。
MCP接続後も、最初はlist/getだけを使います。create/update/send/deleteは、対象IDと変更後の状態を人間が確認してから一回だけ実行します。
手順
1. 対象フォルダで開く
LINEまたはIG HarnessのリポジトリをCodexで開き、AGENTS.mdとpackage.jsonを読ませます。
2. MCPを確認
LINE/IG Harness MCPの接続名、API URL、認証状態を値を伏せて確認します。
3. 一覧だけ取得
アカウント、Pool、タグ、キャンペーンなど必要な一覧をread-onlyで取得します。
4. 変更を一回実行
AIの変更表を承認し、一機能だけ変更後、同じget/listで保存結果を照合します。
完了条件
- LINE/IG MCPが接続済み
- toolsを危険度別に分類
- 最初はread-only取得だけ
- 変更後に再取得して照合
注意: MCP接続は本番変更の包括承認ではありません。送信、全体変更、削除、deployは操作ごとに対象を確認します。
Academy教材: Codex・Google・Harnessで実務運用する / Lesson 14-2
複数LINEアカウントとPoolをゼロから作る
LINEアカウントを登録し、Poolへ所属させ、リファラルURLからランダム振り分けを確認します。
この工程のゴール: 複数のLINE公式アカウントを一つの入口へまとめ、停止アカウントを除外できる
現行L Harnessでは、新しいLINEアカウントは自動的にmain Poolへ追加されます。Pool内では、有効な所属アカウントからSQLのランダム選択で一件を選びます。
これは容量上限、重み、優先順、厳密なラウンドロビンではありません。少ない試行回数で同数になる保証もないため、教材では『均等になったか』ではなく『有効な対象だけへ到達するか』を確認します。
手順
1. アカウントを登録
各LINE公式アカウントのChannel・Login・LIFFをID単位で照合し、一つずつ登録します。
2. Poolを確認
自動作成されたmainと所属状況をCodexのlist操作で確認します。
3. 用途別Poolを作る
分かりやすいslugで作り、検証アカウントだけを追加します。
4. 振り分けを試す
リファラルリンクへPoolを設定し、複数回開いて有効なLIFFだけへ進むか確認します。
完了条件
- 複数LINEアカウントをID単位で照合
- main Poolへの自動参加を確認
- 有効アカウントだけからランダム選択
- 停止・再開とfallbackを検証
注意: 現在のPoolに容量制限・重み・優先順位はありません。これらが必要な案件は追加開発として別PR・別テストにします。
Academy教材: Codex・Google・Harnessで実務運用する / Lesson 14-3
IG HarnessからL Harnessへ接続する
IGの特典DMをL HarnessのトラックリンクとPoolへつなぎ、同一人物IDを双方へ保存します。
この工程のゴール: Instagramの反応者がLINE登録したとき、IGSIDとLINE friend UUIDを安全に相互リンクできる
IG Harnessは複数のL Harness接続先を登録できます。各接続はWorker URL、API key、任意のaccount IDを持ち、キャンペーンごとに接続先とPoolを選びます。
特典DM送信時にL Harnessのトラックリンクを一つ作り、IGのengagement gateへline_tracked_link_shortとしてキャッシュします。受信者ごとのIGSIDは?ig=で渡し、LINE側はfriends.ig_igsid、IG側はfollowers.line_friend_uuidへ保存します。
手順
1. 双方の接続情報を用意
L Worker URL、専用API key、IG Worker URL、共有secretを安全に登録します。
2. IGへL接続を登録
Codexのmanage_line_connectionsで作成し、testとPool一覧取得を行います。
3. キャンペーンへ接続
検証gateへline_connection_id、line_pool_slug、特典URLを設定し、初回配信後のline_tracked_link_shortを確認します。
4. 一人で相互リンク
自分のIG反応→DM→L登録を通り、双方のID末尾と競合防止を確認します。
完了条件
- IGからL接続テストが成功
- 検証campaignが正しいPoolを参照
- IGSIDとLINE UUIDを双方へ保存
- 再実行とID競合を安全に処理
注意: API keyと共有secretをチャット・Git・画面キャプチャへ残しません。別人物のID競合は自動上書きせず調査対象にします。
Academy教材: Codex・Google・Harnessで実務運用する / Lesson 14-4
IG→Pool→LINEをE2E運用確認する
キャンペーン、トラックリンク、Pool振り分け、LINE登録、タグ・シナリオ、同一人物連携を一人で通します。
この工程のゴール: 実際の顧客導線を公開する前に、どこで失敗したか自分で切り分けられる
接続テストだけでは、特典DM内URL、Pool振り分け、LIFF、友だち追加、ID保存まで動くことを証明できません。検証人物一人で全経路を通します。
失敗時は設定を増やさず、IG Webhook、gate delivery、tracked link、L /r、LIFF、双方DBのどこまで進んだかを時系列で確認します。
手順
1. 開始状態を記録
campaign、connection、Pool、tracked link、双方の人物IDが未連携か確認します。
2. IGで発火
検証投稿または固有DMキーワードから特典DMを一件受け取ります。
3. LINEへ登録
リンクを開き、Poolで選ばれたLINEアカウントへ進み、LIFFを完了します。
4. 6地点で照合
IG delivery、tracked link、Pool、LINE friend、タグ/シナリオ、双方IDを確認します。
完了条件
- IGから特典DMが一件だけ届く
- Poolの有効LINEアカウントへ到達
- タグ・シナリオ・計測が一回だけ動く
- 双方IDが一致し再実行も安全
注意: 最初のE2Eは必ず自分の検証IG・LINEだけで行います。複数の本番顧客を使った分布テストはしません。
Academy教材: Codex・Google・Harnessで実務運用する / Lesson 14-5
公式ソース
- Wrangler commands — Wrangler公式コマンド
- LINE Harness / apps/worker/wrangler.toml — LINE Worker設定
- IG Harness / apps/worker/wrangler.toml — IG Worker設定
- LINE Harness / packages/mcp-server/src/tools/index.ts — LINE MCP tools
- IG Harness / packages/mcp-server/src/tools/index.ts — IG MCP tools
- LINE Harness / packages/mcp-server/src/tools/manage-traffic-pools.ts — PoolのCodex操作
- IG Harness / packages/mcp-server/src/tools/manage-line-connections.ts — LINE接続のCodex操作
- LINE Harness / apps/worker/src/routes/line-accounts.ts — 新規アカウントのmain Pool自動参加
- LINE Harness / packages/db/src/traffic-pools.ts — 有効アカウントのランダム選択
- LINE Harness / apps/worker/src/index.ts — /rのPool解決順
- IG Harness / apps/worker/src/services/line-cross-link.ts — tracked link生成とIGSID付与
- LINE Harness / apps/worker/src/routes/liff.ts — LINE側のIGSID保存とIGへの通知
- IG Harness / apps/worker/src/routes/cross-link.ts — IG側のLINE UUID保存
- IG Harness / apps/worker/src/services/engagement-gate.ts — IG delivery
関連ガイド
Academy会員はコピペ実行用プロンプトと演習を開くと、同じ手順をAIへ渡して実機で進められます。