Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
aiskillstore avatar

Neovim Debugging

  • 1 installs
  • 404 repo stars
  • Updated August 5, 2026
  • aiskillstore/marketplace

neovim-debugging is a Claude Code skill that systematically diagnoses Neovim and LazyVim configuration errors through hypothesis testing and headless inspection.

About

neovim-debugging is a Claude Code skill for diagnosing Neovim and LazyVim configuration problems. It forms hypotheses about a symptom (Lua errors, broken keymaps, plugins not loading, slow startup, UI issues) and tests them with headless nvim commands and file inspection before asking the user. A developer uses it when a Neovim config breaks and they want systematic root-cause analysis rather than trial and error.

  • Diagnoses Neovim/LazyVim config problems by hypothesis testing, not checklists
  • Uses headless nvim commands to gather info without user interaction
  • Ships four reference docs: flowchart, error patterns, info gathering, plugin specifics

Neovim Debugging by the numbers

  • 1 all-time installs (skills.sh)
  • Ranked #489 of 596 Debugging skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
At a glance

neovim-debugging capabilities & compatibility

Capabilities
debugging · config diagnosis · error triage
Use cases
debugging
IDEs
neovim
Pricing
Free
From the docs

What neovim-debugging says it does

Debug Neovim/LazyVim configuration issues. Use when: user reports Neovim errors, keymaps not working, plugins failing, or config problems.
SKILL.md
Your job is to diagnose configuration problems systematically—not by running through checklists, but by forming hypotheses and testing them efficiently.
SKILL.md
npx skills add https://github.com/aiskillstore/marketplace --skill neovim-debugging

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs1
repo stars404
Last updatedAugust 5, 2026
Repositoryaiskillstore/marketplace

What it does

Diagnose why Neovim/LazyVim keymaps, plugins, or startup are broken and confirm the root cause.

Who is it for?

Neovim/LazyVim users whose keymaps, plugins, or startup broke and want root-cause diagnosis

Skip if: General Linux debugging or editors other than Neovim

When should I use this skill?

user reports Neovim errors, keymaps not working, plugins failing, or config problems

What you get

The root cause of a Neovim config problem is identified and the fix is verified against the symptom.

By the numbers

  • 5-step detective debugging philosophy
  • 5 problem-type diagnostic entry points
  • 4 supporting reference docs

Files

SKILL.mdMarkdownGitHub ↗

Neovim/LazyVim Debugging Skill

You are an expert Neovim debugger. Your job is to diagnose configuration problems systematically—not by running through checklists, but by forming hypotheses and testing them efficiently.

Core Debugging Philosophy

Think Like a Detective

1. Observe symptoms → What exactly is the user experiencing? 2. Form hypotheses → What could cause this symptom? 3. Test the most likely hypothesis first → Use minimal, targeted tests 4. Narrow the scope → Binary search through possibilities 5. Confirm root cause → Verify the fix addresses the symptom

The Golden Rule

Before asking the user for more information, ask yourself: "Can I gather this programmatically using headless mode or file inspection?"

Only ask the user when you genuinely need interactive feedback (e.g., "Does the error appear when you do X?").

Diagnostic Entry Points

Classify the problem first, then follow the appropriate diagnostic path:

Problem TypePrimary SignalStart Here
Lua ErrorE5108: Error executing lua...error-patterns.md → Decode the error message
Key Not Working"When I press X, nothing happens"diagnostic-flowchart.md → Keymap diagnosis
Plugin Not LoadingFeature missing, no errorplugin-specifics.md → Check lazy loading
PerformanceSlow startup, lag, freezediagnostic-flowchart.md → Performance diagnosis
UI/VisualColors wrong, elements missingdiagnostic-flowchart.md → UI diagnosis

Quick Diagnostic Commands

Use these headless commands to gather information without user interaction:

# Check if a plugin is installed
nvim --headless -c "lua print(pcall(require, 'PLUGIN_NAME'))" -c "qa" 2>&1
# true = installed, false = not found

# Get a config value
nvim --headless -c "lua print(vim.inspect(CONFIG_PATH))" -c "qa" 2>&1

# Check if a function exists
nvim --headless -c "lua print(type(require('MODULE').FUNCTION))" -c "qa" 2>&1
# function = exists, nil = doesn't exist

# Get leader/localleader
nvim --headless -c "lua print('leader:', vim.g.mapleader, 'localleader:', vim.g.maplocalleader)" -c "qa" 2>&1

# Check LazyVim extras
cat ~/.config/nvim/lazyvim.json 2>/dev/null || echo "Not a LazyVim config"

Decision Framework

<decision_tree>
1. Can I reproduce/verify this myself?
   ├─ YES → Use headless mode or read config files directly
   └─ NO → Ask the user for specific, actionable information

2. Is the problem intermittent or consistent?
   ├─ Consistent → Focus on static config analysis
   └─ Intermittent → Consider runtime state, timing, async issues

3. Did this work before?
   ├─ YES → Look for recent changes (plugin updates, config edits)
   └─ NO → Check basic setup (installation, dependencies)

4. Is this isolated or widespread?
   ├─ Isolated (one plugin/key) → Focus on specific config
   └─ Widespread → Check core config, leader settings, plugin manager
</decision_tree>

Supporting Documents

DocumentWhen to Use
diagnostic-flowchart.mdStep-by-step diagnosis paths for each problem type
error-patterns.mdCommon error messages and their typical causes
information-gathering.mdWhat to ask users and how to ask effectively
plugin-specifics.mdPlugin-specific debugging (which-key, LSP, telescope, etc.)

Example Diagnosis Flow

<example> User says: "My localleader keymaps don't show in which-key"

Diagnostic thinking:

<analysis>
Symptom: which-key popup doesn't appear for localleader prefix

Hypotheses (ordered by likelihood):
1. localleader not triggering which-key (most common with LazyVim)
2. localleader mappings not registered
3. localleader itself not set correctly
4. which-key not installed/loaded

Test plan:
1. Check if leader (Space) shows which-key → isolates which-key vs localleader issue
2. Headless: verify localleader value
3. Headless: check which-key config for localleader trigger
</analysis>

First action: Ask user "Does pressing Space (leader) show the which-key popup?"

  • If YES → Problem is localleader-specific, check which-key trigger config
  • If NO → which-key itself is broken, different diagnosis path

</example>

Anti-Patterns to Avoid

1. Don't shotgun debug: Running every possible diagnostic command wastes time 2. Don't assume: Verify your assumptions with tests before suggesting fixes 3. Don't ignore versions: Neovim/plugin versions matter; API changes break things 4. Don't forget lazy loading: Many issues stem from plugins not being loaded when expected 5. Don't skip reproduction: Confirm you understand the exact trigger before diagnosing

Output Format

When presenting findings, use this structure:

## Diagnosis

**Symptom**: [What the user reported]
**Root Cause**: [What's actually wrong]
**Evidence**: [How you determined this]

## Solution

[Step-by-step fix]

## Prevention

[How to avoid this in the future, if applicable]

Related skills

FAQ

What Neovim setups does it cover?

It targets Neovim and LazyVim configurations, including LazyVim extras read from lazyvim.json.

Does it need me to run commands manually?

It prefers headless nvim commands and file inspection, asking you only when it genuinely needs interactive feedback.

Debuggingdevopsdocs

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.