In a large mixing bowl, beat together 1 cup softened unsalted butter, 1 cup brown sugar, and 1/2 cup granulated sugar until light and fluffy, about 3-4 minutes.
Add 2 large eggs, one at a time, beating well after each addition. Then add 2 teaspoons vanilla extract and mix until combined.
In a separate bowl, whisk together 1 cup all-purpose flour, 1/2 cup unsweetened cocoa powder, 1 teaspoon baking soda, and 1/2 teaspoon salt.
Gradually add the dry ingredients to the wet ingredients, stirring until just combined. Avoid overmixing.
Fold in 1 cup chocolate chips and 1/2 cup chopped nuts if using.
Preheat oven to 350°F (175°C). Line baking sheets with parchment paper or silicone mats. Drop rounded tablespoons of dough 2 inches apart onto the baking sheets.
Bake for 10-12 minutes until edges are set but centers remain slightly soft for a chewy texture.
Cool cookies completely on a wire rack. Top each cookie with a scoop of your favorite ice cream, drizzle with chocolate sauce, and add whipped cream before serving.