Skip to content

This release fixes issues for SREs watching stability and regressions.

✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

agentskills ai-agents ai-tooling claude claude-code code-intelligence
+13 more
code-quality coding-agent developer-tools go language-server-protocol lsp mcp mcp-server model-context-protocol python rust static-analysis typescript

Summary

AI summary

Fixed Windows daemon mode for Python/TypeScript language servers by resolving 12 platform‑specific bugs.

Changes in this release

Feature Low

Adds configurable broker timeout via `AGENT_LSP_BROKER_TIMEOUT_MS` (default 30 s).

Adds configurable broker timeout via `AGENT_LSP_BROKER_TIMEOUT_MS` (default 30 s).

Source: llm_adapter@2026-06-04

Confidence: high

Feature Low

Adds spawn‑diagnostics logging to `~/.cache/agent-lsp/spawn-logs/<language>.log`.

Adds spawn‑diagnostics logging to `~/.cache/agent-lsp/spawn-logs/<language>.log`.

Source: llm_adapter@2026-06-04

Confidence: high

Feature Low

Adds 785 new unit tests across five core packages, raising coverage significantly.

Adds 785 new unit tests across five core packages, raising coverage significantly.

Source: llm_adapter@2026-06-04

Confidence: low

Bugfix Medium

Fixes 12 Windows‑specific bugs causing daemon mode failures.

Fixes 12 Windows‑specific bugs causing daemon mode failures.

Source: llm_adapter@2026-06-04

Confidence: low

Full changelog

v0.12.0

Windows daemon mode fixed

Daemon mode (Python/TypeScript language servers) is now fully functional on Windows. This release fixes 12 platform-specific bugs that caused start_lsp to fail with "broker did not start within 10 seconds" on every Windows session.

Fixes include:

  • Process detachment using CREATE_NEW_PROCESS_GROUP + CREATE_NO_WINDOW
  • PID liveness checks via OpenProcess + GetExitCodeProcess (replacing rejected Signal(0))
  • Daemon registry race condition: daemon.json now written after socket bind
  • URI handling: RFC 8089 canonical form file:///X:/path
  • Case-insensitive path comparison for NTFS in cross-repo reference partitioning
  • StopDaemon using TerminateProcess (replacing rejected SIGTERM)
  • Configurable broker timeout via AGENT_LSP_BROKER_TIMEOUT_MS (default 30s)
  • Spawn diagnostics captured to ~/.cache/agent-lsp/spawn-logs/<language>.log

Thank you to @TheodorKleynhans for this comprehensive contribution. 🙏

Test coverage

785 new unit tests across 5 core packages:

| Package | Before | After | Change |
|---------|--------|-------|--------|
| internal/config | 70.0% | 96.2% | +26.2pp |
| internal/resources | 39.3% | 73.2% | +33.9pp |
| internal/session | 64.6% | 76.9% | +12.3pp |
| internal/lsp | 39.2% | 50.1% | +10.9pp |
| internal/tools | 39.3% | 40.7% | +1.4pp |

README positioning

Restructured the README to clarify that agent-lsp is an MCP server that orchestrates existing LSP servers (gopls, rust-analyzer, jdtls, etc.), not an LSP server itself. Added "What is it?" and "Why agent-lsp?" sections.

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track blackwell-systems/agent-lsp

Get notified when new releases ship.

Sign up free

About blackwell-systems/agent-lsp

Stateful MCP server over real language servers. 50 tools, 30 CI-verified languages, 20 agent workflows. Persistent sessions keep the index warm across files and projects. Speculative execution simulates edits in memory before writing to disk.

All releases →

Related context

Earlier breaking changes

  • v0.11.0 `get_change_impact` renamed to `blast_radius`. Same handler, same parameters, new name.

Beta — feedback welcome: [email protected]