MCPInstall

ai-rag

Designs RAG retrieval for LLM grounding: chunking, BM25+vector hybrid, reranking, GraphRAG. Use when adding embeddings to SQLite FTS5 search or running held-out retrieval eval.

Installs
184
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/vasilyu1983/ai-agents-public --skill ai-rag
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads ai-rag automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

RAG & Retrieval Engineering

Operating posture

  • Choose the retrieval mode before tuning chunk size. A vector index is not the default answer to every knowledge problem.
  • Separate retrieval quality from answer quality and evaluate both.
  • Treat retrieved text, tool responses, and MCP resources as untrusted input.
  • Prefer primary sources for vendor or framework recommendations; volatile facts must be verified live.
  • Treat OpenTelemetry GenAI semantic conventions as useful but still evolving.
  • Context budgets: measure chunks with the production tokenizer and reserve space for instructions, evidence, and output; model releases may share a tokenizer, but that does not establish the same retrieval-quality budget.
  • Managed retrieval is a real option: provider server-side web-search tools and hosted file-search are API-native retrieval surfaces — evaluate them before building a self-hosted RAG stack. Tool identifiers are versioned and change; look up the current tool name and version in the provider's API docs at use time. See references/managed-retrieval-vs-self-hosted.md.
  • Retrieval may not be the right answer at all: if the corpus is small and stable, CAG / long-context / fine-tune may be cheaper and more reliable than RAG. Run the decision rubric in ../ai-context-layer/references/retrieve-vs-preload-vs-finetune.md before building a RAG pipeline.

Scope note: For generation-prompt structure and output contracts after retrieval, use ai-prompt-engineering.

Implementation note: This skill owns retrieval theory and evaluation concepts. For vector-brain builds with paste-ready SQL, pgvector assets, manifests, ingest scripts, and agent retrieval tool contracts, use ai-vector-brain.

Workflow

  1. Pin the authority source and freshness budget first. Before touching a chunker or embedder, decide whether truth lives in documents, live tools, or a structured store, and how stale an answer is allowed to be. This decision, not chunk size, determines the architecture.
  2. Run the retrieval mode decision (see Retrieval Choice Framework below); use system design to record the chosen mode and alternatives against freshness, traceability, and latency.
  3. Write the corpus contract before indexing: use the metadata schema and index configuration for tenant/ACL scope, source, freshness, and deletion propagation. For ingestion, load basic, code, or long-document chunking for the actual corpus shape.
  4. Build a lexical baseline and golden eval before adding infrastructure. Use golden retrieval cases and scripts/retrieval_eval.py to measure recall@k, MRR, and nDCG. scripts/exact_search_baseline.py is exhaustive vector search for checking ANN loss; its hash embedder is a lexical smoke fixture, not a learned embedding benchmark.
  5. Route retrieval legs and pick the post-retrieval mode. Legs: semantic, lexical (BM25 plus exact match, so document, clause and ticket IDs hit by string), relational (graph traversal), structured (registry/SQL for "current version / owner / who approved / in force"). Output modes: return cited evidence (dedup + rerank), compute a result (aggregates, temporal predicates), or synthesise an answer. Default for compliance/regulated corpora is evidence plus a citation-support check, with synthesis left to the calling agent; deviate only when the consumer cannot reason over evidence, and then add a citation-support gate. Detail, including the lexical-only FTS5/BM25 upgrade path: retrieval-choice-framework.md.
  6. Add one layer for the measured failure. Start from retrieval; load hybrid search for lexical/semantic misses, reranking for ranking misses, or query rewriting for query mismatch. Use the template index only for another selected mode.
  7. Keep retrieval and answer eval as separate gates. Use context packing and grounding to preserve evidence IDs, then answer evaluation to check faithfulness and abstention. Citation-ID checks prove target existence; they cannot prove that a claim follows from the cited text.
  8. Instrument before you scale: evidence IDs, retrieval-mode traces, and confidence scores must exist end to end so a bad answer can be traced back to a specific retrieval decision (see observability-tracing-contract.md).
  9. Treat the eval set as a regression gate, not a one-time report. Re-run it before every chunker, embedder, index, or reranker change, and before any vendor swap (embedding model, reranker, vector DB) — silent regressions are the most common way "working" RAG systems degrade.

