Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
constructive-io avatar

Constructive Features

  • 3 installs
  • Updated August 4, 2026
  • constructive-io/constructive-skills

Feature catalog for Constructive apps showing every capability with module gating and skill ownership.

About

Constructive Features A feature-level index of what a Constructive app can do.. Each row names the feature, the module that gates it, and which skill owns the detail.

  • Feature: what a user or developer gets
  • Gate: the module, Authz node type, or app_settings toggle that controls it

Constructive Features by the numbers

  • 3 all-time installs (skills.sh)
  • Ranked #1,648 of 2,153 Testing & QA skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/constructive-io/constructive-skills --skill constructive-features

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs3
Last updatedAugust 4, 2026
Repositoryconstructive-io/constructive-skills

What it does

Feature catalog for Constructive apps showing every capability with module gating and skill ownership.

Files

SKILL.mdMarkdownGitHub ↗

Constructive Features

A feature-level index of what a Constructive app can do. Each row is a pointer — it names the feature, the module/toggle that gates it, and which skill owns the detail. No prose here that lives elsewhere — follow the links for specifics.

How to Read This

  • Feature — what a user / developer gets.
  • Gate — the module, Authz node type, or `app_settings_` toggle that controls it.
  • Default in preset — presets from @constructive-io/node-type-registry that include the gate out of the box (see `constructive-platform`).
  • Skill — where to go for the actual how-to.

When a feature is gated by a module, installing / omitting the module from a preset turns it on / off. When it's gated by a toggle, it's on all the time but can be flipped via a settings row.

Build an App End-to-End

Want to assemble these features into a working app rather than look one up? Use `constructive-builder` — the end-to-end builder that scaffolds, provisions the data model + RLS, wires Blocks + auth flows, and Chrome-verifies a working CRUD app in under 10 minutes (4 phases, 3 policy tiers). Come back to this catalog to decide which features (modules / presets / Authz\* nodes) the build should turn on.

1. Identity & Authentication

FeatureGateIn presetSkill
Email + password sign-up/sign-inuser_auth_module + emails_module + app_settings_auth.allow_password_sign_upauth:email, auth:email+magic, auth:sso, auth:passkey, auth:hardened, b2b, full`constructive-platform`
Magic link sign-insession_secrets_module + emails_module + app_settings_auth.allow_magic_link_sign_inauth:email+magic, auth:hardened, b2b, full`constructive-platform`
Email OTPsession_secrets_module + emails_module + toggleauth:email+magic, auth:hardened, b2b, full`constructive-platform`
Phone / SMS sign-inphone_numbers_module + toggleauth:hardened, b2b, full`constructive-platform`
OAuth / SSO (federated identity)identity_providers_module + connected_accounts_moduleauth:sso, auth:hardened, b2b, full`constructive-platform`
Passkeys (WebAuthn)webauthn_credentials_module + webauthn_auth_module + session_secrets_moduleauth:passkey, auth:hardened, b2b, full`constructive-platform`
Rate limits / throttlingrate_limits_module (optional — see module-presets.md)auth:hardened, b2b, full`constructive-platform`
Device tracking (passive)devices_module + app_settings_device.enable_device_trackingfull`constructive-platform`
Trusted devices (MFA bypass)devices_module + app_settings_device.enable_trusted_devicesfull`constructive-platform`
Device approval gate (email)devices_module + app_settings_device.require_device_approvalfull`constructive-platform`
Force MFA on new devicesdevices_module + app_settings_device.require_mfa_new_devicefull`constructive-platform`
User settings (extensible 1:1 preferences)user_settings_moduleb2b, full`constructive-platform`
Sessions (server-side)sessions_moduleall presets except minimal-without-auth`constructive-platform`
API keysuser_state_moduleall presets`constructive-platform`
Encrypted secrets (per-user)config_secrets_user_moduleauth:email+, b2b, full`constructive-platform`
Encrypted secrets (org-scoped)config_secrets_org_modulestandalone (not in presets yet)`constructive-platform`
Encrypted secrets (app-wide, admin-only)app_secrets (part of config_secrets_user_module)auth:email+, b2b, full`constructive-platform`
Web3 wallet addressescrypto_addresses_modulefull`constructive-platform`
Password reset / forgot passwordemails_module + auth procsauth:email+`constructive-platform`
Email verificationemails_module + auth procsauth:email+`constructive-platform`
Local email testing (dev only)`constructive-platform`

