Spaces:
Paused
Paused
| # Contributing to Suna | |
| Thank you for your interest in contributing to Suna! This document outlines the contribution process and guidelines. | |
| ## Contribution Workflow | |
| 1. Fork the repository | |
| 2. Create a feature branch (`git checkout -b feature/your-feature`) | |
| 3. Commit your changes (`git commit -am 'feat(your_file): add some feature'`) | |
| 4. Push to the branch (`git push origin feature/your-feature`) | |
| 5. Open a Pull Request | |
| ## Development Setup | |
| ### Quick Setup | |
| The easiest way to get started is using our setup wizard: | |
| ```bash | |
| python setup.py | |
| ``` | |
| This will guide you through configuring all required services and dependencies. | |
| ### Detailed Setup Instructions | |
| For detailed setup instructions, please refer to: | |
| - [Self-Hosting Guide](docs/SELF-HOSTING.md) - Complete setup instructions | |
| - [Backend Development Setup](backend/README.md) - Backend-specific development | |
| - [Frontend Development Setup](frontend/README.md) - Frontend-specific development | |
| ### Required Services | |
| Before contributing, ensure you have access to: | |
| **Required:** | |
| - Supabase project (database and auth) | |
| - LLM provider API key (OpenAI, Anthropic, or OpenRouter) | |
| - Daytona account (for agent execution) | |
| - Tavily API key (for search) | |
| - Firecrawl API key (for web scraping) | |
| **Optional:** | |
| - RapidAPI key (for additional tools) | |
| - Custom MCP server configurations | |
| ## Code Style Guidelines | |
| - Follow existing code style and patterns | |
| - Use descriptive commit messages | |
| - Keep PRs focused on a single feature or fix | |
| - Add tests for new functionality | |
| - Update documentation as needed | |
| ## Reporting Issues | |
| When reporting issues, please include: | |
| - Steps to reproduce | |
| - Expected behavior | |
| - Actual behavior | |
| - Environment details (OS, Node/Docker versions, etc.) | |
| - Relevant logs or screenshots | |
| - Configuration details (redacted API keys) | |
| ## Development Tips | |
| - Use the setup wizard to ensure consistent configuration | |
| - Check the troubleshooting section in the Self-Hosting Guide | |
| - Test both Docker and manual setup when making changes | |
| - Ensure your changes work with the latest setup.py configuration | |