| title | AI Skills Reference |
|---|---|
| description | Reference for every ObjectStack AI skill — domain-scoped knowledge modules that teach AI assistants the protocol's schemas and constraints |
ObjectStack ships a set of domain-specific skills that teach AI assistants (Claude Code, GitHub Copilot, Cursor, …) the protocol's schemas, patterns, and constraints. This guide is the complete catalog.
**New to skills?** Read [AI Skills System](/docs/ai/skills) first for the conceptual overview, then return here for the per-skill reference.Skills install into a project from the skills.sh registry, reading the skills/ directory of the objectstack-ai/framework repository.
New projects — installed automatically. create-objectstack runs the install step for you during scaffolding:
npm create objectstack@latest my-appExisting projects — install the whole bundle:
npx skills add objectstack-ai/framework --allRun the same command again at any time to pull the latest versions — --all is idempotent, so updating is one command regardless of how many skills the bundle contains. To choose which skills to add instead of the full set, run npx skills add objectstack-ai/framework without --all.
{/* BEGIN GENERATED: skills (packages/spec/scripts/build-skill-docs.ts) — DO NOT EDIT */}
ObjectStack ships 9 domain-specific skills. Each is self-contained — an AI assistant loads only the ones a task needs.
| # | Skill | Domain | Path | What it covers |
|---|---|---|---|---|
| 1 | Platform | platform |
skills/objectstack-platform/ |
Bootstrap, configure, extend, and operate ObjectStack runtimes. Covers project setup (defineStack, drivers, adapters, scaffolding), plugin and service development (PluginContext, DI, kernel hooks like kernel:ready and data:*), and operations (CLI commands, migrations, deployment, test harnesses via LiteKernel). |
| 2 | Data | data |
skills/objectstack-data/ |
Design ObjectStack data schemas — objects, fields, field conditional rules, relationships, validations, indexes, lifecycle hooks, permissions, row-level security — and the seeds (defineSeed()) that load fixtures and reference data alongside them. |
| 3 | Query | query |
skills/objectstack-query/ |
Construct ObjectQL queries — filters, sorting, pagination, aggregation, joins/expansion, window functions, and full-text search. |
| 4 | UI | ui |
skills/objectstack-ui/ |
Author ObjectStack UI metadata — Views (list/form/kanban/calendar/gantt), Apps (navigation), Pages (structured plus the HTML and React source-authoring tiers, ADR-0080/0081), Dashboards, Reports, Charts, Actions, and package Docs (src/docs/*.md). |
| 5 | Automation | automation |
skills/objectstack-automation/ |
Design ObjectStack automation — Flows (visual logic), Workflows (declarative rules), Triggers, Approvals, scheduled jobs, and webhooks. |
| 6 | AI | ai |
skills/objectstack-ai/ |
Design ObjectStack AI agents, tools, skills, conversations, model registry entries, and MCP integrations. |
| 7 | API | api |
skills/objectstack-api/ |
Design the server-side API surface that an ObjectStack runtime exposes — REST/GraphQL endpoints, auth providers, realtime channels, error envelopes, batch/versioning contracts. |
| 8 | i18n | i18n |
skills/objectstack-i18n/ |
Author ObjectStack translation bundles — object/field labels, view text, app navigation strings, automation messages — and configure locale fallback, coverage reporting, and the per-locale source layout. |
| 9 | Formula | expression |
skills/objectstack-formula/ |
Author CEL expressions used across ObjectStack — formula fields, field conditional rules (visibleWhen, readonlyWhen, requiredWhen), validation / sharing / visibility predicates, flow conditions, and dynamic seed values. |
Domain platform · Path skills/objectstack-platform/
Bootstrap, configure, extend, and operate ObjectStack runtimes. Covers project setup (defineStack, drivers, adapters, scaffolding), plugin and service development (PluginContext, DI, kernel hooks like kernel:ready and data:*), and operations (CLI commands, migrations, deployment, test harnesses via LiteKernel).
Use when the user is writing objectstack.config.ts, building a plugin or driver, wiring a framework adapter, running os CLI commands, or planning deployment.
Do not use for data schema design (see objectstack-data) or query patterns (see objectstack-query); data lifecycle hooks (beforeInsert / afterUpdate) belong in objectstack-data — only kernel / service-level events live here.
Tags: project, defineStack, driver, adapter, plugin, kernel, service, DI, lifecycle, cli, deploy, ops
Domain data · Path skills/objectstack-data/
Design ObjectStack data schemas — objects, fields, field conditional rules, relationships, validations, indexes, lifecycle hooks, permissions, row-level security — and the seeds (defineSeed()) that load fixtures and reference data alongside them.
Use when the user is creating or modifying *.object.ts / *.seed.ts files, picking field types, modelling relationships, writing beforeInsert/afterUpdate hooks, configuring per-object access control, or authoring bootstrap / demo data. Use for visibleWhen / readonlyWhen / requiredWhen rules that belong on fields.
Do not use for querying data (see objectstack-query) or for plugin / kernel hooks (see objectstack-platform). CEL expressions in formulas / validations / sharing rules / dynamic seed values: load objectstack-formula alongside.
Tags: object, field, validation, index, relationship, hook, schema, permission, rls, security, seed, fixture
Domain query · Path skills/objectstack-query/
Construct ObjectQL queries — filters, sorting, pagination, aggregation, joins/expansion, window functions, and full-text search.
Use when the user is writing a query DSL expression, picking pagination strategy, or designing a list view's filter spec.
Do not use for defining objects / fields / relationships (see objectstack-data) or for designing the API endpoint that exposes a query (see objectstack-api).
Tags: query, filter, sort, paginate, aggregate, ObjectQL, full-text
Domain ui · Path skills/objectstack-ui/
Author ObjectStack UI metadata — Views (list/form/kanban/calendar/gantt), Apps (navigation), Pages (structured plus the HTML and React source-authoring tiers, ADR-0080/0081), Dashboards, Reports, Charts, Actions, and package Docs (src/docs/*.md).
Use when the user is adding *.view.ts / *.app.ts / *.dashboard.ts / *.action.ts / src/docs/*.md files or designing a Studio-rendered UI surface, including dataset-bound dashboard/report widgets.
Do not use for: data schema (see objectstack-data), interactive screen flows / wizards (those are *.flow.ts with type: 'screen' — see objectstack-automation), the React renderer implementation (lives in packages/client-react, not metadata), or Studio's own admin UI (that ships with the platform). CEL expressions in visibility/conditional rules: load objectstack-formula alongside.
Tags: view, app, page, dashboard, report, chart, action, widget, doc
Domain automation · Path skills/objectstack-automation/
Design ObjectStack automation — Flows (visual logic), Workflows (declarative rules), Triggers, Approvals, scheduled jobs, and webhooks.
Use when the user is adding *.flow.ts / *.workflow.ts, wiring an event-driven rule, or modelling an approval chain.
Do not use for data lifecycle hooks at the object layer (see objectstack-data) or for kernel / plugin events (see objectstack-platform). CEL expressions in flow conditions / workflow predicates: load objectstack-formula alongside.
Tags: flow, workflow, trigger, approval, state-machine, scheduled, webhook
Domain ai · Path skills/objectstack-ai/
Design ObjectStack AI agents, tools, skills, conversations, model registry entries, and MCP integrations.
Use when the user is adding *.agent.ts / *.tool.ts / *.skill.ts, configuring an LLM provider, wiring agent tools, or designing an embedding/RAG flow on top of ObjectStack data.
Do not use for general LLM prompting questions unrelated to ObjectStack metadata.
Tags: agent, tool, skill, conversation, llm, embedding, mcp
Domain api · Path skills/objectstack-api/
Design the server-side API surface that an ObjectStack runtime exposes — REST/GraphQL endpoints, auth providers, realtime channels, error envelopes, batch/versioning contracts.
Use when the user is adding *.endpoint.ts, configuring auth providers, defining custom routes, or extending the REST/GraphQL generator.
Do not use for: consuming an ObjectStack API from a client (that is just standard HTTP — no skill needed); the auto-generated CRUD endpoints (those follow from objectstack-data); request-side query syntax (see objectstack-query). CEL expressions in route guards or auth predicates: load objectstack-formula alongside.
Tags: rest, graphql, endpoint, auth, realtime, server
Domain i18n · Path skills/objectstack-i18n/
Author ObjectStack translation bundles — object/field labels, view text, app navigation strings, automation messages — and configure locale fallback, coverage reporting, and the per-locale source layout.
Use when the user is adding *.translation.ts files, wiring a new locale, or resolving missing-translation warnings.
Do not use for general i18n library questions unrelated to ObjectStack bundles.
Tags: i18n, translation, locale, l10n, bundle, coverage
Domain expression · Path skills/objectstack-formula/
Author CEL expressions used across ObjectStack — formula fields, field conditional rules (visibleWhen, readonlyWhen, requiredWhen), validation / sharing / visibility predicates, flow conditions, and dynamic seed values.
Use when the user is writing an F, P, or cel tagged-template literal, or asks "how do I express X as a formula / predicate".
Do not use for SQL fragments (driver-native), cron schedules (cron dialect), or L2 hook bodies (those belong in objectstack-data).
Tags: cel, formula, predicate, condition, validation, visibility, seed-dynamic
{/* END GENERATED: skills */}
Every skill is a directory under skills/:
skills/objectstack-{domain}/
├── SKILL.md # required — frontmatter (name, description, domain, tags) + prose guide
├── references/ # generated & optional — present only when the skill maps to Zod sources
│ └── _index.md # pointers into @objectstack/spec Zod sources
├── rules/ # optional — detailed implementation rules
└── evals/ # optional — AI comprehension test cases
SKILL.md is the only required file. The references/_index.md index is generated by packages/spec/scripts/build-skill-references.ts and points into the published @objectstack/spec schemas in node_modules — skills never bundle copies of the schemas, so they stay version-aligned automatically. Skills with no mapped Zod sources (such as Formula) ship without a references/ directory at all.
Use the Quick Reference table to find the skill that matches your task rather than guessing. When a task spans domains, the per-skill "Do not use for …" notes point you to the right neighbour.
Most real-world work spans multiple domains. A typical CRM feature chains:
flowchart LR
Data --> Query --> UI --> Automation --> API
Any CEL expression — a validation predicate, a flow condition, a field visibility rule — is covered by Formula. Load it in addition to the host skill (Data, Automation, UI), not instead of it.
If a skill says "delegate to X for Y", follow it. Skills are deliberately focused and composable — keeping them narrow is what lets an assistant load only the context a task needs.
- AI Skills System — conceptual overview of the skills architecture
- AI Capabilities — AI agents, RAG pipelines, and intelligent automation
- Plugin Development — build custom plugins
- Development Standards — naming conventions and project structure