Sessions

Concurrent review sessions, active pointer, and session manager commands.

Concurrent sessions

Starting diffing, diffing --web, diffing --tui, or a GitHub PR review no longer conflicts with an existing review. Each launch gets its own port and registry record, becomes active, and leaves older sessions running.

FlagBehavior
(default launch)New session; becomes active
--reuse-sessionOpen the active session and exit
--replace-sessionStop active, then start with current args

--reuse-session and --replace-session are mutually exclusive.

MCP start_review_session is conservative: it never stops or replaces a user-owned session and reports incompatible scope/mode conflicts.

Session manager CLI

diffing sessions                       # table; * = active
diffing sessions --json
diffing sessions use <id>              # retarget agent commands
diffing sessions open [<id>|active]
diffing sessions stop <id>|active|all
diffing sessions kill <id>|active|all  # alias for stop

The first eight characters of an id are accepted when unique. Stopping the active session elects the newest remaining session.

Agent tip

After sessions use, reconnect MCP so the new connection discovers the selected web session. Plan tools require mode: web.

Modes on a session

modeMeaning
webLocal working-tree (or range) review in browser
tuiNative terminal full review
gh-prGitHub PR mirror review

In gh-pr mode, prefer gh_* and bounded diff_* tools; local plan tools need a web session.