> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lukan.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Symbol Index

> Intelligent code navigation and symbol lookup.

Symbol Index is an intelligent code navigation system that indexes TypeScript/JavaScript/Python symbols for instant lookup.

## Features

* **Persistent index** - Per-project index stored at `~/.config/lukan/indexes/`
* **Automatic initialization** - Lazy, non-blocking startup
* **Incremental updates** - Git status + mtime detection
* **Auto-refresh** - Updates after file modifications
* **TypeScript AST parsing** - Accurate symbol extraction

## FindSymbol Tool

```
FindSymbol({ name: "sendEmail", kind: "function", exported_only: true })
-> src/tools/email.ts:245-280
```

### Parameters

| Parameter       | Type    | Description                                                                        |
| --------------- | ------- | ---------------------------------------------------------------------------------- |
| `name`          | string  | Symbol name to search                                                              |
| `kind`          | string  | Filter by type: `function`, `class`, `method`, `interface`, `type`, `const`, `any` |
| `exported_only` | boolean | Only show exported symbols (default: false)                                        |

### Usage in Tools

For files >300 lines, the `ReadFile` tool suggests using FindSymbol instead to locate specific code faster:

```
ReadFile({ file_path: "src/tools/email.ts", offset: 244, limit: 36 })
```

The tool returns the exact location (file:line-endLine) so you can read just the relevant section.
