モバイル開発にClaude Codeを組み込むとき、最初につまずくのは「どのフェーズで何を任せるか」が分からないことだと思います。
Xcode専用のIDEに慣れていると、ターミナルベースのClaude Codeとどう連携すればいいか見えにくいです。iOS(SwiftUI)とAndroid(Kotlin)の両プロジェクトを持つ個人開発者として、実際に定着しているワークフローを順番にご紹介します。
Claude Codeがモバイル開発で得意なこと・苦手なこと
まず正直に整理します。
得意なこと:
- ボイラープレートコードの生成(ViewModelの基本構造、Repository層など)
- プロパティ名やメソッド名のリネームといったリファクタリング
- テストコードの生成(特にUnit Test)
- エラーメッセージからの原因特定と修正案の提示
- ドキュメントコメントの追加
苦手なこと・任せない方がいいこと:
- Xcodeのプレビュー確認が必要なUI調整(最終確認は人間がやる)
- 実機での挙動確認が必要なパーミッション系の実装
- App Store Connect周りの操作(Claude in Chromeの方が向いている)
この線引きをはっきりさせてから使うと、期待ズレが減ります。
SwiftUI開発でのClaude Code活用パターン
新機能追加のフロー
新しい機能を追加するとき、私がよく使う流れは次のとおりです。
まず自然言語でClaude Codeに機能の概要を伝えます。「ユーザーが保存した記事一覧を表示するViewが必要。CoreDataからフェッチしてListで表示、スワイプで削除できるようにしたい」という具体的な説明を入力します。
Claude Codeはまず既存のコードベースを確認し(CLAUDE.mdに主要なモデル定義を書いておくと精度が上がります)、提案コードを出してきます。ここで重要なのは、出てきたコードをそのままコピーするのではなく、「なぜこの実装を選んだか」をClaudeに聞くことです。実装の意図が分かれば、後のデバッグが楽になります。
CLAUDE.mdをプロジェクトのコンパスにする
SwiftUIプロジェクトでは、CLAUDE.mdに次の情報を書いておくと、セッション間での一貫性が大幅に向上します。
# プロジェクト概要
- アプリ名: [アプリ名]
- iOS最小バージョン: 17.0
- アーキテクチャ: MVVM + Repository
- データ層: CoreData + UserDefaults
- 認証: Sign in with Apple
# コーディング規約
- 命名規則: SwiftのAPI Design Guidelines準拠
- コメント: 日本語可(コードコメントのみ英語)
- テスト: XCTest使用、ViewModelは必ずテストを書く
# 既存の主要モデル
struct Article { ... }
class ArticleViewModel: ObservableObject { ... }このファイルがあるだけで、毎回「このプロジェクトはこういう構成で...」と説明しなくて済みます。
Kotlin(Android)でのClaude Code活用パターン
Gradleエラーの解決が特に強い
Android開発でClaude Codeが一番頼りになるのは、Gradleビルドエラーの解決です。依存関係の競合、バージョン不整合、AGP(Android Gradle Plugin)のアップデート時の移行作業——これらはエラーメッセージが難解なことが多いですが、Claude Codeにエラー全文を渡すと的確な原因と修正案を出してくれます。
「このビルドエラーを解決して」と伝えて、エラーログをペーストするだけでたいてい解決します。手動でStack Overflowを探す時間が劇的に減りました。
Jetpack Composeのスニペット生成
Jetpack Composeは書き方が独特で、慣れていない構文が多いです。「RecyclerViewのような無限スクロールリストをLazyColumnで実装したい」といった要件を日本語で伝えると、動作するコードの雛形を出してくれます。
ただし、Composable関数の@Previewは実際にXMLのように事前確認ができないため、生成されたコードは必ずAndroid Studioで実行して確認する習慣が必要です。
iOS・Android共通のデバッグフロー
クラッシュが発生したとき、Claude Codeへの渡し方で結果の質が変わります。
最も効果的なのは、クラッシュログ(stack trace全体)+関連するコードの両方を一緒に渡すことです。「このクラッシュが出た」だけより、「このコードを実行したらこのログが出た」と文脈を揃えると、的はずれな回答が大幅に減ります。
# Claude Codeに渡すフォーマット例
## 状況
[画面名]で[操作]したときにクラッシュが発生します。
## クラッシュログ
[stack trace全文]
## 関連コード
[エラーが発生しているファイルのコード]
## 試したこと
- [確認したこと1]
- [確認したこと2]
このフォーマットを使い始めてから、初回の提案で問題が解決するケースが増えました。
実際の時間短縮効果
個人開発で複数アプリを維持していると、新機能開発よりもメンテナンス作業(ライブラリアップデート対応、非推奨APIの置換、OS新バージョンへの対応)の比重が高くなりがちです。
Claude Codeを組み込んでから、こうしたメンテナンス作業の所要時間が体感で6〜7割減っています。特に「非推奨になったAPIを全ファイルで一括置換する」といった作業は、以前は1時間かかっていたものが10分程度で終わります。
新機能開発への集中時間が増えた結果、アップデートの頻度を上げられるようになりました。これがApp Storeの評価とダウンロード数に直接影響しているのを感じています。
全体を振り返って:最初の一歩として試してほしいこと
Claude Codeのモバイル開発への組み込みを試すなら、まず「既存のバグを一つ渡してみる」ことをおすすめします。新機能の生成より、デバッグの方が品質を判断しやすいからです。
クラッシュログとコードをセットで渡して、出てきた提案が的確かどうかを見てみてください。「使えるかどうか」が一回のやりとりでかなり分かります。その体感をもとに、徐々に任せる範囲を広げていくのが、無理なく定着させる方法だと思います。