LINE Harnessを、
自分で立ち上げてみるまで
ここ数年で、AIに仕事を手伝ってもらう場面がずいぶん増えました。文章を書く、資料をまとめる、といったあたりから始まって、最近は実際の作業そのものを任せる方向に広がってきています。LINE公式アカウントの運用も、そのひとつです。
LINE Harnessは、LINE公式アカウントの友だち管理や配信を、AIから操作できるようにする仕組みです。ふつうのアプリと少し違うのは、どこかの会社のサービスに登録するのではなく、自分の場所に一式を建てる形をとっていること。そのぶん最初の作業は、LINEの設定ではなく「置き場所を用意すること」から始まります。
「AIから操作する」というのは、たとえばこういうことです。導入を終えると、Claude Code のようなAIツールから直接つなぐための差込口が用意されます。管理画面を自分で開かなくても、友だちの絞り込みや配信の下書きをAIに頼める、という形です。設定を作る作業そのものをAIに任せる余地がある、というのがこのツールの特徴になっています。
先日、これを自分の環境に立ち上げてみました。手が止まった場面が何度かあったのですが、振り返ると、難しくて分からなかったというより行き違いに近いものでした。正常な状態が失敗に見えたり、大事な値が目立たない見た目で表示されたり、といった類のものです。
この記事について
- 止まった場所を、体験した順に書いています
- プログラムを書ける必要はありません。実際、この作業でコードを書く場面はありません
- 専門用語は、そのつど身近なものにたとえて説明します
1. そもそも、何がどこに置かれるのか
最初にここを押さえておくと、あとがずいぶん楽になります。私はこの地図を持たないまま始めてしまい、途中で何度も「いま自分は何をしているのか」が分からなくなりました。
導入に使うのは create-line-harness という無料のツールです。名前のとおり、ひとつのコマンドで一式を用意してくれるもので、質問に順番に答えていくだけで進みます。
そして「一式」の中身が、これです。置き場所として使うのは Cloudflare というインターネット上のサービスで、性質の違う4つの部屋が用意されます。
| 用意されるもの | 何のための場所か |
|---|---|
| Workers | プログラム本体が入る部屋。外から誰でも訪ねられる貸しオフィスだと思ってください |
| D1 | 友だちの情報をしまうデータベース。名簿の引き出し |
| R2 | 配信に使う画像を置くところ。物置 |
| Pages | ブラウザで開く管理画面 |
それぞれの正式な説明は、Cloudflare公式ドキュメントの Workers/D1/R2/Pages(いずれも英語)にあります。
この4つの名前を覚える必要はありません。ただ「自分のためのサーバーが4つぶん建つ」という感覚だけ持っておくと、作業中に画面へ次々と出てくる名前に驚かなくなります。
そして作業が終わると、URLが手に入ります。役割が違うので、混ざらないように控えておいてください。
「◯◯.△△.workers.dev」という形のURLです。この名前を自分で決める場面が、あとで出てきます。
上のURLの末尾に /webhook を足した形です。これをLINE側に登録して、はじめてLINEとつながります。
友だち一覧や配信を操作する画面です。このURLと鍵の扱いが、この記事でいちばん気をつけてほしいところになります。理由は最後の章で書きます。
2. 始める前に用意するもの
手数が多いことを、先に知っておく
この種の作業で心が折れるのは、難しい場面ではありません。「まだ終わらないのか」と思う場面です。中身を分けると、性質の違う作業が3つ並んでいるだけだと分かります。
LINE公式アカウント、LINE Developersのアカウント、そしてCloudflareのアカウント。どれも無料で始められますが、それぞれ別の会社の、別の画面です。「まだ登録画面か」と思う時間が続きます。
ここだけが黒い画面(ターミナル)を使う工程です。ただし質問に答えていく形なので、自分で文章を組み立てて打ち込む場面はほとんどありません。
LINEの管理画面に、できあがったURLを登録します。ここはふだんの管理画面と同じ、画面上の作業です。
ひとつだけ、先に確認しておくこと
導入ツールを動かすには、Node.js というものがパソコンに入っている必要があります。入っていない場合や、古すぎる・新しすぎる場合につまずきます。
ここでひとつだけ知っておくと得なのが、数字が大きいほど新しくて安心、とは限らないことです。Node.jsは偶数番号のものだけが長くサポートされ、奇数番号は短期間で役目を終えます。
| 確認した結果 | どうするか |
|---|---|
| 偶数番号(2026年9月時点で v24 または v22) | そのまま進んで問題ありません |
| 奇数番号(v25、v23 など) | 動くことは動きますが、サポートが終わっている可能性があります |
| そもそも入っていない | 公式サイトから、偶数番号のものを入れます |
出典:Node.js Releases(Node.js公式・英語)。2026年9月時点で v24 と v22 が長期サポートの対象。v25は2026年3月31日にサポート期間を終えています。
ちなみに私のパソコンに入っていたのは v25 でした。つまり、すでにサポートが終わっているものです。今回は最後まで問題なく動きましたが、もし途中で原因の分からないエラーが出ていたら、まずここを疑うべきでした。
3. なぜ、自分のパソコンの中では足りないのか
作業の途中で、名前の入力を求められます。ここで、いちばん長く止まりました。何を聞かれているのか分からなかったからです。
画面に出ていたのは、こういう形のURLの一部でした。
https://◯◯◯.△△△.workers.dev
そもそも、なぜインターネット上のURLが必要なのか。ここが分かっていないと、名前も決められません。
LINEは「あなたのパソコンの中」には連絡できない
LINE Harnessは、こういう順番で動いています。
友だちが発言する → LINEのサーバー → あなたのプログラム
この転送先のことを Webhook と呼びます。「何か起きたら、このURLに知らせてね」という連絡先のことで、留守番電話の転送先番号だと思ってください。
そして転送先である以上、LINE側から外を通って届く場所でなければ意味がありません。自分のMacの中だけで動いているプログラムには、連絡が来ないのです。しかもLINEは、この受け口を「きちんとした証明書のついた安全な通信でなければ受け付けない」と決めています。自前で用意しようとすると、そこそこ面倒な条件です。
LINE Harnessの本体をCloudflareに置くのは、このためです。置いた時点で、その条件を満たしたURLが最初から割り当てられます。
出典:SSL/TLS specification of the webhook source(LINE Developers公式・英語)。Webhookを受け取る側はHTTPS通信であること、公的な認証局が発行した証明書を使うこと、TLS 1.2以降に対応していることが定められています。
聞かれていたのは「ビル名」のほうだった
先ほどのURLに戻ります。この形には決まりがあって、前半が部屋番号、後半がビル名にあたります。
https://【部屋番号】.【ビル名】.workers.dev
そして入力を求められていたのは、ビル名のほうでした。ビル名はアカウントにひとつだけで、今後この場所に作るものは全部この名前の下にぶら下がります。
出典:workers.dev(Cloudflare Workers公式ドキュメント・英語)。URLは「Worker名.サブドメイン名.workers.dev」の形式になる、と記載されています。
画面にあらかじめ入っていた候補は test-harness、つまり「テスト用の道具」といった意味の名前でした。ここで気になったのは、この名前がLINEの管理画面にも登録される、つまり外に出るということです。将来ちゃんと運用するようになっても、URLに「テスト」の文字が残り続けます。私は屋号にちなんだ名前を選びました。
後から変えられます。ただし全部が動きます
調べる前は「一度決めたら変えられない」と思い込んでいましたが、実際にはCloudflareの管理画面から変更できます。
ただし、URLが「部屋番号.ビル名」の形である以上、ビル名を変えると、そこにある全部のURLが一斉に変わります。LINE側に登録したWebhook URLも、当然登録し直しです。「変えられないから慎重に」ではなく、「変えると引っ越しになるから慎重に」が正しい理解でした。
注意:名前を決める欄は、2か所あります
私はビル名を屋号に変えて満足していたのですが、あとで気づきました。部屋番号のほうは、初期値の test-harness が残ったままでした。結局、URLには「テスト」の文字が入っています。実害はありませんが、本格運用に移すときに作り直すかどうかの判断が必要になります。名前を聞かれる場面は一度ではない、と思っておいてください。
すでに別のLINE連携ツールを使っている場合は、先に確認してください
ここまでの話には、手を動かす前に知っておかないと困る続きがあります。すでにLINE公式アカウントで何かのツールを使っている方は、この節だけでも読んでいってください。
先ほど、Webhookは「LINEからの連絡先」だと書きました。問題は、その連絡先を書く欄の数です。LINE公式ドキュメントには、こう記されています。
Webhook URLは、ひとつしか設定できません。
出典:Build a bot(LINE Developers公式・英語)。「Only one bot server endpoint can be set in the webhook URL.(Webhook URLに設定できるボットサーバーの宛先はひとつだけ)」と記載されています。
つまり先着1名の席です。すでに何かのツールがそこに座っている状態でLINE Harnessを設定すると、後から入れたほうが前のURLを上書きします。
注意:上書きしても、エラーは出ません
いちばん怖いのはここです。上書きした瞬間に警告が出るわけではありません。LINE Harness側は正常に動きはじめ、それまで使っていたツールのほうが、静かに反応しなくなります。自動応答が止まる、チャットが届かなくなる、といった形で、しばらく経ってから気づくことになります。
ですので、既存のツールがある場合は入れる前に、そのツールがWebhookを使っているかどうかを確認してください。ツールによって事情は違い、Webhookを必須としないもの、一部の機能でだけ使うもの、公式に転送のしくみを用意しているものがあります。「使っているかどうか」は、そのツールの提供元に聞くのがいちばん確実です。
これは、入れてしまってから気づくと関係者との調整が必要になる種類の話です。作業の前に、一度確認しておく値打ちがあります。
4. エラーに見えて、エラーではないもの
この作業でいちばん消耗するのは、失敗そのものではありませんでした。「失敗したのかどうか分からない時間」です。実際に3つ、正常なのにエラーに見えるものがありました。
その1:新しいURLは、すぐには通じない
名前を登録した直後、動作確認が通りませんでした。設定を間違えたのかと思いましたが、これは正常です。
新しい住所をインターネット上に登録しても、その情報が世界中に行き渡るまでには少し時間がかかります。転居届が全国の窓口に反映されるまでのタイムラグのようなものです。Cloudflareの公式ドキュメントにも「初回は1分ほど待てば自然に解消する」と書かれていました。
出典:Get started - CLI(Cloudflare Workers公式ドキュメント・英語)
その2:やり直しは、最初からではない
ここがいちばん安心できた点でした。数分待ってから導入ツールをもう一度動かしたところ、終わっている工程は飛ばして、止まったところから再開しました。
この種のツールは、途中で中断してももう一度実行すれば続きから進むように作られていることがあります。「エラーが出た=全部やり直し」ではありません。まず数分待つ。それからもう一度、同じことをやってみる。これだけで解決する場面がかなりあります。
その3:薄い文字は、失敗の合図ではない
作業が終わりに近づいたとき、画面の文字が急に薄い灰色になりました。無効になった、あるいは失敗したのかと思って手が止まりました。
これは、ふだんのアプリでの経験が裏目に出た例です。アプリの画面では薄い文字=押せない・効いていないですが、この画面ではそうではありませんでした。
あとで表示の仕組みを確認したところ、枠で囲まれたメモ欄は、中身が何であっても全部薄く表示される作りになっていました。重要かどうかとは、まったく関係がありません。紙にたとえるなら、本文ではなく「囲み罫の中の※注記」です。区別のために、わざとトーンを落としてあるだけでした。
導入ツールが表示に使っている @clack/prompts(v0.9.1時点)の実装で確認しました。
| 見え方 | 意味 |
|---|---|
| 薄い文字+枠で囲まれている | メモ欄。読み物であって、失敗ではありません |
| ①②などの見出しだけ濃い | ここが、実際に行動する項目です |
| 赤い文字 | これが本物のエラーです |
もうひとつ、地味に効くことがあります。黒い画面の幅が狭いままだと、枠線が折り返して表示が崩れます。読みにくいと感じたら、ウィンドウの右下をドラッグして横に広げてみてください。それだけで、いま何を言われているのかが読めるようになります。
5. いちばん大事な値が、いちばん軽い見た目で出てくる
ここが、この作業でいちばん危ない場所です。
セットアップが終わると、次に何をすればいいかの案内が表示されます。前の章に書いたとおり、この案内は枠付きの薄い文字で出ます。私は「補足だから、あとで読めばいい」と思って、流し読みしそうになりました。
その薄い枠の中に、LINEに登録するWebhook URLと、管理画面に入るための鍵(API Key)が入っていました。
問題は、この画面を消すと二度と戻らないものがあることです。あとから仕組みを確認したところ、こうなっていました。
- 鍵は暗号化して保管される仕組みのため、後から値を見ることができません。Cloudflare公式も、設定したあとは管理画面でもツールでも値は表示されない、と明記しています
- 作業中に鍵を持っていた一時ファイルは、正常に終わったときに自動で削除されます
- 作業の最後に「AIから使うための設定ファイルに書き出しますか」という趣旨の確認があり、ここで「いいえ」を選ぶと、鍵は画面の中にしか残りません
出典:Secrets(Cloudflare Workers公式ドキュメント・英語)
そして黒い画面には、表示を消してすっきりさせる操作があります(clear と入力するか、⌘K)。この場面でそれを押すと、鍵は本当に消えます。
注意:見た目と重要度が、ここだけ逆になっています
アプリの世界では「薄い文字=重要でない」が普通の読み方です。ところがこの画面では、薄い枠の中身がいちばん重要です。「初心者に優しくない」という話ではなく、見た目の合図と実際の重要度が逆転している、という構造の問題です。逆転していると知らなければ、誰でも同じところで足をすくわれます。
私は「はい」を選んでいたため設定ファイルに書き出され、事なきを得ました。画面を消す前に、書き写す。これが唯一の対策です。
復旧できないわけではありません。導入ツールを最初からやり直せば、新しい鍵が発行されます。ただし、そこからもうひとつ注意点が出てきます。
管理画面のURLは、ただのURLではありません
管理画面のURLの末尾には、ランダムに見える8文字がついています。これがランダムではありませんでした。鍵の先頭8文字が、そのまま使われています。
鍵の全体が漏れるわけではないので、ただちに危険というわけではありません。ただ、この管理画面のURLは「単なるURL」ではなく、鍵の一部を含んだ、人に見せてはいけない情報だということになります。
外に出していいもの・出さないもの
- 出してよい:LINE公式アカウントのID、workers.devのビル名にあたる部分(どちらも人に伝える前提の情報です)
- 出さない:LINEのチャネルアクセストークン、チャネルシークレット、そしてAPI Key
- 出さない:管理画面のURL。ブログやSNSはもちろん、スクリーンショットのアドレスバーに写り込むことにも注意してください
ちなみに鍵を作り直すと、管理画面のURLも一緒に変わります。URLが鍵からできているためです。この記事に管理画面のスクリーンショットが1枚もないのは、そういう理由です。
「自分でやるべきか、頼むべきか判断がつかない」「入れる前に確認しておくことを整理したい」という場合は、現状の整理からサポートします。
6. よくある質問(FAQ)
Q1: プログラムが書けなくても、LINE Harnessの環境構築はできますか?
A: できます。導入ツールが対話形式で質問してくるので、コードを書く場面も、自分でコマンドを組み立てる場面もありません。実際に難しいのは技術そのものではなく、いま何を聞かれているのかが分からない場面と、正常な状態が失敗に見える場面です。この記事では、その止まりやすい場所をまとめています。
Q2: すでに別のLINE連携ツールを使っています。LINE Harnessと併用できますか?
A: まず、そのツールがWebhookを使っているかを確認してください。LINEの仕様上、Webhook URLはひとつしか設定できないためです。LINE公式ドキュメントにも「Only one bot server endpoint can be set in the webhook URL.」と記載されています。すでに何かのツールがそこを使っている状態でLINE Harnessを設定すると、後から入れたほうが上書きし、既存のツールがエラーを出さないまま反応しなくなります。ツールによって事情は異なり、Webhookを必須としないもの、一部の機能でだけ使うもの、公式に転送のしくみを用意しているものがあります。提供元に確認するのが確実です。
Q3: LINE Harnessを導入すると、Cloudflareに何が作られますか?
A: 4種類のものが作られます。プログラム本体を動かす場所、友だちの情報を保存するデータベース、配信する画像を置くファイル置き場、そして管理画面です。あわせて、LINEからの連絡を受け取るWebhook URLと、管理画面のURLが発行されます。管理画面にログインするためのAPI Keyは、暗号化して保存されます。
Q4: Node.jsはどのバージョンを入れればいいですか?
A: 偶数番号のLTS版を選んでください。2026年9月時点でActive LTSはv24、Maintenance LTSはv22です。奇数番号はサポート期間が短く、v25は2026年3月31日にサポートが終了しています。数字が大きいほど新しくて安全というわけではない、という点だけ覚えておけば十分です。
Q5: workers.devのサブドメイン名は、後から変えられますか?
A: 変えられます。Cloudflareの管理画面から変更できます。ただしURLは「Worker名.サブドメイン名.workers.dev」という形なので、サブドメインを変えるとそのアカウントで作った全てのURLが一斉に変わります。LINE側に登録済みのWebhook URLも登録し直しになるため、最初に屋号など長く使える名前で決めておくほうが安全です。
Q6: セットアップ完了時に表示された値を、消してしまいました。
A: URLの類は再確認できますが、API Keyだけは戻りません。API Keyは暗号化して保存される仕組みのため、設定後は管理画面からもツールからも値を見られなくなるためです。作業用の一時ファイルも完了時に削除されます。復旧手段は導入ツールを再実行して新しい鍵を発行し直すことですが、鍵の一部が管理画面のURLにも使われているため、管理画面のURLも変わります。画面を消す前に転記するのが唯一の対策です。
7. まとめ
手が止まった場所を振り返ると、そのほとんどが「知識が足りなかった」ではなく、「画面の見た目が、実際の意味と食い違っていた」ことによるものでした。正常な待ち時間が失敗に見え、いちばん大事な値がいちばん軽い見た目で出てくる。
この種のズレは、一度通り過ぎてしまうと二度と気づけません。だから、通っている最中に書き留めておく値打ちがあります。
この記事のポイント
- LINE Harnessは、自分のCloudflareアカウントの上に一式を建てる形をとる。だから最初の作業は「置き場所を用意すること」から始まる
- コードを書く場面はない。質問に答えていけば進む
- Node.jsは偶数番号のものを選ぶ。数字が大きいほど新しくて安全、ではない
- LINEからの連絡は、外から届く安全なURLにしか送られない。だから本体を外に置く
- Webhook URLはひとつしか設定できない。すでに別のLINE連携ツールを使っているなら、入れる前に提供元へ確認する
- URLの名前は後から変えられるが、変えると全部が引っ越しになる。名前を聞かれる場面は一度ではない
- 初回のエラーは待てば消えることがある。やり直しても最初からにはならない
- 薄い文字の枠の中に、消したら戻らない鍵が入っている。画面を消す前に書き写す
- 管理画面のURLは鍵の一部を含む。スクリーンショットのアドレスバーにも注意する
環境構築は、慣れている人にとっては「ただの手順」ですが、初めての人にとっては「いまの状態が正しいのか分からないまま進む時間」です。詰まったときに疑うべきは自分ではなく、画面の読み方のほうだと思っていただければと思います。
ツール選びと運用設計についてお悩みはありませんか?
この記事で、導入のどこで止まりやすいかについてはご理解いただけたかと思います。
しかし、「そもそも自社に必要なのはどの仕組みなのか」「入れたあと、誰がどう運用するのか」「既存のお客様のデータはどうなるのか」といった疑問も残っているかもしれません。手を動かす前に決めておくことのほうが、実は数が多いためです。
こんなお悩みはありませんか?
- 「ツールは入れたが、何から手をつければいいか分からない」
- 「メールとLINE、どちらをどう使い分ければいいのか判断がつかない」
- 「導入したあとに『先に言ってほしかった』となるのが怖い」
ストアの運用改善・CRM・顧客導線の設計まで、
初回購入・リピート購入につながる顧客導線の設計を通じて、
ストアに合った仕組みづくりをサポートします。
Shopifyストアの運用改善について、お気軽にご相談ください。
※無料相談会では、押し売りは一切ありません。
あなたのストアの現状をお聞きし、最適な施策を一緒に考えます。
0 comments