Quick Reference

NeedRecommended pathUse whenAvoid when
Small corpus fits in contextLong-context prompt or lightweight searchLow update rate, low audit burdenCorpus is large, fast-changing, or citation-critical
Provider-managed retrievalProvider web-search server tool (look up the current versioned tool ID) or hosted file searchFresh web data with citations, fast start, no infra to operateYou need residency controls, custom ranking internals, or corpus isolation beyond provider defaults
Provider-managed file/doc retrievalOpenAI file-search (Responses API)Standard docs/Q&A, limited infra appetiteYou need custom ranking, strict residency controls, or deep retrieval tuning
Provider-managed doc retrieval on AWSAWS Bedrock Knowledge BasesAWS-native, want managed ingestion + embedding + retrieval with IAM/residency controlsYou need cross-cloud portability or custom ranking internals → references/aws-bedrock-knowledge-bases.md
Source of truth is tools/APIsTool-first or MCP retrievalData lives in SQL, CRM, ticketing, SaaS APIs, or internal toolsYou actually need semantic retrieval over large prose corpora
Website or research ingestionCrawl/extract first, then indexThe source starts as websites, reports, or broad web researchYou only need one-off browsing instead of a maintained retrieval system
Whole-document or thematic questionsRAPTOR-style summary tree (recursive cluster + summarise, retrieve across levels)Answers need synthesis across a long doc or many sections, no entity graph existsQuestions are passage-level lookups, or the corpus churns faster than the tree can be rebuilt → references/retrieval-patterns.md §6
Exact joins or aggregationsSQL/graph retrievalQuestions need filters, joins, counts, or relationship traversalNatural-language corpus lookup is the main problem
Standard knowledge retrievalHybrid search + rerankMixed lexical + semantic queries, high recall, controllable latencyA simpler hosted or tool-first option already solves the problem
Generated repo/context hub corpusGraph-bounded hybrid (graph scopes, vector recalls, rerank)A compiled multi-repo/context hub with an existing knowledge/code graphThe corpus has no graph, or simple semantic lookup already passes eval
High-precision retrievalLate interaction / multivector retrievalNear-duplicate docs, subtle wording differences, PDF pages, multilingual precisionLatency budget is tight and BM25+dense+reranking is already sufficient
PDFs, tables, diagramsMultimodal document retrievalOCR loses structure or layout meaning mattersPlain text extraction is already high quality
Production readiness proofGolden eval + exact baseline + tracesYou need to prove quality, not just describe architectureOne-off exploratory research with no durable corpus

Retrieval Choice Framework

