apply_patch-Werkzeug¶
Wenden Sie Dateiänderungen mit einem strukturierten Patch-Format an. Dies ist ideal für Änderungen über mehrere Dateien
oder mehrere Hunks hinweg, bei denen ein einzelner edit-Aufruf fragil wäre.
Das Werkzeug akzeptiert eine einzelne input-Zeichenkette, die eine oder mehrere Dateioperationen kapselt:
*** 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
Parameter¶
input(erforderlich): Vollständiger Patch-Inhalt einschließlich*** Begin Patchund*** End Patch.
Hinweise¶
- Patch paths support relative paths (from the workspace directory) and absolute paths.
tools.exec.applyPatch.workspaceOnlydefaults totrue(workspace-contained). Set it tofalseonly if you intentionally wantapply_patchto write/delete outside the workspace directory.- Verwenden Sie
*** Move to:innerhalb eines*** Update File:-Hunks, um Dateien umzubenennen. *** End of Filekennzeichnet bei Bedarf ein reines EOF-Insertion.- Experimentell und standardmäßig deaktiviert. Aktivieren Sie es mit
tools.exec.applyPatch.enabled. - Nur für OpenAI (einschließlich OpenAI Codex). Optional nach Modell steuerbar über
tools.exec.applyPatch.allowModels. - Die Konfiguration befindet sich ausschließlich unter
tools.exec.
Beispiel¶
{
"tool": "apply_patch",
"input": "*** Begin Patch\n*** Update File: src/index.ts\n@@\n-const foo = 1\n+const foo = 2\n*** End Patch"
}