Claudeで本番アプリケーションを構築する:実際に機能したことと機能しなかったこと

長年の経験を持つがFlutter/Dartの知識はゼロのシニアバックエンド開発者が、Claudeを主要な開発ツールとして、iOSとAndroid向けの本番モバイルアプリ「Warantly」(保証管理)を構築しリリースしました。プロジェクトは本業の後の夜間時間を使って2.5ヶ月かかりました。
使用スタック
- フロントエンド: Flutter
- バックエンド: Laravel 12
- インフラ: Ansible(VPS環境全体をコード化し、単一の実行で再現可能)
Claudeの使用方法
開発者はClaudeを、有能だがコンテキストに制限のあるジュニア開発者のように扱いました。複数のセッションを並行して実行し、それぞれを単一の関心事に限定しました:
- 通常は同時に2〜3セッション、ピーク時には6セッション同時(バックエンド3、Flutter2、DevOps1)
git worktreesを使用して、セッションが異なる機能を競合なく作業できるようにしました- 開発者の役割:アーキテクト兼統合レイヤー — セッション間を行き来し、コンテキストを提供し、横断的な決定を行いました
Claudeの得意分野
明確に仕様化されたコンポーネントの高速で有能な初回草案。明確な仕様と範囲が限定されたものは、初回または2回目のパスで使用可能になりました。また、Claudeは開発者を不慣れな領域(ストアコンプライアンス、ペイウォール設定、インフラ構築など)に案内するのにも本当に優れていました。コード生成だけでなく、ガイダンスが必要な領域です。
問題点
1. UIバグ
最も大きな失敗モード。Claudeには画面を見る方法がありません。コードを分析し、修正を行い、「これで解決するはずです」と自信を持って言いますが、実際には解決しません。同じ視覚的バグに対して複数回のやり取りが必要でした。エージェントがUIのあるべき動作を推論する一方、実際の動作を見ることができないためです。回避策:大量のデバッグ文、手動テスト、Claudeに正確なランタイム出力とUIスクリーンショットを提供。フィードバックループ(計測、実行、報告)が視覚的なものの標準パターンとなりました。
2. セッション間の一貫性
バックエンドのエージェントが、Flutterエージェントが期待するものと一致しない応答形式を設計する可能性があります。Claudeは他のセッションで決定されたことを認識しません。開発者がAPIコントラクト、共有定数、命名規則の真実の情報源となり、それらを手動でセッション間でコピーする必要がありました。この手順を省略すると、統合時に不一致が見つかりました。
3. 長時間セッションにおけるコンテキストのずれ
静かに動作している長時間のセッションは、文脈を見失います。既に拒否されたパターンを再導入したり、以前の制約と矛盾したりします。そのことを知らせることはありません。出力は自身の履歴と一貫性を失います。解決策:セッションを集中させ、使い捨て可能に保つ。長くなったら新しく開始する。会話履歴に頼るのではなく、重要なコンテキストを構造化されたブリーフィングとして事前に投入する。
成功の鍵
開発者は初日からテストと静的解析を実施しました。Dart/Flutterのコードを専門家の目でレビューすることはできませんでしたが、自動チェックが品質ゲートとして機能しました。これがなければ、リリースの自信は得られなかったでしょう。「最も難しい部分は技術面ではなく、コントロールを手放すことでした。私は経験豊富な開発者で、コードを一行ずつレビューしなかったのは初めてのプロジェクトでした。プロセス(テスト合格、リンタークリーン、動作正しい)を信頼し、すべての関数を読むことに代えるのは、本当に適応が必要でした。」
アプリ
Warantly — 保証管理。購入品の追跡、レシート写真の保存、期限切れリマインダー、AIレシートスキャン、製品リコールアラート。無料で無制限の保証。ProではAIスキャン、リコールアラート、メンテナンススケジュールを追加。warantly.appで利用可能。
📖 全文ソース: r/ClaudeAI
👀 See Also

オープンソース手法によるClaudeとのエージェントAIパートナーシップ
開発者が、Claudeとの持続的パートナーシップシステム構築に関する25,000語の論文を公開し、セッション間で共有メモリ、認知モニタリング、複数AI相談機能を使用するオープンソーステンプレートをリリースしました。

本番AI IDEにおけるOllamaサポートを備えたマルチプロバイダーLLMフォールバックチェーン
Resonant Genesis AI IDEは、共有のUnifiedLLMClientライブラリと自動フェイルオーバーチェーンを使用して、30以上のマイクロサービスにわたって、ローカルLLMサポートをGroq、OpenAI、Anthropic、Geminiと同等の第一級プロバイダーとして統合しました。

OpenClawのQMDメモリ検索高速パスには静かなバグがありました
OpenClawの組み込みメモリ検索は基本的なキーワードマッチングを使用しますが、ユーザーはワークスペースのマークダウンファイル全体で意味検索を行うQMDに切り替えることができます。MCPorter経由の高速パスは3つのバグにより壊れ、すべての呼び出しが暗黙的に失敗し、より遅いCLI実行にフォールバックしていました。

MCPスリム:MCPツールのローカル埋め込み検索でコンテキスト肥大化を軽減
MCP Slimは、完全なMCPツールカタログを3つのメタツール(検索、説明、呼び出し)に置き換えるプロキシで、ローカルのMiniLM埋め込みを利用した意味検索を行います。これにより、コンテキストウィンドウを96%削減し、APIキーなしでオフライン動作を実現します。