"Agile" or "Agile Software Development" isn't a single method. It's an umbrella term covering just a collection of "values" that you might choose to hold. Two different methods can both be "agile" and yet conflict with each other when it comes to practices you should or should not do.
There isn't a clear cut definition of "agile" - so it's not possible to make a definitive list of "agile practices".
There is a definitive list of the basic Extreme Programming Practices (i.e. the things you have to do to meet the basic definition of "doing XP".)
There is also a minimum number of things you have to do to be doing Scrum (although that's not so useful because it says absolutely nothing at all about specific engineering practices.)