Thank you for your interest in contributing to Browser Operator! We welcome contributions from the community, whether it's bug reports, feature requests, documentation improvements, or code contributions.
- Node.js and npm
- Git
- macOS 10.15+ or Windows 10 (64-bit)+
- 8GB RAM (16GB recommended)
- Fork the repository on GitHub
- Clone your fork:
git clone https://github.com/YOUR_USERNAME/browser-operator-core.git cd browser-operator-core - Set up your development environment: See our build instructions for detailed setup steps
git checkout -b feature/your-feature-name
# or
git checkout -b fix/bug-description- Write clean, readable code
- Follow the existing code style
- Add tests for new features
- Update documentation as needed
# Run linters
npm run lint
# Run tests
npm run test
# Run web tests
npm run webtest
# Build the project
npm run buildWrite clear, descriptive commit messages:
git commit -m "Add feature: description of what you added"
# or
git commit -m "Fix: description of what you fixed"Add license header to new files:
// Copyright 2025 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.git push origin feature/your-feature-name- Go to the Browser Operator repository
- Click "New Pull Request"
- Select your fork and branch
- Fill out the PR template with:
- Clear description of changes
- Reference to related issues (if any)
- Screenshots/videos for UI changes
- Testing steps
- A maintainer will review your PR
- Address any feedback or requested changes
- Once approved, your PR will be merged
Found a bug? Open an issue with:
- Clear description of the bug
- Steps to reproduce
- Expected vs actual behavior
- Screenshots if applicable
- Browser version and OS
Have an idea? Open an issue with:
- Clear description of the feature
- Use case and benefits
- Any relevant examples or mockups
Help improve our docs:
- Fix typos or unclear explanations
- Add examples or tutorials
- Translate documentation
- Update outdated information
Areas where you can contribute code:
- New Tools: Add new tools for the agent framework
- New Agents: Create specialized agents for specific tasks
- UI Improvements: Enhance the user interface
- Bug Fixes: Fix reported issues
- Performance: Optimize existing code
- Tests: Add or improve test coverage
Contributing new agents or tools? See:
- Agent Framework Documentation
- Creating Custom Agents
- Browse existing tools in front_end/panels/ai_chat/tools/
- TypeScript: Follow existing patterns and conventions
- Linting: Code must pass
npm run lint - Testing: Add tests for new features
- Comments: Document complex logic
- Types: Use proper TypeScript types
- Be respectful and inclusive
- Help others learn and grow
- Provide constructive feedback
- Treat everyone with respect
- Discord: Join our community
- GitHub Issues: For bugs and features
- GitHub Discussions: For questions and ideas
By contributing to Browser Operator, you agree that your contributions will be licensed under the BSD-3-Clause License.
Questions? Join our Discord community or open a GitHub Discussion.
Thank you for contributing to Browser Operator! 🎉