grepai-config-reference — Claude Code skill: GrepAI config reference
A skill that hands your agent the full list of GrepAI options in .grepai/config.yaml — embedder, store, chunking, search. Useful when a setting needs explaining or fixing.
npx skills add yoanbernabeu/grepai-skills --skill grepai-config-reference -a claude-codeWhat grepai-config-reference does
The skill gives the agent the complete configuration schema for GrepAI from .grepai/config.yaml. It covers embedder (providers ollama, openai, lmstudio, model, endpoint, dimensions, API key, parallelism), store (gob, postgres, qdrant), chunking with size and overlap, watch with its debounce delay, trace with fast and precise modes, search with boosts and hybrid mode, plus the ignore list.
Alongside the schema come ready-made setups for four situations: a small personal project, a large codebase, a team environment, and maximum privacy. Environment variable substitution is documented too — api_key: ${OPENAI_API_KEY}, dsn: ${DATABASE_URL}. To check a config, run grepai status; it prints any errors it finds.
Precedence runs from .grepai/config.yaml in the current directory, then workspace configuration, then defaults. If GrepAI itself isn't installed or no config exists yet, the skill has nothing to explain — install the tool first. On API keys the skill advises environment variables and keeping them out of commits.
What it helps with
- see every option available in
.grepai/config.yaml - pick an embedding provider and a fitting model
- switch vector storage from
gobtopostgresorqdrant - tune boosts and penalties so tests and
vendordrop out of results - pass an API key through an environment variable instead of hardcoding it
Example prompts for the agent
- List all GrepAI configuration options and explain what each one does
- How should I set up
.grepai/config.yamlfor a large codebase? - Why is
grepai statuscomplaining about my config?
How to install grepai-config-reference
1Skills CLI (Vercel)
npx skills add yoanbernabeu/grepai-skills --skill grepai-config-reference -a claude-code2Manually: put the files in place
~/.claude/skills/grepai-config-reference/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/grepai-config-reference/
1Skills CLI (Vercel)
npx skills add yoanbernabeu/grepai-skills --skill grepai-config-reference -a codex2Manually: put the files in place
.agents/skills/grepai-config-reference/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add yoanbernabeu/grepai-skills --skill grepai-config-reference -a cursor2Manually: put the files in place
.cursor/skills/grepai-config-reference/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install yoanbernabeu/grepai-skills grepai-config-reference2Manually: put the files in place
.github/skills/grepai-config-reference/SKILL.md1Skills CLI (Vercel)
npx skills add yoanbernabeu/grepai-skills --skill grepai-config-reference -a gemini-cli2Platform CLI
gemini skills install https://github.com/yoanbernabeu/grepai-skills --path skills/configuration/grepai-config-referenceManually: put the files in place
.devin/skills/grepai-config-reference/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add yoanbernabeu/grepai-skills --skill grepai-config-reference -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 grepai-config-reference
How do I install grepai-config-reference in Claude?
Run npx skills add yoanbernabeu/grepai-skills --skill grepai-config-reference -a claude-code. The skill lands in ~/.claude/skills/grepai-config-reference/SKILL.md.
What does grepai-config-reference do?
It gives the agent a full reference for GrepAI settings in .grepai/config.yaml: embedder, store, chunking, watch, trace, search and ignore. Handy for understanding an option or tracking down a config error.
What do I need for this skill to be useful?
GrepAI installed and a .grepai/config.yaml file in the project. With the openai provider you also need an API key, which the skill advises storing in an environment variable.
Source text
SKILL.md · MIT
---
name: grepai-config-reference
description: Complete configuration reference for GrepAI. Use this skill when you need to understand all available configuration options.
---
# GrepAI Configuration Reference
This skill provides a complete reference for all GrepAI configuration options in `.grepai/config.yaml`.
## When to Use This Skill
- Understanding all available configuration options
- Optimizing GrepAI for your specific use case
- Troubleshooting configuration issues
- Setting up advanced configurations
## Configuration File Location
```
/your/project/.grepai/config.yaml
```
## Complete Configuration Schema
```yaml
version: 1
# ═══════════════════════════════════════════════════════════════
# EMBEDDER CONFIGURATION
# Converts code text into vector embeddings
# ═══════════════════════════════════════════════════════════════
embedder:
# Provider: ollama | openai | lmstudio
provider: ollama
# Model name (depends on provider)
# Ollama: nomic-embed-text, bge-m3, mxbai-embed-large
# OpenAI: text-embedding-3-small, text-embedding-3-large
# LM Studio: nomic-embed-text-v1.5, bge-small-en-v1.5
model: nomic-embed-text
# API endpoint URL
# Ollama default: http://localhost:11434
# LM Studio default: http://localhost:1234
# OpenAI: uses official API
endpoint: http://localhost:11434
# Vector dimensions (auto-detected if omitted)
# nomic-embed-text: 768
# text-embedding-3-small: 1536
# text-embedding-3-large: 3072
dimensions: 768
# API key (for OpenAI, supports env vars)
api_key: ${OPENAI_API_KEY}
# Parallel requests (OpenAI only, for speed)
parallelism: 4
# ═══════════════════════════════════════════════════════════════
# STORE CONFIGURATION
# Where vector embeddings are stored
# ═══════════════════════════════════════════════════════════════
store:
# Backend: gob | postgres | qdrant
backend: gob
# PostgreSQL configuration (when backend: postgres)
postgres:
dsn: postgres://user:password@localhost:5432/grepai
# Qdrant configuration (when backend: qdrant)
qdrant:
endpoint: localhost
port: 6334
use_tls: false
api_key: your-qdrant-api-key # Optional
# ═══════════════════════════════════════════════════════════════
# CHUNKING CONFIGURATION
# How code files are split for embedding
# ═══════════════════════════════════════════════════════════════
chunking:
# Tokens per chunk (smaller = more precise, larger = more context)
# Recommended: 256-1024
size: 512
# Overlap between chunks (preserves context at boundaries)
# Recommended: 10-20% of size
overlap: 50
# ═══════════════════════════════════════════════════════════════
# WATCH CONFIGURATION
# File watching daemon settings
# ═══════════════════════════════════════════════════════════════
watch:
# Debounce delay in milliseconds
# Groups rapid file changes together
debounce_ms: 500
# ═══════════════════════════════════════════════════════════════
# TRACE CONFIGURATION
# Call graph analysis settings
# ═══════════════════════════════════════════════════════════════
trace:
# Extraction mode: fast | precise
# fast: Uses regex, no dependencies, faster
# precise: Uses tree-sitter AST parsing, more accurate
mode: fast
# Languages to analyze for call graphs
enabled_languages:
- .go
- .js
- .ts
- .jsx
- .tsx
- .py
- .php
- .c
- .h
- .cpp
- .hpp
- .cc
- .cxx
- .rs
- .zig
- .cs
- .pas
- .dpr
# Patterns to exclude from trace analysis
exclude_patterns:
- "*_test.go"
- "*.spec.ts"
- "*.test.js"
# ═══════════════════════════════════════════════════════════════
# SEARCH CONFIGURATION
# Search result scoring and ranking
# ═══════════════════════════════════════════════════════════════
search:
# Score boosting configuration
boost:
enabled: true
# Reduce scores for certain paths
penalties:
- pattern: /tests/
factor: 0.5
- pattern: _test.
factor: 0.5
- pattern: .spec.
factor: 0.5
- pattern: /docs/
factor: 0.6
- pattern: /vendor/
factor: 0.3
- pattern: /node_modules/
factor: 0.3
# Increase scores for certain paths
bonuses:
- pattern: /src/
factor: 1.1
- pattern: /lib/
factor: 1.1
- pattern: /core/
factor: 1.2
- pattern: /app/
factor: 1.1
# Hybrid search (vector + keyword)
hybrid:
enabled: false
k: 60 # BM25 parameter
# ═══════════════════════════════════════════════════════════════
# IGNORE CONFIGURATION
# Files and directories to exclude from indexing
# ═══════════════════════════════════════════════════════════════
ignore:
# Directories
- .git
- .grepai
- .svn
- .hg
- node_modules
- vendor
- target
- __pycache__
- .pytest_cache
- dist
- build
- out
- .next
- .nuxt
# Files
- "*.min.js"
- "*.min.css"
- "*.bundle.js"
- "*.map"
- "*.lock"
- package-lock.json
- yarn.lock
- pnpm-lock.yaml
- go.sum
# Generated
- "*.generated.*"
- "*.pb.go"
- "*.d.ts"
```
## Configuration by Use Case
### Small Personal Project
```yaml
version: 1
embedder:
provider: ollama
model: nomic-embed-text
store:
backend: gob
chunking:
size: 512
overlap: 50
```
### Large Codebase
```yaml
version: 1
embedder:
provider: ollama
model: bge-m3 # Larger model
parallelism: 4
store:
backend: postgres # Scalable storage
postgres:
dsn: postgres://user:pass@localhost:5432/grepai
chunking:
size: 768 # Larger chunks
overlap: 100
```
### Team Environment
```yaml
version: 1
embedder:
provider: openai
model: text-embedding-3-small
api_key: ${OPENAI_API_KEY}
parallelism: 8
store:
backend: qdrant
qdrant:
endpoint: qdrant.internal.company.com
port: 6334
use_tls: true
```
### Maximum Privacy
```yaml
version: 1
embedder:
provider: ollama
model: nomic-embed-text
endpoint: http://localhost:11434
store:
backend: gob # Local file only
```
## Environment Variables
GrepAI supports environment variable substitution:
```yaml
embedder:
api_key: ${OPENAI_API_KEY}
store:
postgres:
dsn: ${DATABASE_URL}
```
Set in your shell:
```bash
export OPENAI_API_KEY="sk-..."
export DATABASE_URL="postgres://..."
```
## Validating Configuration
Check your config is valid:
```bash
grepai status
```
If there are config errors, they'll be displayed.
## Configuration Precedence
1. `.grepai/config.yaml` in current directory
2. Workspace configuration (if using workspaces)
3. Default values
## Best Practices
1. **Start simple:** Use defaults, optimize later
2. **Match chunking to code style:** Larger chunks for verbose code
3. **Use boosting:** Penalize test/vendor, boost src/lib
4. **Secure API keys:** Use environment variables, never commit
5. **Exclude noise:** Ignore generated files, dependencies
## Output Format
Valid configuration status:
```
✅ GrepAI Configuration Valid
Embedder: ollama (nomic-embed-text)
Storage: gob (.grepai/index.gob)
Chunking: 512 tokens, 50 overlap
Trace mode: fast
Languages: 18 enabled
Ignore patterns: 12 configured
Boosting: enabled
```
© yoanbernabeu · MIT · yoanbernabeu/grepai-skills