Installation
From Visual Studio Marketplace
Applicable for: VSCodeExtension on: Marketplace
- In the editor, open the Command Palette with Ctrl+Shift+P (or ⌘+⇧+P on macOS)
- Type and select
Extensions: Install Extensions - Search for
TON - Select the official extension from TON Core and click Install

From Open VSX Registry
Applicable for: VSCodium, Cursor, Windsurf, and other VSCodium-based editorsExtension in: Registry Installation steps are identical to the VSCode setup. Additionally, one can download the exact extension version from the Open VSX Registry and then proceed with installation from disk.
From disk
Applicable for: any VSCodium-based editorVSIX file: latest GitHub release To manually install the extension:
- Download the
.vsix-packaged plugin archive from the latest GitHub release or from the exact version in the registry - In the editor, open the Command Palette with Ctrl+Shift+P (or ⌘+⇧+P on macOS)
- Type and select
Extensions: Install from VSIX... - Browse and select the downloaded
.vsixfile
To install the extension using CLI, specify the editor executable and the
--install-extension command-line switch, followed by the path to a .vsix file:Features and language support
Extension provides support for TON Blockchain languages and tools in VSCode and VSCode-based editors: from syntax highlighting to on-the-fly inspections and toolchain management.Tolk
Recommended language for TON smart contract development
FunC
Legacy TON smart contract programming language
Fift
Low-level stack-based language with deep TVM integration
TL-B
Cell-based data serialization and markup language
TON Assembly (TASM)
Textual TVM bitcode assembly language and corresponding (dis)assembler
Integrations
Work with Blueprint projects, Sandbox TON emulator, and other popular tools for TON development
Tolk
File extension:.tolk

Tolk support includes:
- Semantic syntax highlighting
- Code completion with auto import, postfix completion, snippets, imports completion
- Go to definition, type definition
- Find all references, workspace symbol search, symbol renaming
- Automatic import updates when renaming and moving files
- Types and documentation on hover
- Various inlay hints, including hints for types and parameter names.
- On-the-fly inspections with quick fixes
- Signature help inside calls
- Build, test, and debug Blueprint-based projects
- Flexible toolchain management
FunC
File extensions:.fc, .func

FunC support includes:
- Semantic syntax highlighting
- Code completion, imports completion
- Go to definition
- Find all references, workspace symbol search, symbol renaming
- Automatic import updates when renaming and moving files
- Types and documentation on hover
- Inlay hints for method IDs
- On-the-fly inspections
- Build, test, and debug Blueprint-based projects
Fift
File extensions:.fif, .fift


Fift support includes:
- Basic and semantic syntax highlighting
- Go-to definition
- Inlay hints with instruction gas consumption
- Hover documentation for instructions
TL-B
File extension:.tlb

TL-B support includes:
- Basic and semantic syntax highlighting
- Go-to definition
- Completion for fields, parameters, and types
- Go-to references for types
- Hover documentation for declarations
TASM
File extensions:.tasm— textual bitcode assembly.boc— serialized binary smart contract code

TON Assembly (TASM) support includes:
- Basic syntax highlighting
- Go-to definition
- Inlay hints with instruction gas consumption
- Hover documentation for instructions
- Code completion for instructions
- Automatic BoC disassembly with syntax highlighting
- Automatic updates on changes in BoC
Integrations
The extension integrates with:- Sandbox — Local TON emulator used to test smart contracts
- Blueprint — a popular development environment for TON smart contract development
Sandbox
There is a graphical interface for local TON Blockchain emulation testing. By using it in Blueprint-based projects or any projects that use Sandbox (@ton/sandbox) for contract emulation, one can:
- Deploy contracts directly from source code
- Send internal and external messages
- Execute get-methods
- Inspect all transactions and messages
- Inspect storage and balances in real time
- Rollback to previous states and export or import various scenarios
Usage
- Customize the default config by setting various options
- Utilize commands from the Command Palette
Configuration options
This extension provides a wide range of options configurable in the settings editor.General
Path to Tolk standard library. If empty, will try to find in
node_modules.Toolchain
Configured Tolk toolchains. Each key serves as a unique identifier for the toolchain, which is an object with the following properties:
"name"(required) — Display name for the toolchain"path"(required) — Path to the Tolk compiler executable"description"— Optional description for the toolchain
Name of the active Tolk toolchain to use. The
"auto" is a default toolchain that is automatically detected in node_modules/.Whether to add a short commit hash after Tolk version in the status bar.
Editor → Hints
Tolk: Disable all inlay hints.
Tolk: Show type hints for variables and expressions.
Tolk: Show parameter name hints in function calls.
Tolk: Show method ID hints for get methods.
Tolk: Show computed values for constants.
FunC: Disable all inlay hints.
FunC: Show method ID hints for functions with
method_id.FunC: Show type hints for constants without explicit type.
Editor → Completion
Tolk: Sort completion items by relevance to the current context type.
Tolk: Automatically add necessary imports for symbols from other files.
Editor → Inspections
Tolk: List of disabled code inspections. All available inspections are enabled by default:
"unused-parameter""unused-type-parameter""unused-variable""unused-top-level-declaration""unused-import""deprecated-symbol-usage""struct-initialization""cannot-reassign""need-not-null-unwrapping""missed-semicolon""call-arguments-count-mismatch"
FunC: List of disabled code inspections. All available inspections are enabled by default:
"unused-parameter""unused-type-parameter""unused-variable""unused-import"
Editor → Find Usages
Tolk: Where to search when using “Find Usages”. Allowed values:
"workspace"(default) — Search only in workspace files"everywhere"— Search everywhere, including the standard library
Fift
Show gas consumption hints for Fift instructions.
Enable/disable semantic highlighting for Fift files.
BoC
Automatically open decompiled Fift assembly when opening BoC files (with
.boc extension).Formatter
Use experimental Tolk formatter.
Sort imports on format.
Sandbox
Port of the TON Sandbox server.
Path to the TON Sandbox server binary.
Command Palette
The Ctrl+Shift+P on Windows and Linux (and ⌘+⇧+P on macOS) brings up the Command Palette. This plugin provides a number of custom commands available for launch from the palette.General
TON: Open decompiled BoC fileTON: Decompile BoC to TON Assembly fileTON: Debug contract
Tolk
Tolk: Build projectTolk: Get type at positionTolk: Get contract ABITolk: Get documentation at positionTolk: Get scope informationTolk: Get unresolved identifiersTolk: Show toolchain informationTolk: Select active toolchain— modifies the configTolk: Add new toolchain— modifies the configTolk: Remove toolchain— modifies the configTolk: Manage toolchains— modifies the config
Sandbox
Work everywhere:TON: Install TON Sandbox Server— modifies the configTON: Start TON Sandbox ServerTON: Stop TON Sandbox ServerTON: Open Sandbox Terminal
TON: RefreshTON: Refresh historyTON: Import historyTON: Export historyTON: Reset historyTON: Delete message templateTON: Copy contract ABITON: Copy address