문제 언급은 Cline에게 작업 공간의 모든 오류 및 경고에 즉시 액세스할 수 있는 권한을 부여합니다. @problems를 입력하기만 하면 Cline이 VSCode에서 감지한 모든 진단 문제를 볼 수 있습니다. 채팅에서 @를 입력할 때 메뉴에서 “문제”를 선택하거나 @problems를 직접 입력합니다. Cline은 파일 위치 및 오류 메시지와 함께 작업 공간의 모든 오류 및 경고를 즉시 볼 수 있습니다. 빌드 오류나 TypeScript 문제로 어려움을 겪을 때 문제 언급을 지속적으로 사용합니다. 오류를 설명하거나 하나씩 복사하는 대신 다음과 같이 질문합니다.
다음과 같은 TypeScript 오류가 발생하는데 어떻게 해결해야 할지 모르겠습니다: @problems

무엇이 문제이고 어떻게 해결할 수 있는지 이해하도록 도와주시겠어요?
이렇게 하면 정확한 위치와 메시지가 포함된 전체 오류 목록이 Cline에 제공됩니다. 그러면 Cline은 여러 오류에 걸친 패턴을 분석하고 포괄적인 해결책을 제안할 수 있습니다. 문제 언급은 파일 언급과 결합할 때 특히 강력합니다. 복잡한 유형 오류를 처리할 때 두 가지 모두를 참조합니다.
다음과 같은 유형 오류가 발생합니다: @problems

내 구성 요소는 다음과 같습니다: @/src/components/DataTable.tsx
그리고 유형 파일은 다음과 같습니다: @/src/types/api.ts

이러한 문제를 어떻게 해결할 수 있나요?
이 접근 방식은 정확한 오류, 구성 요소 코드 및 유형 정의 등 Cline에 필요한 모든 정보를 수동으로 복사할 필요 없이 제공합니다. 다음에 오류로 어려움을 겪을 때는 오류 메시지를 복사하는 대신 @problems를 사용해 보십시오. Cline이 전체 오류 컨텍스트와 위치를 볼 수 있으므로 더 정확한 도움을 받을 수 있습니다.

내부 작동 방식

메시지에서 문제 언급을 사용하면 내부적으로 다음과 같은 일이 발생합니다.
  1. 메시지를 보내면 Cline이 텍스트에서 @problems 패턴을 감지합니다.
  2. 확장이 VSCode의 기본 제공 vscode.languages.getDiagnostics() API를 호출하여 모든 오류 및 경고를 가져옵니다.
  3. 이러한 진단을 파일 경로, 줄 번호 및 오류 메시지가 포함된 구조화된 텍스트 표현으로 서식 지정합니다.
  4. 서식 지정된 문제 목록이 다음과 같은 구조화된 형식으로 메시지에 추가됩니다.
    <workspace_diagnostics>
    /path/to/file.js:10:5 - 오류 TS2322: 'string' 유형은 'number' 유형에 할당할 수 없습니다.
    /path/to/file.js:15:3 - 경고: 이 변수는 사용되지 않습니다.
    </workspace_diagnostics>
    
  5. 포함된 진단이 포함된 이 향상된 메시지가 AI로 전송됩니다.
  6. 이제 AI는 작업 공간의 모든 오류 및 경고를 해당 위치 및 메시지와 함께 “볼” 수 있습니다.
이 프로세스는 문제 언급을 사용할 때마다 자동으로 발생하므로 수동으로 복사할 필요 없이 AI에게 작업 공간의 모든 문제에 대한 포괄적인 보기를 제공합니다.