This skill should be used when the user asks to "lint Nushell code", "use nu-lint", "set up Nushell LSP", "configure nu --lsp", "use nu --mcp", "test Nushell scripts", "generate documentation", "format Nushell code", "debug Nushell", or mentions LSP, MCP server, linting, testing, debugging, or IDE integration for Nushell.
View on GitHubdanielbodnar/nushell-dev
nushell-dev
February 1, 2026
Select agents to install to:
npx add-skill https://github.com/danielbodnar/nushell-dev/blob/main/plugins/nushell-dev/skills/nushell-tooling/SKILL.md -a claude-code --skill nushell-toolingInstallation paths:
.claude/skills/nushell-tooling/# Nushell Tooling & Developer Experience
Guide for Nushell development tooling including LSP, MCP server, linting, testing, and documentation generation. Covers IDE integration, debugging, and workflow automation.
## Language Server Protocol (LSP)
### Starting the LSP
```nushell
# Start LSP server
nu --lsp
# The LSP provides:
# - Code completion
# - Hover information
# - Go to definition
# - Diagnostics (errors/warnings)
# - Document symbols
```
### IDE Configuration
#### VS Code
Install "Nushell" extension, then configure:
```json
// settings.json
{
"nushell.server.path": "nu",
"nushell.server.args": ["--lsp"],
"nushell.config.path": "~/.config/nushell/config.nu",
"nushell.env.path": "~/.config/nushell/env.nu"
}
```
#### Neovim (nvim-lspconfig)
```lua
-- init.lua
require('lspconfig').nushell.setup{
cmd = { "nu", "--lsp" },
filetypes = { "nu" },
settings = {}
}
```
#### Helix
```toml
# languages.toml
[[language]]
name = "nu"
language-servers = ["nu"]
[language-server.nu]
command = "nu"
args = ["--lsp"]
```
#### Zed
```json
// settings.json
{
"languages": {
"Nushell": {
"language_servers": ["nu-lsp"]
}
},
"lsp": {
"nu-lsp": {
"binary": { "path": "nu", "arguments": ["--lsp"] }
}
}
}
```
### LSP Features
| Feature | Description |
|---------|-------------|
| Completion | Command names, flags, variables |
| Hover | Type info, documentation |
| Diagnostics | Syntax errors, type mismatches |
| Go to Definition | Jump to command/variable definition |
| Document Symbols | Outline of definitions in file |
| Signature Help | Parameter hints while typing |
## MCP Server (Model Context Protocol)
### Starting MCP Server
```nushell
# Start MCP server for Claude Code integration
nu --mcp
# Available tools:
# - list_commands: List all Nushell commands
# - command_help: Get detailed help for a command
# - evaluate: Execute Nushell code and return results
```
###