diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index d4b720e..7289abc 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -35,6 +35,41 @@ Ensure your changes work as expected and do not break existing functionality. Push your changes to your fork and submit a pull request to the main branch of this repository. Provide a clear description of your changes and reference any related issues. +## Coding Philosophy + +1. **Privacy First, Always Local** + - All core functionality must be able to run 100% locally + - Cloud services should only be optional alternatives, clearly defined with a warning message. + - User data privacy is non-negotiable + +2. **Agent-Based Architecture** + - Each agent should have a clear, single responsibility + - Agents should be modular and independently testable + - New agents should solve specific use cases + +3. **Tool-Based Extensibility** + - Tools should be self-contained and follow the Tools base class + - Each tool should do one thing well + - Tools should provide clear feedback on success/failure + +4. **User Experience** + - Provide meaningful feedback for all operations + - Support multiple languages (chinese, french, english for now) + - Text to speech with short response. + - Keep responses concise + +5. **Code Quality** + - Write clear, self-documenting code + - Include type hints and docstrings + - Follow existing patterns in the codebase + - Add a if __name__ == "__main__" at the bottom of each class file for individual testing. + - Ideally had automated tests. + +6. **Error Handling** + - Fail gracefully with meaningful messages + - Include recovery mechanisms where possible + - Log errors appropriately without exposing sensitive data + ## Areas Needing Help Here are some high-priority tasks and areas where we need contributions: @@ -50,6 +85,6 @@ If you're unsure where to start, feel free to reach out by opening an issue or j ## Code of Conduct -just be nice to each other. +See CODE_OF_CONDUCT.md **Thank You!**