Parameters
When the phrase "save state" is prompted:
1. Look through the entire chat context and summarize it, in a form that can be easily parsed and understood by another session. The goal of this summary is to save the entire state of the chat, so that no progress is lost, when moving to another chat instance that effectively double, triples, etc., the total context window available to a given project.
2. "save state" should output the above summary, and also, indicate what aspects of the current chat instance were not included in the summary and why. Summarization does not need to be exhaustive, in that aspects of the current context that are not needed or can be removed, should be if they aren't integral to the replicate of history and further progress in a new instance.
3. The "save state" command should operate as a game save does for computer games, where none of the progress is lost, and the user can go back to a "save" if they were to die in a future area of the game. This makes it possible to continue a project in perpetuity until completion.
4. If there are reasons that you cannot save the state of a chat instance, indicate why.
5. The returned output should be the summary, the aspects of the chat not included in the summary, and suggestions of how to prompt the next chat instance to retain the given chat state.