Contribution¶
Contribution to the project is welcome! However, it must follow the code of conduct for the project.
Ways to Contribute¶
File bug reports and feature requests in the issue tracker. (Please try to avoid duplicate issues.)
Fork the repository and submit pull requests to improve the source code or documentation. Pull requests should follow the development guidance and standards below.
Language-specific templates add their own project links (issue tracker, repository, installation) on top of this skeleton.
Development¶
Requirements and Design¶
Review accepted capability requirements in
openspec/specs/. Manage new capabilities, breaking or cross-cutting changes, architectural shifts, and substantial performance or security work through OpenSpec changes inopenspec/changes/. Follow the project’s OpenSpec workflow instructions and keep accepted specifications synchronized when changes are completed.Document stable subsystem architecture, design rationale, and local constraints in the nearest source-near README. Update the affected README when implementation structure or operational patterns change rather than recreating centralized architecture or specification mirrors under
documentation/.
Guidance and Standards¶
Follow the development environment preparation and management instructions to ensure consistency with maintainer development environments and CI workflows.
Configure Git commit signing as required for all contributions. See the environment setup guide for configuration details.
Adhere to the development practices, code style, and testing guidelines to improve the probability of pull request acceptance.
Also consider the nomenclature advice for consistency and to improve the probability of pull request acceptance.
Run validation commands before submitting contributions. See the validation guide for available commands and workflow.
Prepare changelog fragments according to the releases guide as appropriate.
Although unnecessary for non-maintainer contributions, additional background can be found in the maintenance guide.
Language Overlays¶
Language-specific guidance lives alongside the common guides. Consult the overlay for the language you are contributing in, in addition to the guides above:
Artificial Intelligence¶
Contributions co-authored by large language models (LLMs) are welcome, provided that they adhere to the project guidance and standards above and are, otherwise, of good quality.