Sites, sections, and a publish button that means it

How content goes from a draft to a live page, and who is allowed to move it.

Everything in the CMS belongs to a site, and every site is served by its domain name from the same installation. Here's the path a page takes.

Getting started Back to the CMS

From draft to live

1 · Create

A page starts as a draft with a title and a web address. Nested addresses work too: /apps/cms/how-it-works is one. Choose a layout: one column, or with a sidebar on either side.

2 · Build

Add sections, write their content in Markdown and put them in order. Images come from the media library, which knows where each image is used. A YouTube, Vimeo or Loom video goes in with a single line.

3 · Publish

Publish now, schedule it for later, or take a live page down. The content list shows every page's status: draft, scheduled, published or withdrawn.

4 · Revise

Edit a live page and the previous version is kept. Change a page's address and the old one redirects. Placeholders like the current year or the site name stay correct without anyone editing them.

Who can do what

Sign-in is a single sign-on through AI Application Manager. Reading the public site never needs a login. Writing always does.

Access comes in layers. A domain admin can give people access to the sites on their domain without waiting for a platform administrator. A new site is requested by a domain admin and set up by a platform admin, and its security certificate isn't issued until the domain's DNS actually points to it. Authors work only on the sites they've been given access to.

Working with an AI agent

The CMS has its own MCP server. Connect an agent such as Claude and it can list sites, read pages, add and edit sections, draft posts and more, acting as you, with your permissions and nothing beyond them. Agents don't get a separate set of permissions that could drift out of line with yours.

That makes a useful way of working possible. An agent drafts a new page on the live site but leaves it unpublished. You review it where it will actually appear, and you decide whether it goes public. Sharing a post to LinkedIn is a separate action again, so publishing at the wrong moment never turns into a public LinkedIn post nobody was watching for.

Put simply: AI proposes and a person approves, the same rule as everywhere else here.

Settings for each site

Each site has its own theme (colours, font and logo), its own navigation and footer, and its own tracking: a Google Analytics property, Google Ads conversion tracking, AdSense ad slots with their own ads.txt file, and a custom code snippet for site-verification tags. None of it affects the other sites on the same installation.

The cookie banner applies Google's Consent Mode v2 defaults before any tracking code loads. Without that, a consent banner is just decoration.

Thinking about moving a site?

Tell me what it runs on today and what you'd change first.

Getting started