Inspiration
News feeds are endless, noisy, and optimized for the next click. I wanted the opposite: a finite daily edition that understands one reader, respects their time, and feels composed by an editor rather than assembled from cards.
That idea became Codex Reporter—a one-reader newsroom run through Codex.
What it does
A short conversation establishes the reader's language, timezone, interests, exclusions, masthead, and publishing time. Codex then researches public reporting, checks provenance, synthesizes the useful parts, and designs a dense multi-page newspaper.
The paper is useful before a click: every printed story carries enough argument and evidence to understand it. Opening a story reveals additional reporting, images when they clarify the subject, and the original sources. Readers can like or dislike a story directly inside it. Those signals never rewrite a published issue; they become soft editorial guidance for future editions.
The current edition is live on OpenAI Sites, with page turning, adaptive print compositions, article views, reactions, themes, and revocable issue sharing.
How we built it
The product is a Codex-native loop rather than a website with an AI feature attached:
The Codex Reporter Skill is the editorial operating system. It conducts onboarding, defines evidence and image requirements, creates a private layout brief from the day's actual stories, and runs every publication gate in order. Codex with GPT-5.6 does the judgment-heavy work. It researches authoritative sources, distinguishes claims from uncertainty, rewrites reporting into one coherent story package, decides section balance, and composes each issue without copying a fixed template. Deterministic pnpm commands control state changes. The pipeline captures an exact context snapshot, prepares the bundle, validates content and security contracts, publishes it, verifies the live manifest, and can restore only the direct predecessor through a compare-and-swap guard. Sites is the durable product surface. It hosts the trusted React/TypeScript reader and publication API. Cloudflare D1 stores the private profile, reaction state, edition index, and share capabilities; R2 stores immutable edition bundles. Codex Schedule closes the loop. The project has one active local schedule configured for midnight Asia/Taipei. Each run is standalone: it reads persisted context and feedback, executes the Skill, publishes, and verifies without depending on the original conversation remaining open.
This separation matters. GPT-5.6 is free to make editorial and design judgments, while identity, concurrency, validation, and publication remain deterministic and testable.
Challenges we ran into
Making a newspaper, not a dashboard
The first layouts were too regular: clean card grids with generous whitespace. Real newspapers create hierarchy through columns, rules, unequal spans, offset seams, and several reading paths. We replaced presets with an adaptive 12-column planning step and measurable density checks, while keeping the reader accessible on desktop, at exactly 560 px, and on phones.
Making the click add value
A printed summary and a detail page easily become two copies of the same paragraph. We redesigned the story contract so the outside is a compact edition of the report and the inside must add material context, evidence, and sources.
Learning without overfitting
One dislike should not permanently ban a topic. Reactions are mapped back to the story's subject, format, depth, and placement, combined with cross-edition memory, and balanced with deliberate discovery.
Publishing safely while feedback changes
A reaction can arrive after research starts. Every edition is bound to the exact context revision that shaped it. If that revision becomes stale, publication returns a conflict and Codex must regenerate under a new edition ID instead of consuming unseen feedback.
Accomplishments that we're proud of
A live paper that feels like a finite issue rather than an infinite feed. An Agent Skills-compatible workflow with explicit research, editorial, layout, browser, and recovery gates. Immutable edition bundles with atomic publication and guarded restoration. An empty-first-run verification that exercises setup, context capture, preparation, validation, publication, and post-publish manifest checks. A reaction loop that improves tomorrow without mutating yesterday. One cohesive use of the Codex ecosystem: the Skill defines the newsroom, GPT-5.6 edits the issue, Sites makes it usable, and Schedule makes it habitual.
What we learned
The strongest agentic products give the model room for taste where taste is valuable, but narrow the irreversible steps. Codex should decide what matters, how to explain it, and how today's paper should look. Code should decide whether the source contract is valid, whether the edition matches its feedback snapshot, and whether publication is safe.
We also learned that hosting is part of the agent loop. Sites is not a landing page for generated files; it is where reading behavior becomes tomorrow's editorial context.
What's next
The next milestone is observing and documenting the first fully unattended scheduled publication end to end. After that, we want richer evidence visualizations, better cross-edition preference memory, and optional delivery surfaces—while keeping the newspaper finite, private, and readable.
Built With
- codex
Log in or sign up for Devpost to join the conversation.