Tools
apply_patch ツール
構造化パッチ形式を使用してファイル変更を適用します。単一の edit 呼び出しでは壊れやすい、複数ファイルまたは複数ハンクにわたる編集に適しています。
このツールは、1つ以上のファイル操作をラップする単一の input 文字列を受け取ります。
*** 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.*配下にあります。
例
{ "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?