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:
For the complete package including MCP:
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¶
.bsland.ossource files;- Designer configuration exports;
- projects configured with
onec-hbk-bsl.toml; - Python 3.12, 3.13, and 3.14.