Skip to main content

System Requirements

Before installing Harbor, ensure your system meets these requirements:
Python 3.12 or higher is required.Check your Python version:
If you need to upgrade, visit python.org or use a version manager like pyenv.
Docker is required for running evaluations locally.Check if Docker is installed:
Install Docker:
Ensure Docker daemon is running before executing Harbor evaluations. Test with docker ps.
Harbor supports:
  • Linux (recommended for production)
  • macOS (great for development)
  • Windows (via WSL2 with Docker Desktop)
For Windows users, we recommend using WSL2 with Ubuntu.
Recommended resources:
  • RAM: 8GB minimum, 16GB+ recommended for concurrent evaluations
  • Storage: 20GB+ free space for Docker images and task environments
  • CPU: Multi-core processor for parallel execution
Memory requirements scale with --n-concurrent. Each concurrent trial typically uses 1-2GB RAM.

Installation Methods

Harbor can be installed using uv (recommended) or pip. uv is a fast Python package installer and resolver. It’s the recommended way to install Harbor.
1

Install uv

If you don’t have uv installed:
2

Install Harbor

Install Harbor as a tool:
This installs Harbor and its dependencies in an isolated environment.
3

Verify installation

Check that Harbor is installed correctly:
You should see output like:

Using pip

You can also install Harbor using standard pip:
1

Create a virtual environment (optional but recommended)

2

Install Harbor

3

Verify installation

Command-Line Aliases

Harbor provides convenient command aliases for faster typing:
All three are equivalent:

API Keys Setup

To use AI agents, you’ll need API keys from the respective providers.
For Claude Code and Claude-based agents:
  1. Get an API key from Anthropic Console
  2. Set the environment variable:
Make it persistent by adding to your shell profile (~/.bashrc, ~/.zshrc, etc.):
For OpenAI models and agents:
  1. Get an API key from OpenAI Platform
  2. Set the environment variable:
For Gemini CLI agent:
  1. Get an API key from Google AI Studio
  2. Set the environment variable:
Harbor supports any LiteLLM-compatible provider:
  • OpenRouter: export OPENROUTER_API_KEY=...
  • Together AI: export TOGETHER_API_KEY=...
  • Replicate: export REPLICATE_API_KEY=...
  • Hugging Face: export HUGGINGFACE_API_KEY=...
See LiteLLM docs for the complete list.
Store API keys in a .env file in your project directory. Harbor automatically loads environment variables from .env files.

Cloud Provider Setup

For cloud-based evaluation execution, configure your provider credentials.
Daytona provides managed development environments.
  1. Sign up at daytona.io
  2. Get your API key from the dashboard
  3. Set the environment variable:
  1. Run evaluations:

Docker Configuration

For local execution, optimize Docker settings for Harbor:
Configure Docker Desktop resource limits:
  1. Open Docker Desktop Settings
  2. Go to Resources
  3. Adjust:
    • CPUs: Allocate enough for --n-concurrent trials
    • Memory: At least 2GB per concurrent trial
    • Disk space: 50GB+ recommended
For Docker Engine on Linux, modify /etc/docker/daemon.json:
Harbor caches Docker images for faster subsequent runs. To manage cache:
Some tasks require internet access. Ensure Docker containers can reach external networks:
If you’re behind a proxy, configure Docker proxy settings in Docker Desktop or daemon configuration.

Verification

Verify your Harbor installation is working correctly:
1

Check version and help

2

List available datasets

This should show available benchmarks from the Harbor registry.
3

Run a test evaluation

Test with the Oracle agent (always succeeds):
If successful, you should see a completion message with reward 1.0.

Troubleshooting

Error: Python 3.12 or higher is requiredSolution: Upgrade Python using:
  • pyenv: pyenv install 3.12 && pyenv global 3.12
  • Official installer
  • System package manager: brew install python@3.12 (macOS)
Error: Cannot connect to the Docker daemonSolution:
  • Start Docker Desktop (macOS/Windows)
  • Start Docker daemon: sudo systemctl start docker (Linux)
  • Verify: docker ps
Error: Permission denied while trying to connect to DockerSolution (Linux):
Or run Docker commands with sudo.
Error: ImportError: No module named 'harbor'Solution:
  • Ensure you’re in the correct virtual environment
  • Reinstall: pip install --force-reinstall harbor
  • Check installation: pip show harbor
Error: API key not found for providerSolution:
  • Set environment variable: export ANTHROPIC_API_KEY=...
  • Check it’s set: echo $ANTHROPIC_API_KEY
  • Add to shell profile for persistence
Error: Docker containers killed or system freezesSolution:
  • Reduce --n-concurrent flag
  • Increase Docker memory limits
  • Use cloud provider for large-scale runs

Development Installation

For contributing to Harbor or developing custom extensions:
1

Clone the repository

2

Install with development dependencies

3

Run tests

4

Format and lint

Uninstallation

To remove Harbor:
Optionally clean up cached data:

Next Steps

Quickstart Guide

Run your first evaluation in minutes

Core Concepts

Learn about Harbor’s architecture

CLI Reference

Explore all available commands

Configuration

Advanced configuration options
Need help? Join our Discord community for support.