コンテンツにスキップ

Roo Code を触ってみた

Roo Code は、VSCode で利用できるコード生成の自律エージェント。VSCode の拡張機能としてインストールすることで、コード生成やデバッグ、リファクタリングなどができる。 様々なプロバイダに対応しており、OpenAI や Anthropic、VSCode の Copilot などのモデルを利用できる。 よく Cursor と比較されるが、Roo Code は Copilot の LLM を利用できるため、定額で利用できるのが特徴。

使ってみた感想

Roo Code を触ってみたが、自律的に作業を進めてくれる点がが魅力的である。これまで利用してきた他のツールだと 1 ステップごとに指示を与えていたが、Agent 形式の Roo Code は、ゴールを設定するとそれに向かって自律的に進めてくれる。 現状の Coding Agent では、難易度の高い問題を解決するのは難しいが、ジュニアレベルの問題であれば今の Coding Agent で解決できるように感じた。 ジュニアレベルの問題であれば、シニアなエンジニア自身がやるよりも Coding Agent に任せる方が早く解決できるように思う。将来的にはより高度な問題も Coding Agent で解決できるようになるだろう。 タスクの成功率を高めるために、精度が高いとされるモデルを利用したり、タスクをより詳細に分割したりといった工夫が求められる。 今後の開発において、Coding Agent を利用する機会は増えると思う。そのため、今のうちから触って試行錯誤しておくのが良いだろう。 それに備えて、AI のパフォーマンスを最大化するための技術選定やディレクトリ構成、仕組みづくりが必要になるはず。 Coding Agent の活用として、毎日夜間にその日の実装をリファクタリングしたりドキュメンテーションを整備してくれるような世界が来ると思う。

開発に関連する資料の扱い

Coding Agent を利用する上で、開発に関連する資料の扱いが重要になる。ドキュメントやスキーマ、インターフェイスなどの情報をどのように管理するかが、AI のパフォーマンスに影響を与える。 Coding Agent から資料を参照する形として MCP(Model Code Protocol)が提唱されている。これは、ツールやサービスを跨いでドキュメントやコードを参照できる仕組みである。しかし、MCP のエコシステムはまだ整っていないため、現状の形として、参照しやすいのはドキュメントとコードを同じリポジトリに置くことだろう。

巨大なモノレポで開発をするのであれば、LLM を使った index の対象が膨大になる。このような状況だとパフォーマンスや精度の低下が懸念される。これを避けるために、インターフェイスやスキーマを定義したリポジトリを作成し、そこに集約。各レポジトリはそのリポジトリを参照するのが良いのではないか。