Skip to content

Add Harbor adapter that wraps headless Corbits exec - #687

Merged
TheGreatAxios merged 5 commits into
mainfrom
cl-6923-harbor-agent-adapter-wrapping-corbits-exec
Sep 5, 2026
Merged

Add Harbor adapter that wraps headless Corbits exec#687
TheGreatAxios merged 5 commits into
mainfrom
cl-6923-harbor-agent-adapter-wrapping-corbits-exec

Conversation

@TheGreatAxios

Copy link
Copy Markdown
Collaborator

Summary

  • Adds a thin Harbor BaseInstalledAgent under evals/harbor/ that runs product corbits exec with --dangerously-skip-permissions --force (no second agent loop).
  • Translates Harbor kwargs/env into a temporary --config settings.json (required baseURL + API key); ships argv unit tests and a trivial Harbor task scaffold for later dry-run.

Verification

  • PYTHONPATH=. python3 -m unittest evals.harbor.tests.test_argv -v passes
  • No product src/ changes; full Harbor CLI dry-run still needs a Linux ELF binary + Harbor install (tracked separately)

toward CL-6923

@linear-code

linear-code Bot commented Aug 25, 2026

Copy link
Copy Markdown

CL-6923

@TheGreatAxios
TheGreatAxios force-pushed the main branch 2 times, most recently from ab4779a to 8b115bf Compare August 27, 2026 23:46
@TheGreatAxios
TheGreatAxios force-pushed the cl-6923-harbor-agent-adapter-wrapping-corbits-exec branch from c91eda8 to 5fd886d Compare August 28, 2026 02:23
TheGreatAxios

This comment was marked as outdated.

@TheGreatAxios
TheGreatAxios force-pushed the cl-6923-harbor-agent-adapter-wrapping-corbits-exec branch from f1273f0 to 746297d Compare August 28, 2026 19:14
TheGreatAxios

This comment was marked as outdated.

@TheGreatAxios
TheGreatAxios marked this pull request as draft September 2, 2026 19:46
@TheGreatAxios
TheGreatAxios marked this pull request as ready for review September 5, 2026 05:34

@TheGreatAxios TheGreatAxios left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review · Approve

Harbor installed-agent under evals/harbor/ runs product corbits exec --dangerously-skip-permissions with a temp --config, then copies ~/.corbits into trial logs and fills Harbor token fields.

No findings that block merge.

Notes

  • Scope is evals/harbor/ plus a one-line pointer in evals/public/README.md (git diff origin/main...origin/cl-6923-harbor-agent-adapter-wrapping-corbits-exec --stat: 14 files, no unexpected binaries).
  • Subjects pass git log origin/main..origin/cl-6923-harbor-agent-adapter-wrapping-corbits-exec --format='%s' | awk 'length > 72' (empty). Two existing body lines wrap past 72 (3b109ed7, 746297d3); not rewriting history for that.
  • PYTHONPATH=. python3 -m unittest evals.harbor.tests.test_argv evals.harbor.tests.test_session -v is the adapter's unit gate; I did not re-run it in this review. CI on the PR is green (prettier, eslint, typecheck, build-and-test).

Harbor needs a thin installed-agent bridge so Terminal-Bench and similar
cells can drive product Corbits without a second agent loop. Credentials
and baseURL go through a temporary settings.json for --config only;
end-to-end dry-run remains deferred until a Linux binary and Harbor CLI
are available on a suitable host.
The CLI has no --version flag, so install verification now uses --help and the version probe records the help banner. Run the exec command through environment.exec so the real non-zero exit code lands in context metadata instead of a hardcoded 1. Drop the cross-provider API key fallback and the no-op --force exec flag.
Harbor 0.22 infers provider URLs when an API key is present. The adapter only read configured_base_url, so stock harbor run -m xai/... fail-closed without an explicit override.
Harbor left n_input_tokens and cost_usd null because the adapter never
copied ~/.corbits out of the container. Failed trials could not be
audited from corbits.txt alone.
@TheGreatAxios
TheGreatAxios force-pushed the cl-6923-harbor-agent-adapter-wrapping-corbits-exec branch from 47a64f8 to 4115f84 Compare September 5, 2026 20:58
@TheGreatAxios
TheGreatAxios merged commit b01bd47 into main Sep 5, 2026
5 checks passed
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.

1 participant