Installation
Travsr ships as a single binary. Pick the method that fits your setup.
npm (recommended)
Requires Node.js ≥ 18.
npm install -g @travsr.com/travsr
Verify:
travsr --version
To update:
npm update -g @travsr.com/travsr
Pre-built binary
Download the latest release from GitHub:
# macOS (Apple Silicon)
curl -L https://github.com/Travsr-com/travsr/releases/latest/download/travsr-aarch64-apple-darwin.tar.gz | tar xz
sudo mv travsr /usr/local/bin/
# macOS (Intel)
curl -L https://github.com/Travsr-com/travsr/releases/latest/download/travsr-x86_64-apple-darwin.tar.gz | tar xz
sudo mv travsr /usr/local/bin/
# Linux (x86_64)
curl -L https://github.com/Travsr-com/travsr/releases/latest/download/travsr-x86_64-unknown-linux-musl.tar.gz | tar xz
sudo mv travsr /usr/local/bin/
# Linux (ARM64)
curl -L https://github.com/Travsr-com/travsr/releases/latest/download/travsr-aarch64-unknown-linux-musl.tar.gz | tar xz
sudo mv travsr /usr/local/bin/
Binaries are statically linked (musl on Linux) and have no runtime dependencies.
Build from source
Requires Rust ≥ 1.78 (edition 2021).
git clone https://github.com/Travsr-com/travsr.git
cd travsr
cargo build --release --bin travsr
sudo cp target/release/travsr /usr/local/bin/
For development (faster incremental builds):
cargo install --path crates/travsr-cli
Language packages
Travsr has two analysis layers:
- Structural analysis is built into the core binary. It parses your code with Tree-sitter and gives you class, function, method, and import nodes for every supported language. It is always on and needs no extra install.
- Semantic analysis adds deep call edges, type resolution, and cross-module references via external LSIF/SCIP tools. It is opt-in per language and per repository.
Rust, TypeScript, JavaScript, and Python have semantic analysis built into the core binary and run automatically. More languages install as separate packages:
# See what languages are in your repo
travsr lang detect
# Install a specific language tool
travsr lang install go
travsr lang install ruby
travsr lang install php
travsr lang install cpp
travsr lang install c
travsr lang install swift
travsr lang install objectivec # macOS only (libclang-based)
travsr lang install dart
# JVM and .NET languages need network access to fetch build dependencies.
# travsr lang install will prompt for approval interactively.
travsr lang install java
travsr lang install kotlin
travsr lang install csharp
travsr lang install scala
| Language | Package | Sandbox | Underlying tool |
|---|---|---|---|
| TypeScript / JavaScript | built-in | Standard | travsr-lsif-ts |
| Rust | built-in | Standard | rust-analyzer |
| Python | built-in | Standard | scip-python (optional upgrade) |
| Go | @travsr-plugin/go | Standard | scip-go |
| Ruby | @travsr-plugin/ruby | Standard | scip-ruby |
| PHP | @travsr-plugin/php | Standard | scip-php |
| Swift | @travsr-plugin/swift | Standard | travsr-swift-index-emitter |
| Objective-C | @travsr-plugin/objectivec | Standard (macOS only) | travsr-lang-objectivec |
| C++ | @travsr-plugin/cpp | Standard | scip-clang |
| C | @travsr-plugin/c | Standard | scip-clang |
| Dart | @travsr-plugin/dart | Standard | travsr-dart-index-emitter |
| Java | @travsr-plugin/java | Elevated | scip-java |
| Kotlin | @travsr-plugin/kotlin | Elevated | kotlin-language-server |
| C# | @travsr-plugin/csharp | Elevated | scip-dotnet |
| Scala | @travsr-plugin/scala | Elevated | sbt + scip-scala |
Trust model
Language tools run in a sandboxed subprocess. There are two sandbox classes:
- Standard (TypeScript, JavaScript, Rust, Python, Go, Ruby, PHP, Swift, Objective-C, C, C++, Dart): no network access and no dependency downloads.
- Elevated (Java, Kotlin, C#, Scala): the build tool (Maven, Gradle, NuGet, sbt) downloads dependencies at analysis time.
travsr lang installprompts for an approver's GitHub handle, a one-sentence justification, and the permitted network hosts before proceeding.
For CI or scripting, record approval non-interactively first:
travsr lang approve java \
--approved-by your-github-handle \
--reason "resolve maven deps for SCIP indexing" \
--permitted-hosts repo1.maven.org,repo.maven.apache.org,plugins.gradle.org
travsr lang install java
Supported platforms
| Platform | npm | binary |
|---|---|---|
| macOS arm64 (Apple Silicon) | ✓ | ✓ |
| macOS x86_64 (Intel) | ✓ | ✓ |
| Linux x86_64 | ✓ | ✓ |
| Linux ARM64 | ✓ | ✓ |
| Windows x86_64 | ✓ | ✓ |
VS Code extension
Install via the command palette (Ctrl+P / Cmd+P):
ext install travsr.travsr-vscode
Or from the VS Code Marketplace or Open VSX (VSCodium and compatible editors).
The extension auto-detects whether the travsr binary is present and offers to install it for you.