how to get fable to watch videos for just a few cents cover

how to get fable to watch videos for just a few cents

Andres avatar

Andres · @WiFiMoneyGuy · Jul 27

View original post

i'm going to show you how to wire a second pair of eyes into your smartest model, so it can finally watch videos and look at hundreds of images without eating your usage

everyone's working around the same blindness right now, pasting screenshots to claude, hand-transcribing what happens in a video, or pasting frames

most people use either claude code or codex as their main harness

so basically they are stuck with whatever configuration they come by fault

i used OMO (Oh My OpenAgent) through OpenCode since December and because of this I got to use different models for different agents

i quickly learned that it's better to have models for different tasks because not all models are good at everything

back then you couldn't just customize closed source harnesses like claude code or codex, but today that's pretty easy to do

as the models have gotten more intelligent, i went back to using frontier harness like claude code and codex

but I still have my harness set up to run agents with different models

because the truth is that some models are far better at certain tasks

i like fable a lot, but one of the problems is that it can't watch a video

well today I am going to show a very simple way to give it the ability to watch videos

specifically you are going to walk away with all of this:

  • why your best reasoning model should almost never do its own looking
  • the cheapest working eyes on the market right now
  • the exact math per image and per minute of video, so you can budget it before you build
  • the one-tool setup that lets claude call the eyes itself

let's get crackin'

your reasoner is blind, and that's fine

let me show you what the blindness actually costs

fable 5 and opus 5 cannot watch video, at all, there is no video input on the claude API, no matter what you pay

they can see images, but look at the price of looking... a full-resolution image on opus 5 runs up to 4,784 tokens, at $5 per million input that's about 2 cents per image, on fable at $10 per million it's closer to 5

2 cents sounds small until you remember two things

first, agents look at a LOT of frames, one browsing session or one video breakdown is dozens of screenshots

second, and this is the part nobody prices in, every image sits in the conversation history and gets re-sent on every following turn, so a 20-turn session with 10 images is not 10 image charges, it's closer to 200

the fix is not a smarter multimodal model, the fix is division of labor... your expensive model does the reasoning, a dirt-cheap model does the looking and hands back text

text is what claude wanted anyway, a 300-token description carries the signal of a 4,784-token image at 6% of the weight, on every single turn that follows

so let's give this bad boy some cheap glasses

the eyes: gemini 2.5 flash-lite (i get it from OpenRouter)

flash-lite is google's fast little multimodal model, and on openrouter it costs $0.10 per million input tokens and $0.40 per million output, with a 1 million token context window

it reads images, and unlike claude it reads video, mp4, mov, webm, even a public youtube link

here's the math that made me sit up:

  • gemini samples video at 1 frame per second, roughly 300 tokens per second of footage at default resolution
  • a 60-second tiktok ≈ 18,000 tokens ≈ a fifth of a cent
  • a 3-minute video ≈ half a cent
  • a full HOUR of youtube video at low resolution ≈ 4 cents

and a single image is 258 tokens, call it three thousandths of a cent, roughly 1,000x cheaper than showing the same image to opus

and yes, flash-lite is not a smart model, but it doesn't have to be, it's a witness not a judge, it describes what's on screen and claude does the judging

the wiring is one tool

openrouter speaks the standard chat completions format, so the whole integration is one curl:

wrap that in a small script, tell claude "when you need to see an image or a video, call look.sh with the file path and a question", and you're done

now the loop is clean, claude hits something visual, calls the tool, flash-lite watches it, text comes back, claude reasons over text

the prompt you send the eyes matters more than the model, ask for timestamps, on-screen text, cuts, framing, hook structure, not "describe this video"... the tighter the question the more useful the witness

personally this is the only way my business functions, i analyze tiktok videos at scale, and there is no version of that math that works if the watching happens on a frontier model, the eyes have to be cheap or the pipeline doesn't exist

one honest caveat, flash-lite will miss subtle things a frontier model would catch, so when a single frame genuinely decides something important, send that one frame to claude and pay the 2 cents

everything else goes through the cheap eyes

your model doesn't need to see, it needs someone who saw

Recent discoveries