Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/ton-blockchain/acton/llms.txt

Use this file to discover all available pages before exploring further.

Acton ships with first-class IDE integrations for both VS Code-based editors and JetBrains IDEs. Both integrations surface the same Acton capabilities — syntax highlighting, code completion, inline lint diagnostics with quick fixes, a native test runner, and source-level debugging — inside the editor’s familiar UI. This guide covers installation and configuration for each environment.

VS Code and VS Code-based editors

The TON extension for VS Code supports Acton development across all VS Code-compatible editors:
  • Visual Studio Code
  • Cursor
  • Windsurf
  • VSCodium
  • Other VS Code-based editors

Installing the TON extension

1
Open the Extensions panel
2
Press Ctrl+Shift+X (or Cmd+Shift+X on macOS) to open the Extensions panel.
3
Search and install
4
Search for TON and install the extension published by ton-core. Alternatively, install from the command line:
5
code --install-extension ton-core.vscode-ton
7
Install the Even Better TOML extension for rich Acton.toml editing. It enables TOML syntax highlighting while the TON language server provides Acton-specific schema completion and hover documentation for every field.
8
code --install-extension tamasfe.even-better-toml
9
Reload and open a project
10
Reload VS Code and open an Acton project folder. The extension activates automatically when it detects an Acton.toml file.

VS Code features

Acton.toml code lenses

Run builds, tests, and scripts directly from Acton.toml via inline code-lens buttons — no terminal required.

Contract actions

Build contracts and generate Tolk or TypeScript wrappers via code lenses in contract .tolk files.

Disassembly view

Open an assembly preview for any compiled Tolk contract to inspect the generated TVM code without leaving the editor.

Native test runner

Acton tests integrate with VS Code’s native test runner, showing a hierarchical test tree, pass/fail indicators, and per-test output.

Failure analysis

When a test fails, the extension highlights the exact expect call that caused the failure and updates the test icon.

Source-level debugging

Set breakpoints in Tolk tests and contracts, start debugging from the editor, and inspect stack frames, local values, and TVM registers.

Code coverage

Coverage results appear in the editor gutter and file tree after a coverage run, showing which contract lines were executed.

Inline lint diagnostics

The extension runs acton check for Tolk files and reports diagnostics directly in the editor. Available quick fixes can be applied from the Problems panel or the inline quick-fix menu.

VS Code settings

The extension respects [fmt] and [lint] settings from Acton.toml automatically. For editor-level preferences, add the following to your workspace .vscode/settings.json:
.vscode/settings.json
{
  // Format Tolk files on save
  "[tolk]": {
    "editor.formatOnSave": true,
    "editor.defaultFormatter": "ton-core.vscode-ton"
  },

  // Show lint diagnostics as you type
  "ton.lint.enable": true,

  // Custom debug port (matches --debug-port in acton test)
  "ton.debug.port": 12345
}

Starting a debug session from VS Code

The extension registers the tolk DAP type. To attach the debugger to a running Acton command, create .vscode/launch.json:
.vscode/launch.json
{
  "version": "0.2.0",
  "configurations": [
    {
      "type": "tolk",
      "request": "launch",
      "name": "Attach to Acton debugger",
      "debugServer": 12345
    }
  ]
}
Then start the test or script with --debug in a terminal, and press F5 in VS Code:
acton test tests/counter.test.tolk --filter "deploy" --debug --debug-port 12345
For the full debugger reference, see the debugging guide.

Wallet management in VS Code

The Wallets View in the extension sidebar lets you generate wallets, import them from a mnemonic, track balances, and request testnet TON — all without leaving the editor. TON addresses printed in the Acton terminal output are automatically converted into clickable links that open the configured block explorer in the browser.

JetBrains IDEs

The TON plugin for JetBrains IDEs supports Acton development in IntelliJ IDEA, WebStorm, GoLand, PyCharm, CLion, and all other JetBrains 2025.2+ IDEs.

Installing the TON plugin

1
Open the Plugins settings
2
Go to Settings → Plugins → Marketplace and search for TON.
3
Install the TON plugin
4
Install the plugin published by JetBrains (or the TON community). Restart the IDE when prompted.
5
Install the TOML plugin
6
Install the JetBrains TOML plugin as well. Acton project configuration relies on TOML support, and the TON plugin works correctly only when TOML files are handled by the IDE.
7
Search for TOML in the Marketplace and install it.
8
Open an Acton project
9
Open the folder containing Acton.toml. The plugin detects the project and adds run configurations automatically.

JetBrains features

New project wizard

Create new Acton projects from the IDE’s New Project dialog with a guided GUI for acton new.

Run configurations

The plugin automatically adds run configurations for builds and tests when opening a project. Specialized configuration UIs exist for build and test commands.

Gutter icons for Acton.toml

Run builds, tests, and scripts directly from gutter icons in Acton.toml.

Acton.toml navigation

Full autocompletion, validation, and hover documentation for every field in Acton.toml. Click contract paths to navigate to source files.

Contract management

Create new Tolk contracts via wizard with automatic Acton.toml registration. The plugin also suggests registering copied contracts.

Code completion

Autocompletion for contract names in build(), wallet names in scripts.wallet(), and get-method names in net.runGetMethod().

Native test runner

Tests integrate with the JetBrains test runner UI with hierarchical view and progress indicators.

Source-level debugging

Set breakpoints in Tolk files, start debugging from the IDE, and inspect stack frames, locals, and TVM registers.

Code coverage and linting

After a coverage run, results appear in the editor gutter and file explorer tree. The linter runs in the background and reports diagnostics with automatic fixes in the Problems panel.

Toolchain updates

The plugin checks for new Acton versions and shows a notification in the IDE when an update is available, so your installed toolchain stays current.

Wallet management in JetBrains

The Wallets View provides wallet generation, mnemonic import, balance tracking, and testnet TON requests directly from the IDE sidebar.

Build docs developers (and LLMs) love