# 제한 사항 및 제약 (/ko/docs/verdent-for-vscode/help-support/limitations)

> Verdent의 제한 사항과 제약 이해하기



### 학습할 내용 [#학습할-내용]

파일 형식 제한, 도구 제약, 플랫폼별 고려 사항을 포함한 Verdent for VS Code의 알려진 제한 사항입니다.

***

## 알려진 제한 사항 [#알려진-제한-사항]

<Tabs>
  <Tab title="파일 형식">
    ### 바이너리 파일은 지원되지 않음 [#바이너리-파일은-지원되지-않음]

    Verdent의 파일 도구는 텍스트 기반 형식에서만 작동합니다. 다음 항목은 편집할 수 없습니다.

    | 형식 유형         | 예시                          |
    | ------------- | --------------------------- |
    | **이미지**       | PNG, JPG, GIF, SVG (바이너리로서) |
    | **동영상**       | MP4, AVI, MOV               |
    | **컴파일된 코드**   | EXE, DLL, SO                |
    | **아카이브**      | ZIP, TAR, GZ                |
    | **Office 문서** | DOCX, XLSX, PPTX            |
    | **PDF**       | PDF 파일                      |

    **해결 방법:** 바이너리 파일은 코드에서 참조하거나 개념적으로 논의할 수 있지만, 수정하려면 외부 도구가 필요합니다.
  </Tab>

  <Tab title="도구 제약">
    ### file\_read 줄 수 제한 [#file_read-줄-수-제한]

    **제한 사항:**

    * 큰 파일(>10,000줄)은 구간별로 읽어야 합니다
    * 큰 파일 전체를 읽으면 컨텍스트가 소진될 수 있습니다

    **해결 방법:** 줄 범위를 사용합니다: `file_read("file.js", start_line=100, max_lines=50)`

    ***

    ### bash 명령 시간 제한 [#bash-명령-시간-제한]

    **제한 사항:**

    * 최대 시간 제한: 120초(2분)
    * 오래 실행되는 작업은 자동으로 종료됩니다

    **해결 방법:** 작업을 2분 안에 완료되는 더 작은 명령으로 나눕니다

    ***

    ### 검색 성능 [#검색-성능]

    **제한 사항:**

    * 넓은 glob 패턴(`**/*`)은 수천 개의 결과를 반환할 수 있습니다
    * 정규식 검색은 리터럴 문자열 검색보다 느립니다

    **해결 방법:** 구체적인 패턴을 사용하고 불필요한 디렉터리는 제외합니다
  </Tab>

  <Tab title="컨텍스트 창">
    ### 컨텍스트 소진 [#컨텍스트-소진]

    **문제:**    긴 세션이나 복잡한 작업 중에는 AI의 컨텍스트 창이 가득 차서 이전 대화를 참조하는 능력이 제한될 수 있습니다.

    **완화 전략:**

    * 탐색 연구에는 서브에이전트를 사용합니다(결과만 메인 컨텍스트를 사용합니다)
    * 줄 범위로 파일을 전략적으로 읽습니다
    * 전체 내용을 읽기 전에 `grep_file`를 사용합니다
    * 백그라운드 작업을 Explorer 서브에이전트에 위임합니다

    <Tip>
      500줄을 넘는 파일은 컨텍스트 공간을 보존하기 위해 항상 줄 범위를 사용합니다.
    </Tip>
  </Tab>
</Tabs>

***

## Verdent이 할 수 없는 일 [#verdent이-할-수-없는-일]

<Tabs>
  <Tab title="시스템 관리">
    ### 직접 시스템 관리는 불가 [#직접-시스템-관리는-불가]

    **할 수 없는 일:**

    * VS Code 설정을 프로그래밍 방식으로 수정
    * VS Code 확장을 자동으로 설치
    * 시스템 수준 구성을 변경
    * VS Code 또는 시스템 서비스를 다시 시작

    **범위:** Verdent은 시스템 관리 수준이 아니라 VS Code 워크스페이스 내에서 작동합니다.
  </Tab>

  <Tab title="자율 실행">
    ### 자율 실행 불가 [#자율-실행-불가]

    **Manual Accept Mode 제어:**

    * 사용자는 Manual Accept Mode에서 도구 실행을 승인해야 합니다
    * 승인 없는 자동 백그라운드 작업은 없습니다
    * VS Code이 닫혀 있으면 명령을 실행할 수 없습니다

    **목적:** 모든 작업에 대한 안전성과 사용자 제어입니다.

    <Warning>
      Verdent은 사용자 승인 없이 백그라운드에서 명령을 실행할 수 없습니다. 모든 작업에는 Manual Accept Mode에서 명시적인 동의가 필요합니다.
    </Warning>
  </Tab>

  <Tab title="실시간 모니터링">
    ### 실시간 모니터링 불가 [#실시간-모니터링-불가]

    **할 수 없는 일:**

    * 실행 중인 프로세스를 지속적으로 모니터링
    * 파일 시스템 변경을 실시간으로 추적
    * 시스템 이벤트에 대한 알림
    * 로그 파일을 지속적으로 스트리밍

    **대안:** 외부 모니터링 도구에는 MCP 연동을 사용합니다.
  </Tab>

  <Tab title="네트워크 작업">
    ### MCP 없이 네트워크 작업 불가 [#mcp-없이-네트워크-작업-불가]

    **내장 제한 사항:**

    * 임의의 HTTP 요청을 만들 수 없습니다(특정 페이지에는 `web_fetch`를 사용)
    * 직접 데이터베이스 연결은 없습니다(MCP 필요)
    * 클라우드 서비스에 직접 접근할 수 없습니다(MCP 필요)
    * 실시간 API 연동은 없습니다(MCP 필요)

    **해결 방법:** 외부 시스템 접근을 위해 MCP 서버를 구성합니다.
  </Tab>
