Contributing to Oh My OpenCode
Help make Oh My OpenCode better for everyone
Ways to Contribute
There are many ways to contribute to Oh My OpenCode:
๐ Report Bugs
Found a bug? Open an issue on GitHub with details about the problem, steps to reproduce, and expected behavior.
Report Bug โ๐ก Suggest Features
Have an idea for a new feature? Share it with the community and discuss implementation possibilities.
Suggest Feature โ๐ Improve Documentation
Help improve documentation, fix typos, add examples, or clarify confusing sections.
View Docs โ๐ป Write Code
Fix bugs, implement features, improve performance, or refactor code. All contributions welcome!
Submit PR โ๐งช Test Features
Test new features, report issues, and provide feedback on experimental features.
Experimental Features โโญ Star the Project
Show your support by starring the repository. It helps others discover the project!
Star on GitHub โGetting Started
1. Fork the Repository
Fork the oh-my-opencode repository on GitHub.
2. Clone Your Fork
git clone https://github.com/YOUR_USERNAME/oh-my-opencode.git
cd oh-my-opencode
3. Install Dependencies
npm install
# or
bun install
4. Create a Branch
git checkout -b feature/your-feature-name
# or
git checkout -b fix/your-bug-fix
5. Make Your Changes
Make your changes, write tests if applicable, and ensure everything works.
6. Test Your Changes
npm test
# or
bun test
Development Guidelines
Code Style
- Follow the existing code style and conventions
- Use TypeScript for type safety
- Write clear, self-documenting code
- Add comments for complex logic
Commit Messages
Write clear, descriptive commit messages:
feat: add new hook for context management
fix: resolve issue with agent initialization
docs: update installation instructions
refactor: improve error handling in LSP module
Testing
- Write tests for new features
- Ensure all existing tests pass
- Test edge cases and error conditions
- Update tests when modifying existing code
Documentation
- Update documentation for new features
- Add examples where helpful
- Update configuration examples if needed
- Keep documentation in sync with code changes
Pull Requests
Before Submitting
- Ensure your code follows the project's style guidelines
- Run tests and ensure they pass
- Update documentation if needed
- Rebase on the latest main branch
- Write a clear description of your changes
PR Description Template
## Description
Brief description of what this PR does.
## Type of Change
- [ ] Bug fix
- [ ] New feature
- [ ] Documentation update
- [ ] Refactoring
- [ ] Performance improvement
## Testing
Describe how you tested your changes.
## Checklist
- [ ] Code follows style guidelines
- [ ] Tests pass
- [ ] Documentation updated
- [ ] No breaking changes (or documented if breaking)
Review Process
- All PRs require review before merging
- Address review comments promptly
- Be open to feedback and suggestions
- Keep PRs focused and reasonably sized
Code of Conduct
Oh My OpenCode follows a code of conduct to ensure a welcoming and inclusive community:
- Be respectful and considerate
- Welcome newcomers and help them learn
- Focus on constructive feedback
- Respect different viewpoints and experiences
- Show empathy towards others
We are committed to providing a harassment-free experience for everyone, regardless of background, experience level, or identity.
Contributor License Agreement
By contributing to Oh My OpenCode, you agree that your contributions will be licensed under the same license as the project. Please review the license and Contributor License Agreement.
Questions?
If you have questions about contributing:
- Open an issue on GitHub
- Check existing issues and discussions
- Review the documentation
Recognition
Contributors are recognized in:
- GitHub contributors list
- Release notes for significant contributions
- Project documentation
Thank you for contributing to Oh My OpenCode! ๐