Observed since 21 Oct, 11:12 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
AI-powered Language Server with intelligent diagnostics
An AI-powered Language Server that provides intelligent semantic code analysis beyond what traditional LSPs can detect. Built with modern Python tools and designed to integrate seamlessly with any LSP-compatible editor.
AI LSP focuses exclusively on semantic issues that require deep understanding:
What it doesn't do: Traditional LSP tasks like syntax errors, type errors, undefined variables, or basic formatting - your regular LSP handles those perfectly.
uv add ai-lsp
# or
pip install ai-lsp
git clone https://github.com/benomahony/ai-lsp
cd ai-lsp
uv sync
Set your AI provider API key:
# For Google AI (default)
export GOOGLE_API_KEY="your-api-key"
# Or for OpenAI
export OPENAI_API_KEY="your-openai-key"
Configure via environment variables or .env file:
AI_LSP_MODEL=google-gla:gemini-2.5-pro # Default model
DEBOUNCE_MS=1000 # Analysis delay (milliseconds)
Supported models:
google-gla:gemini-2.5-pro (default)gpt-4opydantic-aiCreate ~/.config/nvim/lua/plugins/ai-lsp.lua:
return {
{
"neovim/nvim-lspconfig",
opts = {
servers = {
["ai-lsp"] = {
mason = false,
cmd = { "ai-lsp" },
filetypes = { "python", "javascript", "typescript", "rust", "go", "lua", "java", "cpp", "c" },
},
},
},
},
}
Add to your settings.json:
{
"ai-lsp.command": ["uvx", "ai-lsp"],
"ai-lsp.filetypes": ["python", "javascript", "typescript", "rust", "go", "lua", "java", "cpp", "c"]
}
Or if you have it installed in your active environment:
{
"ai-lsp.command": ["ai-lsp"],
"ai-lsp.filetypes": ["python", "javascript", "typescript", "rust", "go", "lua", "java", "cpp", "c"]
}
Any LSP client can use AI LSP with these settings:
{
"command": ["uvx", "ai-lsp"],
"filetypes": ["python", "javascript", "typescript", "rust", "go", "lua", "java", "cpp", "c"],
"rootPatterns": [".git", "pyproject.toml", "package.json", "Cargo.toml", "go.mod"]
}
Given this Python code:
def authenticate(username, password):
if password == 'admin123': # AI LSP will flag this
print(f'User {username} authenticated') # And suggest logging
return True
else:
print('Authentication failed')
return False
AI LSP might detect:
Security Issue: Hardcoded password 'admin123'
Best Practice: Using print statements
logging.info()LSP not starting:
ai-lsp command is in PATH: which ai-lspai-lsp.log)No diagnostics appearing:
Performance issues:
DEBOUNCE_MS to reduce API callsgpt-4o-miniEnable verbose logging:
ai-lsp --log-level DEBUG --log-file debug.log
MIT License - see LICENSE for details.
Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 0.1.0 | 18 Oct 2025 | 6 |
This describes our collected data; it is not a security assessment.
Observed since 21 Oct, 11:12 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:6a2e6ce332fc40738c526703ea3f7df82bd391ddf084916bff744831666b7efc