Skip to content

Build with an AI agent

Port60 templates are unusually good territory for AI coding agents: the whole job is a handful of Liquid files against a machine-readable contract, with a validator that returns structured errors the agent can iterate against, and hard walls (the dialect whitelist, escape-by-default, render budgets, human review) that make the worst an agent can produce a rejected upload, never a broken charity site.

Terminal window
npx @port60/template-kit create riverside-warm
cd riverside-warm && npm install

The scaffold ships AGENTS.md (and an identical CLAUDE.md), the briefing every serious coding agent reads on entry: the file layout, the contract rules, and the iteration loop. You don’t need to explain the platform to your agent; the scaffold already has.

  1. Edit sections/*.liquid, layout.liquid, assets/theme.css, manifest.json.
  2. npm run validate:json, machine-readable: {ok, errors[], warnings[], provenSupports}. The agent fixes every error and re-runs until ok: true. This is the platform’s exact upload check, so a clean local pass is a guaranteed clean upload.
  3. You watch npm run dev at http://localhost:4400, the same fixtures render reviewers see. Refresh after edits; validation re-runs in the terminal on every save.
  4. npm run package, the uploadable <name>-<version>.zip.

Read AGENTS.md first. Build me a warm, editorial template for a food-bank charity: generous type, cream background, a photography-led hero. Support the hero, values, cta and whatsOn sections, a layout with the member menu island in the header, and ship two looks, “Warm” and “Evening”. After every change run npm run validate:json and fix all errors. Tell me when it validates clean.

Everything on this site is available as one plain-text file at /llms-full.txt, the guides plus the generated contract reference (sections, islands, context variables, dialect, tokens, manifest schema). Fetch it once into context and build against it.

Supports flags are proven, not claimed: declaring supports.worship without rendering the worship fixture is a validation error, as is the reverse. Islands are placed, never implemented. Uploads only exist for approved developers, and every version passes human review before it can reach a charity’s site. The agent gets you to a validated artifact fast; the trust chain stays.