oneshotlm
Compare all models on this prompt →

Lorenz attractor · claude-opus-4.8

Using the pre-provided three.min.js (global THREE), visualize the Lorenz attractor as a glowing 3D butterfly trajectory that draws over time, with orbit-drag camera controls.

⛨ sandboxed Open in new tab ↗
transcript · 12 messages
user

Using the pre-provided three.min.js (global THREE), visualize the Lorenz attractor as a glowing 3D butterfly trajectory that draws over time, with orbit-drag camera controls.

assistant
thinking
I'm setting up a single HTML file with three.js and checking that the library file is available.
bash {"command":"ls -la /workspace && head -c 200 /workspace/three.min.js"}
toolResult

total 644 drwxrwxrwx 3 node node 96 Jul 8 03:00 . drwxr-xr-x 1 root root 4096 Jul 8 03:00 .. -rw-r--r-- 1 node node 603445 Jul 8 03:00 three.min.js /** * @license * Copyright 2010-2021 Three.js Authors * SPDX-License-Identifier: MIT */ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&de

assistant
thinking
I should verify the THREE version to ensure it's compatible with the API.
bash {"command":"grep -o 'REVISION=\"[0-9]*\"' /workspace/three.min.js | head; grep -o 'BufferGeometry' /workspace/three.min.js | head -1; grep -
toolResult

BufferGeometry setDrawRange

assistant
thinking
Let me reconsider how to approach this.
bash {"command":"grep -o 'REVISION=\\\"[^\\\"]*\\\"' /workspace/three.min.js | head; grep -o 'r1[0-9][0-9]' /workspace/three.min.js | head"}
toolResult

(no output)

assistant
thinking
I'll implement custom orbit drag controls to handle this without adding external dependencies.
write /workspace/index.html (10292 bytes)
toolResult

Successfully wrote 10292 bytes to /workspace/index.html

assistant
bash {"command":"cd /workspace && node -e \"const fs=require('fs');const h=fs.readFileSync('index.html','utf8');console.log('has three script:',/
toolResult

has three script: true size 10292 -rw-r--r-- 1 node node 10301 Jul 8 03:01 index.html

assistant

Done. `index.html` is complete and self-contained. What it does: - **Lorenz attractor** integrated with RK4 (60k points) using the classic σ/ρ/β equations, producing the signature butterfly/two-wing shape. - **Draws over time**: the trajectory is revealed progressively via `geometry.setDrawRange`, with a pulsing glowing head sphere at the leading edge. - **Glowing look**: dual overlaid lines (bright core + faint wide halo) using additive blending, HSL color that shifts along the path, plus fog for depth and a shimmering glow. - **Orbit-drag controls**: custom pointer-drag to orbit (yaw/pitch), scroll to zoom, gentle auto-spin (toggleable). - **Live controls**: sliders for draw speed and σ/ρ/β (changing shape params re-integrates), plus Restart and auto-spin buttons. Loads only the local `three.min.js` — no network resources.

TAKE IT TO CODE

A single self-contained HTML file — copy it and open in any browser, or reuse the prompt with your own pi-agent run.

RUN

modelclaude-opus-4.8
vendorAnthropic · Claude
harnesspi-agent
generated2026-07-08

EVALUATION

4/5 working

Glowing Lorenz butterfly draws over time with auto-spin; drag/wheel rotate and zoom camera as expected, keys don't add new interaction.

Vision grade · anthropic/claude-sonnet-5

MEASUREMENTS

Raw readings from the capture, not a verdict — the grade above is the only judgement. Percentages are how much of the screen changed; the measure under-reports sparse motion on a dark background.

idle motion5.2%
on click5.4%
on drag20.0%
on wheel27.1%
on enter + space19.9%
on arrow keys20.1%
on w/a/s/d18.8%
frame spread71.6 / 255
console errors0
js errors none

METRICS

runtime72.1s
tokens in12k
tokens out5.8k
cached14k
cost / run$0.2157