npx skills add ...
npx skills add yoanbernabeu/grepai-skills --skill grepai-languages
Supported programming languages in GrepAI. Use this skill to understand which languages can be indexed and traced.
npx skills add yoanbernabeu/grepai-skills --skill grepai-languages
This skill covers the programming languages supported by GrepAI for indexing and call graph analysis.
GrepAI supports indexing for all text-based files, but has enhanced support for specific programming languages.
| Language | Extensions | Index | Trace |
|---|---|---|---|
| Go | .go | ✅ | ✅ |
| JavaScript | .js, .jsx | ✅ | ✅ |
| TypeScript | .ts, .tsx | ✅ | ✅ |
| Python | .py | ✅ | ✅ |
| PHP | .php | ✅ | ✅ |
| C | .c, .h | ✅ | ✅ |
| C++ | .cpp, .hpp, .cc, .cxx, .hh | ✅ | ✅ |
| Rust | .rs | ✅ | ✅ |
| Zig | .zig | ✅ | ✅ |
| C# | .cs | ✅ | ✅ |
| Java | .java | ✅ | ✅ |
| Pascal/Delphi | .pas, .dpr | ✅ | ✅ |
| Language | Extensions | Index | Trace |
|---|---|---|---|
| Ruby | .rb | ✅ | ❌ |
| Swift | .swift | ✅ | ❌ |
| Kotlin | .kt, .kts | ✅ | ❌ |
| Scala | .scala | ✅ | ❌ |
| Lua | .lua | ✅ | ❌ |
| Shell | .sh, .bash, .zsh | ✅ | ❌ |
| SQL | .sql | ✅ | ❌ |
| HTML | .html, .htm | ✅ | ❌ |
| CSS | .css, .scss, .less | ✅ | ❌ |
| Markdown | .md, .mdx | ✅ | ❌ |
| YAML | .yaml, .yml | ✅ | ❌ |
| JSON | .json | ✅ | ❌ |
| TOML | .toml | ✅ | ❌ |
| XML | .xml | ✅ | ❌ |
Trace accuracy: Excellent. Go's explicit syntax makes tracing very reliable.
Trace accuracy: Good. Some dynamic patterns may be missed.
Trace accuracy: Good. Dynamic imports and decorators may be missed.
Trace accuracy: Good. Macros and templates may affect accuracy.
Trace accuracy: Excellent. Rust's explicit syntax aids accurate tracing.
Trace accuracy: Good. Magic methods may not be fully traced.
Trace accuracy: Good. Reflection-based calls may be missed.
Trace accuracy: Good. Delegates and events may be partially traced.
For projects with multiple languages:
| Language | Fast Mode | Precise Mode |
|---|---|---|
| Go | ✅ | ✅ |
| JavaScript | ✅ | ✅ |
| TypeScript | ✅ | ✅ |
| Python | ✅ | ✅ |
| PHP | ✅ | ✅ |
| C/C++ | ✅ | ✅ |
| Rust | ✅ | ✅ |
| Zig | ✅ | ✅ |
| C# | ✅ | ✅ |
| Java | ✅ | ✅ |
| Pascal | ✅ | ⚠️ Limited |
If you have non-standard extensions, they'll be indexed but not traced:
GrepAI uses file extensions for detection. It does NOT use:
#!/usr/bin/env python)These languages can be indexed for semantic search but don't have trace support:
Workaround: Use semantic search to find code, then manually trace.
❌ Problem: Files not being indexed ✅ Solution: Check file isn't in ignore patterns
❌ Problem: Trace missing for language
✅ Solution: Ensure language is in enabled_languages
❌ Problem: Wrong language detected ✅ Solution: GrepAI uses extensions only; rename files if needed
Language support summary: