Language Support
Lexa has two parsing tiers: tree-sitter (full symbol + import extraction) and lightweight (regex-based, symbol-level only). All 33 supported languages get outline, search, and safe-edit coverage; tree-sitter languages additionally get precise imports and dependency resolution.
Tree-sitter (full)
- Zig
- Python
- Rust
- TypeScript
- JavaScript
- Go
- C
- C++
- Java
- Ruby
- PHP
Lightweight (symbol-level)
- HCL, R, Markdown, JSON, TOML, YAML
- Dart, Kotlin, Swift
- Svelte, Vue, Astro
- shell, CSS, SCSS, SQL
- protobuf, Fortran, LLVM IR, MLIR, TableGen
Assets and binaries
Binary assets (PNG, SVG, fonts, etc.) are skipped from indexing by the
walker. lexa read returns a metadata stub for known binary assets instead
of "missing" so that agents can follow asset paths without crashing.
Filter by language
lexa files apps/desktop --language typescript
lexa brief "createProjectAgent" --language rustThe Language enum and detect_language(path) helper live in src/types.rs.
