Skip to Content
DocumentationCreate a meshOverview

Create a mesh

This section is the practical how-to: it takes you from nothing to a published page, using only the gtmesh CLI and two repo-local skills. If you are new to the vocabulary (registry, catalogue, seal), skim the glossary and mental models first — the words below all live there.

The pipeline in one line

init → operator → pull → plan → apply → promote → write → seal → publish

gtmesh init scaffolds a clean repo; the repo-local operator skill then drives the build loop conversationally — it runs pull → plan → apply and resolves what the plan flags, with a human gate on every judgement call.

Each verb does one thing and commits its result. Nothing is hidden state: the committed graph (graph/nodes.jsonl + graph/edges.tsv) is the source of truth for every page that could exist and what state each is in.

The two loops

The pipeline above is not really one straight line. It is two loops that share a registry, with one human gate between them.

  1. The catalogue loop (cheap, automatic): pull → plan → apply. This keeps a map of everything that could exist in sync with your keyword data. It creates no pages and writes no prose, so it is safe to run on a schedule.
  2. The production loop (deliberate, human-driven): promote → apply → write → seal → publish. This decides which catalogued pages you actually build, then builds, reviews, and ships them.

promote is the gate between the two. It sets a page’s status and builds nothing — so the expensive, human-facing step (writing) is always an explicit, reviewable choice, never a side effect of a data pull.

The diff is always graph-to-graph. plan compares what the committed graph should be (from your inputs) against what’s committed; apply makes reality match. plan is read-only; apply, seal, and the lifecycle commands (promote, publish, …) are the only things that write state.

Where to go next

  • Before you start — what to have ready before you run the operator: the business facts, demand access, and the one mindset shift (your internal labels are not search queries).
  • End-to-end walkthrough — the full happy path, step by step: what each command does, what it reads and writes, what gets committed, and where a human decides.
  • After init — you have a repo, now what: run the operator loop, how to read the plan, the patterns to look for, what to tune, and how to scaffold your first pages safely. Start here once gtmesh init is done.

Once a mesh exists, you stop bootstrapping and switch to the refresh loop (change an input, reconcile) and the lifecycle reference (what each kind of change does to a built page).

Last updated on