用途:该技能面向在 BESSER 源码仓库内部工作的场景,提供向 BESSER(https://github.com/BESSER-PEARL/BESSER)贡献代码时的流程指引。架构细节与代码约定还需参考仓库根目录的 CLAUDE.md。
开发环境搭建:
git clone https://github.com/<your-username>/BESSER.git cd BESSER python -m venv venv pip install -r requirements.txt pip install -r docs/requirements.txt pip install -e .
Windows 激活 venv\Scripts\activate,macOS/Linux 激活 source venv/bin/activate。可用 python tests/BUML/metamodel/structural/library/library.py 验证。要求 Python 3.11+(setup.cfg 中 python_requires = >=3.11,CI 测试 3.11 与 3.12)。
参考文档:添加新生成器见 references/adding-a-generator.md;添加新元模型/子 DSL 及 JSON↔BUML 转换器见 references/adding-a-metamodel.md;编写 pytest 测试见 references/testing.md;构建 Sphinx 文档见 references/docs-and-build.md;代码风格、提交/PR 约定、CI/发布见 references/contributing-workflow.md。使用侧相关技能:运行或定制已有生成器见 besser-generators,排查安装/导入/生成错误见 besser-troubleshooting。
贡献注意事项:不要在单个生成器中重复逻辑,共享辅助代码应放入 besser/utilities/;生成器必须保持确定性,相同输入产生相同输出;转换器需保持对称,JSON→BUML 支持的特性 BUML→JSON 也必须支持;后端变更通常需更新 docs/source/;除非明确要求,不要改动前端子模块,UI 变更应提交到上游 WME 仓库;临时目录与文件句柄需用 try/finally 清理;转换器应测试往返一致性,JSON→BUML→JSON 应为恒等。收费、价格与平台要求资料未提供。