xbsl
Инструментарий XBSL (1С:Элемент): линтер, LSP, документация, индекс проекта, скаффолдинг метаданных
What it is and what it does
XBSL is a development toolkit for 1C:Element projects that operates on `.yaml` (element description) and `.xbsl` (code module) file pairs before server-side compilation. It provides a linter with 153 rules organized in four tiers—structure and schema validation, text and typography conventions, code structure analysis, and semantic verification against platform data—plus autofixes for mechanical issues like trailing whitespace and mixed newlines.
Beyond linting, XBSL offers metadata scaffolding to generate objects, attributes, routes, and forms without hand-writing YAML; an LSP server for editor integration (with a VS Code extension available); an MCP server for AI agent integration; documentation search over your distribution's reference; code templates; and CI integration with support for multiple output formats. The same core engine powers all four surfaces—CLI, LSP, MCP, and web UI—so every tool sees the same rules and data. A baseline mechanism lets you adopt rules on legacy codebases by freezing current findings and holding only new code to the rule.
Use it for:
- Run local linting on 1C:Element projects before deploy to catch issues the server-side compiler misses.
- Generate and scaffold metadata objects, attributes, and forms from the command line without manual YAML editing.
- Integrate linting into CI/CD pipelines with exit codes and multiple output formats (text, JSON, CodeClimate).
- Use the VS Code extension for live diagnostics, go-to-definition, completion, and a form designer in your editor.
- Connect an AI agent to the MCP server to lint and create metadata objects in a single round trip.
- Adopt linting rules incrementally on legacy codebases using baseline snapshots to freeze existing findings.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
XBSL is a linter, LSP server, and metadata scaffolding toolkit for 1C:Element projects, providing static analysis, autofixes, and code generation for `.yaml` and `.xbsl` file pairs.
Yes, if you work with 1C:Element projects. XBSL is actively maintained, has no security vulnerabilities, low install friction, and a permissive MIT license. The toolkit is genuinely useful for catching issues before deploy and automating metadata scaffolding. The main prerequisite is extracting language data from your 1C:Element distribution; after that, it integrates smoothly into editors, CI, and AI workflows. Start with the linter and baseline if you have legacy code.
Install
xbsl on PyPI
pip
pip install xbsluv
uv add xbslpoetry
poetry add xbslInstalling xbsl
Before you install
Low install friction with a single runtime dependency (PyYAML). Active maintenance with a release on 2026-08-14 and recent repository activity. Requires Python 3.10 or later and an initial setup step to extract language data from your 1C:Element distribution before linting can begin.
License in practice
MIT license permits commercial and private use with minimal restrictions; you may use, modify, and distribute the package freely provided you include the license notice.
Quickstart
pip install xbsl
xbsl extract --dist ""
xbsl path/to/sources
Requires Python 3.10 or later. Language data must be extracted from your 1C:Element distribution before linting; the `xbsl extract --dist` command auto-detects your platform version and populates the data directory.
Verify before relying
- Whether the package works with all current 1C:Element versions or only specific releases.
- Performance characteristics when linting large projects or running in CI pipelines.
- Whether the MCP server integration with Claude is production-ready or still experimental.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — PyYAML |
| Maintenance | actively maintained — 0 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 92,782/month — #13,425 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: xbsl-0.66.0-py3-none-any.whl
Keywords: 1c, 1c-element, xbsl, linter, lsp, scaffolding, static-analysis
Tags
More Quality Assurance packages
Coverage.py measures which lines of Python code…
permissive · top 1,000 on PyPI
ruffRuff is a Python linter and code formatter…
permissive · top 1,000 on PyPI
pexpectPexpect spawns and controls interactive console…
permissive · top 1,000 on PyPI
blackBlack reformats Python source code to a…
permissive · top 1,000 on PyPI
pytest-xdistpytest-xdist distributes pytest tests across…
permissive · top 1,000 on PyPI
cfn-lintValidates AWS CloudFormation templates in YAML…
permissive · top 1,000 on PyPI
taploTaplo is a TOML v1.0.0 toolkit that provides…
permissive · top 15,000 on PyPI
rumdlA Rust-based Markdown linter and formatter that…
permissive · top 5,000 on PyPI
tclinttclint is a CLI linter, formatter, and language…
permissive · top 15,000 on PyPI
esbonioA Language Server Protocol implementation for…
permissive · top 15,000 on PyPI
skylosSkylos is a local-first static analysis CLI…
permissive · top 15,000 on PyPI
njsscannjsscan is a static application security…
copyleft · top 15,000 on PyPI
rstcheck-coreValidates reStructuredText syntax and checks…
permissive · top 5,000 on PyPI
yamllintyamllint checks YAML files for syntax errors,…
copyleft · top 1,000 on PyPI
python-lsp-ruffIntegrates ruff's linting, formatting, and…
permissive · top 15,000 on PyPI
skillsawA linter for AI agent instruction files that…
permissive · top 15,000 on PyPI