Product surface

Terminal & git

The Projects screen includes a persistent PTY terminal, git branch controls, generated commit messages, file diffs, and dispatched-worktree merge support.

Terminal panel

The terminal panel runs a real shell in the active project path. It uses xterm, keeps scrollback, opens links through the native opener, and rethemes when the app theme changes.

Toggle it from the titlebar terminal button or with Ctrl + </code> / <code>Cmd + . Closing the panel hides it without killing a live PTY. If the shell exits, the app collapses the panel and creates a fresh shell the next time it opens.

Git toolbar

When the active project has git, the toolbar under the chat input shows branch and commit controls. If the folder is not a git repository, it shows an initialize button.

The branch selector can switch branches or create a new branch. Errors are shown inside the popover.

Commit dialog

The commit dialog shows the current branch, changed-file count, and a generated commit message. You can regenerate the message and choose an action from the available commit actions.

Push and pull-request actions depend on the project state and local tooling. When a pull request is created, the dialog shows the resulting URL.

File changes

The right sidebar's History tab lists file changes for the active session. Each entry includes path, age, additions, deletions, and a rendered diff.

Individual file tabs can also switch into View Diff mode when the file is git-tracked, changed, not deleted, and not an image.

Dispatched worktrees

Task dispatch sessions run on a worktree branch. When such a session is active, the file sidebar footer shows Merge Worktree instead of Add Folder.

The merge dialog previews source and target branches, requires the worktree to be clean and committed, and can auto-dispatch a resolver session when conflicts occur.