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 fazla dosyayı veya birden fazla bölümü kapsayan düzenlemeler için idealdir.

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

text
*** 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

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ğerindedir (çalışma alanıyla sınırlıdır). Yalnızca apply_patch aracının çalışma alanı dizini dışında yazmasını/silmesini bilinçli olarak istiyorsanız bunu false olarak ayarlayın.
  • Dosyaları yeniden adlandırmak için bir *** Update File: bölümü içinde *** Move to: kullanın.
  • *** End of File, gerektiğinde yalnızca dosya sonuna yapılacak bir eklemeyi işaretler.
  • Her model için varsayılan olarak etkindir. Devre dışı bırakmak için tools.exec.applyPatch.enabled: false olarak ayarlayın veya tools.exec.applyPatch.allowModels ile belirli modellerle sınırlandırın (gpt-5.4 gibi ham kimlikleri ya da 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