0d3cb498a3
Deploy local.promptfoo.app / Deploy to Cloudflare Pages (push) Waiting to run
Test and Publish Multi-arch Docker Image / test (push) Waiting to run
Test and Publish Multi-arch Docker Image / build-docker-and-push-digests (map[digest-suffix:linux-amd64 platform:linux/amd64 runner:ubuntu-latest]) (push) Blocked by required conditions
Test and Publish Multi-arch Docker Image / build-docker-and-push-digests (map[digest-suffix:linux-arm64 platform:linux/arm64 runner:ubuntu-24.04-arm]) (push) Blocked by required conditions
Test and Publish Multi-arch Docker Image / merge-docker-digests (push) Blocked by required conditions
Test and Publish Multi-arch Docker Image / Attest Multi-arch Image (push) Blocked by required conditions
Validate Renovate Config / Validate Renovate Configuration (push) Waiting to run
CI / Shell Format Check (push) Has been cancelled
CI / Check Ruby (3.4) (push) Has been cancelled
CI / CI Config (push) Has been cancelled
CI / Test on Node ${{ matrix.node }} and ${{ matrix.os }}${{ matrix.shard && format(' (shard {0}/3)', matrix.shard) || '' }} (push) Has been cancelled
CI / Build on Node ${{ matrix.node }} (push) Has been cancelled
CI / Style Check (push) Has been cancelled
CI / Generate Assets (push) Has been cancelled
CI / Check Python (3.14) (push) Has been cancelled
CI / Check Python (3.9) (push) Has been cancelled
CI / Build Docs (push) Has been cancelled
CI / Code Scan Action (push) Has been cancelled
CI / Site tests (push) Has been cancelled
CI / webui tests (push) Has been cancelled
CI / Run Integration Tests (push) Has been cancelled
CI / Run Smoke Tests (push) Has been cancelled
CI / Go Tests (push) Has been cancelled
CI / Share Test (push) Has been cancelled
CI / Redteam (Production API) (push) Has been cancelled
CI / Redteam (Staging API) (push) Has been cancelled
CI / GitHub Actions Lint (push) Has been cancelled
CI / Check Ruby (3.0) (push) Has been cancelled
release-please / release-please (push) Has been cancelled
release-please / build (push) Has been cancelled
release-please / publish-npm (push) Has been cancelled
release-please / publish-npm-backfill (push) Has been cancelled
release-please / docker (push) Has been cancelled
release-please / publish-code-scan-action (push) Has been cancelled
release-please / attest-code-scan-action (push) Has been cancelled
1.4 KiB
1.4 KiB
redteam-context-overrides (Redteam Context Overrides)
You can run this example with:
npx promptfoo@latest init --example redteam-context-overrides
cd redteam-context-overrides
Usage
This example demonstrates red team contexts with purpose inheritance and purpose overrides.
It models a support assistant that runs in different tenant/user contexts:
tenant-support: omitspurpose, so it inherits the rootredteam.purposeand renders it with that context's vars.admin-console: sets its ownpurpose, so it overrides the root purpose and renders with admin-specific vars.
The example uses the built-in echo provider so the target is deterministic and does not need a custom provider script.
To generate a small red team config:
promptfoo redteam generate -c promptfooconfig.yaml -o redteam.yaml --force --no-cache
If you want to force local generation with an OPENAI_API_KEY from .env, run:
PROMPTFOO_DISABLE_REMOTE_GENERATION=true promptfoo redteam generate -c promptfooconfig.yaml -o redteam.yaml --force --no-cache --env-file .env
Then inspect redteam.yaml. Generated test metadata should show each resolved context purpose:
You are testing SupportDesk for tenant Acme as support user alice.You are testing the admin console for tenant Umbrella as admin user root.
To run the generated eval:
promptfoo redteam eval -c redteam.yaml --no-cache