作ったもの:「ムギちゃん」LINEBot
最近、LINEBot × AIの組み合わせで「ムギちゃん」というLINEBotを作ってみました。
当初の野望:「今日の私LOG Bot」
実は最初に作ろうと思ったのは、めちゃくちゃ本格的なライフログ・SNSサービスでした。
元々の構想
- ターゲット: Z世代女性(18-26歳)
- コンセプト: 日常の行動・感情を記録しながら友達と比較・競争するSNS型ライフログ
- 主要機能(予定):
- 日常ログ記録(気分・行動・使ったアイテム・関心事)
- AI占い+パーソナライズアドバイス
- 友達・グループ比較機能
- 競争・ランキングシステム
- トレンド分析・パーソナルインサイト
壮大な設計書まで作って、Z世代の心理分析からビジネスモデルまで1000行超のドキュメントを書いていました。収益予測とか競合分析とか、まるで本当にサービスをローンチするみたいに。
もっと最初期には、TikTokをスクレイピングしてZ世代のトレンドを分析するみたいなことも考えていました。ただ結局、すでにトレンドになっている情報を出す意味があるのかわからない。あと表面上のトレンドを取得しても、所属しているグループによってトレンドって違うから、もっと友達とか近い人たちのトレンドみたいなのを取得した方が面白いなと思いました。
結局このアイデアもピボットしてムギちゃんになりましたが…。まぁ個人的には「みんなどう生きているんだろう」みたいなのは、自分もそうですが積極的に聞きに行こうとはしないけど知りたい、みたいな人は一定数いるんじゃないかなーってなんとなく思うので、いつの日か満足する形で作れたらいいですね。
なぜピボットしたのか
理由は、途中で妻に「それ何が面白いん?」って言われて、確かになーってなってピボットしました。
元々の構想では:
- 友達の日常をさりげなくウォッチできる
- みんなでランキング競争
- AIが個人の傾向を分析してくれる
みたいな感じだったんですが、友達同士で使ってもらうハードルも高いなと。
実現自体はできたら面白いかもしれないですが、結局のところ「ユーザーがどういう行動をするのか私が知りたいし、他のみんなも知りたいよね?」みたいなところを主軸にしたい気持ちが先行しすぎて、それよりの機能になってしまっていました。使いたくなるポイントが薄いなと感じたんです。
言葉だけで見たら悪くはないんですが、それを具体的に実現しようにも「まずなんでそれを使ってみようって思えるん?」みたいなところが弱くて。結局、始めの箇所に利用するポイントみたいなのがなく、あくまで「みんなが使っているからこそこういうことができるよね」みたいな部分ばかりって感じでした。
そんなこんなで、壮大な構想は諦めて、最終的にはもっとシンプルな「ムギちゃん」というLINEBotを作ることにしました。元々の野望と比べると大分しょぼくなりましたが、まずは何か動くものを作ってみようということで。
技術スタック
- LINEBot API
- Next.js (API Routes)
- Prisma + Neon (データベース)
- OpenAI API
- Vercel (デプロイ)
全部AIで作りました。最初らへんの構築とか実装はDevinに作らせて、あとはGitHub CopilotのAgentモード使いながら1〜2日くらいで動くものができました。そっから色々調整したりとか無駄に機能をリッチにしようと頑張らせて、一歩進んで二歩下がりながら、最終的には1ヶ月くらいなんやかんやかかった気がします。
結果的にできた機能(実装状況不明)
正直、AIに全部丸投げして1400行くらいのhandlerになってしまったので、何がちゃんと動いて何が動いていないのか分からない状態です。
一応確認できそうな機能
-
ムギちゃんとの友好度機能 友好度によって話し方が変わる(はず)。でも正直変わってるのかよく分からない。
-
アンケート機能 ムギちゃんからアンケートが来る機能。AIで自動的にアンケートを生成できるけど、クイックリプライで選択肢を設定できず、意味なく選択肢を言ってくるだけ。返答しても会話を覚えていないので意味は薄い。定義済みのアンケートに関してはクイックリプライによる返信は機能している。
-
プロフィール機能 よく分からない実績機能があって、取得している実績数は確認できるが、なんの実績を取得しているかは分からない。
-
占い機能 これは結構気に入ってる。生成が遅いけど、血液型とか生年月日でそれっぽい占いをAIが作ってくれる。途中まで詳細なプロフィール設定機能があったんだけど最終的にどこかに消えてしまった。
-
気分記録機能 元々は毎日のログを取得して振り返りができたらいいなと思って作った機能。LINEBotだと簡単に気分を登録しやすいと思ったけど、履歴確認がどこでできるのか全く分からない状態に…。
-
普通のAIチャット それ以外の普通の返信はAIが自動で返信する。ただし会話履歴を保持していないため、常にリフレッシュな状態で関西弁で適当に喋ってくる。
「よく分からないけどこんな感じの機能」という面白さ
AIで機能を作らせているからこそ、「こっちも意味わかんないけど、こんな感じの機能なんだよね」みたいな紹介の仕方しかできないのが逆に面白いなって思います。
普通だったら自分で作ったから「この機能はこういう意図で、こうやって動きます」って説明できるんですが、AIに丸投げして作らせたものは「多分こういう機能だと思うんですが、正直よく分からないです」みたいな感じになる。
逆にめっちゃ頑張って批判されるよりも、幾分かは気楽に「よく分からないけどこんな感じの機能」って言えるのがよかった点?です。
とりあえず動いてはいるので、興味がある人はLINEで友達登録してみてください。ただし、OpenAIの課金制限やLINEBotの無料プランの制限で予告なく停止する可能性があります。

