Plone can be customized in two different ways, depending on which kind of component you are trying to change
You should never edit files directly in eggs folder. Instead you usually create a customized version of the item you wish to modify and then configure Plone to use your customized version instead of stock one.
Minor configuration changes can be done through the web. Through the web changes are effective immediately and don't require you to write any code or restart Zope application server. The downsite is that since through-the-web changes don't have source code "recipe" how you did the changes they are not repea le. If you need to do the same changes for another site again, or you need heavily modify your site, you need go through manual steps to achieve the same customization.
Possible through-the-web changes are
When you need to do expand Plone through Python the only way is to create your own add-on product for Plone. Add-on products are distributed as packaged Python modules called eggs. The recommended way is to use paster command to generate add-on product skeleton which you can use as a starting point for your development. Paster also contains useful subcommands, like addcontent, which automatize various tasks of Plone add-on development.
The source code of this file is hosted on GitHub. Everyone can update and fix errors in this document with few clicks - no downloads needed.
For basic information about updating this manual and Sphinx format please see Writing and updating the manual guide.