PageQuarry

A Modern Block-Based CMS for AI Agents and their Humans

View on GitHub

Guide

How to Publish a Page Without Breaking the Site.

A human or agent follows the same short loop: draft a markdown file, call approved blocks, run the check command, accept the page, and rebuild from approved content.

The goal is not more process. The goal is one clear path that humans and AI tools can both follow.

Write the Draft

Start with One Markdown File.

Write the page in the submit-here directory so drafts stay separate from published history and generated site data. The draft should call approved blocks and fill their inputs rather than invent new presentation in markdown.

One draft file should lead to one clear publishing decision.

Validate

Run the Check Command Before You Accept It.

Use npm run content -- check content/submit-here/your-file.md to validate the draft. The checker catches bad frontmatter, invalid block usage, and route collisions before the change becomes trusted.

That validation step is what keeps fast editing from turning into silent production mistakes.

Actual Example

Validation Outputterminal
1npm run content -- check content/submit-here/home.md2draft passed3page_id: home4slug: /5template: home

Accept

Accept New Pages or Revisions with One Command.

Use npm run content -- submit content/submit-here/your-file.md for a new page. Use npm run content -- edit content/submit-here/your-file.md when you are revising an existing page.

Published source is mirrored into the archive and the live site data is rebuilt from there. That means the agent can help write the draft, but the trusted source only changes when the reviewed command runs.

Actual Example

Accepted Outputterminal
1npm run content -- edit content/submit-here/home.md2draft accepted3revision: 20260413-164652752-8284c506cd614archive current: content/archive/index/current.md

Recovery

Bad Edits Should Still Be Recoverable.

If someone writes to the wrong place or mangles generated files, the system quarantines that work into recovered drafts instead of letting it disappear or leak live.

That is a practical requirement when people and AI tools are both touching the same repository.

See the Rest of the Workflow.

If the command flow makes sense, the architecture page shows why the system is structured this way.

Read How It Works