見出し画像

Copilot for Xcode をもう一度入れ直した

以前セットアップまでしたものの結局使わずにアンインストールしたCopilot for Xcodeを、今になってまた入れ直した。

使わなかった理由は、単純に使い方を調べるのがめんどくさかったのと、サードパーティ製プラグインだし、iOSエンジニア界隈で「ガシガシ使ってます!」という声をあまり聞かないので、まぁそんな使えないのではと。

ただこの生成AIが盛り上がりまくってる時代にそれをコード書きに活かせてないのはすごい損してる気がして、もう一度見直してみることにした。


勘違いしていた点

調べ直してみると、いくつか誤解していた点があった。

  • GitHub Copilot、無料で利用できた

    • 使ってなかったので会社のGitHub Copilotの権利は返上したのだが、OSS活動のおかげか、個人アカウントの方では無料で使用できた(つい最近気付いた)

  • GitHub Copilot以外にも、Codeium (無料で使えるAIコード補完)や、ローカルLLMも使える

    • Tabby ってのもある

  • Copilot for XcodeはOpenAI APIをたたいてコードについて質問するだけのなんちゃってCopilotなんだろうなと勝手に思っていたが、ちゃんとCopilotのAPIがあるらしく、それを使っているようだ

  • 会社のプロジェクトではCopilotを使いたくない場合は、特定のプロジェクトだけサジェストを有効にすることもできる(僕は個人用途でしか使わない、というかPCもGitHubアカウントも分けているから関係ないが)

If you're working on a company project and don't want the suggestion feature to be triggered, you can globally disable it and choose to enable it only for specific projects.

Copilot for XcodeのREADMEより

スコープを指定できる

これは勘違いしていたというか単に知らなかったのだが、GitHub CopilotにもCopilot for Xcodeにも、チャット機能においてコンテキストの範囲を指定する変数が用意されている。

Copilot for Xcodeでは "Chat Scope" と呼ばれており、以下のスコープが指定できる。

  • `@file`

    • Includes the metadata of the editing document and line annotations in the system prompt. 

  • `@code`

    • Includes the focused/selected code and everything from `@file` in the system prompt.

  • `@sense`

    • Experimental. Read the relevant information of the focused code

  • `@project`

    • Experimental. Access content of the project

  • `@web`

    • Allow the bot to search on Bing or query from a web page

「こいつはどこまで見てくれるんだ?プロジェクト内の他のソースファイルのことは加味してくれてるのか?(してくれないんだろうな)」とふわっと思うだけでREADMEをちらりとも読まなかったことを反省。 @project とかちゃんとあるんじゃん、と。

プロジェクト全体を加味したリファクタリングや機能開発

ここから先は

420字 / 2画像
文章やサンプルコードは多少荒削りかもしれませんが、ブログや書籍にはまだ書いていないことを日々大量に載せています。たったの400円で、すぐに購読解除してもその月は過去記事もさかのぼって読めるので、少しでも気になる内容がある方にはオトクかと思います。

技術的なメモやサンプルコード、思いついたアイデア、考えたこと、お金の話等々、頭をよぎった諸々を気軽に垂れ流しています。

最後まで読んでいただきありがとうございます!もし参考になる部分があれば、スキを押していただけると励みになります。 Twitterもフォローしていただけたら嬉しいです。 https://twitter.com/shu223/