github gitkraken/vscode-gitlens v18.0.0

6 hours ago

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.location setting to anchor the details panel at the bottom or right, with Alt+click on the details button to toggle
    • 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
    • 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:wip operator 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 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.openBehavior setting 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; beside always 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+summary instead of name-status parsing
  • 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 %s subject 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-fetch to native fetch and adopts VS Code's built-in proxy support — removes the custom gitlens.proxy setting 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 -N first (#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 --staged flag (#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

Don't miss a new vscode-gitlens release

NewReleases is sending notifications on new releases.