Monaca
テクノロジー

AIでアプリ開発はどこまでできる?自律型AIを試してみた

エンジニアの藤原です。

最近では自律型AIエージェントと呼ばれるサービスが現れて、もはやコードを自分で書かなくても簡単なアプリくらいなら生成できてしまうといったことを耳にします。

今回は AIエージェント Devin を利用してモバイルアプリを生成してみたいと思います。

AIによるコード自動生成

準備

まずは Devin のアカウントを作成します。
アカウント作成時には GitHub もしくは GitLab との連携を求められます。

Git連携

Devinではただコードを生成するだけでなく、GitHub等と連携して生成したコードをpushしたりPullRequestを作成したりすることができます。
ここではどのアカウント・組織・リポジトリに許可を与えるか等の権限設定を行います。

次に料金プランを選択します。

料金プラン

以前は$500/月のプランのみでしたが現在は$20の料金プランが用意されています。
ただこれは月額$20のサブスクリプションではなく従量課金で$20分の初回利用料金を購入するプランとなっているため注意が必要です。
なおWindsurf(別のAIエージェント)のユーザに対しての$75分のギフトが得られました。

これで利用する準備が整いました。

アプリの生成

Devinを用いてモバイルアプリケーションを作成してみます。
今回は簡単なカメラアプリを作成することにします。

サインアップが完了すると以下のようなWebコンソールが表示されます。ChatGPTに似ていますね。
Devin IDE という開発環境も用意されているようですが、今回はこのWebコンソールから操作してみます。

Webコンソール

アプリ生成のプロンプトは以下のようにしました。
後ほどMonacaとの連携を試してみたかったのでプラットフォームとしてCordovaを指定しましたが、それ以外の細かい指示は省いてみました。

アプリ生成プロンプト

プロンプトを送信すると次のようにVM上で開発が開始されている様子のログが表示されます。

進行中

細かい指示を出していないにも関わらず、cordova-plugin-camera 等を自分で組み込んで開発が進んでいます。
AIが出力するコードは信用できないと言われがちですが、cordova build コマンドも呼び出されてエラーが出ていないということは、少なくともビルドが通るコードが返ってくることは期待できます。

生成完了

生成が完了しました。
わずか5分程度で生成されました。

ビルド

生成されたプロジェクトをMonacaにインポートしてビルドしてみます。
プロジェクトのzipファイルがダウンロードできるのでそのままMonacaへのインポートできました。
ビルドの際にいくつか警告が出てしまったので、Monacaの表示する警告に従って若干の修正を行います。

  • package.json
    • devDependenciesの修正
  • config.xml
    • Android スプラッシュファイルをオートリサイズモードに変更
      -xmlns:android の追加

これらはMonaca独自の仕様に合わせるための修正だったり古いバージョンのcordovaプラットフォームに基づいて生成されたのかな?という内容だったりで、修正にはそれほど手間はかかりませんでした。

実行結果

Monacaでのビルドに成功しました。
それでは実際の端末で動かしてみます。

Android実行

Android

  • 起動する
  • 写真の撮影は可能
  • アルバム欄に写真が表示されない

iOS

  • 起動しない

動作しない原因について詳しく調べていませんが、おそらく次のような要因だと思われます。

  • iOS : カメラの権限が足りない
  • Android : 画像を保存するストレージ周りの処理

このように残念ながら完璧に動作するものは生成されませんでしたが、これがたった5分で出力されることを考えれば将来のプログラマ不要論が出るのも納得です。
将来のことはともかく、そうなるまではこの便利なツールを活用することで作業の効率を上げたり面倒な作業を減らしたりできるのはないでしょうか。

author img for fujiwara
fujiwara

90年代からWindowsアプリ開発、動画関連のアプリ・システム開発に従事。 2022年からアシアルに参加。 Monacaチームでモバイルアプリ開発・Webフロントエンド・バックエンド開発を担当

記事一覧

前の記事へ

一覧へ戻る

「Monaca」カテゴリの最新記事

PAGE TOP