Skip to content

Manifest feature reference ​

All paths below are relative to the atom's spec. The envelope is always apiVersion, kind, metadata.name, spec. Features compose from these four atoms; there is no separate Form, Workflow or UI manifest kind. See the envelope reference for naming and unknown-key rules.

Capability table ​

GoalAtom and fieldsRuntime / surface effectContract
Define stored business dataSchema schemaValidated fields; storage adapter prepares the Schema. Generated entry types follow the JSON Schema subset.Schema
Choose draft publishing or live recordsSchema lifecyclepublishing has draft/publish transitions; operational creates live records. Admin workflow follows this choice.Lifecycle
Label fields and collectionsSchema title, description, property title, descriptionLocalized Admin labels/help. Does not rename data keys.LocalizedText
Make Procedure-managed recordsSchema schema.readOnlyDisables generic authoring writes; declared Procedures still work.Read-only collections
Find and constrain recordsSchema indexes, uniqueIndexes, searchableFieldsNative access paths, uniqueness and declared substring-search fields. Search fields do not create indexes.Indexes
Translate or relate recordsSchema localized, translates; property x-mantle-refLocale rows, joined translations, relation controls and folded child collections.Schema, Admin guide
Stamp trusted valuesProperty x-mantle-bindRuntime stamps identity/time; generic agent inputs exclude bound fields and Admin shows them read-only.Binding
Adjust collection inputs and listSchema uiSchema.fields, .list, .navTextareas, operational columns/tabs, standalone child navigation. No CSS or component injection.Admin guide
Query one Schema portablyView from, fields, filter, orderBy, limit, paramsNamed query with generated typed params and projected rows.View, typed queries
Join or aggregate in SQLiteView sql, params, limitOne bound SELECT; requires a SQLite-capable adapter. Generated row type is unknown.SQL Views
Choose read visibilityView surfacepublic: public REST/MCP; staff: Admin reports/staff MCP; internal: host binding only. Transports require host composition.Surfaces
Authorize a query or actionView / Procedure requires.auth, requires.guardRuntime checks verified caller context and optional guard. Visibility and UI metadata do not grant access.Authorization
Filter by caller identityView filter with $ctx.user: idDeclarative equality filter; requires user auth and a left-prefix index.Identity filters
Cache anonymous published readsView cache.sharedMaxAgeEligible public declarative publishing reads receive shared HTTP cache policy when the host configures cache scope.View cache
Configure a reportStaff View title, uiSchema.listOrdered report/CSV columns, server-side search and exact filters.View list
Define an actionProcedure input, output, handlerTyped input/output; builtin mutation or registered host handler. A Procedure does not create an HTTP route by itself.Procedure
Put an action in AdminProcedure uiSchema.collectionAction, .fields; input x-mantle-ref; qualifying TriggerCollection/row actions and forms; eligible standalone operations appear under Operations.Admin guide
Describe an agent actionProcedure title, description, mcpTool descriptions and behavior annotations; enforcement remains in runtime authorization/validation.Procedure
Expose an HTTP actionTrigger source: { kind: http, method, path }, target.procedureHandler on the declared /api/ path through supporting host adapters.HTTP Trigger
Expose an agent actionTrigger source: { kind: mcp, surface }, target.procedurePublic or staff MCP tool; Procedure authorization still applies.Trigger
React to content lifecycleTrigger source: { kind: lifecycle, schema, on, errorPolicy }, target.procedureInvokes the action on selected lifecycle events. Deferred execution needs host support.Hooks

Where manifest control ends ​

Manifests describe data, callable behavior and supported presentation metadata. They do not declare arbitrary React components, visitor routes, page layouts, CSS, provider credentials or deployment resources. Those belong to application source and optional host packages. For an Admin change, consult the rendering map before deciding that custom UI is needed.

The pipeline is source → parse → link → compile → prepare storage → bind runtime. mantle generate projects the plan and types; it does not start a server. Programmatic emitMantleModule({ plan }) also accepts an already compiled plan; see typed queries.

Source ​