Skip to content

v0.2.0 — LSP code intelligence

Choose a tag to compare

@cmgzone cmgzone released this 20 Aug 08:08
· 320 commits to main since this release

v0.2.0 — LSP code intelligence

Hermes now actively uses a Language Server Protocol layer during coding, not just exposes tools.

LSP intelligence layer

  • 5 agent tools: lsp_diagnostics, lsp_definition, lsp_references, lsp_hover, lsp_symbols
  • LspManager lifecycle: lazy server spawn (one per language, kept alive for the session), crash detection → single restart → clean fallback (never an infinite retry loop), graceful shutdown with full process-tree cleanup on Windows
  • Configuration: .hermes/lsp.json overrides/extends the built-in registry (typescript, python, go, rust, c/cpp, java, csharp, css)
  • Pull + push diagnostics with 1-based [ERROR] file:line:col — code message rendering
  • Optional by design: when a server is unavailable or unsupported, Hermes falls back to search_files/read_file — LSP failure never fails a task

Hermes uses LSP during coding

  • Automatic post-edit diagnostics gate: after every successful write_file/apply_edit, diagnostics for the touched files are surfaced to the model before the evidence gate
  • Task-type → investigation strategy: the goal is classified (bug-fix / refactor / test-failure / explore / feature) and a proven LSP-first investigation sequence is injected at intake
  • Prompt guidance: when to prefer LSP over blind text search, and the rule that "No diagnostics" is fast feedback — never a substitute for the real test/typecheck/build commands

Reliability

  • 284 tests (up from 41 at the last release), including deterministic fake-LSP-server integration tests for lifecycle, kill-recovery, crash-once-restart-once, and fallback paths
  • Windows spawn hardening: real executables spawn directly (no shell), only .cmd/.bat shims use a shell; taskkill /T /F tree cleanup

Installers

  • Agent-Gitu-Setup-0.2.0.exe — NSIS installer (choose directory)
  • Agent-Gitu-Portable-0.2.0.exe — portable build