Tools
apply_patch aracı
Yapılandırılmış bir yama formatı kullanarak dosya değişiklikleri uygulayın. Bu, tek bir edit çağrısının kırılgan olacağı çok dosyalı
veya çok hunk'lı düzenlemeler için idealdir.
Araç, bir veya daha fazla dosya işlemini saran tek bir input dizesi kabul eder:
*** Begin Patch
*** Add File: path/to/file.txt
+line 1
+line 2
*** Update File: src/app.ts
@@
-old line
+new line
*** Delete File: obsolete.txt
*** End Patch
Parametreler
input(gerekli):*** Begin Patchve*** End Patchdahil tam yama içeriği.
Notlar
- Yama yolları göreli yolları (çalışma alanı dizininden) ve mutlak yolları destekler.
tools.exec.applyPatch.workspaceOnlyvarsayılan olaraktruedeğerindedir (çalışma alanıyla sınırlı). Yalnızcaapply_patcharacının çalışma alanı dizini dışında yazmasını/silmesini özellikle istiyorsanız bunufalseolarak ayarlayın.- Dosyaları yeniden adlandırmak için bir
*** Update File:hunk'ı içinde*** Move to:kullanın. *** End of File, gerektiğinde yalnızca EOF eklemesini işaretler.- OpenAI ve OpenAI Codex modelleri için varsayılan olarak kullanılabilir. Devre dışı bırakmak için
tools.exec.applyPatch.enabled: falseayarlayın. - İsteğe bağlı olarak model bazında şu yapılandırmayla sınırlayın:
tools.exec.applyPatch.allowModels. - Yapılandırma yalnızca
tools.execaltındadır.
Örnek
{
"tool": "apply_patch",
"input": "*** Begin Patch\n*** Update File: src/index.ts\n@@\n-const foo = 1\n+const foo = 2\n*** End Patch"
}