How can I find all the changes I've made to my system via "defaults write"?

It's not possible to distinguish changes made by you with defaults versus changing the setting using the GUI equivalent preference if one exists, since both perform writes to the property list files in the same way.

Theoretically, the default value shouldn't be written to preference files. Therefore, the only values in ~/Library/Preferences property list files should be ones overridden by you. You will have to investigate these files for the preferences you're using.

Create a new user account and open the software you use without making any changes. Diff the contents of ~/Library/Preferences from this user account with your normal user account, such as with Kaleidoscope, to identify changes made to preferences.


If you have enough spare space on your disk or an external disk, I suggest you to install the same version of MacOS you are running now on this spare disk space as a "configuration reference". Bring this MacOS "configuration reference" to the same upgrade level as your MacOS version you have modified (for my example, let's say you are running Yosemite version 10.10.5).

Then run:

defaults read >/tmp/defaults_MacOS_10.10.5.orig

on your MacOS "configuration reference", and run:

defaults read >/tmp/defaults_MacOS_10.10.5.modified

on the MacOS you have modified.

Bring the 1st file onto your working MacOS, and compare them with diff:

diff defaults_MacOS_10.10.5.{orig,modified} | more

Beware, for some preferences, the content might be huge but not really useful (like windows coordinates).

Next you will have to navigate through the differences found, and create in a personnal text file, comments to explain why this default was modified. A sort of documented history of your working MacOS.