Forms & Intake

experimental

Dynamic form builder + intake: serializable field schemas with validation rules and conditional visibility, pure submission validation, idempotent submissions, optional Turnstile spam protection, and content-type/size-validated attachment references.

Forms & Intake is source-visible, contract-first code — your agent reads the whole interface before it composes, never a black box.

Every hook has typed I/O and required tests, and the composition is pinned in microservices.lock.json — what you inspect here is exactly what pnpm microservices check verifies and deploys.

Typed hooks

Extension points with typed input/output and required tests — customize behavior without forking the module.

  • beforeFormPublish
  • onSubmissionReceived

Events emitted

A stable, documented event surface other modules can subscribe to.

  • forms-intake.form_created
  • forms-intake.form_updated
  • forms-intake.submission_received
  • forms-intake.submission_rejected

Permissions

Scoped capabilities the module declares; the gateway enforces them at the boundary.

  • forms-intake.read
  • forms-intake.write
  • forms-intake.admin

Experimental listing. Generated from the canonical module manifest via `registry build`.