In a large saucepan, soften the onions in the butter. Meanwhile, trim about 5cm off the ends of 16 of your thinnest asparagus spears and set these aside. Roughly chop the remaining asparagus and stir into the onions. Cook for a few mins, then tip in the stock. Cover and boil for 10 mins, then uncover, stir in the peas and cook for 2 mins more.
Whizz the soup with a blender until smooth, then return to the pan. Season well and add a splash more water if it looks a little thick.
Meanwhile, cook the reserved asparagus tips in boiling water until just cooked, then drain and dry on kitchen paper.
When you’re ready to serve, warm the soup gently. Brush the baguette slices with the hazelnut oil and toast, then spread with some goat’s cheese and top with a couple of the asparagus tips, plus a sprinkling of hazelnuts. Ladle the soup into bowls, float a toast on each with a few pea shoots and drizzle with a little more hazelnut oil. Serve extra toasts on the side.