Passer au contenu principal

outil apply_patch

Appliquez des modifications de fichiers à l’aide d’un format de correctif structuré. C’est idéal pour les modifications multi-fichiers ou multi-sections où un seul appel edit serait fragile. L’outil accepte une seule chaîne input qui encapsule une ou plusieurs opérations sur des fichiers :
*** 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

Paramètres

  • input (obligatoire) : contenu complet du correctif, y compris *** Begin Patch et *** End Patch.

Remarques

  • Les chemins du correctif prennent en charge les chemins relatifs (depuis le répertoire de travail) et les chemins absolus.
  • tools.exec.applyPatch.workspaceOnly est défini par défaut sur true (limité au workspace). Définissez-le sur false uniquement si vous voulez intentionnellement que apply_patch écrive/supprime en dehors du répertoire de travail.
  • Utilisez *** Move to: dans une section *** Update File: pour renommer des fichiers.
  • *** End of File marque une insertion uniquement en fin de fichier si nécessaire.
  • Disponible par défaut pour les modèles OpenAI et OpenAI Codex. Définissez tools.exec.applyPatch.enabled: false pour le désactiver.
  • Vous pouvez éventuellement le restreindre par modèle via tools.exec.applyPatch.allowModels.
  • La configuration se trouve uniquement sous tools.exec.

Exemple

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