Troubleshooting
Guide to solving the most frequent problems during installation, configuration, and use of Vectora.
Installation
Error: npm: command not found
Cause: Node.js is not installed or not in your PATH.
Solution:
# Install Node.js: https://nodejs.org (LTS recommended)
node --version # Should return v18+
npm --version # Should return 9+Error: EACCES: permission denied
Cause: Insufficient permission to install globally.
Solution:
# Configure npm for local installation
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
export PATH=~/.npm-global/bin:$PATH
# Add the line above to your ~/.bashrc or ~/.zshrc
npm install -g @kaffyn/vectoraError: vectora: command not found
Cause: Vectora is installed but not in your PATH.
Solution:
# Verify installation
npm list -g @kaffyn/vectora
# Reinstall
npm install -g @kaffyn/vectora
# Test
vectora --versionConfiguration
Error: API key not found
Cause: Environment variables not configured.
Solution:
# Verify if keys are defined
echo $GEMINI_API_KEY
echo $VOYAGE_API_KEY
# If empty, configure
export GEMINI_API_KEY="your_key_here"
export VOYAGE_API_KEY="your_key_here"
# Or create a .env file
cat > .env << 'EOF'
GEMINI_API_KEY=sk-xxx
VOYAGE_API_KEY=pa-xxx
EOFError: Config validation failed
Cause: Invalid YAML syntax in vectora.config.yaml.
Solution:
# Validate YAML
yamllint vectora.config.yaml
# Or use online: https://yamllint.com
# Common errors:
# - Inconsistent indentation (use 2 spaces)
# - Missing quotes around values
# - Unescaped special symbolsError: Trust folder does not exist
Cause: The path in trust_folder does not exist.
Solution:
# Update vectora.config.yaml
namespace:
trust_folder: "." # or a valid pathMCP Integration
Error: Vectora MCP server not found
Cause: claude_desktop_config.json is poorly formatted.
Solution:
{
"mcpServers": {
"vectora": {
"command": "vectora",
"args": ["mcp-serve"]
}
}
}Verify:
- JSON is valid (use jsonlint.com)
- File is in correct location:
~/.claude/claude_desktop_config.json - Restart Claude Desktop after saving
Error: Connection refused
Cause: Vectora cannot connect to the API.
Solution:
# Verify API keys
echo $GEMINI_API_KEY
echo $VOYAGE_API_KEY
# Test connectivity
curl https://generativelanguage.googleapis.com/v1beta/models
# If it fails, your key might be invalid
# Generate a new key at https://aistudio.google.com/app/apikeyClaude does not use Vectora automatically
Cause: Claude does not detect that the tool is relevant.
Solution: Be explicit in your request:
Use Vectora to search for context about authentication.
Search the codebase for JWT implementations.API & Providers
Error: 403 Quota Exceeded (Gemini)
Cause: Request limit exceeded (60/min on free tier).
Solution:
# Wait for quota reset (next minute)
# Or upgrade to Plus plan at https://vectora.dev/plans
# For debug: verify usage
vectora stats --provider geminiError: 401 Unauthorized (Voyage)
Cause: API key invalid or expired.
Solution:
# Generate new key at https://dash.voyageai.com/api-keys
vectora config set --key VOYAGE_API_KEY --value "new_key"
# Test
vectora test --provider voyageError: Network timeout
Cause: Slow connection or API unavailable.
Solution:
# Increase timeout (default: 30s)
export VECTORA_TIMEOUT_MS=60000
# Test connectivity
ping generativelanguage.googleapis.com
# If using VPN/proxy:
export HTTP_PROXY=http://proxy:port
export HTTPS_PROXY=https://proxy:portIndexing & RAG
Error: Project not found
Cause: Namespace does not exist.
Solution:
# Initialize project
vectora init --name "My Project"
# Or specify in claude_desktop_config.json
"VECTORA_NAMESPACE": "my-project"Error: No results found
Cause: Codebase not indexed or irrelevant query.
Solution:
# Force reindexing
vectora ingest --project . --force
# Verify status
vectora status --project .
# Try a different or more specific query
# Example: instead of "auth", try "JWT validation in middleware"Very slow embedding
Cause: Large codebase or slow connection.
Solution:
# Use batch processing
vectora ingest --batch-size 16 # default: 32
# Or configure in vectora.config.yaml
indexing:
batch_size: 16
# For local development, use fallback
providers:
embedding:
fallback: "local" # local embedding via ollamaPerformance
Claude Desktop is slow
Cause: Too many simultaneous requests or large codebase.
Solution:
# Limit automatic indexing
vectora config set VECTORA_AUTO_INGEST=false
# Or schedule indexing for off-peak times
vectora schedule ingest --time 02:00 --recurring dailyHigh memory usage
Cause: Large local cache or uncleaned indices.
Solution:
# Clear cache
vectora cache clear
# Reduce cache size
vectora config set VECTORA_CACHE_SIZE=100MB
# Verify consumption
vectora stats --memoryDebug & Logging
Activate debug mode
# Via CLI
vectora --log-level debug
# Via variable
export VECTORA_LOG_LEVEL=debug
# Save logs to file
vectora mcp-serve --log-file debug.logGet more information
# General status
vectora status
# Configuration details
vectora config list
# Usage statistics
vectora stats
# Verify indexing
vectora index --list --verboseWhere to Seek Help
Specific FAQs:
Documentation:
Community:
- GitHub Issues: vectora/issues
- Discussions: vectora/discussions
- Discord: Vectora Community
Report Bug:
vectora bug-report --include-logs --include-config # Generates file with sanitized information to send
FAQ
Q: Where is my data?
A: Locally in .vectora/ (cache) and Qdrant (indexed embeddings). Kaffyn never accesses your raw code.
Q: How to reset everything?
A: Use vectora reset --full --confirm. This removes cache, indices, and local config.
Q: Can I use Vectora without internet? A: Partially. Semantic search needs an API. File operations work offline.
Part of the Vectora ecosystem · Open Source (MIT) · Contributors