Agent workspace
When an agent runtime works on your space, it does so inside a container. Three panels open that container to you: File Browser shows its files, Editor edits them, and Terminal gives you a shell in it. They are not read-only mirrors, they are the same filesystem the agent is using.
- Panels
- File Browser, Editor, Terminal
- View menu
- Agents
- Precondition
- A chat must exist
Precondition: the workspace has to exist
The container is provisioned by the chat, not by these panels. Before you have sent a message in the Composer there is nothing to browse, and the panels say so:
- File Browser sits on “Connecting to workspace…” and then “No files yet. Agent activity will appear here.”
- Terminal shows “No workspace provisioned”, or tells you to start a chat first if the socket is rejected.
- CLI Access reports “No workspace provisioned yet. Open a chat first.”
File Browser
Open View → Agents → File Browser. It is also in the Default layout.
The tree is fed by a live socket, so files the agent creates appear without a refresh. A colored dot in the toolbar shows the connection: green connected, yellow connecting, red disconnected.
Toolbar controls, left to right:
- Upload opens a file picker and puts the files at the workspace root. You can also drop files onto the panel.
- Refresh re-reads the tree.
- Open Terminal docks the Terminal panel at the bottom of the workspace.
- CLI Access shows the workspace token and the commands to use it from your own machine.
- Hide Editor / Show Editor collapses the inline editor once a file is open.
Clicking a file opens it. Text and code files load into the inline editor. Images open as a read-only preview. Anything else downloads and opens in a new browser tab. Files larger than 100 MB are not opened at all. Each file row also has a Download button. Drag the divider between the tree and the editor to resize it, between 120 and 400 pixels.
CLI access
The CLI Access popover gives you a workspace token and the commands that use it:
npx github:LucaVor/MantisShell ssh <token>
mantis ls -t <token>
mantis push ./file.py -t <token>
mantis pull output.png ./ -t <token>
mantis run "python script.py" -t <token>Setting MANTIS_TOKEN in your environment lets you drop the -t flag.
Editor
Open View → Agents → Editor, or just click a file in File Browser: the same editor is embedded there.
It is a Monaco editor with a tab per open file. Language is inferred from the extension. Ctrl+S saves.
Tab markers tell you the state of each file:
- An orange dot with unsaved means you have unsaved edits.
- A blue dot means the file changed on disk after you opened it, and you have no local edits.
Saves are checked against the file’s modification time. If the agent changed the file while you were editing it, the save is refused and a banner appears reading “File modified externally since you opened it,” with three choices:
- Overwrite saves your version anyway.
- Discard my edits reloads the file from the container.
- View Diff opens a read-only side-by-side diff of the container’s version against yours.
With no file open the panel reads “Open a file from the File Browser to edit it here.”
Terminal
Open View → Agents → Terminal, or the terminal button in File Browser.
The panel fetches a workspace token and opens a shell over a WebSocket. The status strip shows Connected, Connecting…, or Disconnected plus any error. Resizing the panel resizes the remote terminal.
If the connection drops, the panel retries automatically with an exponential backoff capped at 10 seconds, up to 8 attempts, after which it stops and shows Disconnected with a Reconnect button. The CLI button shows the same MantisShell command as File Browser for connecting from your own terminal.
Limits
- All three panels need both a space and a signed-in account. Without them the Terminal shows “No workspace available. Send a message to the agent first to provision your workspace.”
- File Browser uploads always land at the workspace root. Composer attachments are different: those go to
/home/user/uploadsin the chat’s container. - The Editor has no file tree of its own. Files are opened from File Browser.