In a large pot, warm the oil over medium heat. For two to three minutes, or until the onion becomes transparent, sauté the garlic, onion, and carrots.
Add the cashews, squash, pumpkin, tomato paste, water or broth, and the rest of the ingredients and seasonings; stir until thoroughly mixed.
After the mixture reaches a simmer, place a lid on it and cook, stirring every ten minutes or so, until the squash is cooked, taking care not to let it stick to the bottom of the pot. Add extra water as necessary if the mixture has decreased excessively.
Puree the cooked ingredients with an immersion blender until it's smooth. Alternatively, (when it has cooled slightly) transfer the liquid to a blender. If extra water is required to get a smooth grind, add it.
Serve right away over hot spaghetti or store in the refrigerator in a bottle until needed.