import { ImageResponse } from "next/og" export const alt = "oh-my-openagent — The Best Agent Harness" export const size = { width: 1200, height: 630 } export const contentType = "image/png" async function loadGoogleFont(family: string, weight: number): Promise { const url = `https://fonts.googleapis.com/css2?family=${encodeURIComponent(family)}:wght@${weight}&display=swap` const css = await (await fetch(url)).text() const match = css.match(/src: url\((.+?)\) format\('(?:opentype|truetype)'\)/) if (!match?.[1]) throw new Error(`Font URL not found for ${family} ${weight}`) const fontResponse = await fetch(match[1]) return fontResponse.arrayBuffer() } export default async function OpenGraphImage(): Promise { const [geistBold, geistRegular, geistMonoMedium] = await Promise.all([ loadGoogleFont("Geist", 700), loadGoogleFont("Geist", 400), loadGoogleFont("Geist Mono", 500), ]) return new ImageResponse(
{/* Dotted grid background: flexbox-only, no grid */}
{/* Top-left: brand wordmark */}
oh-my-openagent
{/* Center stack: headline + subtitle */}
The Best Agent Harness
Sisyphus orchestrates the team. Type ultrawork. Done.
{/* Bottom row: install command + cursor */}
$ bunx oh-my-openagent install
, { ...size, fonts: [ { name: "Geist", data: geistRegular, weight: 400, style: "normal" }, { name: "Geist", data: geistBold, weight: 700, style: "normal" }, { name: "Geist Mono", data: geistMonoMedium, weight: 500, style: "normal" }, ], }, ) }