claude-memory/graph/decisions/semantic-search-enabled-by-default-for-memory-recall-e94ae9.md

1.1 KiB

id type title tags importance confidence created updated
e94ae963-9bf9-4adc-b0d7-ec18d9e70999 decision Semantic search enabled by default for memory recall
cognitive-memory
decision
semantic-search
configuration
0.7 0.8 2026-02-19T22:03:22.589620+00:00 2026-02-19T22:03:22.589620+00:00

Changed recall() default from semantic=False to semantic=True. All recall calls now use semantic+keyword merge when embeddings exist.

Rationale: With mtime-based embeddings caching, warm semantic recall takes ~200ms — imperceptible within Claude Code sessions where API roundtrips are measured in seconds. The quality improvement from conceptual matching justifies the small overhead.

Changes made:

  • client.py: recall() parameter default semantic=True
  • client.py: CLI flag changed from --semantic (opt-in) to --no-semantic (opt-out)
  • mcp_server.py: arguments.get("semantic", True), updated tool description
  • SKILL.md: Updated all examples and documentation

Merge weights: 60% semantic, 40% keyword. Use semantic=false / --no-semantic when speed matters more than depth (~3ms vs ~200ms).