Tools

apply_patch aracı

Yapılandırılmış bir yama biçimi kullanarak dosya değişikliklerini uygulayın. Bu, tek bir edit çağrısının kırılgan olacağı birden çok dosyayı veya birden çok parçayı kapsayan düzenlemeler için idealdir.

Araç, bir veya daha fazla dosya işlemini sarmalayan tek bir input dizesini kabul eder:

text
*** Begin Patch*** Add File: path/to/file.txt+satır 1+satır 2*** Update File: src/app.ts@@ isteğe bağlı değişiklik bağlamı-eski satır+yeni satır*** Delete File: obsolete.txt*** End Patch

Parametreler

  • input (zorunlu): *** Begin Patch ve *** End Patch dâhil olmak üzere yamanın tam içeriği.

Notlar

  • Yama yolları, göreli yolları (çalışma alanı dizininden itibaren) ve mutlak yolları destekler.
  • tools.exec.applyPatch.workspaceOnly varsayılan olarak true değerini kullanır (çalışma alanıyla sınırlı). Yalnızca apply_patch aracının çalışma alanı dizini dışında yazmasını/silmesini özellikle istiyorsanız bunu false olarak ayarlayın.
  • Dosyaları yeniden adlandırmak için bir *** Update File: parçası içinde *** Move to: kullanın.
  • *** End of File, gerektiğinde yalnızca EOF konumuna eklemeyi işaretler.
  • Her model için varsayılan olarak etkindir. Devre dışı bırakmak için tools.exec.applyPatch.enabled: false değerini ayarlayın veya tools.exec.applyPatch.allowModels ile belirli modellerle sınırlandırın (gpt-5.4 gibi ham kimlikleri veya openai/gpt-5.4 gibi tam kimlikleri kabul eder).
  • Yapılandırma tools.exec.applyPatch.* altında bulunur.

Örnek

json
{  "tool": "apply_patch",  "input": "*** Begin Patch\n*** Update File: src/index.ts\n@@\n-const foo = 1\n+const foo = 2\n*** End Patch"}

İlgili

Was this useful?
On this page

On this page