Opus 5.5 is good at explainer videos
Hacker News

Opus 5.5 is good at explainer videos

Ship a launch video. Paste a URL or describe the product. Opus 5.5 writes the film and a serverless agent renders it. About four minutes and roughly 100k tokens per video.

Examples

Made by this page, untouched. Each one is a single run: a URL or a prompt in, an MP4 out. No edits.

How it runs

A serverless agent on OpenComputer. Yours in one click. The whole product is one agent file, three tools, and this form. OpenComputer runs the agent, the microVM it renders in, the model gateway, and the session API the page polls.

  • Agent - One OpenComputer serverless agent, defined in TypeScript and deployed with opencomputer deploy. No framework, no queue, no server of ours.
  • Model - anthropic/claude-opus-5.5 through OpenComputer's model gateway. Roughly 90k input and 15k output tokens per film, most of it the HTML itself.
  • Runtime - Every job is one session in a fresh microVM: Amazon Linux 2023 on arm64, 4 vCPU, 8 GB RAM, Node 22. The first tool call installs Playwright's headless Chromium and a static ffmpeg (about a minute); the VM is thrown away after.
  • Tools - Three defineTool functions. web_fetch returns page text plus title, headings, the most used hex colors, and Google Fonts. check_scene loads the film and reports JS errors and the visible text at sample timestamps. render_video renders and uploads.
  • Rendering - No video model. The page's clocks (requestAnimationFrame, timers, Date, CSS and Web Animations) are replaced with a virtual clock, so every frame is a deterministic seek. 1920x1080 at 30 fps, JPEG frames piped into libx264, crf 18.
  • Storage - The agent holds no secrets. The form mints a Vercel Blob upload token scoped to one path for three hours, parks it in a per-job manifest, and the tool fetches it by job id. The finished MP4 is a public Blob URL.
  • Control plane - This page uses the same API the CLI does: create a session, send one turn, poll the event stream (tool.started, tool.completed, turn.completed) to show progress, and treat the MP4 appearing in Blob as done.
// opencomputer/agents/director/agent.ts
import { useInput, useModel, useTool } from "@opencomputer/agent";
import { checkScene, renderVideo } from "./tools/scene.js";
import { webFetch } from "./tools/web.js";

export default function Agent() {
  const input = useInput(); // the JOB block from the form
  useModel("anthropic/claude-opus-5.5");
  useTool(webFetch); // read the product's site
  useTool(checkScene); // load the HTML, report errors + visible text
  useTool(renderVideo); // headless Chromium → ffmpeg → Blob
  return `You are a motion designer who writes code. ...`;
}

Deploy this agent

One click. Free account, the agent lands in your project with its tools and prompt. Clone the repo diggerhq/shipvideo: the agent, the renderer, and this web app.

Build your own agent

The quickstart: a TypeScript file, a deploy, a session. Ten minutes.

npx opencomputer template deploy https://github.com/diggerhq/shipvideo

Everything above is in the repo, and one click deploys it to your account. The idea comes from Deedy's post on Opus 5.5 and instructional video: the model writes the film as code, and code renders the same every time.

Read on Hacker News ↗ ← Back to News

Comments

No comments yet. Start the discussion.