Depends on whether you want “exactly” what the user typed or the systems interpretation. For the system’s interpretation, merely do:
u: (_*) $$usertyped = ^join( $$usertyped ” ” ‘_0)
which will accumulate it and later you can use
u: (!%more)
to know there are no more input sentences and do something with $$usertyped
If you want LITERALLY what they typed, the easiest way is to have all your tokenflags turned off except for system essentials (so no spell checking, no substitutions, etc) although you still get the system’s tokenization processing. Memorize that, then turn on the normal flags and do a retry on the input so you get normal processing as well. Then you have to turn off tokenflags at the end, ready for the next round. (one can reverse the order of whether tokenflags are on or off, but its more cumbersome with on first, since you have to deal with the output generated).