Cook the pasta. Bring a large soup pot or Dutch oven (I use my 4.5 quart Le Creuset pot) Add shells and cook until tender but not mushy. The pasta will cook a little bit more in the soup so don't overcook it in this step. Drain and run under cold water to stop the cooking. Drizzle with a little olive oil to prevent sticking. Set aside. Sauté vegetables. Heat oil in a large saucepan over medium-high heat. Add onions and season with salt and pepper. Cook, stirring occasionally, until translucent. Add garlic, sage, and rosemary and cook for 1 minute. Add tomato paste and cook, stirring constantly until tomato paste blends into the veggies.
Simmer. Add broth and beans (juice and all, don't drain) and bring to a boil. Reduce heat to low and simmer until onion is tender and flavors have melded, at least 10 minutes or up to an hour. Taste and add more salt and pepper if necessary.
Serve. When ready to serve, divide pasta among 4 bowls and ladle soup over the top. You can serve the soup with some grated parmesan if desired, but then it would no longer be vegan, so there you go. Drizzle with a little more olive oil and top with fresh herbs and chili flakes.