We welcome contributions to the HUD SDK! This guide covers how to get started.
- Fork the repository
- Clone your fork:
git clone https://github.com/YOUR-USERNAME/hud-python - Install in development mode:
cd hud-python pip install -e ".[dev]"
pytest # Run all testsruff check . # Linting
ruff format . # Formatting
pyright hud/ # Type checking- Include a test that reproduces the issue
- Reference the issue number in your PR
- Open an issue first to discuss the design
- Add tests and documentation
- Update relevant examples
- Follow the structure in
environments/README.md - Must pass all 5 phases of
hud debug - Include comprehensive tests
- Fix typos, clarify explanations
- Add examples or diagrams
- Improve docstrings
- Branch naming:
feature/descriptionorfix/issue-number - Commits: Use clear, descriptive messages
- Tests: All tests must pass
- Documentation: Update if needed
- Review: Address feedback promptly
When contributing new environments, follow the comprehensive guide in environments/README.md. Key requirements:
- All environments must pass
hud debug <your-image>(5 phases) - Use
MCPServerwrapper for Docker compatibility - Implement standard
setupandevaluatetools - Include interaction tools for agent control
- Python 3.11+ features are allowed
- Type hints required for public APIs
- Follow existing patterns in the codebase
- Keep line length under 200 characters
- Check existing issues and PRs
- Look at similar code in the repository
- Ask questions in your PR
By contributing, you agree that your contributions will be licensed under the MIT License.