Skip to main content

Skills catalog

Look up any skill in the Studio skill pack and what it does. Use it to find the skill that does a task, or to see what your agent loads when you ask it something. The skills are in the same groups the pack's router uses.

You don't have to name a skill to use it. Ask your agent in plain English, and the studio router picks the skill for you. To see how, read What are skills?. Each skill name below opens the skill itself. You can also paste it into a chat LLM that has no skills installed. Download saves the skill as a Markdown file, so you can add that one skill to your agent yourself.

The pack has 110 skills, counting the router.

Start here​

Use these skills before you change anything. They onboard you, check your project and write the plan you approve before a build.

SkillWhat it doesDownload
start-here-zero-knowledgeWalks someone new to Studio through it from the beginning.Download
studio-tourAsks what you're trying to do and hands each step to the skill that does it.Download
analyze-project-fitReads your project and reports what Studio needs, without changing anything. Runs before any install.Download
convert-project-to-studioMakes a whole app Studio-ready. It asks how much to convert, then adds Studio behind your existing routes and keeps your own 404 page. It doesn't migrate or split up any existing page.Download
plan-studio-architectureWrites a plan for you to approve: sections, section slots, components, content types, connected or freeform for each template, and the build order. Nothing is built until you approve it.Download
match-existing-patternReads the compositions a project already has and reports how they're built, so new templates and sections match them. Runs before authoring in any project that already has compositions.Download
choose-connected-vs-freeformHelps you choose between a connected and a freeform template, and names the skill that builds it.Download

Install and configure your app​

SkillWhat it doesDownload
enable-visual-experienceTurns on Live Preview and the Visual Experience for your stack. Run it before the other setup skills.Download
install-studioInstalls the Studio SDK, Live Preview and the Delivery SDK, and initializes them in your app.Download
install-live-previewInstalls Live Preview on its own, without Studio.Download
configure-studioSets Environment, Language and Canvas URL on your Studio project.Download
setup-local-https-canvasServes your canvas over HTTPS on localhost. Studio loads http://localhost without it, so you need it only for things that require HTTPS, such as service workers or secure cookies.Download
upgrade-studio-sdkUpgrades the Studio packages together, reads their changelogs and checks that your app still runs.Download
install-playwright-mcpInstalls the optional Playwright MCP server, so skills can click through Studio and check the result themselves.Download
install-contentstack-mcpFinds or sets up the Contentstack MCP server in your editor and checks that it reaches your stack.Download

Provision the Contentstack side​

SkillWhat it doesDownload
authenticate-cmaExplains how every Management API call gets its credential, how tokens refresh, and what each 401 and 422 response means.Download
provision-studio-projectSets up a Studio project by API: its compositions content type, a publish and a delivery token.Download
provision-studio-stackCreates your site's content types, global fields, entries and assets.Download
migrate-ct-schemaChanges the fields of a content type that's already in use: add, rename, retype, remove, or move into a global field. It plans first and can roll back.Download
import-contentImports entries from JSON, CSV, Markdown or another stack into your content types, and can be re-run safely. To move off another CMS, use @contentstack/cli-cm-import instead.Download

Plan and register components​

SkillWhat it doesDownload
design-component-libraryPlans which components to register from your design system, before any registration is written.Download
classify-existing-componentSays whether one component is an atom, a layout or a compound, and which skill comes next.Download
decompose-jsx-to-atomicsSplits a large React component, often a whole page in one file, into small components and sections that authors can rearrange.Download
register-componentReads a React component and writes its registerComponent call.Download
register-json-rteRegisters one renderer for JSON rich text, HTML rich text and Markdown, including embedded entries and assets.Download
register-breakpointsRegisters default, tablet and mobile breakpoints when the SDK starts.Download
import-design-tokensRegisters your Tailwind, CSS variable or JSON tokens, so the Design tab offers them.Download
figma-generate-componentsTurns Figma frames into React components and their registrations, through the Studio Figma plugin.Download
wire-component-default-dataGives each prop a default value, so a component shows something as soon as it's dropped.Download

Component contracts​

Read these while you register a component. Each one covers a set of rules a component has to follow before Studio can control it.

SkillWhat it coversDownload
register-component-prop-contractsThe rules for array, object, image and link props, and how {{entry.*}} values resolve.Download
register-component-render-contractsHow a component renders in any layout and with missing values.Download
register-component-cslpThe $ edit-tag props and studioAttributes a component accepts. It needs both or neither.Download
register-component-pitfallsWhat fails silently when you register a component, and the fix for each.Download

