nemo-retriever — Claude Code skill: what it does, how to install
Indexes and queries document collections using the NeMo Retriever 26.8.1 CLI. Useful for local LanceDB storage and deployed Retriever services.
npx skills add NVIDIA/skills --skill nemo-retriever -a claude-codeWhat nemo-retriever does
The skill operates the retriever CLI instead of hand-written retrieval logic. It processes PDFs, images, Office documents, HTML, plain text, audio, and video files. Document editing and web searches are out of scope.
Two workflows are supported. The local flow creates LanceDB indexes and queries them with retriever query using evidence formatting. The service flow sends requests to an external endpoint via --service-url, leaving out local database flags.
Setup requires a Python 3.12 environment in .venv and one of the nemo-retriever==26.8.1 package variants. Passing local LanceDB flags to remote service commands breaks the CLI invocation.
What it helps with
- index local PDF and Office documents into LanceDB tables
- query deployed Retriever services with page-level citations
- process audio and video files using local multimedia packages
- execute Ray batch ingestion runs on document directories
Example prompts for the agent
- Index the ./docs folder into local LanceDB and retrieve top 5 evidence snippets
- Query the service at $RETRIEVER_SERVICE_URL for the latest deployment steps
- Run retriever ingest batch on the archive directory using Ray
How to install nemo-retriever
1Skills CLI (Vercel)
npx skills add NVIDIA/skills --skill nemo-retriever -a claude-code2Manually: put the files in place
~/.claude/skills/nemo-retriever/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/nemo-retriever/
1Skills CLI (Vercel)
npx skills add NVIDIA/skills --skill nemo-retriever -a codex2Manually: put the files in place
.agents/skills/nemo-retriever/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add NVIDIA/skills --skill nemo-retriever -a cursor2Manually: put the files in place
.cursor/skills/nemo-retriever/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install NVIDIA/skills nemo-retriever2Manually: put the files in place
.github/skills/nemo-retriever/SKILL.md1Skills CLI (Vercel)
npx skills add NVIDIA/skills --skill nemo-retriever -a gemini-cli2Platform CLI
gemini skills install https://github.com/NVIDIA/skills --path skills/nemo-retrieverManually: put the files in place
.devin/skills/nemo-retriever/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add NVIDIA/skills --skill nemo-retriever -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about nemo-retriever
How to install nemo-retriever in Claude Code?
Run npx skills add NVIDIA/skills --skill nemo-retriever -a claude-code.
What files does nemo-retriever handle?
It works with PDFs, images, Office files, HTML, plain text, audio, and video collections.
What are the prerequisites for running the CLI?
You need a Python 3.12 virtual environment with nemo-retriever==26.8.1 installed. Protected endpoints require the NEMO_RETRIEVER_API_TOKEN environment variable.
Source text
SKILL.md · Apache-2.0
--- name: nemo-retriever description: Use when searching, extracting, ingesting, or querying a document collection with the NeMo Retriever 26.8.1 CLI, including local LanceDB indexes and deployed Retriever services. Use for PDFs, images, Office files, HTML, text, audio, and video; not for editing documents or web search. license: Apache-2.0 --- # NeMo Retriever Use the `retriever` CLI. Prefer it over hand-built retrieval code. ## Install only when missing Create a project-local Python environment: ```bash uv venv .venv --python 3.12 export PATH="$PWD/.venv/bin:$PATH" ``` Install the package variant required by the workflow: ```bash # Remote NIM or service client uv pip install --python .venv/bin/python "nemo-retriever==26.8.1" # Local GPU ingestion uv pip install --python .venv/bin/python "nemo-retriever[local]==26.8.1" # Local service using Hugging Face models uv pip install --python .venv/bin/python \ "nemo-retriever[service,local]==26.8.1" # Local audio or video ingestion uv pip install --python .venv/bin/python \ "nemo-retriever[local,multimedia]==26.8.1" ``` Do not clone NeMo Retriever or install from a Git URL. If `retriever` is already on `PATH`, use that installation. ## Local workflow Build a local index: ```bash retriever ingest <file-or-directory> \ --lancedb-uri lancedb --table-name nemo-retriever ``` Query it: ```bash retriever query "<question>" \ --lancedb-uri lancedb --table-name nemo-retriever \ --top-k 5 --format evidence ``` Use `retriever ingest batch` only for an explicitly requested Ray batch run. ## Service workflow Use these forms for an already deployed Retriever service: ```bash retriever ingest service <file-or-directory> \ --service-url "$RETRIEVER_SERVICE_URL" retriever query service "<question>" \ --service-url "$RETRIEVER_SERVICE_URL" \ --top-k 5 --format evidence ``` Set `NEMO_RETRIEVER_API_TOKEN` when the service requires Bearer authentication. Do not pass local LanceDB flags to the service commands. ## Rules - Use the existing index or service when one is provided; do not rebuild it. - Use `retriever ingest --help`, `retriever query --help`, or the relevant `batch` / `service` help for options not shown here. - Answer only from retrieved evidence; preserve source and page metadata when the task requests citations.
© NVIDIA · Apache-2.0 · NVIDIA/skills