github gitkraken/vscode-gitlens v18.3.0

5 hours ago

Added

  • Adds ConfigCat-based feature flag service for A/B testing and experimentation support (#5092)
  • Adds an optional avatar URL template to custom remotes in the gitlens.remotes setting — enables corporate and self-hosted setups to resolve commit-author avatars via a templated URL with ${email}, ${emailName}, ${domain}, and ${size} tokens; identity values are component-encoded before interpolation to keep attacker-controllable commit emails from injecting URL-structural characters, and templates configured via workspace settings require explicit user approval on first use in a trusted workspace (revocable via GitLens: Reset > Approved Avatar URL Templates...) (#302, #5155) — thanks to PR #1636 by Tmk (@tmkx)
  • Adds the ability to stash or copy a patch of only the selected files from the working tree (WIP) file list in the Inspect and Commit Graph views — selecting 2+ files retargets the Stash and Copy (Patch) toolbar buttons to the selection, with the whole-scope action available by holding Alt, plus a matching multi-select Copy Changes (Patch) context menu command (#5384)
  • Adds Open Changes, Open Staged Changes, and Open Unstaged Changes options for working tree files that have both staged and unstaged changes in the Inspect and Commit Graph views — a partially-staged file appears as a single row but you can now open its staged-only, unstaged-only, or combined diff from the context menu (#5385)
  • Adds a working tree change count badge to the Commit Graph view — mirrors the Source Control view by showing the number of working tree changes on the GitLens panel tab, even while the panel is collapsed; controllable via the new gitlens.graph.showWorkingTreeBadge setting (#5383)
  • Adds an Open in Integrated Terminal option for worktrees in the Commit Graph and the Worktrees view — opens the selected worktree's folder in the integrated terminal, matching the action already available for repositories and folders (#5386)
  • Adds a Reveal in Explorer View option for working tree (WIP) files in the Inspect and Commit Graph views — right-click a staged, unstaged, or conflicted working file to reveal and select it in VS Code's Explorer view (#5387)
  • Adds Focus on Branch, Focus on Worktree, and Solo Branch options to the Commit Graph — right-click a branch or worktree in the side bar (or a graph row) to focus the graph and minimap on it, and right-click a working tree (WIP) row to focus or solo the graph on that worktree's branch (#5388)
  • Adds manual take-side fallbacks and conflict-type labels to the AI Resolve mode in the Commit Graph WIP details panel — conflicts the AI can't auto-merge (binary, symlink, submodule, file-mode, add/add, and rename/rename or rename/delete conflicts) are now labeled by type and offer inline Take Current, Take Incoming, and Delete actions instead of dead-ending as "needs review"; resolving a rename/rename conflict also removes the other side's renamed file. Also decodes UTF-16/BOM-encoded files so their conflicts can be resolved rather than skipped (#5393)
  • Adds a commit signing indicator to the Commit Graph's working changes (WIP) commit box — a key icon appears when commits will be signed (via the repo's commit.gpgsign Git config or VS Code's git.enableCommitSigning setting), with the signing format (GPG, SSH, X.509, or OpenPGP) shown on hover
  • Adds a Start Review with an Agent action to Launchpad pull request items — after selecting a pull request in the Launchpad, you can start an AI agent review that checks out the PR in a worktree and routes straight to the agent picker (or your default agent); available when AI features are enabled (#5395)
  • Adds a Take your agent workflows further step to the Welcome view walkthrough — introduces Kepler, GitKraken's Agentic Development Environment (ADE), with a Get Kepler call-to-action (#5378)
  • Adds an auto layout for the Commit Graph details panel that positions it to the right or bottom based on the graph's width, with Alt+Click to temporarily pin a location (#5402, #5403)
  • Adds a Copy Changes (Patch) action to commits and stashes in the Inspect and Commit Graph details — copies a patch of the entire commit or stash to the clipboard (#5455)
  • Adds per-file added/removed line counts to the working changes (WIP) file list in the Commit Graph details, loaded lazily when the list is visible (#5456)
  • Adds a gitlens.sortWorkingChangesBy setting to sort working changes (WIP) by their Git staged/unstaged state in the Commit Graph details (#5454)
  • Adds a Resolve Conflicts in Commit Graph action to the interactive rebase editor's conflicted files panel — opens the Commit Graph in AI Resolve mode for the rebase's conflicts; available when AI features are enabled (#5413)
  • Adds an Open Changes with Working File (Worktree) action to the commit file menu in the Commit Graph details and Inspect view — compares a committed file against its working copy in the sibling worktree whose branch contains the commit (rather than the currently-scoped worktree), with a worktree picker when more than one applies

Changed

  • Redesigns the GitLens Settings page with a modern two-pane layout — a searchable, grouped, and resizable category rail paired with a detail pane showing live, interactive previews that react to setting changes as you make them, replacing the previous single-page scroll and its static images (#5372)
    • Search matches category names, setting labels, and literal setting names (e.g. gitlens.currentLine.format), scrolls the match into view, and offers an Open in Settings UI escape hatch for settings not surfaced on the page; Ctrl/Cmd+F focuses the search
    • Format string examples are rendered by the real formatter, so the preview always matches what GitLens displays
    • Adds Cloud Integrations and AI categories — view and connect hosting and issue service integrations, and manage the AI provider and model, GitKraken MCP, default coding agent, and Claude Code hooks
    • Shows connection-aware cues in the category rail — a connected/total count for Cloud Integrations and a rule count for Autolinks
  • Changes commits created from the Commit Graph's working changes (WIP) commit box to honor VS Code's git.enableCommitSigning setting — matching the built-in Source Control commit behavior; previously only the repo's commit.gpgsign Git config was respected
  • Changes GitLens AI features (Generate Commits, Explain, Generate Pull Request/Changelog, and AI-powered search) to no longer be labeled (Preview), and consolidates their commands under the gitlens.ai.* namespace (#5463)
  • Improves the Commit Composer — adds a dual commit/recompose posture, drag to reorder draft commits, drag to move one or more files between draft commits, and multi-diff Open Changes actions in the curation file trees (#5460)
  • Improves AI-powered conflict resolution (Preview) in the Commit Graph working changes (WIP) details — adds a split-panel Conflict Details sheet (current vs incoming history), resolution scoped to selected files, automatic handling of both-deleted and rename conflicts, per-file confidence indicators, collapsible resolved/pending sections with progress, and a dedicated merge icon (#5306)
  • Improves the AI Review mode with follow-up conversations, plus Discard and Refine actions in Compose and Review (#5461)
  • Improves AI model display and selection across AI inputs — shows the active model as a selectable chip and surfaces consumption-rate and recommendation badges for GitKraken AI models (#5425)
  • Updates AI provider and model support — migrates Hugging Face to its OpenAI-compatible router, renames the xAI provider to SpaceXAI following its rebrand, and refreshes the model registries, adding newer models (OpenAI GPT-5.x, Anthropic Claude 5/4.x, DeepSeek V4, Gemini 3.x, and Grok 4.5/4.3) and hiding retired ones (#5462)
  • Changes the Commit Graph side bar icons to switch back to the graph and open the details panel when clicked from the visualization/kanban modes, instead of being disabled (#5401)
  • Improves the working changes (WIP) bar in the Commit Graph — scrolls horizontally with the mouse wheel, keeps the primary repository anchored, and hides unless a secondary worktree has changes (#5457)
  • Reorganizes the details and working changes (WIP) panel headers in the Commit Graph and Inspect views — groups navigation and actions into clearer clusters, folds the Inspect view's separate navigation bar into the details action row, and adds branch and create context menus (#5459)
  • Improves keyboard focus and navigation in the webview tree views — each row is a single tab stop that cycles its inner controls, Space no longer double-toggles checkboxes, multi-select keyboard navigation is fixed, and checkbox focus rings are visible (#5458)
  • Changes copying changes to a worktree to no longer prompt to open that worktree afterward
  • Changes stashing to use the Commit Graph working changes (WIP) commit-box draft message when one is present
  • Renames the Open Worktree File action to Open File (Worktree) for consistency with the new Open Changes with Working File (Worktree) action

Removed

  • Removes the Streamline Workflow with the Home View step from the Welcome view walkthrough (#5378)
  • Removes the Overview (working changes) mode from the Inspect view, making it commit/stash-only — reviewing working changes is now consolidated in the Commit Graph. Launchpad Switch to Branch and Open Details actions, and PR switch deep links, now open the Commit Graph at the working changes (WIP) row instead of the Inspect view; the Launchpad code-suggestion entry points are retired (code suggestions remain available in the Commit Graph) (#5399)
  • Removes the GitHub Models AI provider (#5462)

Fixed

  • Fixes Anthropic AI requests failing with a 400 Bad Request when the request includes a system message (e.g. generating or recomposing commits with the commit composer, or AI conflict resolution) — system-role messages are now hoisted into the top-level system parameter that Anthropic's Messages API requires, and unrecognized Anthropic errors now surface their actual message instead of a bare Bad Request (#5426)
  • Fixes the coding agents integration running the GitKraken CLI during extension startup — the agent-detection probe is now deferred out of the initial render window so it no longer competes with Commit Graph and Home view loading, and a fresh CLI install on first launch no longer leaves the detected agents list empty for up to 5 minutes
  • Fixes creating a branch from a remote ref incorrectly setting upstream tracking when the new branch name differs from the remote branch name — e.g. creating feature/foo from origin/main no longer makes it track origin/main; affects Create & Switch to Branch, Switch to... → Create & Switch to New Local Branch, and Create Branch in New Worktree (#5360)
  • Fixes Keep Staged not keeping staged changes when stashing selected files — choosing Keep Staged while stashing specific tracked files no longer drops the --keep-index flag, so staged changes are correctly kept intact (#5281)
  • Fixes pushing a branch that needs a force-push (e.g. after an amend or rebase) silently reporting success without updating the remote — a non-fast-forward (tip of your current branch is behind) rejection is now surfaced as an error instead of being swallowed as non-fatal (#5364)
  • Fixes Fetch, Pull, Switch, Reset, and Restore operations silently reporting success when the underlying Git command failed with a message Git treats as a warning (e.g. an unreachable remote, or an invalid ref/revision) — these failures are now surfaced as errors instead of being swallowed as non-fatal
  • Fixes the working changes (WIP) stats tooltip in the details header duplicating the visible stats pill instead of describing the change breakdown — the tooltip now reads e.g. 1 file added, 2 files changed in the working tree
  • Fixes a stray gap in the Commit Graph header next to the fetch and sync actions when the current branch is already published — the publish action no longer reserves empty space once the branch has an upstream
  • Fixes the design of the paused-operation banner (shown during a merge, rebase, cherry-pick, or revert in the Commit Graph/Inspect details and Home) — the Continue action now uses a start icon, and the action buttons' hover and active states blend into the banner instead of showing a clashing grey toolbar highlight (#5394)
  • Fixes selection and folder expand/collapse state not persisting across refreshes in grouped webview tree views when identical paths appear in different groups
  • Fixes the AI input in the Commit Graph details stealing keyboard focus when the panel switched modes automatically
  • Fixes the Commit Graph showing an incorrect worktree count when a worktree fetch fails or is unsupported
  • Fixes the commit-message headline occasionally rendering at the wrong size before autolinks finish loading in the commit details
  • Fixes stray menu-popover styling leaking onto nested tooltips

Don't miss a new vscode-gitlens release

NewReleases is sending notifications on new releases.