Solidity smart contract visualization with automatic call graph and sequence diagram generation.
Install directly from the VS Code Marketplace or search for "Traverse Solidity Analyzer" in VS Code Extensions.
code --install-extension traverse-vscode-0.1.6.vsixOn first activation, the extension will prompt you to download the Traverse LSP server binary for your platform. The binary is downloaded from GitHub releases and stored in VS Code's global storage.
Supported Platforms:
- macOS (Intel & Apple Silicon)
- Linux (x64 & ARM64)
- Windows (x64)
You can also manually download the server using:
- Command Palette:
Traverse: Download Language Server - Or set a custom path in settings:
traverse-lsp.serverPath
- Open a Solidity project
- Right-click any folder → Select "Traverse" commands
- The extension automatically finds your project root and analyzes all contracts
- Results are saved to
traverse-output/in your project root
Note: Commands always analyze the entire project from the root, regardless of which folder you right-click. The extension automatically detects your project root by looking for common configuration files (foundry.toml, hardhat.config.js, package.json, etc.).
Available Commands (Cmd+Shift+P):
Generate Call Graph- Visualize function relationshipsGenerate Sequence Diagram- Show execution flowGenerate Storage Analysis- Map storage variables and access patternsGenerate All Analyses- Run all analyses at onceToggle Chunking- Enable/disable output chunking for large codebases
This extension downloads the Traverse LSP server binary from GitHub releases on first use. The binary is:
- Downloaded over HTTPS from the official GitHub repository
- Stored in VS Code's secure global storage directory
- Made executable only for the current user
- Never executed with elevated privileges
You can inspect the source code at: https://github.com/calltrace/traverse-lsp
Generates DOT format graphs showing all function calls and relationships.
Creates Mermaid sequence diagrams for contract interactions.
Generates a detailed Markdown report of all storage variables and their access patterns across functions.
The extension can be configured through VS Code settings:
traverse-lsp.enableChunking(default:false) - Enable chunking of large analysis outputs for better handling of big codebasestraverse-lsp.serverPath- Custom path to the Traverse LSP server executabletraverse-lsp.trace.server- Enable server communication tracing for debuggingtraverse-lsp.maxNumberOfProblems- Maximum number of problems to report
- Limited support for complex inheritance and Solidity 0.8+ features
- Performance issues with large codebases (>100 contracts)
- Cross-file references are experimental
Extension not activating?
- Ensure you have
.solfiles in your workspace - Check Output panel → "Traverse LSP" for errors
No diagrams generated?
- Verify Solidity syntax is valid
- Check
traverse-output/folder in workspace
Server crashes?
- Run
Traverse: Restart Language Serverfrom command palette
Report issues: https://github.com/calltrace/traverse-vscode/issues Include: VS Code version, extension version, sample code, error messages
