Files and editor
The file tree, the code editor, diffs, the version history and the document editor
The panel next to the conversation is where you look at what the assistant did. Drag the divider to give either side more room.
Files
A file tree across every shared folder. It reacts to changes as they happen, whether they came from the assistant, from the terminal, or from another program on your machine.
Right-click a file or folder for the usual actions: open, rename, delete, create a file or folder, copy the path.
The editor
Click a file and it opens in a full code editor with syntax highlighting for the language. Save with Cmd/Ctrl+S.
You and the assistant work in the same file at the same time. If it changes a file you have open, your unsaved edits win: the file is not reloaded underneath you while you have pending changes.
| File type | What you get |
|---|---|
| Code, config, text | The code editor |
| Markdown | A switch in the header between the editor and the rendered view |
| HTML, SVG | A switch between the source and the rendered result |
| Images, PDF, video | Rendered directly |
| Word, Excel, PowerPoint | The document editor |
| CSV, TSV | A grid, with a switch back to the raw text |
Some files open read only, with an explanation. That happens when what you see is an
extraction rather than the file: a scanned PDF, an .eml, an old .xls, or a file the app had to
decode from a different character encoding. Saving would replace the real file with its own text
version. What can genuinely be edited never lands there, it goes to the document editor.
Very large files open too. The editor asks for the whole file rather than the assistant's context-friendly window, which is why it can show a file the assistant itself only read in parts. Above about a megabyte, line wrapping and folding are turned off to keep it responsive.
Diffs
A change the assistant made shows up as a file card in the conversation with a Review action, which opens the diff. Diffs live in the Git tab as an overlay, with a back arrow in the header.
The tab carrying unseen changes is marked with a dot, so a change does not go unnoticed while you are reading the conversation.
Versions
A tab holding saved earlier states of every file the assistant changed, plus a bin for what it deleted.
Two ways to restore:
- Per entry, back to that specific earlier state.
- Per request: "restore the state before this request" rolls back everything one of your messages caused, grouped and labelled by the request that triggered it.
This is separate from Git, and it works on a file that was never committed. It also covers earlier conversations, since the history belongs to the folder.
Two independent safety nets, and they answer different questions. Git answers "what changed since my last commit". Versions answers "put that file back the way it was ten minutes ago", including for files Git never knew about.
Preview
For rendered output, a running dev server or a static file, see Preview. Code has its own preview tab. Cowork instead renders documents inside the editor tab, since there it is the same file you would edit.