Added
- Introduces an all-new Commit Graph experience — a comprehensive redesign that pulls commit inspection, AI workflows, comparisons, branch focus, and working-change management directly into the graph
- Adds an embedded details panel — replaces the standalone Graph Details view with an integrated panel that handles commit details, working changes, branch comparisons, AI reviews, and commit composition without leaving the graph
- Adds a
gitlens.graph.details.locationsetting to anchor the details panel at the bottom or right, with Alt+click on the details button to toggle
- Adds a
- Adds an integrated AI Compose mode — provides a much improved AI-powered commit composition directly within the graph, with per-commit include/exclude toggles, multi-diff editor support, a virtual filesystem provider for synthesized per-commit diffs, cancellable generation, parallel/background operation, and copy and send-to-agent actions
-Adds an integrated AI Code Review mode — surfaces severity-tagged findings with tooltips, copy and send-to-agent actions on outputs, and PR/issue/autolink context input (#5235) - Adds an integrated Compare mode — opens comparisons directly inside the graph instead of the Search & Compare view, with Ahead/Behind/All Files tabs, working tree comparisons for peer worktrees, AI-powered explaination and changelog generation, and an Open in Search & Compare action to persist ad-hoc comparisons
- Adds a refined header with WIP (work-in-progress) status and stash action
- Adds a unified UI/UX for scoping and filtering the graph
- Adds an Agent Branches option to filter the graph to show only the branches or worktrees with active or recent agent activity
- Adds a Focus Branch option to scope the graph to just the changes on specific branch via a new branch selector (or the new Overview or Agents side bar), with merge-target anchoring
- Adds all new experiences to the graph Side Bar
- Adds pinned and overlay modes — overlay mode floats over the graph instead of pushing it aside, with auto-collapse on focus loss and a pin/unpin toggle in the panel header
- Adds an Overview side bar panel — surfaces active and recent branches as rich cards with WIP stats, upstream tracking, associated pull requests, issues, and agents, as well as quick actions and rich hover details
- Clicking on an Overview card instantly focuses (scopes) the graph to just the changes on the selected branch
- Adds an Agents side bar panel — surfaces active and recent agents with their activity, associated branches/worktrees
- Clicking on an agent row instantly focuses (scopes) the graph to just the changes on the selected wokrtree, and selects the agent in the details panel
- Adds a Visualizations mode to the side bar — houses the all-new Visual History, and 3 experimental treemap visualizations
- Visual History — rebuilt from the ground up to provide a better experience with dynamical loading and dealing with many contributors and/or branches
- Files Treemap — an experimental spatial visualization of file layout within the repository color coded by file type, with hover tooltips, deep zoom-to-folder, and tracking breadcrumbs
- Commits Treemap — an experimental spatial visualization of commit activity within the repository colorized as a heatmap
- Agent Activity Treemap — an experimental spatial visualization of realtime agent activity. See where your agents are currently reading and editing across your repository
- Adds an experimental Agent Kanban mode to the side bar — an interactive Kanban board grouping active agent sessions by state (Working, Idle, Inactive, Needs Input), with inline plan view and permission approval directly from session cards
- Adds comprehensive context menu support for worktrees in the sidebar and Commit Graph — brings feature parity with branches, including Reveal in File Explorer, AI-powered actions (explain WIP, generate changelog), Open in Terminal, and Copy Path
- Adds an all new way to manage worktrees and working changes (WIP)
- Changes working changes (WIP) rows to always be visible regardless of whether or not there are uncommitted changes
- When there are uncommitted changes, the Details Panel now allows you to review, stage, and commit your changes, or leverage the all-new Compose and Review modes to have AI review and automatically compose your changes into a set of well-structured commits
- When there are no uncommitted, the Details Panel transforms into a hub to guide you to the next steps — like pulling, pushing, drafting a PR, reviewing, recomposing, etc. Everything to help you get your changes merged faster (#5218)
- Adds support for working changes (WIP) rows from secondary worktrees
- Selecting a WIP rows provides file actions, conflict resolution, and live-updating stats for non-active worktrees, plus Open in Integrated Terminal and Open Worktree in New Window actions on the header
- Adds the ability to discard uncommitted changes
- Adds smart push/pull on the WIP details panel header — offers Force Push when a branch is both ahead and behind its remote
- Adds conflict resolution actions to the WIP details panel
- Adds the ability to share working changes as a Cloud Patch directly from the WIP header
- Adds persistence of in-progress commit messages and amend state per worktree — drafts are restored when switching contexts, the original message is restored on Undo Commit, and per-worktree search box and filter preferences persist across sessions
- Adds Jump to Working Changes — quickly navigate from the selected commit to the most relevant WIP node in the same lane, with primary-worktree fallback
- Adds bulk staging operations — Stage All and Unstage All, with Alt-click on mixed-state checkboxes to unstage all currently staged items
- Changes working changes (WIP) rows to always be visible regardless of whether or not there are uncommitted changes
- Adds auto-fetch while the Commit Graph is visible and focused, yielding to VS Code's built-in Git auto-fetch when enabled, with a fetch button popover to manage settings and a minimum interval floor to prevent excessive fetching
- Adds search and filtering improvements — adds a
type:wipoperator to filter to working changes, and column header filters with interactive pickers for authors, refs, and files - Adds the ability to pin and unpin branches — pinned branches persist across sessions with a jump-to-pinned-branch actionn (#5139, #5181)
- Adds inline row actions for commit and stash rows including open all changes (Alt to compare against working tree) and apply/drop stashes
- Adds a floating "HEAD" indicator to the graph to quickly jump to the HEAD commit
- Adds a completely rebuilt minimap with better performance and zoom controls and clearer markers
- Adds minimap and scrollbar markers for worktrees — surfaces uncommitted changes on the minimap and scrollbar with a configurable theme color and a toggle setting
- Adds an Open in New Window toolbar view action — opens the graph in a detached window for multi-monitor workflows, with Open in Editor available as the Alt+click alternative
- Adds an embedded details panel — replaces the standalone Graph Details view with an integrated panel that handles commit details, working changes, branch comparisons, AI reviews, and commit composition without leaving the graph
- Adds comprehensive AI agent integration throughout GitLens
- Adds an agent status framework with Claude Code support using Claude Code Hooks (must be installed) — surfaces sessions across the Home view, Commit Graph overview cards (#5170), WIP rows, Commit Details, Agents side bar panel, and the experimental Agent Kanban mode
- Adds an Agent Branches visibility mode to the Commit Graph that filters branches to only those with active or recently active agents
- Adds an agent picker to Start Work and Start Review flows, plus a default-agent picker, Switch Default Agent command, and Start Work/Start Review in Agent actions in the Home and Commit Graph views
- Adds support for opening agent sessions hosted in other VS Code windows
- Adds a Resume in Terminal fallback when an agent session fails to open or is active in another VS Code window
- Adds notifications for peer-discovered agent session permissions
- Adds an experimental Agent Kanban mode — an interactive Kanban board grouping active agent sessions by state
- Adds conflict resolution actions to the Interactive Rebase editor conflict file list
- Adds a close-tab warning banner to the Interactive Rebase editor — displays a dismissible informational banner during the planning phase to clarify that closing the tab automatically starts the rebase (#5123)
- Adds a
gitlens.rebaseEditor.openBehaviorsetting to control where the Interactive Rebase editor opens when automatically reopened on a paused rebase —auto(default) opens beside only when a multi-pane layout already exists;besidealways opens in a side group - Adds Seti file icon theme support for webviews — files in webview trees now display the correct Seti glyph
- Adds folder actions in Details Panel and Inspect view
- Adds a unified onboarding reset command that consolidates the previous Banners and Usage Tracking resets into a single restore-first-time-experience action
Changed
- Switches the Commit Graph sidebar to be visible by default for new installations in overlay mode
- Switches Open Worktree in New Window to be the primary action and Open Worktree to be the alternative across views and the Commit Graph
- Improves the default Interactive Rebase editor density to a more spacious layout
- Improves Commit Graph performance and responsiveness — content-fingerprint deduping of full-state pushes, incremental row-stats sending, avatar omission for unchanged rows, in-memory WIP caches, and debounced repository event coalescing
- Improves branch overview enrichment performance — tiered caching using stored merge targets as cache keys, lazy loading, and parallelized metadata fetches
- Improves Git diff performance — switches diff operations to
numstat+summaryinstead ofname-statusparsing - Improves Git command result caching — granular TTLs based on ref mutability (5-minute cache for full SHAs, 60-second failsafe for symbolic refs), plus caching for left-right commit counts, merge bases, and per-branch config lookups
- Improves performance for GitHub virtual repositories — adds caching for commit details, counts, merge bases, paged branches/tags, and default branches, plus deduping of in-flight GraphQL requests
- Improves the Commit Graph minimap colors and contrast for better theme accessibility, and adds out-of-view proxy handles and improved scope zoom rendering
- Improves the Connect More Agents picker to only show agents that don't already have the GitKraken MCP installed, with a clearer empty state when all detected agents are already connected (#5142)
- Improves repository visibility detection with promise-based caching to prevent redundant computation
- Improves Git command priority inference — keeps polymorphic history commands at normal priority, requires expensive full-history walks to opt into background priority
- Improves the default and maximum limits for concurrent background Git processes
- Improves branch comparison default target logic — automatically suggests the merge target of a branch as the default right-side reference and uses branch names instead of SHAs for stability
- Improves stash reachability filtering — uses Git's authoritative stash metadata via the
%ssubject parsing instead of expensive parent-timestamp tracking - Improves AI error handling and network detection — distinguishes between "No Network" and "Unreachable" states, with automatic retry on network failures and a recursive cause-chain analysis for better diagnostics
- Improves header and breadcrumb responsiveness across webviews — priority-based collapsing with compact icons and overflow popovers for narrow views
- Migrates from
node-fetchto native fetch and adopts VS Code's built-in proxy support — removes the customgitlens.proxysetting in favor of standard VS Code and OS proxy settings - Migrates the webview component library to WebAwesome, modernizing selects, overlays, sliders, and tooltips with workspace-color-aware highlights
Fixed
- Fixes an issue where starting an interactive rebase forced a split-pane layout when git paused for a
reword— the Interactive Rebase editor now opens as a hidden background tab alongside the commit message editor instead of stealing the active tab (#5203) - Fixes an issue where untracked files were missing from the Compare Working Tree with... file list unless manually staged with
git add -Nfirst (#5158) - Fixes an issue where the Interactive Rebase editor would auto-open during the brief teardown window after a rebase completed (or on non-interactive rebases), showing stale or empty state (#5217)
- Fixes an issue where the Interactive Rebase editor would show a blank state when opened on a repository outside the workspace (e.g., from a terminal) (#5229)
- Fixes an issue where the terminal integration relaunch warning persisted due to stale environment variable state (#4977)
- Fixes an issue where MCP reinstallation could fail when the proxy binary was locked on Windows (#5126)
- Fixes an issue where stashing staged changes was not using the
--stagedflag (#5138) - Fixes an issue where the currently selected option is not visually distinguishable in select-style menus on the Home view (agent workspace filter, recent timeframe filter) and elsewhere (Visual History period menu, Commit Graph overview filter) — most noticeable on light themes (#5259)
- Fixes an issue where diff hunks could be missing for renamed or copied files in editor gutters and hovers — rename detection was inadvertently filtering out valid diffs
- Fixes an issue where stash apply and pop actions could fail silently due to missing stash numbers, producing invalid
stash@{undefined}references, and where the Commit Graph would not refresh when a stash was dropped - Fixes an issue where GitLens would automatically re-open repositories that the user had explicitly closed via the SCM interface
- Fixes an issue where the File History context menu actions on commits and folders launched a standalone editor instead of integrating with the embedded Visual History in the Commit Graph
- Fixes an issue where the SCM grouped views could intermittently "detach" — alt commands have been removed from SCM grouped views due to flakey/sticky alt detection in VS Code
- Fixes an issue where the Compare Working Tree "Show All Diffs" button used inverted diff direction
- Fixes an issue where authentication errors could surface noisy notifications and break-on-exception breakpoints instead of returning safe defaults
- Fixes various race conditions and stale-state issues across the Commit Graph during repository, branch, and worktree switches — including phantom anchors after removing the last secondary worktree, cross-repo data contamination during rapid swaps, lost state notifications during in-flight updates, and forced reloads during panel restoration
- Fixes an issue where the working tree comparison could incorrectly include untracked files for revision-range diffs