Pour a glug of the oil into a pan and sauté the onion and garlic over medium-low heat until soft, around 7 minutes. Add the beans, stock, and marinara to the pan with the onion and garlic and stir together. Cook over low heat.
At the same time, boil the cavolo nero in a small pot of salted water. When soft, strain it, add it to the bean mixture, and stir. Continue to cook on a low simmer with the lid askew for about 15 minutes.
Remove half the mixture and add half to a blender. Puree it then set aside.
In a separate pan, boil the pasta in salted water according to the directions on the package. When it’s done, strain it, reserving about a cup of the water,
Place spaghetti in a large bowl - add about 1 cup of the bean mixture to the pasta along with 1 cup of the pureed mixture. Add some of the pasta water if it needs it.
Season well. Add more bean mixture to each bowl along with a drizzle of oil. Sprinkle with pepper and Parmigiano.
