Skip to content

Configuration

youBencha uses YAML or JSON configuration files to define evaluation suites. This guide covers all configuration options.

Create a configuration file using yb init:

Terminal window
yb init

Or create suite.yaml manually:

suite.yaml
# Repository to evaluate
repo: https://github.com/example/repo.git
branch: main
# AI Agent Configuration
agent:
type: copilot-cli
config:
prompt: "Add error handling to all API endpoints"
# Evaluation Criteria
evaluators:
- name: git-diff
- name: agentic-judge
config:
type: copilot-cli
assertions:
error_handling: "Proper error handling is implemented. Score 1 if yes, 0 if no."

youBencha supports both YAML and JSON formats with automatic detection based on file extension.

ExtensionFormat
.yaml, .ymlYAML
.jsonJSON

Every suite configuration must include:

FieldDescription
repoRepository URL (HTTP/HTTPS only)
agent.typeAgent adapter type (e.g., copilot-cli)
evaluatorsArray of evaluator configurations
FieldDescriptionDefault
nameTest case nameAuto-generated
descriptionTest case descriptionNone
branchGit branchRepository default
commitSpecific commit SHANone
expected_sourceReference source typeNone
expectedReference branch/commitNone
timeoutOperation timeout (ms)300000
workspace_dirCustom workspace directory.youbencha-workspace
pre_executionPre-execution hooksNone
post_evaluationPost-evaluation hooksNone

Always validate your configuration before running:

Terminal window
yb validate -c suite.yaml

For verbose output:

Terminal window
yb validate -c suite.yaml -v