Welcome to the CortexON community! We're thrilled that you're interested in contributing to our project. This document provides guidelines and instructions to help you contribute effectively. Every contribution matters, whether it's fixing a typo, improving documentation, or implementing new features.
- Introduction
- How to Contribute
- Code Style & Standards
- Documentation
- Pull Request Process
- Code of Conduct
- Additional Resources
The project aims to democratize a generalized AI agent, and make capabilities of the likes of OpenAI DeepResearch and ManusAI open-source for all. We believe in the power of community-driven development and welcome contributions from developers of all skill levels and backgrounds. Your contributions help make this project better for everyone.
We welcome various types of contributions, including:
- Bug fixes
- New features
- Documentation improvements
- UI/UX enhancements
- Test coverage improvements
- Performance optimizations
-
Fork the Repository
# Clone your fork locally git clone https://github.com/your-username/CortexOn.git cd CortexOn # Add the upstream repository git remote add upstream https://github.com/TheAgenticAI/CortexOn.git
-
Create a Branch
# Ensure you're up to date git checkout main git pull upstream main # Create and switch to a new branch git checkout -b feature/your-feature-name
-
Make Your Changes
- Write your code
- Add or update tests as needed
- Update documentation if required
-
Submit Your Contribution
# Stage and commit your changes git add . git commit -m "feat: add new feature" # Push to your fork git push origin feature/your-feature-name
- Use the GitHub issue tracker to report bugs or suggest features
- Check if a similar issue already exists before creating a new one
- Use the provided issue templates when available
- Include as much relevant information as possible:
- Steps to reproduce the issue
- Expected vs actual behavior
- Screenshots if applicable
- Environment details
- Use consistent indentation (2 or 4 spaces)
- Follow the existing code style
- Write clear, descriptive variable and function names
- Add comments for complex logic
- Keep functions focused and concise
We follow the Conventional Commits specification:
<type>(<scope>): <description>
[optional body]
[optional footer]
Types include:
- feat: New feature
- fix: Bug fix
- docs: Documentation changes
- style: Code style changes
- refactor: Code refactoring
- test: Adding or updating tests
- chore: Maintenance tasks
Example:
feat(auth): add OAuth2 authentication support
Implement OAuth2 authentication using Google provider.
Includes user profile fetching and token refresh logic.
Closes #123
- Update README.md if adding new features
- Add JSDoc comments for new functions and classes
- Update API documentation if changing interfaces
- Include examples for new functionality
-
Before Submitting
- Ensure all tests pass
- Update documentation as needed
- Rebase your branch on the latest main
-
PR Guidelines
- Link related issues
- Provide a clear description of changes
- Include screenshots for UI changes
- List any breaking changes
-
Review Process
- Two approvals required for merge
- Address review feedback promptly
- Keep the PR focused and reasonable in size
- Be open to suggestions and improvements
-
After Merge
- Delete your branch
- Update any related issues
- Help review other PRs
We take our open source community seriously and hold ourselves and other contributors to high standards of communication. By participating and contributing to this project, you agree to uphold our Code of Conduct.
The full Code of Conduct document details:
- Our pledge to make participation a harassment-free experience
- Specific examples of encouraged positive behavior
- Unacceptable behavior that will not be tolerated
- The scope of applicability
- Enforcement and reporting procedures
- Detailed enforcement guidelines and consequences
If you witness or experience any violations of our Code of Conduct, please report them to our project team at product@theagentic.ai. All reports will be handled with discretion and confidentiality.
- Project Documentation
- API Reference
- Community Channel:
By contributing to this project, you agree that your contributions will be licensed under its LICENSE terms.
Thank you for considering contributing to our project! If you have any questions, feel free to reach out to the maintainers or ask in our community channels.