theboringoffice v0.2.20 — sight, sound, and the open road
The terminal office where LLM agents work as coworkers. v0.2.20 teaches your office to see — boss turns render inline images — and opens the road to the web from inside the transcript.
Features
- Inline image previews (wave 62) — every completed boss turn with file parts renders a
🖼 <name> · <WxH> · <mime>chip + box-averaged raster preview of the first 64×20 cells with 24-bit38;2/48;2▀half-blocks (works on every terminal). Payload caps: 8 MiB, decoded dims ≤10k, ≤4 images per turn, pending bubbles never show previews, remote URLs never fetched - Terminal protocol detection layer —
ui.images = "auto" | "ascii" | "off"+/imagescycler: pathauto→ kitty placeholder lines (ESC_G a=T,t=d,f=100,i=<hash8>,q=2on kitty && Ghostty) → iTerm2 OSC 1337 (inline=1;width=<cols>:height=<rows>;base64,…) → ASCII half-block fallback; strict kitty→iterm→ascii fallback with native-error recovery oopen-in-browser (wave 65) — press on any bubble carrying verified targets (schemed URLs, on-disk local paths verified by os.Stat, boss media):· o (open)beacon marks it;ofloats an OPEN IN BROWSER picker or dismisses one-off direct;exec.LookPath(open|xdg-open)with activity logging→ opened: <name>; the claim holds only while transcript is focused and the selection mark is live, and only outside modals — it never steals keystrokes from free typing- zenbu terminal-browser lane (wave 70) — on kitty-capable terminals (kitty, Ghostty, WezTerm), open targets in-terminal via
terminal-browserbinary when installed, cascading cleanly to system-open on non-zero exit or host mismatch;THEBORINGOFFICE_TERMINAL_BROWSER_OFF=1kills the lane without touching anything else (no config changes, no API surface) - Neighbourhood chain in the box — the full waves leading here: Claude Code backend (56-59), memory wave (52), board sync (53), wedge-out-of-transcript (55), terminal capture re-key (44), gitignore attach (66), docs site (67-69)
Install / upgrade
curl -fsSL https://raw.githubusercontent.com/theboringhumane/theboringoffice/main/install.sh | bashFull Changelog: v0.2.19...v0.2.20