This release fixes issues for SREs watching stability and regressions.
✓ No known CVEs patched in this version
Topics
+13 more
Summary
AI summaryFixed Windows daemon mode for Python/TypeScript language servers by resolving 12 platform‑specific bugs.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| 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 rejectedSignal(0)) - Daemon registry race condition:
daemon.jsonnow written after socket bind - URI handling: RFC 8089 canonical form
file:///X:/path - Case-insensitive path comparison for NTFS in cross-repo reference partitioning
StopDaemonusingTerminateProcess(replacing rejectedSIGTERM)- 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
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.
Related context
Related tools
Beta — feedback welcome: [email protected]