Tools

apply_patch ツール

構造化パッチ形式を使用してファイル変更を適用します。単一の edit 呼び出しでは壊れやすい、複数ファイルまたは複数ハンクにわたる編集に適しています。

このツールは、1つ以上のファイル操作をラップする単一の 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(ワークスペース内に限定)です。apply_patch で意図的にワークスペースディレクトリ外へ書き込みまたは削除を行う場合にのみ、false に設定してください。
  • ファイル名を変更するには、*** Update File: ハンク内で *** Move to: を使用します。
  • *** End of File は、必要に応じてファイル終端にのみ挿入することを示します。
  • すべてのモデルで既定で有効です。無効にするには tools.exec.applyPatch.enabled: false を設定します。または、tools.exec.applyPatch.allowModels を使用して特定のモデルに限定できます(gpt-5.4 のような生の ID、または openai/gpt-5.4 のような完全な ID を指定できます)。
  • 設定は 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