Currently, all positional arguments must always be given before any named option/flag is passed.
I can pretend it is because I didn't want to make it too "flexodynamic", but it's kind of because I was thinking maybe named options could use space instead of equals to separate the option name from its argument: blast frog --what=vent-core and blast frog --what vent-core would be the same, and blast --what vent-core frog would be (a little) more complicated to parse.
If we just lock in = (totally usable, even if it in some shells breaks tab completion) the parsing is not even hard, we just skip over options when getting positional arguments. Or perhaps just even allow spaces to separate options from their value, but that would complicate boolean options which can have a value, or just be present to indicate True.