Apply a patch to edit one or more files. The patch language is a stripped-down, file-oriented diff format designed to be easy to parse and safe to apply.

Format:
*** Begin Patch
[ one or more file sections ]
*** End Patch

Each file section starts with one of three headers:
- *** Add File: <path>      - Create a new file. Every following line is a + line (the initial contents).
- *** Delete File: <path>   - Remove an existing file. Nothing follows.
- *** Update File: <path>   - Modify an existing file in place (optionally with a rename via *** Move to: <path>).

For Update File sections, include context lines (prefixed with space) and change lines (prefixed with - for removals, + for additions).

Example patch:

```
*** Begin Patch
*** Add File: hello.txt
+Hello world
*** Update File: src/app.py
*** Move to: src/main.py
@@ def greet():
-print("Hi")
+print("Hello, world!")
*** Delete File: obsolete.txt
*** End Patch
```

Rules:
- Every patch must begin with *** Begin Patch and end with *** End Patch
- You must include a header with your intended action (Add/Delete/Update)
- New lines must be prefixed with +
- Removed lines must be prefixed with -
- Context lines must be prefixed with a space
