Preheat the oven to 350℉. Prepare a muffin tin for 12 with cooking spray or muffin liners.
If using whole oats, add oats to a high speed blender. Blend on high speed until the oats become a fine flour-like texture. Add the milk and flaxseed. Blend at high speed until flaxseed and oats are almost invisible in the milk.
Add the oil, agave, and vanilla to the milk mixture and pulse to combine.
On top of the wet ingredients, add the flour, cinnamon, baking soda, baking powder, and salt. Set the blender speed to low and pulse until just combined (mix as little as possible).
If you are adding mix-ins, gently stir them into the batter by hand. Distribute the batter evenly among the muffin cups, filling each about ⅔ of the way full.
For the streusel: In a small bowl, add the butter, ¼ cup flour, ¼ cup oats, brown sugar, and ½ teaspoon cinnamon. Toss to combine. Using a pastry blender, two knives, or your fingers, cut the butter into the dry mixture. Stop once the mixture is still crumbly and all chunks of butter are smaller than a pea. Spoon the streusel mixture evenly on top of the muffin batter and tap lightly to adhere the streusel to the batter.
Bake at 350℉ for 15-20 minutes, or until a toothpick inserted into the center of a muffin comes out clean.
Let cool slightly before enjoying! Store in an airtight container at room temperature for up to three days.