Metadata-Version: 2.4
Name: argus-orchestrator
Version: 0.3.4
Summary: Argus red-team engine: probe library, target adapters, judge harness
License-Expression: Apache-2.0
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
License-File: NOTICE
Requires-Dist: fastapi>=0.110
Requires-Dist: pydantic>=2.5
Requires-Dist: pyyaml<7,>=6.0
Requires-Dist: httpx>=0.27
Requires-Dist: jinja2>=3.1
Requires-Dist: jsonpath-ng>=1.6
Requires-Dist: anthropic>=0.40.0
Requires-Dist: litellm<1.107,>=1.105.1
Requires-Dist: grpcio>=1.60
Requires-Dist: grpcio-reflection>=1.60
Requires-Dist: protobuf>=4.25
Requires-Dist: uvicorn>=0.30
Requires-Dist: aiohttp<4,>=3.9
Requires-Dist: Pillow>=10
Provides-Extra: dev
Requires-Dist: import-linter<3.0,>=2.0; extra == "dev"
Dynamic: license-file

# argus-orchestrator

The red-team engine of [Argus](https://github.com/gy15901580825/Argus), black-box red-team testing for AI agents. `argus-probe run --local` runs this package in-process. It contains:

- the probe library: 205 probe YAML files mapped to OWASP LLM Top 10, MITRE ATLAS, NIST AI RMF and the EU AI Act
- target adapters for `openai_compat`, `anthropic_native`, `custom_http`, `grpc`, `browser_use`, `payment_agent`, `mcp_agent`, `testbed_agent` and `http_upload` agents
- the judge, which scores each probe response against a rubric with an LLM

Most users want the CLI rather than this package:

```bash
pipx install "argus-probe[local]"
```

The import package is `orchestrator.redteam`. The FastAPI service in the repo's `orchestrator/` directory is not part of this wheel.

## Judge configuration

The judge reads these environment variables:

- `ANTHROPIC_API_KEY`: used by the default provider (Anthropic).
- `OPENAI_API_KEY`: used automatically when it is the only key set.
- `REDTEAM_MODEL_PROVIDER=litellm`: runs the judge on a local or other model. Set `REDTEAM_FAST_MODEL` (for example `ollama/qwen2.5:32b`) and, for a non-default host, `REDTEAM_LLM_API_BASE`. Small models miss many jailbreaks, so a clean report from one is weak evidence. Local models other than Ollama (vLLM or LM Studio via `openai/...` with `REDTEAM_LLM_API_BASE`) are billed at the most expensive known rate, so pass `--per-run-cap`.
- `REDTEAM_MODEL_PROVIDER=azure`: runs the judge on Azure OpenAI through litellm instead. Set `AZURE_API_KEY`, `AZURE_API_BASE` and `AZURE_API_VERSION`. The default deployment name is `gpt-5.4-mini`.
- `REDTEAM_FAST_MODEL`, `REDTEAM_STRONG_MODEL`: optional model overrides for the two judge roles.

Azure's default content filter blocks judge calls because the judge reads attack text, so use a custom filter policy with jailbreak detection turned off for that deployment. If `OPENAI_API_KEY` is paired with `REDTEAM_LLM_API_BASE` pointing at Azure, set `REDTEAM_FAST_MODEL` and `REDTEAM_STRONG_MODEL` to your deployment names, because the default strong model `gpt-5.6-terra` is usually not deployed.

License: Apache-2.0. Source and docs: https://github.com/gy15901580825/Argus