Turn a design into a plan​

SkillWhat it doesDownload
decompose-designTurns one design, such as a Figma frame, a screenshot or a mock, into a build sheet and a proposed content type, then offers to build it. Start here for one new template from a design.Download
decompose-siteDoes the same across a whole site. It shares components between templates, finds global field candidates and orders the build. It also turns a Figma board of section variants into one section with choices.Download
decompose-blocks-pageSplits a template whose body is one modular blocks field, rendered by one component, into a section per block type.Download
discover-sectionsFinds section candidates in your codebase, which are components that recur across routes.Download
discover-sections-from-ctFinds section candidates in an existing content type, one for each group, reference or modular block.Download
design-section-from-jsxProposes a section's linked schema from a JSX component.Download

Sections​

SkillWhat it doesDownload
build-sectionBuilds a section linked to part of your content model: a content type, global field, group, modular block or reference.Download
build-repeating-sectionBuilds a list section that repeats a child section over a multi-valued field.Download
compose-marketing-sectionPicks the registered components that build a section from a design, starting from four recipes: Hero, Feature Grid, Testimonial and Pricing.Download
adapt-collection-componentWraps a list component from your production app into a Studio list section, for the cases build-repeating-section can't handle.Download
expose-section-propsExposes chosen props on a section, so each template can set its own value.Download
build-section-component-choiceHelps you choose between Studio's basic components and your own registered ones inside a section.Download
build-section-pitfallsWhat fails silently on the canvas when you build a section.Download
drive-studio-canvas-uiThe drag-and-drop sequence that makes a drop land on the canvas, for skills that drive the canvas in a browser.Download

Section slots, repeaters and condition blocks​

SkillWhat it doesDownload
use-section-slotAdds a section slot to a section, so each template can drop its own content there.Download
configure-slot-defaultsGives a section slot a default section, and limits which sections can be dropped in.Download
wire-slot-dataPasses a component's data to whatever an author drops into its slot.Download
use-repeaterRepeats content over a multi-valued field with a Repeater.Download
use-condition-blockShows different content for each item inside a Repeater, by block type or content type.Download

Templates​

SkillWhat it doesDownload
build-connected-templateBuilds a template connected to a content type, so every entry renders at its own URL.Download
build-freeform-templateBuilds a freeform template with Pinned Entries and Pinned Queries.Download
build-page-builder-templateBuilds one template that renders whatever layout authors assemble in a modular blocks field, with one section per block type.Download
pin-entry-to-freeformPins one entry to a freeform template as a Pinned Entry. It also pins a shared entry, such as site settings, to a connected template or a section.Download
pin-query-to-freeformPins a query to a freeform template, so a Repeater lists whatever the query returns.Download

Routes and template URLs​

SkillWhat it doesDownload
setup-section-previewMounts <StudioCanvas /> in your app and sets the project's Canvas URL.Download
setup-template-preview-routesMounts <StudioComponent /> on a catch-all route or on dedicated routes, and keeps your site header, footer and 404 page.Download
configure-csr-vs-ssrHelps you choose client or server rendering, and wires the one you choose.Download

Data binding​

SkillWhat it doesDownload
wire-external-dataBrings data from outside Contentstack into a composition, through the data prop on <StudioComponent />.Download
render-with-own-dataRenders a template or section against data you already hold, with <StudioComposition />.Download
wire-studio-stateAdds state variables that authors can bind, connects your own store, and wires named functions to buttons.Download
wire-variant-aliasRenders a Personalize variant, by passing its alias from a cookie or header to <StudioComponent />.Download
embed-compositionEmbeds one editable region in a page your code owns, with useCompositionData.Download
resolve-reference-depthFetches referenced entries one hop at a time, and asks you when it can't tell which path to follow.Download
resolve-reference-depth-pitfallsError 141 and the other ways that fetching referenced entries goes wrong.Download
make-visual-editor-editableMakes every field on a page editable in Visual Editor, including list items you add, move or delete, and a brand-new entry. Each of these fails silently when it's missing.Download

Author by API: the contract​

