Live demo: https://zen-notes-dagar.codebird17.chatgpt.site/ Source: https://github.com/codebird17/zen-notes

A quiet reflection engine for the thoughts you already wrote.

Short description

Zen Notes uses GPT‑5.6 to help people rediscover recurring ideas, useful tensions, and unfinished intentions across their notes—with every observation grounded in their own writing.

Inspiration

We write constantly, but our best thoughts disappear inside our own notes.

Search can find words we remember. It cannot reliably surface an idea we forgot, an intention repeated across several pages, or a useful contradiction between two moments of thinking. As an archive grows, capture stays easy while deliberate review becomes expensive.

We wanted to explore a different role for AI in a writing product. Not another prompt box. Not an assistant that produces more text. A quiet layer that helps someone hear their own thinking again, then gets out of the way.

What it does

Zen Notes is a calm note-taking workspace with two deliberate intelligence moments.

Quiet Review examines one notebook and surfaces recurring threads, a meaningful tension when the notes support one, unfinished intentions, one next move, and a reflective question. Every observation includes evidence that opens the exact source note. Closing the panel preserves the latest result; editing the notebook marks that result as previous and offers a fresh run. Nothing is saved unless the writer explicitly chooses Save as reflection.

Related Thoughts begins with a selected passage in the editor. It finds conceptual continuations elsewhere in the notebook, explains why each one connects, and keeps the source a click away.

The complete loop is: invite reflection, understand what surfaced, verify it in the original writing, decide whether it is worth keeping, and return to the note.

Why it is different

Most AI note products optimize for generation, rewriting, or chat. Zen Notes focuses on reflective retrieval: helping the writer notice what their existing archive is already saying.

The product has no persistent AI persona, no silent workspace mutation, and no unsupported “insight” without a path back to the writer's words. The model can notice and connect. Only the writer can decide what becomes part of the notebook.

How we built it

Zen Notes is built with React 19 and TypeScript on vinext and deployed as a Cloudflare Worker through OpenAI Sites. The intelligence layer uses GPT‑5.6 Terra through the OpenAI Responses API.

Quiet Review is not one summarization prompt over a text dump. The server exposes two narrow tools:

  • search_notes finds relevant passages inside the selected notebook.
  • read_notes returns the complete notes needed to support a conclusion.

The first model turn is forced to search. Before returning a final result, the loop requires a read. GPT‑5.6 uses medium reasoning for the notebook-wide review and low reasoning for the quicker selection action. The output must match a Zod-backed Structured Output contract.

A separate grounding layer then validates every page ID, restores canonical page titles, and replaces unsupported excerpts with source text. Requests are stateless (store: false) and capped at five tool rounds.

The API key stays server-side. Notes are treated as untrusted source material rather than instructions. Requests are bounded to one notebook, cross-site calls are rejected, responses are non-cacheable, and the model has no write tool. If the user saves a reflection, model-authored text is HTML-escaped before it enters the editor.

Why GPT‑5.6 matters

Keyword retrieval can identify matching words. The useful part of Quiet Review is identifying a supported relationship between ideas written at different times and for different immediate purposes.

GPT‑5.6 supplies the cross-note reasoning: it searches, chooses which notes need full reading, and synthesizes patterns, tensions, and open loops into a strict result shape. Ordinary application code retains control over scope, evidence, safety, and mutation.

Using Terra with different reasoning effort for the two interactions gave us the right product balance: deeper synthesis when a user deliberately asks for a notebook review, and lower latency when they ask for a connection from a selected sentence.

How Codex accelerated the project

Codex was the primary build environment throughout Build Week. The collaboration was iterative rather than a one-prompt generation exercise.

The human product decisions were to pursue reflection instead of generation, reject a chatbot interface, require visible evidence, keep saving explicit, and preserve a calm writing experience. Codex accelerated the work by interpreting the challenge, turning the thesis into an implementation plan, restructuring the early interface, building the Responses API tool loop and structured contracts, implementing the native review experience, hardening security and grounding boundaries, writing regression tests, deploying production versions, and preparing the demonstration and submission package.

