Skip to content

feat(action): GitHub Marketplace Action — composite action.yml (#14)#22

Merged
amitpaz1 merged 1 commit into
mainfrom
feat/issue-14-github-action
Jun 26, 2026
Merged

feat(action): GitHub Marketplace Action — composite action.yml (#14)#22
amitpaz1 merged 1 commit into
mainfrom
feat/issue-14-github-action

Conversation

@amitpaz1

Copy link
Copy Markdown
Member

Closes #14.

What: a root action.yml makes AgentEval a first-class GitHub Action (matching promptfoo) — installs agenteval from PyPI and runs agenteval ci as a build gate, failing when pass-rate/regression breaches thresholds.

- uses: agentkitai/agenteval@v1
  with:
    suite: suite.yaml
    agent: my_agent:run
    min-pass-rate: "0.9"

How:

  • action.yml — composite; inputs mirror the ci command (suite, agent, min-pass-rate, max-regression, baseline, format, output, parallel, version, python-version) + Marketplace branding. Inputs passed via env: (not interpolated into the run body) to avoid GitHub Actions shell-injection; every expansion quoted.
  • README: a GitHub Action usage section.

PyPI-based → functional today, no ghcr needed. A prebuilt ghcr.io image (faster/hermetic) is an optional follow-up, owner-gated on the org-namespace publish (#96) — documented in OWNER-ACTIONS, not blocking this action.

Tests: test_action_yml.py (valid composite Marketplace action; required inputs + defaults; steps invoke agenteval ci via env with no ${{ }} injection in the body). pytest 3/3, ruff clean.

Root action.yml makes agenteval a first-class GitHub Action (matching promptfoo):
installs agenteval from PyPI and runs `agenteval ci` as a build gate, failing
when pass-rate/regression breaches thresholds.

- action.yml: composite action; inputs mirror the ci command (suite, agent,
  min-pass-rate, max-regression, baseline, format, output, parallel, version,
  python-version) + Marketplace branding. Inputs are passed via env (NOT
  interpolated into the run body) to avoid GitHub Actions shell-injection; every
  expansion is quoted.
- README: a GitHub Action usage section.

PyPI-based (no ghcr needed) → fully functional today. A prebuilt ghcr.io image
for faster/hermetic runs is an optional follow-up (owner-gated on org-namespace
publish, #96) — documented in OWNER-ACTIONS, not blocking this action.

Tests: test_action_yml.py (valid composite Marketplace action; required
suite/agent inputs + defaults; steps invoke `agenteval ci` via env, no `${{ }}`
injection in the script body). pytest 3/3, ruff clean.

Closes #14.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019tXZpN29akdmG8AEjgSZwk
@amitpaz1
amitpaz1 merged commit 9f3d037 into main Jun 26, 2026
4 checks passed
@amitpaz1
amitpaz1 deleted the feat/issue-14-github-action branch June 26, 2026 09:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

GitHub Marketplace Action (root action.yml) + ghcr image

1 participant