Quick Diagnostics
Start with these commands to identify the issue:Installation Issues
CEMS CLI not found
Symptoms:cems: command not found
Causes:
uvnot installed- CEMS not installed via
uv tool install - Shell PATH not updated
Installation script fails
Symptoms:install.sh exits with error
Common errors:
Permission denied
Permission denied
Error:
chmod: cannot access '~/.cems/credentials': Permission deniedFix:Missing API URL or key
Missing API URL or key
Error:
CEMS_API_URL or CEMS_API_KEY not setFix:
Set environment variables before install:IDE not found
IDE not found
Error:
Claude Code directory not found: ~/.claudeFix:
Only install for IDEs you have:Connection Issues
Memory not being recalled
Symptoms:/recall returns empty or hook doesn’t inject memories
Debug steps:
Test connection
- Check API URL is reachable:
curl $CEMS_API_URL/health - Check API key is valid
- Check firewall/network
Test search directly
401 Unauthorized
Symptoms: API returns{"detail": "Invalid API key"}
Causes:
- Expired or invalid API key
- Wrong API URL
- Credentials file not loaded
Connection timeout
Symptoms:Connection timed out or Connection refused
Causes:
- Server not running
- Firewall blocking port
- Wrong API URL
- Local Server
- Remote Server
Hook Issues
Skills not appearing
Symptoms:/recall and /remember skills don’t show in IDE
Fix for each IDE:
- Claude Code
- Cursor
- Codex
-
Verify files exist:
-
Check settings.json:
-
Re-install skills:
- Restart Claude Code: Close and reopen Claude Code application
-
Test manually:
Type
/in chat - should see/recall,/remember, etc.
Hook execution fails
Symptoms: Hook runs but returns error Debug:ModuleNotFoundError: No module named 'cems'
ModuleNotFoundError: No module named 'cems'
Cause: CEMS package not installed in Python environmentFix:
JSONDecodeError: Expecting value
JSONDecodeError: Expecting value
Cause: Hook returned invalid JSONFix:
Check hook output:Look for print statements or errors before JSON output.
ConnectionError: Failed to connect to API
ConnectionError: Failed to connect to API
Cause: CEMS server unreachable from hookFix:
- Check credentials file exists:
cat ~/.cems/credentials - Test connection:
cems health - Check network/firewall
Search Issues
Poor search results
Symptoms: Relevant memories not returned or irrelevant results returned Diagnosis:Check if memories exist
/rememberskill works:cems add "test memory"- Observer daemon running (for automatic extraction)
Test with raw mode
- Memories exist but filtered out (score too low)
- Adjust threshold or use hybrid mode
Try hybrid mode
- Query synthesis (2-5 expanded queries)
- HyDE (hypothetical document embeddings)
- RRF fusion (combines vector + full-text)
- Better for complex/semantic queries
Search returns empty
Symptoms:cems search returns [] even though memories exist
Causes:
No embeddings generated
No embeddings generated
Symptom:
cems list shows memories but search returns emptyCause: Embeddings not generated (API key issue or embedder failure)Fix:- Check OpenRouter API key:
- Re-index memories:
- Check embedding backend config:
Scope mismatch
Scope mismatch
Symptom: Memories stored in
personal but searching sharedFix:Project filter too strict
Project filter too strict
Symptom: Searching with
--project returns emptyCause: Memories not tagged with projectFix:- Search without project filter:
- Check memory source_ref:
- Disable project penalty:
Query synthesis fails
Symptoms: Hybrid mode falls back to vector mode Cause: LLM API error or timeout Debug:Server Issues
Docker container won’t start
Symptoms:docker compose up -d fails or containers crash
Debug:
Port already in use
Port already in use
Error:
Error starting userland proxy: listen tcp4 0.0.0.0:8765: bind: address already in useFix:Missing environment variables
Missing environment variables
Error:
OPENROUTER_API_KEY is requiredFix:Database connection failed
Database connection failed
Error:
could not connect to server: Connection refusedFix:Database migration issues
Symptoms: Server starts but API returns errors about missing tables Fix:Maintenance Issues
Consolidation merging too aggressively
Symptoms: Distinct memories being merged into one Cause: Deduplication threshold too low Fix:Re-indexing takes too long
Symptoms: Monthly re-indexing job runs for hours Cause: Too many memories or slow embedding API Fix:Observation reflection producing bad summaries
Symptoms: Reflected observations lose important details Cause: LLM over-compressing or hallucinating Fix:Performance Issues
Slow search queries
Symptoms: Search takes >5 seconds Causes:- Too many LLM calls (hybrid mode)
- Large memory corpus
- Slow embedding API
- Use Vector Mode
- Reduce Token Budget
- Optimize Database
High memory usage
Symptoms: Server OOM killed or using >4GB RAM Cause: Large batch operations or memory leaks Fix:Getting Help
GitHub Issues
Report bugs or request features
Logs
Always include logs when reporting issues:
Debug Mode
Enable debug logging:Collect Diagnostic Info
Next Steps
Maintenance
Optimize memory with scheduled jobs
Retrieval Tuning
Improve search quality