Search a codebase with a natural-language, code, or exact-symbol query.
Use `hybrid` by default, `bm25` for exact identifiers and literals, and
`semantic` for conceptual behavior. Optional language and path filters narrow
the index when the agent already knows where to look. Results include formatted
text for context injection and structured fields.