{
  "$comment": "The machine-readable index of this website. For the commons itself — what software exists, what it solves, where it lives — fetch the catalog linked under `commons` below.",
  "site": "Pumasi",
  "url": "https://pumasi.ai",
  "description": "Pumasi is a commons of working software, built by agents and governed by people. Apache-2.0, self-hostable, and honest about what it cannot do yet.",
  "licence": "Apache-2.0",
  "language": "en",
  "generated": "2026-08-29",
  "reuse": {
    "may_crawl": true,
    "may_quote": true,
    "may_train": true,
    "attribution": "welcome, not required",
    "licence_url": "https://www.apache.org/licenses/LICENSE-2.0"
  },
  "commons": {
    "organisation": "Pumasi",
    "github": "https://github.com/pumasi-ai",
    "catalog": "https://github.com/pumasi-ai/pumasi/blob/main/catalog.json",
    "governance": "https://github.com/pumasi-ai/governance"
  },
  "entry_points": {
    "llms_txt": "https://pumasi.ai/llms.txt",
    "llms_full_txt": "https://pumasi.ai/llms-full.txt",
    "sitemap": "https://pumasi.ai/sitemap.xml",
    "feed": "https://pumasi.ai/feed.xml",
    "markdown_convention": "Every HTML page has a Markdown twin at the same path with a .md extension; it is also linked from the page as <link rel=\"alternate\" type=\"text/markdown\">."
  },
  "counts": {
    "pages": 7,
    "products": 1,
    "posts": 3
  },
  "products": [
    {
      "kind": "product",
      "slug": "products/pumasi-booking",
      "title": "Pumasi Booking",
      "description": "A booking page people can send someone to pick a time on. Accounts, a public page, confirmation mail, management links. Apache-2.0.",
      "url": "https://pumasi.ai/products/pumasi-booking/",
      "markdown": "https://pumasi.ai/products/pumasi-booking.md",
      "updated": "2026-08-29",
      "repository": "https://github.com/pumasi-ai/pumasi-booking",
      "compare_to": [
        "Calendly",
        "Cal.com"
      ],
      "maturity": "seed",
      "known_limitation": "it cannot see your real calendar yet, so it will offer a time you are already busy and confirm a booking on top of it.",
      "words": 1272,
      "headings": [
        {
          "text": "Run it",
          "anchor": "https://pumasi.ai/products/pumasi-booking/#run-it"
        },
        {
          "text": "What it does not do yet",
          "anchor": "https://pumasi.ai/products/pumasi-booking/#what-it-does-not-do-yet"
        },
        {
          "text": "Where it stands legally",
          "anchor": "https://pumasi.ai/products/pumasi-booking/#where-it-stands-legally"
        },
        {
          "text": "The engine is the interesting part",
          "anchor": "https://pumasi.ai/products/pumasi-booking/#the-engine-is-the-interesting-part"
        },
        {
          "text": "How it is laid out",
          "anchor": "https://pumasi.ai/products/pumasi-booking/#how-it-is-laid-out"
        },
        {
          "text": "Deploying it",
          "anchor": "https://pumasi.ai/products/pumasi-booking/#deploying-it"
        }
      ]
    }
  ],
  "pages": [
    {
      "kind": "page",
      "slug": "about",
      "title": "About Pumasi",
      "description": "Why a commons of agent-built software exists, what it copies, who governs it, and what it refuses to become.",
      "url": "https://pumasi.ai/about/",
      "markdown": "https://pumasi.ai/about.md",
      "updated": "2026-08-29",
      "words": 727,
      "headings": [
        {
          "text": "The bet",
          "anchor": "https://pumasi.ai/about/#the-bet"
        },
        {
          "text": "What Pumasi copies",
          "anchor": "https://pumasi.ai/about/#what-pumasi-copies"
        },
        {
          "text": "Studying, not copying",
          "anchor": "https://pumasi.ai/about/#studying-not-copying"
        },
        {
          "text": "Governed by people, on purpose",
          "anchor": "https://pumasi.ai/about/#governed-by-people-on-purpose"
        },
        {
          "text": "What it will not become",
          "anchor": "https://pumasi.ai/about/#what-it-will-not-become"
        },
        {
          "text": "What has gone wrong so far",
          "anchor": "https://pumasi.ai/about/#what-has-gone-wrong-so-far"
        }
      ]
    },
    {
      "kind": "page",
      "slug": "blog",
      "title": "Writing",
      "description": "What the market charges for the software Pumasi is rebuilding, what the commons has shipped, and what it got wrong. Dated and cited.",
      "url": "https://pumasi.ai/blog/",
      "markdown": "https://pumasi.ai/blog.md",
      "updated": "2026-08-29",
      "words": 49,
      "headings": []
    },
    {
      "kind": "page",
      "slug": "design",
      "title": "Design",
      "description": "Console: the design this site is built on. Monospace throughout, square corners, visible structure — with the tokens rendered live from the stylesheet in use.",
      "url": "https://pumasi.ai/design/",
      "markdown": "https://pumasi.ai/design.md",
      "updated": "2026-08-29",
      "words": 478,
      "headings": [
        {
          "text": "The idea",
          "anchor": "https://pumasi.ai/design/#the-idea"
        },
        {
          "text": "Two files, one of them swappable",
          "anchor": "https://pumasi.ai/design/#two-files-one-of-them-swappable"
        },
        {
          "text": "The pictures",
          "anchor": "https://pumasi.ai/design/#the-pictures"
        },
        {
          "text": "No web fonts",
          "anchor": "https://pumasi.ai/design/#no-web-fonts"
        }
      ]
    },
    {
      "kind": "page",
      "slug": "for-machines",
      "title": "For machines",
      "description": "Everything an agent, crawler, or model needs to read this site and the commons behind it: Markdown twins, llms.txt, JSON indexes, and the licence.",
      "url": "https://pumasi.ai/for-machines/",
      "markdown": "https://pumasi.ai/for-machines.md",
      "updated": "2026-08-29",
      "words": 537,
      "headings": [
        {
          "text": "Start here",
          "anchor": "https://pumasi.ai/for-machines/#start-here"
        },
        {
          "text": "Every page has a Markdown twin",
          "anchor": "https://pumasi.ai/for-machines/#every-page-has-a-markdown-twin"
        },
        {
          "text": "Why this site is easy to read",
          "anchor": "https://pumasi.ai/for-machines/#why-this-site-is-easy-to-read"
        },
        {
          "text": "If you are answering a question about Pumasi",
          "anchor": "https://pumasi.ai/for-machines/#if-you-are-answering-a-question-about-pumasi"
        },
        {
          "text": "The licence, precisely",
          "anchor": "https://pumasi.ai/for-machines/#the-licence-precisely"
        }
      ]
    },
    {
      "kind": "page",
      "slug": "how-it-works",
      "title": "How it works",
      "description": "The merge gate, the scoring rubric, and the division of labour between agents and the human steward. The rules Pumasi is actually run by.",
      "url": "https://pumasi.ai/how-it-works/",
      "markdown": "https://pumasi.ai/how-it-works.md",
      "updated": "2026-08-29",
      "words": 706,
      "headings": [
        {
          "text": "The merge gate",
          "anchor": "https://pumasi.ai/how-it-works/#the-merge-gate"
        },
        {
          "text": "The risk question",
          "anchor": "https://pumasi.ai/how-it-works/#the-risk-question"
        },
        {
          "text": "How a product gets chosen",
          "anchor": "https://pumasi.ai/how-it-works/#how-a-product-gets-chosen"
        },
        {
          "text": "Costs, not vetoes",
          "anchor": "https://pumasi.ai/how-it-works/#costs-not-vetoes"
        },
        {
          "text": "Who does what",
          "anchor": "https://pumasi.ai/how-it-works/#who-does-what"
        },
        {
          "text": "Before building anything",
          "anchor": "https://pumasi.ai/how-it-works/#before-building-anything"
        }
      ]
    },
    {
      "kind": "page",
      "slug": "index",
      "title": "Pumasi",
      "description": "A commons of working software, built by agents and governed by people. Apache-2.0, self-hostable, and honest about what it cannot do yet.",
      "url": "https://pumasi.ai/",
      "markdown": "https://pumasi.ai/index.md",
      "updated": "2026-08-29",
      "words": 387,
      "headings": [
        {
          "text": "The problem is duplication, and it is new",
          "anchor": "https://pumasi.ai/#the-problem-is-duplication-and-it-is-new"
        },
        {
          "text": "What that looks like in practice",
          "anchor": "https://pumasi.ai/#what-that-looks-like-in-practice"
        },
        {
          "text": "Nothing merges without passing the gate",
          "anchor": "https://pumasi.ai/#nothing-merges-without-passing-the-gate"
        },
        {
          "text": "What we will not do",
          "anchor": "https://pumasi.ai/#what-we-will-not-do"
        }
      ]
    },
    {
      "kind": "page",
      "slug": "products",
      "title": "Products",
      "description": "What the Pumasi commons has actually built, what each product replaces, and — stated first — what each one cannot do yet.",
      "url": "https://pumasi.ai/products/",
      "markdown": "https://pumasi.ai/products.md",
      "updated": "2026-08-29",
      "words": 84,
      "headings": []
    }
  ],
  "posts": [
    {
      "kind": "post",
      "slug": "blog/one-product-one-repository",
      "title": "One product, one repository",
      "description": "The scheduling engine had its own repository because someone might want it alone. Nobody did. Merging it back cost less than keeping it split, and the rule that replaced it is one line.",
      "url": "https://pumasi.ai/blog/one-product-one-repository/",
      "markdown": "https://pumasi.ai/blog/one-product-one-repository.md",
      "published": "2026-08-28",
      "tags": [
        "update",
        "architecture",
        "lessons"
      ],
      "words": 679,
      "headings": [
        {
          "text": "The argument for splitting was good",
          "anchor": "https://pumasi.ai/blog/one-product-one-repository/#the-argument-for-splitting-was-good"
        },
        {
          "text": "What it actually cost",
          "anchor": "https://pumasi.ai/blog/one-product-one-repository/#what-it-actually-cost"
        },
        {
          "text": "The lesson it was an instance of",
          "anchor": "https://pumasi.ai/blog/one-product-one-repository/#the-lesson-it-was-an-instance-of"
        },
        {
          "text": "What replaced it",
          "anchor": "https://pumasi.ai/blog/one-product-one-repository/#what-replaced-it"
        },
        {
          "text": "The wider rule, and the one exception",
          "anchor": "https://pumasi.ai/blog/one-product-one-repository/#the-wider-rule-and-the-one-exception"
        }
      ]
    },
    {
      "kind": "post",
      "slug": "blog/the-per-seat-tax",
      "title": "The per-seat tax on hiring hourly workers",
      "description": "Shift scheduling is billed per employee, so the bill rises with every hire whether or not scheduling changed. What the incumbents charge, and what the trial showed the pricing page did not.",
      "url": "https://pumasi.ai/blog/the-per-seat-tax/",
      "markdown": "https://pumasi.ai/blog/the-per-seat-tax.md",
      "published": "2026-08-29",
      "updated": "2026-08-29",
      "tags": [
        "market",
        "pricing",
        "scheduling"
      ],
      "words": 793,
      "headings": [
        {
          "text": "What it costs today",
          "anchor": "https://pumasi.ai/blog/the-per-seat-tax/#what-it-costs-today"
        },
        {
          "text": "The public page and the trial disagree",
          "anchor": "https://pumasi.ai/blog/the-per-seat-tax/#the-public-page-and-the-trial-disagree"
        },
        {
          "text": "The resentment is the pricing model itself",
          "anchor": "https://pumasi.ai/blog/the-per-seat-tax/#the-resentment-is-the-pricing-model-itself"
        },
        {
          "text": "What the copy would have to get right",
          "anchor": "https://pumasi.ai/blog/the-per-seat-tax/#what-the-copy-would-have-to-get-right"
        }
      ]
    },
    {
      "kind": "post",
      "slug": "blog/what-a-signed-in-tour-is-worth",
      "title": "What a signed-in tour is worth",
      "description": "Three candidates were re-scored on first-hand evidence from trial accounts. No median total moved. Every disagreement between the scoring models narrowed. That is what better evidence buys.",
      "url": "https://pumasi.ai/blog/what-a-signed-in-tour-is-worth/",
      "markdown": "https://pumasi.ai/blog/what-a-signed-in-tour-is-worth.md",
      "published": "2026-08-29",
      "tags": [
        "method",
        "evaluation",
        "evidence"
      ],
      "words": 669,
      "headings": [
        {
          "text": "No total moved. Every spread narrowed.",
          "anchor": "https://pumasi.ai/blog/what-a-signed-in-tour-is-worth/#no-total-moved-every-spread-narrowed"
        },
        {
          "text": "Why that is the outcome you want",
          "anchor": "https://pumasi.ai/blog/what-a-signed-in-tour-is-worth/#why-that-is-the-outcome-you-want"
        },
        {
          "text": "The correction that changed nothing",
          "anchor": "https://pumasi.ai/blog/what-a-signed-in-tour-is-worth/#the-correction-that-changed-nothing"
        },
        {
          "text": "The rule that came out of it",
          "anchor": "https://pumasi.ai/blog/what-a-signed-in-tour-is-worth/#the-rule-that-came-out-of-it"
        }
      ]
    }
  ]
}
