Skip to content

Write a Discipline Pack

A Discipline Pack teaches the room a field of work: its words, its roles, what a need looks like, what must never be said, and how to allocate fairly. A pack is a folder of data. The core kit holds no field-specific knowledge, so this is where it goes.

A pack cannot run code in the host. It is checked by a strict loader, and a pack that breaks a rule does not load.

The commands

coalitionkit pack validate my-pack      # check every rule
coalitionkit pack eval my-pack          # run its scripted scenarios
coalitionkit pack accept my-pack        # run its whole journey, from the start of a room to its end
coalitionkit pack sign my-pack --key key.pem --kid me
coalitionkit up --pack my-pack          # install it on a local host

eval and accept take --live to use real models. Exit 0 means it passed, 1 means it failed, and 2 means bad usage.

The pages

  1. A complete small pack: start by copying one.
  2. Vocabulary and roles
  3. Schemas and private fields
  4. Templates and allocation
  5. Policies
  6. Mint templates and connectors
  7. Skills and lessons
  8. Evals and acceptance

The full list of keys is in Pack format.

Packs in the repository

packs/ has five examples: daily-life, science-lab, supper-club (friends cooking one dinner from their own kitchens, with a private diet compared by PSI), travel-disruption and world-tour (strangers build a one-hour virtual tour of their cities; the public demo's standing room). examples/packs/tool-library is the small one these pages use.