Thank you for your interest in contributing to Agent Kernel! We welcome contributions from the community and are excited to have you here.
- Code of Conduct
- How to Contribute
- Developer Guide
- Pull Request Process
- Reporting Bugs
- Suggesting Features
- Community
This project and everyone participating in it is governed by our Code of Conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to the project maintainers.
There are many ways to contribute to Agent Kernel:
- Agent Kernel core contributions: Bug fixes, new features, performance improvements
- Agent Kernel integrations: New integrations to Agent Kernel (Eg: A messaging platform integration)
- Documentation: Improve existing docs, add examples, write tutorials
- Testing: Write tests, report bugs, verify fixes
- Community support: Help others in discussions and issues
See the Developer Guide for detailed setup instructions.
-
Ensure code quality:
- Run formatting checks:
make lint-check-all - Fix any issues:
make lint-all - See the Developer Guide for details
- Run formatting checks:
-
Run tests:
cd ak-py uv run pytest -
Update documentation if your changes affect:
- Public APIs
- Configuration options
- User-facing behavior
-
Write clear commit messages following conventional commit format:
type: brief description Optional longer description explaining the changeCommit Types:
feat: New featurefix: Bug fixdocs: Documentation only changesstyle: Code style/formatting changesrefactor: Code refactoringtest: Adding or updating testschore: Maintenance tasks
Examples:
feat: add support for streaming responses fix: resolve session initialization bug docs: update installation instructions
If you have followed the guidelines in Developer Guide to fork the repository, refer below.
-
Push to your fork:
git push origin feature/your-feature-name
-
Create a Pull Request on GitHub with:
- Clear title: Summarize the change in one line
- Description: Explain what, why, and how
- Related issues: Reference using
Fixes #123orRelated to #456 - Screenshots: If UI changes are involved
- Testing notes: How reviewers can test your changes
- Keep PRs focused: One feature or fix per PR
- Write clear descriptions: Help reviewers understand your changes
- Add tests: Cover new functionality and edge cases
- Update docs: Keep documentation in sync with code
- Respond to feedback: Address review comments promptly
- Keep history clean: Squash or rebase if needed before merging
- Ensure CI passes: All automated checks must pass
When reporting bugs, please include:
- Description: Clear and concise description of the bug
- Steps to reproduce: Detailed steps to reproduce the issue
- Expected behavior: What you expected to happen
- Actual behavior: What actually happened
- Environment:
- Agent Kernel version
- Python version
- Operating system
- Framework being used (Langraph, OpenAI Agents, etc.)
- Code sample: Minimal reproducible example if possible
- Logs/Screenshots: Any relevant error messages or screenshots
We love feature suggestions! When proposing a new feature:
- Check existing issues: See if it's already been suggested
- Describe the problem: What problem does this feature solve?
- Propose a solution: How do you envision this working?
- Consider alternatives: What other solutions have you considered?
- Additional context: Any other relevant information
- GitHub Issues: For bug reports and feature requests
- Discussions: For questions and general discussions
- Pull Requests: For code contributions
- Developer Guide: Technical setup, tools, and development workflow
- README: Project overview and getting started
- Documentation: Full documentation and examples
If you have questions about contributing:
- Open a discussion on GitHub
- Review existing issues and PRs
- Check the Developer Guide for technical details
- Reach out to us via our Discord Server
Thank you for contributing to Agent Kernel! 🎉