Node types
Everything on the canvas is a node, but not every node is a terminal. There are seven types you’ll work with (an agent is a terminal with an agent CLI launched into it, so it shares the terminal’s card):
| Type | What it is | Created from |
|---|---|---|
| Terminal | A real shell running inside tmux | Pane menu / dock + / ⌘K |
| Agent | A terminal preset that launches an agent CLI | Pane menu / dock + / ⌘K |
| Sticky | A colored note | Pane menu / dock + |
| Group | A frame that holds and moves child nodes together | Group a selection |
| Editor | A Monaco code editor for a file | Explorer / link click / pane menu |
| Diff | A read-only git diff view | Source Control panel |
| Chat | An SDK-driven Claude chat | Pane menu / dock + / ⌘K |
Terminal
Section titled “Terminal”A real shell running inside a tmux session, with an xterm front end. This is the core node — scrolling, selection, copy, and persistence all behave as described in Terminal persistence.
An agent node is a terminal preset that runs a coding-agent CLI as its startup command — Claude Code, Codex, Gemini, or opencode — and then tracks what the agent is doing on its header. Beyond that it’s a terminal like any other. See Agents overview.
Sticky
Section titled “Sticky”A colored, free-text note that collapses like any node. Stickies have link handles: connect a sticky to a terminal or agent node to attach the note as context the agent can read. See Context link.
A real frame that adopts the nodes inside it as children — move the frame and they move together, and new nodes created inside inherit the frame’s folder. A group can also bind a git worktree, so a branch becomes a frame full of nodes working in that worktree. See Git worktrees.
Editor
Section titled “Editor”A Monaco code editor bound to a file. It reads and writes through nodeterm’s file service, saves with ⌘S (with a dirty dot until you do), and auto-detects the language from the path. There’s a markdown preview toggle, and image files skip the editor entirely and show an image preview instead.
A read-only Monaco diff view of a file’s git changes — either staged (HEAD vs index) or unstaged (index vs working tree). You open one by clicking a file in the Source Control panel.
A chat node is a Claude conversation driven by the Agent SDK rather than a terminal — token streaming, in-chat permission prompts, image paste, and diff cards for edits. It’s Claude-only. See Chat nodes.