Releases: BESSER-PEARL/BESSER-Skills
Release list
v0.3.0
Full coverage of every B-UML DSL and generator, deeper class-diagram /
state-machine / agent references, a complete editorial-review pass, a
marketing/positioning rework of the README, and field fixes surfaced by real
agent runs.
Added
- Coverage of all remaining B-UML DSLs in
besser-user— seven new
source-verified references:references/object-models.md— object/instance models (objects,
attribute values, links), incl. the fluent builder and OCL test data.references/feature-models.md— software product lines (features,
groups, configurations).references/ocl.md— writing and attaching OCLConstraints;bocl
evaluation; which generators consume OCL.references/deployment.md— deployment models for the
TerraformGenerator.references/neural-networks.md— NN models for the PyTorch/TF
generators.references/quantum.md— quantum circuits for theQiskitGenerator.references/project.md— bundling models + metadata.
- Two previously undocumented generators in
besser-generators:SupabaseGenerator(Postgres DDL + RLS) inreferences/persistence.md.JSONObjectGenerator(JSON data from anObjectModel) in
references/python-and-data.md.
- Much deeper class-diagram, state-machine, and agent references
(community contribution):metamodel.mdrenamed toclass-diagram.mdand
expanded (AssociationClass,GeneralizationSet,
is_abstract/is_optional/is_read_only, navigability, composition
direction, void methods, end-name uniqueness); state machines gain final
states, conditions, fallback bodies, config properties, and the
STATE_MACHINEmethod-implementation pattern; agents gain LLM integration,
entities/slot-filling, intent-classifier config, RAG,DBReply,
ReasoningState, tools/skills/workspaces, and rich platform replies. - The skills now cover all 19 BESSER generators and every B-UML
metamodel/DSL; reference-layout tables, trigger descriptions, and the
README were updated to surface them. - README "What your agent can build" capability block — surfaces the full
BESSER surface an agent can drive: every B-UML model type, all 19 generators,
the deterministic-codegen-then-build-on-top workflow, troubleshooting, and
extending BESSER itself. Cross-links the standalone
uml-drawingskill and adds an
Agent Skills directory link. - One-call
B-UML → SVGrendering inbesser-userand the README — POST a
model to BESSER v7.9.0's headless/besser_api/get-svgendpoint and embed the
result, no browser required. - "Generate the baseline, then build on top" guidance in
besser-generators:
regenerate the deterministic baseline freely (cheap and identical each run) and
put customizations in separate files so a re-run never clobbers them.
Changed
besser-devrestructured from a 487-line monolith into a lean overview- routing table plus five
references/(adding-a-generator,
adding-a-metamodel, testing, docs-and-build, contributing-workflow),
matching the progressive-disclosure pattern of the other skills.
- routing table plus five
- De-duplicated drift-prone content across skills: the web-editor
registry snippet is now single-sourced inbesser-dev; the
composite-generator tree lives only indebugging.md; the
besser-troubleshootinggenerator-failure table is scoped to error-message
lookups with a clear hand-off tobesser-generators. besser-generatorseditorial fixes: merged the redundant
reference-layout/generator-picker tables; replaced the partial
output-directory table with an exhaustive-by-rule "Output locations"
call-out; normalized the Supabase/JSON-object entries to the house table
style; clarified that BAL/CODE method bodies are inserted verbatim.- Consistency pass: standardized reference "Gotchas" headings, added
tables of contents to the longer references, and moved per-file version
stamps to a single note; relaxed the attribute-naming guidance to match
what BESSER actually enforces (no spaces/hyphens; snake_case or camelCase). - README refreshed for v7.9.0: BESSER badge bumped to v7.9.0, the drawing
section now leads with the one-call headless SVG endpoint, and the codegen
bullet is reframed around deterministic baselines you extend on top — spend
tokens only on what is genuinely custom. The intro now links directly to the
uml-drawingrepo instead of an in-page anchor.
Fixed
- Corrected a broken copy-paste example (an always-false chained-comparison
assertion) inobject-models.md, and thechat_historytype in
agents.md. ReconciledCONTRIBUTING.md's description-voice rule with the
trigger style all four skills actually use. - Stopped recommending
default_valueon enum-typed attributes across
besser-user,besser-troubleshooting, andbesser-generators'
debugging.md. It passesvalidate(), but the Pydantic/SQLAlchemy generators
serialize the literal's rawrepr()→ invalid Python (e.g.SyntaxError: leading zeros…), and the headless SVG endpoint rejects it. Set the initial
value in the app/auth layer or as a DB column default instead. (Primitive
defaults likeTrueor0round-trip fine.) - Class diagrams are delivered as B-UML, never Mermaid (
besser-user). The
authoritative artifact is thevalidate()-checked B-UML model; a rendered
SVG/PNG is the picture and a quick ASCII sketch is fine as a preview, but
Mermaid (un-validated, can't be generated from) is no longer produced.
Notes
- All new content was written against BESSER v7.8.3 source with verified API
citations; several upstream documentation bugs were deliberately not
reproduced (e.g. the wrongbesser.BUML.notations.od.*import path and the
ObjectModel(instances=…)kwarg). Known-broken paths are flagged in-place
(e.g. theobjectPlantUMLparser is non-functional in v7.8.3). - The headless
B-UML → SVGflow and the v7.9.0 badge track BESSER v7.9.0
(PR #554, ELK auto-layout); all other API citations remain verified against
v7.8.3 source.
v0.2.1
Fixed
- Corrected 24 API/accuracy errors across the skills, found by a
systematic audit against BESSER v7.8.3 source:besser-generators: the custom-endpoint example now uses
Method(code=..., implementation_type=MethodImplementationType.BAL)
(the previousMethodImplementationclass/import did not exist); the
SQLAlchemy customization example usessqlalchemy.orm.Session+ the
generatedengine(noSessionis generated);BAFGeneratoroutput is
config.yaml, notconfig.ini.TerraformGenerator(deployment_model=...); the PyTorch/TF generators
import frombesser.generators.nn.{pytorch,tf}.*withgeneration_type
as a constructor argument;FlutterGeneratorrequiresmain_pageand
is registered in the web editor; many-to-many join-table name is the
association name only;jinja2.TemplateNotFound;BackendGenerator
filters invalid HTTP methods silently.- Python requirement corrected to 3.11+ (setup.cfg
python_requires);
bocl==1.0.1; Docker basepython:3.11-slim; state-machine transitions
live onState, notStateMachine. besser-dev:SUPPORTED_GENERATORS(notGENERATORS); documented that
BESSER now ships CI (pytest + ruff).
Added
- Two evals (documentation delivery,
SQLGeneratordialect) — the suite is
now 10 (evals/evals.json), making those behaviors permanent regression
checks. - README skills table and trigger table now surface "drawing UML for
documentation". - CI:
.github/workflows/release.ymlautomatically creates a GitHub Release
from the matching CHANGELOG section whenever av*tag is pushed.
v0.2.0
BESSER Skills v0.2.0.
Highlights
- Modeling for documentation, not only code —
besser-usernow treats a B-UML model as having two first-class outcomes: generating code and documenting a system as a correct, embeddable UML class diagram. Triggers broadened so the skill activates on "draw/document a correct class diagram" requests even when BESSER isn't named. - Model delivery — deliver a model as a runnable
.pyfile by default, or embed the same B-UML in Markdown for docs; plus how to import a model into the web editor (Import → B-UML). Newreferences/delivering-models.md. - README "Drawing correct UML diagrams" section.
Fixed
SQLGeneratorAPI inreferences/persistence.md—sql_dialectis a constructor argument andgenerate()takes none (onlySQLAlchemyGeneratortakesdbmsingenerate()). The reference previously showed a call that raisesTypeError. This shipped in v0.1.0 and was caught by the v0.2.0 benchmark re-run.
Benchmarks
benchmarks/iteration-2/: v0.2.0 correctness re-run, graded with-skill vs no-skill baseline against BESSER v7.8.3 — 38/38 (100%) for both with the fixed skill. Performance figures carried over from v0.1.0 (skill-text-only changes).
Full details in CHANGELOG.md.
v0.1.0 — Initial release
Initial public release of BESSER Skills — Agent Skills for BESSER, the low-code model-driven engineering platform.
Included skills
- besser-user — end-user guide: domain modeling, code generation, web editor
- besser-generators — per-generator operations, safe customization, template overrides
- besser-troubleshooting — diagnosis guide for install, import, runtime, and deployment issues
- besser-dev — contributor guide: adding generators, tests, docs, PR workflow
besser-user and besser-generators use the progressive-disclosure pattern: a slim SKILL.md plus references/*.md loaded on demand. Scaffolding scripts are bundled for both besser-user (scaffold_model.py) and besser-dev (scaffold_generator.py).
Benchmark — with skills vs no-skill baseline (8 evals)
| Metric | With skills | Without skills (baseline) | Skill advantage |
|---|---|---|---|
| Pass rate | 100% | 100% | tie |
| Mean response time | 36.5s | 138.4s | 74% faster |
| Mean token usage | 25,181 | 48,007 | 48% fewer |
Token usage is also dramatically more consistent with the skill (stddev ~1.4k vs ~19.8k baseline). Full data and per-eval breakdown in benchmarks/iteration-1/benchmark.md.
Install
Works with Claude Code, Cursor, Cline, Windsurf, GitHub Copilot, and any agent that follows the Agent Skills specification.
```bash
npx skills add BESSER-PEARL/BESSER-Skills --all
```
See README.md for full installation and usage instructions.