--- title: "Contributing" description: "Contribute to Strix development" --- ## Development Setup ### Prerequisites - Python 3.12+ - Docker (running) - Poetry - Git ### Local Development ```bash git clone https://github.com/usestrix/strix.git cd strix ``` ```bash make setup-dev # or manually: poetry install --with=dev poetry run pre-commit install ``` ```bash export STRIX_LLM="openai/gpt-5" export LLM_API_KEY="your-api-key" ``` ```bash poetry run strix --target https://example.com ``` ## Contributing Skills Skills are specialized knowledge packages that enhance agent capabilities. They live in `strix/skills/` ### Creating a Skill 1. Choose the right category 2. Create a `.md` file with YAML frontmatter (`name` and `description` fields) 3. Include practical examples—working payloads, commands, test cases 4. Provide validation methods to confirm findings 5. Submit via PR ## Contributing Code ### Pull Request Process 1. **Create an issue first** — Describe the problem or feature 2. **Fork and branch** — Work from `main` 3. **Make changes** — Follow existing code style 4. **Write tests** — Ensure coverage for new features 5. **Run checks** — `make check-all` should pass 6. **Submit PR** — Link to issue and provide context ### Code Style - PEP 8 with 100-character line limit - Type hints for all functions - Docstrings for public methods - Small, focused functions - Meaningful variable names ## Reporting Issues Include: - Python version and OS - Strix version (`strix --version`) - LLM being used - Full error traceback - Steps to reproduce ## Community Join the community for help and discussion. Report bugs and request features.