Get started

Install the CLI, scaffold the GXT substrate in your repo, legislate a mission, run work inside TMVC across your agent graph, and prove pass with `gantry verify` at each gate. Three roles — Planner, Executor, Verifier — keep scope and evidence separate. In a wired IDE, your agent can run most graph hops via MCP tools and setup skills; you approve scope and merge, not every shell command.

Step zero

Cage one agent run first

Start your agent inside the cage. While the session runs, it restores CI workflows, .env files, git hooks and git config as they change and refuses git pushes of them; lockfile changes are listed, not reverted. It restores rather than blocks, and doesn't restore git history. To cover your own paths too (tests, migrations, keys), run gantry cage suggest --write, review the proposal and commit it as .cage.yaml; it can only add protection.


            
            npx @jeger-ai/opengantry-cage -- claude
          
            
            npx @jeger-ai/opengantry-cage -- aider
          

Install

Install the CLI

OpenGantry is a local CLI (gantry) — no hosted dashboard required. Use curl or PowerShell if Node.js is not on your PATH yet (they bootstrap Node 24 LTS). npm, pnpm, and bun need Node 24+ already installed. Cage an agent covers step zero only.

What do you want to install?

Run the agent you already use inside the cage. It restores CI configs, .env files and git hooks/config while the session runs. No setup, no manifest. Needs Node 24+.


            
            npx @jeger-ai/opengantry-cage -- claude
          

Missions, gantry verify, MCP and hooks, with the cage included as gantry cage. curl and PowerShell bootstrap Node 24 if it is missing.


            
            npm install -g @jeger-ai/opengantry
          

            
            gantry --version
          
            
            gantry doctor
          

Bootstrap

Bootstrap your repo

From your project root (empty repo or existing codebase), scaffold the GXT substrate. The tutorial walks the first change graph; headless CI uses gantry init --yes --no-ci.


            
            gantry init --tutorial
          
            
            git config core.hooksPath .githooks
          
            
            gantry planner set "$(git config user.email)"
          
            
            gantry doctor
          

.gitagent/missions/

Mission YAML — scope, gate_command, interrogation record

.gitagent/foreman/MANIFEST.json

Skill routing, TMVC roots, risk tiers

.gitagent/planner/RULES.md

Planner law and verification rules

.githooks/

Pre-commit and pre-push enforcement

EXECUTOR_LOG.md

Verbatim gate output quotes for verify

Roles

How OpenGantry is used

Every change follows the same contract: legislate scope → execute inside it across your orchestration graph → verify with structured output at each gate. The roles can be different people, workers, or agent passes — verify must not be the same actor who edited without trace evidence.

Every change is a small graph: legislate → commit → pin → execute → verify. One IDE session is a single-node graph; orchestration buses add parallel workers on the same mission YAML. Step 6 below (audit) is the reviewer grep after verify passes.

Planner

Legislates mission YAML — TMVC roots, forbidden zones, and gate_command. Commits with [MSN-XXXX] before any executor runs. Allowlisted via GANTRY_PLANNER_EMAILS.

Executor

Human or agent. Edits only inside the pinned mission scope. Appends verbatim PASS quotes from gate output to EXECUTOR_LOG.md — not summaries.

Verifier

gantry verify — separate from whoever edited. Runs gates, checks trace mapping, and emits pass or structured findings[]. Fail closed; no chat override.


            
            gantry pin .gitagent/missions/MSN-0042.ship-feature.yaml
          
            
            eval "$(gantry runtime env)"
          
            
            npm test
          
            
            gantry verify --json
          

Walkthrough

Your first mission — step by step

What OpenGantry enforces on each change. Steps are for learning the chain — or delegate to your agent via MCP (gxt_*) or the setup skill after you approve scope.

Legislate scope and gates

Define TMVC roots and gate_command in mission YAML before any edits.

What your agent needs

  • Gather intent, MSN-NNNN, skill-key, and a real gate command (tests, lint, typecheck).
  • No application edits until step 2 — mission law must land in Git first.
  • MCP: gxt_start_orchestration or gxt_draft_legislation → human approves scope in chat.
  • Cursor .cursor/mcp.json command is ./scripts/mcp-launcher.sh. Specimen and adopter files are byte-identical. There is no mcp.json parity exemption.

            
            gantry legislate "Fix login spinner loading state" --msn MSN-0001 --skill-key gantry --gate-command "npm test"
          

Confirm tmvc_roots in .gitagent/missions/MSN-0001.fix-login-spinner.yaml (e.g. src/features/auth/**). Interactive alternative: gantry start with the same MSN flags.

Enterprise

Org policy, ledger, and cross-repo gates

Optional steps. The spoke still enforces; skip these for a single-repo start.

Pin an org policy repo

Tighten-only floor from a signed git bundle.

What your agent needs

  • Create a dedicated policy repo with ORG-POLICY.yaml (see examples/org-policy/).
  • Write .gitagent/foreman/POLICY.pointer.json and run gantry policy pull.
  • Doctor and verify stay offline after the pin.

            
            gantry policy pull
          
            
            gantry policy status --json
          

IDE

Wire your agent harness

gantry init scaffolds hooks, MCP (gxt_* tools), rules, and .gitagent/planner/AGENT-SETUP.md. Once wired, you describe intent in chat — the agent legislates, pins, runs gates, and verifies. You approve scope and Planner commits; you do not need to copy-paste every command from the step-by-step guide.


            
            gantry doctor
          
            
            gantry pin .gitagent/missions/MSN-0001.fix-login-spinner.yaml
          
Integration guide Cursor, Claude Code, headless runners, and CI handoff.

Optional

Discover before you legislate

Brownfield repo? Scan conventions first — discovery writes .gitagent/discovery-proposal.json with file:line evidence. Blueprint turns confirmed findings into TARGET_ARCHITECTURE.yaml and verification_plan.json. Nothing becomes law until you accept it.


            
            gantry init --discover --domain code
          
            
            gantry blueprint --domain code --yes