Skip to content

LSPs are initialized before running the sessionStart hook #3112

Description

@JoeRobich

Describe the bug

I am writing a hook that will help keep my LSP install updated. However, I cannot update the LSP because copilot is launching it before running hooks. This seems out of order to me.

2026-05-04T23:34:50.080Z [DEBUG] LSP csharp server for Q:\source\TestConsole2: [Program] Language server initialized
...
2026-05-04T23:35:04.709Z [DEBUG] Executing hook: ./.github/hooks/scripts/session-start.ps1

Affected version

GitHub Copilot CLI 1.0.41-0

Steps to reproduce the behavior

  1. Add a lsp.json
  2. Configure an LSP
  3. Add a hooks/copilot-hooks.json
  4. Configure a session-start hook that runs a session-start.ps1
  5. Add a session-start.ps1 which prints "Hello"
  6. Start Copilot
  7. Observe the logs

Expected behavior

I expected that the session-start.ps1 would be complete prior to initializing LSPs.

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:pluginsPlugin system, marketplace, hooks, skills, extensions, and custom agentsarea:toolsBuilt-in tools: file editing, shell, search, LSP, git, and tool call behavior

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions