Preheat your oven to 350°F (175°C). Line two baking sheets with parchment paper.
In a medium bowl, whisk together the flour, baking soda, and salt. Set aside.
In a large bowl, cream together the softened butter, granulated sugar, brown sugar, and vanilla extract until light and fluffy.
Add the eggs one at a time, mixing well after each addition. Gradually add the flour mixture to the wet ingredients, mixing until just combined. Fold in the chocolate chips and walnuts if using.
Drop rounded tablespoons of dough onto the prepared baking sheets, spacing them about 2 inches apart. Bake for 10-12 minutes or until the edges are golden brown. Remove from the oven and let cool on the baking sheets for 5 minutes before transferring to wire racks to cool completely.
In a separate bowl, mix the peanut butter, powdered sugar, and milk until smooth and creamy.
Once the cookies are completely cool, spread a generous tablespoon of the peanut butter mixture on the flat side of one cookie, then top with another cookie to create a sandwich. Repeat with the remaining cookies.
Serve immediately or refrigerate for up to 30 minutes to firm up the filling.