Vector DB
ericrisco/rsc-harness
A skill your agent uses when operating a vector store as a data layer — choosing or migrating between Pinecone, Qdrant, Weaviate and pgvector; designing a collection or index (distance metric…
A skill your agent uses for setting up vector similarity search with pgvector for AI/ML embeddings, RAG applications, or semantic search.
$ npx skills add timescale/pg-aiguide --skill pgvector-semantic-search -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install timescale/pg-aiguide pgvector-semantic-search --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/timescale/pg-aiguide.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/pgvector-semantic-search .claude/skills/pgvector-semantic-search && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "pgvector-semantic-search" agent skill from https://github.com/timescale/pg-aiguide/tree/main/skills/pgvector-semantic-search into .claude/skills/pgvector-semantic-search/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pgvector-semantic-search", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/timescale/pg-aiguide/tree/main/skills/pgvector-semantic-searchType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add timescale/pg-aiguide --skill pgvector-semantic-search -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install timescale/pg-aiguide pgvector-semantic-search --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/timescale/pg-aiguide.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/pgvector-semantic-search .agents/skills/pgvector-semantic-search && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "pgvector-semantic-search" agent skill from https://github.com/timescale/pg-aiguide/tree/main/skills/pgvector-semantic-search into .agents/skills/pgvector-semantic-search/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pgvector-semantic-search", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add timescale/pg-aiguide --skill pgvector-semantic-search -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install timescale/pg-aiguide pgvector-semantic-search --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/timescale/pg-aiguide.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/pgvector-semantic-search .cursor/skills/pgvector-semantic-search && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "pgvector-semantic-search" agent skill from https://github.com/timescale/pg-aiguide/tree/main/skills/pgvector-semantic-search into .cursor/skills/pgvector-semantic-search/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pgvector-semantic-search", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/timescale/pg-aiguide.git --path skills/pgvector-semantic-search--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add timescale/pg-aiguide --skill pgvector-semantic-search -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install timescale/pg-aiguide pgvector-semantic-search --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/timescale/pg-aiguide.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/pgvector-semantic-search .gemini/skills/pgvector-semantic-search && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "pgvector-semantic-search" agent skill from https://github.com/timescale/pg-aiguide/tree/main/skills/pgvector-semantic-search into .gemini/skills/pgvector-semantic-search/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pgvector-semantic-search", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install timescale/pg-aiguide pgvector-semantic-searchInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add timescale/pg-aiguide --skill pgvector-semantic-search -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/timescale/pg-aiguide.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/pgvector-semantic-search .github/skills/pgvector-semantic-search && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "pgvector-semantic-search" agent skill from https://github.com/timescale/pg-aiguide/tree/main/skills/pgvector-semantic-search into .github/skills/pgvector-semantic-search/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pgvector-semantic-search", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add timescale/pg-aiguide --skill pgvector-semantic-search -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install timescale/pg-aiguide pgvector-semantic-search --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/timescale/pg-aiguide.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/pgvector-semantic-search .opencode/skills/pgvector-semantic-search && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "pgvector-semantic-search" agent skill from https://github.com/timescale/pg-aiguide/tree/main/skills/pgvector-semantic-search into .opencode/skills/pgvector-semantic-search/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pgvector-semantic-search", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
pgvector-semantic-searchA skill your agent uses for setting up vector similarity search with pgvector for AI/ML embeddings, RAG applications, or semantic search.
Pgvector Semantic Search is an agent skill from timescale/pg-aiguide. Use this skill for setting up vector similarity search with pgvector for AI/ML embeddings, RAG applications, or semantic search. Trigger when user asks to: - Store or search vector embeddings in PostgreSQL - Set up semantic search, similarity search, or nearest neighbor search - Create HNSW or IVFFlat indexes for vectors - Implement RAG (Retrieval Augmented Generation) with PostgreSQL - Optimize pgvector performance, recall, or memory usage - Use binary quantization for large vector datasets Keywords: pgvector…
Its SKILL.md is about 3.8k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: Requires PostgreSQL 15+ with the pgvector extension
It sits in AI & LLM Engineering, covering Vector databases, Embeddings and Retrieval-augmented generation. It works with pgvector, PostgreSQL and Model Context Protocol. The repository describes itself as: MCP server and Claude plugin for Postgres skills and documentation. Helps AI coding tools generate better PostgreSQL code. The licence is Apache-2.0.
Read from SKILL.md and the folder at commit b236d35. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are sql).
From the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
github.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Requires PostgreSQL 15+ with the pgvector extension
From compatibility in the SKILL.md frontmatter.
Pgvector Semantic Search loads about 3.8k tokens when it runs. Until then it costs about 211 tokens; SKILL.md has 1,365 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from timescale/pg-aiguide at commit b236d35, republished under its Apache-2.0 licence (© timescale). 1,365 words, ~3,766 tokens.
.claude/skills/pgvector-semantic-search/SKILL.md (or your agent's skills folder).Semantic search finds content by meaning rather than exact keywords. An embedding model converts text into high-dimensional vectors, where similar meanings map to nearby points. pgvector stores these vectors in PostgreSQL and uses approximate nearest neighbor (ANN) indexes to find the closest matches quickly—scaling to millions of rows without leaving the database. Store your text alongside its embedding, then query by converting your search text to a vector and returning the rows with the smallest distance.
This guide covers pgvector setup and tuning—not embedding model selection or text chunking, which significantly affect search quality. Requires pgvector 0.8.0+ for all features (halfvec, binary_quantize, iterative scan).
Use this configuration unless you have a specific reason not to.
halfvec(N) where N is your embedding dimension (must match everywhere). Examples use 1536; replace with your dimension N.<=>)m = 16, ef_construction = 64). Use halfvec_cosine_ops and query with <=>.SET hnsw.ef_search = 100 (good starting point from published benchmarks, increase for higher recall at higher latency)ORDER BY embedding <=> $1::halfvec(N) LIMIT kThis setup provides a strong speed–recall tradeoff for most text-embedding workloads.
CREATE EXTENSION IF NOT EXISTS vector;halfvec by default—store and index as halfvec for 50% smaller storage and indexes with minimal recall loss.CREATE INDEX CONCURRENTLY ...<=>): For non-normalized embeddings, use cosine. For unit-normalized embeddings, cosine and inner product yield identical rankings; default to cosine.halfvec_cosine_ops requires <=> in queries; halfvec_l2_ops requires <->; mismatched operators won't use the index.$1::halfvec(N)) to avoid implicit-cast failures in prepared statements.halfvec(N)halfvec(N)bit(N) in a generated columnvector / halfvec / bit without explicit castsbinary_quantize() on table columns inside ORDER BY; store it insteadhalfvec(1536) column requires query vectors cast as ::halfvec(1536).-- Store and index as halfvec
CREATE TABLE items (
id BIGINT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
contents TEXT NOT NULL,
embedding halfvec(1536) NOT NULL -- NOT NULL requires embeddings generated before insert, not async
);
CREATE INDEX ON items USING hnsw (embedding halfvec_cosine_ops);
-- Query: returns 10 closest items. $1 is the embedding of your search text.
SELECT id, contents FROM items ORDER BY embedding <=> $1::halfvec(1536) LIMIT 10;For other distance operators (L2, inner product, etc.), see the pgvector README.
The recommended index type. Creates a multilayer navigable graph with superior speed-recall tradeoff. Can be created on empty tables (no training step required).
CREATE INDEX ON items USING hnsw (embedding halfvec_cosine_ops);
-- With tuning parameters
CREATE INDEX ON items USING hnsw (embedding halfvec_cosine_ops) WITH (m = 16, ef_construction = 64);| Parameter | Default | Description |
|---|---|---|
m | 16 | Max connections per layer. Higher = better recall, more memory |
ef_construction | 64 | Build-time candidate list. Higher = better graph quality, slower build |
hnsw.ef_search | 40 | Query-time candidate list. Higher = better recall, slower queries. Should be ≥ LIMIT. |
ef_search tuning (rough guidelines—actual results vary by dataset):
| ef_search | Approx Recall | Relative Speed |
|---|---|---|
| 40 | lower (~95% on some benchmarks) | 1x (baseline) |
| 100 | higher | ~2x slower |
| 200 | very-high | ~4x slower |
| 400 | near-exact | ~8x slower |
-- Set search parameter for session
SET hnsw.ef_search = 100;
-- Set for single query
BEGIN;
SET LOCAL hnsw.ef_search = 100;
SELECT id, contents FROM items ORDER BY embedding <=> $1::halfvec(1536) LIMIT 10;
COMMIT;Default to HNSW. Use IVFFlat only when HNSW’s operational costs matter more than peak recall.
Choose IVFFlat if:
Avoid IVFFlat if you need:
Notes:
lists and ivfflat.probes; higher probes = better recall, slower queries.Starter config:
CREATE INDEX ON items
USING ivfflat (embedding halfvec_cosine_ops)
WITH (lists = 1000);
SET ivfflat.probes = 10;halfvec by default for storage and indexing.halfvec (m=16) (order-of-magnitude); 3072-dim is ~2×; m=32 roughly doubles HNSW link/graph overhead.halfvec doesn’t fit, use binary quantization + re-ranking.Approximate halfvec capacity at m=16, 1536-dim (assumes RAM mostly available for index caching):
| RAM | Approx max halfvec vectors |
|---|---|
| 16 GB | ~2–3M vectors |
| 32 GB | ~4–6M vectors |
| 64 GB | ~8–12M vectors |
| 128 GB | ~16–25M vectors |
For 3072-dim embeddings, divide these numbers by ~2.
For m=32, also divide capacity by ~2.
If the index cannot fit in memory at this scale, use binary quantization.
These are ranges, not guarantees. Validate by monitoring cache residency and p95/p99 latency under load.
32× memory reduction. Use with re-ranking for acceptable recall.
-- Table with generated column for binary quantization
CREATE TABLE items (
id BIGINT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
contents TEXT NOT NULL,
embedding halfvec(1536) NOT NULL,
embedding_bq bit(1536) GENERATED ALWAYS AS (binary_quantize(embedding)::bit(1536)) STORED
);
CREATE INDEX ON items USING hnsw (embedding_bq bit_hamming_ops);
-- Query with re-ranking for better recall
-- ef_search must be >= inner LIMIT to retrieve enough candidates
SET hnsw.ef_search = 800;
WITH q AS (
SELECT binary_quantize($1::halfvec(1536))::bit(1536) AS qb
)
SELECT *
FROM (
SELECT i.id, i.contents, i.embedding
FROM items i, q
ORDER BY i.embedding_bq <~> q.qb -- computes binary distance using index
LIMIT 800
) candidates
ORDER BY candidates.embedding <=> $1::halfvec(1536) -- computes halfvec distance (no index), more accurate than binary
LIMIT 10;The 80× oversampling ratio (800 candidates for 10 results) is a reasonable starting point. Binary quantization loses precision, so more candidates are needed to find true nearest neighbors during re-ranking. Increase if recall is insufficient; decrease if re-ranking latency is too high.
| Scale | Vectors | Config | Notes |
|---|---|---|---|
| Small | <100K | Defaults | Index optional but improves tail latency |
| Medium | 100K–5M | Defaults | Monitor p95 latency; most common production range |
| Large | 5M+ | ef_construction=100+ | Memory residency critical |
| Very Large | 10M+ | Binary quantization + re-ranking | Add RAM or partition first if possible |
Tune ef_search first for recall; only increase m if recall plateaus and memory allows. Under concurrency, tail latency spikes when the index doesn't fit in memory. Binary quantization is an escape hatch—prefer adding RAM or partitioning first.
Filtered vector search requires care. Depending on filter selectivity and query shape, filters can cause early termination (too few rows, missing results) or increase work (latency).
By default, HNSW may stop early when a WHERE clause is present, which can lead to fewer results than expected. Iterative scan allows HNSW to continue searching until enough filtered rows are found.
Enable iterative scan when filters materially reduce the result set.
-- Enable iterative scans for filtered queries
SET hnsw.iterative_scan = relaxed_order;
SELECT id, contents
FROM items
WHERE category_id = 123
ORDER BY embedding <=> $1::halfvec(1536)
LIMIT 10;If results are still sparse, increase the scan budget:
SET hnsw.max_scan_tuples = 50000;Trade-off: increasing hnsw.max_scan_tuples improves recall but can significantly increase latency.
When iterative scan is not needed:
Highly selective filters (under ~10k rows) Use a B-tree index on the filter column so Postgres can prefilter before ANN.
CREATE INDEX ON items (category_id);Low-cardinality filters (few distinct values) Use partial HNSW indexes per filter value.
CREATE INDEX ON items
USING hnsw (embedding halfvec_cosine_ops)
WHERE category_id = 11;Many filter values or large datasets Partition by the filter key to keep each ANN index small.
CREATE TABLE items (
embedding halfvec(1536),
category_id int
) PARTITION BY LIST (category_id);For large datasets with label-based filters, pgvectorscale's StreamingDiskANN index supports filtered indexes on smallint[] columns. Labels are indexed alongside vectors, enabling efficient filtered search without the accuracy tradeoffs of HNSW post-filtering. See the pgvectorscale documentation for setup details.
-- COPY is fastest; binary format is faster but requires proper encoding
-- Text format: '[0.1, 0.2, ...]'
COPY items (contents, embedding) FROM STDIN;
-- Binary format (if your client supports it):
COPY items (contents, embedding) FROM STDIN WITH (FORMAT BINARY);
-- Add indexes AFTER loading
SET maintenance_work_mem = '4GB';
SET max_parallel_maintenance_workers = 7;
CREATE INDEX ON items USING hnsw (embedding halfvec_cosine_ops);-- Check index size
SELECT pg_size_pretty(pg_relation_size('items_embedding_idx'));
-- Debug query performance
EXPLAIN (ANALYZE, BUFFERS) SELECT id, contents FROM items ORDER BY embedding <=> $1::halfvec(1536) LIMIT 10;
-- Monitor index build progress
SELECT phase, round(100.0 * blocks_done / nullif(blocks_total, 0), 1) AS "%"
FROM pg_stat_progress_create_index;
-- Compare approximate vs exact recall
BEGIN;
SET LOCAL enable_indexscan = off; -- Force exact search
SELECT id, contents FROM items ORDER BY embedding <=> $1::halfvec(1536) LIMIT 10;
COMMIT;
-- Force index use for debugging
BEGIN;
SET LOCAL enable_seqscan = off;
SELECT id, contents FROM items ORDER BY embedding <=> $1::halfvec(1536) LIMIT 10;
COMMIT;| Symptom | Likely Cause | Fix |
|---|---|---|
| Query does not use ANN index | Missing ORDER BY + LIMIT, operator mismatch, or implicit casts | Use ORDER BY with a distance operator that matches the index ops class; explicitly cast query vectors |
| Fewer results than expected (filtered query) | HNSW stops early due to filter | Enable iterative scan; increase hnsw.max_scan_tuples; or prefilter (B-tree), use partial indexes, or partition |
| Fewer results than expected (unfiltered query) | ANN recall too low | Increase hnsw.ef_search |
| High latency with low CPU usage | HNSW index not resident in memory | Use halfvec, reduce m/ef_construction, add RAM, partition, or use binary quantization |
| Slow index builds | Insufficient build memory or parallelism | Increase maintenance_work_mem and max_parallel_maintenance_workers; build after bulk load |
| Out-of-memory errors | Index too large for available RAM | Use halfvec, reduce index parameters, or switch to binary quantization with re-ranking |
| Zero or missing results | NULL or zero vectors | Avoid NULL embeddings; do not use zero vectors with cosine distance |
© timescale, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/pgvector-semantic-search of timescale/pg-aiguide.
Open the folder on GitHubat commit b236d35
We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in timescale/pg-aiguide, which our catalogue first saw on October 7, 2026.
Pgvector Semantic Search next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Pgvector Semantic Search this skilltimescale/pg-aiguide | 1.9k | 1 repos | ~3.8k | Automated safety check: Pass | Apache-2.0 | |
| Vector DBericrisco/rsc-harness | 156 | — | ~2.8k | Automated safety check: Pass | MIT | |
| RAG Implementationwshobson/agents | 40k | 9 repos | ~1.1k | Automated safety check: Pass | MIT | |
| Searching DocumentsGAIK-project/gaik-toolkit | 100 | — | ~4.2k | Automated safety check: Pass | MIT | |
| Hunt RAG Vectorelementalsouls/Claude-BugHunter | 4.8k | — | ~2.6k | Automated safety check: Pass | MIT | |
| RAG ArchitectFerroxLabs/wayland | 608 | — | ~4.2k | Automated safety check: Pass | Apache-2.0 |
ericrisco/rsc-harness
A skill your agent uses when operating a vector store as a data layer — choosing or migrating between Pinecone, Qdrant, Weaviate and pgvector; designing a collection or index (distance metric…
wshobson/agents
Build retrieval-augmented generation systems: pick a vector database and embedding model, choose retrieval and reranking strategies, and start from a LangGraph pipeline.
GAIK-project/gaik-toolkit
Builds and debugs retrieval with the gaik toolkit — PgVectorStore, Ranker, FinnishTextProcessor, RelevanceGate — as hybrid search: pgvector similarity plus Postgres full-text, fused by rank, and the…
elementalsouls/Claude-BugHunter
Hunt vector-store / embedding-layer weaknesses in RAG pipelines (OWASP LLM08 Vector and Embedding Weaknesses) — persistent corpus poisoning that survives across sessions and users (distinct from…
FerroxLabs/wayland
RAG system design covering document chunking strategies, embedding model selection, vector database selection (Pinecone, Weaviate, Chroma, pgvector), retrieval strategies (hybrid search…
Jeffallan/claude-skills
Designs retrieval-augmented generation systems: document chunking, embeddings, vector store setup, hybrid search, reranking and retrieval evaluation, with checks at each step.
timescale/pg-aiguide
A skill your agent uses to analyze an existing PostgreSQL database and identify which tables should be converted to Timescale/TimescaleDB hypertables.
timescale/pg-aiguide
Explore an existing PostgreSQL database before answering questions about its data or writing SQL.
timescale/pg-aiguide
A skill your agent uses to migrate identified PostgreSQL tables to Timescale/TimescaleDB hypertables with optimal configuration and validation.
timescale/pg-aiguide
A skill your agent uses for general PostgreSQL table design.
timescale/pg-aiguide
A skill your agent uses to implement hybrid search combining BM25 keyword search with semantic vector search using Reciprocal Rank Fusion (RRF).
timescale/pg-aiguide
A skill your agent uses when creating database schemas or tables for Timescale, TimescaleDB, TigerData, or Tiger Cloud, especially for time-series, IoT, metrics, events, or log data.
Works with
Categories
A skill your agent uses for setting up vector similarity search with pgvector for AI/ML embeddings, RAG applications, or semantic search. Pgvector Semantic Search is an agent skill from timescale/pg-aiguide. Use this skill for setting up vector similarity search with pgvector for AI/ML embeddings, RAG applications, or semantic search.
Pgvector Semantic Search fits situations like: setting up vector similarity search with pgvector for AI/ML embeddings; RAG applications; semantic search; user asks to: - Store.
Run `npx skills add timescale/pg-aiguide --skill pgvector-semantic-search -a claude-code`. Or copy the skill folder (skills/pgvector-semantic-search in timescale/pg-aiguide) into .claude/skills/pgvector-semantic-search in your project. Claude Code loads it when a task matches its description.
Run `npx skills add timescale/pg-aiguide --skill pgvector-semantic-search -a codex`. Or copy the skill folder (skills/pgvector-semantic-search in timescale/pg-aiguide) into .agents/skills/pgvector-semantic-search in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add timescale/pg-aiguide --skill pgvector-semantic-search -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/pgvector-semantic-search, .gemini/skills/pgvector-semantic-search, .github/skills/pgvector-semantic-search and .opencode/skills/pgvector-semantic-search in your project.
SKILL.md names no scripts, command-line tools or credentials: Pgvector Semantic Search is instructions for the agent only. Compatibility (from SKILL.md): Requires PostgreSQL 15+ with the pgvector extension.
SKILL.md names 1 domain. As links in the text: github.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Pgvector Semantic Search is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.8k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Pgvector Semantic Search: Vector DB (ericrisco/rsc-harness, 156 stars), RAG Implementation (wshobson/agents, 40k stars), Searching Documents (GAIK-project/gaik-toolkit, 100 stars) and Hunt RAG Vector (elementalsouls/Claude-BugHunter, 4.8k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
timescale (a GitHub organization) maintains it in timescale/pg-aiguide, which has 1,857 GitHub stars. The repository holds 9 skills in this directory. The repository was last updated on October 1, 2026.
Source: timescale/pg-aiguide on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.