# How to contribute

We'd love to accept your patches and contributions to this project.

## Before you begin

### Sign our Contributor License Agreement

Contributions to this project must be accompanied by a
[Contributor License Agreement](https://cla.developers.google.com/about) (CLA).
You (or your employer) retain the copyright to your contribution; this simply
gives us permission to use and redistribute your contributions as part of the
project.

If you or your current employer have already signed the Google CLA (even if it
was for a different project), you probably don't need to do it again.

Visit <https://cla.developers.google.com/> to see your current agreements or to
sign a new one.

### Review our community guidelines

This project follows
[Google's Open Source Community Guidelines](https://opensource.google/conduct/).

## Contribution process

### Meet the maintainers

New contributors not recognized by the maintainers should meet a project
maintainer in a non-textual format before their first contribution will be
accepted. This includes:

- Meeting a maintainer in person.
- Attending office hours or a working group meeting (cf. our
  [community calendar](https://heir.dev/community/)).
- Scheduling a video call with a maintainer (reach out via
  [Discord](https://heir.dev/community/) or email).

New PRs, issues, and issue comments from unrecognized contributors that appear
to be AI-generated will be forwarded to this policy. The maintainers may make
exceptions for new contributors with a strong prior connection to the community,
such as known authors of relevant academic publications or related open source
projects.

### AI Tool Use Policy

Please see our
[AI Tool Use Policy](https://heir.dev/docs/development/ai_policy/) for our
guidelines on using AI tools to generate contributions to the project. Please
note especially that we do not accept AI-based solutions from new contributors
on ["good first issues"](https://github.com/google/heir/contribute).

### Code reviews

All submissions, including submissions by project members, require review. We
use GitHub pull requests for this purpose. Consult
[GitHub Help](https://help.github.com/articles/about-pull-requests/) for more
information on using pull requests.

Before contributing, please read
[Contributing code to HEIR](https://heir.dev/docs/development/#contributing-code-to-heir).

<!-- mdformat global-off -->
