No, there is no way for an automation script to get inputs directly from the user. You must create fields for the user input and have the user enter all the data in the fields before the automation is triggered.
That is what I am doing but it does prevent any workflow where the script logic dictates a certain flow, for example using the input.recordAsync function to display certain records based on a previous selection.
Seems like this is something that is missing from the interface since the functionality is already there for the extension. All they need to do is add a modal in the interface so we can have the same functionality.
I came up with a bit of a workaround. Quite simple. Just have the interface button lead to a form, then on that form you have a submit button that triggers a webhook.
Still doesn't help with getting inputs mid script. . . should be something on airtables roadmap since this works in the scripting extension.