Patterns are awesome. With great powers comes great responsibility
Measure the tradeoff of patterns usage.
Create solutions based on real world names (essential) over architecture (accidental).
Choose good names.
It would be very difficult to create automatic detection rules.
A class name with more than one pattern on it, is a warning.
Chose when to apply a pattern solution. You are not smarter for using too many patterns. You are smart if you choose the right opportunity for everyone.
When you have a hammer, every problem looks like a nail.