The two-panel interface

curio with no command (or curio tui) opens a two-panel file manager on the current session. Everything it writes goes through the sandbox as a typed command would: a file saved or copied into /workspace is an uncommitted change, marked in the panel, and the workspace only changes when a commit is approved.

┌ curio  https://acme.curiosity.ai  |  admin  |  session: fix-search  |  2 changed  |  live ───┐
╔╡ sandbox:/workspace/code/endpoints ╞════════╗╔╡ local:/home/me/defs ╞══════════════════════╗
║  /..                                        ║║  /..                                        ║
║M search-orders.cs         2.1K 09-29 12:04  ║║  notes.md                   1.2K 09-28 17:10║
║A export-invoices.cs        812 09-29 12:10  ║║  search-orders.cs           2.0K 09-29 11:58║
╚═════════════════════════════════════════════╝╚═════════════════════════════════════════════╝
/workspace/code/endpoints$ build
 1Help 2Sessions 3View 4Edit 5Copy 6Move 7Mkdir 8Delete 9Changes 10Quit

The header

The top line shows the workspace, your account, the session, and then, when they apply:

  • N changed: files this session changed and has not committed.
  • commit waiting - F9: a staged commit is waiting for approval.
  • working...: a command is running.
  • live or live (sse): the live connection is up.

The panels

The left panel starts in the session's sandbox, in the directory the session last used (/workspace for a new one). The right panel starts in the folder you ran curio from. Ctrl+L switches a panel between the sandbox and this computer, and Ctrl+U swaps the two panels.

Each row is a change marker, a mark, the name, the size and the modification time. The markers are M (modified), A (added) and D (deleted) in this session. A file in a read-only mount shows (ro), and writes to it are refused by the workspace. The line under the list shows the selected file, the number of marked files, or read-only for a read-only directory.

Space, Insert or Ctrl+A mark files. F5, F6 and F8 act on the marked files, or on the selected one when nothing is marked.

Files

Key Action
F3 View the file.
F4 Edit the file. Save with Ctrl+S. A save is refused if the file changed since you opened it, for example because Sudo edited it in the dock.
F5 / F6 Copy or move to the other panel, in either direction between the sandbox and this computer.
F7 Make a directory.
F8 Delete. In /workspace, a deletion is an uncommitted change like any other.
Alt+F7 Find text under the current sandbox directory.

Copying a file into /home/uploads attaches it to the session's conversation, where Sudo can read it.

The command line

Typing anywhere starts a command. It runs in the sandbox, in the active sandbox panel's directory, so the prompt shows that directory. Every sandbox command is available; help lists them. Common ones:

Command What it does
build Check the session's changed definitions against the workspace.
changes List what the session changed.
commit -m "…" Stage the changes as a commit for approval.
pull / revert Bring what someone else changed in the workspace into the files the session is editing; undo a file's change.
graph, query, type, uid Look at the graph, its node types and UIDs.
tasks The session's to-do list.

Tab completes on the command line (and switches panels when the line is empty). Up and Down walk the session's command history. Esc clears the line.

Short output appears on the panel's last line. Longer output opens the console, which Ctrl+O shows and hides.

Changes: F9

F9 opens the Changes dialog: the files the session changed on the left, the diff of the selected one on the right, and these buttons:

Button Action
Build Run build in the session.
Commit… Stage the changes as a commit, with a message.
Pull Bring what someone else changed in the workspace into the session's files.
Revert file Undo the selected file's change.
Approve Apply the staged commit, or open it in your browser. See Approving changes.
Discard Drop the staged commit. The edits stay in the sandbox.

Sessions: F2

F2 lists the sessions on this workspace, with Open, New…, Rename… and Delete…. Deleting a session deletes its conversation and every uncommitted change in its sandbox. See Sessions and the sandbox.

Sudo

Sudo runs across the screen when the interface opens, and after two minutes without a key he comes out to play with a ball of yarn, and naps when he is tired. Any key ends either scene; the key that wakes the screensaver does not also act on a file.

Variable Effect
CURIO_NO_INTRO=1 Skip the opening run.
CURIO_SCREENSAVER_SECONDS Seconds without a key before the screensaver (default 120); 0 turns it off.

F10 or Ctrl+Q quits. The session stays, with its uncommitted changes, and you can pick it up in curio or in the admin dock.

Keys, on one page

© 2026 Curiosity. All rights reserved.