2. Authorization (Safegres)

FeatureGateIn presetSkill
Row-level security on every tablerls_module + secure_table_provisionall`constructive-security`
18 Authz* policy node typesNode Type Registry`constructive-security`
Read-only API (API-level)api.read_only = true— (runtime toggle)`constructive-platform`
Read-only membersAuthzNotReadOnly + membership field— (policy-level)`constructive-security`
Granular permissionspermissions_moduleb2b, full`constructive-access-control`
Named permissions (per-module)permissions_module + module installall (auto)`constructive-access-control`
Permission defaults (module-level)permission_default_permissions + module INSERT triggersall (auto on module install)`constructive-access-control`
Roles (admin/owner/member)membership isAdmin / isOwner fieldsall auth presets`constructive-access-control`
Admin/owner grants (role promotion audit trail){prefix}AdminGrant / {prefix}OwnerGrant tablesall auth presets`constructive-access-control`
Grants lifecycle (append-only audit){prefix}_grants tableb2b, full`constructive-access-control`
Permission levelslevels_moduleb2b, full`constructive-security`
GuardStepUp (step-up auth before DML)GuardStepUp node + sessions_module + compound conditionsAUTH_EMAIL`constructive-security`
Permissive + restrictive policy compositionAuthzComposite`constructive-security`
"Users are organizations" identitymembership_types_moduleall auth presets`constructive-security`

3. Multi-tenancy & Membership

FeatureGateIn presetSkill
App-scope memberships (single tenant)["memberships_module", {"scope": "app"}]all auth presets`constructive-entities`
Org-scope memberships (multi-tenant)["memberships_module", {"scope": "org"}]b2b, full`constructive-entities`
Dynamic entity types (channels, teams, depts)entity_type_provision + provision_membership_table()— (runtime)`constructive-entities`
Invites (email, blank, multiple)invites_moduleb2b, full`constructive-entities`
Profile assignment on email invitesinvites_module + profiles_moduleb2b, full`constructive-entities`
Email auto-verification on invite claiminvites_module + emails_moduleb2b, full`constructive-entities`
Limits (metered quotas per scope)["limits_module", {"scope": "app"}] / ["limits_module", {"scope": "org"}]b2b, full`constructive-entities`
Cap tables (static config values)limits_modulelimit_caps_defaults + limit_capsb2b, full`constructive-platform`
Feature flags (cap-based gating)LimitFeatureFlag node + `limit_caps_defaults(max=0\1)`
Credits (append-only ledger)limits_modulelimit_credits + credit_codesb2b, full`constructive-platform`
Profiles per scope (permission bundles)["profiles_module", {"scope": "app"}] / ["profiles_module", {"scope": "org"}]b2b, full`constructive-access-control`
Hierarchy (org chart, manager/subordinate)["hierarchy_module", {"scope": "org"}] + AuthzOrgHierarchyb2b, full`constructive-access-control`

4. Data Modeling

FeatureGateIn presetSkill
Blueprints (declarative schema)blueprint + blueprint_template— (runtime)`constructive-platform`
Blueprint templates / marketplacecopy_template_to_blueprint()`constructive-platform`
Merkle definition_hashbackend trigger`constructive-platform`
Tables + fieldssecure_table_provision`constructive-security`
Relations (1:N, M:N junctions)relation_provision`constructive-platform`
Node type generators (12 categories: Data, Search, Authz, Guard, Check, Limit, Billing, Job, Process, Relation, View, Event)Node Type Registry`constructive-platform`
DataDirectOwner / DataEntityMembership / DataOwnershipInEntityNode Type Registry`constructive-platform`
DataPeoplestamps (created_by / updated_by)Node Type Registry`constructive-platform`
DataPublishable (is_published + published_at)Node Type Registry`constructive-platform`
DataCompositeField (derived text concatenation)Node Type Registry`constructive-platform`
Behavior triggers (DataSlug, DataInflection, DataForceCurrentUser)Node Type Registry`constructive-platform`
LimitCounter (metered usage tracking)Node Type Registry + limits_module`constructive-platform`
LimitFeatureFlag (cap-based feature gating)Node Type Registry + limits_module`constructive-platform`
Field protection (DataOwnedFields, DataImmutableFields)Node Type Registry`constructive-platform`
DataInheritFromParent (copy values from FK parent)Node Type Registry`constructive-platform`
DataI18n (translation tables + multilingual search)DataI18n node + i18n_module`constructive-i18n`
Smart tags (GraphQL schema hints)field-level`constructive-codegen`

