spec_nav_find_functions
Find existing functions by describing desired behavior in words before writing new logic. Returns function IDs for further reading.
Instructions
Before writing new logic: find existing functions by describing the behaviour in words ("calculate order fee"). Lexical ranking over name, aliases, class, signature, doc comment, path, called names and body, with stem, abbreviation and synonym matching; each candidate says why it matched, and matches only via calls or body rank lower. Not semantic: if nothing fits, use spec_nav_similar_functions. Returns ids for spec_nav_read_function. Paged by limit/cursor.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| file | No | Only files whose path contains this, matches it as a * glob, or as a regex (/…/, or a value with | ( ^ $ \, e.g. "services/(order|payment)"). | |
| limit | No | Candidates per page (default 20, max 100). | |
| query | No | What the function does, in words. E.g. "calculate order fees" | |
| cursor | No | The nextCursor from the previous page. Repeat the other arguments unchanged. | |
| format | No | "text" (default, compact) or "json" (structured). | |
| queries | No | Up to 5 phrasings (synonyms, another language), ranked together in one call; each result says which matched. | |
| language | No | e.g. "typescript", "javascript", "python", "go" | |
| services | No | Services/directories relative to the root (e.g. "services/api"); "." is the root project's own files. Default: the whole repo. | |
| searchBodies | No | Also match words in function bodies (default true; weighted low; body-only matches need every word). false drops body-only matches. |