travsr lang
Install and manage per-language semantic analysis tools: plugins that add call edges, type resolution, and cross-module references on top of the always-on Tree-sitter structural parsing.
How language analysis works
Language tool tiers
Subcommands
| Subcommand | Description |
|---|---|
travsr lang list | List all available language tools and their status |
travsr lang detect | Detect which languages are used in the current repo |
travsr lang install <lang> | Download and register a language tool |
travsr lang approve <lang> | Pre-approve an elevated language (for CI / non-interactive use) |
travsr lang list
travsr lang list [--json]
Prints a table of all languages, their package, sandbox level, and current install status:
LANGUAGE PACKAGE SANDBOX STATUS
--------------------------------------------------------------------------------
typescript built-in Standard ✓ active
javascript built-in Standard ✓ active
rust built-in Standard ✓ active
python built-in Standard ✓ active
go @travsr-plugin/go Standard not installed
ruby @travsr-plugin/ruby Standard not installed
java @travsr-plugin/java Elevated not installed
kotlin @travsr-plugin/kotlin Elevated not installed
csharp @travsr-plugin/csharp Elevated not installed
scala @travsr-plugin/scala Elevated not installed
travsr lang detect
travsr lang detect
Scans the current repository for recognised file extensions and prints a numbered list of detected languages with their install status. Then prompts which ones to install:
Detected languages in this repo:
[1] java (.java) - not installed
[2] python (.py) - ✓ active (built-in)
[3] go (.go) - not installed
Which to install? (numbers separated by commas, 'a' for all, 'q' to quit):
travsr lang install
travsr lang install <language> [--reinstall] [--yes]
Downloads the underlying SCIP binary (if needed) and registers the language tool for use during indexing.
travsr lang install go
# Installing scip-go v0.3.5...
# ✓ scip-go installed to /usr/local/bin/scip-go
For elevated languages (Java, Kotlin, C#, Scala), the tool needs network access during indexing to download build dependencies. travsr lang install will prompt interactively for:
'java' needs network access during indexing to resolve dependencies.
Approver's GitHub handle: your-handle
One-sentence justification: resolve maven deps for SCIP indexing
Permitted hosts (comma-separated) [repo1.maven.org,repo.maven.apache.org,plugins.gradle.org]:
Flags
| Flag | Description |
|---|---|
--reinstall | Force reinstall even if the tool is already registered |
--yes | Accept all defaults without prompting (elevated languages still require prior lang approve) |
travsr lang approve
travsr lang approve <language> \
--approved-by <github-handle> \
--reason "<justification>" \
--permitted-hosts <host1,host2,...>
Records security approval for an elevated language without interactive prompts. Use this in CI pipelines or provisioning scripts before running travsr lang install.
travsr lang approve java \
--approved-by alice \
--reason "resolve maven deps for SCIP indexing" \
--permitted-hosts repo1.maven.org,repo.maven.apache.org,plugins.gradle.org
travsr lang install java --yes
Default permitted hosts
| Language | Default hosts |
|---|---|
| Java / Kotlin | repo1.maven.org, repo.maven.apache.org, plugins.gradle.org |
| C# | api.nuget.org, nuget.org |
| Scala | repo1.maven.org, repo.maven.apache.org |
VS Code
The Languages panel in the VS Code sidebar shows the same information with one-click Install buttons for standard languages and a Grant access disclosure for elevated ones. See Languages Panel.