Review and commit
Inspect repository-wide changes and create a reviewed Conventional Commit without leaving q.
Inspect repository changes
Run /changes to open q’s read-only Git browser. It lists staged, unstaged, and untracked files for the enclosing repository.
- Up/Down or
j/kselects a file. - Enter focuses its diff; Tab switches between the file and diff panes.
- PageUp/PageDown scrolls vertically; Left/Right scrolls long lines.
rreloads repository state; Escape returns to chat.
Opening this view never stages, edits, or commits a file.
Understand the view
The browser shows the repository’s current state, including changes that existed before the current q turn. It is not a per-agent audit log.
Staged and unstaged patches are shown separately even when they cancel each other relative to HEAD. Known text formats use syntax highlighting. Binary files show a notice, and unknown or oversized sources fall back to plain text. Each selected preview is limited to 256 KiB or 4,000 lines and is marked when partial.
Prepare a commit
Run /commit from chat or start the standalone workflow in the current repository:
q commit
q uses the existing index when staged changes are present. If the index is empty, it stages the current working-tree changes while excluding q-owned root .q metadata. It then asks the configured commit model for either one Conventional Commit message or a split-commit proposal.
Before creating a commit, q verifies that the captured index still matches the proposal. If repository state changed during review, regenerate or restart rather than committing a stale grouping.
Review and finish
In the commit screen, use Up/Down to select a proposed split, e to edit its message, Ctrl+S to save an edit, and r to regenerate. Enter commits the approved proposal. p commits and pushes; pushing requires an existing upstream. Escape cancels without creating a commit.
Review each split’s files and message before approval. q can propose and execute the Git operations, but it does not infer that unrelated pre-existing changes belong to the current task.