用途:面向博客或营销站点,提供网站可直接读取的四个 Base(Posts、Pages、Categories、Tags)及供写作者使用的管理界面。文章为 Markdown,页面为 HTML,分类与标签在两者间共享。其 schema 并非自创,而是与 busabase-cms-sdk 的标准 profile 逐字段镜像,因此网站可通过 createBusabaseCms 读取 posts.list() 或 pages.getByPath("/pricing") 等内容。
主要能力:侧边栏含四个列表,列表上方有 Published/Drafts 筛选,详情面板提供 Edit 与 Publish/Move to draft。Help & Settings › Connect 显示 Folder id 及消费站点所需的环境变量与服务器代码;Help & Settings › Resources 将实际 Base 与 SDK 预期做差异对比,便于提前发现 schema 漂移。
使用方式与规则:路径(path)是路由,必须以 / 开头且按 locale 唯一;修改 path 会破坏既有链接,应先把旧值写入 legacy-paths。schema-version 必填且为 1。空字符串是值而非缺失,发布行上出现 description: "" 会导致整行被拒绝。json 字段存放 JSON 文本,如 legacy-paths、hero、features、faqs 需用 JSON.stringify 写入。locale 即使单语言站点也影响唯一性。关联指向 categories/tags 的记录 id。日期格式为 YYYY-MM-DD,published-at 决定博客索引排序。安装包需加 --auto-merge。
限制与约束:SDK 只提供 status 为 published 的行,草稿对访客不可见。保存结果取决于权限:有写权限时立即落盘,否则转为 ChangeRequest。不得用删除来“取消发布”,应把 status 设为 draft;不得批量改路径或 slug;不得在新建行上直接写 status: published,除非对方要求发布;不得修改四个 Base 的字段定义;不得在内容中放置密钥。模板维护脚本包括 node scripts/sync-content.mjs、npm install && node scripts/check-sdk-contract.mjs、cd content/busa-cms-app && node scripts/check.mjs。