Thank you for your interest in contributing to TrashClaw! This guide will help you get started.
- Fork the repository
- Clone your fork locally
- Create a branch for your changes (
git checkout -b feature/my-contribution) - Make your changes and test them
- Commit with a clear message
- Push to your fork and open a Pull Request
- Python 3.7+ (stdlib only, no pip dependencies required)
- A local LLM server (Ollama, LM Studio, or any OpenAI-compatible endpoint)
- Git
# Clone the repository
git clone https://github.com/YOUR_USERNAME/trashclaw.git
cd trashclaw
# Start your local LLM server (example with Ollama)
ollama serve
# Run TrashClaw
python3 trashclaw.py
# Or with a custom endpoint
TRASHCLAW_URL=http://localhost:11434 python3 trashclaw.pytrashclaw/
├── trashclaw.py # Main agent (single file, zero dependencies)
├── tests/ # pytest test suite
├── plugins/ # Plugin extensions
├── docs/ # Documentation (model compatibility, etc.)
├── CONTRIBUTING.md # This file
├── CONTRIBUTORS.md # Hall of fame
├── LICENSE # MIT License
└── README.md # Project overview
- New tools or commands
- Bug fixes
- Plugin improvements
- Cross-platform compatibility fixes
- README improvements
- Code comments
- Usage examples
- Tutorials
- Test cases for tools
- Edge case handling
- Platform-specific testing
- Python 3.7+ stdlib only — No external dependencies
- Clear function names — Describe what the function does
- Docstrings — Document parameters and return values
- Error handling — Graceful failures with helpful messages
- One feature per PR — Keep changes focused
- Test your changes — Run the agent with your modifications
- Update documentation — If you add features, document them
- Follow the existing style — Match the codebase conventions
- Open an issue for bugs or feature requests
- Check existing issues before creating new ones
By contributing, you agree that your contributions will be licensed under the MIT License.