Panels

The file panel

A project file open in a canvas panel.

Opening

  • From the file drawer, in the footer: double-clicking a file opens it.
  • With ⌘K, typing the file name.
  • By an agent, when it wants to show you something.
  • By voice: "show me the README".

A file already open does not create a second panel: the existing one is brought to the front.

The file drawer

  • The field at the top filters the tree by name.
  • A single click on a file attaches it to the next prompt you send. The strip under the tree says which one is attached, and its × removes the attachment.
  • A double click opens the file in a panel.
  • The eye at the top shows and hides files starting with a dot. The choice applies to every project, and the tree rebuilds itself when you toggle it.
  • Right-click: Open to read, Copy path, Copy relative path, Send to… (to an agent on this canvas, without going through the clipboard) and Reveal in Finder.

What the panel shows

  • Markdown comes rendered. The header button toggles between the source and the rendered text, and exists only in Markdown files.
  • Code comes with line numbers and syntax highlighting.
  • An image appears fitted to the panel. Clicking toggles between fitted and actual size, and the footer shows the dimensions in pixels. Right-click offers Copy image (the content, not the path), Copy path and Reveal in Finder.
  • Video plays with the system controls.
  • A binary file is declared as such, with its size.
  • A file that no longer exists says so in place of the content.

The panel reloads on its own when the file changes on disk, including images regenerated by an agent.

The header buttons

  • Edit (the pencil): enters edit mode. It appears only on text and Markdown, with the file writable, whole and up to 1 MB.
  • Copy full path: puts the absolute path on the clipboard.
  • Reveal in Finder: selects the file in the Finder.

Right-clicking, both on the header and on the content, brings Copy full path, Send to an agent and Send to a contact. The agents on this canvas appear directly; those from other projects sit in submenus, and sending there does not switch your canvas.

Editing

  • Save (⌘S or the button): writes to disk. There is no autosave. The key applies to the selected panel, which is what decides which file is written when two are being edited.
  • Revert to saved: returns the text to what is on disk without leaving edit mode. Unavailable when there is no pending change.
  • Stop editing: with a pending change, it asks before discarding, offering Discard and Keep editing.
  • The dot next to the file name means there is an unsaved change.

A file truncated by size cannot be edited, because writing it back would write the truncation. Reading truncates at 4 MB, with a notice at the end of the text.

When the disk changes underneath your edit

A strip appears as soon as the file changes on disk while there is an unsaved edit, naming whoever touched it when they can be identified. It stops the save until you choose:

  • Reload: discards what you wrote and brings in what is on disk.
  • Overwrite: writes your text over the change on disk.

Outside edit mode, the panel simply follows the disk, with no strip at all.

Saving records you as an author of that file, and the Git panel starts flagging a file as contested between you and an agent.