Add lightweight Git controls to the sidebar that enable staging, unstaging, and committing changes in a fast, keyboard-friendly workflow similar to lazygit—without leaving the current review/editing context.
Motivation
While fixing review comments, switching between diff views and external Git tools breaks flow. A built-in, minimal interface for common Git actions would streamline iteration and reduce context switching.
Proposed Solution
Introduce a sidebar panel with core Git actions:
- File list with status (modified, added, deleted, renamed)
- Stage/unstage controls
- Toggle per file
- Optional hunk-level staging
- Diff preview
- Inline or split view
- Navigate by file/hunk
- Commit box
- Message input with validation
- Support for amend
- Quick actions
- Stage all / unstage all
- Discard changes (with confirmation)
- Commit & push (optional toggle)
Interaction Model
- Keyboard-first navigation (up/down, enter, space to toggle stage)
- Persistent selection and scroll position
- Non-blocking updates as files change
Expected Behavior
- Staged state persists during navigation and diff reloads
- No loss of in-progress selections or commit message
- Works seamlessly alongside review annotations
Actual Gap Today
- No integrated, low-friction Git workflow in the sidebar
- Requires switching tools or panels to stage/commit
Impact
- Faster iteration when addressing review comments
- Reduced cognitive load and context switching
- Closer parity with efficient terminal workflows (e.g., lazygit)
Nice-to-haves
- Hunk splitting/editing before staging
- Commit templates / linting (e.g., Conventional Commits)
- Inline conflict resolution indicators
- Optional autosave of commit message drafts
Add lightweight Git controls to the sidebar that enable staging, unstaging, and committing changes in a fast, keyboard-friendly workflow similar to lazygit—without leaving the current review/editing context.
Motivation
While fixing review comments, switching between diff views and external Git tools breaks flow. A built-in, minimal interface for common Git actions would streamline iteration and reduce context switching.
Proposed Solution
Introduce a sidebar panel with core Git actions:
Interaction Model
Expected Behavior
Actual Gap Today
Impact
Nice-to-haves