Fully 2.x/3.x-compatible prompting