1. A method comprising: generating a session for an application executing on a remote debugging system; during the session, receiving one or more application inputs for the application from one or more remote users and providing outputs generated by the application for presentation to the one or more remote users; receiving a request to restart the session from a particular remote user; in response to receiving the request to restart the session, resubmitting the one or more application inputs to the application to replicate an ending application state for the session; and providing, for presentation to the particular remote user, a restarted session for the application starting from the ending application state.