Tools
เครื่องมือ apply_patch
ใช้การเปลี่ยนแปลงไฟล์ด้วยรูปแบบแพตช์ที่มีโครงสร้าง เหมาะสำหรับการแก้ไขหลายไฟล์
หรือหลายฮังก์ที่การเรียก edit เพียงครั้งเดียวอาจเปราะบาง
เครื่องมือนี้รับสตริง input เดียวที่ครอบการดำเนินการกับไฟล์หนึ่งรายการขึ้นไป:
*** 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
พารามิเตอร์
input(จำเป็น): เนื้อหาแพตช์ทั้งหมด รวมถึง*** Begin Patchและ*** End Patch
หมายเหตุ
- เส้นทางแพตช์รองรับเส้นทางสัมพัทธ์ (จากไดเรกทอรีเวิร์กสเปซ) และเส้นทางสัมบูรณ์
tools.exec.applyPatch.workspaceOnlyมีค่าเริ่มต้นเป็นtrue(จำกัดอยู่ในเวิร์กสเปซ) ตั้งค่าเป็นfalseเฉพาะเมื่อคุณตั้งใจให้apply_patchเขียน/ลบนอกไดเรกทอรีเวิร์กสเปซ- ใช้
*** Move to:ภายในฮังก์*** Update File:เพื่อเปลี่ยนชื่อไฟล์ *** End of Fileทำเครื่องหมายการแทรกเฉพาะ EOF เมื่อจำเป็น- พร้อมใช้งานตามค่าเริ่มต้นสำหรับโมเดล OpenAI และ OpenAI Codex ตั้งค่า
tools.exec.applyPatch.enabled: falseเพื่อปิดใช้งาน - เลือกกำหนดให้จำกัดตามโมเดลได้ผ่าน
tools.exec.applyPatch.allowModels - การกำหนดค่าอยู่ภายใต้
tools.execเท่านั้น
ตัวอย่าง
{
"tool": "apply_patch",
"input": "*** Begin Patch\n*** Update File: src/index.ts\n@@\n-const foo = 1\n+const foo = 2\n*** End Patch"
}