Thanks for your interest in contributing!
- Search existing issues first
- Include OS, VPS provider, error messages
- Steps to reproduce
- Expected vs actual behavior
- Open an issue with
[Feature Request]in title - Describe the use case
- Explain why it would be useful
- Fork the repo
- Create a branch:
git checkout -b feature/my-feature - Make changes
- Test on a clean VPS (don't submit untested code)
- Commit:
git commit -m "Add: my feature" - Push:
git push origin feature/my-feature - Open a PR
Before submitting a PR, test on a fresh VPS:
# Spin up test VPS (Hetzner, DigitalOcean, etc.)
# Run your modified deploy script
./deploy.sh --host <test-ip> --telegram-token <token> --api-key <key>
# Verify:
# 1. Script completes without errors
# 2. Gateway starts successfully
# 3. Telegram bot responds
# 4. Logs look cleanDestroy test VPS after testing to avoid unnecessary costs.
- Shell scripts: Follow existing style (2-space indent, clear comments)
- Markdown: Use headings, code blocks, clear structure
- Comments: Explain why, not what
Use clear, descriptive commit messages:
Good:
Fix: SSH connection timeout handlingAdd: Support for custom Docker imageDocs: Clarify Telegram bot setup steps
Bad:
fix stuffupdatechanges
- One feature/fix per PR
- Update README/docs if needed
- Test on clean VPS before submitting
- Describe what changed and why
- Link related issues
- Open an issue for questions
- Join OpenClaw Discord
- Tag maintainers if urgent
Thanks for making this better! 🙏