🐦‍⬛

Swift × Kiro × ClaudeCode

に公開

✨ はじめに

こんにちは、株式会社ジャンボでiOSエンジニアをしている高岡です!

本記事では、AIエージェント型IDE「Kiro」、AIコーディングアシスタント「ClaudeCode」、そしてApple純正のUIフレームワーク「SwiftUI」を組み合わせて、AIと一緒にアプリを開発する体験をご紹介します。

弊社では、積極的にAIを活用して開発を進めています。
人によってスタイルは様々で、そういった点でも日々学びがあって面白いです!

🧰 使うツールをざっくり紹介

Xcode

iOSアプリ開発ではお馴染みApple公式IDE

Kiro

プロジェクト設計やタスク分解が得意なAIエージェント型IDE
「こんなアプリを作りたい」と伝えると、必要なタスクや構成を考えてくれます。
ClaudeCodeと組み合わせて使うことで、開発の見通しが一気に立ちやすくなります。
https://kiro.dev/

ClaudeCode

Anthropic社が提供するエージェント型コーディングツール
自然な言葉で「この画面を作って」や「このバグを直して」といったお願いをすると、コードを自動で生成・修正してくれます。
https://www.anthropic.com/claude-code

⚙️ AIエージェントの下準備

※ 各ツールの導入手順はここでは省きます。

Kiro

1. 日本語出力

~/.kiro/steering/japanese-response.md

2. Github MCP
今回のテスト実装では使っていませんが、便利なので追加しておきましょう!

~/.kiro/settings/mcp.json

ClaudeCode

・ CLAUDE.md

~/Git/Sample/SampleTodoApp

🤖 AIを活用した実装の流れ

ここでは、KiroとClaudeCodeを使って、どのようにSwiftUIアプリを作っていくか、その流れを簡単に紹介します。

📝 1. Kiroで実装計画を立てる

まずはKiroに「こんなアプリを作りたい」と伝えてみましょう!
Kiroはこの要望から「必要な画面」「やるべきタスク」「データ構造の設計」などを提案してくれます。
ここで重要なのは、Specモードを選択しておくことです!

Kiroに実装計画を立ててもらう

プロンプトを投げると早速仕様書を作り始めてくれます。
ここで生成されたファイルをClaudeCodeに読ませるため、望ましくない実装方法や不要な実装をこの段階で取り除くようにしておきましょう!
ClaudeCodeとのやり取りが増えるほど、AIが保持できるコンテキスト(会話の記憶)が圧迫され、最終的には意図が正しく伝わらなくなってきます。
そのため、できるだけ少ないやり取り、理想的には “1回のプロンプトで完結すること” を目指すのがベストです!

requirements.md(要件定義)
design.md(設計)
tasks.md(実装計画)

💻 2. ClaudeCodeでコードを書いてもらう

Kiroが生成した3つのファイルが格納されたディレクトリのパスをそのまま投げています!

今回はプランモードを選択しているため、Kiroの設計書をもとにClaudeCode側でも実装計画を立ててくれました!

上記を承認すると早速実装を始めてくれます!
以下は実装経過の一部を抜粋したものです。
初期状態のContentViewに一気にコードが追加されているのがわかると思います。

🔍 3. 自分でコードを確認・修正

ClaudeCodeはコードが書き終わるとビルドまでしてエラーがないかを確認してくれます。
もしエラーが出た場合は「この部分をこうしたい」と再度ClaudeCodeに投げると、修正版のコードを提示してくれます。
今回の実装ではエラーが1つ残った状態でタスクが完了してしまいました。
それに併せてContentViewに全てのコードが書かれていたため、責務ごとにファイルやディレクトリを分割するように1回のプロンプト(自然言語)で修正依頼を出したところ、希望通りのコードを提示してくれました!

✅ 完成!

💡 うまく進めるためのコツ

伝え方の工夫

AIにお願いする際は、できるだけ具体的に「何をしたいか」を伝えると、より良いコードが出力されます。
今回はあえて雑に投げてみましたが、それでもこれぐらいのクオリティを担保してくれます!

GithubMCPなどを活用すれば、言語問わず別プロダクトからの機能移植も割と簡単に出来ちゃいます!
その際に、CLAUDE.mdで移植先プロジェクトの仕様や実装時のルールなどがしっかり書かれているとAIから提示されるコードのクオリティも上がってきます。

トラブルが起きたとき

  • Kiroに戻って設計を見直す
  • AIに意図を聞いてみる
  • 最終的には人間の判断で調整する

🧑‍💻 最後に

AIが提示したコードから学べることもたくさんあるとは思いますが、最終的なジャッジを下すのは人間です。
あくまで "AIを使う側" としての意識を常に持ち、思考は停止させずに開発ライフをより豊かにしていきましょう!

📣 採用情報

株式会社ジャンボではエンジニアを絶賛募集中です!
少しでも気になった方はぜひカジュアルにお話しましょう!
Wantedly: https://www.wantedly.com/companies/company_725162
HP Recruit: https://jambo-inc.io/recruit/

📚 オススメ記事

Jambo Tech Blog

Discussion