| github-token | GitHub token used to list pull request files and post pull request comments | yes | — |
| prompts | List of prompt files to watch (glob patterns supported, one per line) | no | — |
| config | Path to a Promptfoo config file | yes | — |
| cache-path | Path to the Promptfoo disk cache directory | no | — |
| openai-api-key | OpenAI API Key. Falls back to OPENAI_API_KEY environment variable if not provided. | no | — |
| azure-api-key | Azure API key. Falls back to AZURE_OPENAI_API_KEY environment variable if not provided. | no | — |
| anthropic-api-key | Anthropic API key. Falls back to ANTHROPIC_API_KEY environment variable if not provided. | no | — |
| huggingface-api-key | Hugging Face API key. Falls back to HF_API_TOKEN environment variable if not provided. | no | — |
| aws-access-key-id | AWS Access Key ID. Falls back to AWS_ACCESS_KEY_ID environment variable if not provided. | no | — |
| aws-secret-access-key | AWS Secret Access Key. Falls back to AWS_SECRET_ACCESS_KEY environment variable if not provided. | no | — |
| replicate-api-key | Replicate API key. Falls back to REPLICATE_API_KEY environment variable if not provided. | no | — |
| palm-api-key | Palm API key. Falls back to PALM_API_KEY environment variable if not provided. | no | — |
| vertex-api-key | Google Vertex API key. Falls back to VERTEX_API_KEY environment variable if not provided. | no | — |
| cohere-api-key | Cohere API key. Falls back to COHERE_API_KEY environment variable if not provided. | no | — |
| mistral-api-key | Mistral API key. Falls back to MISTRAL_API_KEY environment variable if not provided. | no | — |
| groq-api-key | Groq API key. Falls back to GROQ_API_KEY environment variable if not provided. | no | — |
| promptfoo-version | Version of promptfoo to use | no | latest |
| working-directory | The working directory to run promptfoo in | no | . |
| no-share | Pass --no-share and override config-level sharing | no | false |
| use-config-prompts | Use prompts from config file | no | false |
| env-files | Comma-separated list of .env files to load (e.g. ".env,.env.test.local") | no | "" |
| fail-on-threshold | Fail the action if the evaluation success rate is below this percentage (0-100) | no | "" |
| debug | Reserved compatibility input; use GitHub Actions step debug logging to display debug messages | no | false |
| max-concurrency | Maximum number of concurrent API calls (default: 4) | no | 4 |
| no-table | Run promptfoo with --no-table flag to keep output minimal | no | false |
| no-progress-bar | Run promptfoo with --no-progress-bar flag to keep output minimal | no | false |
| no-cache | Run promptfoo with --no-cache flag to avoid reading or writing results to the disk cache | no | false |
| disable-comment | Disable posting comments to the PR | no | false |
| workflow-files | Changed-file list for workflow_dispatch mode (newline-separated). If not specified, falls back to workflow inputs or auto-detection. | no | "" |
| workflow-base | Single base ref to compare against in workflow_dispatch mode (e.g., main, HEAD~1). Revision ranges like main..HEAD are not supported. If not specified, falls back to workflow inputs or HEAD~1. | no | "" |
| repeat | Number of times to run each test (must be >= 2). Useful for non-deterministic LLM evals where a single run is noisy. | no | "" |
| repeat-min-pass | Minimum number of repeated runs each test must pass. Requires repeat to be set. Must be <= repeat. Example: with repeat=3 and repeat-min-pass=2, each test must pass at least 2 of its 3 runs.
| no | "" |
| force-run | Force evaluation to run even if no files changed | no | false |