I love the idea!  I would prefer to pass interactive as a command to the function, and have the function itself do this.  Or to wrap the function with one that does the user input.  But I expect if we have anything more than simply calling the function (with relevant parameters) here, it will get extraordinarily hard to read.