Docs/Core concepts
Images, video & files
Paste screenshots into the prompt, attach PDFs and video, and let the agent look at charts and renders with gray view.
Source: crates/gray/src/repl/attachments.rs
Ctrl-V pastes an image straight from the clipboard. Paste a file path and Gray attaches it by type: images are downscaled before sending, PDFs arrive as text (via pdftotext, when installed), and video arrives as a still of its first frame. Audio has no portable wire path on OpenAI-compatible providers, so Gray says so instead of silently dropping it.
gray view
Bash output is text, so the agent cannot look at a PNG by printing it. gray view closes that gap: inside a session the bash tool claims gray view <path> — and cat image.png — and attaches the file as an image the model can see.
$gray view plot.png shot.jpg # png jpg jpeg gif webp bmp heic heif$gray view demo.mp4 # a tiled contact sheet of sampled frames$gray view demo.mp4 --frames 32 # up to 64 tiles (default 16)$gray view demo.mp4 --native # send the video itself (Gemini-class models only)
Images are downscaled to 2000 px. Run gray view yourself and it draws the image inline on terminals that speak the Kitty graphics protocol (Kitty, Ghostty, WezTerm).
Join the Discord
Chat with the people building and running Gray. Show what you made with it.
Join Discord →