Skip to content

Release history

blackwell-systems/agent-lsp releases

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

25 shown

No immediate action
v0.12.0 Bug fix

Windows daemon mode fixed

No immediate action
v0.11.2 Bug fix

JDK detection fixes

No immediate action
v0.11.1 Breaking risk

MCP key rename

v0.11.0 Breaking risk
Breaking changes
  • `get_change_impact` renamed to `blast_radius`.
Notable features
  • Inspector `/lsp-inspect` batch mode (`--top N`) and comparison mode (`--diff`).
  • Concurrency analysis adds four new checks across 25 languages.
  • Agent DX improvements: unified symbol exploration, safe edit preview/auto‑apply, indexed flags.
Full changelog

Breaking

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

Added

Inspector evolution (8 improvements to /lsp-inspect):

  • Batch mode (--top N): directory-level inspection with ranked output
  • Comparison mode (--diff): branch-only issue detection
  • Fix suggestions: exact fix text for every finding
  • Confidence tiers: verified/suspected/advisory
  • Blast-radius severity calibration using caller counts
  • Results persisted to .agent-lsp/last-inspection.json
  • MCP resource inspect://last for programmatic access
  • Inspector now has 12 check types (was 8)

Concurrency analysis (language-agnostic, 25 languages):

  • 4 new inspector checks: unrecovered_concurrent_entry, unchecked_shared_state, channel_never_closed, shared_field_without_sync
  • blast_radius: sync_guarded metadata on mutex-protected types
  • find_callers: cross_concurrent flag traces through goroutine/thread boundaries
  • /lsp-concurrency-audit skill (24th skill): field-level safety report

Agent DX improvements:

  • explore_symbol: type info + source + callers + refs in one call
  • safe_apply_edit: preview + auto-apply when net_delta == 0
  • Auto-diagnostics: errors_after/warnings_after in symbol edit responses
  • Indexed indicator: indexed: true/false in blast_radius/find_references/find_symbol
  • Proactive diagnostic regression notifications via DiagChangeTracker
  • Intent aliases: callers, explore, safe_edit

Other:

  • blast_radius: scope: "all" for unexported dead code detection
  • blast_radius: filter: "untested" for coverage gap queries

Summary

24 skills. 65 tools. 12 inspector check types. 30 CI-verified languages.

No immediate action
v0.10.0 New feature

Agent‑evaluated quality improvements

v0.9.0 Breaking risk
⚠ Upgrade required
  • Update mcp‑assert fixtures and any hardcoded tool name references to the new intent‑based names.
  • When using symbol editing tools, ensure code references are resolved via ResolveSymbolByNamePath for dot‑notation support.
Breaking changes
  • Renamed tools: get_info_on_location → inspect_symbol
  • Renamed tools: get_document_symbols → list_symbols
  • Renamed tools: get_workspace_symbols → find_symbol
Notable features
  • Symbol‑level editing via replace_symbol_body, insert_after_symbol, insert_before_symbol, safe_delete_symbol (dot‑notation resolver)
  • Proactive server notifications for diagnostics, workspace readiness, process health, and stale references
  • Passive mode to connect to an existing language server over TCP
Full changelog

v0.9.0: Symbol Editing, Proactive Notifications, Intent-Based Naming

60 tools. 30 languages. 22 skills. This release reshapes how agents interact with agent-lsp: tools are named for what you want to do, not what LSP calls it; edits happen at the symbol level, not the line level; and the server pushes state changes instead of waiting to be asked.

Breaking: 7 tools renamed

Tool names now match agent intent instead of LSP protocol jargon:

| Old name | New name |
|----------|----------|
| get_info_on_location | inspect_symbol |
| get_document_symbols | list_symbols |
| get_workspace_symbols | find_symbol |
| get_code_actions | suggest_fixes |
| get_references | find_references |
| call_hierarchy | find_callers |
| simulate_edit_atomic | preview_edit |

Go function signatures unchanged. Only the MCP tool name strings are affected. Update your mcp-assert fixtures and any hardcoded tool references.

Symbol-level editing (4 new tools)