5. Events & Achievements

FeatureGateIn presetSkill
EventTracker (record events on row changes)EventTracker node + events_module`constructive-events`
Blueprint achievements (levels + requirements)achievements[] section + has_levels`constructive-events`
Achievement reward credit grantstg_achievement_reward + limits_module`constructive-events`
Invite-based achievements (simple tier)has_invite_achievements + has_invites + has_levels`constructive-events`
Invitee achievement virality chain (meta tier)tg_invitee_achievement + invites_module`constructive-events`
EventReferral (attribute events to inviters)EventReferral node + invites_module`constructive-events`
Multi-level referral chains (MLM)EventReferral node + max_depth (2–10)`constructive-events`
Compound conditions (shared with JobTrigger)build_condition_ast() + conditions param`constructive-events` + `constructive-jobs`
Partitioned event log (time-based retention)events_module + pg_partman`constructive-events`
Event aggregates (running counts per user)events_module`constructive-events`

6. Storage & Uploads

FeatureGateIn presetSkill
S3 / MinIO buckets per entity typestorage_module + storage on entity_type_provisionfull, any app using uploads`constructive-uploads` + `constructive-entities`
Org-scoped storage (per-org/user buckets)Top-level storage: [{ scope: "org", ... }]`constructive-platform`
Public vs private bucketsis_public on bucket entries`constructive-uploads`
Presigned upload URLsrequestUploadUrl mutation`constructive-uploads`
Per-bucket RLS policiesstorage_config.policies[] (Authz* nodes)`constructive-uploads` + `constructive-security`
Multi-scope bucket resolutionbucketKey + ownerId`constructive-uploads`
Entity-scoped storage (buckets per entity)has_storage + storage_config`constructive-entities`
Bucket provisioningprovisionBucket mutation + auto-provision`constructive-uploads`
Content-hash deduplicationrequestUploadUrl (deduplicated field)`constructive-uploads`
Download URLs (presigned GET / CDN)downloadUrl computed field`constructive-uploads`
MIME type restrictions + file size limitsallowed_mime_types + max_file_size on bucket`constructive-uploads`

7. Search

FeatureGateIn presetSkill
SearchUnified (orchestrated multi-algorithm)SearchUnified blueprint node`constructive-agents` + `constructive-search`
SearchFullText (tsvector + GIN)SearchFullText blueprint node`constructive-platform`
SearchBm25 (pg_textsearch)SearchBm25 blueprint node`constructive-platform`
SearchTrgm (trigram fuzzy)SearchTrgm blueprint node`constructive-platform`
SearchVector (pgvector embeddings)SearchVector blueprint node`constructive-agents`
SearchSpatial (PostGIS geometry)SearchSpatial blueprint node`constructive-platform`
SearchSpatialAggregate (materialized aggregates)SearchSpatialAggregate blueprint node`constructive-platform`
Unified composite search (GraphQL)unifiedSearch field`constructive-search`

8. AI

FeatureGateIn presetSkill
SearchVector (pgvector columns + HNSW/IVFFlat)SearchVector blueprint node`constructive-agents`
Embedding stale tracking + job enqueueSearchVector include_updated_at + enqueue_job`constructive-agents`
Chunk tables (long text splitting)SearchVector chunks_config`constructive-agents`
Embedding worker pipelineGraphile Worker + generate_embedding task`constructive-agents`
agentic-kit LLM client (multi-provider)@agentic-kit/ollama, @agentic-kit/anthropic, @agentic-kit/openai`constructive-agents`
RAG pipelines (blueprint → embed → retrieve → generate)app code + ORM`constructive-agents`
Agent threads + messagesagent_modulefull`constructive-entities`
Agent multiplayer mode (shared threads)["agent_module", {"shared": true}]`constructive-agents`
Multi-agent attribution (agent_id on messages)["agent_module", {"has_agents": true}]full`constructive-agents`
Agent plans + approval workflow["agent_module", {"has_plans": true}]`constructive-entities`
Agent resources (unified skills + knowledge)["agent_module", {"has_resources": true}]full`constructive-entities`
Agent registry + personas["agent_module", {"has_agents": true}]full`constructive-entities`
Agent prompt templatesagent_modulefull`constructive-entities`

9. GraphQL & Codegen

