You do what I do. I play Nf6 always, no exceptions.
What should I play against d4, d5, and nf3 as black?

You could go c5 but no one will accept it (I used to do this but Bf5 is easier and basically the same.) If someone does you are just better with something like Nc6 and if they play normal like Bf4 then you play Bf5 with a nice London (annoying but no choice). The reason I stopped playing it is that my friend, who was trying the reti did this:
You won't get it much and it is completely fine for black, but it's very annoying because playing e6 seems like the move (it's the best by engine, most played in masters, and natural, but I felt like it kinda ruins c5 because my light spared bishop gets blocked). Instead of e6 you have other moves that are just as good like Nf6, but it is just complicated for no reason (I play a lot of complicated positions, but this one seems more one-sided.) Nevertheless, c5 is a fine move and will (maybe) get you some ez wins if the take the pawn, and a normal position if they don't.
Note: After playing c5, you will rarely see c4.
Another Note: You can do the same after this:
Against london if they accept on c5 there actually an idea (g5 f6 e5), gambiting the pawn to win the center. You can even play this with some preparation otherwise.

After accepting I play nc6 with the idea to play e5 directly.
That is practically good but a knowledgeable player can wreak havoc on black's position after e4:
That being said, I don't think anyone will do this so Nc6 might get you better positions against you average opponent.
Any recommendations for playing against this opening? It looks very solid when observing it from the engine, but I was curious to see if there are any gambits or traps within this opening. I usually just play nf6 and it transposes into a London system.