[Go to site: main page, start]

Skip to main content

Command Palette

Search for a command to run...

Agent

デバッグモード

デバッグモードは、再現や理解が難しい厄介なバグの根本原因を特定し、修正するのに役立ちます。エージェントはすぐにコードを書き始めるのではなく、仮説を立て、ログステートメントを追加し、実行時の情報を活用して問題を正確に特定したうえで、的を絞った修正を行います。

デバッグモードを使う場面

デバッグモードは、次のような場合に適しています。

  • 再現できるが原因がわからないバグ: 問題があることはわかっていても、コードを読んだだけでは原因が明らかにならない場合
  • 競合状態やタイミングの問題: 実行順序や非同期の挙動に依存する問題
  • パフォーマンスの問題やメモリリーク: 原因の把握に実行時プロファイリングが必要な問題
  • 以前は動作していた機能のリグレッション: 何が変わったかを追跡する必要がある場合

通常のエージェントとのやり取りでバグの解決が難しい場合、デバッグモードは修正方法を推測するのではなく、実行時の証拠に基づく別のアプローチを提供します。

仕組み

  1. 探索と仮説の立案: エージェントが関連するファイルを探索し、コンテキストを構築して、考えられる根本原因について複数の仮説を立てます。

  2. 計測コードの追加: エージェントが、Cursor拡張機能で実行されているローカルデバッグサーバーにデータを送信するログステートメントを追加します。

  3. バグの再現: デバッグモードがバグの再現を求め、具体的な手順を提示します。これにより、エージェントが実際の実行時の挙動をキャプチャする間も、作業に関与し続けられます。

  4. ログの分析: 再現後、エージェントが収集したログを確認し、実行時の証拠に基づいて実際の根本原因を特定します。

  5. 的を絞った修正: エージェントが根本原因に直接対処する修正を行います。多くの場合、数行のコードだけで済みます。

  6. 確認とクリーンアップ: 再現手順を再実行して修正を確認できます。確認後、エージェントがすべての計測コードを削除します。

デバッグモードのヒント

  • 詳細なコンテキストを提供する: バグの内容や再現方法を詳しく説明するほど、エージェントによる計測コードの精度が向上します。エラーメッセージ、スタックトレース、具体的な手順も含めてください。
  • 再現手順を正確に実行する: ログに実際の問題が記録されるよう、エージェントが提示した手順を実行してください。
  • 必要に応じて複数回再現する: バグを複数回再現すると、競合状態のような見つけにくい問題をエージェントが特定しやすくなる場合があります。
  • 期待される挙動と実際の挙動を具体的に示す: 本来どのように動作すべきかと、実際にどうなっているかをエージェントが理解できるようにしてください。

モードを切り替える

  • エージェント のモード選択ドロップダウンを使用する
  • Shift+Tab ですばやく切り替える