AIエージェント「Cline」を活用した開発の自動化と実践
2025-02-03 勉強会

はじめに
近年、生成AIを活用した開発支援ツールの進化が加速しています。特に、AIエージェント型のツールとして登場した「Cline」は、従来のコード補助ツールとは異なり、自律的に開発タスクを遂行できる点で注目されています。
本記事では、Clineのインストールから基本的な使い方、実際に開発でどのように活用できるのかを実験した備忘録です
本記事では、Clineのインストールから基本的な使い方、実際に開発でどのように活用できるのかを実験した備忘録です
Clineとは
Clineは、VSCodeの拡張機能として提供される AIエージェント型の開発支援ツール です。
■Github
https://github.com/cline/cline
余談ですが言語はTypeScriptで記述されている様ですね。
また、公式はClaude3 Sonnet'sを推奨しています。
■Github
https://github.com/cline/cline
余談ですが言語はTypeScriptで記述されている様ですね。
また、公式はClaude3 Sonnet'sを推奨しています。
従来のコード補助ツールとの違い
「Copilot」や「Cursor」などのコード補助ツールは、開発を補助することが主な目的でした。
Clineは、タスクの目標を設定すれば、それに向かって自律的にコードを生成・修正・実行する特徴を持っています。
目標に基づいてコードを作成し、実行・修正まで行います。
VSCodeから直接操作でき、特別な環境構築は不要です。
※ローカルLLMを利用する場合を除く
利用可能なLLMを切り替え可能で 「Claude 3.5 Sonnet」や「OpenRouter」経由で多様なLLMが利用可能です。
Clineは、タスクの目標を設定すれば、それに向かって自律的にコードを生成・修正・実行する特徴を持っています。
目標に基づいてコードを作成し、実行・修正まで行います。
VSCodeから直接操作でき、特別な環境構築は不要です。
※ローカルLLMを利用する場合を除く
利用可能なLLMを切り替え可能で 「Claude 3.5 Sonnet」や「OpenRouter」経由で多様なLLMが利用可能です。
Clineのインストールと初期設定
インストール手順

VSCodeの拡張機能一覧から「Cline」を検索し、インストール

APIプロバイダーの選択
今回は「OpenRouter」を使用
OpenRouterは色々なLLMを選択出来るサービスたいなものだと思ってください。
詳しくは後述します。
今回は「OpenRouter」を使用
OpenRouterは色々なLLMを選択出来るサービスたいなものだと思ってください。
詳しくは後述します。

OpenRouterのAPIキーを発行してClineの設定画面からAPIキーを入力します
発行したAPIキーを貼り付けていざ出陣、Let's Go!です
発行したAPIキーを貼り付けていざ出陣、Let's Go!です

ClineのSettingからModelを指定する事が可能。
今回はコストは安くはないですが、実験という事で親和性も高い「claude-3.5-sonnet」さんを使ってやってみましょう。
freeモデル選べるのですが、まずは実用性があるかどうかも含めてなので今回は課金モデルで行きます。
今回はコストは安くはないですが、実験という事で親和性も高い「claude-3.5-sonnet」さんを使ってやってみましょう。
freeモデル選べるのですが、まずは実用性があるかどうかも含めてなので今回は課金モデルで行きます。
Clineを使ってみる

Clineは、VSCode上でタスクを入力するだけで、自動的にコードを生成・実行できます。

勝手に技術選定もされるとめんどくさそうなので、Reactを指定しました。
まずは簡単な作業だけでどのぐらい費用がかかるのかをウォッチしてみます。
まずは簡単な作業だけでどのぐらい費用がかかるのかをウォッチしてみます。

環境を作りたいのでパッケージのインストールをしてもいいか許可を求めてきます。
許可するか、リジェクトするかを選択出来ます。
今回は「Run Command」で続行してみます。
許可するか、リジェクトするかを選択出来ます。
今回は「Run Command」で続行してみます。

天気予報についてはOpenWeatherAPIを利用したいということで、キーを求めてきました。
使えそうなサービスであることを確認(ここは人力)して、キーを発行してClineに入力して渡します。
使えそうなサービスであることを確認(ここは人力)して、キーを発行してClineに入力して渡します。

現在の環境ではnpmのインストールがされていないようなので、ターミナルで環境をインストールしてくれています。


