あんパン

こしあん派

ChatGPTのWork with Appsを利用してXcodeでiOSアプリを作った雑感

ここ1年くらい睡眠用ASMR動画を流しながら寝ているのだが、つい先日、妻がロック画面に表示された動画の名前を音読する事件が発生したので、再発防止策として簡素なプレイヤーを自作して動画名を隠そうという気持ちになった。最近ChatGPTがXcode上で使えるようになったという情報を見たので実際に試してみた。

当該の記事はこれで、要はChatGPTのネイティブアプリを入れておくと、Work with Appsのショートカットを押したときになんかいい感じにアプリと連携してくれるよ、というもの。Xcodeだけじゃなく他のアプリケーション(iTerm2とかNotionとか)とも連携してくれるっぽい。

help.openai.com

以下雑感。

  • Xcodeと連携すると、Xcode上の最前面で表示している1ファイルだけをChatGPTに送信して、応答に含まれている差分を1ボタンで適用できるようだった
  • Clineみたいなものを想像しているとだいぶ期待外れだと思う
    • Plan/Actみたいなモードはないので「まず計画を示してください」みたいなプロンプトを無限に入力することになる
      • 無計画に実行するとだいたい気持ちとズレたものが出てきがちなので計画を洗練させる、みたいなのは一緒な気がする
    • 編集してほしいファイル以外を渡すと発狂する
      • VideoListView.swiftを渡すつもりがContentView.swiftを渡してしまうとContentViewの中にVideoListViewを作り始める、みたいなことが発生する
      • 適切なファイルを渡すためにも、どのファイルをどう編集するのか、お伺いをたてる必要がある
    • clinerulesみたいなものは存在しないので、新規に開く都度文脈を手書きすることになる
      • ペライチのドキュメントを用意して最初に手で読み込ませればよさそうではある
    • ファイルシステムを操作できない
      • 読み込みすらできないので、まず文脈を伝えるために1ファイルずつ送信してこれを覚えてくださいみたいなプロンプトを入力していた
      • 当然書き込みもできないので新規にファイルを作ってあげて、そのファイルを渡して…… みたいなことが発生する
    • 差分の適用が1ボタンでできるのは便利
      • Auto Approve的なやつもある
  • 簡単かつある程度定型的なものであれば意外とシュッとできる、気がする
    • とはいえプロンプトを結構な量入力しないとまともに動作しないので、熟達した人間が利用するものではないイメージ
      • マジの初心者が調べながら書くよりは速い、くらいだと思う
    • コード書くのだるいな、というときには有用かもしれない
  • つまるところ、裏側は普通のChatGPTであって、そこにソースコードを投げてやりとりできる、くらいの機能があるだけ
    • やりとりのログもChatGPT上に保存される
      • だらだらやっていると前のやつから消えていく? ような気がする
      • これって通常のChatGPTもこうなのかな、あんまり長くやりとりすることなかったので分かってない
    • 課金プランもChatGPT Plusで利用できるので、費用が定額なのは魅力的ではある
  • そうこうしているうちにWWDCでApple Intelligenceのいい感じグッズが発表されそうな予感はする