Blog

  1. Sep 10, 2026 · Design note

    Prompt injection in an authoring pipeline

    内容编排流程中的提示注入

    In a composer, the person pasting the material is the one being attacked. What typed output and deterministic validation remove, what the prompt handles, and what only a human reviewer can catch.

  2. Sep 10, 2026 · Build log

    Two days, in order

    两天,按顺序

    AIBlog went from an empty folder to a deployed site in two working days. A record of what happened when, because the order mattered more than the speed.

  3. Sep 10, 2026 · Release

    Fencing the one public model call

    为唯一的公开模型调用设栏

    The question box on the search page is the only model call a visitor can trigger. This release treats it as a cost surface: cheap gates first, no answer without relevant excerpts, and site-wide daily caps on both count and dollars.

  4. Sep 10, 2026 · Themes

    One document, four designs

    同一份文档,四套设计

    The site now has a Theme menu: Plain, Institute, Desert light and Linen and poppy. The same stored data, four faces — and what building three real packs against the DOM contract turned up.

  5. Sep 10, 2026 · Guide

    A page for clients: you only have to do three things

    给客户的一页:您只需要做三件事

    How a non-technical client maintains the site after handover: paste the text, upload the photos, say one sentence and publish. Plus what editing looks like once a page is live, what cannot be broken, and roughly what a post costs.

  6. Sep 9, 2026 · Costs

    What a page costs

    一个页面的成本

    The figures we quote for composing a page, revising it, describing a photo and answering a question — where they come from, what prompt caching changes, and why the number is an estimate rather than an invoice.

  7. Sep 9, 2026 · Design note

    A block is already a chunk

    区块本身就是切片

    Adding embeddings to a content system usually starts with a chunking problem. AIBlog skipped that step, because its documents are already cut into typed blocks with stable ids — and four features fell out of one index.

  8. Sep 7, 2026 · Design note

    Save and publish, not staging

    保存即发布,而非暂存

    Strict staging or live editing: two honest defaults for editing a page that is already public, and the one AIBlog picks for non-technical clients.

  9. Sep 4, 2026 · Design note

    Block identity across AI regeneration

    AI 重新生成时的区块身份

    The composer returns a whole page every turn. Short per-page ids and a three-step reconciliation keep each block's identity — even if the model drops every id.

  10. Sep 1, 2026 · Design note

    Why blocks, not HTML

    为什么用区块,而不是 HTML

    The client edits content, the composer proposes structure, and the site keeps design authority. How that split works underneath, and what a page costs to produce.