SkillWhat it doesDownload
author-composition-via-apiWrites compositions directly through the Management API, for scripts, seeding and migration. Start here for API authoring.Download
use-compositions-apiCreates, reads, lists, updates and deletes compositions from a script, and checks each one before it saves.Download
author-without-codeThe end-to-end path for content teams building in Studio on a project that's already set up.Download
author-composition-practiceHow to approach API authoring. Build the structure before you bind it, and read each component's source, not only its registration.Download
author-composition-entryThe composition entry body, with its url and url_metadata pair. Read it first when you author by API.Download
author-composition-static-valuesWrites static_value bindings by API. The binding stores a key, and the literal value goes under static_value in the composition entry.Download
author-composition-bindingsEvery binding type, the shape of a node in the ui tree, and Repeater bindings. Read it second.Download
author-composition-encodingCompresses the ui tree and validates it before you publish.Download

Author by API: recipes​

SkillWhat it doesDownload
author-composition-repeater-recipesComplete node trees that repeat a card over a multiple reference field or a multiple group field.Download
author-composition-nested-repeatersA list inside each repeated item, and how its data resolves.Download
author-composition-sectionsHow a section is scoped to its data, and the shape of a section slot node.Download
author-composition-section-slot-fillFills a section slot by API. A wrapper section repeats over a reference or modular block field, and the template fills each item's slot with its own section.Download
author-composition-exposed-propsSets a placed section's exposed props for one template, by API.Download
author-composition-thumbnailsWhy the API never sets a section's thumbnail, and what to do instead.Download
author-composition-templatesFills a template's linked_sections, with a complete freeform composition body.Download
author-composition-pitfallsHow to check that a 200 response really resolved, and the other ways API authoring goes wrong.Download
author-composition-migrationMoves compositions between stacks, remapping UIDs and schemas.Download

Ship and verify​

SkillWhat it doesDownload
complete-the-buildChecks the ten things every build has to finish, and runs at the end of every build. Three are about Visual Editor: Live Preview is on, it runs in builder mode, and a new entry is editable on the page. The others are edit tags, studioAttributes, component thumbnails, section thumbnails, the canvas route, publishing, and templates made of sections.Download
verify-setupTests your setup one layer at a time, from the stack's Visual Experience settings up to the Studio canvas, so you fix the lowest failure first.Download
verify-visual-parityCompares each section built in Studio against your production site in a browser, and fixes each difference where it starts.Download
deploy-studio-siteSets up your app on Contentstack Launch with its environments and environment variables, Deploys your compositions, and configures the region and Live Preview.Download
migrate-page-to-studioSwaps one hand-coded route for <StudioComponent />.Download
gate-third-party-scriptsKeeps cookie banners, chat widgets, tag managers and tracking pixels off the canvas, with isStudioCanvas.Download
byoc-end-to-endTakes your own components the whole way, in order: register them, build sections, build templates and publish.Download

Troubleshoot​

SkillUse it whenDownload
troubleshootSomething is wrong and you don't know where. It works out which kind of failure it is and hands it to one of the skills below.Download
troubleshoot-canvasThe canvas won't load, stays blank, or says the SDK isn't initialized.Download
troubleshoot-composition-resolutionA URL renders the wrong template, two URL patterns collide, or a URL returns a 404.Download
troubleshoot-data-bindingA bound field shows nothing, shows the wrong value, or shows a literal {{.Download
troubleshoot-ssr-renderingServer rendering fails, including use client boundaries, hydration mismatches and the component registry.Download

Concepts​

These skills explain something instead of doing a task. An agent reads one when you ask what something is.

SkillWhat it explainsDownload
understand-sectionsWhat a section is, and what makes a good one.Download
understand-templatesHow templates are built from sections, and how one template renders every entry of a content type.Download
understand-section-slotsWhat a section slot is, and when to add one.Download
understand-linked-schemasA section's declared data shape, and why it makes auto-binding work.Download
understand-auto-bindingHow Studio matches a section's schema to a template's content type when you drop the section.Download
understand-canvas-urlWhy the Canvas URL is a path, not a full URL.Download
understand-canvas-vs-componentThe difference between <StudioCanvas /> and <StudioComponent />.Download
understand-authoring-headlesslyHow a composition is stored, as the compressed ui tree and its data sources.Download
understand-bring-your-own-dataHow to choose between the data prop, <StudioComposition context> and <Slot data>.Download
understand-installationWhat installing Studio adds to your project.Download
understand-contentstack-mcpWhat the Contentstack MCP server does and doesn't do, before you install it.Download
understand-reference-depthWhat reference depth counts, and when a fetch is deep enough.Download

Where to go next​

Report a problem with this page