find_symbols
Search a codebase for functions, classes, interfaces, methods, types, variables, structs, and enums by name or pattern. Filter results by symbol kind, file type, path, and glob pattern.
Instructions
Find code symbols (functions, classes, interfaces, methods, types, variables, structs, enums) across the codebase. Automatically selects best available engine: Universal Ctags -> ast-grep -> ripgrep regex heuristic.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Symbol name or substring pattern to find (leave empty to list all symbols in target path) | |
| path | No | File or directory to search symbols in. Accepts relative or absolute paths (default: '.') | . |
| kinds | No | Filter by symbol kinds: 'function', 'class', 'interface', 'method', 'variable', 'type', 'struct', 'enum', 'trait', 'module' | |
| fileType | No | File type filter, e.g. 'ts', 'py', 'rust', 'go' | |
| noIgnore | No | Whether to search inside gitignored files | |
| exactMatch | No | If true, only match exact symbol name. If false (default), matches prefix or substring | |
| maxResults | No | Maximum number of symbols to return (default: 100) | |
| filePattern | No | Glob pattern to filter files, e.g. '*.ts' or '*.py' | |
| outputFormat | No | Output format: 'table' (default markdown table), 'json', or 'compact' (file:line: [kind] name) | table |
| excludePattern | No | Glob pattern to exclude, e.g. '**/node_modules/**', '**/dist/**' |