このプロセスが約10分で完了し、手動で行う場合よりも大幅に時間を短縮できました。
おそらくauto-approveを使えばもっと手放しでシステムを作ること自体は出来そうですが、基本的には人間が介在する事が思想にはありそうなので、危険な作業自体は逐一確認しましょう。
ここまでで利用されたトークン数等はCline上部に表示されています。
おそらくauto-approveを使えばもっと手放しでシステムを作ること自体は出来そうですが、基本的には人間が介在する事が思想にはありそうなので、危険な作業自体は逐一確認しましょう。
ここまでで利用されたトークン数等はCline上部に表示されています。


クレジットも減りました。
今までの生成AIではこのあたりのフローをいちいち指示しないとならなかったので、思考回路と開発する工程にしっかりと挟まってきた感が凄いです。
個人的にはIDE上で完結するので思考が途切れる事が少なくなるのがとても良いと感じました。
ただ、画像などを通常のブラウザ型の生成AIの様に投げるとトークンのコストは高そうです。
だらだらと使っていたら1時間も立たない内に5ドルほど消費してしまいました。
恐らくトークンの使い方のチューニングとかが必要になりそうです。
今までの生成AIではこのあたりのフローをいちいち指示しないとならなかったので、思考回路と開発する工程にしっかりと挟まってきた感が凄いです。
個人的にはIDE上で完結するので思考が途切れる事が少なくなるのがとても良いと感じました。
ただ、画像などを通常のブラウザ型の生成AIの様に投げるとトークンのコストは高そうです。
だらだらと使っていたら1時間も立たない内に5ドルほど消費してしまいました。
恐らくトークンの使い方のチューニングとかが必要になりそうです。
実際の開発
大きなプロジェクトの全てのソースを把握したり修正したりとなると、ローカルLLMで大容量のモデルを利用するケースが良い事も散見されそうです。
実際の開発での利用は以下の感じなのかなと想定されます。
・プロジェクトのセットアップ
・必要なファイルやディレクトリを自動作成
・パッケージのインストールを自動化
・コードの生成と修正
・APIのレスポンス処理をClineが適切に補完
・CORSエラーなどの問題も自動で回避策を提案
・実行・デバッグ
・コードを実行し、エラー発生時に修正を提案
・必要に応じて手動で確認・修正
ここまで上手くいかないこともあるとは思いますが、Clineは開発のアシスタントとして機能し、単なるコード補完ツールとは異なる体験を提供していると言えます。
実際の開発での利用は以下の感じなのかなと想定されます。
・プロジェクトのセットアップ
・必要なファイルやディレクトリを自動作成
・パッケージのインストールを自動化
・コードの生成と修正
・APIのレスポンス処理をClineが適切に補完
・CORSエラーなどの問題も自動で回避策を提案
・実行・デバッグ
・コードを実行し、エラー発生時に修正を提案
・必要に応じて手動で確認・修正
ここまで上手くいかないこともあるとは思いますが、Clineは開発のアシスタントとして機能し、単なるコード補完ツールとは異なる体験を提供していると言えます。
OpenRouter
さまざまなAIモデルにアクセスして利用出来る。
対応しているモデルも多数あり、色々試すには非常に便利そう
利用した費用も一元管理出来るのもポイントが高いです
公式サイト
https://openrouter.ai
対応しているモデルも多数あり、色々試すには非常に便利そう
利用した費用も一元管理出来るのもポイントが高いです
公式サイト
https://openrouter.ai

こんな感じで色々なLLMを選択することが出来る

クレジットを買うにはここから購入が必要。
「Use crypto」の文字があるので、仮想通貨等を用いて支払いも出来るようです。
「Use crypto」の文字があるので、仮想通貨等を用いて支払いも出来るようです。

