Create and apply diffs with AI
Modify projects with natural language
gptdiff "Add button animations on press" --apply
✅ Successfully applied patchgptdiff "Add API documentation" --call
🔧 Patch written to diff.patchgptdiff "Improve error messages"
📄 LLM not called, written to prompt.txtgptdiff "Improve login error messages" auth.py --apply
✅ Patch applied: auth.py updated successfullySet up agents loops with simple bash commands
while
do
  gptdiff "Add missing test cases" --apply
done
open source and MIT licensed at github.com/255BITS/gptdiff
🚀 Make impactful changes with one command
- --applyAI-powered patch recovery
- --nobeepDisable completion notifications
- --temperatureControl creativity (0-2)
- --modelSwitch between LLM providers
Features
- Describe changes in plain English
- AI gets your whole project
- Auto-fixes conflicts
- Keeps code functional
- Fast setup, no fuss
- You approve every change
- Costs are upfront
Ready to simplify your workflow? Try GPTDiff now!
How to develop with gptdiff
🚀 The new dev cycle
- 
      Generate Changesgptdiff "Add type safety" --apply
- 
      Review Modificationsgit add -p
- 
      Finalize Changesgit commit -m 'AI improvements'
- 
      Stash Uncommitted Changesgit stash
Getting Started
For a step-by-step guide on how to install and configure gptdiff, check out the Installation Guide.
$ pip install gptdiff
Using gptpatch
You can further refine your diff application using gptpatch. For example, to enhance clarity:
gptdiff "make the value prop clearer" splash.html
Then, copy the generated prompt from prompt.txt to your clipboard and send it to OpenAI. Once you receive the outputs, open patch.diff, paste the outputs, and finally run:
gptpatch patch.diff
Note: You can configure GPTDIFF_SMARTAPPLY_ variables independently from the base GPTDIFF_ variables.
Using Anthropic Claude with Extended Thinking
When working with Anthropic Claude models, you can enable the extended thinking capability using the --anthropic_budget_tokens flag: