watercooler_find_similar
Find semantically similar entries using the Graphiti temporal knowledge graph (T2). Uses embedding-based similarity search to find related discussions.Safety: Read-only tool - does not modify any state
Overview
This tool searches the Graphiti backend (T2) to find entries semantically similar to a query. Unlike keyword search, it understands meaning and context. Use cases:- Find related discussions across threads
- Discover prior art for current work
- Locate relevant decisions and rationale
- Identify duplicate or overlapping work
Prerequisites
- Graphiti backend enabled:
WATERCOOLER_GRAPHITI_ENABLED=1 - FalkorDB running:
docker run -d -p 6379:6379 falkordb/falkordb - Threads indexed:
watercooler memory index - API keys configured:
LLM_API_KEY,EMBEDDING_API_KEY
Parameters
Search query or example textExamples:
"JWT token signing with RS256""error handling in authentication""async task queue implementation"
Maximum results to return
Path to code repository directoryResolves threads directory and database name
Optional project group_id to filter resultsIn unified model, all threads share one group_id per project (e.g., “watercooler_cloud”)
Return Value
Returns JSON with similar entries:Original search query
Number of similar entries found
List of similar entries, each containing:
- episode_uuid: Graphiti episode UUID
- content: Entry content/summary
- score: Similarity score (0-1)
- timestamp: Entry timestamp
- source_description: Source metadata (topic, agent)
- provenance: Entry provenance (entry_id, topic)
Usage Examples
Find Similar Discussions
Find Related Decisions
Find Prior Art
Search Specific Project
Example Output
How It Works
Embedding Generation
When threads are indexed to Graphiti (T2):- Entry chunking: Each entry is split into semantic chunks
- Embedding generation: Chunks are embedded using configured embedding model
- Graph storage: Embeddings stored in FalkorDB alongside episode nodes
Similarity Search
When you query:- Query embedding: Your query is embedded with same model
- Vector search: FalkorDB finds nearest neighbors in embedding space
- Ranking: Results sorted by cosine similarity
- Provenance: Episode UUIDs linked back to entry_id/topic
Similarity Scores
Score interpretation:- 0.9 - 1.0: Near-duplicate or highly related
- 0.8 - 0.9: Strongly related, same topic
- 0.7 - 0.8: Related, overlapping concepts
- 0.6 - 0.7: Loosely related
- < 0.6: Weak relationship
Use Cases
Avoid Duplicate Work
Before starting new work:Find Architectural Decisions
When making similar decision:Discover Context
When joining ongoing work:Cross-Thread Search
Find related work across threads:Performance Tips
Adjust Limit
For exploration, request more results:Use Specific Queries
More specific queries yield better results:Filter by Project
For multi-project repos:Troubleshooting
No Results
Cause: Threads not indexed to Graphiti Solution:Low-Quality Results
Cause: Embedding model mismatch or poor query Solution:- Use same embedding model for indexing and search
- Make query more specific
- Increase
limitto see more results
Backend Unavailable
Cause: Graphiti not enabled or FalkorDB not running Solution:Related Tools
- watercooler_smart_query - Multi-tier intelligent query
- watercooler_search - T1 baseline keyword/semantic search
- watercooler_memory_sync - Index threads to Graphiti