OpenCode (DeepSeek V4 Pro via OpenRouter) in a Vercel Sandbox. Starter only (AGENTS.md, serve.py, player/, helpers/dom/view_kit). No hardcoded demo code. Cursor did not edit workspace/.
2026-10-15 · task whI2kr3M4SAx · opencode · openrouter/deepseek/deepseek-v4-pro-0813
Build a suturing trainer you can look at from the side, not only from above. The tissue has thickness. Skin and fascia are flat sheets. Bowel and a small artery are curved like tubes. A tendon is a cord. The cut may be straight, curved, jagged, wavy, or oblique, and it gapes because the tissue is under tension. Before I place a stitch I choose a suture and a needle. Sutures differ in whether the body absorbs them, whether they are one strand or a braid, and whether they are natural or synthetic. Absorbable suture belongs on fascia and bowel. Non-absorbable suture belongs on skin, vessel, and tendon. A single strand is springy: a soft knot loosens and I can see the wound open back up. A braid locks and looks like two twisted strands. A round needle belongs in bowel and vessel. A cutting needle slices skin and, on an artery, makes it bleed into the wound. I orbit the scene, click where the needle enters one lip and where it leaves the other, choose how deep it goes, and pass it. The needle is a curve through the wall, and a needle driver follows the tip. Then I tie. A moderate tie draws the lips together. A very hard tie turns the skin edge in or rips the bite out. Cutting a stitch lets the wound spring open. I can change suture and needle between stitches. Score the closure when I say I am finished. The lips should meet. The stitches should be deep enough, roughly even, and not so tight the edge inverts or the tissue blanches. The suture and the needle should suit that tissue. Blood in a vessel wound should cost. A neat pattern that leaves the wound open should not score well. Show the volume with lighting like an operating lamp, the thread in the suture's colour, the knot, the blood in the wound bed, and a small side view of the named layers. This is a teaching model, not a medical device.
Running the prompt-created workspace on this machine — not a mock. Save an episode, then open Replay below to scrub the timeline.
opening · 0 ms
Exact files the agent wrote — not rewritten by hand.
# AI : shared Action contract — the page posts {"move": "..."}; keep this shape.
from pydantic import BaseModel
class Action(BaseModel):
move: str