A framework for evaluating and optimizing agents and models using sandboxed environments.
Project description
Marina
Marina is our fork of Harbor, a framework for evaluating and optimizing AI agents and language models. With Marina you can:
- Evaluate any agent you like, including Claude Code, OpenHands, and Codex CLI.
- Build your own benchmarks and environments, and share them with others.
- Run experiments across thousands of environments in parallel through providers like Daytona and Modal.
- Generate rollouts for RL optimization.
marina run -p examples/tasks/hello-screenshot --agent openhands-sdk --model openrouter/openai/gpt-5.5 --ae LLM_SUPPORTS_VISION=true
Changes
We track upstream Harbor closely, with a few additions of our own.
Agent kwargs (--ak key=value)
disable_builtin_tools— drop the default terminal/file-editor/task-tracker toolsdisable_stuck_detection— turn off the SDK's stuck-agent detection
Environment variables (--ae NAME=value)
LLM_SUPPORTS_VISION— force vision support for models LiteLLM misclassifiesOPENROUTER_REASONING_ENABLED/_EXCLUDE— control OpenRouter reasoning (auto-on for Opus 4.7)OPENROUTER_VERBOSITY— set OpenRouter verbosityLLM_THINKING_DISPLAY— thinking display mode (defaultsummarized)SYSTEM_MESSAGE_SUFFIX/USER_MESSAGE_SUFFIX— append text to the OpenHands SDK system / user promptsAWS_BEARER_TOKEN_BEDROCK— bearer-token auth for Bedrock
Vision support also writes MCP image observations to /logs/agent/trajectory-images/, referenced from the ATIF trajectory.
Installation
uv tool install chakra-marina
# or
pip install chakra-marina
For cloud providers
chakra-marina[daytona]— Daytonachakra-marina[cloud]— all cloud providerschakra-marina[all]— everything
Example: Running a task
It's a vision smoke test: the agent calls an MCP take_screenshot tool, sees a solid-color image, and
reports the color
export LLM_API_KEY=<YOUR-KEY>
marina run -p examples/tasks/hello-screenshot \
--agent openhands-sdk \
--model openrouter/openai/gpt-5.5 \
--ae LLM_SUPPORTS_VISION=true \
--ae SYSTEM_MESSAGE_SUFFIX="You run fully autonomously — never ask for confirmation."
--ae LLM_SUPPORTS_VISION=true enables vision (required for this task), and
--ae SYSTEM_MESSAGE_SUFFIX="..." appends text to the OpenHands SDK system prompt.
Both apply only to the openhands-sdk agent (see Changes).
To run on with Daytona:
export LLM_API_KEY=<YOUR-KEY>
export DAYTONA_API_KEY=<YOUR-KEY>
marina run -p examples/tasks/hello-screenshot \
--agent openhands-sdk \
--model openrouter/openai/gpt-5.5 \
--ae LLM_SUPPORTS_VISION=true \
--env daytona
To see all supported agents, and other options run:
marina run --help
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file chakra_marina-0.4.tar.gz.
File metadata
- Download URL: chakra_marina-0.4.tar.gz
- Upload date:
- Size: 1.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1001375e7f910f16dd72147592072be7bf0f654b3411a9639a3cfaa8b6cb4250
|
|
| MD5 |
96cd99a66d73b6c733f3a10ea56bf38d
|
|
| BLAKE2b-256 |
4b67af0b4df356d6ffb42ebf42a322ae94876822552d328a71084584d41ca171
|
File details
Details for the file chakra_marina-0.4-py3-none-any.whl.
File metadata
- Download URL: chakra_marina-0.4-py3-none-any.whl
- Upload date:
- Size: 1.3 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
232f1abbb49e1daadc97658791ca451fc72a57df3e99555fc834726aeb5c72e0
|
|
| MD5 |
43b5df6db19b06b45bd73a828037c6fb
|
|
| BLAKE2b-256 |
20cebcbf6a77b12614ab40e90e52f03c9d3121577bee74aae9f3adc04434ce18
|