Vibeleaderboard
Index / tool
Visit github.com
Category
Developer Tools
Rank
Pricing
Open Source
Type
TOOL
Builder
powershell
GitHub
764 stars
Latest release
v4.7.0
Date

About

Language server and debugger for PowerShell. Powers PowerShell support in VS Code and other editors via LSP and DAP.

What it does

It supplies the editing intelligence behind completions, navigation, script analysis, refactoring, interactive terminals, and debugger controls. Editors connect over standard input or separate local communication channels, while PowerShell code can extend the host editor through a shared scripting API.

Why it's ranked here

The tool covers unusually deep editor integration, from semantic analysis through debugging and an interactive terminal. It also supports generic editor clients instead of requiring one interface. That breadth comes with clear integration costs and uneven documentation, so it best rewards teams prepared to configure their client carefully.

What's good

Separate communication channels preserve debugging and terminal features alongside language intelligence. Script Analyzer provides real-time semantic feedback. The extension API lets PowerShell modules add editor commands and manipulate open buffers. The project also documents end-to-end configurations for Emacs, Vim, and Neovim.

Tradeoffs

Standard input offers the easiest connection but cannot carry the debugger or extension terminal alongside language messages. Rename is limited to one file and misses several dynamic-scope patterns. Windows PowerShell 5.1 receives only best-effort support. Some community editor clients may be outdated, and parts of the host-process guide explicitly describe obsolete protocol details.

How to use it well

Choose it when building or configuring a PowerShell-focused editor experience, especially when completions, diagnostics, debugging, and an integrated console belong together. Prefer local pipes or sockets for the full feature set, and use standard input for simpler language-only clients. Do not treat rename as a repository-wide refactoring system or internal .NET types as stable production APIs.

Technical notes+

README.md defines the supported startup transports, stable API boundary, feature set, version policy, and rename limitations. docs/api/index.md describes EditorSession as the aggregate entry point over language, analysis, debugging, console, extension, and runspace services. docs/guide/extensions.md documents the $psEditor extensibility object and editor-command registration. docs/guide/getting_started.md provides a release-archive installation and Neovim setup. docs/guide/using_the_host_process.md specifies a JSON message protocol over process streams but warns that much of its schema documentation is outdated. global.json pins the .NET SDK policy, while nuget.config declares the PowerShell Azure package feed.

Observed

License
MIT License, with Microsoft Corporation copyright.
Implementation surface
Distributed as a PowerShell module with documented .NET services and APIs.
Packaging
Available as a GitHub release archive; the documentation also identifies a NuGet package for .NET applications.
Interfaces
Language Server Protocol, Debug Adapter Protocol, a PowerShell editor extension API, and documented .NET services.
Connections
Supports named pipes or Unix domain sockets, plus standard input and output.
PowerShell support
Runs on supported PowerShell 7+ versions; Windows PowerShell 5.1 is best-effort.
Editor coverage
Documented clients include Visual Studio Code, Emacs, Vim, Neovim, and IntelliJ-based IDEs.

Read from README.md, docs/index.md, docs/api/index.md, docs/guide/toc.md, docs/guide/extensions.md, docs/guide/introduction.md, docs/guide/getting_started.md, docs/guide/using_the_host_process.md, LICENSE, .mailmap, NOTICE.txt, SECURITY.md, global.json, CHANGELOG.md, nuget.config.

What it can do

  • Provide PowerShell language intelligence

    PowerShell code filesSyntax highlighting, IntelliSense, and code completion

  • Debug PowerShell scripts

    PowerShell scripts with breakpointsStep-by-step execution control and variable inspection

  • Validate PowerShell syntax

    PowerShell codeSyntax error detection and diagnostic messages

  • Format PowerShell code

    Unformatted PowerShell scriptsProperly formatted and indented PowerShell code

  • Provide PowerShell symbol navigation

    PowerShell files and functionsGo-to-definition and symbol reference locations

  • Analyze PowerShell code quality

    PowerShell scriptsCode analysis warnings and best practice suggestions

Tags

powershelllspeditordebugger

Tech Stack

C#Emacs LispPowerShellVim Script

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.