etalab-ia/dragster · Archived

rag-index

Index a document corpus for semantic search. Use when the user wants to set up a knowledge base, create a searchable index from markdown documents, or enable semantic search. Triggers on keywords like "index documents", "create knowledge base", "setup search", "semantic search".

First seen Mar 31, 2026

Installation

$ npx skills add etalab-ia/dragster --skill rag-index

Stronger alternatives

This repository is archived — consider an actively maintained alternative.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from etalab-ia/dragster.

npx skills add etalab-ia/dragster

Browse all from etalab-ia/dragster

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 1
License LICENSE
Default branch main
Open issues 0
Status Archived

Skill metadata

Parsed from SKILL.md frontmatter.

LicenseMIT
Allowed toolsBash

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 3,826 B
  • docs SUMMARY.md 296 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 2 installs

SKILL.md

rag-index Skill

Index a document corpus for semantic search. This skill uses qmd under the hood.

Prerequisites

Install qmd:

bun install -g @tobilu/qmd

Verify installation:

qmd --version

Documents must be in markdown format. Use /rag-parse first to convert PDFs/DOCX.

Response Requirements

When using this skill, always include:

  1. Collection name that will be created/used (e.g. my-project)
  2. Source documents path being indexed (e.g. ./docs)
  3. Where the index/collection is stored (qmd collection location), and a verification command (qmd status)

Never omit storage location details in your final answer.

Workflow

1. Verify qmd

qmd --version

If not installed, see Prerequisites above.

2. Create Collection

qmd collection add <path> --name <name>

Arguments:

Argument Type Default Description
path string required Path to document directory
name string derived Collection name (defaults to directory name)

Examples:

qmd collection add ./docs --name my-project
qmd collection add ~/Documents/api-docs --name api-docs

3. Add Context (Optional)

Add semantic context to help with retrieval:

qmd context add qmd://<name> "<description>"

Examples:

qmd context add qmd://api-docs "API documentation for the project"
qmd context add qmd://contracts "Legal contracts and agreements"

4. Generate Embeddings

qmd embed

This creates vector embeddings for all documents in the collection.

5. Verify Setup

qmd status

Should show your collection with document count.

Full Example

# Create collection
qmd collection add ./docs --name my-project

# Add context
qmd context add qmd://my-project "Project documentation and guides"

# Generate embeddings
qmd embed

# Verify
qmd status

Arguments

Argument Type Default Description
path string required Path to document directory
name string derived Collection name
context string asked Context description for retrieval

Troubleshooting

"sqlite-vec is not available"

qmd requires SQLite with extension loading support. Solutions:

  • macOS: brew install sqlite
  • Linux: Build sqlite-vec from source
  • Docker: Use official qmd Docker image

See docs/qmd-setup.md for detailed instructions.

Other Issues

If embeddings fail:

  1. Check qmd status: qmd status
  2. Verify documents exist: ls -la <path>
  3. Check for empty files: find <path> -empty

Next Steps

After setting up the knowledge base, use /rag-search to search your documents.

Provider-Specific Notes

qmd (current)

  • Storage: Local SQLite with sqlite-vec extension
  • Embeddings: Local model (no API key required)
  • Best for: Small to medium corpora, offline usage

pinecone (planned)

  • Storage: Pinecone cloud
  • Embeddings: OpenAI or custom embeddings
  • Best for: Large-scale production deployments
  • Setup: Requires PINECONEAPIKEY environment variable

weaviate (planned)

  • Storage: Weaviate instance (self-hosted or cloud)
  • Embeddings: Configurable
  • Best for: Enterprise deployments with hybrid search
  • Setup: Requires WEAVIATEURL and optionally WEAVIATEAPI_KEY