🤖
Aider:ターミナルで動作するAIペアプログラミングツール
1. はじめに ✨
近年、AI技術の発展により、開発現場でのAIツールの活用が一般的になってきています。その中でも注目を集めているのが、ターミナル上でAIとペアプログラミングができる「Aider」です。
このツールの革新的な点は、gitをcloneしてくると、ソースコードを読ませて「これにこういう機能を追加しろ」と言うと勝手に追加してgit commitしてしまうことです。良いタイミングで/git push origin main
とやれば、pushまでやってくれます。
本記事は、ターミナルでAIとペアプログラミングができる「AIder」を試す のスクラップを元にまとめています。
2. Aiderの特徴 🔍
Aiderの最大の特徴は、ユーザー(開発者)が完全に受け身になれることです。
これまでのAI支援開発ツールは、あくまでも「支援」にとどまっていました。作りたいものをどう作るかイメージするのはプログラマで、AIはそれをサポートする役でした。
しかしAiderによる開発は、支援ではありません。むしろ開発請負ツールと言えます。
主な特徴:
- GitリポジトリのコードをAIが直接編集可能
- 変更を自動的にGitコミット
- GPT-4oとClaude 3.5 Sonnetで最適に動作
- 多言語対応(Python、JavaScript、TypeScript、PHP、HTMLなど)
- チャットベースのインターフェース
3. 基本機能 🚀
コマンド一覧
-
/help
- ヘルプの表示 -
/add
- ファイルをチャットに追加して、そのファイルを編集出来るようにする -
/ask
- コードベースについて質問(編集しない) -
/chat-mode
- チャットモードの切り替え -
/clear
- チャット履歴の消去 -
/commit
- チャット外での編集をコミット -
/diff
- 最後のコミットのdiff表示 -
/drop
- ファイルをチャットから削除 -
/exit
- アプリケーションの終了 -
/git
- gitコマンドの実行 -
/aider
- aiderに関する質問をする -
/lint
- コードのlintと修正 -
/ls
- ファイル一覧の表示 -
/model
- LLMの切り替え -
/models
- 利用可能なモデルの検索 -
/quit
- アプリケーションの終了 -
/run
- シェルコマンドを実行し、オプションで出力をチャットに追加する (エイリアス: !) -
/test
- テストの実行 -
/tokens
- トークン使用量の表示 -
/undo
- 最後のコミットの取り消し -
/voice
- 音声入力の利用 -
/web
- Webページの内容をseleniumを使って取得
4. インストールと設定 📥
- Pythonパッケージとしてインストール:
pip install aider-chat
- OpenAI APIキーの設定:
export OPENAI_API_KEY=XXXXXXXXX
- 基本的な起動:
aider
- GUIモードでの起動:
aider --gui
5. 実践的な使用例 💻
基本的な使い方
- ファイルの追加:
/add filename.py
- ファイル一覧の確認:
/ls
- コードの修正依頼:
このファイルについて説明して
説明を日本語に書き換えて
6. メリットとデメリット 📊
メリット
- 開発者が受け身で開発を進められる
- Gitとの緊密な統合
- 複数ファイルの同時編集が可能
- CLIとGUIの両対応
- テストとデバッグ支援機能
デメリット
- APIコストの発生
- AIに完全依存できない
- ローカルLLMでの動作は不安定
- CUI操作の習熟が必要
7. おすすめの使用シーン 🌟
- VSCode or Cursorのターミナルと組み合わせた開発
- devcontainer環境での利用
- テストコードの自動生成・メンテナンス
- ドキュメント更新の自動化
8. まとめ 📝
Aiderは、従来の「支援」ツールの枠を超えた、真のAIペアプログラミングツールです。特にGitとの統合や、複数ファイルの同時編集能力は、実践的な開発現場での活用が期待できます。
VSCodeのターミナル内で使用するのが現実的で、devcontainerの設定とセットで用意しておくと効果的です。コードも見たい場合は、この方法が最適でしょう。
詳細なドキュメントは以下で確認できます:
Discussion