Tools

أداة apply_patch

طبّق تغييرات الملفات باستخدام تنسيق تصحيح منظّم. يُعد هذا مثاليًا للتعديلات التي تشمل عدة ملفات أو عدة مقاطع، حيث قد يكون استدعاء edit واحد هشًا.

تقبل الأداة سلسلة input واحدة تغلّف عملية واحدة أو أكثر من عمليات الملفات:

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

المعلمات

  • input (مطلوب): محتويات التصحيح كاملة، بما في ذلك *** Begin Patch و*** End Patch.

ملاحظات

  • تدعم مسارات التصحيح المسارات النسبية (بدءًا من دليل مساحة العمل) والمسارات المطلقة.
  • القيمة الافتراضية لـ tools.exec.applyPatch.workspaceOnly هي true (محصور داخل مساحة العمل). اضبطها على false فقط إذا كنت تريد عمدًا أن يكتب apply_patch أو يحذف خارج دليل مساحة العمل.
  • استخدم *** Move to: داخل مقطع *** Update File: لإعادة تسمية الملفات.
  • تشير *** End of File إلى إدراج عند نهاية الملف فقط عند الحاجة.
  • تكون مفعّلة افتراضيًا لكل نموذج. اضبط tools.exec.applyPatch.enabled: false لتعطيلها، أو احصرها في نماذج محددة باستخدام tools.exec.applyPatch.allowModels (تقبل معرّفات أولية مثل gpt-5.4 أو معرّفات كاملة مثل openai/gpt-5.4).
  • يوجد الإعداد ضمن tools.exec.applyPatch.*.

مثال

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"}

ذو صلة

Was this useful?
On this page

On this page