Fabric Platform
Reference and how-to docs for the Fabric ontology-based, agent-native runtime.
Fabric is an ontology-based, agent-native runtime for governed business applications. The platform owns the mechanics of mutation — actions, policies, state machines, events, projections — and nothing else. Verticals plug in their domain ontology through FabricModule manifests and run on top.
Where to start
| If you want to… | Open |
|---|---|
| Get oriented to the runtime | Getting started |
| Understand the architecture and contracts | Platform reference |
| Build a vertical module | Patterns → vertical extensions |
The one-line invariant
Actor → ActionInvocation → PolicyEvaluation → StateMachine → Handler/Saga → AdapterInvocation → AssetEvent → ProjectionEvery domain mutation in a Fabric app — UI click, AI agent call, signed-token request, scheduled worker — passes through this pipeline. There are no exceptions.
What @fabric/platform is
A portable runtime (packages/platform) for ontology-based business applications:
- Zero runtime dependencies.
- No database client. No ORM.
- No vertical vocabulary.
- Every contract parameterized by
TDbso consumers bind their own persistence client.
A boundary test (packages/platform/boundary.test.ts) keeps the platform clean: vertical names, Prisma, and concrete database imports fail CI if they leak in.
The single mutation entry point
Every domain mutation in a Fabric app passes through invokeAction from one of three call paths:
- Authenticated session — a logged-in user. Permission check applies.
- Verified external token — e.g. a signed magic-link. Token verified before invoke.
- System / agent / scheduled — internal worker, AI agent with credential scopes, or cron sweep.
There is no fourth path. See action triggers.