Code of Conduct
By participating in this project, you agree to abide by our Code of Conduct.Issue Assignment Policy
To prevent duplicate work and respect contributors’ time, we require issue assignment before submitting PRs.How to Claim an Issue
- Find an Issue: Browse existing issues or create a new one
- Claim It: Leave a comment (e.g., “I’d like to work on this!”)
- Wait for Assignment: A maintainer will assign you within 24 hours. Issues with reproducible steps or proposals are prioritized.
- Submit Your PR: Once assigned, you’re ready to contribute
PRs for unassigned issues may be delayed or closed if someone else was already assigned.
Exceptions (No Assignment Needed)
You may submit PRs without prior assignment for:- Documentation: Fixing typos or clarifying instructions — add the
documentationlabel or includedoc/docsin your PR title to bypass the linked issue requirement - Micro-fixes: Add the
micro-fixlabel or includemicro-fixin your PR title to bypass the linked issue requirement. Micro-fixes must meet all qualification criteria:
| Qualifies | Disqualifies |
|---|---|
| < 20 lines changed | Any functional bug fix |
| Typos & Documentation & Linting | Refactoring for “clean code” |
| No logic/API/DB changes | New features (even tiny ones) |
Getting Started
Development Setup
Commit Convention
We follow Conventional Commits:feat: New featurefix: Bug fixdocs: Documentation changesstyle: Code style changes (formatting, etc.)refactor: Code refactoringtest: Adding or updating testschore: Maintenance tasks
Pull Request Process
- Get assigned to the issue first (see Issue Assignment Policy)
- Update documentation if needed
- Add tests for new functionality
- Ensure
make checkandmake testpass - Request review from maintainers
PR Title Format
Follow the same convention as commits:Project Structure
core/
Core framework (agent runtime, graph executor, protocols)
tools/
MCP Tools Package (tools for agent capabilities)
exports/
Agent packages and examples
docs/
Documentation
scripts/
Build and utility scripts
.claude/
Claude Code skills for building/testing agents
Code Style
- Use Python 3.11+ for all new code
- Follow PEP 8 style guide
- Add type hints to function signatures
- Write docstrings for classes and public functions
- Use meaningful variable and function names
- Keep functions focused and small
Testing
When testing agents in
exports/, always set PYTHONPATH:CI also validates that all exported agent JSON files (
exports/*/agent.json) are well-formed JSON. Ensure your agent exports are valid before submitting.