NimPilot

An AI coding assistant for VS Code, powered by NVIDIA NIM.
Features
Chat sidebar — streaming responses, conversation history (search/pin/rename/delete/export/import), and an agentic tool-calling loop the model can use to:
- Read, create, and edit files in your workspace (
write_file and run_terminal_command always require your explicit approval before running — nothing touches disk or a shell without a click)
- Run terminal commands (builds, tests, installs, git)
- Attach an image (or paste one with Ctrl+V) — read directly by the model
- Attach a document (PDF, Word, PowerPoint, or plain text) — extracted and indexed into a local RAG index so the model can answer questions about it
- Search a RAG index built over your whole workspace (
NimPilot: Index Workspace) for relevant code context automatically
20 one-shot AI commands, available from the Command Palette (and, where it makes sense, the editor right-click menu):
| Command |
What it does |
| Generate Code |
Writes code from a natural-language description |
| Explain Code |
Structured Purpose/Flow/Complexity/Suggestions breakdown |
| Fix Code |
Finds and fixes bugs, with a diff view and one-click Apply to File |
| Refactor Code |
Improves readability/performance/naming, same diff + Apply flow |
| Generate Unit Tests |
JUnit/TestNG/Mockito/Jest/PyTest, your choice |
| Generate Documentation |
README/JavaDoc/function comments/API docs |
| Review Code |
Security, performance, best practices, bug detection |
| Generate SQL |
Schema, queries, optimization, indexes |
| Generate Regex |
From a plain-language description |
| Generate Dockerfile |
For the current project |
| Generate Kubernetes YAML |
Deployment/service manifests |
| Generate Git Commit Message |
From the current diff, with an option to fill the SCM input box |
| Explain Stack Trace |
Paste a trace, get a plain-language explanation |
| Generate REST API |
Scaffold endpoints from a description |
| Generate GraphQL API |
Schema + resolvers from a description |
| Generate Selenium Automation |
Page Object Model, TestNG/JUnit/Playwright/Appium |
| Generate API Automation |
Rest Assured or Postman |
| Generate JMeter Script |
Load-test plan from a description |
| Generate XPath / CSS Selector |
From a description or HTML snippet |
| Set API Key / Clear API Key |
Manage your NVIDIA NIM key (stored in VS Code SecretStorage, never in settings.json) |
Quick start
npm install
npm run build # bundles the extension host + webview
Press F5 in VS Code to launch an Extension Development Host with it loaded, or package it:
npx vsce package
code --install-extension nimpilot-0.1.0.vsix
Then run NimPilot: Set API Key from the Command Palette and paste your NVIDIA NIM API key — it's stored in your OS keychain via VS Code SecretStorage, never written to disk in plain text.
Getting an NVIDIA API key
- Go to build.nvidia.com and create an account using any email address.
- Verify that email address (check your inbox for the confirmation link).
- Verify your account with a mobile phone number when prompted (required before API key generation is unlocked).
- Once verified, open your account/profile menu and generate a new API key.
- Copy the key, then in VS Code run
NimPilot: Set API Key from the Command Palette and paste it in — the extension uses this key to authenticate all requests to NVIDIA NIM.
- Press Ctrl+Shift+P, type Open Chat, and select it to start using the extension.
Settings
| Setting |
Default |
Description |
aiCodingAssistant.provider |
nvidia |
Active AI provider (NVIDIA NIM is currently the only one) |
aiCodingAssistant.model |
nvidia/nemotron-3-nano-omni-30b-a3b-reasoning |
NVIDIA NIM model identifier |
aiCodingAssistant.temperature |
0.2 |
Sampling temperature |
aiCodingAssistant.maxTokens |
4096 |
Max response tokens |
aiCodingAssistant.streaming |
true |
Stream chat responses |
aiCodingAssistant.modelFallback |
true |
On a model error (rate limit/5xx/forbidden), automatically retry the prompt against the rest of the free model catalog (see src/extension/providers/freeModels.ts) instead of failing |
aiCodingAssistant.systemPrompt |
"" |
Extra system prompt appended to every feature's built-in one |
See docs/installation.md, docs/deployment.md, and docs/security-notes.md for more.
Testing
npm test
Vitest unit + integration suite covering providers, storage, prompts, context formatting, RAG, and the backend REST API.
License
MIT — see LICENSE.