@xynogen/pix-diagnostics
Pi extension — lazy LSP diagnostics, navigation, and a compact session widget
Package details
Install @xynogen/pix-diagnostics from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@xynogen/pix-diagnostics- Package
@xynogen/pix-diagnostics- Version
0.4.1- Published
- Oct 22, 2026
- Downloads
- 813/mo · 124/wk
- Author
- xynogen
- License
- MIT
- Types
- extension
- Size
- 83.3 KB
- Dependencies
- 3 dependencies · 4 peers
Pi manifest JSON
{
"extensions": [
"src/extension.ts"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
pix-diagnostics
Pi extension — an LSP client for project-selected language servers.
What it does
- Reads language-server choices from
<project>/.pi/lsp.json. - Starts a configured server only when a visible tool call needs it.
- Reports diagnostics through
lsp_diagnostics. - Supports definition, references, hover, symbols, rename preview, and call hierarchy through
lsp_navigation.
Pix does not bundle, install, or select language servers. Use the lsp skill to
choose a server for the project. The project owns the server and its version.
Project configuration
{
"servers": {
"python": {
"command": "pyright-langserver",
"args": ["--stdio"],
"extensions": [".py", ".pyi"],
"languageId": "python",
"rootMarkers": ["pyproject.toml", ".git"]
}
}
}
Required fields: command, extensions, and languageId. Optional fields:
args, filenames, and rootMarkers.
Local TypeScript server
Install the server as a project development dependency:
bun add --dev typescript-language-server
TypeScript must also exist in the project dependencies.
Add this server to <project>/.pi/lsp.json:
{
"servers": {
"typescript": {
"command": "bun",
"args": ["run", "typescript-language-server", "--stdio"],
"extensions": [".ts", ".tsx", ".js", ".jsx", ".mjs", ".cjs"],
"languageId": "typescript",
"rootMarkers": ["tsconfig.base.json", "package.json", ".git"]
}
}
}
The wrapper uses the project-local server, not a global installation.
Run /reload after you change the server configuration.
Then call lsp_diagnostics with source: "lsp" and explicit file paths.
This configuration does not add a JSON language server.
Diagnostic states
clean: the server confirms that the file has no findings.findings: the server returns one or more diagnostics.unavailable: no configured server can run for the file.unconfirmed: the client cannot confirm diagnostics within the wait budget.
An unconfirmed result does not mean that the file is clean.
Install
pi install npm:@xynogen/pix-diagnostics
Bundled in
@xynogen/pix-core. Install it alone only if you do not use pix-core.
Full distro
This package is part of Pix. The installer sets up Pi and the full distro. See Install for the notes for each OS.
# Linux / macOS
curl -fsSL https://raw.githubusercontent.com/xynogen/pix-mono/main/scripts/install.sh | sh
# Windows
irm https://raw.githubusercontent.com/xynogen/pix-mono/main/scripts/install.ps1 | iex
License
MIT
The LSP engine adapts code from pi-lens (MIT). See LICENSE.pi-lens.