Every time you run Qoder CLI, it creates a session that records the complete history of the conversation—your inputs, Qoder's responses, and tool calls. Sessions can be continued, resumed, named, branched, and cleared, allowing you to flexibly switch between different tasks and pick up where you left off after an interruption.Sessions are isolated and stored per project. Each session has a unique session ID, and session logs are saved in project-organized directories under the User Configuration Directory (default ~/.qoder/projects/<project>/<session-id>.jsonl).
Running qoder directly in the project root directory starts a new session, and the system automatically generates a session ID:
Copy
qoder
In an interactive session, use /new to start a brand new session; /clear clears the Conversation History and also starts a new session, both achieving similar results.
Use -r (--resume) to resume a previous session by its ID:
Copy
qoder -r <session-id>
Running qoder --resume without an ID opens the Session Browser, allowing you to select the session to resume from a list. In an interactive session, the /resume command also opens the Session Browser; /continue continues the most recent session.
Use --fork-session to fork a resumed session into a new branch instead of continuing the original session. This allows you to explore different directions from a historical point while keeping the original session intact:
Copy
qoder -r <session-id> --fork-session
In an interactive session, you can also use /branch to create a branch from the current session.
Within this directory, .jsonl stores the conversation logs, and state.json stores the session state. The User Configuration Directory defaults to ~/.qoder and can be customized via the QODER_CONFIG_DIR Environment Variable.