LINE公式アカウントのCRM運用にかかる月額2万円を0円にする。LINE Harness OSSは、Lステップ・Utageと同等の機能をCloudflare無料枠で実現するオープンソースCRMだ。GitHub Stars 603・Fork 406(2026年10月20日時点)。2026年3月の公開から開発が続き、最新はv0.24.3(2026-10-20)。コミットには「Co-Authored-By: Claude Opus」が多数含まれ、Claude Codeで開発されている。
WHAT IT REPLACES何を代替するか
LINE CRMの月額SaaSを、自分のCloudflareに置き換える
Lステップ等のSaaS
月額21,780円〜(Lステップ)
- ソースは非公開
- APIは非公開または限定的
- BAN検知・自動移行なし
LINE Harness OSS
Cloudflare無料枠・MIT
- ソースとAPIが全公開
- BAN検知とアカウント移行
- Claude Code用MCPサーバー同梱
- コスト: 5,000友だちまで完全無料(Cloudflare無料枠内)
- 構成: Cloudflare Workers + Hono + D1(SQLite)+ Next.js 15
- 機能: ステップ配信・スコアリング・BAN検知・IF-THEN自動化・マルチアカウント
- セットアップ:
npx create-line-harnessの1コマンド・約5分 - AI連携: 型付きTypeScript SDK・Claude Code用MCPサーバー同梱
- ライセンス: MITのLICENSEファイルが同梱済み(v0.23.0以降)
この記事の3つの答え。何ができるか:ステップ配信・タグ/スコアリング・BAN検知・LIFFフォームまでを、自分のCloudflare上で動かせる。何を解決するか:LINE CRMのSaaS月額と、データを預ける構造。何を代替するか:Lステップ・Utage等。ただし障害対応と更新追従は内製が前提だ。Claude Code自体は Claude Code|2026年版・インストールからCLAUDE.md・Hooks・本番運用までの実装手引き にまとめている。
導入デモ動画(約20分)を見ると、友だち追加からステップ配信、管理画面までの全体像がつかめる。
LINE harnessとは:SaaS CRMの課題とコスト比較
LINE公式アカウントのCRMでは、SaaS型の月額が負担になる。Lステップは月額21,780円〜、Utageは月額10,000円〜で、友だちが増えるとプランも上がる。構造上の課題も3つある。
・ブラックボックス — ソースが非公開で、独自機能の追加や外部連携に制約がある
・ベンダーロックイン — 友だちデータ・シナリオ・配信履歴を持ち出す手段が限られる
・BAN対策の不在 — BAN検知や自動移行を備えたSaaSはほぼない
LINE Harness OSSはこれらを、ソース公開とCloudflare無料枠で解く。
| 項目 | LINE Harness OSS | Lステップ | Utage |
|---|---|---|---|
| 月額(〜5,000友だち) | 0円 | 21,780円〜 | 10,000円〜 |
| 月額(〜10,000友だち) | 約$10(Cloudflare有料プラン) | 上位プラン要 | 上位プラン要 |
| 月額(50,000友だち〜) | 約$25 | 要見積 | 要見積 |
| 年間(5,000友だち) | 0円 | 261,360円 | 120,000円 |
「無料」の正体は、Workersの1日10万リクエストとD1の5GBに収まる設計だ。Lステップ・Utageの料金は当サイトの従来の調査値で、最新は各社の公式料金ページで確認してほしい。内製で運用できる技術チームがいることが前提で、いなければSaaSのほうが総コストは低くなりうる。
機能比較:Lステップ・Utageとの差異
READMEの比較表に、当サイトで整理した項目を足した。
| 機能 | LINE Harness | Lステップ | Utage |
|---|---|---|---|
| ステップ配信 | 分単位制御・条件分岐・ステルス送信 | あり | あり |
| ブロードキャスト | 全員/タグ/セグメント、500人超は自動キュー化 | あり | あり |
| リードスコアリング | 行動ベース自動計算 | 一部 | なし |
| IF-THEN自動化 | 7トリガー×6アクション | 一部 | 一部 |
| カレンダー予約 | Google Calendar連携 | なし | あり |
| Conversation Inbox | 未返信を放置時間順に一覧 | 一部 | なし |
| BAN検知・自動移行 | 3段階監視+ワンクリック移行 | なし | なし |
| マルチアカウント | 標準搭載(1 Worker) | 別契約 | 別契約 |
| API全面公開 | 全機能公開 | 非公開 | 非公開 |
| Claude Code対応 | MCPサーバー同梱+SDK | なし | なし |
| ソースコード | 全公開(MIT) | 非公開 | 非公開 |
特にBAN検知・マルチアカウント・API全面公開・MCPサーバー同梱の4点がSaaSにない。配信時間帯9:00-23:00 JST限定のゲートはv0.13.2で全廃され、delay_minutesとscheduled_atで運用側が制御する。古い解説記事の記述とは異なる。
アーキテクチャ:Cloudflareスタックで1つのWorkerに集約
AWSやGCPを組み合わせず、Cloudflareだけで完結させる設計だ。LINEのWebhookはWorkersで受け、Channel Secretの署名から自動でアカウントを判別して、D1の該当テーブルに振り分ける。1つのWorkerで複数のLINE公式アカウントを管理できるのはこのためだ。
REQUEST PATH仕組み
Webhookは1つのWorkerで受け、D1に積む
-
LINE Webhook
署名でアカウント判別
-
Workers + Hono
API・Cron・LIFF
-
D1(SQLite)
友だち・配信・スコア
-
管理画面 / SDK / MCP
同じREST APIを利用
| レイヤー | 技術 | 役割 |
|---|---|---|
| API | Cloudflare Workers + Hono | Webhook受信・REST API・Cron処理 |
| データ | Cloudflare D1(SQLite) | 友だち・シナリオ・配信履歴・スコア(無料枠は5GB) |
| UI | Next.js 15(Cloudflare Pages) | マルチアカウント管理・オペレーターチャット |
| LIFF | Worker内配信 | LINE内完結のフォーム・予約 |
| SDK / MCP | @line-harness/sdk / @line-harness/mcp-server |
外部連携・Claude Codeからの操作 |
monorepoはapps/(worker・web・liff)とpackages/(db・sdk・mcp-server・create-line-harness・update-engine ほか)に分かれ、セットアップCLIとMCPサーバーはnpmに公開されている。
配信機能:ステップ配信とBAN検知
ステップ配信はdelay_minutesで分単位に制御できる。Lステップなどの日単位より細かく、「30分後」「2時間後」も指定できる。タグの有無・スコア・フォーム回答での条件分岐も標準だ。最初のステップ(delay=0)は無料のreplyMessageを使うため、ウェルカムメッセージが配信数を消費しない。
BAN検知は3段階で状態を見る。
| ヘルス状態 | 判定基準 | アクション |
|---|---|---|
| normal | 正常な配信・受信状態 | 通常運用 |
| warning | 配信エラー率の上昇・応答遅延 | 管理者に通知、配信頻度の自動調整 |
| danger | 高エラー率・API制限検知 | ワンクリックで別アカウントへ移行(友だち・タグ・シナリオを引き継ぎ) |
ステルス送信を有効にすると、配信にジッター(ランダムな時間差)を入れてバッチ間隔をばらつかせる。一斉配信を機械的に見せない狙いだが、BANを防げる保証はない。そのぶん配信速度は落ちるので、速報性が要るキャンペーンには向かない。danger後の移行はpool機能として実装され、複数アカウントへの振り分けと組み合わせられる。
IF-THEN自動化は、トリガー7種(友だち追加・タグ付与・フォーム送信・キーワード受信・スコア閾値到達・URLクリック・カレンダー予約)とアクション6種(タグ追加/削除・シナリオ開始/停止・メッセージ送信・リッチメニュー切替・Webhook OUT・通知ルール発火)を組み合わせる。Webhook OUT/INでStripeやSlackとも連携できる。
管理画面は友だち数やシナリオ数のダッシュボードを中心に、配信・分析・管理の3区分で機能が並ぶ。スタッフはOwner / Admin / Staffの3ロールで、ロールごとにAPIキーを発行できる。
インストール手順:npx 1コマンドで約5分
必要なものは、Cloudflareアカウント(無料プランで可)、Messaging APIチャネル付きのLINE公式アカウント、Node.js 22以上、pnpmだ。セットアップはこの1行で始まる。
npx create-line-harness
CLIはCloudflare認証(wrangler login)、D1の作成とマイグレーション、Worker・管理画面のデプロイ、LINE credentialsの登録、LIFFアプリの作成、初回Ownerユーザーの作成までを進める。READMEの所要時間は約5分で、完了するとhttps://<your-name>-admin.pages.devで運用を始められる。本記事ではCLIの実行までは行っておらず、所要時間はREADMEの記載だ(未検証)。
動作確認は次の順で行う。
| ステップ | 確認方法 | 期待される結果 |
|---|---|---|
| Webhook疎通 | LINE Developers Console → Webhook設定 → 「検証」 | 成功メッセージ |
| 友だち追加 | 管理画面の「LINEで体験する」から追加 | 友だち一覧に表示 |
| 配信テスト | 管理画面からテスト送信 | LINEアプリで受信 |
管理画面にログインできないとき
管理画面はメールアドレスとパスワードではなく、ログインページにAPIキーを入力する方式だ(公式Wiki Getting Startedに「v0.5.1+」と明記)。環境変数API_KEYは常にowner権限で、スタッフ管理を有効にするとstaff_membersテーブルのapi_key列と突き合わせてロールを判定する。
| 症状 | 原因 | 対処 |
|---|---|---|
| ログイン画面が出ない・404 | Worker側のURLを開いている | 管理画面は<プロジェクト名>-admin.pages.dev |
| APIキーを入れても401 | API_KEYシークレットの不一致 |
npx wrangler secret listで確認 |
| ログインできるがCORSエラー | 管理画面のOriginがWorkerのADMIN_ORIGINに無い |
npx create-line-harness@latest update |
| 友だち一覧が常に空 | Webhook無効/署名不一致 | LINE Developers ConsoleでWebhookと署名を確認 |
認証の切り分けは、管理画面を通さずAPIを直接叩くのが早い。200ならAPIキーとWorkerは正常で、問題は管理画面側のURLかCORSに絞れる。401ならAPIキー自体が合っていない。
curl -s -o /dev/null -w "%{http_code}\n" \
-H "Authorization: Bearer $API_KEY" \
https://<your-worker>.<your-subdomain>.workers.dev/api/friends
Claude Code連携:MCPサーバーで管理画面操作をAIに任せる
全APIは型付きTypeScript SDK(ESM/CJS両対応・ゼロ依存)でラップされ、Claude Code用のMCPサーバーも同梱されている。主なツールは次のとおりだ。
・list_conversations / get_conversation — 未返信会話をAIが監視
・create_scenario / manage_scenarios(add_step・update などの操作) — シナリオをAIに作らせる
・broadcast / send_message — メッセージ送信(誤送信を防ぐため要ユーザー確認)
登録は1行で済む。登録後は「未返信の会話を一覧して」のような自然言語で操作できる。MCPの一般的な仕組みは MCPサーバーの作り方ガイド を参照してほしい。
claude mcp add line-harness -- npx -y @line-harness/mcp-server
制限事項と導入前の確認:LICENSEとバージョンの現状
- 技術スキルが必須 — Cloudflare Workers・D1・LINE APIの知識が前提。障害対応・カスタマイズ・更新追従は内製になる。エンジニアがいない組織にはSaaS型を勧める
- 無料枠の上限 — 1日10万リクエスト・D1は5GB。5,000友だちを超える規模は有料プラン(月$5〜)への移行を見込む
- セキュリティは自己責任 — Channel Secretの管理、更新追従、アクセスログの監視は運用側の仕事
- データ移行は手動 — Lステップ等からの自動インポートは未提供で、大規模移行にはスクリプトが要る
- 1.0未満の開発途上 — マイナーバージョンで仕様が変わりうる。更新前にCHANGELOGとリリースノートを読む。v0.24.3(2026-10-20)は、利用中の連携があれば署名キー・送信側の準備が更新前に必要と明記している(Meet コールバックの署名検証必須化、Stripe Webhookの署名キー未設定時は503で拒否)
- バージョンの見方 — README冒頭の「現バージョン」はv0.21.0のままで、ルートの
package.jsonは0.24.3、タグ・GitHub Releasesとも最新はv0.24.3だ。READMEの表記は遅れることがある
ライセンスは、以前の版では状況が違った。READMEにMITの宣言はあったが、v0.18.1の時点ではリポジトリにLICENSEファイルが無かった。現在は2026年8月24日のコミット(PR #249)でMITのLICENSEが追加され、最初に含むタグはv0.23.0だ。GitHubのライセンスAPIもMITを返す(2026年10月20日に確認)。v0.22以前のタグを固定して使っている場合は、そのタグにLICENSEが含まれない点に注意したい。ルートのpackage.jsonは"private": trueで、licenseフィールドは無い。
curl -s https://api.github.com/repos/Shudesu/line-harness-oss/license | grep spdx_id
まとめ:LINE harnessを選ぶべきケース
BEFORE ADOPTING導入前の3点
入れる前に3つだけ確かめる
-
1.内製できる人がいるか
障害対応・更新追従は自分で持つ
-
2.バージョンはタグで見る
READMEの表記は遅れることがある
-
3.更新前にリリースノート
v0.24.3は署名キーの事前準備が必要
| 条件 | LINE Harness OSS | SaaS型CRM |
|---|---|---|
| 技術チームがいる | 最適 | 使えるがコスト高 |
| 技術チームがいない | 運用困難 | 最適 |
| 月額コストを抑えたい | 0円〜 | 1〜2万円/月 |
| BAN対策が必要 | 3段階検知+自動移行 | 未対応 |
| 複数アカウント管理 | 標準搭載 | 別契約 |
| 独自機能・API連携・AI操作 | ソース改変可・全機能公開+MCP同梱 | 非公開 |
技術チームがあれば、SaaS月額ゼロ・カスタマイズ自由・BAN対策を同時に得られる数少ない選択肢だ。なければSaaSを選ぶほうが素直で、「無料」の代わりに運用・保守・障害対応を自分で持つことを理解したうえで決めてほしい。MCPサーバーを複数使うなら MCP Manager:MCPサーバー 作り方から一元管理まで対応するAIアシスタント統合管理ツール のような管理ツールも参考になる。CLAUDE.mdとSKILL.mdで配信運用をスキル化するなら Claude Codeベストプラクティスガイド、Cloudflare側の運用は Cloudflare Skills Guide が参考になる。
参照ソース
- GitHub: Shudesu/line-harness-oss — ソースコード・README・LICENSE・CHANGELOG
- GitHub Releases: Shudesu/line-harness-oss — 最新v0.24.3(2026-10-20)
- 公式Wiki: Getting Started — セットアップ手順・管理画面ログイン方式(APIキー入力・v0.5.1+)
- 公式Wiki: Staff Management — owner/admin/staffロール
- YouTube: LINE Harness 導入の全手順 — 公式導入デモ動画(約20分)
- npm: create-line-harness — セットアップCLI
- npm: @line-harness/mcp-server — Claude Code用MCPサーバー
- Cloudflare Workers ドキュメント — Workers・D1・Cron Triggers





