Thank you for contributing to the AI Catalog project.
This repository is currently used to develop the AI Catalog specification in
public. The canonical specification source lives in
the files under specification/cddl/, and changes are reviewed through GitHub
pull requests.
- open an issue to report a bug, gap, or editorial problem
- start a discussion for broader design questions or cross-project alignment
- send a pull request with a proposed change to the specification, examples, or build tooling
For substantial specification changes, open an issue or discussion first so the proposed direction can be reviewed before detailed text is drafted.
GOVERNANCE.md: project governance and working rulesspecification/cddl/: specification source files and comparison materialspecification/examples/: example AI Catalog documents
Use the current repository contents as the source of truth when deciding where a change belongs.
To contribute to this repository, install:
- Python 3.12 or later
- uv
- Git
If your change depends on new tooling or build steps, document that in the same pull request.
Most contribution work in this repository involves editing the specification files and updating related examples.
When proposing a specification change, update the relevant supporting material in the same pull request when applicable:
- specification files under
specification/cddl/ - examples under
specification/examples/ - explanatory text in
README.md - governance or process documents when the change affects project workflow
- Create a feature branch for your change.
- Make the smallest coherent set of edits needed for the proposal.
- Review the changed specification text and examples carefully before opening the pull request.
- Commit using a conventional commit message.
- Open a pull request for review.
- Address reviewer feedback in follow-up commits.
Current repository practice is to keep work off main and submit changes
through pull requests.
For security reasons, pull requests opened from forks do not generate PR previews. If preview deployment is enabled for same-repository branches, it is limited to branches in the main repository, which typically means maintainer-managed branches.
- use Conventional Commits
- keep commit scope focused
- prefer signed and signed-off commits when contributing to the project
Examples:
docs: clarify well-known publication rulesspec: add trust metadata requirementsdocs: add project security policy
All substantive changes should go through pull request review. When proposing a specification update, explain:
- what problem the change solves
- whether it changes interoperability expectations
- whether examples or generated output changed as a result
If you are not sure where a change belongs, start with one of the existing
public collaboration channels listed in README.md and propose the change in
public first.