Agents

Paths below are the defaults. Point any of them somewhere else with the environment variable in the last column. A missing directory is skipped. ai9s only reads session stores. It does not read credential files.

AgentWhat is readResumeDeleteOverride
claude$CLAUDE_CONFIG_DIR/projects/**/*.jsonlclaude --resume <id>the transcript fileCLAUDE_CONFIG_DIR
codex$CODEX_HOME/sessions/**/rollout-*.jsonlcodex resume <id>the rollout fileCODEX_HOME
copilot$COPILOT_HOME/session-state/<id>/copilot --resume <id>that session directoryCOPILOT_HOME
grok$GROK_HOME/sessions/**/summary.jsongrok --resume <id>that session directory, and its active-session and metadata entriesGROK_HOME
antigravity$GEMINI_HOME/antigravity-cli/history.jsonlagy --conversation <id>that conversation's linesGEMINI_HOME
gemini$GEMINI_HOME/tmp/<project>/chats/session-*.jsongemini --session-file <path>that chat fileGEMINI_HOME
cursor$CURSOR_HOME/projects/**/agent-transcripts/<id>/<id>.jsonlcursor-agent --resume <id> (or agent)the transcript fileCURSOR_HOME
opencode$XDG_DATA_HOME/opencode/opencode.dbopencode --session <id>opencode session delete <id>OPENCODE_DB
hermes$HERMES_HOME/state.db and profiles/<name>/state.dbhermes --resume <id> (-p <profile> for a named profile)hermes sessions delete <id> --yesHERMES_HOME
openclaw$OPENCLAW_STATE_DIR/agents/<id>/agent/openclaw-agent.sqliteopenclaw resume <session-key>openclaw sessions delete <key> --yesOPENCLAW_STATE_DIR, else OPENCLAW_HOME
junie$JUNIE_HOME/sessions/session-*/transcript.mdjunie --resume --session-id=<id>that session directoryJUNIE_HOME
jules$JULES_HOME/sessions.json or sessions.txtjules teleport <id>that row, or the cloud session when JULES_API_KEY is setJULES_HOME
goose$GOOSE_HOME/sessions/sessions.dbgoose session --resume --session-id <id>goose session remove --session-id <id>GOOSE_HOME
cline$CLINE_HOME/data/state/taskHistory.jsoncline task open <id>rewrite the history, then remove the task directoryCLINE_HOME
aider.aider.chat.history.md under the configured rootsaider --restore-chat-historythat history fileAIDER_CHAT_ROOTS, AIDER_HOME, AIDER_CHAT_HISTORY
kirokiro-cli data.sqlite3 (conversations_v2)kiro-cli chat --resume-id <id>that conversation; the shell history table staysKIRO_CLI_DB, else KIRO_HOME

Yolo

ai9s resume --yolo adds a flag only when the agent documents one:

Codex, Gemini, OpenCode, OpenClaw, Jules, Goose, and Aider resume without an extra approval flag.

Read limits

What delete removes

Grok delete removes the one session directory whose name is that session id, when summary.json is a regular file inside it. It also drops that id from active_sessions.json and client-state/session-meta.json when those files exist. The project prompt_history.jsonl stays.

Gemini delete removes that one session-*.json file under tmp/<project>/chats/, after the file's sessionId matches. Project caches and projects.json stay.

Kiro delete removes that conversation from conversations_v2 and, when the same key is present, from conversations. The shell history table is left as it is. The database file stays.

Jules keeps a local list in sessions.json or sessions.txt. Delete rewrites that file without the chosen id. The jules command has no delete subcommand. A remote session is deleted with the Jules API when JULES_API_KEY is set. Without that key, the cloud session is left in place and delete says so. ai9s does not read the Jules keyring.

Antigravity stores every conversation in one history.jsonl. Delete rewrites that file without the chosen id. Cline delete rewrites taskHistory.json first, then removes that task's directory. OpenCode, Hermes, OpenClaw, and Goose delete through each CLI. Other deletes remove a single transcript or Aider history file, or one Copilot session-state or Junie session-* directory, and only when the path is still inside that agent's session root.

Not indexed yet

These need a stable file layout and a real resume command before an adapter should claim them: Copilot in VS Code, Kimi, Qwen, Pi, Crush, Vibe, and Prime. Adding one is described in Contributing.

Marks

Describe and the all-session stats show a two-letter mark: Ca claude, Cx codex, Cp copilot, Gk grok, Ag antigravity, Ge gemini, Cu cursor, Oc opencode, He hermes, Oa openclaw, Jn junie, Ju jules, Go goose, Cl cline, Ai aider, Ki kiro. An unknown agent is ??. The session list does not have that column.