nvim-plugin-add
Add and configure Neovim plugins in this dotfiles repo using lazy.nvim. Use when asked to install a plugin, create its config module, update lazy.nvim imports, read plugin README/docs, and add keymaps without conflicting with existing mappings under config/nvim.
Best use case
nvim-plugin-add is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Add and configure Neovim plugins in this dotfiles repo using lazy.nvim. Use when asked to install a plugin, create its config module, update lazy.nvim imports, read plugin README/docs, and add keymaps without conflicting with existing mappings under config/nvim.
Teams using nvim-plugin-add should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/nvim-plugin-add/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How nvim-plugin-add Compares
| Feature / Agent | nvim-plugin-add | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Add and configure Neovim plugins in this dotfiles repo using lazy.nvim. Use when asked to install a plugin, create its config module, update lazy.nvim imports, read plugin README/docs, and add keymaps without conflicting with existing mappings under config/nvim.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Neovim plugin add (lazy.nvim)
Use this workflow when adding a new plugin to `config/nvim`.
## Workflow
1) Inspect the existing layout
- Open `config/nvim/init.lua` to confirm the lazy.nvim `spec` import list.
- Check `config/nvim/lua/plugins/` for the naming pattern of plugin config files.
2) Read upstream docs
- Read the plugin README and docs from its repo (and any `doc/*.txt` if needed).
- Prefer the upstream “recommended” or “minimal working” configuration.
3) Create a plugin config module
- Add a new file under `config/nvim/lua/plugins/<plugin-name>.lua`.
- Return a lazy.nvim spec table (same style as other plugin files).
- Keep the module self-contained; avoid global side effects.
4) Register the module in lazy.nvim
- Add `{ import = 'plugins.<plugin-name>' }` to the `spec` list in `config/nvim/init.lua`.
- Keep the ordering consistent with existing imports unless the plugin suggests a dependency order.
5) Keymap collision check
- Before adding keymaps, search existing mappings:
- `rg -n "keymap|map\\(" config/nvim`
- Also scan for `which-key` registrations if present.
- If a recommended mapping conflicts, choose a nearby alternative under the same mnemonic prefix.
- Use `desc` for every mapping.
6) Configure defaults and options
- Wire up plugin `setup()` with upstream defaults plus any repo-specific conventions.
- Follow existing patterns (e.g., use `vim.keymap.set`, local helper functions).
- Keep options and mappings minimal; avoid speculative tweaks.
7) Validation
- Ensure the plugin file is required by lazy.nvim and no syntax errors are introduced.
- If the change impacts keymaps, mention any new keys in the response.
## Repo conventions
- Neovim config root: `config/nvim/`.
- lazy.nvim bootstrap and imports live in `config/nvim/init.lua`.
- Plugin config modules live in `config/nvim/lua/plugins/` and return a plugin spec.
- Keep edits ASCII-only unless the file already uses non-ASCII.
## Notes on keymaps
- Prefer `<leader>` mappings and keep them consistent with existing prefixes.
- Avoid overriding single-letter normal mode bindings unless the repo already does so.
- When in doubt, add a `which-key` entry matching the new mapping.Related Skills
writing-opencode-plugins
Guides development of OpenCode plugins including project structure, testing patterns, and publishing. Use when creating or modifying OpenCode plugins.
workflow-new-plugin
Guided workflow for creating a new Volon plugin — ideation, requirements, spec, plan, tasks.
update-tool-plugin
Update an existing LNAI tool plugin
pytest-plugins
Use when pytest plugin ecosystem including pytest-cov, pytest-mock, and custom plugin development.
plugin-validator
Validates SpecWeave plugin installation when EXPLICITLY requested by user. Use for checking if plugins are installed correctly, validating marketplace registration, or troubleshooting missing plugins. Only triggers on explicit requests to avoid false positives during normal workflow.
Plugin Structure
This skill should be used when the user asks to "create a plugin", "scaffold a plugin", "understand plugin structure", "organize plugin components", "set up plugin.json", "use ${CLAUDE_PLUGIN_ROOT}", "add commands/agents/skills/hooks", "configure auto-discovery", or needs guidance on plugin directory layout, manifest configuration, component organization, file naming conventions, or Claude Code plugin architecture best practices.
Plugin Settings
This skill should be used when the user asks about "plugin settings", "store plugin configuration", "user-configurable plugin", ".local.md files", "plugin state files", "read YAML frontmatter", "per-project plugin settings", or wants to make plugin behavior configurable. Documents the .claude/plugin-name.local.md pattern for storing plugin-specific configuration with YAML frontmatter and markdown content.
plugin-scaffolder
Scaffolds complete Claude Code plugin structures with all necessary directories, manifest, and documentation. Activates when user wants to create a new plugin, package features together, or prepare for marketplace distribution. Creates plugin.json, directory structure, and starter documentation. Use when user mentions "create plugin", "new plugin", "scaffold plugin", "plugin structure", or "share via marketplace".
plugin-marketplace
Plugin marketplace — add, remove, list, and search skills from GitHub repositories
plugin-builder
Build Cursor plugin scaffolds with optional Runlayer MCP integration. Use this skill when the user wants to create a new Cursor plugin, scaffold plugin skills/commands/rules/hooks, or set up MCP connector configurations. Triggers include "create a plugin", "build a plugin", "scaffold a plugin", "new plugin for [domain]", or any task involving Cursor plugin development.
plugin-best-practices
This skill should be used when the user asks to "validate a plugin", "optimize plugin", "check plugin quality", "review plugin structure", "find plugin issues", "check best practices", "analyze plugin", or mentions plugin validation, optimization, or quality assurance.
open-brush-plugin-skill
Create and modify Lua plugins for Open Brush with full API documentation access. Use when the user wants to create Open Brush plugins, work with Lua scripts for Open Brush, or asks about Open Brush scripting API, Lua functions, or plugin development.