# Documentation - [Build Without Code](/docs/build-without-code): What admins and business analysts can do visually in Console, Studio, and Setup — and how that stays in sync with metadata written as code - [Documentation](/docs): Technical documentation for ObjectStack. - [Upgrading](/docs/upgrading): ObjectStack upgrades come in two halves that run on separate clocks — the platform runtime and your metadata app. Which one you are doing, what each one moves, and where the per-major checklists live. - [Actions as Tools](/docs/ai/actions-as-tools): Expose declarative Action metadata as AI-callable tools with explicit opt-in, HITL approval, and permission-aware execution - [AI Agents](/docs/ai/agents): The two platform agents (ask and build), how skills extend them, and the shape of an AgentSchema record - [Connect an MCP Client](/docs/ai/connect-mcp): Point Claude Code, Claude Desktop, or any MCP client at your running app — OAuth or API key — and verify the agent can see and operate it. - [AI Overview](/docs/ai): Complete guide to leveraging AI agents, RAG pipelines, and intelligent automation in ObjectStack - [Knowledge & RAG](/docs/ai/knowledge-rag): The Knowledge Protocol — permission-aware RAG for agents via pluggable adapter plugins (memory, RAGFlow, custom) - [Natural Language Queries](/docs/ai/natural-language-queries): How agents query live data through the open MCP data tools (query_records, get_record, aggregate_records) under RLS - [AI Skills Reference](/docs/ai/skills-reference): Reference for every ObjectStack AI skill — domain-scoped knowledge modules that teach AI assistants the protocol's schemas and constraints - [AI Skills System](/docs/ai/skills): How ObjectStack uses structured AI skills to enable intelligent code generation, review, and automation - [Tool Records](/docs/ai/tools): The three ways a capability reaches an agent, and the narrow case where authoring a tool record is the right answer - [Client SDK](/docs/api/client-sdk): The official TypeScript client for ObjectStack — auto-discovery, typed metadata, CRUD, batch operations, and service-aware feature detection. - [Data API](/docs/api/data-api): REST endpoints for CRUD, batch operations, record cloning, and analytics queries. - [Data Flow Diagrams](/docs/api/data-flow): How data moves through the ObjectStack system — from defineStack() configuration to database queries, realtime events, and metadata resolution - [Declarative Endpoints](/docs/api/declarative-endpoints): Expose your app to systems outside the platform by declaring an apis: endpoint as metadata — which channel to pick, the four publish gates, and the obligation that comes with an anonymous endpoint. - [Environment-Scoped Routing](/docs/api/environment-routing): Route REST, metadata, automation, AI, and package calls through /api/v1/environments/:environmentId/.... - [Error Code Catalog](/docs/api/error-catalog): Complete reference for all ObjectStack error codes with causes, fixes, and retry strategies - [Client-Side Error Handling](/docs/api/error-handling-client): Best practices for handling ObjectStack errors in client applications — parsing, display, retry strategies, and React patterns - [Server-Side Error Handling](/docs/api/error-handling-server): Best practices for handling and throwing errors in ObjectStack plugins — custom errors, hook propagation, validation, transactions, and safeParsePretty - [API Overview](/docs/api): How ObjectStack generates its API surface from metadata — discovery, error handling wire formats, protocol types, and a map of the API & SDK docs. - [Metadata & Package API](/docs/api/metadata-api): REST endpoints for object schemas, metadata types, UI views, and package management. - [Plugin Endpoints](/docs/api/plugin-endpoints): REST endpoints that become available when the corresponding plugin is installed — auth, workflow, automation, views, realtime, notifications, AI, i18n, and file storage. - [Wire Format & JSON Examples](/docs/api/wire-format): Complete HTTP request/response examples for ObjectStack API operations — CRUD, queries, metadata, errors, and batch operations - [Approval workflow](/docs/automation/approvals): Route a record for sign-off — who can configure the automation, and the run-identity decision that keeps an approval flow from quietly bypassing row-level security. - [Connectors](/docs/automation/connectors): Call external systems from flows — plugin-registered connectors, and declarative provider-bound instances (rest / openapi / mcp) authored as pure metadata with reference-based credentials. - [Email Templates](/docs/automation/email-templates): Author a localizable outbound mail template as metadata, and reach it from a flow's notify node or from services.email. - [Flow Metadata](/docs/automation/flows): Build visual automation with decision trees, data operations, HTTP requests, and screen interactions - [Hook & Action Bodies (L1 / L2)](/docs/automation/hook-bodies): How hook handlers and script-action bodies travel through ObjectStack as pure metadata, and the spec they must conform to. - [Hooks](/docs/automation/hooks): Run custom code at interception points in the ObjectQL execution pipeline — before/after insert, update, delete, and find - [Automation](/docs/automation): Hooks, flows, workflows, approvals, scheduled jobs, durable webhooks, and connectors — the process engine that reacts to your data. - [Scheduled Jobs](/docs/automation/jobs): Run a TypeScript function on a cron, interval, or one-off schedule — and decide when a job is the right tool instead of a schedule-triggered flow. - [Webhook Delivery](/docs/automation/webhooks): How ObjectStack reliably ships outbound HTTP notifications — from event to receiver — with at-least-once guarantees, signed payloads, and observable retries. - [Workflow Metadata](/docs/automation/workflows): Use Flow for automation and state machines for strict lifecycle transitions. - [AI Under Governance](/docs/capabilities/ai): Ask questions and get charts, let AI act under the same permissions and audit as people, and connect your own agents over MCP - [Analytics & Dashboards](/docs/capabilities/analytics): ~20 chart families, period-over-period comparison, runtime filters, TV display pages, four report shapes, and scheduled email digests - [Approvals](/docs/capabilities/approvals): Eight ways to pick approvers, four decision modes including group sign-off, record locking, overdue escalation, and send-back-for-revision - [Automation — Processes That Run Themselves](/docs/capabilities/automation): Five trigger styles, visual flow diagrams, notifications, branching, loops, waits, and external calls — the work nobody should have to remember - [Manage Business Data](/docs/capabilities/data): Objects, 40+ field types, auto-computed fields, and relationships — every spreadsheet you run the business on, structured and governed - [Forms & Data Quality](/docs/capabilities/forms): Sectioned and wizard forms, validation at the moment of entry, legal stage transitions, and public forms for anonymous submission - [What Can It Do?](/docs/capabilities): The platform's capabilities in business language — data, views, automation, approvals, permissions, analytics, AI, integrations — each with a real CRM as the running example - [Integrations & Everyday Work](/docs/capabilities/integrations): Import/export, generated APIs, webhooks, connectors, federated external databases, marketplace templates — plus collaboration and languages - [Permissions — Who Sees What](/docs/capabilities/permissions): Four layers from object capability to per-field visibility, five data-depth scopes, sharing rules, audit, and an explain facility - [How to Request Features](/docs/capabilities/request-template): A one-page template that turns business needs into the platform's vocabulary — hand it to your implementation team or an AI agent and get a running system - [Views — See Data Your Way](/docs/capabilities/views): Nine list views over the same records — table, kanban, calendar, gantt, gallery, timeline, map, tree, chart — plus saved filters and global search - [Protocol Architecture](/docs/concepts/architecture): How the Data, System, and UI protocols work together as one cohesive system - [Design Principles](/docs/concepts/design-principles): The unshakable core principles that govern ObjectStack as an AI-native business backend - [Core Concepts](/docs/concepts): The foundational ideas behind ObjectStack — metadata-driven development, protocol-first design, and the principles that shape every decision - [Metadata-Driven Development](/docs/concepts/metadata-driven): Understanding how structured metadata becomes APIs, UI, workflows, and AI-agent tools - [Metadata Lifecycle & HMR](/docs/concepts/metadata-lifecycle): How metadata flows through Repository → Change Log → Cache → Registry — the canonical event stream that powers Studio HMR, REST writes, and future cloud editing. - [North Star](/docs/concepts/north-star): ObjectStack's current product and architecture direction. - [Analytics Datasets](/docs/data-modeling/analytics): The dataset semantic layer (ADR-0021) — define a metric once, bind reports and dashboards to it by name. - [Database Drivers](/docs/data-modeling/drivers): Configuration reference for supported database drivers - [External Datasources (Federation)](/docs/data-modeling/external-datasources): Declare an external database as a datasource and query its tables as ObjectStack objects — visible, auto-connected, and queryable with zero app code. - [Field Type Decision Tree](/docs/data-modeling/field-type-decision-tree): Interactive guide for choosing the right ObjectStack field type — decision flowchart, quick-reference table, and use case mapping - [Field Type Gallery](/docs/data-modeling/field-types): Complete reference for every ObjectStack field type with per-type configuration properties - [Field Metadata](/docs/data-modeling/fields): Configure field types and properties — text, numbers, dates, relationships, files, and more - [Expressions (CEL)](/docs/data-modeling/formulas): Canonical CEL-based expression language for formulas, predicates, conditions, and dynamic seed values - [Import Mappings](/docs/data-modeling/import-mappings): Named, reusable source-column to field projections for CSV/JSON/xlsx import, and the mappingName request that applies one. - [Data Modeling](/docs/data-modeling): Objects, fields, relationships, validation, CEL formulas, and a compiled query AST — the ObjectQL layer every other module builds on. - [Database Indexing](/docs/data-modeling/indexing): Optimize query performance with single-field, unique, compound, and lookup indexes - [Object Extensions](/docs/data-modeling/object-extensions): Add fields, validations and indexes to an object another package owns, without forking it — declaration, merge order, and what an extension may not contribute. - [Object Metadata](/docs/data-modeling/objects): Define business entities with ObjectSchema — the core building block of every ObjectStack application - [Query Syntax Cheat Sheet](/docs/data-modeling/queries): One-page reference for ObjectStack QuerySchema — filters, sorts, pagination, aggregations, and expand - [Relationships & Lookups](/docs/data-modeling/relationships): Model relationships between objects — lookups, filtered lookups, self-referencing hierarchies, and related lists - [Schema Design](/docs/data-modeling/schema-design): Design robust object schemas in ObjectStack — object metadata, enable flags, field groups, and enterprise best practices - [Seed Data & Fixtures](/docs/data-modeling/seed-data): Populate ObjectStack objects with bootstrap data, reference records, and demo fixtures using defineSeed() - [Field Validation Rules](/docs/data-modeling/validation-rules): Default validation behavior, required properties, and constraints for each ObjectStack field type - [Validation Metadata](/docs/data-modeling/validation): Define data integrity rules — formula conditions, format, cross-field checks, state machine transitions, and more - [Backup & Restore](/docs/deployment/backup-restore): What state an ObjectStack deployment actually holds, how to back up each piece per database driver, and the restore drill to rehearse before you need it. - [Command Line Interface](/docs/deployment/cli): Complete guide for using the ObjectStack CLI to build metadata-driven applications - [Environment Variables](/docs/deployment/environment-variables): Canonical list of OS_* environment variables read by the ObjectStack runtime, CLI, and built-in plugins. - [Deployment Overview](/docs/deployment): Two things deploy on this platform and they move on separate clocks — the platform runtime you operate, and the metadata app you build. Which one you are doing decides which pages in this section are yours. - [Production Readiness](/docs/deployment/production-readiness): Security headers, rate limiting, observability, and the go-live checklist for ObjectStack runtimes. - [Publish, Versioning & Preview](/docs/deployment/publish-and-preview): A metadata app is versioned in your catalog while the platform moves on its own release train. Compile the app into an artifact, then pick how it reaches a running platform — installed from the catalog, or pinned as the runtime's boot artifact. - [Seed Tenancy Repair](/docs/deployment/seed-tenancy-repair): The automatic repair that stamps organization_id on untenanted seed rows and merges the __global__ autonumber counter — when it runs, what it changes, what it deliberately leaves alone, and the manual remedy for a multi-organization install. - [Self-Hosted Deployment](/docs/deployment/self-hosting): Run a compiled ObjectStack app on your own infrastructure with the official Docker image — plus Compose with Postgres, Kubernetes, and the bare Node.js fallback, including health checks, reverse-proxy wiring, and the secrets you must pin. - [Single-Environment Mode](/docs/deployment/single-project-mode): Run ObjectStack as a one-environment local stack without a Cloud control plane. - [Tenancy Postures & Membership](/docs/deployment/tenancy-modes): The three tenancy postures (single / group / isolated), how OS_TENANCY_POSTURE resolves, the membership policy for new users, and the degraded-tenancy boot guard. - [Troubleshooting & FAQ](/docs/deployment/troubleshooting): Solutions to common ObjectStack issues — validation failures, query problems, configuration mistakes, and more - [Validating Metadata](/docs/deployment/validating-metadata): Why ObjectStack metadata mistakes fail silently at runtime, and the one command that catches them at author time — run it after every metadata edit. - [Build with Claude Code](/docs/getting-started/build-with-claude-code): The core ObjectStack workflow — Claude Code authors the metadata, you verify in the visual Console, guardrails catch mistakes, and the app you build is itself AI-operable over MCP. - [Common Patterns](/docs/getting-started/common-patterns): Top 10 patterns for building applications with ObjectStack — CRUD, views, flows, agents, security, and more - [Example Apps](/docs/getting-started/examples): Run and explore the built-in example applications to learn ObjectStack hands-on - [Glossary](/docs/getting-started/glossary): The Glossary of the ObjectStack Ecosystem. Speaking the same language. - [How AI Development Works](/docs/getting-started/how-ai-development-works): The division of labor behind ObjectStack — AI authors the typed metadata, you verify in the visual UI, and layered guardrails keep the AI from shipping mistakes. - [What is ObjectStack?](/docs/getting-started): ObjectStack is the AI-native business backend for structured, auditable business applications - [Quick Reference Guide](/docs/getting-started/quick-reference): Fast lookup table for all ObjectStack protocols - [Anatomy of an ObjectStack App](/docs/getting-started/quick-start): A tour of the metadata an AI agent writes for you — objects, actions, views, apps — and how to read it so you can verify the result in the Console. - [Your First Project](/docs/getting-started/your-first-project): Scaffold a standalone ObjectStack project with npm, understand what was generated, extend the data model, call the REST API, and build a deployable artifact — no monorepo checkout, no AI agent required. - [Architecture](/docs/kernel/architecture): Deep dive into the ObjectKernel architecture - [Cluster Semantics](/docs/kernel/cluster): How ObjectStack stays correct from a single laptop to a multi-node cluster — event scope, service scope, leader election, and metadata versioning. - [Events & Hooks](/docs/kernel/events): System-wide event bus for loose coupling between plugins - [Kernel & Services](/docs/kernel): The ObjectKernel runtime — plugin host, event bus, service registry, and the versioned services.* APIs your hooks and plugins call. - [Kernel Services Checklist](/docs/kernel/services-checklist): Complete inventory of ObjectStack kernel services with protocol methods, implementation status, and development requirements. - [Service Registry](/docs/kernel/services): Dependency Injection mechanism for loose coupling between plugins - [Access-Matrix Snapshot Gate](/docs/permissions/access-matrix): A committed (permission set × object) capability matrix that fails the build on any grant drift, with the semantic diff as the review artifact (ADR-0090 D6). - [Who can see data / automation / interface](/docs/permissions/access-recipes): Map a concrete access requirement onto the platform's layers — object CRUD, field-level security, row-level security, capabilities, app/nav gating, and the run-identity of automations. - [Administrator Guide](/docs/permissions/administrator-guide): The task-first operations manual for customer system administrators — onboard a tenant in four steps (build the org tree, add people, assign positions, verify), with the 90% rule — daily administration is assigning positions; the capability plumbing ships built-in. - [Attachments Access](/docs/permissions/attachments-access): How access to record attachments is decided — the parent-derived read/create/delete model, authenticated downloads, the enable.files opt-in gate, and the storage-byte lifecycle. Covers sys_attachment and sys_file. - [Authentication](/docs/permissions/authentication): Complete guide to implementing authentication in ObjectStack using plugin-auth with Better-Auth - [Authorization Architecture](/docs/permissions/authorization): The one-page map of ObjectStack authorization — the enforcement chain, combination semantics, package provenance, lifecycle coverage, and the CI governance — with its limits — behind "declared" equals "enforced". Stitches ADR-0049/0054/0056/0057/0066/0068/0069/0078/0086 into a single narrative. - [Declaring Capabilities](/docs/permissions/capabilities): How a package DEFINES an authorization capability with defineCapability — the declaration half of ADR-0066 D1 — and how that name travels from source to the sys_capability catalogue to a permission-set grant to a requiredPermissions check. - [Delegated Administration](/docs/permissions/delegated-administration): Administration itself as a scoped grant — a business-unit subtree, an action set, and an assignable-set allowlist, with self-escalation structurally impossible (ADR-0090 D12). - [Explain Engine](/docs/permissions/explain): Ask the runtime why a decision came out the way it did — every pipeline layer, with contributor attribution, over the kernel service or REST (ADR-0090 D6). - [Field-Level Security](/docs/permissions/field-level-security): Control visibility and editability of specific fields — readable/editable rules, hidden vs. read-only semantics, and server-side enforcement of declared rules. - [Permissions & Identity](/docs/permissions): Authentication, authorization, and record- and field-level access control in ObjectStack — a cross-protocol capability enforced by the ObjectStack runtime and declared as ObjectQL security metadata. - [Permission Metadata](/docs/permissions/permission-metadata): Define access control with permission sets — object CRUD, field security, tab visibility, and row-level security - [Permission Sets](/docs/permissions/permission-sets): The only capability container — object CRUD + FLS + scope depth + capabilities, union-merged across everything a user holds. Covers the built-in sets, assignment tables, access depth, the isDefault suggestion, and delegated-admin scopes. - [Security Permissions Matrix](/docs/permissions/permissions-matrix): Visual reference for ObjectStack's security model — permission types, the object × permission-set matrix, field-level security, sharing rules, business-unit depth, and the access-matrix snapshot gate - [Positions](/docs/permissions/positions): Positions (岗位) are flat capability-distribution groups — users hold positions, positions bind permission sets. The visibility hierarchy lives on business units, never here. Includes the built-in identity positions and the everyone/guest audience anchors. - [Profiles (removed)](/docs/permissions/profiles): The Profile concept was removed by ADR-0090 D2. Baseline access is now authored with the everyone audience anchor, package isDefault suggestions, and ordinary permission sets distributed via positions. - [Record-View Auditing](/docs/permissions/record-view-auditing): Who viewed this record, and when — the `read` action in sys_audit_log: its per-object opt-in, the four edges of its scope, and what a view row deliberately does not carry. - [Row-Level Security (RLS)](/docs/permissions/rls): Declarative per-row policies compiled into query filters — the grammar, the context variables, how policies compose, and the fail-closed contract. - [Sharing Rules](/docs/permissions/sharing-rules): Record-level access: the organization-wide default (OWD) baseline per object, the external sharing dial, criteria sharing rules and recipient types, and the RLS-safe analytics read scope. - [Social & Enterprise SSO](/docs/permissions/sso): Enable Google sign-in in open source, and extend auth providers through packages. - [System Context (isSystem)](/docs/permissions/system-context): The authoritative table of every platform behaviour keyed off `ExecutionContext.isSystem` — what an elevated write gets, what it loses, and what the flag deliberately does NOT do. Built by census over the whole repo, not by recall. - [Adding a Metadata Type](/docs/plugins/adding-a-metadata-type): How to register a new metadata type so it shows up in the Studio app's Metadata Admin with full CRUD, overlay diffing, and (optionally) a custom editor. - [Plugin Anatomy](/docs/plugins/anatomy): The Plugin contract — interface, context, and lifecycle phases every ObjectStack plugin implements - [Plugin Development](/docs/plugins/development): Step-by-step guide to creating, testing, and publishing ObjectStack plugins - [Plugin System](/docs/plugins): Overview of the ObjectStack plugin architecture — plugin types, configuration, management, and built-in plugins. - [Package Overview](/docs/plugins/packages): Complete guide to all ObjectStack packages, services, drivers, plugins, and adapters - [Backward Compatibility Policy](/docs/protocol/backward-compatibility): Versioning strategy, deprecation timelines, breaking change policy, and migration support for ObjectStack - [Protocol Relationship Diagram](/docs/protocol/diagram): Visual architecture diagram showing how ObjectStack's protocol layers connect — Data, UI, System, Automation, AI, API, and Security - [Protocol Specification](/docs/protocol): The formal ObjectStack protocol for Data, UI, and System layers - [Knowledge Protocol](/docs/protocol/knowledge): Pluggable RAG / knowledge retrieval for ObjectStack agents — protocol + adapter model. - [Implementation Status Matrix](/docs/releases/implementation-status): Detailed status of protocol implementations across ObjectStack packages - [Overview](/docs/releases): Release notes for the ObjectStack platform — framework packages and the Console UI, summarized per version for app and plugin developers. - [v12.0.0](/docs/releases/v12): Anonymous data access denied by default (ADR-0056 D2), adaptive record surfaces, an enforced protocol-version handshake, and a wave of author-time correctness lints. - [v13.0.0](/docs/releases/v13): Permission Model v2 (ADR-0090) — Roles and Profiles converge on Positions, custom objects default to private, and the model gains an explain engine, delegated administration, and self-serve MCP OAuth. - [v14.0.0](/docs/releases/v14): The v14 series completes the ADR-0090 vocabulary convergence, makes object enable.* capability flags real gates, and adds admin user management, phone/SMS auth, book-audience enforcement, a data-lifecycle contract, and effective-dated grants. - [v15.0.0](/docs/releases/v15): Record-level access explanation, a docked AI workspace in the Console, attachments that follow record permissions, no-code third-party connectors, dashboard-wide filters, and Chinese pinyin search — with materially safer multi-tenant defaults. Backend and Console notes for 15.0.0 and 15.1.0. - [v16.0.0](/docs/releases/v16): One org identifier for hook and action authors, quorum and per-group sign-off (会签) approvals, time-relative automations that actually fire, filtered roll-ups, strict dashboard widgets, an identity-scoped MCP stdio transport, and a metadata-driven approvals inbox — plus a large enforce-or-remove sweep that makes dead metadata loud. Backend and Console notes for 16.0.0 and 16.1.0. - [v17.0.0](/docs/releases/v17): Files become platform records with governed download, bulk export becomes its own opt-in privilege, the SDK reaches every route the server actually mounts, approvals route approvers dynamically, and a boot that cannot reach its datasource stops pretending it can. Backend and Console notes for 17.0.0, 17.1.0, and 17.2.0. - [v9.0.0](/docs/releases/v9): Analytics single-form cutover (ADR-0021), honest chart taxonomy, canonical OS_* settings env vars, Google sign-in, and a smarter AI build experience in Console. - [Protocol Reference](/docs/references): Every schema published by @objectstack/spec — 1588 schemas across 14 protocol modules - [Actions](/docs/ui/actions): Declarative buttons with server-side behavior — define once, bind to lists, records, and navigation, permission-check on both surfaces, and optionally expose to AI. - [App Metadata](/docs/ui/apps): Define application containers with navigation, branding, and access control - [Audience-based interfaces](/docs/ui/audience-based-interfaces): The same data serves different audiences. Give end users a curated app/page and keep builder surfaces — Studio, raw object tables, automation config — out of their view. Separate consumer and builder paths by default. - [Create form ≠ edit form](/docs/ui/create-vs-edit-form): The new-record form asks 5 fields; the full edit form shows 40 grouped into sections. Derive both from one flat field set; only hand-shape the create form when layout or flow genuinely diverges. - [Dashboard Metadata](/docs/ui/dashboards): Build analytics dashboards with chart widgets, global filters, and auto-refresh - [Doc Metadata](/docs/ui/doc-pages): Ship package documentation as metadata — flat src/docs/*.md files compiled into the manifest and rendered in the console, ordered by a book navigation spine - [Field grouping & order](/docs/ui/field-grouping-and-order): The data model is a flat field set, but forms need sections. Where grouping actually lives — semantic field.group vs form sections vs a table's row grouping — and why those three "groups" are different things. - [Forms (Public + Internal)](/docs/ui/forms): Render any FormView either publicly (anonymous, /f/:slug) or internally (authed operators, /forms/:name). The same metadata drives both, with URL prefill, configurable post-submit behavior, and declarative open-form actions. - [UI Engine](/docs/ui): Apps, views, dashboards, branding, and public forms — server-driven UI declared as metadata and rendered by the ObjectUI runtime. - [Page Metadata](/docs/ui/pages): Build custom pages with component-based layouts, variables, and event handling - [Collect data from the public](/docs/ui/public-data-collection): Expose one form to anonymous visitors (web-to-lead, contact-us, intake) without opening the underlying base. Authorization is derived from the form's own declaration; only whitelisted fields are accepted. - [React Pages](/docs/ui/react-pages): Author a page body as real React (kind:'react') or as constrained JSX that is parsed and never executed (kind:'html') — the two source-authoring tiers, and how to choose - [Report Metadata](/docs/ui/reports): Analytics reports as metadata — the four report shapes, dataset binding, drill-through, and how a report differs from a list view and a dashboard widget - [Setup App](/docs/ui/setup-app): The platform's built-in administration UI — what it is, what it shows, and how it is wired - [Translations](/docs/ui/translations): Labels and UI text as metadata — one bundle per locale, resolved per request, with CLI tooling to draft and to gate coverage in CI. - [View Metadata](/docs/ui/views): Configure list views and form views — grid, kanban, calendar, gantt, and more - [IAuthService Contract](/docs/kernel/contracts/auth-service): Reference for the Auth Service contract — authentication, session verification, user resolution, and logout - [ICacheService Contract](/docs/kernel/contracts/cache-service): Reference for the Cache Service contract — key-value caching with TTL support - [IDataEngine Contract](/docs/kernel/contracts/data-engine): Reference for the Data Engine contract — the core data persistence layer for CRUD operations, queries, aggregations, and transactions - [Service Contracts Overview](/docs/kernel/contracts): Reference for all ObjectStack service contracts — TypeScript interfaces that define the API between the Kernel and plugins - [IMetadataService Contract](/docs/kernel/contracts/metadata-service): Reference for the Metadata Service contract — CRUD operations for object and field definitions, schema registry, overlay management, and import/export - [IStorageService Contract](/docs/kernel/contracts/storage-service): Reference for the Storage Service contract — file upload, download, deletion, metadata, and signed URL generation - [services.audit](/docs/kernel/runtime-services/audit-service): Write ingress for audit events that are not CRUD — today, auth session events. - [services.data](/docs/kernel/runtime-services/data-service): CRUD runtime helper API for records (`query`, `get`, `find`, `create`, `update`, `delete`). - [services.email](/docs/kernel/runtime-services/email-service): Outbound email delivery and template rendering APIs. - [Runtime Service Examples](/docs/kernel/runtime-services/examples): Practical examples for flow nodes, hooks, and plugin event subscriptions. - [Runtime Service APIs](/docs/kernel/runtime-services): Reference entry for runtime `services.*` APIs used by flow nodes, hooks, and plugins. - [services.queue](/docs/kernel/runtime-services/queue-service): Async queue publish/subscribe and DLQ operations. - [services.settings](/docs/kernel/runtime-services/settings-service): Namespace-based configuration service with OS env/global/tenant/user/default cascade. - [services.sharing](/docs/kernel/runtime-services/sharing-service): Record-level sharing and editability checks. - [services.sms](/docs/kernel/runtime-services/sms-service): Outbound SMS delivery through pluggable providers (Aliyun SMS, Twilio). - [services.storage](/docs/kernel/runtime-services/storage-service): File/object storage contract for upload/download and presigned URL workflows. - [Runtime Service API Versioning](/docs/kernel/runtime-services/versioning): Stability labels and how to track runtime service API breaking changes. - [Configuration Resolution](/docs/protocol/kernel/config-resolution): How a setting resolves — the env → global → tenant → user → default cascade, its storage, and the SettingsService API - [Error Handling](/docs/protocol/kernel/error-handling): Global error codes, response formats, and debugging strategies for ObjectStack APIs - [HTTP API](/docs/protocol/kernel/http-protocol): Standard REST mapping rules, CRUD operations, and request/response formats for ObjectStack - [Internationalization Standard](/docs/protocol/kernel/i18n-standard): Translation bundles, locale resolution, pluralization, date/number formatting, and dynamic loading - [Kernel: The System Protocol](/docs/protocol/kernel): The runtime orchestration layer - Lifecycle, plugins, configuration, and system services - [System Lifecycle](/docs/protocol/kernel/lifecycle): Boot sequence, plugin installation, zero-downtime upgrades, and rollback strategies - [Metadata Service](/docs/protocol/kernel/metadata-service): The unified engine for loading, saving, and managing configuration metadata across the platform - [Plugin Package Specification](/docs/protocol/kernel/plugin-spec): Manifest structure, directory layout, dependency management, and distribution format - [Real-Time Protocols](/docs/protocol/kernel/realtime-protocol): WebSocket subscriptions, Server-Sent Events, and event-driven communication in ObjectStack - [ObjectQL: The Data Protocol](/docs/protocol/objectql): The database-agnostic data abstraction layer - Define once, run anywhere - [Query Syntax](/docs/protocol/objectql/query-syntax): Database-agnostic query language with filtering, joins, aggregations, and sorting — aligned with the canonical @objectstack/spec QuerySchema - [Schema Definition](/docs/protocol/objectql/schema): The complete specification for defining objects, fields, and relationships in ObjectQL - [Security & Access Control](/docs/protocol/objectql/security): Comprehensive security model - ACL, field-level security, row-level permissions, and data isolation - [State Machine (Lifecycle)](/docs/protocol/objectql/state-machine): Define strict business logic constraints prevents AI hallucinations by enforcing valid transitions. - [Type System](/docs/protocol/objectql/types): Complete reference for ObjectQL field types - Scalars, relationships, computed fields, and advanced types - [Action Protocol](/docs/protocol/objectui/actions): Buttons, triggers, navigation, and user interaction definitions - [UI as Data Concept](/docs/protocol/objectui/concept): The philosophy and architecture of metadata-driven user interfaces - [ObjectUI: The UI Protocol](/docs/protocol/objectui): Server-driven UI protocol - Define interfaces as data, not code - [Layout DSL](/docs/protocol/objectui/layout-dsl): Declarative layout description language for pages, sections, and responsive grids - [record:alert — Conditional Banners on Record Pages](/docs/protocol/objectui/record-alert): Surface contextual notices (unverified email, expired trial, locked account…) at the top of any record page using the slotted page schema. - [Widget Contract](/docs/protocol/objectui/widget-contract): Standard props, events, and lifecycle for ObjectUI components - [Analytics](/docs/references/api/analytics): Analytics protocol schemas - [Auth Endpoints](/docs/references/api/auth-endpoints): Auth Endpoints protocol schemas - [Auth](/docs/references/api/auth): Auth protocol schemas - [Automation Api](/docs/references/api/automation-api): Automation Api protocol schemas - [Batch](/docs/references/api/batch): Batch protocol schemas - [Contract](/docs/references/api/contract): Contract protocol schemas - [Discovery](/docs/references/api/discovery): Discovery protocol schemas - [Dispatcher](/docs/references/api/dispatcher): Dispatcher protocol schemas - [Documentation](/docs/references/api/documentation): Documentation protocol schemas - [Endpoint](/docs/references/api/endpoint): Endpoint protocol schemas - [Error Code Ledger](/docs/references/api/error-code-ledger): Error Code Ledger protocol schemas - [Errors](/docs/references/api/errors): Errors protocol schemas - [Events](/docs/references/api/events): Events protocol schemas - [Export](/docs/references/api/export): Export protocol schemas - [Http Cache](/docs/references/api/http-cache): Http Cache protocol schemas - [API Protocol](/docs/references/api): Complete reference for all api protocol schemas - [Metadata](/docs/references/api/metadata): Metadata protocol schemas - [Odata](/docs/references/api/odata): Odata protocol schemas - [Package Api](/docs/references/api/package-api): Package Api protocol schemas - [Plugin Rest Api](/docs/references/api/plugin-rest-api): Plugin Rest Api protocol schemas - [Protocol](/docs/references/api/protocol): Protocol protocol schemas - [Query Adapter](/docs/references/api/query-adapter): Query Adapter protocol schemas - [Realtime Shared](/docs/references/api/realtime-shared): Realtime Shared protocol schemas - [Realtime](/docs/references/api/realtime): Realtime protocol schemas - [Rest Server](/docs/references/api/rest-server): Rest Server protocol schemas - [Router](/docs/references/api/router): Router protocol schemas - [Sortability](/docs/references/api/sortability): Sortability protocol schemas - [Storage](/docs/references/api/storage): Storage protocol schemas - [Versioning](/docs/references/api/versioning): Versioning protocol schemas - [Websocket](/docs/references/api/websocket): Websocket protocol schemas - [Approval](/docs/references/automation/approval): Approval protocol schemas - [Bpmn Interop](/docs/references/automation/bpmn-interop): Bpmn Interop protocol schemas - [Builtin Node Config](/docs/references/automation/builtin-node-config): Builtin Node Config protocol schemas - [Control Flow](/docs/references/automation/control-flow): Control Flow protocol schemas - [Execution](/docs/references/automation/execution): Execution protocol schemas - [Flow Function](/docs/references/automation/flow-function): Flow Function protocol schemas - [Flow](/docs/references/automation/flow): Flow protocol schemas - [Automation Protocol](/docs/references/automation): Complete reference for all automation protocol schemas - [Io Node Config](/docs/references/automation/io-node-config): Io Node Config protocol schemas - [Node Executor](/docs/references/automation/node-executor): Node Executor protocol schemas - [Schemaless Node Config](/docs/references/automation/schemaless-node-config): Schemaless Node Config protocol schemas - [State Machine](/docs/references/automation/state-machine): State Machine protocol schemas - [Time Relative Trigger](/docs/references/automation/time-relative-trigger): Time Relative Trigger protocol schemas - [Webhook](/docs/references/automation/webhook): Webhook protocol schemas - [App Store](/docs/references/cloud/app-store): App Store protocol schemas - [Developer Portal](/docs/references/cloud/developer-portal): Developer Portal protocol schemas - [Environment Artifact](/docs/references/cloud/environment-artifact): Environment Artifact protocol schemas - [Environment Package](/docs/references/cloud/environment-package): Environment Package protocol schemas - [Environment](/docs/references/cloud/environment): Environment protocol schemas - [Cloud Protocol](/docs/references/cloud): Complete reference for all cloud protocol schemas - [Marketplace Admin](/docs/references/cloud/marketplace-admin): Marketplace Admin protocol schemas - [Marketplace](/docs/references/cloud/marketplace): Marketplace protocol schemas - [Package Version](/docs/references/cloud/package-version): Package Version protocol schemas - [Package](/docs/references/cloud/package): Package protocol schemas - [Template Manifest](/docs/references/cloud/template-manifest): Template Manifest protocol schemas - [Tenant](/docs/references/cloud/tenant): Tenant protocol schemas - [Analytics](/docs/references/data/analytics): Analytics protocol schemas - [Context Tokens](/docs/references/data/context-tokens): Context Tokens protocol schemas - [Data Engine](/docs/references/data/data-engine): Data Engine protocol schemas - [Datasource](/docs/references/data/datasource): Datasource protocol schemas - [Date Macros](/docs/references/data/date-macros): Date Macros protocol schemas - [Document](/docs/references/data/document): Document protocol schemas - [Driver Common](/docs/references/data/driver-common): Driver Common protocol schemas - [Driver Memory](/docs/references/data/driver-memory): Driver Memory protocol schemas - [Driver Mongo](/docs/references/data/driver-mongo): Driver Mongo protocol schemas - [Driver Mysql](/docs/references/data/driver-mysql): Driver Mysql protocol schemas - [Driver Nosql](/docs/references/data/driver-nosql): Driver Nosql protocol schemas - [Driver Postgres](/docs/references/data/driver-postgres): Driver Postgres protocol schemas - [Driver Sql](/docs/references/data/driver-sql): Driver Sql protocol schemas - [Driver Sqlite](/docs/references/data/driver-sqlite): Driver Sqlite protocol schemas - [Driver Turso](/docs/references/data/driver-turso): Driver Turso protocol schemas - [Driver](/docs/references/data/driver): Driver protocol schemas - [External Catalog](/docs/references/data/external-catalog): External Catalog protocol schemas - [Feed](/docs/references/data/feed): Feed protocol schemas - [Field Value](/docs/references/data/field-value): Field Value protocol schemas - [Field](/docs/references/data/field): Field protocol schemas - [Filter](/docs/references/data/filter): Filter protocol schemas - [Hook Body](/docs/references/data/hook-body): Hook Body protocol schemas - [Hook](/docs/references/data/hook): Hook protocol schemas - [Data Protocol](/docs/references/data): Complete reference for all data protocol schemas - [Mapping](/docs/references/data/mapping): Mapping protocol schemas - [Object](/docs/references/data/object): Object protocol schemas - [Query](/docs/references/data/query): Query protocol schemas - [Seed Loader](/docs/references/data/seed-loader): Seed Loader protocol schemas - [Seed](/docs/references/data/seed): Seed protocol schemas - [Validation](/docs/references/data/validation): Validation protocol schemas - [Eval User](/docs/references/identity/eval-user): Eval User protocol schemas - [Identity](/docs/references/identity/identity): Identity protocol schemas - [Identity Protocol](/docs/references/identity): Complete reference for all identity protocol schemas - [Organization](/docs/references/identity/organization): Organization protocol schemas - [Position](/docs/references/identity/position): Position protocol schemas - [Scim](/docs/references/identity/scim): Scim protocol schemas - [Connector](/docs/references/integration/connector): Connector protocol schemas - [Integration Protocol](/docs/references/integration): Complete reference for all integration protocol schemas - [Cli Extension](/docs/references/kernel/cli-extension): Cli Extension protocol schemas - [Cluster](/docs/references/kernel/cluster): Cluster protocol schemas - [Context](/docs/references/kernel/context): Context protocol schemas - [Dependency Resolution](/docs/references/kernel/dependency-resolution): Dependency Resolution protocol schemas - [Events Bus](/docs/references/kernel/events-bus): Events Bus protocol schemas - [Events Core](/docs/references/kernel/events-core): Events Core protocol schemas - [Events Dlq](/docs/references/kernel/events-dlq): Events Dlq protocol schemas - [Events Handlers](/docs/references/kernel/events-handlers): Events Handlers protocol schemas - [Events Integrations](/docs/references/kernel/events-integrations): Events Integrations protocol schemas - [Events Queue](/docs/references/kernel/events-queue): Events Queue protocol schemas - [Execution Context](/docs/references/kernel/execution-context): Execution Context protocol schemas - [Kernel Protocol](/docs/references/kernel): Complete reference for all kernel protocol schemas - [Manifest](/docs/references/kernel/manifest): Manifest protocol schemas - [Metadata Customization](/docs/references/kernel/metadata-customization): Metadata Customization protocol schemas - [Metadata Loader](/docs/references/kernel/metadata-loader): Metadata Loader protocol schemas - [Metadata Plugin](/docs/references/kernel/metadata-plugin): Metadata Plugin protocol schemas - [Metadata Protection](/docs/references/kernel/metadata-protection): Metadata Protection protocol schemas - [Package Artifact](/docs/references/kernel/package-artifact): Package Artifact protocol schemas - [Package Registry](/docs/references/kernel/package-registry): Package Registry protocol schemas - [Package Upgrade](/docs/references/kernel/package-upgrade): Package Upgrade protocol schemas - [Plugin Capability](/docs/references/kernel/plugin-capability): Plugin Capability protocol schemas - [Plugin Lifecycle Advanced](/docs/references/kernel/plugin-lifecycle-advanced): Plugin Lifecycle Advanced protocol schemas - [Plugin Loading](/docs/references/kernel/plugin-loading): Plugin Loading protocol schemas - [Plugin Registry](/docs/references/kernel/plugin-registry): Plugin Registry protocol schemas - [Plugin Security Advanced](/docs/references/kernel/plugin-security-advanced): Plugin Security Advanced protocol schemas - [Plugin Security](/docs/references/kernel/plugin-security): Plugin Security protocol schemas - [Plugin Structure](/docs/references/kernel/plugin-structure): Plugin Structure protocol schemas - [Plugin Validator](/docs/references/kernel/plugin-validator): Plugin Validator protocol schemas - [Plugin Versioning](/docs/references/kernel/plugin-versioning): Plugin Versioning protocol schemas - [Plugin](/docs/references/kernel/plugin): Plugin protocol schemas - [Service Registry](/docs/references/kernel/service-registry): Service Registry protocol schemas - [Startup Orchestrator](/docs/references/kernel/startup-orchestrator): Startup Orchestrator protocol schemas - [QA Protocol](/docs/references/qa): Complete reference for all qa protocol schemas - [Testing](/docs/references/qa/testing): Testing protocol schemas - [Explain](/docs/references/security/explain): Explain protocol schemas - [Security Protocol](/docs/references/security): Complete reference for all security protocol schemas - [Misc](/docs/references/security/misc): Misc protocol schemas - [Permission](/docs/references/security/permission): Permission protocol schemas - [Rls](/docs/references/security/rls): Rls protocol schemas - [Sharing](/docs/references/security/sharing): Sharing protocol schemas - [Branded Types](/docs/references/shared/branded-types): Branded Types protocol schemas - [Enums](/docs/references/shared/enums): Enums protocol schemas - [Expression](/docs/references/shared/expression): Expression protocol schemas - [Http](/docs/references/shared/http): Http protocol schemas - [Identifiers](/docs/references/shared/identifiers): Identifiers protocol schemas - [Shared Protocol](/docs/references/shared): Complete reference for all shared protocol schemas - [Mapping](/docs/references/shared/mapping): Mapping protocol schemas - [Metadata Types](/docs/references/shared/metadata-types): Metadata Types protocol schemas - [Protection](/docs/references/shared/protection): Protection protocol schemas - [Flow Builder](/docs/references/studio/flow-builder): Flow Builder protocol schemas - [Studio Protocol](/docs/references/studio): Complete reference for all studio protocol schemas - [Object Designer](/docs/references/studio/object-designer): Object Designer protocol schemas - [Plugin](/docs/references/studio/plugin): Plugin protocol schemas - [App Install](/docs/references/system/app-install): App Install protocol schemas - [Auth Config](/docs/references/system/auth-config): Auth Config protocol schemas - [Book](/docs/references/system/book): Book protocol schemas - [Cache](/docs/references/system/cache): Cache protocol schemas - [Change Management](/docs/references/system/change-management): Change Management protocol schemas - [Collaboration](/docs/references/system/collaboration): Collaboration protocol schemas - [Core Services](/docs/references/system/core-services): Core Services protocol schemas - [Deploy Bundle](/docs/references/system/deploy-bundle): Deploy Bundle protocol schemas - [Disaster Recovery](/docs/references/system/disaster-recovery): Disaster Recovery protocol schemas - [Doc](/docs/references/system/doc): Doc protocol schemas - [Email Config](/docs/references/system/email-config): Email Config protocol schemas - [Email Template](/docs/references/system/email-template): Email Template protocol schemas - [Encryption](/docs/references/system/encryption): Encryption protocol schemas - [Environment Artifact](/docs/references/system/environment-artifact): Environment Artifact protocol schemas - [Http Server](/docs/references/system/http-server): Http Server protocol schemas - [Incident Response](/docs/references/system/incident-response): Incident Response protocol schemas - [System Protocol](/docs/references/system): Complete reference for all system protocol schemas - [Job](/docs/references/system/job): Job protocol schemas - [License](/docs/references/system/license): License protocol schemas - [Logging](/docs/references/system/logging): Logging protocol schemas - [Metadata Persistence](/docs/references/system/metadata-persistence): Metadata Persistence protocol schemas - [Metrics](/docs/references/system/metrics): Metrics protocol schemas - [Migration](/docs/references/system/migration): Migration protocol schemas - [Notification](/docs/references/system/notification): Notification protocol schemas - [Object Storage](/docs/references/system/object-storage): Object Storage protocol schemas - [Registry Config](/docs/references/system/registry-config): Registry Config protocol schemas - [Search Engine](/docs/references/system/search-engine): Search Engine protocol schemas - [Security Context](/docs/references/system/security-context): Security Context protocol schemas - [Settings Client](/docs/references/system/settings-client): Settings Client protocol schemas - [Settings Manifest](/docs/references/system/settings-manifest): Settings Manifest protocol schemas - [Stack Server](/docs/references/system/stack-server): Stack Server protocol schemas - [Supplier Security](/docs/references/system/supplier-security): Supplier Security protocol schemas - [Tenant](/docs/references/system/tenant): Tenant protocol schemas - [Tracing](/docs/references/system/tracing): Tracing protocol schemas - [Training](/docs/references/system/training): Training protocol schemas - [Translation](/docs/references/system/translation): Translation protocol schemas - [Worker](/docs/references/system/worker): Worker protocol schemas - [Action Params](/docs/references/ui/action-params): Action Params protocol schemas - [Action](/docs/references/ui/action): Action protocol schemas - [App](/docs/references/ui/app): App protocol schemas - [Bulk Action](/docs/references/ui/bulk-action): Bulk Action protocol schemas - [Chart](/docs/references/ui/chart): Chart protocol schemas - [Component](/docs/references/ui/component): Component protocol schemas - [Dashboard](/docs/references/ui/dashboard): Dashboard protocol schemas - [Dataset](/docs/references/ui/dataset): Dataset protocol schemas - [Expression Bindable Text Keys](/docs/references/ui/expression-bindable-text-keys): Expression Bindable Text Keys protocol schemas - [I18n](/docs/references/ui/i18n): I18n protocol schemas - [UI Protocol](/docs/references/ui): Complete reference for all ui protocol schemas - [Notification](/docs/references/ui/notification): Notification protocol schemas - [Page](/docs/references/ui/page): Page protocol schemas - [Report](/docs/references/ui/report): Report protocol schemas - [Responsive](/docs/references/ui/responsive): Responsive protocol schemas - [Sharing](/docs/references/ui/sharing): Sharing protocol schemas - [View](/docs/references/ui/view): View protocol schemas - [Agent](/docs/references/ai/agent): Agent protocol schemas - [Conversation](/docs/references/ai/conversation): Conversation protocol schemas - [Embedding](/docs/references/ai/embedding): Embedding protocol schemas - [AI Protocol](/docs/references/ai): Complete reference for all ai protocol schemas - [Knowledge Document](/docs/references/ai/knowledge-document): Knowledge Document protocol schemas - [Knowledge Source](/docs/references/ai/knowledge-source): Knowledge Source protocol schemas - [Mcp](/docs/references/ai/mcp): Mcp protocol schemas - [Model Registry](/docs/references/ai/model-registry): Model Registry protocol schemas - [Skill](/docs/references/ai/skill): Skill protocol schemas - [Solution Blueprint](/docs/references/ai/solution-blueprint): Solution Blueprint protocol schemas - [Tool](/docs/references/ai/tool): Tool protocol schemas - [Usage](/docs/references/ai/usage): Usage protocol schemas