Sourcegraph 7.2.0
Query assist: search code in natural language
Making Code Search easier to use with natural language input. [...]
Conversation forking in Deep Search
Try a different approach or continue past the context window limit. [...]
Rename Deep Search conversations
Deep Search conversations can now be renamed by clicking the title or using the rename option in the menu. [...]
Bulk sync changesets available in Batch Changes
Batch Changes now supports bulk syncing all changesets at once, making it easy to refresh state across large batch changes without loading each changeset individually. [...]
Batch Changes for GitHub supports OAuth
Batch Changes now supports OAuth authentication for GitHub code hosts. [...]
Multiple Slack workspaces and Slack Enterprise Grid
The Slack integration now supports multiple workspaces and Enterprise Grid. [...]
Export Deep Search conversations as PDFs
Share insights, documentation and architecture diagrams with your team. [...]
Curated default MCP tools
The default Sourcegraph MCP endpoint now prioritizes the most commonly used context-gathering tools, while /.api/mcp/all exposes the full tool suite. [...]
Batch Changes for Bitbucket supports OAuth
Batch Changes now supports OAuth authentication for Bitbucket Server and Bitbucket Cloud code hosts. [...]
Details
Improvements
- Deep Search Update sharing notice to clarify code visibility
Clarified Deep Search sharing notice to explicitly indicate that code will be visible to anyone with the link.
- Deep Search Add state transition to fork divider
Improved visual feedback when forking conversations
- Deep Search Rename conversation titles
Conversation titles can now be renamed by clicking the title or using the rename button in the options menu.
- Deep Search Replace failed token limit summarization with fork CTA
- Deep Search displays a proactive warning at 75% context capacity
- When context limit is reached and summarization fails, Deep Search now shows a call-to-action to fork the conversation
- Deep Search Use TypeWriter effect for Deep Search conversation streaming
Use TypeWriter effect for smoother Deep Search conversation streaming
- Deep Search Refactor mermaid tool renderer for lazy loading
Load mermaid diagram renderer lazily to reduce initial JavaScript bundle size when opening Deep Search.
- Deep Search Introduce timeouts for tool calls and redis broker
Tool calls and redis broker operations now have a 2-minute timeout to prevent runaway operations and improve system stability.
- Deep Search Export conversation as PDF
Added PDF export option to Deep Search conversations.
- Deep Search Switch DS title generation model to GPT-5.4 nano
Deep Search now uses a faster and more reliable model (GPT-5.4 Nano) to generate conversation titles.
- Deep Search Enable forking by default
Deep Search users can now fork from any question in an existing conversation. Forking creates a new conversation that includes all questions and answers up to and including the selected question, making it easy to branch into a new line of inquiry while preserving valuable context
- Deep Search Use small anchored popover for deleting a single conversation
When you delete a Deep Search conversation from history, you’ll now see the same small confirmation pop-up used in "Recent conversations".
- Deep Search Add global notice to deepsearch page
Deep Search homepage now displays global notices configured with location "home", matching the behavior of the code search homepage.
- Deep Search Improve styling of errors
Improve styling of inline errors in deep search conversations.
- Deep Search Re-add user and date info to prompt
Deep Search now receives the user and date info at the start of every conversation.
- Deep Search Add tooltip to citations list
Code Navigation tooltips can now be used in the Deep Search citations panel without needing to expand a citation.
- Code Search Pass date filters to git log for commit search
Commit searches with date filters (after: / before:) are now significantly faster on large repositories.
- Code Search Update zoekt to include faster indexing/searching
Indexed search is now faster during both searching and indexing.
- Code Search Add query assist onboarding prompts
Added onboarding prompts to help new users discover Query Assist.
- Code Search Enable query assist by default
Query assist is now enabled by default for customers with code search licenses who have signed AI terms.
- Code Search Add focus=search URL param to autofocus search input
Adds a
focus=searchURL parameter for the search results page. When present, the search input is focused instead of the first search result, and suggestions are suppressed until the user interacts with the input. This enables external tools (e.g. golinks) to deep-link into Sourcegraph search with the cursor ready for query refinement. - Code Nav Add Alt+B keyboard shortcut to toggle git blame
Added Alt+B keyboard shortcut to toggle git blame view in file viewer
- Code Intel Enable inline code intel by default
Code intelligence hovers are now faster thanks to a simplified architecture that initiates requests earlier during file load and falls back to search-based results more quickly when precise data is unavailable.
- Batch Changes Add sync changesets bulk action to batch change detail page
Batch change admins can now select changesets and trigger a high-priority status sync from the code host using the "Sync changesets" bulk action on the batch change detail page.
- Batch Changes Add GitHub OAuth as credential authentication strategy
GitHub OAuth tokens can now be used as Batch Changes credentials, providing an alternative to personal access tokens and GitHub Apps.
- Batch Changes Add agentic workflows client prototype
Added agentic workflows client prototype with three main pages: home page listing predefined workflows and running instances, template page with canvas UI for workflow configuration, and running instance page with logs and outputs panels for monitoring workflow progress.
- Batch Changes Add Bitbucket Server and Cloud OAuth credential support
- Batch Changes Create dedicated external account in OAuth flow
- Administration Add user metadata to usage export
Usage export now includes user metadata, eliminating the need for additional lookups based on user_id.
- Administration Add documentation when editing code hosts
- Analytics Add service account field to user metadata export
Include whether a user is a service account in opt-in user metadata exports.
- API Add filter support to ListConversationSummaries
Add filter support to ListConversationSummaries. Two filter types are supported:
content_queryfor substring search (min 3 characters) andstarredfor filtering by starred status. Duplicate filters of the same type are rejected withInvalidArgument. - API Add basic repositories service
Add a basic repositories service to the Sourcegraph API that can fetch repositories by their ID.
- API Add predefined client in API reference
A default
ReferenceExampleauthentication provider is now available in/api-reference. Users can click "Authorize" in the "Authentication" modal to use their own credentials when making test requests in the reference. - API Allow looking up a user by email address in GetUser
The GetUser RPC now supports looking up users by their verified email address using the
nameparameter, for example:GetUser({ name: 'users/[email protected]' } - API Return verified emails in users API responses
The
users.v1.ServiceAPI now returns verified emails associated with the user. - Azure DevOps Add repos field to Azure DevOps external service
Add
reposfield to Azure DevOps external service for explicit repository selection - CLI Update required src-cli version to 7.0.2
Updated the required
srcCLI version to 7.0.2, with OAuth support and more. - Executors Add retries for git operations
Retry git operations on executors to improve reliability during gitserver pod shutdowns.
- Executors Update docker-client package
- GitHub Add notifications for GitHub App reconciliation failures
Admins now receive notifications to clean up GitHub Apps on Sourcegraph if they have been deleted on GitHub.
- Inference Normalize stop reasons across LLM providers
Normalized LLM provider stop reasons into a consistent enum, enabling provider-agnostic error handling for refusal and content filter cases in deep search and subagents.
- Inference Add support for custom reasoning effort
Added support for specifying reasoning effort overrides per request, allowing different applications to use different thinking levels with the same model.
- Inference Add support for GPT-5.4 models
Add support for GPT-5.4 models (base, mini and nano).
- Inference Add Claude Sonnet 4.6 thinking variant
Added a thinking variant of Claude Sonnet 4.6 to the model selector for comparison and testing purposes.
- Inference Add Gemini 3.1 Flash Lite
Add support for Gemini 3.1 Flash Lite
- Licensing Allow AI features for plans including Cody
The Code Intelligence Platform and Cody Enterprise plans no longer require a separate license key to use AI features beyond Cody. Deep Search, AI query assist, and future AI features are now automatically enabled on these plans.
- MCP More stringent validation of tool arguments
MCP tools now validate arguments earlier and provide clearer error messages that mention the specific argument incorrectly used.
- MCP Improve read_file, nls_search, and list_repos tool behavior
- MCP
read_file: Large files (>128KB) now return the first 200 lines (further capped by bytes to avoid huge responses from files with very long lines) as accurately line-numbered content. The truncation notice is returned inToolExecutionResponse.Noteinstead of being appended to the file content, preserving the guarantee that each numbered line corresponds to an actual file line. Binary files are detected and return a clear message with MIME type instead of a misleading line count. - MCP
nls_search: Tool description rewritten to accurately describe OR-logic keyword matching with stemming. No longer claims to be "semantic search". Includes explicit examples of correct vs incorrect query formatting. - MCP
list_repos: Now accepts an empty query to list all available repositories. A default pagination limit is always applied at the database layer to prevent unbounded table scans. - MCP tool descriptions: Removed redundant preamble from all non-dotcom tool descriptions.
- MCP
- MCP Disable DCR if MCP is disabled
- MCP Support RBAC to control MCP access
Added a new RBAC permission
MCP#ACCESSfor accessing MCP endpoints under/.api/mcp. - MCP Add "/all" mcp endpoint
Added a new "/all" MCP endpoint that users can opt into before it becomes the default in the next release.
- MCP Add site-level kill switch for MCP endpoints
Added site configuration
mcp.enabledto allow admins to disable MCP API endpoints instance-wide - MCP Add annotations to all tools
Added MCP tool behavior annotations so Sourcegraph tool definitions now expose safety hints like read-only, destructive, idempotent, and open-world to clients
- Observability Add panel-group interpretation, per-panel tooltips, improved Gitserver/Zoekt memory mapping explanations
For self-hosted customers:
- Grafana panels now display informative tooltips on hover to help interpret each panel
- Gitserver and Zoekt Grafana dashboards now include improved explanatory text for resource usage interpretation
- RBAC Add site config admin permission
Added granular
SITE_CONFIG#{READ,WRITE}RBAC permissions for site administration endpoints, allowing non-admin users with the appropriate role to view or modify site configuration options. - RBAC Add repo management admin permission
Administrators can now grant non-site-admin users the ability to manage repositories and code host connections through the new
REPO_MANAGEMENTpermission. Users with this permission can access the Repositories section of the admin interface without requiring full site administrator privileges. - Repositories Support graceful scale up and scale down
Gitserver can now be scaled up or down without downtime using secondary fallbacks and a graceful drain mechanism via the
SRC_GITSERVER_DRAIN_SHARDSenvironment variable. - Repositories Add sort by last committed asc/desc in admin repositories
Added sort by last committed (asc/desc) to
/admin/repositories, making it easier for admins to identify stale repositories. - Repositories Use synced repository icons for repository page
Repository pages now show repository icons sync'd from code hosts.
- Access Tokens List non-expired tokens first
- Changelog Render inline markdown in post titles and taglines
Inline markdown (such as backtick-wrapped code) in changelog post titles and taglines now renders correctly in the in-product changelog modal.
- External Services Suspend automated syncs when credentials expire
External services with expired credentials are now automatically suspended and will not retry syncing until credentials are updated. The UI displays the suspended state and prompts admins to take action.
- Markdown Support GitHub theme-specific images
Support GitHub's theme-specific image syntax in markdown rendering, allowing images to adapt based on light/dark theme context.
- Objects Lsif-uploads, search-jobs fall back to unified sourcegraph bucket
Self-hosted Sourcegraph no longer requires separate buckets for LSIF uploads and search jobs: a single
SOURCEGRAPH_UPLOADS_bucket can now be used for all features. Existing configurations for AWS S3 and GCS object storage will be respected for LSIF uploads and search jobs. To learn more, refer to https://sourcegraph.com/docs/self-hosted/external-services/object-storage - Objects Add check for soft-required new 'sourcegraph' bucket
Added warning to administrators when the new
sourcegraphbucket requirement is not fulfilled. Self-hosted customers using GCS or AWS S3 will soon need to manually prepare this bucket - see https://sourcegraph.com/docs/self-hosted/external-services/object-storage for more details. - Prometheus Update node-exporter package
Fixes
- Deep Search Surface tool call errors in UI
Deep search now displays tool call errors instead of silently showing no results.
- Deep Search Cancel question when creation is still in-flight
Fixed an issue where clicking "Cancel" while a Deep Search conversation or follow-up question was being created would be silently ignored. The cancel now executes once the server responds with the conversation/question ID.
- Deep Search Don't suggest forking when first question hits token limit
Fixed token limit error incorrectly suggesting to fork on the first question when there's no prior context.
- Deep Search Treat end of stream as unexpected error
- Deep Search Resolve proper modelRef for summarization
Fixed summarization failures in Deep Search when token limits are exceeded.
- Deep Search Auto focus prompt editor on load
The prompt editor now automatically receives focus when the /deepsearch page loads.
- Deep Search Populate explore panel when using "find references" from citations
Fixed explore panel not populating when using "find references" from citation hover cards by including the end position of the symbol range.
- Deep Search Preserve history in follow-ups
Cancelled Deep Search questions now remain visible in conversation history when asking follow-up questions.
- Deep Search Align error boxes with question cards
Aligned error boxes with question cards in deep search interface
- Deep Search Eliminate step collapse jitter on forked conversations
Fixed visual jitter of question-answer pairs in forked conversations during streaming.
- Deep Search Include Note in tool text output
MCP and Deep Search tools now surface search alerts when a query matches no repositories, times out, or hits another issue.
- Deep Search Show animations only on last answer to reduce visual jitter
Reduced visual jitter in conversations by only animating the most recent answer card instead of all cards during conversation reloads.
- Deep Search Prevent deleted Deep Search conversations from being re-added by stale upserts
Fixed an issue where deleted Deep Search conversations could reappear in the history sidebar or recent conversations menu. Deleted conversations are now consistently removed across both views.
- Deep Search Prevent source reference pills from reloading page
Fixed source reference pills in the deep search prompt editor and question cards from triggering unnecessary page reloads when clicked. Pills in the prompt editor are now non-clickable, while question card pills only navigate when showing different content than currently displayed.
- Code Search Fix symbol and conversation search in command palette
Fixed symbol search and conversation search not returning results in the command palette.
- Code Search Hoist timeout and count fields
count and timeout fields now apply consistently across OR expressions in search queries.
- Code Search Clarify search context tooltip vs @ references
- Code Search Make all citations and sources always visible
All citations and sources are now always visible for Deep Search conversations, with consistent counts between the conversation header and the right sidebar.
- Code Search Fix insertions failing with postgres errors for search context revisions for large sets
- Code Search Disable zoekt "git cat-file" optimization
Disabled a recent optimization in search indexers which sometimes led to git processes with large memory usage while indexing a repository.
- Code Search Demote query assist promo after onboarding
Query assist promo now remains visible in search suggestions after onboarding, positioned above the "Narrow your search" section instead of being removed entirely.
- Code Search Hide query assist promo for non-empty input
Hid the Query Assist promo suggestion after a user starts typing a query.
- Code Search Searcher max file size limit to 1 MB
Unindexed search now uses the same maximum file limits as indexed search (1 MB instead of 2 MB).
- Code Search Fix non-deterministic skipped index count
Fixed non-deterministic count of "skipped files" in index options. For large repos, the count could fluctuate with every page refresh.
- Code Search Improve diff search resilience and timeout handling
- Code Nav Load search-based results in Explore panel Search tab
When switching from Precise to Search in the Explore panel, fetch search-based results from the API instead of showing an empty tab. Previously, the Search tab reused the same precise query and showed no results.
- Code Nav Fix explore panel not showing local references
Fixed explore panel not showing local references in certain situations when clicking "Find references" on a local symbol.
- Code Intel Remove deprecated PRECISE_CODE_INTEL_UPLOAD_TTL environment variable
Removed deprecated
PRECISE_CODE_INTEL_UPLOAD_TTLenvironment variable. ConfigureCODEINTEL_UPLOADSTORE_EXPIRER_MAX_AGEon the worker container instead. - Code Intel Fix hover and go-to-definition for local import definitions
- Code Intel Distinguish dedup from no-config in manual auto-index enqueue
Fixed an issue where enqueuing already existing Precise auto-indexing jobs resulted in a warning.
- Code Intel Scope bulk delete to active tab's index source
Fixed bulk delete to only affect uploads from the active tab (auto-indexing or user uploads), preventing unintended deletion of uploads from the other source.
- Batch Changes Fix push-only in changeset_specs constraint
Fixed database constraint for pushed-only changesets to align with application code
- Batch Changes Fix setup error display for GitHub Apps and OAuth apps
Fixed setup error display for GitHub Apps and OAuth apps in code host connections
- Batch Changes Hide OAuth options for site credentials
OAuth authentication options are now hidden when adding site credentials for batch changes, as OAuth is not supported for site-level credentials. Only Personal Access Token authentication is shown for GitLab and Bitbucket site credentials.
- Batch Changes Delete BATCH_CHANGES external account when credential is removed
Deleting a batch changes user credential now also removes its associated BATCH_CHANGES external account, preventing orphaned accounts while preserving AUTH accounts to maintain user access.
- Batch Changes Handle *gitlab.Pipeline in ChangesetEvent.Update
Fixed error when updating changeset events with GitLab pipeline metadata
- Batch Changes Handle missing GitHub pull request state after merge
Fixed incorrect GitHub review statuses showing as pending after a PR is merged
- Administration Allow deleting all GitHub App kinds
All GitHub Apps, including ones used for Batch Changes, can now be deleted from the
/admin/github-appspage. - Administration Provide a value for the oauth scopes checkboxes
Fixed OAuth client scope selection for admin-created clients
- Administration Don't crash GitHub App code host connection page without installationID
Fixed an issue where GitHub App code host connection pages without an
installationIDwould crash. - Administration Clear sync notifications when code host is deleted
Admin notifications for deleted code hosts are now automatically cleared.
- Authentication DCR ignores ports for loopback redirect URIs
MCP clients using random ports in redirect URIs no longer require reauthentication when the port changes.
- Authentication Allow Bearer tokens through Auth middleware in dotcom mode
Enabled OAuth tokens to make API requests on sourcegraph.com
- Bitbucket Remove broken user profile link
- Documentation Use correct URL for add Github App docs
- Executors Uniqueify k8s job names with run-id and add labels
- Kubernetes executor jobs now include a run ID in their name to ensure uniqueness for each execution
- Labels (job-id, queue, run-id, commit) and repository annotation added to jobs for easier querying and debugging
- Executors Sort executors by last seen
- Executors KUBERNETES_JOB_STEP_IMAGE should override pre / post images
- Executors Shorten default executor heartbeat clean up
Reduced the number of stale executors tracked in the executors list.
- Inference Deprecate
statusFilterand addenableSourcegraphInternalModelsDeprecated
statusFiltersinmodelConfigurationto simplify model availability. Sourcegraph now automatically determines which models should be available, eliminating cases where important models may be accidentally excluded through configuration. Individual and provider-specific models may still be excluded throughmodelFilters. - Inference Keep systemPreInstruction chat-only
Fixed auto-edit failures on instances using
modelConfiguration.systemPreInstruction. - Inference Fix tool call events for Gemini models
Fixed tool call events for Gemini models to prevent client-side errors when mapping responses to tool calls.
- Inference Improve cache hit rates for Gemini models
- Inference Preserve Anthropic tool JSON bytes to prevent cache busting
Preserve raw JSON bytes in Anthropic tool-call handling to prevent cache invalidation caused by JSON reformatting.
- MCP Accept Bearer token on API for MCP spec compliance
MCP endpoints now accept Personal Access Tokens using the standard
Authorization: Bearer <token>format for compliance with the MCP authorization specification (RFC 6750). - MCP Curate the default MCP endpoint for common context gathering
- MCP Validate negative limit for pagination args
- Observability Show notifications in global alerts
Fixed certain notifications not appearing in the sidebar admin alerts
- Permissions Hide code host connections column from non-admin users
- RBAC Grandfather MCP#ACCESS to service account roles
Grandfathered in the
MCP#ACCESSRBAC role to all existing service account roles to avoid restricting access if your system role previously used MCP. - RBAC Correctly uppercase acronyms in namespaces
Acronyms in RBAC namespaces are now correctly displayed in uppercase (e.g., "IdP" instead of "Idp").
- Repositories Skip scheduling repo updates for repos with only suspended external services
- Repositories Handle edge-case when zero repos are currently on the primary
Fixed edge-case in gitserver where zero repos on the primary shard caused database errors when syncing repo status
- Repositories Fix issue where service startup failures exit with code 0
- Security Fix cross-site scripting via unescaped repository file paths
Fixed cross-site scripting vulnerability where repository file paths containing HTML metacharacters could execute arbitrary scripts when viewing file diffs.
- Security Update vulnerable dependencies
- Security Prometheus-redis-exporter/1.82.0 package update
- Slack Fix Sourcegraph bot not responding in Enterprise Grid setups
Fixed Slack bot not responding in Enterprise Grid environments with shared channels or org-level installs
- UI Use CodeHostIcon on code host connections page
Fixed GitHub icon display in dark mode on the code host connections configuration page
- Commits Improve git notes performance
Improved performance when retrieving git notes for commits
- Searcher Evict orphaned .part files to prevent cache disk pressure
Fixed cache disk filling up due to temporary files never being cleaned up after process restarts.
Removed
- Deep Search Remove redundant 'Answer' header from answer cards
- GraphQL Remove unused sparkline GraphQL field
- Inference Remove Mixtral 8x22B Instruct
Removed Mixtral 8x22B Instruct model from available model configurations
- Inference Remove support for sunset Google models
Gemini 3 Pro and 2.0-flash-exp are not accessible anymore.
- Inference Remove deprecated gpt-3.5-turbo model
- RBAC Remove beta badge from RBAC page