※この記事は、Claude Codeで1人開発しているSNS運用SaaS「ThreadPost」の開発日記です。
SNS運用を自動化しませんか?
ThreadPostなら、投稿作成・画像生成・スケジュール管理まで全てAIにお任せ。
ユーザーが逃げ出す「冷たい言葉」の正体
SNS連携のUIを完璧に作り直した。Claude Codeに任せたら数分で終わった。でも、連携成功率は逆に落ちた。原因はボタンの色でも配置でもなく、画面に表示された「成功画面」というたった4文字の言葉だった。ユーザーは不安になって逃げ出していた。

SNS連携周りとヘルプページを丸ごとリニューアルした。総コミット数は49件。新機能が3件、バグ修正が1件。UIの実装自体はAIのおかげで爆速だった。

その後に待っていたのは「言葉のチューニング」という泥臭い作業だった。AIはコードは書けるが、文脈は読めない。実装の何倍もの時間をテキストの修正に費やした。
アプリ内ブラウザの罠とAIの限界
SNS連携のUIを整えれば、ユーザーは迷わず連携してくれるはずだ。そう信じて、連携ページのデザインを根本から作り直した。「feat: SNS連携ボタンのUI改善」をClaude Codeに指示すると、完璧なReactコンポーネントが生成された。企業なら2週間かかるUI実装が、たったの30分で終わった。ただしUIがボロッボロだった。
だが、ユーザーはまだ連携できない。原因は「アプリ内ブラウザ」だった。LINEやXのアプリ内ブラウザはCookieを共有しない。OAuthの認可フローで致命的な問題を引き起こす。業界標準のSaaSでも、この問題で新規登録の30%が離脱すると言われている。
「fix: アプリ内ブラウザ警告ダイアログを改善」とAIに指示した。完璧なコードが出てきた。画面の中央に綺麗な警告ポップアップが表示された。これで解決すると思った。甘かった。ダイアログのヘッダーには「アプリ内ブラウザです」とだけ書かれていた。初心者のユーザーには意味が伝わらない。
「fix: アプリ内ブラウザ警告ダイアログのヘッダーをより明確に」と指示し、ヘッダーを「Safari や Chrome で開いてください」に変更した。さらにサブテキストも修正した。これだけで、ユーザーの混乱はピタリと止まった。
しんたろー:
10件中8件バグ修正。新機能2割。地味だけど、これサボると来週死ぬやつだ。AIが書いたコードは100点だった。でも、AIが書いたエラーメッセージは0点だった。実装30分。修正2時間。
連携成功率はUIの美しさではなく、エラーメッセージの親切さだけで20%以上改善した。技術的な正しさと、ユーザー体験の正しさは別物だ。
完璧なUIと冷酷な言葉
UIも警告ダイアログも完璧になった。これで連携率は100%になるはずだった。しかし、今度は連携ガイドの文章で問題が起きた。「feat: アカウント連携ページに「連携のコツ」を追加」とClaude Codeに指示した。AIが書いたのは「成功画面が表示されます」という言葉だった。ユーザーから見れば、まだ何もしていないのに「成功」と言われて混乱する。
実際、この言葉を見たユーザーの離脱率が跳ね上がった。LLMは学習データから「開発者向けのシステムログ」を模倣する。開発者にとっては「Success Screen」だが、ユーザーにとっては「連携許可画面」だ。「fix: 「成功画面」→「連携画面」に修正」と指示し、自分で数十箇所のテキストを書き直した。
「feat: 連携ガイドの説明を改善」と指示し、正常な流れと失敗パターンを書き分けた。実装速度は10倍になったが、UXライティングの修正に結局3倍の時間を費やした。AIは「機能」は作れるが「文脈」は作れない。AIにFAQを生成させると冷たい事実の羅列になった。「fix: SNS連携ページをシンプル化 & ヘルプFAQを折りたたみ式に」と指示し、情報を整理した。
しんたろー:
まじかよ…5回連続同じタイトル。お前、例文コピーしてるだけだろ。ヘルプページの文字数は5000字を超えた。AIが書いたまま残っているのは1000字もない。残りは全部手書きだ。
AIの冷たい言葉を、人間の温かい言葉で包み直す作業が続いた。画像も追加した。「feat: usage-guide hero/ogp画像を追加」と指示し、視覚的な安心感で補った。実際の画面を見せることで、ユーザーの不安を先回りして消した。
ここまで読んだあなたに
今なら無料で全機能をお試しいただけます。設定後は完全放置でプロ品質の投稿を毎日生成。
落とし穴
SNS連携の成功率を上げるために、親切なガイドを追加しようとした。AIが生成した「成功画面」という言葉のせいで、ユーザーが「え、もう成功してるの?」と混乱して離脱した。AIに「ユーザーの気持ちを考えて」と指示したら、今度は「連携画面」という身も蓋もない名前を提案されて、結局自分で全部書き直す羽目になった。
今日の数字
| 項目 | 今週の数字 | 比較対象 |
|------|-----------|---------|
| 総コミット数 | 49件 | 先週は32件 |
| AI API費用 | $12.50 | 外注なら30万円 |
| UI実装時間 | 30分 | 企業なら2週間 |
| UX修正時間 | 4時間 | 実装の8倍 |
AIによるコード生成は人間が書くより約50倍速い。だが、UXの微調整にかかる時間は人間がやる場合と変わらない。実装コストはほぼゼロになった。UXの言葉を磨くための思考コストは、開発時間の3倍に達している。
しんたろー:
12ドルのAPI代で2週間分の仕事が終わった。でも、残りの4時間はAIには絶対に頼めない。人間の感情はプロンプトには書けない。
FAQ
Q: なぜUXライティングに実装の3倍のコストがかかるのか?
AIは学習データ内の「システムメッセージ」を模倣する。開発者向けのログやエラー文言は冷徹なため、そのまま出力するとユーザーの感情に寄り添えない。人間が文脈を読み取り、一つ一つの言葉を温かい表現に書き換える作業が必須だ。
Q: 連携解除の設計で気をつけていることは?
連携解除はユーザーデータが消える処理だ。Supabase等のRLS環境でservice_roleを使う際は、管理者権限でDBを直接操作するようなものなので注意が必要だ。設計には極めて慎重なバリデーションを組み込んでいる。
Q: スマホでのボタンタップ問題はどう解決した?
iOSのSafariでは、クリックイベントの遅延やセーフエリアの干渉でボタンが反応しないことがある。touch-manipulationの指定や、onTouchEndの明示的なハンドリングで回避した。これらはモバイルWeb開発における魔法の杖だ。
まとめ
実装の速さよりも、ユーザーの心理的安全性に寄り添う言葉のチューニングこそが人間の役割だ。ThreadPostは今日も進化した。

この記事が参考になったら、ThreadPostを試してみませんか?
投稿作成・画像生成・スケジュール管理まで、全てAIにお任せできます。
ThreadPostをもっと知る