torrentclaw-skill/CONTRIBUTING.md
Deivid Soto 98c550feb0 feat: initial open-source project structure
Agent Skill for searching and downloading torrents via TorrentClaw.
Includes SKILL.md with OpenClaw metadata, bash scripts for torrent
client detection, CONTRIBUTING.md, CHANGELOG.md, CI/CD with GitHub
Actions (shellcheck + conventional commits), lefthook git hooks,
Makefile, and .editorconfig.
2026-02-13 18:40:53 +01:00

65 lines
1.8 KiB
Markdown

# Contributing to torrentclaw-skill
Thanks for your interest in contributing! Here's how you can help.
## Getting Started
1. Fork the repository
2. Clone your fork: `git clone https://github.com/<your-user>/torrentclaw-skill.git`
3. Install dev tools and git hooks:
```bash
make install-tools
make hooks
```
4. Create a branch: `git checkout -b feat/my-feature`
5. Make your changes
6. Lint locally: `make lint`
7. Commit with a clear message (see below) — the commit-msg hook will validate the format
8. Push and open a Pull Request
## Requirements
- Bash 4+
- [shellcheck](https://github.com/koalaman/shellcheck) (installed via your package manager)
- [lefthook](https://github.com/evilmartians/lefthook) (installed via your package manager)
## Commit Messages
Commits are validated automatically by a git hook. We follow [Conventional Commits](https://www.conventionalcommits.org/):
```
<type>[optional scope][!]: <description>
```
Valid types: `feat`, `fix`, `docs`, `style`, `refactor`, `perf`, `test`, `build`, `ci`, `chore`, `revert`
Examples:
```
feat: add qBittorrent client detection
fix(detect): correct aria2 daemon check on macOS
docs: update API reference with new endpoints
chore: update shellcheck to latest version
feat!: redesign install guide output format
```
## Code Style
- All shell scripts must pass `shellcheck`
- Use `#!/usr/bin/env bash` as the shebang
- Use `set -euo pipefail` at the top of every script
- Keep functions focused and small
- Add comments only where the logic isn't self-evident
## Reporting Bugs
Open an issue with:
- What you expected to happen
- What actually happened
- Steps to reproduce
- Your OS and bash version
## License
By contributing, you agree that your contributions will be licensed under the project's [MIT License](LICENSE).