# upstash-vector-db-skills

This skill walks the agent through Upstash Vector: index setup, document upserts, semantic search and namespaces. Useful when you build vector search on Vercel.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 366 installs · ★ 23
- Author: gocallum
- License: not stated · policy=link-only · description only; the file stays with the author
- Source: https://github.com/gocallum/nextjs16-agent-skills/tree/HEAD/skills/upstash-vector-db-skills/SKILL.md
- Updated: 2026-01-21
- HTML: https://affpapa.org/en/nevibecode/skills/upstash-vector-db-skills

## What it does

The skill covers Upstash Vector through the `@upstash/vector` SDK. Your agent gets working snippets: creating an `Index` client, upserting single documents and batches, running `query` with `topK` and metadata. Text is embedded automatically when an embedding model is set on the index.

Namespaces split one index into isolated subsets, which fits multi-tenant apps. The file shows `index.namespace("blog")`, `listNamespaces`, `deleteNamespace`, plus `reset` and `delete` for clearing vectors. A separate section covers RAG: pull top-k documents and hand them to the LLM alongside the user question.

You need `UPSTASH_VECTOR_REST_URL` and `UPSTASH_VECTOR_REST_TOKEN` in `.env` before anything runs. The index itself is created in the Upstash console, where you also pick the embedding model; the skill favours MixBread AI, which requires its own API key. Upstash is eventually consistent, so a document you just upserted may not show up in the next query — worth knowing if you plan to read back immediately after writing.

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add gocallum/nextjs16-agent-skills --skill upstash-vector-db-skills -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/upstash-vector-db-skills/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/upstash-vector-db-skills/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add gocallum/nextjs16-agent-skills --skill upstash-vector-db-skills -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/upstash-vector-db-skills/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add gocallum/nextjs16-agent-skills --skill upstash-vector-db-skills -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/upstash-vector-db-skills/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install gocallum/nextjs16-agent-skills upstash-vector-db-skills
```

2. **Manually: put the files in place**
- File: `.github/skills/upstash-vector-db-skills/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add gocallum/nextjs16-agent-skills --skill upstash-vector-db-skills -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/gocallum/nextjs16-agent-skills --path skills/upstash-vector-db-skills
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/upstash-vector-db-skills/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add gocallum/nextjs16-agent-skills --skill upstash-vector-db-skills -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/gocallum/nextjs16-agent-skills/tree/HEAD/skills/upstash-vector-db-skills/SKILL.md

## When to use it
- create an Upstash vector index and wire it into a project
- load documents into the index in batches
- run semantic search that returns metadata
- isolate each tenant's vectors with namespaces
- build a RAG flow from retrieval to LLM call

## Example prompts
- Set up Upstash Vector in this project: create the client and a search function
- Add batch document indexing, 100 per batch
- Query the tenant-123 namespace with topK 5 and metadata

## Similar
- [upstash-vector-js](https://affpapa.org/en/nevibecode/skills/upstash-vector-js.md) — skill · 1300 installs
- [AgentDB Vector Search](https://affpapa.org/en/nevibecode/skills/agentdb-vector-search.md) — skill · 1100 installs
- [upstash-search-js](https://affpapa.org/en/nevibecode/skills/upstash-search-js.md) — skill · 1200 installs
- [qdrant-vector-search](https://affpapa.org/en/nevibecode/skills/qdrant-vector-search.md) — skill · 969 installs
- [surrealdb-vector](https://affpapa.org/en/nevibecode/skills/surrealdb-vector.md) — skill · 524 installs
- [neo4j-vector-index-skill](https://affpapa.org/en/nevibecode/skills/neo4j-vector-index-skill.md) — skill · 905 installs

From the same set: [gocallum/nextjs16-agent-skills](https://affpapa.org/en/nevibecode/by/gocallum/nextjs16-agent-skills.md) — 3 cards

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
