When the clock hit 11 pm, we were already sketching a new editor UI. The goal was simple: let the CMS talk back to us, not just forward our typed words.
A New Kind of Editor
The first thing that struck me was the bubble menu. With a single click you can Refine or Ask AI, and the context is automatically pulled from the selected text. No more copy‑paste into a browser prompt.
AI as an Extension of the Writer
The inline panel feels like a sidecar. Highlight any paragraph, hit Ask AI, and the assistant pops up with a preview of what it thinks you’re asking. For fresh content, a slash command /ai-draft spawns a draft from scratch. The whole‑post rewrite bar floats at the bottom, letting you send high‑level instructions to a rework engine via /api/ai/rework.
We also made revisions safer. Every body edit now snapshots the previous version, and AI actions can attach a revision_note. That means you can always roll back to the exact state before an AI tweak.
Practical Takeaways – How to Build It
Local Model Support: I haev LM Studio running on my machine. Whats beautiful about that is that it supports OpenAI type chat completions APIs. So it was dead-simple to swap out my OpenAI API for a local LLM (currently running
gpt-oss-20b).Centralized Prompts: We built a system prompt that made sure to use my principles and voice for posts. The “one brain, many windows” narrative and the four topic lenses are injected into every flow—refine, draft, rework. That keeps voice consistent and reduces duplication.
Editor UX: The slash command now respects block scope, so you can run
/ai-draftinside a specific section. Block insertion positions are calculated relative to the cursor, and the document inspector gives you a collapsible status bar with path, save/publish state, and word count.Drag‑and‑Drop: We added an inspector to the editor. With the inspector you can reorder blocks with a simple drag. A subtle guide line appears when you hover over a potential drop target, and the active block is highlighted with a thin border.
Design Polish: The drag handles are cleaner, the schedule control is a compact Yes/No toggle instead of a checkbox, and the AI bar can be minimized to a star icon in the status bar. These tweaks may seem small, but they make the editor feel more like a tool than a set of widgets.
Why It Matters
We built this in one night, but the architecture is meant to scale. By treating AI as a first‑class editor feature, rather than an afterthought, we give writers the freedom to experiment without losing control. The snapshot revisions and revision notes mean that every AI interaction is auditable, which is crucial for teams that need to maintain editorial integrity.
For builders and founders, the lesson is simple: when you embed AI into a workflow that already feels natural, the result is less friction and more creativity. The CMS now reads like a conversation partner, not just a document store.
Next step? Measure how often the AI bar is used versus manual edits, and iterate on the prompt library. The more we understand what prompts drive real value, the better we can tune the system to match our “one brain, many windows” philosophy.