FeatureGateIn presetSkill
PostGraphile v5 servercnc server`constructive-platform`
GraphiQL explorercnc explorer`constructive-platform`
React Query hooks codegen--react-query`constructive-codegen`
Prisma-like ORM codegen--orm`constructive-codegen`
CLI codegen (csdk / constructive)--cli`constructive-codegen`
Multi-target codegenconfig`constructive-codegen`
Relay-spec paginationNode Type Registry + PostGraphile`constructive-codegen`
_meta introspection endpointbuilt-in`constructive-frontend`
Dynamic _meta forms (zero-config CRUD)@constructive-io/ui`constructive-frontend`
CRUD Stack cards (iOS-style panels)@constructive-io/ui`constructive-frontend`
50+ UI components@constructive-io/ui`constructive-frontend`

10. Services & Routing

FeatureGateIn presetSkill
Multiple APIs per databaseapi + api_schema entities`constructive-platform`
Domain / subdomain routingdomain + site entities`constructive-platform`
Public vs admin API routingapi.routing_mode`constructive-platform`
Schema grants per APIschema_grant`constructive-platform`

11. Realtime Subscriptions

FeatureGateIn presetSkill
Per-table subscriber tablesDataRealtime node + realtime_module`constructive-platform`
RLS-derived subscription securitysecure_table_provision.policies SELECT policies`constructive-platform`
Change log (partitioned event stream)realtime_module`constructive-platform`
Statement-level emit triggersDataRealtimeemit_change()`constructive-platform`
GraphQL subscription fields (onXxxChanged)@realtime smart tag + enable_realtime`constructive-platform`
Sparse-set row filtering (ids: [UUID!])onXxxChanged(ids: [...]) argument`constructive-platform`
Overflow detection (INVALIDATE)>50 rows/statement or >50 events/sec/table`constructive-platform`
Codegen subscription hooks (useXxxSubscription)cnc codegen + DataRealtime`constructive-platform`
Connection state hook (useConnectionState)cnc codegen + realtime config`constructive-platform`
ORM realtime (client.subscribe())realtime config on createClient`constructive-platform`
Runtime toggle (enable_realtime)database_settings / api_settings`constructive-platform`
Policy-driven field generationcolumn-ref in parameter_schema`constructive-platform`
Partition table supportDeclarative partitioned flag + automatic lifecycle`constructive-platform`

12. Background Work & Operations

FeatureGateIn presetSkill
Background jobs (Knative)jobs package`constructive-jobs`
Job triggers (JobTrigger)JobTrigger node`constructive-jobs`
Cloud functions (Knative HTTP)functions/*`constructive-platform`
Deterministic DB migrationspgpm deploy / verify / revert`pgpm`
Module provisioningmetaschema_generators.provision_database_modules`constructive-platform`
DB introspection → SDKcnc codegen`constructive-codegen`
Notifications (email/push/webhook)notifications_moduleb2b, full`constructive-notifications`
Internationalization (multilingual search + translations)i18n_module + DataI18n + lang_columnfull`constructive-i18n`

14. Module Presets (starting points, not features)

PresetShape
minimalusers + sessions + rls + secrets — no server-side auth
auth:emailemail/password, single tenant
auth:email+magicauth:email + magic link / email OTP
auth:ssoauth:email + OAuth + connected accounts
auth:passkeyauth:email + WebAuthn
auth:hardenedrate limits + SSO + passkeys + SMS + magic links
b2bauth:hardened + orgs + invites + permissions + levels + profiles + hierarchy + user_settings
b2b:storageb2b + file upload infrastructure (buckets, files, RLS) + user_settings
fulleverything — includes i18n_module, user_settings_module, storage, billing, notifications

See `constructive/references/module-presets.md` for the full catalog, shapes, and ORM usage.

User Settings Extension Pattern

user_settings_module creates a skeleton 1:1 table (per-user, AuthzDirectOwner RLS) in users_public. Other modules extend it by adding columns via metaschema.create_field():

ModuleColumns added to user_settings
notifications_modulenotifs_enabled, notifs_default_digest_frequency, notifs_quiet_hours_start, notifs_quiet_hours_end, notifs_quiet_hours_timezone, notifs_default_channels
i18n_modulepreferred_language

Flow-Based Programming

Graph module + merkle store for SDK-authorable computation graphs. See `constructive-flow-graphs` for types, spec, evaluator, and graph editor.

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.