Roo Code(Roo Cline)を既存のアプリケーション開発で使う
1月にAIエージェントが物凄く盛り上がりました。私も1月から複数のAIエージェントを試してきましたが、Roo Codeが今一番使いやすいと感じています。実際にどのように使用しているのか紹介します。
Roo Codeとは
Roo Code(旧称:Roo Cline)は、Visual Studio Code(VSCode)の拡張機能として提供されるAIエージェントです。オープンソースの自律型コーディングアシスタント「Cline」を基盤に開発され、コードの生成、編集、テスト、デバッグ、さらにはプロジェクト管理まで、開発の各段階を包括的にサポートします。
Settingsで広い権限を渡す
初期設定ではread-onlyでwriteに関しては承認が必要という状態ですが、これだと逐次的に進める必要があるので、広めの権限を渡します。git等で変更管理をしているはずなので大きな問題はないと思います。
API Providerは複数あると良い
先におすすめの組み合わせですが、providerはVS Code LM APIとOpenRouterを使うことをお勧めします。モデルはClaude 3.5 sonnetをお勧めします。
理由ですが、OpenAIやClaudeのAPIを個人で直接払って使用しようとするとlimitの制限が厳しく、使い勝手が悪くなります。AnthropicはTier 2までOpenAI PlatformはTier 1まで試しましたが、不十分でした。
Anthropic
Usage Tier | Credit Purchase | Wait After First Purchase | Max Usage per Month |
---|---|---|---|
Tier 1 | $5 | 0 days | $100 |
Tier 2 | $40 | 7 days | $500 |
Tier 3 | $200 | 7 days | $1,000 |
Tier 4 | $400 | 14 days | $5,000 |
Monthly Invoicing | N/A | N/A | N/A |
OpenAI Platform
https://platform.openai.com/docs/guides/rate-limits?context=tier-four&tier=tier-two#usage-tiers
Tier | Qualification | Usage limits |
---|---|---|
Free | User must be in an allowed geography | $100 / month |
Tier 1 | $5 paid | $100 / month |
Tier 2 | $50 paid and 7+ days since first successful payment | $500 / month |
Tier 3 | $100 paid and 7+ days since first successful payment | $1,000 / month |
Tier 4 | $250 paid and 14+ days since first successful payment | $5,000 / month |
Tier 5 | $1,000 paid and 30+ days since first successful payment | $200,000 / month |
OpenRouterを使うことでAPI のtokenやrequestのlimitの制限をほとんど気にしなくて良くなります。(OpenRouterもPrivacyで学習に使用しないように選択ができます。)
(OpenRouterで)claude-3.5-sonnet:betaを使用していると料金は高くなります。
さらに1/17からVS Code LM APIが使えるようになりました。これでcopilot経由でのclaude-3.5-sonnetが一定量無料で使えるようになりました。
余談ですが、Roo Codeでgpt 40を使っていた時、一定程度使っているとなぜか Claude 3.5 Sonnet への切り替えを推奨されました。理由は分かりませんが、Claude 3.5 Sonnetがモデルの方が多くの情報を処理できるみたいです。
Roo Code uses complex prompts and iterative task execution that may be challenging for less capable models. For best results, it's recommended to use Claude 3.5 Sonnet for its advanced agentic coding capabilities.
2025/2/13追記
GitHub Copilot Agent Modeが使えるようになりました!
Roo Codeと同じくAIエージェントで高性能なモデルGPT 4o, o1, Claude 3.5 sonnetが無料で使えます!
ということで今一番使っています!
2025/3/19
すでにClaude 3.7 sonnet、Claude 3.7 sonnet Thinking、GPT 03-miniが使用できるようになっています!
現在試行錯誤中なので、明日には使い方が変わっているかもしれませんが、一旦こんな風に使ってたというのを記載します。
インフラ開発
CDKをIaCとして採用しており、stack内のリソース作成などはコーディングの量がそこまで多くないので、AIエージェントの良さを感じづらくはあります。個人的にはcodeでプロンプトを投げるのではなく、askで参考コードを出してもらって良ければ追加くらいでも今のところ良いかなとも思います。
Lambda(typescript)を一から作成するのはとても簡単に感じました。また、Lambdaのpolicy作成もコードと合わせて行ってくれますし、テストも作ってくれて便利です。importするものを指定すると精度が上がりました。(何も指定せずに依頼するとjest.mockでテスト作られるので、aws-sdk-client-mockを利用したい場合は指定する必要があります。)コーディングルールをドキュメントにしてもらいつつ、開発していくのが有益だと思います。
バックエンド
GolangでAPIを作成しています。既存のOpenAPI定義があるので、定義にエンドポイントを追加していくことは難しくないです(自分で追加してもそこまでコード量は多くないので、好みかと思いますが、エージェントに作成してもらってレビューー&修正という形で開発しています。)。OpenAPI定義に関わらず、ファイルが数千行と膨大なものになる場合はエージェントの実行時間とトークンの消費量が大きくなるので注意です。OpenAPI定義と要件から実装をお願いするといい感じで作成してくれます。明示的に”controller, model, service, infrastructureに追加して”や”既存のファイルのコーディング方法を確認して同じように追加して”、”この手順でテストして”など詳細を伝えることが大事です。
フロントエンド
まだ試せてないで楽しみです。