An isolated copy is a separate working copy of your project (a git worktree on its own branch) where a thread does its work. Several threads can run at once without touching each other, and nothing reaches your project until you press Apply.
What you need
- The desktop app and git installed.
- A project that is a git repository with at least one saved version. If it is not, the switch is disabled and its tooltip says what to do, for example “save one first in the Versions tab”.
Turn it on
- For a new conversation, switch on Isolated copy on the first line of the message box, next to the project name. It is off by default; Settings → Isolated copies → Work in an isolated copy by default changes that.
- Choose which branch the copy starts from. The default is the branch your project is on.
- If the project has unsaved changes, you can tick Move my unsaved changes in. They leave your project only after the copy has them.
- Send. The copy is made first. If that fails you get one plain sentence and nothing is created: no conversation, no folder, no branch.
Working in a copy
The thread header shows a chip with the branch name and an Apply to my project button. Files, Changes, Versions, Terminal, Preview and the dev server all work in the copy. A project can ask for setup in .maxtkn/worktree.json (for example npm install); that command is never silent. A bar offers Skip or Run it, and only in a folder you trust.
Apply
- Preview: the files that would change (new, edited, deleted) and the branch they go into.
- Unsaved changes in your project must be saved as a version first, so the two are never mixed. One button does that and goes on.
- A restore point of your project is taken, so Undo works afterwards.
- Applied: the new version is created and the conversation carries on in your project folder.
If both sides changed the same file, a guided screen shows each side. Choose Keep mine or Keep theirs per file, Ask the team to merge it, or Cancel and put my project back, which returns it to exactly how it was. Applying is refused while the run is still going.
Giving up and cleaning up
- Give up this copy… (in the chip’s menu) returns the conversation to your project. The copy stays on disk until it is removed.
- Deleting a thread or a project that has copies asks what to do with them: keep, apply first, or throw away, with the files and work that would be lost spelled out.
- Settings → Isolated copies lists every copy with its thread, branch, state, last use and size. You can open its folder, remove it, keep the last N copies (default 5) and clean up now.
Where else copies are used
- Goals honour the same switch. With it on, a goal runs in the copy.
- Scheduled tasks may change files only in an isolated copy. See Goals and scheduled tasks.
- Forking a thread can start the new one in its own copy.
- Many terminal sessions each get their own copy by default. See Many terminal sessions.
- The command line has
--worktree. See The maxtkn command line.