Skip to content

run eval: --evaluator-arn naming is misleading and Builtin evaluators fail without a project #737

@jariy17

Description

@jariy17

Problem 1: --evaluator-arn accepts non-ARN values

The --evaluator-arn flag accepts both actual ARNs and managed evaluator IDs like Builtin.Correctness. The flag name implies it only takes ARNs, which is confusing for users.

# "Builtin.Correctness" is not an ARN, but --evaluator-arn accepts it
agentcore run eval \
  --runtime-arn arn:aws:bedrock-agentcore:us-west-2:123456:runtime/my-agent \
  --evaluator-arn "Builtin.Correctness"

Problem 2: Users without a project can't use Builtin evaluators via --evaluator

Users who don't have a CLI project (e.g. running evals against a runtime ARN directly) can't use --evaluator "Builtin.Correctness" — it fails with:

No agentcore project found.
Run agentcore create to fix this.

This is because the project requirement is only skipped when both --runtime-arn and --evaluator-arn are provided:

const isArnMode = !!(cliOptions.runtimeArn && cliOptions.evaluatorArn);

Users have to know to use --evaluator-arn instead of --evaluator for Builtin evaluators when outside a project — but nothing tells them this.

Suggestion

  • Rename --evaluator-arn to --evaluator-id to reflect that it accepts both ARNs and managed IDs
  • Only require --runtime-arn to skip the project check, so --evaluator works with Builtin evaluators outside a project

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions