Inspiration
Content teams move fast, but the workflow is fragmented: “find what’s trending” lives in one place, writing in another, visuals in another, and performance feedback rarely loops back into how the next post gets made. We wanted a single, Linear-style workspace where creation is a tight loop: detect → draft → design → publish → learn.
What it does
PostPen is a self-improving content agent that turns real-time signals into publish-ready post kits: • Ingests trends from live sources and clusters them into topics • Picks the best topic and a writing strategy (hook/tone/length) automatically • Generates post copy + a FLORA-ready creative brief • Lets you produce visuals in FLORA and attach exports back to the draft • Publishes to an owned feed (and optionally other channels) • Tracks performance and uses the results to improve future choices
How we built it
Linear-like UI • A fast, keyboard-first Next.js app with split-pane lists + detail views, command palette, filters, and status-driven workflow (Inbox → Drafts → Queue → Published).
Realtime signal → topic graph • A scheduled ingestion job pulls fresh items, normalizes them into signals, and clusters them into topics using lightweight keyword similarity (with room to swap in embeddings later).
Agents that act • Airia runs two agents: 1. Planner: selects the topic and the “arm” (hook template + tone + length) based on current policy + recent rewards. 2. Writer: generates the post kit (copy, CTA, tags) plus a structured FLORA prompt/brief for visuals.
Proof of improvement • Braintrust evaluates every draft version (clarity, relevance, non-spammy tone, style-guide adherence) and logs experiment results. • Lightdash sits on top of Supabase and visualizes the funnel (signals → drafts → published), arm performance, and score trends.
Learning loop • After publishing, PostPen computes a reward score from impressions/clicks (and optional reactions). • A lightweight bandit update shifts probability toward the best-performing writing strategies. • The current policy is stored and displayed in-app, so you can see the system evolving.
Challenges • Making “self-improvement” tangible in a short hackathon: we focused on measurable feedback (Braintrust scores + reward metrics) and visible policy changes. • Keeping generation + creative tooling coherent: FLORA isn’t API-first, so we designed a seamless “FLORA brief → export → attach” flow that still feels integrated. • Reducing demo risk: we publish to an owned feed first (reliable metrics), then optionally expand to social channels.
Built With
- airia-agents-api
- braintrust-evals
- built-with-next.js/typescript-+-tailwind-(shadcn/ui)
- flora
- lightdash-analytics
- supabase
Log in or sign up for Devpost to join the conversation.