Skip to content

Toolkit

The Toolkit is distributed as Python packages and the standalone onec-hbk-bsl executable. It supports local checks, CI, editor integrations, and local agents.

Installation

For the CLI, formatter, and Language Server:

pip install onec-hbk-bsl-core

For the complete package including MCP:

pip install onec-hbk-bsl

Python 3.12+ is required. Standalone macOS, Linux, and Windows binaries are also published in GitHub Releases.

Main commands

Task Command
Check a project onec-hbk-bsl check .
Apply safe fixes onec-hbk-bsl check . --fix
Format files onec-hbk-bsl format .
List rules onec-hbk-bsl rules
Create a configuration onec-hbk-bsl init
Start the Language Server onec-hbk-bsl lsp
Start the local MCP server onec-hbk-bsl mcp
Inspect the index onec-hbk-bsl index --status

Run onec-hbk-bsl <command> --help for the complete option list.

Project configuration

Create onec-hbk-bsl.toml in the project root:

select = ["BSL012", "BSL236"]
ignore = ["BSL002"]
exclude = ["vendor", "*.gen.bsl"]

[per-file-ignores]
"legacy/*.bsl" = ["BSL011"]

Both BSL### codes and compatible aliases are accepted by select and ignore. Rule-specific suppression forms are documented in the diagnostic catalog.

Reports and CI

onec-hbk-bsl check . --format sarif > onec-hbk-bsl.sarif
onec-hbk-bsl check . --jobs 4
onec-hbk-bsl check . --baseline baseline.json
onec-hbk-bsl check . --diff --since origin/main

The supported formats are text, json, and sarif. Baselines, diff checks, and --exit-zero help with gradual adoption.

Language Server and MCP

The Language Server provides diagnostics, formatting, definition, references, rename, hover, completion, signature help, folding, code actions, inlay hints, and semantic tokens. It is normally started by the VS Code / Cursor extension.

The local MCP server exposes diagnostics, navigation, and safe rename plans to agents within the configured workspace. Use it only with trusted local clients.

Supported inputs

  • .bsl and .os source files;
  • Designer configuration exports;
  • projects configured with onec-hbk-bsl.toml;
  • Python 3.12, 3.13, and 3.14.