Visual and interaction feedback was repeatedly applied to the working product: navigation density, selection states, typography, editor hierarchy, loading progression, review continuity, and source behavior were refined across separate commits.

The repository history begins on July 18, 2026, within the Build Week submission period. It preserves the workspace foundation, the later GPT‑5.6 extension, the hardening pass, live-model verification, and final UX refinements as distinct milestones. The final submission includes the required /feedback Session ID from the primary Codex thread.

Challenges we ran into

The hardest product problem was making AI feel native to a calm notebook without letting it dominate the notebook. A conventional assistant panel could have been implemented quickly, but it would have contradicted the experience we wanted.

The hardest engineering problem was trust. A fluent cross-note observation is not useful if its source cannot be verified. We solved that with tool-mediated access, forced search and read stages, strict result contracts, clickable evidence, post-generation grounding, and an explicit approval boundary before any write.

We also had to balance continuity with freshness. A completed review should not disappear when its panel closes, but it should not pretend to be current after the notes change. Zen Notes now preserves the previous review per notebook, marks it as stale when necessary, and lets the user choose when to rerun it.

Accomplishments that we are proud of

  • A complete consumer product experience rather than a standalone AI demonstration
  • A distinctive reflection interaction that does not resemble a chatbot
  • Real GPT‑5.6 tool use with enforced search → read sequencing
  • Structured, source-linked observations grounded after generation
  • A no-write model boundary and explicit Save as Reflection flow
  • Persistent source links on saved reflections
  • Thoughtful loading, empty, failure, continuity, freshness, and guided-demo states
  • Server-only credentials, notebook isolation, request limits, injection boundaries, and safety identifiers
  • A deterministic fallback that is honestly labelled instead of impersonating a live model
  • A reproducible test suite and GitHub Actions verification workflow

What we learned

The most valuable AI feature was not the one that produced the most content. It was the one that helped a person notice something valuable in their own work and then receded.

Evidence improved the product twice: it made the model's observations more trustworthy, and it gave the interface a natural next action. Explicit approval boundaries had the same dual effect. They reduced risk while making authorship feel clear.

We also learned that “calm” does not mean sparse or vague. Calm comes from clarity: each element should explain why it exists, what it will do, and whether the writer remains in control.

Why it can matter

Zen Notes is for writers, founders, researchers, students, and knowledge workers whose useful thoughts accumulate faster than they can revisit them.

The first success measures would not be generated words or time spent chatting. They would be evidence opened, older notes revisited after a review, reflections explicitly saved, and whether a person acts on an unfinished intention that would otherwise have remained buried.

That makes the opportunity broader than summarization. Zen Notes can become a longitudinal reflection layer for a private archive while preserving the same promise: intelligence appears only when invited, and every claim remains traceable.

What is next

Next we would add encrypted cloud sync, private semantic indexing, cross-notebook reviews, and a longitudinal reflection trail that shows how an idea changes over time. Each addition would retain the current trust model: narrow access, visible evidence, explicit approval, and no silent mutation.

Testing instructions

  1. Open the public application.
  2. Choose Work → Product direction → A calmer editor.
  3. Select Quiet Review, then begin the review.
  4. Open an evidence item and confirm it returns to the source page.
  5. Reopen Quiet Review and confirm the completed result is preserved.
  6. Choose Save as reflection and inspect the source links on the saved page.
  7. Select “Prototype backlinks without adding another panel” in the editor and choose Relate.

No account or test credential is required for the public application.

Built With

  • cloudflare-workers
  • codex
  • openai-gpt-5.6-terra
  • openai-responses-api
  • react-19
  • shadcn/ui
  • typescript
  • vinext
  • vite
  • zod
Share this project:

Updates