今回はクレジットカードで支払いました。
Clineのメリット・デメリット
簡単にメリットとデメリットは以下かなと感じました。
メリット
✅ 開発効率の向上
→ 環境構築やコードの生成・修正が自動化され、手作業が減る
✅ タスク指向の自律性
→ 指示を出すだけで、開発を進めるための最適な手順をAIが考える
✅ 複数のLLMを切り替え可能
→ 「Claude 3.5 Sonnet」など強力なモデルが利用可能
デメリット
❌ API通信コストが発生する
→ トークン消費によるコストがかかる
❌ 完全な自動化は難しい
→ AIの提案を100%信用するのではなく、適宜監視と修正が必要
❌ ローカルLLMでは対応が難しい場合がある
→ 大規模プロジェクトではローカル環境のLLMの限界を感じる場面も
メリット
✅ 開発効率の向上
→ 環境構築やコードの生成・修正が自動化され、手作業が減る
✅ タスク指向の自律性
→ 指示を出すだけで、開発を進めるための最適な手順をAIが考える
✅ 複数のLLMを切り替え可能
→ 「Claude 3.5 Sonnet」など強力なモデルが利用可能
デメリット
❌ API通信コストが発生する
→ トークン消費によるコストがかかる
❌ 完全な自動化は難しい
→ AIの提案を100%信用するのではなく、適宜監視と修正が必要
❌ ローカルLLMでは対応が難しい場合がある
→ 大規模プロジェクトではローカル環境のLLMの限界を感じる場面も
企業利用の観点
現時点での企業利用には、以下のポイントを考慮する必要があります。
・機密データの取り扱い
→外部APIを利用するため、機密情報を扱う場合は注意が必要
→Amazon BedrockやローカルLLMの利用を検討するのも選択肢
・コスト管理
API通信なので利用するたびに、使用コストが発生する
→予算管理をしっかりしないと、結局損をしていた…等も多数ありそうです
・機密データの取り扱い
→外部APIを利用するため、機密情報を扱う場合は注意が必要
→Amazon BedrockやローカルLLMの利用を検討するのも選択肢
・コスト管理
API通信なので利用するたびに、使用コストが発生する
→予算管理をしっかりしないと、結局損をしていた…等も多数ありそうです
最後に
SaaSが隆盛した時代のように、次世代ではAIエージェント同士の組み合わせによって、新たなサービスが生まれてくるのではないかと感じています。
ただ、特化型AI同士が通信し、結果を保証するためのプロトコルの制定は重要な課題となるでしょう。
そのため、そうしたやり取りの結果を調整し、責任を持つ役割を担う小さなAIエージェントが登場するかもしれません。いわば「プロトコル型AIエージェント」のようなものです。
こうした技術の進化により、「SaaSを導入したものの、どう活用すればいいのかわからない」といった問題は減り、社内で自然言語を使って課題を問い合わせれば、具体的なビジネスプランを提案してくれるようになるかもしれません。
一方で、コーディングやビジネスアイデアの提案において、説明責任が問われる場面では、エンジニア個人がしっかりと説明できる必要があります。アウトプットに対する責任は、あくまで作者が負うべきものであり、「AIがそう言っていたから…」では、その存在意義が失われてしまいます。
AIが発展しても、「重要な判断は人が行い、結果には責任を持つ」という基本的な考え方は、現在の仕事と大きく変わらないのではないかと思います。
AIによる開発の自動化については、さまざまな懸念の声も上がっていますが、まずは自分で触れてみて「ここまでなら有効活用できる」と判断することが大切だと考えます。
今後もエンジニアとしての道を歩む限り、責任を他人に押し付けることなく、実際に技術を試さずに批評ばかりすることのないよう、引き続き努力してまいります。
ただ、特化型AI同士が通信し、結果を保証するためのプロトコルの制定は重要な課題となるでしょう。
そのため、そうしたやり取りの結果を調整し、責任を持つ役割を担う小さなAIエージェントが登場するかもしれません。いわば「プロトコル型AIエージェント」のようなものです。
こうした技術の進化により、「SaaSを導入したものの、どう活用すればいいのかわからない」といった問題は減り、社内で自然言語を使って課題を問い合わせれば、具体的なビジネスプランを提案してくれるようになるかもしれません。
一方で、コーディングやビジネスアイデアの提案において、説明責任が問われる場面では、エンジニア個人がしっかりと説明できる必要があります。アウトプットに対する責任は、あくまで作者が負うべきものであり、「AIがそう言っていたから…」では、その存在意義が失われてしまいます。
AIが発展しても、「重要な判断は人が行い、結果には責任を持つ」という基本的な考え方は、現在の仕事と大きく変わらないのではないかと思います。
AIによる開発の自動化については、さまざまな懸念の声も上がっていますが、まずは自分で触れてみて「ここまでなら有効活用できる」と判断することが大切だと考えます。
今後もエンジニアとしての道を歩む限り、責任を他人に押し付けることなく、実際に技術を試さずに批評ばかりすることのないよう、引き続き努力してまいります。
おまけ
・LM Studio
・Cline
・cyberagent-deepseek-r1-distill-qwen-14b-japanese
噂のあれでローカルLLM経由でもコーディングもちょっと出来ました
・Cline
・cyberagent-deepseek-r1-distill-qwen-14b-japanese
噂のあれでローカルLLM経由でもコーディングもちょっと出来ました
