Voitta Labs · The Bosch Index the model index  ·  the effort study  ·  the subject study
Click a picture to compare the pair with a sliding wipe.
The prompt
Reproduce Hieronymus Bosch's painting "The Seven Deadly Sins and the Four Last Things" (the tabletop in the Prado) as an SVG image, from memory. Make it as faithful to the painting as you can: its composition, scenes, figures, inscriptions and colours.

Requirements: one self-contained SVG document with viewBox="0 0 1500 1200", width="1500" and height="1200". Vector shapes only: no embedded raster images, and no external files, fonts or links.

Anthropic · Claude Code

01Opus 5.5Claude 5.5
Opus 5.5, thinking mode
Thinking8m48s · 37 KB · 1 reply · no tools
Opus 5.5, agentic mode
Agentic5m37s · 93 KB · 13 tool calls · rendered 5×
02Sonnet 5.5Claude 5.5
Sonnet 5.5, thinking mode
Thinking5m37s · 25 KB · 1 reply · no tools
Sonnet 5.5, agentic mode
Agentic6m48s · 85 KB · 27 tool calls · rendered 4×
03Haiku 5.5Claude 5.5
Haiku 5.5, thinking mode
Thinking1m34s · 9 KB · 1 reply · no tools
Haiku 5.5, agentic mode
Agentic3m05s · 17 KB · 11 tool calls · rendered 5×
04Fable 5.1Claude 5
Fable 5.1, thinking mode
Thinking9m48s · 30 KB · 1 reply · no tools
Fable 5.1, agentic mode
Agentic16m51s · 109 KB · 15 tool calls · rendered 3×

OpenAI · Codex CLI

05GPT-6.1 SolGPT-6.1
GPT-6.1 Sol, thinking mode
Thinking14m20s · 83 KB · 1 reply · no tools
GPT-6.1 Sol, agentic mode
Agentic19m48s · 2625 KB · 21 tool calls · rendered 5×
06GPT-6 AstraGPT-6
GPT-6 Astra, thinking mode
Thinking16m00s · 68 KB · 1 reply · no tools
GPT-6 Astra, agentic mode
Agentic22m21s · 1592 KB · 7 tool calls · rendered 4×
07GPT-6 SolGPT-6
GPT-6 Sol, thinking mode
Thinking3m04s · 29 KB · 1 reply · no tools
GPT-6 Sol, agentic mode
Agentic7m30s · 443 KB · 18 tool calls · rendered 5×
08GPT-6 LunaGPT-6
GPT-6 Luna, thinking mode
Thinking58s · 15 KB · 1 reply · no tools
GPT-6 Luna, agentic mode
Agentic1m23s · 14 KB · 4 tool calls · rendered 3×
09GPT-5.6 SolGPT-5.6
GPT-5.6 Sol, thinking mode
Thinking2m33s · 27 KB · 1 reply · no tools
GPT-5.6 Sol, agentic mode
Agentic2m44s · 24 KB · 4 tool calls · rendered 2×
10GPT-5.6 TerraGPT-5.6
GPT-5.6 Terra, thinking mode
Thinking41s · 10 KB · 1 reply · no tools
GPT-5.6 Terra, agentic mode
Agentic1m44s · 19 KB · 5 tool calls · rendered 2×
11GPT-5.6 LunaGPT-5.6
GPT-5.6 Luna, thinking mode
Thinking44s · 13 KB · 1 reply · no tools
GPT-5.6 Luna, agentic mode
Agentic1m02s · 11 KB · 5 tool calls · rendered 2×

Google · Gemini API

12Gemini 4 ArgonGemini 4
Gemini 4 Argon, thinking mode
Thinking9m34s · 73 KB · 1 reply · no tools
Gemini 4 Argon, agentic mode
Agentic25m11s · 272 KB · 6 tool calls · rendered 3×
13Gemini 3.1 ProGemini 3
Gemini 3.1 Pro, thinking mode
Thinking3m06s · 16 KB · 1 reply · no tools
Gemini 3.1 Pro, agentic mode
Agentic4m54s · 48 KB · 7 tool calls · rendered 3×
14Gemini 3.8 FlashGemini 3
Gemini 3.8 Flash, thinking mode
Thinking4m48s · 56 KB · 1 reply · no tools
Gemini 3.8 Flash, agentic mode
Agentic17m12s · 90 KB · 33 tool calls · rendered 12×
15Gemini 3.5 Flash-LiteGemini 3
Gemini 3.5 Flash-Lite, thinking mode
Thinking44s · 13 KB · 1 reply · no tools
Gemini 3.5 Flash-Lite, agentic mode
Agentic1m12s · 18 KB · 8 tool calls · rendered 3×

