Thank you for your interest in contributing. This document covers how to get set up, the project's conventions, and what to expect during review.
- Python 3.11+
uvfor environment and dependency management
git clone https://github.com/<your-fork>/openagent-python-sdk.git
cd openagent-python-sdk
uv syncRun the full test suite:
uv run pytest -qCheck coverage (floor is 90%):
uv run coverage run -m pytest && uv run coverage reportAny change under openagents/ must include the corresponding test change in the same PR. This is a hard rule — see AGENTS.md. Do not land source changes without tests.
This SDK is a single-agent runtime kernel. Before adding something, read CLAUDE.md (Architecture section) and docs/seams-and-extension-points.md to understand which layer your change belongs to. Do not push product semantics into the kernel.
Use Conventional Commits:
feat(context): add sliding-window assembler
fix(loader): handle missing impl key gracefully
docs(readme): update quickstart example
chore(deps): bump pydantic to 2.7
Types: feat, fix, docs, refactor, test, chore, ci
- Fork the repo and create a branch from
main. - Make your changes with tests.
- Verify the full suite passes:
uv run pytest -q - Open a PR against
mainand fill in the PR template.
Use the GitHub issue templates:
- Bug Report — for reproducible defects
- Feature Request — for new capabilities or enhancements
By contributing, you agree that your contributions will be licensed under the Apache 2.0 License.