Contributing
Contributions are welcome, and they are much appreciated! Every little helps, and we will always give credit.
Types of Contributions
Report Bugs
Report bugs at https://github.com/ai-dynamo/aitune/issues.
If you are reporting a bug, include:
- Your operating system name and version.
- Any details about your local setup that might be helpful in troubleshooting.
- Detailed steps to reproduce the bug.
Fix Bugs
Look through the GitHub issues for bugs. Anything tagged with “bug” and “help wanted” is open to whoever wants to implement it.
Implement Features
Look through the GitHub issues for features. Anything tagged with “enhancement” and “help wanted” is open to whoever would like to implement it.
Write Documentation
NVIDIA AITune could always use more documentation, whether as part of the official NVIDIA AITune docs, in docstrings, or even on the web in blog posts, articles, and such.
Submit Feedback
The best way to send feedback is to file an issue at https://github.com/ai-dynamo/aitune/issues.
If you are proposing a feature:
- Explain in detail how it would work.
- Keep the scope as narrow as possible to make it easier to implement.
Sign your Work
We require that all contributors “sign-off” on their commits. This certifies that the contribution is your original work, or you have the rights to submit it under the same license or a compatible license.
Note: Organization members are exempt from the DCO requirement; their commits do not need to be signed off.
Any contribution from non-members which contains commits that are not Signed-Off will not be accepted.
To sign off on a commit, you simply use the --signoff (or -s) option when committing your changes:
This will append the following to your commit message:
By doing this, you certify the below:
Get Started!
Ready to contribute? Here’s how to set up the NVIDIA AITune for local development.
- Fork the
NVIDIA AITunerepo on GitHub. - Clone your fork locally:
- Install your local copy into a virtualenv. Assuming you have virtualenvwrapper installed, this is how you set up your fork for local development:
- Create a branch for local development:
Now you can make your changes locally.
- When you’re done making changes, check that your changes pass linters and the tests, including testing other Python versions with tox:
- Commit your changes and push your branch to GitHub:
- Submit a pull request through the GitHub website.
Pull Request Guidelines
Before you submit a pull request, check that it meets these guidelines:
- The pull request should include tests.
- If the pull request adds functionality, you should update the docs. Put your new functionality into a function with a docstring, and add the feature to the list in README.md.
Agent-assisted Development
Claude Code, Codex, and other coding agents are welcome for repository work, but agent output is treated like any other contribution: review the diff, run the relevant checks, and keep changes scoped to the task.
Agents should read AGENTS.md before making changes and follow the repository commands, architecture notes, and source-of-truth rules documented there. Repository-specific agent skills live under .agents/skills/; when a matching skill exists, use it instead of improvising a parallel workflow.
Use $aitune-docs-update for full documentation refreshes so docs changes follow the repository audit workflow. Use $aitune-commit before creating commits so commit messages follow the repository’s Conventional Commits convention.
Documentation
Add/update docstrings as defined in the Google Style Guide.
Keep each documentation topic in one source location. Backend guides live under docs/guides/backends/, and runnable example documentation lives in examples/*/README.md with examples/README.md as the catalog. Do not hand-maintain duplicate copies under docs/examples/.