agentevals-cli 0.8.4__tar.gz → 0.9.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/DEVELOPMENT.md +1 -1
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/PKG-INFO +2 -2
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/README.md +1 -1
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/docs/eval-set-format.md +3 -3
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/dice_agent/README.md +1 -1
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/kubernetes/README.md +2 -2
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/pyproject.toml +1 -1
- agentevals_cli-0.8.4/src/agentevals/_static/assets/index-Cl6S2lcn.js → agentevals_cli-0.9.0/src/agentevals/_static/assets/index-f8LUVQc3.js +63 -63
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/_static/index.html +1 -1
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/api/routes.py +28 -87
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/api/runs_routes.py +2 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/api/streaming_routes.py +7 -9
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/cli.py +42 -70
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/config.py +85 -37
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/custom_evaluators.py +12 -1
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/eval_config_loader.py +34 -59
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/mcp_server.py +55 -22
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/run/result_builder.py +3 -3
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/run/service.py +10 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/runner.py +5 -31
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/api/test_evaluate_persistence.py +6 -6
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/api/test_runs_routes.py +9 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/run/test_result_builder.py +6 -8
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/run/test_service.py +2 -2
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/test_api.py +29 -10
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/test_cli.py +78 -0
- agentevals_cli-0.9.0/tests/test_eval_config_loader.py +76 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/test_mcp_server.py +60 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/test_runner.py +48 -13
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/api/client.ts +8 -1
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/bug-report/BugReportModal.tsx +11 -1
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/dashboard/DashboardView.tsx +1 -1
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/dashboard/TraceTable.tsx +3 -3
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/inspector/ComparisonPanel.tsx +3 -3
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/inspector/InspectorHeader.tsx +1 -1
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/inspector/InspectorView.tsx +1 -1
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/inspector/MetricResultsSection.tsx +3 -3
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/inspector/MetricsComparisonSection.tsx +4 -4
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/upload/MetricSelector.tsx +22 -10
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/upload/UploadView.tsx +5 -5
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/context/TraceContext.tsx +2 -2
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/context/TraceProvider.tsx +17 -14
- agentevals_cli-0.9.0/ui/src/lib/eval-config.ts +25 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/lib/types.ts +8 -5
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/uv.lock +1 -1
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/.claude/skills/eval/SKILL.md +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/.claude/skills/eval/evals/evals.json +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/.claude/skills/inspect/SKILL.md +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/.claude/skills/inspect/evals/evals.json +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/.dockerignore +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/.github/workflows/ci.yml +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/.github/workflows/publish-evaluator-sdk.yml +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/.github/workflows/release.yml +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/.gitignore +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/.mcp.json +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/CONTRIBUTING.md +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/Dockerfile +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/LICENSE +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/Makefile +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/charts/agentevals/Chart.yaml +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/charts/agentevals/templates/NOTES.txt +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/charts/agentevals/templates/_helpers.tpl +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/charts/agentevals/templates/deployment.yaml +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/charts/agentevals/templates/postgresql-secret.yaml +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/charts/agentevals/templates/postgresql.yaml +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/charts/agentevals/templates/service.yaml +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/charts/agentevals/templates/serviceaccount.yaml +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/charts/agentevals/values.yaml +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/docs/assets/logo-color-on-transparent.svg +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/docs/assets/logo-color.png +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/docs/assets/logo-dark-on-transparent.svg +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/docs/custom-evaluators.md +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/docs/otel-compatibility.md +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/docs/streaming.md +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/README.md +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/custom_evaluators/eval_config.yaml +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/custom_evaluators/response_quality.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/custom_evaluators/tool_call_checker.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/custom_sink/README.md +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/custom_sink/agentevals_example_custom_sink/__init__.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/custom_sink/agentevals_example_custom_sink/sink.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/custom_sink/pyproject.toml +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/dice_agent/agent.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/dice_agent/eval_set.json +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/dice_agent/main.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/dice_agent/test_streaming.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/langchain_agent/README.md +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/langchain_agent/agent.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/langchain_agent/eval_set.json +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/langchain_agent/main.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/langchain_agent/requirements.txt +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/langchain_agent/test_streaming.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/sdk_example/async_example.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/sdk_example/context_manager_example.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/sdk_example/decorator_example.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/sdk_example/requirements.txt +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/strands_agent/agent.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/strands_agent/eval_set.json +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/strands_agent/main.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/strands_agent/requirements.txt +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/zero-code-examples/adk/requirements.txt +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/zero-code-examples/adk/run.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/zero-code-examples/langchain/requirements.txt +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/zero-code-examples/langchain/run.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/zero-code-examples/ollama/requirements.txt +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/zero-code-examples/ollama/run.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/zero-code-examples/openai-agents/requirements.txt +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/zero-code-examples/openai-agents/run.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/zero-code-examples/pydantic-ai/requirements.txt +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/zero-code-examples/pydantic-ai/run.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/zero-code-examples/strands/requirements.txt +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/examples/zero-code-examples/strands/run.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/flake.lock +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/flake.nix +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/packages/evaluator-sdk-py/README.md +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/packages/evaluator-sdk-py/pyproject.toml +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/packages/evaluator-sdk-py/src/agentevals_evaluator_sdk/__init__.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/packages/evaluator-sdk-py/src/agentevals_evaluator_sdk/decorator.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/packages/evaluator-sdk-py/src/agentevals_evaluator_sdk/types.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/samples/eval_set_helm.json +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/samples/evalset_helm_3_2026-02-23.json +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/samples/evalset_k8s_2026-02-20.json +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/samples/helm.json +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/samples/helm_2.json +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/samples/helm_3.json +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/samples/k8s.json +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/samples/tempo_export_with_batches.json +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/__init__.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/_protocol.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/_static/assets/index-BqibLiHO.css +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/_static/logo.svg +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/_static/vite.svg +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/api/__init__.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/api/app.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/api/debug_routes.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/api/dependencies.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/api/models.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/api/otlp_app.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/api/otlp_grpc.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/api/otlp_processing.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/api/otlp_routes.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/builtin_metrics.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/converter.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/evaluator/__init__.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/evaluator/resolver.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/evaluator/sources.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/evaluator/templates.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/evaluator/venv.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/extraction.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/genai_converter.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/loader/__init__.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/loader/auto.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/loader/base.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/loader/jaeger.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/loader/otlp.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/openai_eval_backend.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/output.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/run/__init__.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/run/fetcher.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/run/sinks.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/run/worker.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/sdk.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/storage/__init__.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/storage/config.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/storage/models.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/storage/postgres/__init__.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/storage/postgres/migrations/000001_init.down.sql +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/storage/postgres/migrations/000001_init.up.sql +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/storage/postgres/migrator.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/storage/postgres/pool.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/storage/repos/__init__.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/storage/repos/memory.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/storage/repos/postgres.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/streaming/__init__.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/streaming/incremental_processor.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/streaming/processor.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/streaming/session.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/streaming/ws_server.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/trace_attrs.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/trace_metrics.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/utils/__init__.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/utils/genai_messages.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/utils/log_buffer.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/src/agentevals/utils/log_enrichment.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/api/__init__.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/integration/__init__.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/integration/conftest.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/integration/test_evaluation_pipeline.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/integration/test_live_agents.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/integration/test_otlp_grpc_receiver.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/integration/test_session_grouping.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/integration/test_timing_stress.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/run/__init__.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/run/test_fetcher.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/run/test_sinks.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/storage/__init__.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/storage/test_config.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/storage/test_memory_repos.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/storage/test_migrator.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/storage/test_models.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/test_converter.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/test_extraction.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/test_genai_converter.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/test_jaeger_loader.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/test_loader_auto.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/test_log_enrichment.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/test_otlp_loader.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/test_otlp_receiver.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/test_output.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/test_protocol.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/test_sdk.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/tests/test_trace_metrics.py +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/.gitignore +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/README.md +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/eslint.config.js +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/index.html +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/package-lock.json +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/package.json +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/public/logo.svg +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/public/vite.svg +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/App.css +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/App.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/assets/react.svg +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/annotation-queue/AnnotationDetailPanel.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/annotation-queue/AnnotationQueueView.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/annotation-queue/AnnotationTable.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/builder/BuilderHeader.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/builder/BuilderView.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/builder/EvalCaseCard.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/builder/EvalCasesList.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/builder/InvocationEditor.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/builder/JsonPreview.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/builder/MetadataEditor.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/builder/TraceUploadZone.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/builder/index.ts +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/dashboard/MetricScoreCard.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/dashboard/PerformanceCard.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/dashboard/PerformanceCharts.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/dashboard/SummaryStats.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/dashboard/TraceCard.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/inspector/DataSection.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/inspector/InspectorLayout.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/inspector/InvocationCard.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/inspector/InvocationSummaryPanel.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/inspector/PerformanceSection.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/inspector/ToolCallList.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/inspector/TrajectoryComparisonDetails.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/sidebar/Sidebar.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/streaming/LiveConversationPanel.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/streaming/LiveMessage.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/streaming/LiveStreamingView.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/streaming/SessionCard.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/streaming/SessionMetadata.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/upload/EvalSetEditorDrawer.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/upload/FileDropZone.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/upload/RawJsonPreview.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/upload/TraceEditorDrawer.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/components/welcome/WelcomeView.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/config.ts +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/index.css +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/lib/console-capture.ts +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/lib/evalset-builder.ts +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/lib/network-capture.ts +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/lib/trace-helpers.ts +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/lib/trace-loader.ts +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/lib/trace-metadata.ts +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/lib/trace-patcher.ts +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/lib/utils.ts +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/src/main.tsx +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/tsconfig.app.json +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/tsconfig.json +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/tsconfig.node.json +0 -0
- {agentevals_cli-0.8.4 → agentevals_cli-0.9.0}/ui/vite.config.ts +0 -0
|
@@ -50,7 +50,7 @@ Once running, submit a run with:
|
|
|
50
50
|
```bash
|
|
51
51
|
curl -X POST http://localhost:8001/api/runs \
|
|
52
52
|
-H 'content-type: application/json' \
|
|
53
|
-
-d '{"spec": {"approach": "trace_replay", "target": {"kind": "inline", "inline": {...}}, "evalConfig": {"
|
|
53
|
+
-d '{"spec": {"approach": "trace_replay", "target": {"kind": "inline", "inline": {...}}, "evalConfig": {"evaluators": [{"name": "tool_trajectory_avg_score", "type": "builtin"}]}}}'
|
|
54
54
|
```
|
|
55
55
|
|
|
56
56
|
Then poll `GET /api/runs/{runId}` and `GET /api/runs/{runId}/results`. Without `storage.backend=postgres`, the `/api/runs` endpoints return 503 with a hint pointing at the env var.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agentevals-cli
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.9.0
|
|
4
4
|
Summary: Standalone framework to evaluate agent correctness based on portable OpenTelemetry traces
|
|
5
5
|
License-File: LICENSE
|
|
6
6
|
Requires-Python: >=3.11
|
|
@@ -278,7 +278,7 @@ See the [Custom Evaluators guide](docs/custom-evaluators.md) for the full protoc
|
|
|
278
278
|
agentevals serve # bundled UI on http://localhost:8001
|
|
279
279
|
```
|
|
280
280
|
|
|
281
|
-
Upload traces and eval sets, select
|
|
281
|
+
Upload traces and eval sets, select evaluators, and view results with interactive span trees. Live-streamed traces appear in the "Local Dev" tab, grouped by session ID. For running from source, see [DEVELOPMENT.md](DEVELOPMENT.md).
|
|
282
282
|
|
|
283
283
|
Interactive API docs are available at `/docs` (Swagger) and `/redoc` while the server is running. The OTLP receiver on port 4318 serves its own docs at `http://localhost:4318/docs`.
|
|
284
284
|
|
|
@@ -250,7 +250,7 @@ See the [Custom Evaluators guide](docs/custom-evaluators.md) for the full protoc
|
|
|
250
250
|
agentevals serve # bundled UI on http://localhost:8001
|
|
251
251
|
```
|
|
252
252
|
|
|
253
|
-
Upload traces and eval sets, select
|
|
253
|
+
Upload traces and eval sets, select evaluators, and view results with interactive span trees. Live-streamed traces appear in the "Local Dev" tab, grouped by session ID. For running from source, see [DEVELOPMENT.md](DEVELOPMENT.md).
|
|
254
254
|
|
|
255
255
|
Interactive API docs are available at `/docs` (Swagger) and `/redoc` while the server is running. The OTLP receiver on port 4318 serves its own docs at `http://localhost:4318/docs`.
|
|
256
256
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Eval Set Format
|
|
2
2
|
|
|
3
|
-
An eval set is a JSON file containing golden reference data that
|
|
3
|
+
An eval set is a JSON file containing golden reference data that evaluators compare agent traces against. It follows the [Google ADK `EvalSet`](https://github.com/google/adk-python/blob/main/src/google/adk/evaluation/eval_set.py) schema, which means eval sets are portable between agentevals and ADK tooling.
|
|
4
4
|
|
|
5
5
|
Most users will not need to author eval sets by hand. The web UI can generate them from live sessions (mark a session as golden, and the server builds the eval set automatically). This document is for users who want to create or edit eval sets directly, whether for CLI usage, CI pipelines, or version-controlled test suites.
|
|
6
6
|
|
|
@@ -203,9 +203,9 @@ The `parts` array can contain text, function calls, or function responses. Most
|
|
|
203
203
|
|
|
204
204
|
Each `FunctionCall` has `name`, `args`, and `id`. Each `FunctionResponse` has `name`, `response`, and `id`. Match `id` values between calls and responses to pair them.
|
|
205
205
|
|
|
206
|
-
## Which
|
|
206
|
+
## Which Evaluators Use Eval Sets
|
|
207
207
|
|
|
208
|
-
Not all
|
|
208
|
+
Not all evaluators require an eval set. Use `agentevals evaluator list --source builtin` to see which built-in evaluators do:
|
|
209
209
|
|
|
210
210
|
| Metric | Needs Eval Set | What It Reads |
|
|
211
211
|
|---|---|---|
|
|
@@ -149,7 +149,7 @@ Update `main.py` to test the new functionality.
|
|
|
149
149
|
**After agent completes:**
|
|
150
150
|
- Status changes to "EVALUATED"
|
|
151
151
|
- Evaluation results appear as colored badges
|
|
152
|
-
- Each
|
|
152
|
+
- Each evaluator result shows: name and score (e.g., "tool_trajectory_avg_score: 1.00")
|
|
153
153
|
|
|
154
154
|
**Multiple runs:**
|
|
155
155
|
- Each run creates a new session with model name in ID
|
|
@@ -221,7 +221,7 @@ This captures the GPT-5 session's tool trajectory and final responses as the gol
|
|
|
221
221
|
2. Select both sessions (the `gpt-4.1-mini` session and the `gpt-5` session)
|
|
222
222
|
3. Click **Evaluate**
|
|
223
223
|
4. Select the `helm-agent-comparison` eval set
|
|
224
|
-
5. Choose the
|
|
224
|
+
5. Choose the evaluators:
|
|
225
225
|
- **tool_trajectory_avg_score**: Did the agent call the correct tools in the correct order?
|
|
226
226
|
- **response_match_score**: Did the agent produce responses consistent with the golden reference?
|
|
227
227
|
6. Run the evaluation
|
|
@@ -241,7 +241,7 @@ Compare the two sessions in the results table:
|
|
|
241
241
|
|
|
242
242
|
<img width="1914" height="1154" alt="image" src="https://github.com/user-attachments/assets/5939a8d4-3775-4cf1-9cf2-d3b6b4afd582" />
|
|
243
243
|
|
|
244
|
-
You can also click an individual conversation and see a breakdown of each
|
|
244
|
+
You can also click an individual conversation and see a breakdown of each evaluator.
|
|
245
245
|
|
|
246
246
|
<img width="1916" height="1348" alt="image" src="https://github.com/user-attachments/assets/984b3d29-8018-4fcb-9036-bb7c6e97d9ff" />
|
|
247
247
|
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "agentevals-cli"
|
|
7
|
-
version = "0.
|
|
7
|
+
version = "0.9.0"
|
|
8
8
|
description = "Standalone framework to evaluate agent correctness based on portable OpenTelemetry traces"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.11"
|