
あんなに苦労した Flutter 環境構築が、Claude Code と会話するだけで終わった話
こんにちは、リテールアプリ共創部のhorioです。
Flutter で開発を始めるとき、最初に立ちはだかるのが環境構築ではないでしょうか?
私は正直、Flutter の環境構築にあまりいい思い出がありません。
flutter doctorを実行するたびに増えたり減ったりする ✗ を、一つずつ潰していく- Xcode・Android Studio・JDK・CocoaPods……どのバージョンの組み合わせなら動くのか、ドキュメントとエラーメッセージを行き来する
- やっと
flutter doctorが全部 ✓ になったと思ったら、今度はプロジェクトのビルドが通らない Command PhaseScriptExecution failed with a nonzero exit codeのような、何が悪いのかまったく教えてくれないエラーに出くわす
特につらいのが最後のパターンです。
エラーメッセージで検索しても原因は人それぞれで、試せることを片っ端から試していきます。
flutter clean をして、pod install をやり直して、最後は DerivedData を消して祈る。
それで直ったとしても、結局何が原因だったのかはわからないままです。
「なんかわからないエラーが、なんかわからないけど直った」の繰り返し。暗闇の中を手探りで進むような作業は、メンタルにも堪えます。
環境構築は「アプリを作る前の準備」でしかないのに、毎回かなりの時間と気力を持っていかれていました。
そんな中、新しく Flutter のプロジェクトに参加することになり、まっさらな Mac から環境を作り直す機会がありました。そこで今回は、Claude Code に「Flutter の開発環境を準備したい」と相談するところから始めてみました。
結果から言うと、私が手を動かしたのは パスワードの入力と、インストーラのボタンを押すくらい でした。
バージョン選びも、ビルドエラーの原因調査も、ほぼ Claude Code が進めてくれています。
この記事では、その過程と「これまでの環境構築と比べて何が楽だったのか」を、感想を中心にお伝えします。
環境
| 項目 | バージョン |
|---|---|
| macOS | 26.6 |
| Flutter | 3.44.1(FVM で管理) |
| Xcode | 26.6 |
| Android Studio | 2026.2 |
| JDK | Temurin 17 |
| Claude Code | デスクトップアプリ(Code タブ) |
やったことの流れ
ここからは、実際にどんな流れで環境構築が進んだのかを紹介します。
私が Claude Code に送ったのは、ほとんどが短い一言です。
1. 「何を準備すればいい?」と聞いてみる
最初に送ったのは、こんなメッセージでした。
Claudeを使ってFlutterアプリの開発を進めるにあたり、準備が必要なことを教えて
一般的な手順が返ってくるのかと思っていたら、Claude Code はまず私の Mac の状態を調べてくれました。
それを踏まえたうえで、必要なものを一覧にしてくれました。
「一般論」ではなく「この Mac に足りないもの」が返ってくるのは、最初から少し感動しました。
2. 「手伝って」の一言でインストールが始まる
続けて「開発環境の準備を手伝って」と送ると、Claude Code が Homebrew で Flutter と CocoaPods をインストールし、VS Code の Flutter / Dart 拡張機能まで入れてくれました。
最後に flutter doctor を実行して、残っているのは Xcode と Android Studio だけ、という状態まで持っていってくれます。
App Store でのインストールや sudo が必要な操作のように、Claude Code が代わりにできないものは「ここはご自身で」と手順つきで案内してくれました。
3. プロジェクトに合わせてバージョンを選んでもらう
今回の目的は、参加するプロジェクトのテンプレートをビルドできるようにすることです。
そこでリポジトリの URL を渡して、「これをビルドできるようにしたい。バージョンのおすすめはある?」と聞いてみました。
すると Claude Code は、リポジトリの中身を読んでバージョンを決めてくれました。
.fvmrcから、Flutter は 3.44.1 を FVM で固定していること- Gradle の設定と CI のワークフローから、JDK は 17 が前提であること
- Flutter 3.44.1 の時期と App Store の提出要件から、Xcode は 26.x がおすすめであること(出たばかりの 27 は避ける)
さらに、Android Studio に同梱されている JDK が 25 だと気づいて、「CI と揃えるために 17 を入れて、Flutter が使う JDK も 17 に設定する」というところまで提案してくれました。
これまでなら、バージョンの組み合わせはドキュメントや過去の記事を読み比べて決めていました。
今回は「このプロジェクトの設定ファイルと CI がこうなっているから、このバージョン」と根拠つきで出てくるので、迷う時間がありませんでした。
4. Xcode と Android Studio の初回起動
ここは私の手作業です。
Xcode をダウンロードして、Android Studio の初回セットアップウィザードを進めました。
Xcode の初回起動で出てくるコンポーネントの選択画面も、スクリーンショットを貼って「これどうしたらいい?」と聞くだけで済みました。
「iOS にはチェックを入れる、watchOS や visionOS は不要、AI の補完モデルはお好みで」と、項目ごとに教えてくれます。
5. clone からビルドまで
最後は、テンプレートを clone してビルドするところまでです。
clone 先をどこにするか相談すると、既存のリポジトリの置き場所に合わせてホーム直下を提案してくれました。
そのあと、Claude Code が次の作業を進めてくれました。
- リポジトリを clone する
fvm useとpub getを実行するflutter analyzeで静的解析をする- iOS(Simulator 向け)と Android(APK)をビルドする
その間、私がやったことは結果を待つだけです。
途中でエラーが発生していたようですが、それも Claude Code が勝手に対応してくれ、私がエラーメッセージを読むことは一度もありませんでした。
最終的に、iOS と Android の両方でビルドが通りました。
6. シミュレータとエミュレータで起動
ビルドが通ったら、「シミュレータで起動して画面を確認して」と頼むだけです。
Claude Code が iOS Simulator を起動してアプリをインストールし、スクリーンショットを撮って、テンプレートアプリのトップ画面が表示されていることを確認してくれました。
続けて「Android エミュレータでも確認して」と送ると、Android Studio のセットアップで作られていたエミュレータを起動して、同じように確認してくれました。
ここまでで、iOS と Android の両方で、テンプレートのアプリがビルドから起動まで動くことを確認できました。
私が手作業でやったこと
ここまでの流れを振り返って、私が自分の手で行った作業を書き出してみました。
| 作業 | 内容 |
|---|---|
| Xcode のインストール | ダウンロードして /Applications に置き、初回起動時のコンポーネント選択で iOS にチェックを入れる |
| Android Studio の初回セットアップ | セットアップウィザードを進め、SDK Manager で Command-line Tools にチェックを入れる |
| パスワードの入力 | JDK 17 のインストール時(sudo が必要) |
| Homebrew の設定 | FVM の配布元を信頼する brew trust の実行 |
これで全部です!!!
しかも、どれも「何をすればいいか」を自分で調べたわけではありません。
Claude Code が「ここはご自身で」と、実行するコマンドや押すボタンまで示してくれたので、私はその通りに手を動かしただけです。Xcode のコンポーネント選択画面に至っては、スクリーンショットを貼って聞いただけでした。
Claude Code がやったこと
一方で、Claude Code が進めてくれた作業はこちらです。
| 作業 | 内容 |
|---|---|
| 現状の調査 | Mac に何が入っていて、何が足りないかを確認する |
| ツールのインストール | Flutter、FVM、CocoaPods、Android Studio、VS Code の拡張機能 |
| バージョン選定 | プロジェクトの設定ファイルと CI を読んで、Flutter・JDK・Xcode のバージョンを決める |
| 環境の設定 | Flutter が使う JDK を 17 に設定し、必要なツールに PATH を通す |
| 状態の確認 | flutter doctor の結果を読み、私の見落としを指摘する |
| プロジェクトの準備 | clone、fvm use、pub get、静的解析 |
| ビルドと動作確認 | iOS と Android のビルド、シミュレータとエミュレータでの起動確認 |
こうして並べてみると、「調べる」「選ぶ」「実行する」「確かめる」のほとんどを Claude Code が担っていたことがわかります。
手作業で残ったのは「人がやるべきこと」だけだった
振り返ってみて興味深かったのは、手作業で残ったものの性質です。
- パスワードの入力:Mac の管理者権限を使う操作
brew trust:どの配布元を信頼するかという、セキュリティに関わる判断- Xcode や Android Studio の操作:App Store やアプリの GUI でしかできない操作
Claude Code は、sudo が必要な操作やセキュリティ設定の変更を勝手に進めることはありませんでした。
「なぜそれが必要なのか」を説明したうえで、実行するかどうかをこちらに委ねてくれます。
つまり、手作業で残ったのは「自分で判断して、自分で責任を持つべき作業」だけでした。
それ以外の面倒な部分はすべて任せられた、ということです。
使ってみた感想
最後に、これまでの環境構築と比べて何が楽だったのかを、感想としてまとめます。
「調べる時間」がほぼなくなった
一番大きかったのはこれです。
これまでの環境構築は、作業そのものよりも「調べる時間」のほうが長かった気がします。
公式ドキュメントを読んで、エラーメッセージで検索して、古い記事と新しい記事を見比べて、、
今回は、その「調べる」部分をまるごと Claude Code に任せられました。
私がやったのは、短い一言で頼むことと、返ってきた提案を読んで「それで進めて」と返すことくらいです。
「このプロジェクトなら、このバージョン」が根拠つきで出てくる
バージョン選びで迷わなかったのも大きかったです。
ネットで調べると「おすすめのバージョン」は見つかりますが、それが自分のプロジェクトに合うかどうかは、結局自分で確かめるしかありません。
Claude Code は、プロジェクトの .fvmrc、Gradle の設定、CI のワークフローを実際に読んだうえで提案してくれます。
「CI が JDK 17 だから、ローカルも 17 に揃えましょう」のように理由が添えられているので、納得して進められました。
「これって大丈夫?」をすぐ聞ける
環境構築中は、「この警告は無視していいのか」と不安になる場面がよくあります。
今回も、flutter doctor に「Android license status unknown」という表示が残り続けました。
言われたとおりライセンスへの同意コマンドを実行しても消えません。
これまでなら、ここで検索の沼にはまっていたと思います。。
Claude Code に聞くと、「最新の Command-line Tools ではライセンスの仕組みが変わっていて、今使っている Flutter の flutter doctor が、その状態をうまく読み取れていないだけ。ライセンス自体は Android Studio のセットアップ時に同意済みなので、ビルドには影響しないはず」と説明してくれました。
実際、そのあと Android のビルドは問題なく通っています。
あとで確認すると、これは Flutter 側の既知の不具合で、新しいバージョンの Flutter ではすでに直っていました。
今回はプロジェクトに合わせて少し前のバージョンの Flutter を使っていたため、表示が残っていたようです。
ひとりで作業していると不安になるところを、その場で相談できる。この安心感はかなり大きかったです。
画面を見せて聞けば済む
Xcode のコンポーネント選択画面のように、「どれにチェックを入れればいいの?」という場面でも、スクリーンショットを貼って「これどうしたらいい?」と聞くだけで済みました。
状況を文章で説明しなくていいのは、思っていた以上に楽です。
自分は「判断」と「承認」に集中できた
前の章でも書いたとおり、手作業で残ったのはパスワードの入力やセキュリティに関わる判断など、自分がやるべきことだけでした。
Claude Code が作業を進めて、私は要所で判断して承認する。
この役割分担が自然にできていたので、環境構築にありがちな「疲れたけど、何をやったのかよく覚えていない」という感覚がありませんでした。
むしろ、何がどう設定されたのかを説明つきで追えたぶん、これまでより環境のことを理解できた気がします。
まとめ
Claude Code を使ったことで、これまで半日〜1日かかっていた Flutter の環境構築が、1時間ほどで終わりました。
環境構築は年に1回もやらない作業なのに、覚えておくべきことが多く、負荷の高い作業です。
しかも本来の目的はアプリを開発することなのに、その手前で環境の仕組みまで理解する必要があり、初心者にはハードルが高いと感じていました。
Claude Code は、その負荷を大きく減らしてくれます。
ただし、丸投げはまだできません。
バージョンの選択や、管理者権限での操作など、判断の部分は自分に残ります。
判断の根拠を明確にするためにも、わからないことは Claude Code に聞き、仕組みもある程度理解しておくことが大事だと感じました。








