Saltar al contenido principal
Aplica cambios de archivos usando un formato de parche estructurado. Es ideal para ediciones de varios archivos o varios fragmentos donde una sola llamada a edit sería frágil. La herramienta acepta una única cadena input que envuelve una o más operaciones de archivo:
*** 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

Parámetros

  • input (obligatorio): Contenido completo del parche, incluidos *** Begin Patch y *** End Patch.

Notas

  • Las rutas del parche admiten rutas relativas (desde el directorio del espacio de trabajo) y rutas absolutas.
  • tools.exec.applyPatch.workspaceOnly tiene como valor predeterminado true (contenido dentro del espacio de trabajo). Establécelo en false solo si quieres intencionalmente que apply_patch escriba/elimine fuera del directorio del espacio de trabajo.
  • Usa *** Move to: dentro de un fragmento *** Update File: para cambiar el nombre de archivos.
  • *** End of File marca una inserción solo EOF cuando sea necesario.
  • Habilitado de forma predeterminada para todos los modelos. Establece tools.exec.applyPatch.enabled: false para deshabilitarlo, o restríngelo a modelos específicos con tools.exec.applyPatch.allowModels (acepta ids sin procesar como gpt-5.4 o ids completos como openai/gpt-5.4).
  • La configuración reside en tools.exec.applyPatch.*.

Ejemplo

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

Relacionado

Diffs

Visor de diferencias de solo lectura para la presentación de cambios.

Herramienta Exec

Ejecución de comandos de shell desde el agente.

Ejecución de código

Análisis remoto de Python en entorno aislado con xAI.