Sessions
fx saves interactive conversations under ~/.fx/sessions/. Starting plain fx creates a fresh session. Session IDs are generated by fx and look like 1770000000000-1770000000000000000-a1b2c3d4e5f60718; use fx sessions to find the one you want.
List and inspect
List sessions for the current workspace:
fx sessionsThe default list is scoped to the current workspace. Use --all for every workspace, --limit <1-100> to change the page size, and --cursor <cursor> for the next page.
Inspect the latest workspace session as JSON. The response includes its session ID, timestamps, and saved conversation history:
fx session last --jsonfx session --id <session-id> --json--id forces the value to be read as an exact session ID instead of the last keyword or a subcommand such as migrate or recover. Every fx session form accepts it.
Resume
Open the interactive session picker:
fx -rResume the latest workspace session directly:
fx resume lastCopy an ID from fx sessions to resume a specific session:
fx resume <session-id>An explicit ID can be rebound to the current workspace. last remains workspace-scoped. -c, --continue, and --resume-last are equivalent leading flags for the latest workspace session.
fx ask can continue the same conversation without opening the shell:
fx ask --resume last "continue with the tests"Recover interrupted work
fx persists partial model responses, tool progress, and recovery checkpoints. In an interactive session, /continue resumes a paused response.
For a headless run:
fx ask --resume last --continue-recoveryTo create a separate recoverable copy while leaving the source session unchanged, copy the ID from fx sessions:
fx session recover <session-id>fx doctor inspects saved sessions and prints the exact recovery command when it finds a problem it can fix. See Troubleshooting.
Migrate an older session
fx session migrate <session-id>Migration rewrites a saved session into the current format. Add --allow-large only after verifying an oversized legacy snapshot.
Compact long sessions
Before each model request, fx assembles context from the saved session. After eight completed turns, it keeps the latest four verbatim and condenses earlier turns into a record of requests, outcomes, tool and file evidence, background work, and interruptions. This only changes what the model receives; the saved transcript remains intact.
Run /compact before starting a new phase to condense every completed turn before the latest one on the next request, even if automatic compaction has not started. The compacted range remains in effect after you resume the session.
/compact