Skip to main content
The Calibrate GitHub Action runs your agent tests automatically in CI. During deployment, you can choose what happens when a test fails:
  • gate (default) — Prevent merging the changes. This is the recommended mode for production CI pipelines to prevent deploying broken agents.
  • report — Report evaluation results without blocking merges. You may be aware of the mistakes but still want to merge the changes.
On pull requests, the action posts a comment with the evaluation results.

Prerequisites

1

Get your API key

Navigate to your Calibrate dashboard and generate an API key. See the API keys guide for detailed instructions.
2

Add GitHub Secret

  1. Go to your repository Settings > Secrets and variables > Actions
  2. Click New repository secret
  3. Name: CALIBRATE_API_KEY
  4. Value: Your Calibrate API key
3

Link tests to your agents

The agents in Calibrate you want to evaluate must have tests linked to them. By default, the action runs all the tests for every agent in your workspace.Optionally, if you want to restrict evaluation to a few specific agents, you can set that too. Gather the agent names from the Agents page (for example, checkout-bot, support-agent).

Quick start

Automatic PR checks

Create .github/workflows/calibrate.yml:

Manual workflow dispatch

Create .github/workflows/manual-eval.yml:
To trigger:
  1. Navigate to Actions tab
  2. Select Manual Evaluation
  3. Click Run workflow
  4. Enter your agent names and click Run workflow

Advanced configuration

Custom options

Using outputs

Configuration reference

Inputs

Outputs

Environment variables

API details

The action talks to the Calibrate Public API with your API key. For each invocation it runs three steps.

Resolve agents

When agents is set, it resolves the names to UUIDs: Endpoint: POST https://api.calibrate.artpark.ai/agents/resolve Request:
Response:
When agents is omitted, it lists every agent in the account instead: Endpoint: GET https://api.calibrate.artpark.ai/agents Response:

Launch run

For each agent, it triggers all linked tests. The agent is selected by UUID in the URL path and the body is empty: Endpoint: POST https://api.calibrate.artpark.ai/agent-tests/agent/{agent_uuid}/run Request:
Response:

Monitor run

It polls each task until it finishes: Endpoint: GET https://api.calibrate.artpark.ai/agent-tests/run/{task_id} Response:

Run statuses

Examples

Environment-based testing

Parallel agent testing

Scheduled regression testing

Troubleshooting

Invalid API key

Solution: Verify CALIBRATE_API_KEY is set correctly in GitHub Secrets.

Invalid agent name

Solution: Confirm the agent name matches exactly and exists in your workspace.

Agent cannot run

Solution: Open the agent in Calibrate, verify its connection, and ensure at least one test is linked.

Timeout

Solution: Increase timeout for larger test suites or check the Calibrate dashboard for run status.

Resources

API keys

Create and manage your API keys

API reference

Full REST API documentation

GitHub Action repository

Source, releases, and issue tracker