In a large bowl, whisk together the flour, cocoa powder, salt, and optional espresso powder.
1 ½ cups all purpose flour, ½ cup Dutch process cocoa powder, 1 teaspoon espresso powder, 1 teaspoon kosher salt
In a separate large bowl, beat together the butter, brown sugar, and granulated sugar with a mixer on medium speed until light and fluffy, 2 to 3 minutes.
½ cup unsalted butter, ½ cup dark brown sugar, ½ cup granulated sugar
Beat in the cream cheese, followed by the egg yolks and vanilla, mixing well and scraping down the bowl as needed. Reduce the mixer speed to low and sift in the flour mixture, switching to a rubber spatula about halfway through to avoid overmixing.
2 ounces cream cheese, 2 large egg yolks, 1 tablespoon vanilla extract
Scoop the dough into 22-24 portions using a cookie scoop, then, using your hands, roll the cookie dough into smooth balls.
Using your thumb or a ¼-teaspoon size measuring spoon, make a small indentation in the center of each dough ball, pressing about three-quarters of the way down (do not press all the way to the baking sheet). Refrigerate until firm, about 1 hour, or, freeze for even quicker and more reliable results!
Preheat the oven to 350°F. Bake the cookies, rotating the pans halfway through, until the centers have puffed up slightly and the edges are set, 15 to 17 minutes. Using the back of a small measuring spoon, gently press the centers of the cookies to indent them again.
Let cool 5 minutes on the baking sheets, then move the cookies to a rack to cool completely.
Using a piping bag, a Ziploc bag, or just a spoon, fill the center of each cookie with about ½ a tablespoon of Nutella. Sprinkle the filling with crushed hazelnuts if desired. Enjoy!
11-12 tablespoons Nutella, ½ tablespoon chopped hazelnuts
Store leftovers in an airtight container at room temperature for up to 5 days. Use parchment paper between the layers to prevent sticking.