skillfed

xbsl

Инструментарий XBSL (1С:Элемент): линтер, LSP, документация, индекс проекта, скаффолдинг метаданных

xbsl v0.66.0 92.8K downloads/30d#13,425 on PyPI1
Permissive license MIT Active released

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 xbsl

uv

uv add xbsl

poetry

poetry add xbsl

Installing 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

Development Status :: 4 - BetaNatural Language :: RussianOperating System :: OS IndependentProgramming Language :: Python :: 3Topic :: Software Development :: Quality Assurance

Tags

1c element linterxbsl static analysis1c code qualitylsp server 1cmetadata scaffolding 1c1c element toolingxbsl linting
1c-elementlsp-servermetadata-generation

More Quality Assurance packages