ムギちゃんLINE BOT

友達登録はこちら
LINEBotを作ってみて感じたこと
インターフェース面での発見
-
リッチメニューやクイックリプライが必須 LINEBotはテキストでアクションを実行する関係上、簡単に押せるコマンドがないと使いづらい。
個人的にはクイックリプライが気に入りました。リッチメニューと違って画像を用意しなくても使えて便利。ただ、絵文字変換候補が出る端末だとクイックリプライを押す時に邪魔だったり、次の会話が来た時に消えてしまうのが不便。
-
Flex Messageは結構いい感じ Flex Messageを使うと、リッチにメッセージをカスタマイズできて良い。ただ、ボタンのアクション文字列管理をちゃんと考える必要がある。AIに丸投げしていると適当にやられて動かないことが多い。
常にヘルプでコマンド確認させるのはだるいけど、リッチメニュー用意するのもめんどくさかったのでクイックリプライで妥協しました。むかーしLINEBot作った時はなかった機能な気がするので、便利になったなーって感じです。
技術的な課題
-
状態管理が大変 Webと違ってインターフェースが簡素になる分、複雑なものを作ろうとすると状態管理が大変。
状態をDBで管理しないと、前の会話状態を覚えていないので、アンケートの回答なのか普通の返信なのかを判断できない。この辺りは上手く実装できていない気がする。
-
すべてのメッセージが同じhandlerに流れる 普通のメッセージもアクションも、すべて同じhandlerで受け取る必要があるので、処理の分岐が複雑になった。AIがclass作ってserviceを分けてくれたけど、普段Web開発でClassを使わないので、どこで何をやっているのか全く分からない状態に。見るのも直すのもだるくて、結局AIに修正を頼むことが多かった。
-
開発後半がしんどかった 最初は楽しかったけど、1400行のhandlerを編集するのに時間がかかるように。AIが修正しては壊れ、修正しては別のところを放置し、全く動かない状態が続いてイライラ度が半端なかった。
LINE というプラットフォームの良さ
みんなが日常的に使っているアプリだからこそ、面白いものや使ってみたいと思えるものをbotとして提供できたら、導入の敷居は低いし他の人にも送りやすい。
LINEというインターフェースの使い方自体は知っているので、特別な学習コストもかからない。なので、LINEBotは比較的簡単に作れるし、使ってもらいやすいのかなーと妻に使ってみてもらいそう感じました。
ただ、リッチなものを作るのはしんどそう。Webみたいに「このページにはこのコンポーネント」って分けられないので、個人的にはWebの方がやりやすい。デザインを作らなくても良いのは便利だけど。
AI開発を使ってみた感想
良かったこと
-
とにかく早い AIでアプリケーションは本当に早く作れます。このLINEBotも実際に動かせるようになったのは1〜2日くらいでした。
-
ドキュメント調べてもらえる テスト書かせながら一つ一つ作らせたり、ドキュメントを調べさせて実装してもらった内容はちゃんと動くし使えます。
大変だったこと・反省点
-
プロジェクトの概要をちゃんとドキュメント化するべき 何がしたいかを整理しておかないと、AIが判断に迷う。それっぽく良さそうに思える実装をいとも簡単に作ってくるからワクワクするけど、蓋を開けてみたら大したことなくてがっかりしていた。
-
指示書(instruction)はちゃんと作る 最低限何のコマンドを実行してもいいか、どれが使えるかくらいは書いておかないと、bunのプロジェクトなのにnpmを使ってくる。
-
一つの会話で多くのことをやらない方がいい 会話が溜まってくると、やって欲しくないことをやってきた時にそれを継続してやりがち。複数を一気に作らせると、仮の実装や適当な実装で進められて、それっぽくはできているけど繋ぎ込みが上手くいっていないことが発生する。
ちゃんとテスト作らせて、動くかAIに判断させた方がよかった。動くのを確認するのが人間だと、できてないのにできたって言いがち。
複雑な気持ち
-
実感がない 確かにできてはきているけど、できていないなんとも言えない感覚がある。エンジニアとしては、ソースコードを理解していないのに自分の理解度より高い実装をされて動いているって、複雑な気持ち。
把握していないのに動いているのが怖いし、直さなきゃいけなくなった時に直せないって不安になる。
あと「こういう技術を使っています!」って言うのに、それを使いこなせていない(実際に自分が書いていない)のに言っちゃっていいのかなって思ってしまう。
とは言え、その分愛着を持って作らないなとも思った。小さく作って出して改善していくなら、変に愛着持ってこだわるよりもさっさと出して改善していく方がいい。このLINEBotも、もし自分が手間暇かけて作っていたら「これで出すのはよくない」とか思って結局出せなかったと思う。AIに作らせて出すっていうのはいい経験になった。
AIに全部丸投げした結果の課題
-
1400行のhandlerによる複雑化 AIに全部任せた結果、1400行のhandlerファイルに。どのテキストに反応してどういう処理が動くのか、どの機能とどの機能が繋がっているのか全く分からない状態。
-
AIの精度悪化 handlerが長すぎるせいで、AIの精度も悪くなった。修正を依頼しても、その修正で別の機能が勝手に変わってしまったり、そもそも繋がっていなかったり。
-
改善の難しさ 仮にこれをリリースして改善するってなっても、簡単に変更を加えるのが難しい状態に。元の機能を壊したくないのに勝手に変わっちゃうし、そもそも何が繋がって何が繋がっていないのか分からない。
普通にAIに全てをやらせすぎたのが原因。ぶん投げたらそりゃ好き勝手やられるのは仕方ない。今回みたいな量になってしまうと見る気も失せる。
プロダクト開発での学び
課題発見の難しさ
AIにニーズ調査をさせることはできるし、それっぽい統計データを調べさせたり、Xから声を拾ったりもできます。けど、結局よく分からない。
AIが拾ってきたニーズや課題も、結局「いいか」と判断できる軸が自分にはありません。直感で「いいな」って思うタイミングはあったのですが、それを具体化させると「違う」ってなります。
MVPの考え方
MVPで完璧なものや充実しているものなんて作れないし、仮説を試したいからMVPって最小のものを作るんだから、足りなくて当たり前ではあります。だからこそ早く作って早く試してもらう必要がありました。
でも自分は「これで出したらよくない」って思って、改善改善みたいに気になるところを直しまくっていました。出してみて反応を見るべきだったのに、動いていない機能とか、自分が使ってみて「何が面白いん?」ってなってしまいました。結局AIにやらせても一定数こうなってしまうんだなとつくづく自分の性格が嫌になります。
ユーザー視点の難しさ
自分にマッチしていないものを作るのは難しいです。かといって自分にマッチするものを作ろうと思っても、自分のことしか考えていないし、それを具体的にどうやってみんなに使ってもらうかを考えられません。
今後の方針
小さく作って出す
作ってみようって思えるものがないとそもそも作れないので、少しでもいいなって思ったらそれをしょぼくてもいいから最小で作って出す。これをとにかくやっていこうと思う。
仮説の状態で出してもないのに、ピンとこないからと修正して「うーん違うな、やっぱこうかな?」とやっているうちに悶々としてきて余計にしんどくなる。「これで使われるのか分からないな〜」って思うなら、まぁいいだろうくらいで出してみて、そこから何がダメだったんだろうで改善するようにしたい。
マーケティングを早い段階で
誰かに使ってもらう、触ってもらう、見てもらうってことを早い段階でやり始めるべきだった。「こういうの作ろうと思う」ってアイデアの段階であっても、ブログに載せるとかそういうのをやった方がいいなって思った。
次はAI SDKとMCPを作ってみたい
本当はAIとかMCPみたいなところを使ってサービス作りたかったのが色々周りに回って全く関係ないもの作ってしまったので、今はMCP作ってみたい。サービス作るってよりかはシンプルなものをvercel/mcp-adapter使って作ってみたいなと思っている。
全部AIに作らせるのは単純に怖いし、ただ待っているだけで作っても自分の力にもならないしつまらないので、めっちゃしょぼくてもいいから一緒に作って一緒に理解して出すってことをやっていきたい。
まとめ
結果的には「結局ただのAIチャットと何が違うのか分からない」仕上がりになってしまいました。見せ方うまかったらもっといい感じに見せれるかもですが、そんな技量もないので、こんな感じの評価しかできないですね。
当初は壮大な設計書まで作って、Z世代女性向けのSNS型ライフログサービスを作ろうとしていたのに、最終的には「よく分からないけどこんな感じの機能があるムギちゃん」というLINEBotになった。でも技術的にも考え方的にも学びは多かった。
特にAIに全部丸投げする危険性を身をもって体験できたのは大きな学び。1400行のhandlerになって、何がどう動いているのか分からなくなったのは反省点。
でも逆に、よく分からないけどこんな機能という紹介の仕方ができるのは、AI開発ならではの面白さかもしれない。自分が作ったものなのに自分でもよく分からないって、ある意味新しい体験。
AIがあれば確実にチャレンジできる幅が広がって楽しい。自分が今まで時間がかかっていたものを省略できたり、悩みを整理したり、より悩ませてくれたり。簡単にできそうって思わせてくれるけど、やっぱりそう簡単にはいかない。でも着実にチャレンジできる幅は広がっている。
とにかく作って出して使ってもらう。これしかない。
もっと自分をアピールできるようになりたいし、焦ってはないけど焦っているので、お金稼げるようになりたい。もっと宣伝したい!と最近は挑戦できて充実しているなと感じています。
興味がある方はぜひLINEBotを触ってみてください。そして、このブログも見てくださいって感じです〜