Today, we're introducing two new tools for the computer-use agent ecosystem:
Together, they make it easier to evaluate computer-use agents across models, inspect their behavior, and share results with others.
Building on the Harbor ecosystem
Harbor has become an important part of the open agent-evaluation ecosystem. It gives benchmark authors a shared way to package environments, define tasks, run agents, apply verifiers, and generate trajectories. Benchmarks such as Terminal-Bench, which now runs on Harbor, have shown how much agents can accomplish through a terminal.
But many workflows still require graphical interaction. Agents may need to navigate websites, operate desktop applications, interpret visual layouts, or use software that does not expose a practical API or command-line interface.
Terminal interaction and graphical computer use are complementary. We built computer-1 to bring graphical computer-use evaluation into Harbor.
Meet computer-1
computer-1 is an open-source computer-use harness built directly inside Harbor. It lets benchmark authors define a task once and evaluate it across multiple model providers without rebuilding the agent loop for each one. computer-1 currently supports:
Each provider uses different tool schemas, action formats, safety protocols, and execution loops. computer-1 places those differences behind a common Harbor interface. It standardizes:
The same implementation can run in local Docker environments or scale to infrastructure such as Daytona and Modal. This lets benchmark authors spend more time on tasks, environments, and verifiers instead of maintaining provider-specific orchestration.
Example: navigating the Cambridge BEUDO dataset
In one evaluation, computer-1 was asked to find Cambridge's highest-energy covered property in the Building Energy Use Disclosure Ordinance dataset. The agent navigated an interactive map, inspected multiple records, compared energy-use data, and extracted the correct property.
A multi-step browser task requiring map navigation and data extraction across records, run on Daytona.
The verifier shows whether the task passed. The trajectory shows how the agent completed it. That is where trajectories.sh comes in.
Meet trajectories.sh
trajectories.sh turns agent runs into interactive, multimodal timelines. Each model response and tool call is paired with the corresponding screen state. Instead of reading flat JSON logs or opening folders of screenshots, you can move through a run step by step.
A trajectory can show:
Computer-use behavior depends heavily on visual context. Page layouts, open windows, loading states, cursor position, and application state can all affect the outcome of a run. A text log alone often leaves that context out.
Trajectories should be easy to share
A computer-use trace may include screenshots, prompts, model responses, tool calls, errors, metadata, and evaluation results. These runs are often stored in local folders, internal dashboards, or recordings that are difficult to share and inspect.
With trajectories.sh, a trajectory becomes a link. Researchers can publish representative benchmark runs. Engineers can share the trace behind a regression. Model developers can compare how different agents approach the same task.
Public and unlisted trajectory links with recorded trials are also designed to generate visual previews when shared on platforms such as X, Slack, Discord, or LinkedIn.
This gives people useful context before they open the run. A benchmark score tells you whether an agent succeeded. A trajectory helps explain why.
Debugging a failed run
Consider a 131-step evaluation in which an agent was asked to navigate an interactive solar-system map and identify spacecraft that were active in July 2009 and farther from Earth than the Moon. The agent returned 14 spacecraft. The correct answer was 17.
Reviewing the run revealed two different problems.
First, the agent found LCROSS and confirmed that it was active during the relevant period. It then excluded it after reasoning:
LCROSS should have been included. Second, the agent omitted SOHO and ACE because it never searched for them.
The final answer showed an undercount. The trajectory showed that one spacecraft was misclassified, while two others were never considered. Those failures call for different fixes. One concerns spatial reasoning; the other concerns search coverage.
A shared artifact for agent review
Computer-use failures are often behavioral rather than purely technical. The same task may succeed on one model and fail on another because of differences in visual interpretation, action selection, safety behavior, or tool formatting.
A trajectory gives teams a common artifact for reviewing those differences. It can support discussions about:
Instead of recreating a long run locally, collaborators can inspect the same execution history through a shared link.
Built for the community
computer-1 is open source, and lives as a self-contained module inside the Harbor repository. Researchers and developers can inspect the implementation, add providers, build benchmarks, create new actions, and contribute improvements.
trajectories.sh is a hosted platform that anyone can use. It works with computer-1, but it is not limited to it. Uploads use Harbor's ATIF job format, so trajectories from other harnesses can be shared too once exported to it.
We hope these tools make it easier to:
Get started
Install computer-1 through Harbor:
pip install 'harbor[computer-1]'
Then publish a finished run:
npx trajectories-sh upload trajectory ./my-run
