← Documentation indexCONTRIBUTING.md

Contributing to OpenKyrozen

Thanks for helping improve OpenKyrozen. Bug reports, documentation fixes, focused code changes, and well-supported feature proposals are welcome. Start with the documentation index, and follow the Code of Conduct.

Start with an issue

Search existing issues before opening one. Use the matching GitHub form for bugs, feature requests, documentation, or questions. For a large or behavior-changing proposal, describe the problem and intended outcome in an issue first so maintainers can discuss scope before implementation. Issues labeled good first issue or help wanted are suitable places to start.

Never include API keys, access tokens, encrypted configuration, private runtime data, or unredacted logs in an issue or pull request. Use private vulnerability reporting for security issues.

Set up the project

Use Python 3.12 or 3.13. From a checkout, install the full development environment with:

make install

For the non-browser development path, use make install-core. See the development guide for project structure and additional checks.

Make a focused change

Use the checks that cover your change. The normal project checks are:

make check
make docs-check
make lint
make test

For a focused regression, run the relevant test file or acceptance target listed in the development guide. Report checks you ran and any that you could not run.

Open a pull request

Maintainers create release tags. The release workflow expects a v-prefixed tag whose version exactly matches project.version in pyproject.toml; see the development guide.