Synopsis
Search across all thread content and return matching lines with file paths and line numbers.Usage
Arguments
Search query string (case-insensitive text search)
Options
Threads directory path. Defaults to
./watercooler or $WATERCOOLER_DIR.Examples
Basic text search
Search for specific term
Search for decision records
Search in custom directory
Case-sensitive patterns
Output Format
Results are formatted similar to grep output:| Field | Description |
|---|---|
| File path | Absolute path to the thread file |
| Line number | Line number where match was found |
| Matching line | Complete line containing the search query |
Search Behavior
- Case-insensitive: Searches ignore case by default
- Full-text: Searches entire file content including frontmatter, titles, and bodies
- Multi-file: Searches all thread files in the directory
- Plain text: No regex support (plain string matching)
Common Use Cases
Find recent decisions
Find all PRs mentioned
Find blockers
Find specific agent mentions
Audit trail for specific feature
Integration with Shell Tools
Count occurrences
Get unique file matches
Search and open in editor
Filter by date (if timestamps in content)
Performance Considerations
- Search is linear across all files in the threads directory
- For large thread collections (>1000 files), consider using dedicated indexing
- The command reads all files; performance scales with total content size
Advanced Search
For more complex search needs, consider:- MCP tools: Use
watercooler_searchMCP tool for semantic search capabilities - Smart query: Use
watercooler_smart_queryfor natural language questions - External tools: Combine with
ripgreporagfor regex support:
Related Commands
- list - List threads
- search - MCP search tool with semantic capabilities
- smart-query - Natural language query (MCP)