Krang mascot

Ship Harness Bench

A benchmark to evaluate the quality of different LLM coding harnesses. Same model, same prompt, different tools.

9 agents · same prompt · different results
The Prompt
"Create a beautiful, relaxing, 3D ship simulator for the browser with the sun in the horizon alternating day and night and when you click on the sea the water makes a wave"
Model: Deepseek V4 Flash 0731
Takeaways

Harness matters

The model is important, but the harness is a worthy optimization. Same model, vastly different results depending on the tooling.

Browser-use is key

A good browser-use tool is one of the most useful skills. Seeing, interacting with, and verifying output in a real browser is a game changer.

Memory helps

Memory and other tools could also be useful. Context retention and auxiliary capabilities shape output quality as much as the model itself.

The Agents
🌊
Codex

Ship Sim

Import maps, modular Three.js, day/night cycle with wave controls.

🌅
DSH

Open Sea

Self-contained single HTML with inline Three.js bundle. Keyboard sailing controls.

Jcode

Voyager

Clean vanilla JS with verification scripts. Minimal and focused approach.

Jcode FX

Ship Simulator

Enhanced variant with bun-built bundle. Polished visual effects.

🌇
Jcode 2

Sunset Sails

Second iteration with refined aesthetics. Static JS, no build step.

🌙
O-0x

Adrift

Vendored Three.js, minimal vanilla implementation with orbit controls.

🎨
Muse

Drift

Vite-built with custom fonts, time-of-day slider, and ambient sound.

🌅
OpenCode

Sunset Sail

Vendored Three.js with OrbitControls, straightforward implementation.

🎵
Pi

A Quiet Sea

TypeScript + Vite. Seagulls, splashes, wave audio, ambient soundscapes.