A session of Claude Code is a conversation that the Claude Code CLI keeps in its own transcript, under ~/.claude/projects/. The Claude Code extension of VS Code and claude in a terminal can continue the same conversation. CodeAlta Desktop works alongside them:
For Remote Control from claude.ai or the Claude app, see Remote Control.
When the space the window shows has a Claude Code provider, the Explorer lists the Claude Code conversations that no CodeAlta session continues:
Both groups start closed, and CodeAlta remembers whether you opened them. With several Claude Code accounts in the space, each row shows the logo of its provider, and that provider is used to preview, import or open it.
The folder a conversation started in decides where it is listed:
| The conversation started in | It is listed under |
|---|---|
the folder of a project, a subfolder, or a worktree Claude Code made in it (claude -w) |
that project (the deepest one, when projects are nested) |
| another checkout of the repository of a project, such as a worktree | the project whose sessions work in that checkout, else the project at the main checkout, else the first project of that repository |
| a folder of another repository inside a project folder | that project |
| anything else: a removed worktree, your home folder, a WSL folder, a repository that is not a project | no project |
~/.claude/projects. Not listed: conversations a CodeAlta session continues (archived ones included), conversations run through the Claude Code SDK (claude -p, and CodeAlta itself), background sessions of Claude Code, and conversations continued in another one.Shift+F10 or …) has Open preview, Import, Import into project…, Open in VS Code, Copy resume command and Run in terminal (not for a conversation of no project). Nothing in it deletes a conversation.Ctrl+P finds these conversations by title, project or folder, and Filter sessions at the top of the Explorer narrows the groups.Click a row to preview the conversation in a tab with an italic title. Like a tab you only look at, the next preview takes its place, and it is not reopened at the next start.
[Image].To continue a conversation, write in the prompt of its preview and press Enter. Continue in CodeAlta, or a click on the banner, puts the keyboard in the prompt. To import it without a message, choose Import in the menu of its row, or drag the row onto any project.
CodeAlta then creates a session in that project with the turns of the conversation, and sends your message there:
Before each prompt you send, CodeAlta checks whether another Claude process of this computer has the conversation open: VS Code, claude in a terminal, or another application. If one has, the prompt waits and a card above it asks:
| Choice | What happens |
|---|---|
| Wait until it is free | The card shows Waiting for VS Code to release the conversation…, with Stop the run. The prompt is sent once the other program closes the conversation. |
| Continue as a copy | Claude Code continues a copy. The session follows the copy, and the other program keeps the original. |
| Open here anyway | Both programs write the same conversation. CodeAlta does not ask again while that process keeps it open. |
| Cancel | The run ends as stopped. Your next prompt carries this one with it. |
Esc cancels). A compaction, or Remote Control connecting, cannot ask: it fails with a message naming the other program.While another process has the conversation of the session you look at, a banner takes the place of the prompt: Open now in VS Code, or In use now in VS Code (with an eye) while it works on it. Your draft is kept. Click Write a message, or the banner, to turn it into a line above the prompt. The banner comes back when that process starts working, or another process opens the conversation.
VS Code asks the same question when CodeAlta has the conversation open: CodeAlta keeps Claude Code running up to ten minutes after a turn. Open in VS Code, Run in terminal and Copy resume command close it first. claude --resume in a terminal asks nothing.
When you open a Claude Code session in CodeAlta Desktop, and before each prompt, CodeAlta adds to the session the turns made elsewhere since its last turn. The next turn continues the conversation as it is, without sending anything twice.
Once Claude Code has answered its first prompt, the menu of a Claude Code session in the Explorer has three more commands. The search has them for the selected session (/open_in_vscode, /run_in_terminal, /copy_resume_command):
| Command | What it does |
|---|---|
| Open in VS Code | Opens the conversation in the Claude Code extension of VS Code. |
| Run in terminal | Opens a terminal in the folder of the session and runs claude --resume <id>. |
| Copy resume command | Copies claude --resume <id>. Run it in the folder of the session: Claude Code looks for the conversation in the folder it runs in. |
These commands first close the Claude Code process CodeAlta keeps for the session. They cannot while the session works, waits for an answer, has Claude Code background tasks or has Remote Control on: Open in VS Code and Run in terminal then refuse and say what to do, and Copy resume command copies with a warning. A prompt you send in CodeAlta afterwards continues after the turns made in VS Code or the terminal.
A provider with its own Account folder (several accounts) keeps its conversations there:
CLAUDE_CONFIG_DIR first: $env:CLAUDE_CONFIG_DIR="$HOME\.claude-work"; claude --resume <id> in PowerShell on Windows, CLAUDE_CONFIG_DIR="$HOME/.claude-work" claude --resume <id> in a POSIX shell.claudeCode.environmentVariables setting sets it for every conversation). Use the other two commands.Session Info has a Claude Code conversation row: the identifier of the conversation, a copy button, and Open now in VS Code (or in a terminal) while another program has it open.
VS Code does not list CodeAlta's sessions: it leaves out conversations run through the Claude Code SDK, and has no setting to show them. Use Open in VS Code. A conversation started in VS Code and continued in CodeAlta stays in its list, with CodeAlta's turns.