Aider:ターミナル内でのコピペ地獄からエンジニアを解放する「真の」AIアシスタント

Artificial Intelligence tutorial - IT technology blog
Artificial Intelligence tutorial - IT technology blog

「コピペ職人」という名の悩み

こんな光景に心当たりはありませんか? ChatGPTを開き、200行のコードを貼り付けてバグ修正を依頼する。AIは完璧な回答を出してくれますが、それをまたVS Codeに必死にコピペして戻す作業。たった一つの括弧が足りなかったり、AIが150行目の変数名を勝手に変えてしまったりするだけで、すべてが台無しになります。私自身、Claudeによる変更を大規模なReactプロジェクトに同期させるためだけに、3時間近く費やしたことがあります。その時感じたのは、プログラミングをしているのではなく、ただの「テキスト貼り付け職人」になっているという感覚でした。

どのファイルを修正したか、どれがまだかを記憶し、手動でユニットテストを実行するのは、まさに苦行です。それは集中力を削ぎ、エンジニアのワークフローを絶えず中断させます。

なぜWeb版のChatGPTやClaudeでは「もどかしさ」を感じるのか?

問題はAIの知能にあるのではなく、コンテキスト(文脈)と権限の壁にあります。ブラウザ上のAIは、ディレクトリ構造を把握できていません。修正したばかりの utils.jsApp.js のロジックにどう影響するかを知る由もありません。

また、Web版のAIにはあなたのPC上で実行する権限がありません。ファイルを自動保存することも、npm test を実行してコードを検証することもできません。バージョン管理(Git)の操作もすべて手動で行う必要があります。もしAIが間違った修正を行い、それを上書き保存してしまった場合、ロールバック(復元)作業は非常に面倒なものになります。

Aider — モダンなワークフローのための最適解

この問題を解決するために、多くのエンジニアはCursor IDEを選びます。しかし、長年カスタマイズしてきたVS Codeを捨てて新しいエディタに移りたくないという人もいるでしょう。そこで完璧な選択肢として登場するのがAiderです。これは、AIがプロジェクトディレクトリ内で直接コードを読み取り、修正し、コミットすることを可能にするコマンドラインツール(CLI)です。

Aiderの最大の魅力は、Gitを深く理解している点です。リクエストを完了するたびに、適切な説明文を添えて自動的にコミットを作成します。もし結果が気に入らなければ? /undo と入力するだけで、一瞬ですべてを元の状態に戻せます。

1分で完了するインストールと設定

唯一の条件は、Pythonがインストールされていることです。ターミナルを開き、以下のコマンドを実行してください。

pip install aider-chat

次に、APIキーを設定します。多くのプロジェクトで試した経験から、Claude 3.5 Sonnet の使用を強くお勧めします。このモデルは現在、コーディングにおいて「最強」であり、GPT-4oよりも論理的思考に優れ、ケアレスミスが格段に少ないです。

# Anthropicの設定(推奨)
export ANTHROPIC_API_KEY=your-api-key-here

# またはOpenAIを使用
export OPENAI_API_KEY=your-api-key-here

Aiderを真のペアプロ相手にする

複雑なAPIシステムにロギング機能を追加する必要があると想像してみてください。一つ一つのファイルを開く代わりに、関連するファイルと一緒にAiderを呼び出すだけです。

aider app/api/endpoints.py app/main.py

あとは、シニアエンジニアがジュニアに指示を出すように命令します。「loguruライブラリを使ってendpoints.pyの各関数にロギングを追加して。リクエストのタイムスタンプ and IPアドレスも記録するようにしてね」

Aiderは自動的にコードを分析し、ライブラリをインポートし、ロジックを書き込み、ファイルを保存します。最後に、明確なメッセージとともに git commit まで行います。あなたは一度もコピペ作業に手を触れる必要はありません。

効率を最大化するための「お役立ち」コマンド:

  • /add [path]: AIがより広く理解できるように、コンテキストにファイルを追加します。
  • /drop [path]: トークンを節約し、AIの混乱を防ぐために不要なファイルを除外します。
  • /run [command]: テストやリンターを実行します。エラーが出た場合、Aiderはログを読み取って自動的に修正を続けます。

API費用を無駄にしないための鉄則

Aiderは非常に強力ですが、使い方を誤るとAPIの使用料が跳ね上がったり、コードが乱雑に修正されたりします。以下の3つの重要な注意点を守ってください。

コンテキストを厳格に管理する: プロジェクトフォルダ全体を一度に追加しないでください。大規模なプロジェクトでは、単純な質問一つで数万トークンを消費することがあります。本当に必要なファイルだけを追加するようにしましょう。

Architectモード(--architect)を活用する: これが最も安全なモードです。Aiderはまず解決策と新しいコード構造を提示します。あなたが “y”(同意)と入力して初めて、ファイルの修正を開始します。これにより、AIが意図を誤解して重要なロジックを破壊するのを防げます。

ctagsを活用する: Aiderは ctags を使用してプロジェクトマップ(リポジトリマップ)を作成します。これにより、すべてのコードをコンテキストに入れなくても、関数間の関係を理解できるようになります。この機能を最大限に活かすために、マシンに universal-ctags がインストールされていることを確認してください。

おわりに

Aiderは単なるチャットボットではなく、ターミナルのすぐ隣に座っているアシスタントです。ボイラープレートの作成や古いコードのリファクタリングといった繰り返しの作業からエンジニアを解放してくれます。作業効率を次のレベルへ引き上げたいなら、今すぐAiderをインストールしてみてください。もう二度と、手動のコピペ作業には戻りたくなくなるはずです。

Share: