lsp-gateway
Version:
Local LSP gateway for development - HTTP JSON-RPC and MCP server for 4 languages
79 lines (72 loc) • 2.97 kB
YAML
# Default Configuration for LSP Gateway
# Simplified CLI with basic LSP server integration for all supported languages
servers:
# Go Language Server
go:
command: "gopls"
args: ["serve"]
working_dir: ""
initialization_options: {}
# Python Language Server
python:
command: "pylsp"
args: []
working_dir: ""
initialization_options: {}
# JavaScript Language Server
javascript:
command: "typescript-language-server"
args: ["--stdio"]
working_dir: ""
initialization_options: {}
# TypeScript Language Server
typescript:
command: "typescript-language-server"
args: ["--stdio"]
working_dir: ""
initialization_options: {}
# Java Language Server
java:
command: "jdtls"
args: []
working_dir: ""
initialization_options: {}
# Unified Cache Configuration (Enabled by default)
# Standard production settings with simple units for improved performance
cache:
enabled: true # Enabled by default for improved performance
storage_path: ".lsp-gateway/cache" # Cache storage directory (relative to project root)
max_memory_mb: 256 # Memory limit in MB (simple units)
ttl_hours: 24 # Cache time-to-live in hours (simple units - 24h for daily dev workflow)
languages: ["go", "python", "typescript", "java"] # Languages to cache
background_index: true # Enable background indexing for better performance
health_check_minutes: 5 # Health check interval in minutes (simple units)
eviction_policy: "lru" # Cache eviction policy (lru, simple)
disk_cache: false # Enable disk persistence (false for in-memory only)
# Cache Configuration Notes:
#
# 1. Performance & Safety:
# - Cache is ENABLED by default for improved performance
# - Set 'enabled: false' to disable if needed
# - Validates memory limits against system resources
#
# 2. Storage:
# - storage_path is relative to project root or absolute path
# - Directory will be created automatically if it doesn't exist
# - Ensure sufficient disk space for cache storage
#
# 3. Memory Management:
# - max_memory_mb should be reasonable for your system
# - System will warn if > 50% of available memory
# - Consider other applications when setting limits
#
# 4. Performance Tuning:
# - ttl_hours: 24 hours TTL optimized for daily development workflow (simple units)
# - background_index: Enable for better responsiveness
# - health_check_minutes: 5 minutes to monitor cache health periodically (simple units)
# - eviction_policy: LRU for intelligent cache management
#
# 5. Language Support:
# - Only supported languages: go, python, javascript, typescript, java
# - Cache works best with languages that have stable symbol information
# - Remove languages you don't use to save resources