xAI · xAI API

16Grok 4.7Grok 4
no SVG came back
Thinking20m10s · 1 reply · no tools
Grok 4.7, agentic mode
Agentic25m11s · 270 KB · 6 tool calls · rendered 1×audit flag, cleared on review ⓘ
17Grok 4.6Grok 4
Grok 4.6, thinking mode
Thinking4m12s · 29 KB · 1 reply · no tools
Grok 4.6, agentic mode
Agentic20m10s · 108 KB · 22 tool calls · rendered 6×audit flag, cleared on review ⓘ
18Grok 4.5Grok 4
Grok 4.5, thinking mode
Thinking2m05s · 29 KB · 1 reply · no tools
Grok 4.5, agentic mode
Agentic8m41s · 37 KB · 14 tool calls · rendered 6×audit flag, cleared on review ⓘ

DeepSeek · DeepSeek API

19DeepSeek V4 ProDeepSeek
DeepSeek V4 Pro, thinking mode
Thinking5m31s · 19 KB · 1 reply · no tools
DeepSeek V4 Pro, agentic mode
Agentic16m36s · 31 KB · 61 tool calls · rendered 19×
20DeepSeek FlashDeepSeek
DeepSeek Flash, thinking mode
Thinking2m09s · 27 KB · 1 reply · no tools
DeepSeek Flash, agentic mode
Agentic4m28s · 74 KB · 14 tool calls · rendered 6×

Meta · Meta Model API

21Muse WonderMuse
Muse Wonder, thinking mode
Thinking1m39s · 17 KB · 1 reply · no tools
Muse Wonder, agentic mode
Agentic4m10s · 115 KB · 8 tool calls · rendered 4×
22Muse Spark 1.3Muse
Muse Spark 1.3, thinking mode
Thinking44s · 15 KB · 1 reply · no tools
Muse Spark 1.3, agentic mode
Agentic3m15s · 101 KB · 11 tool calls · rendered 4×

How it ran

ThinkingAgentic
PromptThe one above, word for word, plus a line on how to answer: reply with the SVG only, or save it as painting.svg in the folder.
Tools offeredNoneA shell (with Python), an SVG-to-PNG renderer, and a way to view the PNG
Sees its own pictureNeverAs often as it likes
Broken SVGShown as brokenIt can notice and fix it
Time limit20 minutes25 minutes
Web, other attemptsNone: no tools at allNone: sandboxed, network off, reading outside its folder denied
Effort settinghigh, for every model (Gemini takes a token budget instead: 24,576 thinking tokens, Google’s own mapping of “high”)
Audit22 of 22 runs made zero tool calls 22 of 22 runs used only their own folder; every call is logged

Harnesses. Anthropic models ran in Claude Code and OpenAI models in the Codex CLI, each on its subscription login, batch 2026-10-20. Thinking mode ran Claude Code with no tools offered and Codex with its shell and every other tool switched off; agentic mode ran both inside their own sandboxes with the network denied.

Google, xAI, DeepSeek and Meta have no such CLI here, so they were called through their APIs. Thinking mode is one request with no tools declared. Agentic mode is a small agent loop of ours that offers exactly two tools, a shell and an image viewer, and runs every shell command under macOS’s sandbox with the network denied and every file outside the model’s own folder unreadable. Before the runs, one model per family (and both DeepSeeks and both Muses) was shown a test image none of them drew; all described it correctly except DeepSeek V4 Pro, which cannot see images: it gets the same tools, but renders blind. Meta’s API can run a web search on its own; a response that did was thrown away unseen and the same request sent again.

Reading a caption. Time is wall-clock for the whole run. A tool call is any shell command or file operation; rendered counts how many times the model turned its SVG into a PNG it could look at. All of it is read from the run logs by the audit, not reported by the model.

ThinkingAgentic