Skip to content

[Feature]: Support custom file extensions in config #180

@dbolotin

Description

@dbolotin

Problem Statement

grepai hardcodes supported file extensions in indexer/scanner.go. Files with unrecognized extensions are silently skipped — no chunking, no embedding, no search results.

Our workspace (milaboratory/platforma) uses Tengo (.tengo), a Go-like scripting language, for 292 workflow files across 40+ blocks. These files contain core business logic — but grepai can't see them at all.

Per-language issues (#69, #128, #155) work for common languages but don't scale for niche ones — each requires a source change and a new release.

Proposed Solution

A custom_extensions field in .grepai/config.yaml would solve this for everyone:

chunking:
  custom_extensions:
    - .tengo
    - .prisma

Files matching these extensions would pass the scanner's extension check and follow the standard chunking/embedding pipeline. Binary detection already guards against non-text files, so this should be safe.

Other languages that would benefit: Prisma (.prisma), Starlark (.star), Jsonnet (.jsonnet), Nix (.nix).

Alternatives Considered

No response

Category

Search / Indexing

Additional Context

Really appreciate this tool — it's the only local semantic search that actually delivers. This would make it work for polyglot codebases too.

Contribution

  • I would be willing to contribute this feature

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions