Contributing to Kilo Code
Kilo Code is an open-source project that welcomes contributions from developers of all skill levels. This guide will help you get started with contributing to Kilo Code, whether you're fixing bugs, adding features, improving documentation, or sharing custom modes.
Ways to Contribute
There are many ways to contribute to Kilo Code:
- Code Contributions: Implement new features or fix bugs
- Documentation: Improve existing docs or create new guides
- Custom Modes: Create and share specialized modes
- Bug Reports: Report issues you encounter
- Feature Requests: Suggest new features or improvements
- Community Support: Help other users in the community
Getting Started
Prerequisites
- Node.js (v16 or later)
- npm (v7 or later)
- Git
- VS Code
Setting Up the Development Environment
-
Fork the Repository:
- Visit the Kilo Code GitHub repository
- Click the "Fork" button in the top-right corner
-
Clone Your Fork:
git clone https://github.com/YOUR-USERNAME/kilocode.git
cd kilocode -
Install Dependencies:
npm install
-
Build the Extension:
npm run build
-
Run the Extension in Development Mode:
- Press F5 in VS Code to launch a new window with your extension loaded
- Changes to the extension will be automatically reloaded
Development Workflow
Branching Strategy
- Create a new branch for each feature or bugfix
- Use descriptive branch names (e.g.,
feature/new-tool-support
orfix/browser-action-bug
)
git checkout -b your-branch-name
Coding Standards
- Follow the existing code style and patterns
- Use TypeScript for new code
- Include appropriate tests for new features
- Update documentation for any user-facing changes
Commit Guidelines
- Write clear, concise commit messages
- Reference issue numbers when applicable
- Keep commits focused on a single change
Testing Your Changes
- Run the test suite:
npm test
- Manually test your changes in the development extension
Creating a Pull Request
-
Push your changes to your fork:
git push origin your-branch-name
-
Go to the Kilo Code repository
-
Click "New Pull Request" and select "compare across forks"
-
Select your fork and branch
-
Fill out the PR template with:
- A clear description of the changes
- Any related issues
- Testing steps
- Screenshots (if applicable)
Creating Custom Modes
Custom modes are a powerful way to extend Kilo Code's capabilities. To create and share a custom mode:
-
Follow the Custom Modes documentation to create your mode
-
Test your mode thoroughly
-
Share your mode with the community by submitting a GitHub Discussion
Documentation Contributions
Documentation improvements are highly valued contributions:
-
Follow the documentation style guide:
- Use clear, concise language
- Include examples where appropriate
- Use absolute paths starting from
/docs/
for internal links - Don't include
.md
extensions in links
-
Test your documentation changes by running the docs site locally:
cd docs
npm install
npm start -
Submit a PR with your documentation changes
Community Guidelines
When participating in the Kilo Code community:
- Be respectful and inclusive
- Provide constructive feedback
- Help newcomers get started
- Follow the Code of Conduct
Getting Help
If you need help with your contribution:
- Join our Discord community for real-time support
- Ask questions on GitHub Discussions
- Visit our Reddit community
Recognition
All contributors are valued members of the Kilo Code community. Contributors are recognized in:
- Release notes
- The project's README
- The contributors list on GitHub
Thank you for contributing to Kilo Code and helping make AI-powered coding assistance better for everyone!