Prep the pan and oven: Heat the oven to 350°F (175°C). Line a 9x13-inch metal baking pan with parchment, leaving overhang for easy lifting. Lightly grease the parchment.
Melt the butter: In a medium saucepan over low heat, melt the butter.
Remove from heat and whisk in granulated and brown sugars until glossy and combined.
Whisk in eggs and vanilla: Add the eggs one at a time, whisking well after each. Stir in the vanilla. The mixture should look thick and shiny.
Fold in dry ingredients: Sift in cocoa, flour, and salt.
Switch to a spatula and fold just until no dry streaks remain. Fold in mini chocolate chips, if using. Do not overmix.
Spread batter: Pour the brownie batter into the prepared pan and smooth the top.
Tap the pan once on the counter to level.
Make the cheesecake mixture: In a bowl, beat the softened cream cheese with sugar until smooth and creamy. Add the egg yolk, vanilla, salt, and cornstarch. Beat just until silky and thick.
Bag it up: Transfer the cheesecake mixture to a piping bag fitted with a round tip (or use a zip-top bag with a 1/2-inch corner snipped off).
Pipe the ghosts: Pipe small mounds of cheesecake on top of the brownie batter, using a steady squeeze and small upward pull to create a ghostly peak.
Leave a little space between ghosts to help them hold shape.
Add faces: Gently press mini chocolate chips point-side in for eyes. For a mouth, add another chip or a tiny sprinkle of cocoa.
Bake: Bake for 28–34 minutes, until the brownie edges are set and a toothpick inserted 2 inches from the edge comes out with a few moist crumbs. The cheesecake ghosts should be just set with a slight wobble.
Cool completely: Let the pan cool on a rack for 1–2 hours.
For clean cuts and best flavor, chill at least 1 hour after cooling.
Slice and serve: Lift out using the parchment. Warm a sharp knife under hot water, wipe dry, and cut into squares. Serve slightly chilled or at room temperature.