mirror of
https://github.com/usestrix/strix.git
synced 2026-09-09 22:31:07 +00:00
fix(models): keep list additions-only, restore gpt-5.4 examples, make openrouter/z-ai/glm-5.3 the top pick
This commit is contained in:
parent
0ab7244807
commit
b438632e12
19 changed files with 69 additions and 58 deletions
|
|
@ -28,7 +28,7 @@ Target-specific workflows built on the same engine:
|
|||
- **Open-source CLI (self-hosted):** free, fully local, BYO LLM key, needs Docker. Best for local dev loops, air-gapped/offline, and full control.
|
||||
```bash
|
||||
curl -sSL https://strix.ai/install | bash # install
|
||||
export STRIX_LLM="openai/gpt-5.6" # any LiteLLM model id
|
||||
export STRIX_LLM="openai/gpt-5.4" # any LiteLLM model id
|
||||
export LLM_API_KEY="<key>"
|
||||
strix -n -t ./ --scan-mode quick --max-budget 10 # headless scan; always use -n
|
||||
```
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ Thank you for your interest in contributing to Strix! This guide will help you g
|
|||
|
||||
3. **Configure your LLM provider**
|
||||
```bash
|
||||
export STRIX_LLM="openai/gpt-5.6"
|
||||
export STRIX_LLM="openai/gpt-5.4"
|
||||
export LLM_API_KEY="your-api-key"
|
||||
```
|
||||
|
||||
|
|
|
|||
14
README.md
14
README.md
|
|
@ -82,7 +82,7 @@ Strix are autonomous AI penetration testing agents that act just like real hacke
|
|||
curl -sSL https://strix.ai/install | bash
|
||||
|
||||
# Configure your AI provider
|
||||
export STRIX_LLM="openai/gpt-5.6"
|
||||
export STRIX_LLM="openai/gpt-5.4"
|
||||
export LLM_API_KEY="your-api-key"
|
||||
|
||||
# Run your first security assessment
|
||||
|
|
@ -294,7 +294,7 @@ jobs:
|
|||
### Configuration
|
||||
|
||||
```bash
|
||||
export STRIX_LLM="openai/gpt-5.6"
|
||||
export STRIX_LLM="openai/gpt-5.4"
|
||||
export LLM_API_KEY="your-api-key"
|
||||
|
||||
# Optional
|
||||
|
|
@ -313,7 +313,7 @@ Instead of a metered API key, you can run Strix on your ChatGPT Plus/Pro subscri
|
|||
```bash
|
||||
strix auth login chatgpt # sign in with your ChatGPT account
|
||||
|
||||
export STRIX_LLM="chatgpt/gpt-5.6" # chatgpt/<model> runs on the subscription
|
||||
export STRIX_LLM="chatgpt/gpt-5.4" # chatgpt/<model> runs on the subscription
|
||||
strix --target ./app-directory
|
||||
|
||||
strix auth status # show the active sign-in
|
||||
|
|
@ -448,12 +448,12 @@ Each server's tools are namespaced by `name` (for example `local_fs_read_file`).
|
|||
|
||||
**Recommended models for best results:**
|
||||
|
||||
- [OpenAI GPT-5.6](https://openai.com/api/) - `openai/gpt-5.6`
|
||||
- [Anthropic Claude Opus 5](https://claude.com/platform/api) - `anthropic/claude-opus-5`
|
||||
- [Google Gemini 3.1 Pro Preview](https://cloud.google.com/vertex-ai) - `vertex_ai/gemini-3.1-pro-preview`
|
||||
- [Z.ai GLM-5.3 on OpenRouter](https://openrouter.ai/z-ai/glm-5.3) - `openrouter/z-ai/glm-5.3` (our top pick)
|
||||
- [OpenAI GPT-5.4](https://openai.com/api/) - `openai/gpt-5.4`
|
||||
- [Anthropic Claude Sonnet 4.6](https://claude.com/platform/api) - `anthropic/claude-sonnet-4-6`
|
||||
- [Google Gemini 3 Pro Preview](https://cloud.google.com/vertex-ai) - `vertex_ai/gemini-3-pro-preview`
|
||||
- [DeepSeek V4 Pro](https://platform.deepseek.com) - `deepseek/deepseek-v4-pro`
|
||||
- [Moonshot Kimi K3](https://platform.kimi.ai) - `moonshot/kimi-k3`
|
||||
- [Z.ai GLM-5.3](https://z.ai) - `zai/glm-5.3`
|
||||
|
||||
See the [LLM Providers documentation](https://docs.strix.ai/llm-providers/overview) for all supported providers including Vertex AI, Bedrock, Azure, and local models.
|
||||
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ Configure Strix using environment variables or a config file.
|
|||
## LLM Configuration
|
||||
|
||||
<ParamField path="STRIX_LLM" type="string" required>
|
||||
Model name in LiteLLM format (e.g., `openai/gpt-5.6`, `anthropic/claude-sonnet-5`).
|
||||
Model name in LiteLLM format (e.g., `openai/gpt-5.4`, `anthropic/claude-sonnet-4-6`).
|
||||
</ParamField>
|
||||
|
||||
<ParamField path="LLM_API_KEY" type="string">
|
||||
|
|
@ -145,7 +145,7 @@ strix --target ./app --config /path/to/config.json
|
|||
```json
|
||||
{
|
||||
"env": {
|
||||
"STRIX_LLM": "openai/gpt-5.6",
|
||||
"STRIX_LLM": "openai/gpt-5.4",
|
||||
"LLM_API_KEY": "sk-...",
|
||||
"STRIX_REASONING_EFFORT": "high"
|
||||
}
|
||||
|
|
@ -156,7 +156,7 @@ strix --target ./app --config /path/to/config.json
|
|||
|
||||
```bash
|
||||
# Required
|
||||
export STRIX_LLM="openai/gpt-5.6"
|
||||
export STRIX_LLM="openai/gpt-5.4"
|
||||
export LLM_API_KEY="sk-..."
|
||||
|
||||
# Optional: Enable web search
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ description: "Contribute to Strix development"
|
|||
</Step>
|
||||
<Step title="Configure LLM">
|
||||
```bash
|
||||
export STRIX_LLM="openai/gpt-5.6"
|
||||
export STRIX_LLM="openai/gpt-5.4"
|
||||
export LLM_API_KEY="your-api-key"
|
||||
```
|
||||
</Step>
|
||||
|
|
|
|||
|
|
@ -78,7 +78,7 @@ Strix uses a graph of specialized agents for comprehensive security testing:
|
|||
curl -sSL https://strix.ai/install | bash
|
||||
|
||||
# Configure
|
||||
export STRIX_LLM="openai/gpt-5.6"
|
||||
export STRIX_LLM="openai/gpt-5.4"
|
||||
export LLM_API_KEY="your-api-key"
|
||||
|
||||
# Scan
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ Add these secrets to your repository:
|
|||
|
||||
| Secret | Description |
|
||||
|--------|-------------|
|
||||
| `STRIX_LLM` | Model name (e.g., `openai/gpt-5.6`) |
|
||||
| `STRIX_LLM` | Model name (e.g., `openai/gpt-5.4`) |
|
||||
| `LLM_API_KEY` | API key for your LLM provider |
|
||||
|
||||
## Exit Codes
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ description: "Configure Strix with Claude models"
|
|||
## Setup
|
||||
|
||||
```bash
|
||||
export STRIX_LLM="anthropic/claude-sonnet-5"
|
||||
export STRIX_LLM="anthropic/claude-sonnet-4-6"
|
||||
export LLM_API_KEY="sk-ant-..."
|
||||
```
|
||||
|
||||
|
|
@ -14,8 +14,8 @@ export LLM_API_KEY="sk-ant-..."
|
|||
|
||||
| Model | Description |
|
||||
|-------|-------------|
|
||||
| `anthropic/claude-sonnet-5` | Best balance of intelligence and speed |
|
||||
| `anthropic/claude-opus-5` | Maximum capability for deep analysis |
|
||||
| `anthropic/claude-sonnet-4-6` | Best balance of intelligence and speed |
|
||||
| `anthropic/claude-opus-4-6` | Maximum capability for deep analysis |
|
||||
|
||||
## Get API Key
|
||||
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ export AZURE_API_VERSION="2025-11-01-preview"
|
|||
## Example
|
||||
|
||||
```bash
|
||||
export STRIX_LLM="azure/gpt-5.6-deployment"
|
||||
export STRIX_LLM="azure/gpt-5.4-deployment"
|
||||
export AZURE_API_KEY="abc123..."
|
||||
export AZURE_API_BASE="https://mycompany.openai.azure.com"
|
||||
export AZURE_API_VERSION="2025-11-01-preview"
|
||||
|
|
@ -33,5 +33,5 @@ export AZURE_API_VERSION="2025-11-01-preview"
|
|||
## Prerequisites
|
||||
|
||||
1. Create an Azure OpenAI resource
|
||||
2. Deploy a model (for example GPT-5.6)
|
||||
2. Deploy a model (e.g., GPT-5.4)
|
||||
3. Get the endpoint URL and API key from the Azure portal
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ description: "Configure Strix with Novita AI models"
|
|||
## Setup
|
||||
|
||||
```bash
|
||||
export STRIX_LLM="openai/moonshotai/kimi-k3"
|
||||
export STRIX_LLM="openai/moonshotai/kimi-k2.5"
|
||||
export LLM_API_KEY="your-novita-api-key"
|
||||
export LLM_API_BASE="https://api.novita.ai/openai"
|
||||
```
|
||||
|
|
@ -17,9 +17,11 @@ export LLM_API_BASE="https://api.novita.ai/openai"
|
|||
|
||||
| Model | Configuration |
|
||||
|-------|---------------|
|
||||
| Kimi K3 | `openai/moonshotai/kimi-k3` |
|
||||
| GLM-5.3 | `openai/zai-org/glm-5.3` |
|
||||
| Kimi K3 | `openai/moonshotai/kimi-k3` |
|
||||
| DeepSeek V4 Pro | `openai/deepseek/deepseek-v4-pro` |
|
||||
| Kimi K2.5 | `openai/moonshotai/kimi-k2.5` |
|
||||
| GLM-5 | `openai/zai-org/glm-5` |
|
||||
| MiniMax M2.5 | `openai/minimax/minimax-m2.5` |
|
||||
|
||||
## Get API Key
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ description: "Configure Strix with OpenAI models"
|
|||
## Setup
|
||||
|
||||
```bash
|
||||
export STRIX_LLM="openai/gpt-5.6"
|
||||
export STRIX_LLM="openai/gpt-5.4"
|
||||
export LLM_API_KEY="sk-..."
|
||||
```
|
||||
|
||||
|
|
@ -25,7 +25,7 @@ See [OpenAI Models Documentation](https://platform.openai.com/docs/models) for t
|
|||
For OpenAI-compatible APIs:
|
||||
|
||||
```bash
|
||||
export STRIX_LLM="openai/gpt-5.6"
|
||||
export STRIX_LLM="openai/gpt-5.4"
|
||||
export LLM_API_KEY="your-key"
|
||||
export LLM_API_BASE="https://your-proxy.com/v1"
|
||||
```
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ description: "Configure Strix with models via OpenRouter"
|
|||
## Setup
|
||||
|
||||
```bash
|
||||
export STRIX_LLM="openrouter/openai/gpt-5.6-sol"
|
||||
export STRIX_LLM="openrouter/openai/gpt-5.4"
|
||||
export LLM_API_KEY="sk-or-..."
|
||||
```
|
||||
|
||||
|
|
@ -18,12 +18,13 @@ Access any model on OpenRouter using the format `openrouter/<provider>/<model>`:
|
|||
|
||||
| Model | Configuration |
|
||||
|-------|---------------|
|
||||
| GPT-5.6 Sol | `openrouter/openai/gpt-5.6-sol` |
|
||||
| Claude Opus 5 | `openrouter/anthropic/claude-opus-5` |
|
||||
| Gemini 3.1 Pro | `openrouter/google/gemini-3.1-pro-preview` |
|
||||
| GLM-5.3 (top pick) | `openrouter/z-ai/glm-5.3` |
|
||||
| GPT-5.4 | `openrouter/openai/gpt-5.4` |
|
||||
| Claude Sonnet 4.6 | `openrouter/anthropic/claude-sonnet-4.6` |
|
||||
| Gemini 3 Pro | `openrouter/google/gemini-3-pro-preview` |
|
||||
| DeepSeek V4 Pro | `openrouter/deepseek/deepseek-v4-pro` |
|
||||
| Kimi K3 | `openrouter/moonshotai/kimi-k3` |
|
||||
| GLM-5.3 | `openrouter/z-ai/glm-5.3` |
|
||||
| GLM-4.7 | `openrouter/z-ai/glm-4.7` |
|
||||
|
||||
## Get API Key
|
||||
|
||||
|
|
|
|||
|
|
@ -9,17 +9,17 @@ Strix uses [LiteLLM](https://docs.litellm.ai/docs/providers) for model compatibi
|
|||
|
||||
Set your model and API key:
|
||||
|
||||
| Model | Provider | Configuration |
|
||||
| -------------- | ------------- | ---------------------------------- |
|
||||
| GPT-5.6 | OpenAI | `openai/gpt-5.6` |
|
||||
| Claude Opus 5 | Anthropic | `anthropic/claude-opus-5` |
|
||||
| Gemini 3.1 Pro | Google Vertex | `vertex_ai/gemini-3.1-pro-preview` |
|
||||
| DeepSeek V4 | DeepSeek | `deepseek/deepseek-v4-pro` |
|
||||
| Kimi K3 | Moonshot | `moonshot/kimi-k3` |
|
||||
| GLM-5.3 | Z.ai | `zai/glm-5.3` |
|
||||
| Model | Provider | Configuration |
|
||||
| -------------------- | ----------------- | -------------------------------- |
|
||||
| GLM-5.3 (top pick) | Z.ai (OpenRouter) | `openrouter/z-ai/glm-5.3` |
|
||||
| GPT-5.4 | OpenAI | `openai/gpt-5.4` |
|
||||
| Claude Sonnet 4.6 | Anthropic | `anthropic/claude-sonnet-4-6` |
|
||||
| Gemini 3 Pro | Google Vertex | `vertex_ai/gemini-3-pro-preview` |
|
||||
| DeepSeek V4 Pro | DeepSeek | `deepseek/deepseek-v4-pro` |
|
||||
| Kimi K3 | Moonshot | `moonshot/kimi-k3` |
|
||||
|
||||
```bash
|
||||
export STRIX_LLM="openai/gpt-5.6"
|
||||
export STRIX_LLM="openai/gpt-5.4"
|
||||
export LLM_API_KEY="your-api-key"
|
||||
```
|
||||
|
||||
|
|
@ -38,7 +38,7 @@ See the [Local Models guide](/llm-providers/local) for setup instructions and re
|
|||
|
||||
<CardGroup cols={2}>
|
||||
<Card title="OpenAI" href="/llm-providers/openai">
|
||||
GPT-5.6 models.
|
||||
GPT-5.4 models.
|
||||
</Card>
|
||||
<Card title="Anthropic" href="/llm-providers/anthropic">
|
||||
Claude Opus, Sonnet, and Haiku.
|
||||
|
|
@ -53,7 +53,7 @@ See the [Local Models guide](/llm-providers/local) for setup instructions and re
|
|||
Claude and Titan models via AWS.
|
||||
</Card>
|
||||
<Card title="Azure OpenAI" href="/llm-providers/azure">
|
||||
GPT-5.6 through Azure.
|
||||
GPT-5.4 via Azure.
|
||||
</Card>
|
||||
<Card title="Local Models" href="/llm-providers/local">
|
||||
Llama 4, Mistral, and self-hosted models.
|
||||
|
|
@ -65,9 +65,10 @@ See the [Local Models guide](/llm-providers/local) for setup instructions and re
|
|||
Use LiteLLM's `provider/model-name` format:
|
||||
|
||||
```
|
||||
openai/gpt-5.6
|
||||
anthropic/claude-sonnet-5
|
||||
vertex_ai/gemini-3.1-pro-preview
|
||||
openrouter/z-ai/glm-5.3
|
||||
openai/gpt-5.4
|
||||
anthropic/claude-sonnet-4-6
|
||||
vertex_ai/gemini-3-pro-preview
|
||||
bedrock/anthropic.claude-4-5-sonnet-20251022-v1:0
|
||||
ollama/llama4
|
||||
```
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ pipx install "strix-agent[vertex]"
|
|||
## Setup
|
||||
|
||||
```bash
|
||||
export STRIX_LLM="vertex_ai/gemini-3.1-pro-preview"
|
||||
export STRIX_LLM="vertex_ai/gemini-3-pro-preview"
|
||||
```
|
||||
|
||||
No API key required—uses Google Cloud Application Default Credentials.
|
||||
|
|
@ -37,8 +37,8 @@ export GOOGLE_APPLICATION_CREDENTIALS="/path/to/service-account.json"
|
|||
|
||||
| Model | Description |
|
||||
|-------|-------------|
|
||||
| `vertex_ai/gemini-3.1-pro-preview` | Best overall performance for security testing |
|
||||
| `vertex_ai/gemini-3.7-flash` | Faster and cheaper |
|
||||
| `vertex_ai/gemini-3-pro-preview` | Best overall performance for security testing |
|
||||
| `vertex_ai/gemini-3-flash-preview` | Faster and cheaper |
|
||||
|
||||
## Project Configuration
|
||||
|
||||
|
|
|
|||
|
|
@ -28,12 +28,12 @@ description: "Install Strix and run your first security scan"
|
|||
Set your LLM provider:
|
||||
|
||||
```bash
|
||||
export STRIX_LLM="openai/gpt-5.6"
|
||||
export STRIX_LLM="openai/gpt-5.4"
|
||||
export LLM_API_KEY="your-api-key"
|
||||
```
|
||||
|
||||
<Tip>
|
||||
For best results, use `openai/gpt-5.6`, `anthropic/claude-opus-5`, or `deepseek/deepseek-v4-pro`.
|
||||
For best results, use `openrouter/z-ai/glm-5.3` (our top pick), `openai/gpt-5.4`, `anthropic/claude-opus-4-6`, or `openai/gpt-5.2`.
|
||||
</Tip>
|
||||
|
||||
## Run Your First Scan
|
||||
|
|
|
|||
|
|
@ -562,27 +562,34 @@ DEFAULT_MODEL_RETRY = ModelRetrySettings(
|
|||
)
|
||||
|
||||
RECOMMENDED_MODEL_NAMES = (
|
||||
"openrouter/z-ai/glm-5.3",
|
||||
"zai/glm-5.3",
|
||||
"zai/glm-5.3-flash",
|
||||
"openai/gpt-5.6-sol",
|
||||
"openai/gpt-5.6-terra",
|
||||
"openai/gpt-5.6-luna",
|
||||
"openai/gpt-5.6",
|
||||
"openai/gpt-5.5-pro",
|
||||
"openai/gpt-5.5",
|
||||
"openai/gpt-5.4",
|
||||
"openai/gpt-5.3-codex",
|
||||
"anthropic/claude-fable-5-1",
|
||||
"anthropic/claude-fable-5",
|
||||
"anthropic/claude-opus-5",
|
||||
"anthropic/claude-opus-4-8",
|
||||
"anthropic/claude-sonnet-5",
|
||||
"anthropic/claude-sonnet-4-6",
|
||||
"vertex_ai/gemini-3.1-pro-preview",
|
||||
"gemini/gemini-3.1-pro-preview",
|
||||
"vertex_ai/gemini-3.7-flash",
|
||||
"gemini/gemini-3.7-flash",
|
||||
"gemini/gemini-3.6-flash",
|
||||
"deepseek/deepseek-v4-pro",
|
||||
"deepseek/deepseek-v4-flash",
|
||||
"dashscope/qwen3.8-max",
|
||||
"dashscope/qwen3.7-max-2026-06-08",
|
||||
"moonshot/kimi-k3",
|
||||
"moonshot/kimi-k2.7-code",
|
||||
"zai/glm-5.3",
|
||||
"zai/glm-5.3-flash",
|
||||
)
|
||||
|
||||
_RECOMMENDED_MODEL_NAME_SET = frozenset(name.lower() for name in RECOMMENDED_MODEL_NAMES)
|
||||
|
|
|
|||
|
|
@ -254,7 +254,7 @@ def _status(console: Console) -> int:
|
|||
console.print(f" Runs use the subscription (STRIX_LLM=[bold]{settings.llm.model}[/]).")
|
||||
else:
|
||||
console.print(
|
||||
" [yellow]Note:[/] set [cyan]STRIX_LLM[/] to e.g. [cyan]chatgpt/gpt-5.6[/] "
|
||||
" [yellow]Note:[/] set [cyan]STRIX_LLM[/] to e.g. [cyan]chatgpt/gpt-5.4[/] "
|
||||
"to run on the subscription."
|
||||
)
|
||||
return 0
|
||||
|
|
@ -293,7 +293,7 @@ def _print_success(console: Console) -> None:
|
|||
text.append(" to a ", style="white")
|
||||
text.append("chatgpt/", style="bold cyan")
|
||||
text.append(" model (e.g. ", style="white")
|
||||
text.append("chatgpt/gpt-5.6", style="bold cyan")
|
||||
text.append("chatgpt/gpt-5.4", style="bold cyan")
|
||||
text.append(") — runs are billed to your ChatGPT plan.", style="white")
|
||||
text.append("\n\n", style="white")
|
||||
text.append("Run a scan as usual, e.g. ", style="white")
|
||||
|
|
|
|||
|
|
@ -70,8 +70,8 @@ def validate_environment() -> None:
|
|||
error_text.append("• ", style="white")
|
||||
error_text.append("STRIX_LLM", style="bold cyan")
|
||||
error_text.append(
|
||||
" - Model name to use (for example 'openai/gpt-5.6' or "
|
||||
"'anthropic/claude-opus-5')\n",
|
||||
" - Model name to use (e.g., 'openai/gpt-5.4' or "
|
||||
"'anthropic/claude-opus-4-7')\n",
|
||||
style="white",
|
||||
)
|
||||
|
||||
|
|
@ -102,7 +102,7 @@ def validate_environment() -> None:
|
|||
)
|
||||
|
||||
error_text.append("\nExample setup:\n", style="white")
|
||||
error_text.append("export STRIX_LLM='openai/gpt-5.6'\n", style="dim white")
|
||||
error_text.append("export STRIX_LLM='openai/gpt-5.4'\n", style="dim white")
|
||||
|
||||
if missing_optional_vars:
|
||||
for var in missing_optional_vars:
|
||||
|
|
|
|||
|
|
@ -118,8 +118,8 @@ def _subscription_error_hint(exc: BaseException) -> str | None:
|
|||
joined = " ".join(_exception_messages(exc)).lower()
|
||||
if "not supported when using codex with a chatgpt account" in joined:
|
||||
return (
|
||||
"This model is not available on your ChatGPT subscription. "
|
||||
"Set STRIX_LLM to a model your plan includes (for example chatgpt/gpt-5.6)."
|
||||
"This model isn't available on your ChatGPT subscription. "
|
||||
"Set STRIX_LLM to a model your plan includes (e.g. chatgpt/gpt-5.4)."
|
||||
)
|
||||
if (
|
||||
"error code: 401" in joined
|
||||
|
|
@ -171,7 +171,7 @@ async def warm_up_llm(show_model_warning: bool = True) -> None:
|
|||
)
|
||||
warn_text.append("<provider>/<model>", style="bold cyan")
|
||||
warn_text.append(
|
||||
"' form, for example 'anthropic/claude-opus-5' or 'deepseek/deepseek-v4-pro'.",
|
||||
"' form, e.g. 'anthropic/claude-opus-4-7', 'deepseek/deepseek-v4-pro'.",
|
||||
style="white",
|
||||
)
|
||||
console.print(
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue