FLUXFLUX
  • Introduction
  • Quickstart
  • Two Specs, One Substrate
  • The Six Families
  • The FLUID Seam
  • Deterministic & Governed
  • Runtime & Evidence
  • Anatomy
  • The Nineteen Kinds
  • Versions
  • Changelog
  • JSON Schema 0.5.0 ↗
  • UI Hints 0.5.0 ↗
  • Enforcement Contract 0.5.0 ↗
  • Bundle Manifest 0.5.0 ↗
  • The vNext Plan
  • The Nine RFCs
  • Conformance Profiles
Examples
What's New
FLUID ↗
GitHub
GitHub
  • Introduction
  • Quickstart
  • Two Specs, One Substrate
  • The Six Families
  • The FLUID Seam
  • Deterministic & Governed
  • Runtime & Evidence
  • Anatomy
  • The Nineteen Kinds
  • Versions
  • Changelog
  • JSON Schema 0.5.0 ↗
  • UI Hints 0.5.0 ↗
  • Enforcement Contract 0.5.0 ↗
  • Bundle Manifest 0.5.0 ↗
  • The vNext Plan
  • The Nine RFCs
  • Conformance Profiles
Examples
What's New
FLUID ↗
GitHub
GitHub
  • Concepts

    • Two Specs, One Substrate
    • The Six Families
    • The FLUID Seam
    • Deterministic & Governed
    • Runtime & Evidence

The Six Families

A FLUX universe is assembled from nineteen document kinds, clustered into six families by responsibility. This factoring is what turns an open-ended "build me a simulation" problem into a bounded, composable vocabulary.

FamilyKindsQuestion it answers
PopulationWorld, Persona, SegmentWho is in the universe
CommerceCatalog, Offer, Channel, ConsentProfileWhat can be sold and how it can be reached
BehaviourJourney, JourneyTaxonomy, Signal, DetectorWhat happens and what to watch for
ActivationCampaign, Treatment, ExperimentWhat we do about it
CalibrationPlaybackHow the twin stays honest
CompositionSimulation, Module, Blueprint, VerticalPackHow it assembles and travels

The kinds are not a flat list; they form a metamodel in which each kind references others through named, validated links. Simulation is the composition root: it names a World, the Personas, Signals, Campaigns and Experiments that run, and the Modules that provide capability — and it emits a FLUID contract at the seam. Every arrow is a reference the offline validator resolves, so a well-formed universe has no dangling links.

One envelope, nineteen shapes

Every kind shares the same envelope — aligned field-for-field with FLUID's:

fluxVersion: "0.4.0"     # pinned spec version
kind: Persona            # one of the nineteen
id: pragmatic-family     # unique in the bundle; the target of refs
name: Pragmatic Family
metadata:
  owner:
    team: growth-lab     # accountable owner — required, as in FLUID
spec:                    # kind-specific block, closed and typed
  ...

Any kind may additionally declare agentPolicy and skills — the uniform agentic extension point (details).

Per-kind field reference: The Nineteen Kinds.

Edit this page on GitHub
Last Updated: 9/15/26, 6:51 PM
Prev
Two Specs, One Substrate
Next
The FLUID Seam