Skip to main content

Harbor-first, Braintrust-backed evaluation helpers for coding-agent tooling.

Project description

Braintrust Harbor

Harbor-first, Braintrust-backed evaluation helpers for coding-agent tooling.

This package is for teams that want to evaluate how coding agents interact with their developer tools, CLIs, MCP servers, skills, repos, or harness-specific instructions.

The core model is intentionally simple:

  • Harbor owns sandboxed agent execution, harness adapters, models, and concurrency.
  • Braintrust owns experiments, imported traces, scores, comparison, and analysis.
  • This package is the bridge: it runs one Harbor job and imports each Harbor trial as one Braintrust experiment row.

Install

From a checkout:

uv tool install -e .

After publishing:

uvx braintrust-harbor --help

The CLI entrypoints are:

braintrust-harbor --help
bt-harbor --help

Why Harbor Is External

Harbor is not vendored into this package because Harbor is the execution engine, not a helper library here. It owns sandbox provisioning, built-in coding-agent adapters, model execution, retries, job layout, and concurrency. Keeping it as a separate CLI dependency means teams can use Harbor exactly as documented, including their preferred Harbor version and environment backend.

This package only requires that harbor is available on PATH when you run a job:

harbor --version

If Harbor changes its job layout or CLI flags, update the package compatibility range and tests rather than hiding that coupling behind a vendored copy.

Quickstart

Create a minimal suite:

bt-harbor init my-tool-evals
cd my-tool-evals

Run Harbor and write a local Braintrust import preview:

bt-harbor run harbor-job.json \
  --project "agent-tooling-demo" \
  --suite-artifacts suite-artifacts.json

Upload to Braintrust:

bt-harbor run harbor-job.json \
  --project "agent-tooling-demo" \
  --suite-artifacts suite-artifacts.json \
  --upload

Import an existing Harbor job:

bt-harbor import jobs/my-harbor-job \
  --project "agent-tooling-demo" \
  --suite-artifacts suite-artifacts.json \
  --upload

Add suite scorers:

bt-harbor import jobs/my-harbor-job \
  --project "agent-tooling-demo" \
  --suite-artifacts suite-artifacts.json \
  --scorer "my_suite.scorers:summary_present" \
  --scorer "my_suite.scorers:inspect_before_change" \
  --upload

Package Surface

Library APIs:

from braintrust_harbor import (
    HarborBatchConfig,
    RunAndImportConfig,
    SuiteArtifactConfig,
    build_harbor_agents,
    import_harbor_job_to_braintrust,
    load_toml_matrix,
    run_harbor_batch,
    run_and_import,
    write_matrix_harbor_config,
)

The package includes optional matrix helpers for the common pattern:

suite matrix -> generated Harbor job config -> one Harbor run -> one Braintrust experiment

The consuming suite still owns task materialization, fixtures, artifact names, and domain scorers.

See:

Status

This is an alpha extraction. The Harbor job import path and Braintrust upload path are usable, but the CLI and normalized trace/event helpers should be treated as evolving APIs until a stable release.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

braintrust_harbor-0.1.0a2.tar.gz (36.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

braintrust_harbor-0.1.0a2-py3-none-any.whl (35.3 kB view details)

Uploaded Python 3

File details

Details for the file braintrust_harbor-0.1.0a2.tar.gz.

File metadata

  • Download URL: braintrust_harbor-0.1.0a2.tar.gz
  • Upload date:
  • Size: 36.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for braintrust_harbor-0.1.0a2.tar.gz
Algorithm Hash digest
SHA256 4f689249d9f2023280afda75d889d2945b9fb8bee8dcb1ce94255f76fca99bc3
MD5 d5b942db5fc17815b6ee4d704a5ee81b
BLAKE2b-256 a59dd425a4869b080b11965ab2770065d9050c64312eb42dc808ca4adefeeb0c

See more details on using hashes here.

Provenance

The following attestation bundles were made for braintrust_harbor-0.1.0a2.tar.gz:

Publisher: publish.yml on dpguthrie/braintrust-agent-evals

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file braintrust_harbor-0.1.0a2-py3-none-any.whl.

File metadata

File hashes

Hashes for braintrust_harbor-0.1.0a2-py3-none-any.whl
Algorithm Hash digest
SHA256 576b3dd3ec02e09cb110ef94715709dfaafe81f0c4a3c4a857deb7306ec15121
MD5 c57dde47a41abfec85797fd9a5641cf3
BLAKE2b-256 bc7aabe1eb3549135f8a340b591780d03a9dfb8b583c779f1180f0070ca1d04c

See more details on using hashes here.

Provenance

The following attestation bundles were made for braintrust_harbor-0.1.0a2-py3-none-any.whl:

Publisher: publish.yml on dpguthrie/braintrust-agent-evals

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page