{
  "content": {
    "heading": "Bane's Lab",
    "kind": "home",
    "lead": "Bane's Lab documents the method I use to build software with LLMs, together with the instruction format, the software architecture and the ontology that the method relies on. I have used it since 2024, on every project I build, this site included. The method does not make a model's output correct. What it does is make incorrect output visible and refuse it, through checks that run on every change rather than through instructions the model is asked to remember.",
    "rows": [
      {
        "audience": "Engineering leads · Software architects · LLM-assisted developers",
        "description": "The method itself comes in six parts that follow the order of the work, from starting a project to shipping it. Each section describes one practice, how it fails when it is missing, and a test you can run against your own work to check it.",
        "go": "Read the method",
        "subtitle": "Disciplined Methodology",
        "title": "Methodology"
      },
      {
        "audience": "Software architects · LLM-assisted developers · Tool authors",
        "description": "Pattern Abstract Grammar is a structured format for writing instructions to a model. A document declares what type of instruction it is, draws its verbs from a closed vocabulary and ends every step on a gate with checkable evidence. The page covers the grammar, its validation rules and a set of templates.",
        "go": "Read the grammar",
        "subtitle": "Pattern Abstract Grammar",
        "title": "PAG"
      },
      {
        "audience": "Engineering leads · Software architects · LLM-assisted developers",
        "description": "The page covers software architecture for systems in which a model writes much of the code. It models a system as a graph, holds each principle as a typed record, traces each anti-pattern back to the control whose absence caused it, and derives coverage from a grid rather than from a count.",
        "go": "Read the architecture",
        "subtitle": "Principles, decay and coverage",
        "title": "Architecture"
      },
      {
        "audience": "Software architects · LLM-assisted developers · Tool authors",
        "description": "The ontology is the data behind the architecture page, and the site's own checks read it too. It holds every principle with its relations and repairs, every defined term, every algorithm contract, and how each tension between two principles is resolved.",
        "go": "Open the ontology",
        "subtitle": "Principles, lexicon and algorithms",
        "title": "Ontology"
      },
      {
        "audience": "Software architects · LLM-assisted developers · Tool authors",
        "description": "The anatomy page shows the client source of this site, parsed on every build. Each file is shown with its syntax walk, its definitions and the calls between them, together with the diagnoses the parser ran over the whole tree.",
        "go": "Open the anatomy",
        "subtitle": "Source trees, walks and definitions",
        "title": "Anatomy"
      },
      {
        "description": "Here I answer the questions I am asked most often about the methodology, including where it came from and where it stops being useful.",
        "go": "Read the FAQ",
        "subtitle": "Origin, practice and limits",
        "title": "FAQ"
      }
    ],
    "stats": [
      {
        "label": "rules enforced on every change",
        "value": 66
      },
      {
        "label": "steps in one verification run",
        "value": 94
      },
      {
        "label": "architecture principles",
        "value": 446
      },
      {
        "label": "defined terms",
        "value": 1357
      }
    ],
    "thesis": "Structured collaboration with LLMs"
  },
  "description": "Bane's Lab documents a method for building software with LLMs, together with the instruction format (Pattern Abstract Grammar), the software architecture and the ontology the method relies on.",
  "id": "home",
  "label": "Home",
  "tab": null,
  "title": "Bane's Lab — Structured collaboration with LLMs",
  "url": "https://banes-lab.com/"
}
