Skip to content

v0.27.0

Choose a tag to compare

@github-actions github-actions released this 11 Jul 19:30
6444548

Knowns v0.27.0

Highlights

This release moves language intelligence and semantic search onto shared project-scoped runtimes, reducing duplicate language servers, embedding providers, model loads, and memory pressure across concurrent MCP sessions. The new LSP daemon adds lazy language startup, leases, recovery, native Windows named-pipe transport, and unified administration and status reporting. Semantic indexing and retrieval now share provider caches and runtime jobs with graceful keyword fallback. Hermes Agent also gains first-class setup, MCP, skills, and bilingual documentation.


Added

  • Shared project LSP daemon - Language servers are owned per project and reused across MCP sessions with lazy startup, handshake validation, lifecycle leases, recovery, locking, authentication tokens, and structured runtime state
  • Shared semantic runtime - Semantic indexing, search, retrieval, and review reuse project-scoped providers and job coordination instead of loading duplicate embedding models per process
  • Runtime administration and observability - Added unified status, health, logs, restart, cleanup, and runtime job surfaces across CLI, MCP, readiness, and server paths
  • Hermes Agent integration - Added Hermes setup commands, MCP configuration, shared skill installation, compatibility guidance, and English/Vietnamese documentation
  • Docker stress harness - Added multi-client LSP and semantic runtime stress scenarios with configurable memory and PID limits
  • Windows named-pipe transport - Added native Windows IPC for the shared LSP daemon alongside Unix socket transport

Fixed

  • Windows runtime stability - Isolated runtime roots, daemon queues, test homes, and process lifecycles to prevent cross-process state leakage, locked executables, retry storms, and flaky CI behavior
  • Concurrent semantic fallback - Semantic preflight now tolerates transient SQLite writer contention before degrading to keyword-only search
  • Claude Code global MCP setup - Global setup writes user MCP configuration to ~/.claude.json while preserving existing settings
  • MCP audit durability - Audit events are persisted before short-lived stdio clients receive a response, preventing process exit from dropping completed tool-call records
  • Cross-platform UI workflows - UI E2E helpers now isolate runtime state, validate MCP error responses, and use the shared CI timeout policy on slower runners

Changed

  • Code intelligence routing - CLI and MCP code operations now route through the shared daemon while preserving local fallback and existing response shapes
  • Search and review routing - Semantic search, indexing, memory review, and decision review now use the shared runtime and provider cache
  • Readiness reporting - Initial context and runtime status expose shared LSP and semantic health with clearer degraded-state information
  • Runtime ownership - Expensive language-server and embedding resources now follow project/runtime boundaries instead of individual client sessions

Testing

  • Added daemon identity, handshake, lifecycle, lease, locking, transport, recovery, and multi-client coverage
  • Added shared semantic runtime, provider caching, concurrent job routing, degraded hybrid search, and status coverage
  • Added Docker stress scenarios for LSP and semantic runtimes under memory and PID constraints
  • Added cross-platform LSP fixture smoke tests and hardened Windows UI E2E isolation
  • Added regression coverage for Claude global MCP configuration and synchronous MCP audit persistence

Contributors

@howznguyen

Full Changelog: v0.26.0...v0.27.0