Visual Studio Code (Code - OSS)

repository·main·Indexed 11 days ago

https://github.com/microsoft/vscode

The foundational open-source repository for the Visual Studio Code editor, providing core editing, navigation, and debugging capabilities. Includes documentation for bundled extensions such as GitHub Copilot, Git API, Jupyter support, and language features for HTML, CSS, SCSS, and LESS.

Tokens
312K
Snippets
558
Records
1.4K
Agent score
99%

What's inside VS Code

  1. Overview of the Media Preview extension

    main

    The Media Preview extension is a built-in feature of Visual Studio Code that provides basic preview capabilities for image, audio, and video files directly within the editor.

    Note: This extension is bundled with Visual Studio Code. While you can disable it in your extension settings, it cannot be uninstalled.

  2. Overview of the Agents Window (vs/sessions)

    main

    The vs/sessions layer implements the Agents Window, a specialized workbench experience designed for agent session workflows. It operates as a distinct top-level layer alongside the standard vs/workbench layer.

    Key Characteristics

    • Fixed Layout: Unlike the standard VS Code workbench, part positions are fixed and cannot be reconfigured via user settings.
    • Simplified Chrome: The interface is stripped down, removing the activity bar, status bar, and banner.
    • Sessions-First UX: The primary content surface is the Sessions Part, which hosts a grid of session views (rendering active chats) alongside a sidebar and auxiliary bar.
    • Modal Editors: Editors are presented as modal overlays rather than being integrated into the main grid.
    • Session-Aware Titlebar: The titlebar provides context for the active session, a session picker, and a signed-in account widget.
    • Pluggable Provider Model: Session backends (such as local CLI, cloud, or remote agent hosts) are implemented as pluggable providers.
  3. Overview of the VSCode JSON Language Server

    main

    The VSCode JSON Language Server provides language-specific intelligence for editing, validating, and understanding JSON documents. It implements the Language Server Protocol (LSP) and can be connected to any code editor or IDE.

    It supports two language IDs:

    • json: Standard JSON documents parsed and validated according to the JSON specification.
    • jsonc: JSON with comments (supporting // and /* ... */), a VSCode-specific format used for configuration files.
  4. Understand the Sessions List in the Agents Window

    main

    The Sessions List is the primary navigation surface located in the Sidebar of the Agents Window. It aggregates and displays all sessions from all registered providers in a grouped, filterable, and sortable list.

    Key capabilities include:

    • Navigation: Selecting a session navigates the user to that specific session.
    • Organization: Sessions are presented in collapsible sections.
    • Management: Users can group, sort, filter, pin, and archive sessions.
    • Omni Chat Integration: If chat.omni.enabled is active, a Codicon.arrowCircleUpSparkle action appears in the Sessions header next to the New Session button, allowing users to toggle the floating chat input window.
  5. Use CopilotChatSessionsProvider for Copilot Chat

    main

    The CopilotChatSessionsProvider is the default provider (ID: 'default-copilot') used to integrate Copilot Chat into the VS Code session infrastructure. It supports two modes:

    1. Copilot Cloud (Remote): Used for cloud-based sessions via github-remote-file:// URIs.
    2. Copilot CLI (Local): Used for local file:// workspaces when an Agent Host is unavailable.

    Identity

    • ID: 'default-copilot'
    • Label: 'Copilot Chat'
    • Icon: Codicon.copilot
    • Session Types: CopilotCloudSessionType (always) and CopilotCLISessionType (when Agent Host is unavailable).
  6. Understand Language Features for Search Result files

    main

    The Search Result extension is a built-in component of Visual Studio Code that enhances the Search Results Editor. It provides the following capabilities for interacting with search results:

    • Syntax Highlighting: Visual color coding for the content within search results.
    • Symbol Information: Recognition of symbols within the search context.
    • Result Highlighting: Visual emphasis on the specific text matches found during a search.
    • Go to Definition: The ability to navigate directly from a search result to the source code location where the term is defined.

    Note: This extension is bundled with Visual Studio Code. You can disable it in the Extensions view if necessary, but it cannot be uninstalled.

  7. Use GitHub features in Visual Studio Code

    main

    The GitHub extension is bundled with Visual Studio Code. While it cannot be uninstalled, it can be disabled in the Extensions view if not needed. It provides deep integration for GitHub workflows, including:

    • Publishing: Use the Publish to GitHub command to upload local repositories to GitHub.
    • Cloning: Use the Clone from GitHub participant when running the Git: Clone command to browse and clone your GitHub repositories.
    • Authentication: Provides GitHub authentication for built-in Git commands. This can be managed via the github.gitAuthentication command.
    • Automatic Forking: If you attempt to push to a repository where you lack write permissions, the extension can automatically create a fork to facilitate the workflow.
  8. Understand the structure of the Chat contribution in VS Code

    main
    The Chat contribution (workbench/contrib/chat) is organized into two primary directories: browser/ for UI and client-side logic, and common/ for core business logic, services, and data models. Understanding this split is essential for locating where specific chat functionalities (like rendering, UI widgets, or participant management) are implemented.