Blog

iOSアプリ開発を行う際に、ビルドやファイル追加で失敗しない方法 【Claude Code編】

はじめに

こんにちは。
寺島です。

普段はマイニフティチームでスマホアプリ(マイ ニフティ)の開発に携わっています。

最近はAIでの開発が活発になってきましたね!
私は主にClaude Codeでの開発を行っています。

基本的には、快適に開発をお任せしている状況なのですが、
Claude CodeでiOSアプリの開発を行う中で、とてもネックになる部分が出てきました。

  • ビルドがうまくできない
  • 新規グループやファイルの追加が、Xcodeで認識されない

上記の2点で本当によく詰まってしまい、開発体験が著しく下がってしまう状況でした。

ビルドは、対象のシミュレーターを起動してみたいなことが苦手のようで、延々と転け続けていましたし、ファイル追加は、Xcodeprojの操作が苦手なようで既存の構成を壊してしまっていました。

最近は公式のMCPなどで解決ができるようなのですが、もっと手軽にスクリプトで解決する方法がありますので、ご紹介させていただければと思います。
この記事では、プロジェクトルートの.claude/配下にscripts/ディレクトリを配置し、CLAUDE.mdやSKILLS.mdから呼び出すパターンを紹介します。

scriptsの解説

.claude/scripts/ディレクトリにプロジェクト固有のスクリプトを配置します。
今回は、CLAUDE.mdなどから相対パスで呼び出す形で実現します。

嬉しいこと

  • ビルドで失敗することがなくなります
  • .xcodeprojを編集を代わりにやってくれます

ディレクトリ構成

1. ビルドスクリプト(.claude/scripts/on_build.sh)

実装例(iOS/Xcode):
※ 指定するシミュレーターは必ず利用できるシミュレーターを指定してください

実行権限を付与:

2. ファイル作成スクリプト(.claude/scripts/on_new_file.sh)

環境固有の部分があります。:

  • Dir.glob('*.xcodeproj').first – プロジェクトファイルの検索パターン(環境に応じて変更が必要)
  • project.targets.first – ターゲットの選択(複数ターゲットがある場合は適宜変更が必要)

実装例(Xcodeプロジェクトへの自動登録):

実行権限を付与:

CLAUDE.md/SKILL.mdでの活用方法

プロジェクトルートの.claude/CLAUDE.md等に以下を記載することで、Claudeにスクリプトの存在を伝えられます:

ビルド手順

コード変更後は必ず以下を実行してビルドを確認してください:
./.claude/scripts/on_build.sh

ビルドエラーが発生した場合は、エラーメッセージを確認して修正してください。

新規ファイル作成時

新規ファイルを作成した場合、以下を実行してプロジェクトに登録してください:
./.claude/scripts/on_new_file.sh <作成したファイルのパス>

まとめ

scriptsパターンは、Claude Codeにおける「プロジェクト固有の処理」を一箇所に集約し、プロンプトをシンプルに保つための設計パターンです。

設計の利点:

  • Claudeは標準化されたインターフェース(スクリプト)を呼び出すだけ
  • チームでリポジトリ共有するだけで環境構築が完了

この仕組みにより、Claude CodeでのiOS開発がより快適になります。

おわりに

色々な実行方法がある中で、今回は選択肢の一つとして.shで管理する方法をご紹介しました。
もっと快適にするために、サブエージェントから呼び出したりなど様々あると思います。
色々試すものの一つになれると幸いです。

ニフティでは、
さまざまなプロダクトへ挑戦する
エンジニアを絶賛募集中です!
ご興味のある方は以下の採用サイトより
お気軽にご連絡ください!

ニフティに興味をお持ちの方は
キャリア登録をぜひお願いいたします!

connpassでニフティグループに
参加いただくと
イベントの
お知らせが届きます!