Thank you for your interest in contributing! All contributions are welcome.
- Fork the repository and clone it locally
- Create a feature branch:
git checkout -b feat/your-feature - Set up the development environment (see README Quick Start)
- Make your changes with tests
- Run the test suite:
pytest tests/ -v - Submit a Pull Request
| Type | Welcome? |
|---|---|
| Bug fixes | ✅ Always |
| New features | ✅ With discussion |
| Documentation | ✅ Always |
| Performance improvements | ✅ With benchmarks |
| New AI model integrations | ✅ With tests |
- Follow existing code structure and naming conventions
- Add type hints to all functions
- Write docstrings for public methods
- All new features must include tests
- Keep PRs focused — one feature or fix per PR
## What this PR does
Brief description of the change.
## Type of change
- [ ] Bug fix
- [ ] New feature
- [ ] Documentation
## Testing
- [ ] Tests added / updated
- [ ] All tests pass: pytest tests/ -v
## Checklist
- [ ] No API keys or secrets committed
- [ ] README updated if needed
Open a GitHub Issue with:
- Description of the bug
- Steps to reproduce (exact curl command or code)
- Expected vs actual behaviour
- Environment (Python version, OS)
By contributing, you agree your contributions are licensed under the MIT License.