| 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
version: 1
embedder:
provider: ollama
model: nomic-embed-text
endpoint: http://localhost:11434
dimensions: 768
api_key: ${OPENAI_API_KEY}
parallelism: 4
store:
backend: gob
postgres:
dsn: postgres://user:password@localhost:5432/grepai
qdrant:
endpoint: localhost
port: 6334
use_tls: false
api_key: your-qdrant-api-key
chunking:
size: 512
overlap: 50
watch:
debounce_ms: 500
trace:
mode: fast
enabled_languages:
- .go
- .js
- .ts
- .jsx
- .tsx
- .py
- .php
- .c
- .h
- .cpp
- .hpp
- .cc
- .cxx
- .rs
- .zig
- .cs
- .pas
- .dpr
exclude_patterns:
- "*_test.go"
- "*.spec.ts"
- "*.test.js"
search:
boost:
enabled: true
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
bonuses:
- pattern: /src/
factor: 1.1
- pattern: /lib/
factor: 1.1
- pattern: /core/
factor: 1.2
- pattern: /app/
factor: 1.1
hybrid:
enabled: false
k: 60
ignore:
- .git
- .grepai
- .svn
- .hg
- node_modules
- vendor
- target
- __pycache__
- .pytest_cache
- dist
- build
- out
- .next
- .nuxt
- "*.min.js"
- "*.min.css"
- "*.bundle.js"
- "*.map"
- "*.lock"
- package-lock.json
- yarn.lock
- pnpm-lock.yaml
- go.sum
- "*.generated.*"
- "*.pb.go"
- "*.d.ts"
Configuration by Use Case
Small Personal Project
version: 1
embedder:
provider: ollama
model: nomic-embed-text
store:
backend: gob
chunking:
size: 512
overlap: 50
Large Codebase
version: 1
embedder:
provider: ollama
model: bge-m3
parallelism: 4
store:
backend: postgres
postgres:
dsn: postgres://user:pass@localhost:5432/grepai
chunking:
size: 768
overlap: 100
Team Environment
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
version: 1
embedder:
provider: ollama
model: nomic-embed-text
endpoint: http://localhost:11434
store:
backend: gob
Environment Variables
GrepAI supports environment variable substitution:
embedder:
api_key: ${OPENAI_API_KEY}
store:
postgres:
dsn: ${DATABASE_URL}
Set in your shell:
export OPENAI_API_KEY="sk-..."
export DATABASE_URL="postgres://..."
Validating Configuration
Check your config is valid:
grepai status
If there are config errors, they'll be displayed.
Configuration Precedence
.grepai/config.yaml in current directory
- Workspace configuration (if using workspaces)
- Default values
Best Practices
- Start simple: Use defaults, optimize later
- Match chunking to code style: Larger chunks for verbose code
- Use boosting: Penalize test/vendor, boost src/lib
- Secure API keys: Use environment variables, never commit
- 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