Need external knowledge?
  ├─ No -> Use direct prompting / standard prompt engineering
  └─ Yes
      ├─ Data already lives behind tools, APIs, SQL, or SaaS?
      │   └─ Start with tool-first or MCP retrieval
      │
      ├─ Corpus fits comfortably in model context and changes slowly?
      │   └─ Try long-context or hosted file search before custom indexing
      │
      ├─ Need joins, counts, or relationship traversal?
      │   └─ Use SQL, graph, or graph+vector hybrid retrieval
      │       (paradigm choice: see ../software-database-design/SKILL.md#technology-selection)
      │
      ├─ Need fresh web data or provider-managed file search without self-hosting?
      │   └─ Evaluate managed retrieval first: provider web-search server tools,
      │      hosted file-search, or other provider-native tools before building a custom stack
      │      (see references/managed-retrieval-vs-self-hosted.md for decision criteria)
      │
      ├─ Need retrieval over prose or mixed documents?
      │   └─ Use sparse+dense hybrid as the default baseline
      │
      ├─ Retrieval misses subtle matches or page-level structure?
      │   └─ Add late interaction, multivector, or multimodal retrieval
      │
      ├─ Precision still poor?
      │   └─ Add reranking, filters, query rewriting, and stronger evals
      │
      └─ Same queries keep re-running synthesis? Need a reviewable knowledge asset?
          └─ Switch from retrieval to knowledge compilation (P7 in ai-context-layer)
              Route to ai-context-layer/references/knowledge-compilation-and-wiki-pattern.md
              Blocks A15 (RAG re-run per turn instead of compiled knowledge)

Core Concepts

  • Authority source: define whether truth comes from retrieved documents, live tools, structured databases, or a hybrid of them.
  • ACL invariant (this skill owns it): enforce the caller's ACL/tenant scope at candidate generation — before fusion, before the reranker, and before any cache. Never filter after the reranker or after generation: a post-reranker filter still sends unauthorized text through the reranker, the response cache, and any third-party reranker API, and it silently collapses recall because top-k was chosen without the scope in mind. Every retrieval pipeline diagram, SQL example, and checklist in this skill and in ai-vector-brain must show the ACL filter at or before candidate generation.
  • Trust boundary: retrieved chunks, uploaded files, MCP resources, tool results, and web pages are untrusted until validated.
  • Freshness model: set staleness budget, invalidation triggers, and deletion propagation rules.
  • Generated-context corpus: a compiled multi-repo/context hub is a valid corpus; graph-bounded build path is ../ai-vector-brain/references/dev-context-hub-vector-recipe.md.
  • Evidence contract: return stable evidence IDs, source metadata, and enough context for later citation verification.
  • Two eval planes: retrieval relevance and answer faithfulness are separate systems and must be measured separately.

When NOT to Use This Skill

NeedRoute to
Product or site search for end users (engine choice, facets, autocomplete, merchandising, reindexing, search analytics)../software-search/SKILL.md
Personal note collection where an LLM-maintained INDEX.md passes retrieval eval../docs-notes-retrieval/SKILL.md
Paste-ready SQL, DDL, pgvector indexes, or backend loader scripts../ai-vector-brain/SKILL.md
Building a repo/docs/compliance vector brain end to end../ai-vector-brain/SKILL.md
App context architecture, memory lifecycle, and grounding boundaries../ai-context-layer/SKILL.md
Agent topology and tool orchestration../ai-agents/SKILL.md
Bot UX, conversation flows, and escalation../ai-bot-builder/SKILL.md
On-device iOS retrieval-stitch composer (Apple Foundation Models, @Generable, retrieval over local chunks with no-cloud guarantee)../software-ios-ai-engine/SKILL.md
End-to-end natural conversational iOS surface composed with this skill + ai-context-layer + ai-vector-brain, Path A (Foundation Models) and Path B (vector-DB-only)../software-ios-ai-engine/references/composition-with-rag-context-vector.md
Cross-platform natural conversation (iOS / Android / web / Telegram-Discord-WhatsApp-Slack bots / voice / backend) with or without on-device models../ai-context-layer/references/conversational-surfaces-cross-platform.md

Retrieval Error Localization Gate

Before changing chunking, embeddings, reranking, or the generator, label failures as corpus absence, ingest loss, candidate miss, ranking miss, context packing loss, citation mismatch, or answer-generation error. Run the generator once with oracle evidence and run retrieval against gold evidence IDs. If oracle context still fails, fix the answer contract or model path; if gold evidence never enters the candidate set, fix ingestion or retrieval. Tune only the stage that owns the measured loss and retain the previous stage as the control.

Known Traps

  • tuning chunk size, embedder, or reranker before deciding whether retrieval is even the right architecture
  • reusing chunk-size or token-budget heuristics measured on a different model without re-measuring
  • assuming iterative/agentic multi-hop retrieval improves every query distribution; compare against the fixed retrieval baseline on the same multi-hop cases before adding loop overhead
  • shipping vector/full-text migrations before verifying the target database supports the required extensions, text-search configs, generated columns, and index operators
  • mixing DDL, retrieval-function changes, and large content seeds in one migration so a search-feature failure blocks safe corpus rollout
  • upgrading a small passing lexical corpus to embeddings or search infrastructure just because it is on the long-term roadmap
  • reindexing synthesized reports or summaries as if they were authoritative primary evidence
  • picking an embedding or reranker vendor purely off a leaderboard snapshot without checking license terms (many open-weight rerankers ship non-commercial licenses) and ownership stability (reranker/embedding vendors are consolidating via acquisition; confirm the model's roadmap and support commitment survive a vendor change before building reindex-heavy dependencies on it)
  • treating retrieval recall problems and answer-faithfulness problems as one metric
  • relying on hosted retrieval defaults while assuming ACL, residency, freshness, and deletion semantics are handled
  • filtering ACL/tenant scope after the reranker or after generation instead of at candidate generation (pre-fusion) — see the ACL invariant in Core Concepts
  • mixing tool outputs, crawled pages, uploaded files, and MCP resources without normalizing provenance and trust boundaries

Common Anti-Patterns

See references/quick-start-guide.md for detailed root-cause analysis of each anti-pattern below.

  • vector database first, source-of-truth model later (A2 in ../ai-context-layer/references/anti-patterns-catalog.md)
  • agentic retrieval loops for straightforward lookup tasks
  • no freshness or invalidation model for mutable corpora
  • citation formatting without evidence-ID verification (A13 — provenance as optional metadata)
  • cross-tenant or cross-sensitivity indexing with retrieval-time filtering bolted on later (A10)
  • RAG re-run per turn instead of compiled knowledge (A15) — fix: switch to knowledge compilation (P7 in ../ai-context-layer/references/knowledge-compilation-and-wiki-pattern.md)

Vendor Recommendation Protocol

When users ask for "best" tools, models, or frameworks:

  1. Read data/sources.json and start from sources marked add_as_web_search: true.
  2. Verify claims against current primary docs, release notes, or official benchmarks.
  3. Prefer durable guidance: retrieval mode choice, operational tradeoffs, integration constraints, evaluation and rollback plan.
  4. If live browsing is unavailable, state that rankings, prices, and benchmark claims are unverified.

Research & Ingestion Pipelines

See references/research-and-ingestion-patterns.md for crawl/extract (Firecrawl-style), research loops (GPT Researcher-style), recurring data pipelines (dlt-style), and CLI evaluation workflows (simonw/llm-style). Core rule: separate crawl/extract from rank/retrieve, keep raw capture and chunks as distinct artifacts.

Scripts

check_sources.py — validate sources.json · retrieval_eval.py — recall@k/MRR/nDCG · check_citation_support.py — evidence-ID verification · generate_synthetic_rag_testset.py — testset scaffolds · late_interaction_eval.py — ColBERT/ColPali offline eval (no inference runner) · exact_search_baseline.py — exact cosine/dot baseline · hybrid_rrf_demo.py — BM25 (k1/b) + vector + RRF smoke test

Navigation

References (this skill)

Architecture & choice: retrieval-choice-framework.md · managed-retrieval-vs-self-hosted.md · pipeline-architecture.md · aws-bedrock-knowledge-bases.md

Corpus & chunking: chunking-strategies.md · chunking-patterns.md · index-selection-guide.md · embedding-model-guide.md · research-and-ingestion-patterns.md · pdf-heavy-retrieval-playbook.md

Retrieval patterns: retrieval-patterns.md · vector-search-patterns.md · hybrid-fusion-patterns.md · bm25-tuning.md · graph-rag-patterns.md · contextual-retrieval-guide.md · advanced-rag-patterns.md · agentic-rag-patterns.md

Ranking & query: ranking-pipeline-guide.md · query-rewriting-patterns.md · backend-comparison-fixtures.md

Grounding & eval: grounding-checklists.md · confidence-scoring.md · abstention-recipe.md · rag-evaluation-guide.md

Ops & debugging: observability-tracing-contract.md · retrieval-debugging-runbook.md · rag-troubleshooting.md · rag-caching-patterns.md · multilingual-domain-patterns.md · security-red-team-cases.md

Product-search eval, learning to rank, click models, and search SLOs live in software-search: search-evaluation-guide.md (nDCG/MRR judged sets, reusable for retrieval eval) · learning-to-rank-pipeline.md · click-models-and-bias-correction.md · user-feedback-learning.md · distributed-search-slos.md · search-debugging.md

Onboarding: quick-start-guide.md - workflow, full template index, detailed anti-patterns · wiki-grounded-retrieval.md

Templates (this skill)

Eval data: backend comparison template · golden retrieval predictions example · security red-team cases · RAG testset · search testset · search evaluation template

Ranking: ranking pipeline · reranker configuration

Retrieval variants: graph + vector · multimodal document · multivector · tool-first

Search index configs: BM25 · HNSW · hybrid search · IVF

Cross-Skill References

  • ../ai-context-layer/references/anti-patterns-catalog.md - A2, A10, A13, A15 anti-patterns referenced throughout this skill
  • ../ai-context-layer/references/retrieve-vs-preload-vs-finetune.md - Decision rubric: RAG vs long-context vs fine-tune
  • ../ai-context-layer/references/knowledge-compilation-and-wiki-pattern.md - P7 pattern for compiled knowledge (A15 fix)
  • ../ai-vector-brain/references/dev-context-hub-vector-recipe.md - Graph-bounded build path for generated-context corpora
  • ../software-ios-ai-engine/references/composition-with-rag-context-vector.md - iOS conversational RAG composition

External Sources

  • data/sources.json - Primary-source catalog for live verification

Related Skills

Gate before invoking: each foundation has a When to Apply / When to Skip section.

  • ai-evals - LLM-judge bias control and reproducibility for faithfulness/answer evals
  • ai-prompt-engineering - Retrieval-grounded prompt contracts and structured outputs
  • ai-agents - Agent orchestration and tool workflows
  • ai-mlops - Deployment, monitoring, and governance
  • ai-llm-inference - Latency, batching, caching, and cost controls
  • docs-notes-retrieval - Local note-vault and notebook-export packaging for retrieval
  • foundations-information-theory - Entropy, mutual information, and KL divergence for chunk scoring, MMR diversity, and drift detection

Learnings Loop

When prior decisions or pitfalls are relevant, consult learnings.consolidated.md if present; use learnings.md only for needed history or as the available fallback. Otherwise skip both. After applying it, append one dated bullet to learnings.md via agents-skills-feedback-loop/scripts/append_learning.py. Do not modify SKILL.md itself.

FAQ

What does the ai-rag skill do?

Designs RAG retrieval for LLM grounding: chunking, BM25+vector hybrid, reranking, GraphRAG. Use when adding embeddings to SQLite FTS5 search or running held-out retrieval eval.

How do I install ai-rag?

Run npx skills add https://github.com/vasilyu1983/ai-agents-public --skill ai-rag in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/ai-rag/ (personal) or .claude/skills/ai-rag/ (project).

Which AI agents can use ai-rag?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is ai-rag safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains ai-rag?

It is published by vasilyu1983 in vasilyu1983/ai-agents-public. It has 184 recorded installs.

More from vasilyu1983/ai-agents-public

View all →

software-architecture-design

vasilyu1983/ai-agents-public

Designs runtime topology in a chosen solution. Use when choosing monolith vs services, cells, consistency, ADRs. Not for cross-system design (software-solution-architecture).

product-management

vasilyu1983/ai-agents-public

Guides founder-PM discovery, roadmaps, prioritization, and PMF measurement. Use when planning product strategy, metrics, or roadmaps.

AI & Agents914 installs

document-xlsx

vasilyu1983/ai-agents-public

Builds Excel charts, pivots, validation, exports, Office Scripts/Graph automation, and workbook audits. Use when automating workbooks; for plain edits prefer official xlsx skill.

Data & Databases875 installs

software-ui-ux-design

vasilyu1983/ai-agents-public

Designs and audits UI/UX systems with usability and accessibility requirements. Use when shaping flows, design systems, interaction patterns, or WCAG-aware product behavior.

Frontend & Design731 installs

document-pdf

vasilyu1983/ai-agents-public

Handles PDF/UA accessibility, real redaction, metadata scrubbing, signing, and extraction. Use when redacting or signing PDFs; for plain create/merge prefer the official pdf skill.

Docs & Writing689 installs

qa-testing-playwright

vasilyu1983/ai-agents-public

Builds and debugs Playwright E2E suites. Use when authoring browser tests, fixing flakes, or hardening Playwright CI and locator strategy.

Testing & QA665 installs

Popular ai & agents skills

View category →

google-agents-cli-publish

google/agents-cli

This skill should be used when the user wants to "publish an agent", "publish my ADK agent", "register an agent with Gemini", "publish to Gemini" (formerly Gemini Enterprise), or needs guidance on the agents-cli publish gemini command. Also use when the user wants to "manage agents in Agent Registry", "list/update/delete registered agents", or "register an MCP server". Covers ADK vs A2A registration modes, programmatic and interactive usage, flag reference, auto-detection from deployment metadata, Agent Registry fleet management, and troubleshooting. Part of the agents-cli skills suite. Do NOT use for deployment (use google-agents-cli-deploy).

AI & Agents513.9K installs

google-agents-cli-eval

google/agents-cli

This skill should be used when the user wants to "run an evaluation", "evaluate my agent", "evaluate my ADK agent", "write an eval dataset", "analyze eval failures", "compare eval results", "optimize agent", or needs guidance on the Gemini platform eval methodology and the Quality Flywheel. Covers eval metrics, dataset schema, LLM-as-judge scoring, and common failure causes. Applies to any agents-cli project, whatever framework the agent is written in. Do NOT use for agent API code patterns (ADK: use google-agents-cli-adk-code), deployment (use google-agents-cli-deploy), or project scaffolding (use google-agents-cli-scaffold).

AI & Agents513.5K installs

skill-creator

anthropics/skills

Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.

OfficialAI & Agents416.4K installs

codex-pet

prime-skills/runcomfy-agent-skills

Codex Pet generator on RunComfy. Build a Codex-compatible Codex Pet spritesheet.webp + pet.json from a single reference image, drop it into ${CODEXHOME:-$HOME/.codex}/pets/ / and Codex picks it up as a custom Codex Pet next to the 8 built-ins. This skill produces the exact Codex Pet atlas Codex expects (1536x1872 PNG/WebP, 8 cols x 9 rows, 192x208 cells, 9 animation states — idle, running-right, running-left, waving, jumping, failed, waiting, running, review). Calls OpenAI GPT Image 2 edit ONCE via the local RunComfy CLI as runcomfy run openai/gpt-image-2/edit to produce a canonical Codex Pet pose, then assembles all 9 animation rows programmatically with ImageMagick micro-transforms — no Codex Pro, no $imagegen, no OPENAIAPIKEY required, only RUNCOMFYTOKEN. Triggers on "codex pet", "create codex pet", "make codex pet", "hatch codex pet", "/hatch image", "desktop pet codex", "codex pets", "spritesheet.webp", or any explicit ask to build a custom pet for OpenAI Codex.

AI & Agents402.1K installs

full-output-enforcement

leonxlnx/taste-skill

Overrides default LLM truncation behavior. Enforces complete code generation, bans placeholder patterns, and handles token-limit splits cleanly. Apply to any task requiring exhaustive, unabridged output.

AI & Agents401K installs

executing-plans

obra/superpowers

Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available

AI & Agents245.7K installs