search
Search code by name, content, or meaning with literal matching and path globs. Optionally list all matching files exhaustively.
Instructions
Find code by NAME, CONTENT, or MEANING — the one way in (default limit 25). Returns graph nodes WITH their signatures (not dead text lines): often enough to answer without info(). Pass any node to relations/info. Use wherever you'd grep or search for a symbol; content hits fold into the enclosing symbol. text_matches = non-symbol hits. Content is matched LITERALLY (not regex) — write 'Request(' or 'getErrorMap(' as-is, no escaping needed. Scope with path_glob (e.g. 'tests/', '.ts', '!tests/' to exclude) — there is no file:/content: query syntax, so use this instead of guessing one. Test files are excluded by default unless you set path_glob yourself or the query says 'test' — pass path_glob='tests/' to search them on purpose. For 'list EVERY file that calls/imports X' — where the top-N node list could miss some — set exhaustive=true: returns every matching file path (no signatures), uncapped by the normal limit. If the response's note field is set, your exact text matched nothing — every node is a name/meaning guess, not a confirmed hit — simplify the query instead of repeating it.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max nodes to return (clamped to 200) | |
| query | Yes | ||
| path_glob | No | ||
| exhaustive | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| via | No | ||
| note | No | ||
| count | No | ||
| error | No | ||
| files | No | ||
| nodes | No | ||
| indexing | No | ||
| truncated | No | ||
| repeat_hint | No | ||
| text_matches | No | ||
| resolver_status | No | ok |