Tools
apply_patch 도구
구조화된 패치 형식을 사용하여 파일 변경 사항을 적용합니다. 단일 edit 호출로 처리하기에는 불안정할 수 있는 여러 파일 또는 여러 헝크 편집에 적합합니다.
이 도구는 하나 이상의 파일 작업을 감싸는 단일 input 문자열을 받습니다.
*** Begin Patch*** Add File: path/to/file.txt+line 1+line 2*** Update File: src/app.ts@@ optional change context-old line+new line*** Delete File: obsolete.txt*** End Patch매개변수
input(필수):*** Begin Patch와*** End Patch를 포함한 전체 패치 내용입니다.
참고 사항
- 패치 경로는 상대 경로(작업 공간 디렉터리 기준)와 절대 경로를 지원합니다.
tools.exec.applyPatch.workspaceOnly의 기본값은true(작업 공간 내부로 제한)입니다. 의도적으로apply_patch가 작업 공간 디렉터리 외부에 쓰거나 외부 파일을 삭제하도록 하려는 경우에만false로 설정하세요.- 파일 이름을 변경하려면
*** Update File:헝크 내에서*** Move to:를 사용하세요. - 필요한 경우
*** End of File은 파일 끝에만 삽입함을 나타냅니다. - 모든 모델에 기본적으로 활성화되어 있습니다. 비활성화하려면
tools.exec.applyPatch.enabled: false로 설정하거나,tools.exec.applyPatch.allowModels를 사용하여 특정 모델로 제한하세요. 이 설정은gpt-5.4와 같은 원시 ID 또는openai/gpt-5.4와 같은 전체 ID를 허용합니다. - 구성은
tools.exec.applyPatch.*아래에 있습니다.
예시
{ "tool": "apply_patch", "input": "*** Begin Patch\n*** Update File: src/index.ts\n@@\n-const foo = 1\n+const foo = 2\n*** End Patch"}관련 항목
Was this useful?