Contributing and releases
How changes reach the Nestor repositories, and how each one is released.
Every repository of nestor-home follows the same rules, written once in the organization’s CONTRIBUTING. In short:
mainis protected: every change is a pull request, merged once itscicheck is green.- Pull requests are squash-merged, and their title becomes the commit, so it follows
Conventional Commits:
feat: …,fix: …,docs: …. A breaking change adds!and says why in the body. - One pull request is one coherent change, with its tests and documentation. Tests check real behaviour, never a copy of the implementation.
Each repository’s README.md and AGENTS.md say how to set it up and run its checks.
Releases
Nobody tags by hand. On each repository, release-please keeps a pull request open with the next version and its changelog; merging it tags the release and publishes it, in the same run:
| Repository | Published as |
|---|---|
| nestor | nestor-home on PyPI, ghcr.io/nestor-home/nestor |
| nestor-satellite-python | nestor-satellite on PyPI |
| nestor-satellite-typescript | @nestor-home/satellite on npm |
| nestor-satellite-rust | nestor-satellite on crates.io |
| nestor-reachy | nestor-reachy on PyPI |
| nestor-web | this site |
Registries trust the repository’s own release workflow (trusted publishing): no token is stored.
Before 1.0, a feat or a breaking change raises the minor version, anything else the patch.
Reporting
Bugs and ideas go to the repository’s issues. For a vulnerability, follow the security policy.
This documentation
It lives in nestor-web, one Markdown file per page
and language under src/content/docs/. Every page has a link to edit it.