[Go to site: main page, start]

Skip to main content

Command Palette

Search for a command to run...

에이전트

Debug Mode

Debug Mode는 재현하거나 이해하기 어려운 까다로운 버그의 근본 원인을 찾아 수정하는 데 도움이 됩니다. Agent는 바로 코드를 작성하는 대신 가설을 세우고 로그 문을 추가하며 런타임 정보를 활용해 정확한 문제를 파악한 후 필요한 부분만 수정합니다.

Debug Mode를 사용할 때

Debug Mode는 다음과 같은 경우에 가장 효과적입니다.

  • 재현할 수 있지만 원인을 알 수 없는 버그: 문제가 있다는 것은 알지만 코드를 읽어도 원인이 명확하지 않은 경우
  • 경쟁 상태 및 타이밍 문제: 실행 순서나 비동기 동작에 따라 발생하는 문제
  • 성능 문제 및 메모리 누수: 원인을 파악하려면 런타임 프로파일링이 필요한 문제
  • 기존에는 작동하던 기능의 회귀: 무엇이 변경되었는지 추적해야 하는 경우

일반적인 Agent 상호작용으로 버그를 해결하기 어려울 때, Debug Mode는 수정 방법을 추측하는 대신 런타임 증거를 활용하는 다른 접근 방식을 제공합니다.

동작 방식

  1. 탐색 및 가설 수립: Agent가 관련 파일을 탐색하고 컨텍스트를 구축한 뒤, 가능한 근본 원인에 대한 여러 가설을 세웁니다.

  2. 계측 코드 추가: Agent가 Cursor 확장 프로그램에서 실행 중인 로컬 디버그 서버로 데이터를 전송하는 로그 문을 추가합니다.

  3. 버그 재현: Debug Mode가 버그를 재현하도록 요청하고 구체적인 단계를 안내합니다. 이를 통해 사용자가 과정에 참여하고 Agent가 실제 런타임 동작을 캡처할 수 있습니다.

  4. 로그 분석: 재현 후 Agent가 수집된 로그를 검토하여 런타임 증거를 바탕으로 실제 근본 원인을 파악합니다.

  5. 정밀 수정 적용: Agent가 근본 원인을 직접 해결하는 수정 사항을 적용하며, 대부분 몇 줄의 코드만 변경하면 됩니다.

  6. 검증 및 정리: 재현 단계를 다시 실행해 수정 사항을 검증할 수 있습니다. 확인되면 Agent가 모든 계측 코드를 제거합니다.

Debug Mode 팁

  • 자세한 컨텍스트 제공: 버그와 재현 방법을 자세히 설명할수록 Agent의 계측 코드가 더 효과적으로 작동합니다. 오류 메시지, 스택 트레이스, 구체적인 재현 단계를 포함하세요.
  • 재현 단계를 정확히 따르기: 로그가 실제 문제를 포착할 수 있도록 Agent가 제공하는 단계를 실행하세요.
  • 필요하면 여러 번 재현하기: 버그를 여러 번 재현하면 Agent가 경쟁 상태 같은 까다로운 문제를 식별하는 데 도움이 될 수 있습니다.
  • 예상 동작과 실제 동작을 구체적으로 설명하기: 무엇이 발생해야 하는지와 실제로 무엇이 발생하는지를 Agent가 이해하도록 도와주세요.

모드 전환

  • Agent의 모드 선택 드롭다운 사용
  • 빠르게 전환하려면 Shift+Tab 누르기