</Tabs>

***

## 플랫폼별 제한 [#플랫폼별-제한]

### 운영체제 차이 [#운영체제-차이]

**bash 도구 동작:**

| 플랫폼             | 셸          | 참고                                             |
| --------------- | ---------- | ---------------------------------------------- |
| **macOS/Linux** | bash/zsh   | 전체 bash 기능                                     |
| **Windows**     | PowerShell | 일부 bash 명령은 사용할 수 없으므로 PowerShell 대응 명령을 사용합니다 |
| **WSL**         | bash       | WSL 환경에서 Linux 명령이 작동합니다                       |

**경로 처리:**

* Windows는 백슬래시(`\`)를 사용하고, Unix는 슬래시(`/`)를 사용합니다
* 크로스 플랫폼 프로젝트에서는 파일 경로를 조정해야 할 수 있습니다

***

### VS Code 버전 요구 사항 [#vs-code-버전-요구-사항]

**최소 요구 사항:**

* VS Code 버전 호환성(현재 최소 버전은 확장 마켓플레이스에서 확인)
* 컨텍스트 캐싱을 위한 충분한 디스크 공간

<Info>
  구체적인 버전 요구 사항은 VS Code 마켓플레이스 목록에서 관리됩니다. 현재 호환성은 확장 세부 정보를 확인합니다.
</Info>

***

### 워크스페이스 제약 [#워크스페이스-제약]

**단일 워크스페이스 집중:**

* Verdent은 한 번에 하나의 VS Code 워크스페이스 내에서 작동합니다
* 열려 있는 여러 VS Code 창에 걸쳐 동시에 파일을 수정할 수 없습니다
* 멀티 루트 워크스페이스는 지원되지만 컨텍스트는 현재 활성 워크스페이스로 제한됩니다

***

## 일반적인 제한 사항의 해결 방법 [#일반적인-제한-사항의-해결-방법]

<Tabs>
  <Tab title="바이너리 파일">
    ### 바이너리 파일 수정 [#바이너리-파일-수정]

    **제한 사항:** 이미지, PDF 또는 컴파일된 바이너리를 편집할 수 없습니다

    **해결 방법:**

    * bash 명령에서 외부 도구를 참조합니다: `bash("convert input.png -resize 50% output.png")`
    * 외부 도구가 실행할 수 있는 스크립트를 생성합니다
    * 바이너리 파일 작업을 위한 수동 단계를 문서화합니다

    **예시:**

    ```bash
    # Image conversion
    bash("convert input.png -resize 50% output.png")

    # PDF to text
    bash("pdftotext document.pdf output.txt")
    ```
  </Tab>

  <Tab title="큰 파일">
    ### 큰 파일 처리 [#큰-파일-처리]

    **제한 사항:** 10,000줄을 넘는 파일은 컨텍스트 창에 부담을 줍니다

    **해결 방법:**

    * 줄 범위를 사용합니다: `file_read("large.log", start_line=1000, max_lines=100)`
    * 먼저 검색합니다: 관련 구간을 찾으려면 `grep_content("ERROR", glob="large.log")`를 사용합니다
    * 더 쉽게 관리할 수 있도록 파일을 더 작은 모듈로 나눕니다

    <Tip>
      항상 먼저 `grep_content`를 사용해 관련 구간을 식별한 다음, 해당하는 특정 줄 범위만 읽습니다.
    </Tip>
  </Tab>

  <Tab title="컨텍스트 창">
    ### 컨텍스트 창 소진 [#컨텍스트-창-소진]

    **제한 사항:** 긴 대화는 컨텍스트 창을 채웁니다

    **해결 방법:**

    * 코드베이스 조사에는 Explorer 서브에이전트에 위임합니다
    * 격리된 검증 작업에는 Verifier 서브에이전트를 사용합니다
    * 별개의 작업은 새 대화로 시작합니다
    * 세션 간 진행 상황을 추적하려면 `todo_update`를 사용합니다

    **모범 사례:** 백그라운드 조사를 서브에이전트에 위임해 메인 컨텍스트를 실제 개발 작업에 보존합니다.
  </Tab>

  <Tab title="플랫폼 차이">
    ### 플랫폼별 명령 차이 [#플랫폼별-명령-차이]

    **제한 사항:** bash 명령은 Windows와 Unix 간에 다릅니다

    **해결 방법:**

    * 크로스 플랫폼 도구를 사용합니다: 원시 bash 대신 npm scripts
    * 조건부 명령: `bash("if [[ \"$OSTYPE\" == \"linux-gnu\"* ]]; then ...; fi")`
    * 플랫폼 참고 사항이 포함된 프로젝트별 AGENTS.md

    **예시:**

    ```bash
    # Cross-platform
    bash("npm run build")

    # Platform-specific conditional
    bash("if [[ \"$OSTYPE\" == \"linux-gnu\"* ]]; then make; else nmake; fi")
    ```
  </Tab>
</Tabs>

***

## 향후 개선 사항 [#향후-개선-사항]

<Note>
  제한 사항은 계속 해결되고 있습니다. 확장된 기능, 증가한 한도, 새로운 연동에 대한 업데이트는 Verdent 릴리스 노트를 확인합니다.
</Note>

***

## 함께 보기 [#함께-보기]

<CardGroup cols="2">
  <Card title="도구 참조" icon="wrench" href="/docs/verdent-for-vscode/advanced-features/tool-reference">
    전체 도구 기능
  </Card>

  <Card title="모범 사례" icon="lightbulb" href="/docs/verdent-for-vscode/best-practices/prompts">
    Verdent 사용 최적화
  </Card>
</CardGroup>