Edit code by symbol name instead of line numbers:

  • replace_symbol_body: "replace function X with this implementation" without knowing coordinates
  • insert_after_symbol / insert_before_symbol: add code adjacent to a named symbol
  • safe_delete_symbol: delete only if zero references (checks find_references first, refuses if callers exist)

All four use the shared ResolveSymbolByNamePath resolver that supports dot-notation (MyStruct.Method) and overload indexing (Method[0]). Skills updated: /lsp-edit-symbol now uses replace_symbol_body as the primary path; /lsp-dead-code offers cleanup via safe_delete_symbol.

Proactive server notifications

Four channels push state changes to agents without requiring a tool call:

  1. Diagnostic changes (2s debounce): "file X now has 3 errors"
  2. Workspace ready (one-shot): "language server indexing complete"
  3. Process health (crash/recovery): "language server exited unexpectedly"
  4. Stale references (3s debounce): "source files changed, cached references may be outdated"

All channels wired automatically on start_lsp. Best-effort delivery; clients that ignore notifications are unaffected.

Passive mode

Connect to an already-running language server via TCP instead of spawning a new process:

{ "tool": "start_lsp", "args": { "root_dir": "/project", "connect": "localhost:9999" } }

Reuses the IDE's warm index with zero duplicate memory. Supported by gopls (gopls -listen=:9999), clangd, and other servers with TCP listen mode.

Provider-agnostic skill awareness

Four-layer reinforcement architecture ensures agents know about the 22 skills regardless of provider:

  1. Instructions field: every MCP client receives a task-to-tool mapping on connect
  2. Per-response hints: every tool response suggests the logical next action
  3. On-demand workflows: prompts/get("lsp-refactor") loads full instructions
  4. Phase enforcement: errors include recovery guidance when agents skip steps

agent-lsp init now writes provider-specific rules files alongside the MCP config: CLAUDE.md for Claude Code (with "use this, not that" table), .cursor/rules/ for Cursor, .clinerules for Cline, .windsurfrules for Windsurf, GEMINI.md for Gemini CLI.

Also

  • group_by=symbol on get_diagnostics: group errors by owning function/type
  • Cross-referencing in tool descriptions: tools suggest related tools
  • Confidence assertions: "net_delta 0 means safe to apply without verification"
  • Go test path auto-fix: bare internal/notify now works (auto-prefixes ./)
  • CleanupStaleDaemons wired into daemon startup (found by /lsp-dead-code)
  • Nil sender crash fixed in notification channels (found by /lsp-inspect)
  • interface{} to any across 85 files
  • 814 lines of new tests
No immediate action
v0.8.1 Bug fix

Symbol resolution + hint fixes

No immediate action
v0.8.0 New feature

Instant langchain support with caching

Review required
v0.7.0 Bug fix
Breaking upgrade

Deadlock fix

No immediate action
v0.6.1 Bug fix

Data race fixes + panic recovery

No immediate action
v0.6.0 New feature

Persistent daemon mode

No immediate action
v0.5.4 New feature

Inspect performance boost

No immediate action
v0.5.3 Maintenance

Routine maintenance and dependency updates.

No immediate action
v0.5.2 Bugfix

Archive filename fix

No immediate action
v0.5.1 New feature

PyPI distribution + stats

Review required
v0.5.0 New feature
Auth RBAC

Per-phase tool permissions + phase enforcement

No immediate action
v0.4.0 New feature

mcp-assert expansion + skill capabilities

No immediate action
v0.3.0 New feature

ARM64 images + audit trail

No immediate action
v0.2.3 Maintenance

Routine maintenance and dependency updates.

No immediate action
v0.2.2 Bug fix

Bug fixes and stability improvements.

No immediate action
v0.2.1 Bugfix

Exit code fix

Review required
v0.2.0 New feature
Auth Dependencies

Windows install story

No immediate action
v0.1.2 New feature

Install script + npm dist

No immediate action
v0.1.1 Maintenance

Routine maintenance and dependency updates.

Review required
v0.1.0 Breaking risk
Auth RBAC

Routine maintenance and dependency updates.

Beta — feedback welcome: [email protected]