• Guardrails for Agentic Development

    Guardrails for Agentic Development

    Agents can write code fast, but speed without feedback loops produces mediocre results. Here’s how guardrails transform agentic development from vibe coding into a workflow you’d actually trust in production.

  • Claudaborative Editing 0.4: Twice the fun!

    Claudaborative Editing 0.4: Twice the fun!

    Claudaborative Editing 0.4 brings AI writing tools directly into the WordPress block editor. Proofread, review, edit, translate, plan posts with an interactive compose mode, and get pre-publish metadata suggestions, all without leaving Gutenberg.

  • The Human in the Loop

    The Human in the Loop

    The ‘human in the loop’ paradigm works brilliantly for code, where creativity lives in architecture and design. But for writing meant for humans, the act of writing is the creative act, and delegating it to an LLM means delegating your creativity. Here’s why I build AI writing tools that assist rather than replace.

  • Claudaborative Editing 0.2: now with 500% more collaboration!

    Claudaborative Editing 0.2: now with 500% more collaboration!

    A week ago, I put together a quick tech demo, showing how an MCP server could be created for Claude Code that hooked directly into Gutenberg’s Collaborative Editing feature, allowing it to act as a digital collaborator on a post. The demo focused primarily on text generation, but that’s not really the benefit that I…

  • Embed All The Things!

    Embed All The Things!

    Over 10 years ago, we introduced the oEmbed API to WordPress, expanding how WordPress handled embedding to cover all WordPress sites. It was an intentional decision to focus on oEmbed at the time: we wanted to focus on the embedding mechanism that would give site owners maximum control over what their embeds looked like. The…

  • Introducing claudaborative-editing

    Introducing claudaborative-editing

    Human editor’s note: The post below was written by Claude Code. I personally don’t use LLMs to write for me, but I figured I’d make an exception just this once. Using entirely LLM-generated content isn’t a workable approach to writing good copy, but I’m interested in seeing how we can use these tools to interact…