mirror of
https://github.com/usestrix/strix.git
synced 2026-09-16 23:41:18 +00:00
Add Claude Fable 5.1, Gemini 3.7 Flash, and Z.ai GLM-5.3 / GLM-5.3-Flash to RECOMMENDED_MODEL_NAMES, add a Z.ai GLM frontier family so GLM-5.x is accepted through OpenRouter and Novita routes, and drop the superseded GPT-5.4, GPT-5.3-codex, Opus 4.8, Sonnet 4.6, Gemini 3.6 Flash, and Qwen3.7 entries. Update the README, docs provider pages, quickstart, and CLI hint strings to the same current models, including DeepSeek V4, Kimi K3, and GLM-5.3.
113 lines
2.7 KiB
Text
113 lines
2.7 KiB
Text
---
|
|
title: "Contributing"
|
|
description: "Contribute to Strix development"
|
|
---
|
|
|
|
## Development Setup
|
|
|
|
### Prerequisites
|
|
|
|
- Python 3.12+
|
|
- Latest Go 1.24.x patch (only for Bubble Tea TUI development and release artifacts)
|
|
- Docker (running)
|
|
- [uv](https://docs.astral.sh/uv/)
|
|
- Git
|
|
|
|
### Local Development
|
|
|
|
<Steps>
|
|
<Step title="Clone the repository">
|
|
```bash
|
|
git clone https://github.com/usestrix/strix.git
|
|
cd strix
|
|
```
|
|
</Step>
|
|
<Step title="Install dependencies">
|
|
```bash
|
|
make setup-dev
|
|
|
|
# or manually:
|
|
uv sync
|
|
uv run pre-commit install
|
|
```
|
|
</Step>
|
|
<Step title="Configure LLM">
|
|
```bash
|
|
export STRIX_LLM="openai/gpt-5.6"
|
|
export LLM_API_KEY="your-api-key"
|
|
```
|
|
</Step>
|
|
<Step title="Run Strix">
|
|
```bash
|
|
uv run strix --target https://example.com
|
|
```
|
|
</Step>
|
|
</Steps>
|
|
|
|
## 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
|
|
|
|
## Package Builds
|
|
|
|
Editable installs do not require Go; they run the TUI from source (`go run`).
|
|
|
|
Wheels are intentionally strict: they always bundle the matching Go sidecar and
|
|
are platform-specific.
|
|
|
|
```bash
|
|
make wheel
|
|
```
|
|
|
|
The build hook (`scripts/tui_sidecar_hook.py`) requires Go 1.24.x or newer, embeds
|
|
the sidecar as `strix/bin/strix-tui`, and assigns the current platform tag.
|
|
Frozen releases built by `scripts/build.sh` and `strix.spec` also require the
|
|
sidecar.
|
|
|
|
## Reporting Issues
|
|
|
|
Include:
|
|
|
|
- Python version and OS
|
|
- Strix version (`strix --version`)
|
|
- LLM being used
|
|
- Full error traceback
|
|
- Steps to reproduce
|
|
|
|
## Community
|
|
|
|
<CardGroup cols={2}>
|
|
<Card title="Discord" icon="discord" href="https://discord.gg/strix-ai">
|
|
Join the community for help and discussion.
|
|
</Card>
|
|
<Card title="GitHub Issues" icon="github" href="https://github.com/usestrix/strix/issues">
|
|
Report bugs and request features.
|
|
</Card>
|
|
</CardGroup>
|